ESP8266的Arduino开发环境搭建
有三种常用的环境搭建方法。
1. Arduino下的工具的开发板管理器进行在线下载
步骤:
1/ 首先添加ESP8266板支持
进入首选项(Preferences)
,找到附加开发板管理器地址(Additional Board Manager URLs),并在其后添加如下信息:
1 | http://arduino.esp8266.com/stable/package_esp8266com_index.json |
2/ 安装硬件包
点击工具 - 开发板 - 开发板管理器
,进入开发板管理器界面: 在搜索栏上面输入ESP8266
,选择最新版本点击“安装”,
2. 下载ESP8266的硬件包再离线安装
1 | cd E: |
当clone完毕后,在esp8266文件夹下会有板级工具包的目录。进入tools,运行get.py的python文件
1 | cd tools |
3. 直接使用封装好的ESP8266 SDK进行环境配置
点击下方链接下载打包好的esp8266安装包,选择任一版本直接运行并解压即可。
无论使用何种方法,只要可以在Arduino IDE中可以看到ESP8266的开发板,开发环境就算搭建好了。可以开始进行开发和学习过程了。
制作一支带逗比功能的笔
材料准备
9g舵机3个
白板笔1支
NodeMcu ESP8266开发板一块
舵机拉杆 1.2MM Z字钢丝
M3x3 平头螺丝若干
M3 螺母若干
M3x12 螺丝若干
M3x6 对接螺丝若干
亚克力激光切割零件一批
3D打印笔架与笔帽
制作步骤
组装
左右舵机安装
舵机与板件通过舵机自带的M2螺丝固定(红色框部分),板件中间位置的连接用M3螺丝加螺母固定(橙色框部分)
四杆机械臂安装
将机械臂所需的板件与舵机自带的连接杆粘合,并用M4x10的螺丝加螺母固定(推荐使用M3x6的对接螺丝)。
在舵机调式完毕后,用M2.5x10的螺丝将机械臂固定至舵机上。这里如果有较长的M2螺丝效果会更好一些,舵机自带的M2螺丝稍短了一点。
上舵机安装
上龙门架用M3x12的螺丝加螺母连接,舵机与板件用自带的M2螺丝固定
ESP8266的调试
将arduinojson5
和NTPclient
添加到arduino libraries
中。
利用ESP8266自带示例ESP8266-blink及ESP8266WiFi-NTPClient进行测试,ESP8266模块工作正常
从无线路由器的用户列表中也可以看到ESP8266确实已经连接成功。
ESP8266与舵机的联调
通过坐标的变化来控制笔的行进与书写。
坐标参数的定义如下:
打开程序上传代码成功后,左右臂舵机会左右来回旋转,请注意舵机的旋转方向,并在最左或最右时迅速拔掉供电的USB。断电停机后再安装摆臂。摆臂的安装位置,如下图,最左是灰色,最右是白色,让摆臂尽量停留在0,90,180度位置上。安装好摆臂后,接电继续工作,看舵机是否是在灰色和白色两个位置上往复。差距小时,可以修改程序中下面的4个参数修正,差距太大,请拆掉摆臂重装。
control.h
,原始代码中垂直方向共用SERVOFAKTOR
来控制,在微调的时候发现效果不好,分别使用SERVOFAKTORLEFT
和SERVOFAKTORRIGHT
来控制。
1 | // When in calibration mode, adjust the following factor until the servos move exactly 90 degrees |
相应地,在control.cpp
中,修改
1 | servo_left.writeMicroseconds(floor(((a2 + a1 - M_PI) * SERVOFAKTOR) + SERVOLEFTNULL)); |
为
1 | servo_left.writeMicroseconds(floor(((a2 + a1 - M_PI) * SERVOFAKTORLEFT) + SERVOLEFTNULL)); |
调节抬臂舵机的写字,抬笔和抓笔擦位置,。将笔装上后再进行调试,否则因为笔的重量会导致偏差。
1 | int LIFT0 = 1750; //落笔写字 on drawing surface |
工作原理
xy坐标到舵机角度转换
演示
制作完成!
参考
1/ 如何制作一支带逗比功能的笔 - 知乎 (zhihu.com)
2/ 用stc15w4k32移植arduino小贱钟Plotclock (amobbs.com 阿莫电子论坛)
3/ Plotclock小贱钟的调试方法 - 机械坊 - 极客工坊 - Powered by Discuz! (geek-workshop.com)