物联网机器人的制作
2021-10-29陈所林
陈所林
(南京市玄武中等专业学校,江苏南京,210042)
Otto 开源机器人寓教寓乐,其结合3D 打印技术与信息技术,成为不少中小学及办学培训机构信息课的制作内容。这些作品均以娱乐、近距离控制为主、物联网控制较少。21 世纪的今天,随着网络技术的发展,互联网改变了人们的生活,物联设备无处不在,能否借助互联网制作一款既可以娱乐又具有实用功能的物联机器人呢?我的想法是让它具有一键配网、结合网络实现手机端远程控制;机器人面部Oled 屏显示日期、时间、本地温、湿度值、手机端同步显示温、湿度值及实时温、湿度变化曲线、机器人舞蹈动作的控制、两眼灯光颜色的变换、左、右两耳灯光通断及机器人音乐播放的音量及曲目变换[1]。
作品实现软件上我采用了易学易用的Mixly、Blynk 及Ottoblockly 软件,手机端采用Blynk APP 设置实现对机器人的功能控制,硬件主控我采用了Arduino Nano 实现机器人的动作控制,网控采用Esp8266 NodeMcu V3 12E,外壳采用Otto 开源机器人带四肢版3D 打印件,下面详细讲解我的制作过程与大家一同分享、交流。
1 前期准备
■1.1 元器件清单表
表1 元器件清单
■1.2 外壳的准备及处理
许多人没3D 打印机也不会建模,但网上带四肢版Otto机器人外壳出售有许多且便宜,买来的外壳只要稍做处理,让相应空间容下所需元件即可。如身体部分外壳需要做如下处理(见图1):打磨掉1 处的加强筋,能够放入DHT11温湿度传感器,用1 毫米钻头钻几个小孔便于传感器采集温湿度信息。2 处打磨掉加强筋要求容下小型继电器,3 处是我居中采用圆规根据喇叭的大小先画出直径为30 毫米的圆,然后用直径为1 毫米小钻头开出分布均匀的小孔,便于机器人音乐声音的传出。4 处居中开出一个27mm×20mm长方形的孔,能够容下0.96 寸OLED 屏。
图1 打印机外壳
■1.3 机器人眼部准备
机器人眼部采用超生波传感器改制,将其R 头与T 头拆开并将2 片1 位圆形WS2812 5050 RGB模块粘贴于内部基板并将其按级联要求将其中一个灯片的DI 接另一灯片的DO 从DI 引出信号端S,共G、共V 焊接好重新装入外壳并引出S、G、V三根引线,如图2 所示。
图2 机器人眼部构件
2 组装
■2.1 各原件的组装
OttO 机器人的组装方法可参考网上Otto 机器人的组装方法,是开源的也很多很详细,大家可参照说明及组装图安装即可,这里不再赘述(新增电子元件的连接方法物联网机器人电路连接图)。
■2.2 各电子元器件连接
各电子元器件连接如图3 所示 。
图3 物联网机器人电路连接图
3 程序编制
■3.1 机器人舞蹈程序
该程序结合Ottoblockly 软件编写实现,主要来实现机器人的舞蹈动作(每位读者对舞蹈动作的要求不一编程时可自行拖动于任务区)由Nano 8 脚电位实现控制是否执行[2],如图4 所示。
图4 机器人舞蹈程序
■3.2 ESP8266 控制程序
网络控制程序由Mixly 软件编写实现,程序内服务器地址连接于blynk.mixly.org 该服务器免费接入,响应速度较快。鉴于文章幅面所限程序部分只摘录部分程序显示,读者如需详细程序请下载刊发资料。部分截图如图5 所示。
图5 ESP8266 控制程序
■3.3 手机Blynk APP 功能设置
手机端下载Blynk APP 在同一项目下分别建立时间、温湿度显示曲线、音乐控制及机器人眼部灯光控制、左、右侧灯光等功能控制,设置方法如下:
(1)在项目设置中添加Real-time clock(实时时钟)组件,该组件可以为物联网开发板提供当前的准确时间,添加Realtime clock 组件后将时区设置为(GMT+08:00)Asia/Shanghai。
(2)添加SuperChart (超级图表)实现手机端温、湿度变化的曲线显示图。内部添加两条数据源分别为“温度变化”、“湿度变化”将温度变化的数据的输入管脚设置为V0,湿度变化的数据的输入管脚设置为V1,当周边的温度或湿度有所变化时,手机APP 端显示的温度和湿度曲线就会发生变化并且可以看到温湿度变化的历史数据。
(3)添加Labeled Value Settings(标签值设置)组件实现手机端温、湿度值的显示,其中温度的虚拟管脚设为V0 单位栏设为/pin/℃,湿度的虚拟管脚设为V1 单位设为/pin%。
(4)添加Music Player (音乐播放)及Step H 或Step V 组件实现远程音乐选曲功能及音量大小控制,其中音乐播放虚拟管脚为V2,音乐播放音量控制虚拟管脚为V3。
(5)添 加ZeRGBa(斑马取色)组件,先将数据模式设置成Merge(合并)模式,将设置输出管脚设置为虚拟管脚为V6,实现机器人眼部RGB 彩灯模块显示出不同的颜色控制。
(6)同时添加3 个Button Settings(按钮)组件,实现左右两侧灯光的开、关控制及机器人舞蹈的控制。左侧灯光的控制脚为gp3、右侧灯光的控制脚为gp16,机器人舞蹈的控制脚为gp14。
所有功能添加后手机端形成如图6 所示的项目控制界面。
图6 手机控制
4 一键联网实现
机器人无论身处何地只要本地具有WiFi,即可实现一键配网,利用手机关注“安信可科技”微信公众号再输入本地无线网名及密码完成网络配置,配置完毕即可实现手机对机器人的联网操作控制,结合Blynk APP的设置控制方法上还可实现多部手机对同一机器人的网络控制。
5 总结
本次物联网机器人的制作实现了联网对机器人多项功能的控制,每一项功能在机器人相关部位的实现都是我经过多次实验、调试才形成。经过实践验证这个作品是初、高中学生学习物联网知识的一个很好的综合实习案例,寓教寓乐,同时它的实用性也很强读者只要稍加思考便可将其功能拓展应用于生活制作出居家生活控制的物联网作品。在此期待读者的交流与意见。