创建一个能够进行现场操作的小型机器人
扫描二维码
随时随地手机看文章
该项目的基本思路是创建一个能够进行现场操作的小型机器人,甚至是一个基于微控制器的非常简单的BBS(公告板系统)。这个项目也在github上(跟踪更新)
我们需要:
•meshtastic radio(我使用的是XIAO ESP32S3 & Wio-SX1262 meshtastic & LoRa套件)
•第二个发送数据的无线电(与手机配对)我将使用Seeed的T1000E
•一个微控制器(我使用另一个小ESP32S3接收来自Meshtastic Radio的protobuf数据并做事情)
•电压变换器
•一个开关
软件方面,我们使用:
•神奇的网页闪光器
•meshtastic控制台
•带有ESP32内核的Arduino IDE
•Meshtastic的Arduino Protobuf库
1)闪烁无线电n°1
访问meshtastic web flash并按照说明操作。
2)配置无线
虽然你可以继续使用Android或iOS应用程序,但我将坚持使用meshtastic主机。我们将定义它的串行引脚(基于Xiao的引脚映射)并启用protobuf通信。
由于我使用的是Xiao Grove Shields,我也分享了这个有用的引脚映射图像。
重要提示:当您参考Meshtastic设置中的引脚时,请始终参考ESP32S3命名(GPIO01, GIPO02, GPIO44等…),当使用Arduino IDE和seeds库引用它们时,请使用seeds命名)。
3)使用另一个小的Protobuf监听串口
让我们这样把两块板连接起来。重要的是TX要转到RX,反之亦然。暂时不要连接3V3。
为了有串行通信的电缆,我改变了一个grove连接器,使其可以将TX更改为RX,反之亦然。
在安装了Meshtastic Protobuf库之后,我们可以运行这段代码来读取通过串行端口传递的数据,并读取串行端口中接收到的所有节点。不要担心:我们将微调这段代码,以便做更少的事情。
4) Meshbot基本任务:机器人结构。
假设我们想让bot对4个命令做出反应:/help, /servo, /red, /temp
•“/help”会回复所有的信息
•“/servo”将触发一些微伺服运动
•“/red”将触发Chainable LED
•“/temp”将回答从Grove DHT20感知到的温度和湿度
在这个场景中,您应该能够通过接收到的任何命令触发这些状态。显然,我们可以通过指定要服从哪个通道或发送方来保护我们的系统。
请测试所有的传感器和执行器,现在让我们总结代码。
这是Meshbot v0.1的最终版本!
本文编译自hackster.io