創(chuàng)建一個能夠進(jìn)行現(xiàn)場操作的小型機(jī)器人
該項(xiàng)目的基本思路是創(chuàng)建一個能夠進(jìn)行現(xiàn)場操作的小型機(jī)器人,甚至是一個基于微控制器的非常簡單的BBS(公告板系統(tǒng))。這個項(xiàng)目也在github上(跟蹤更新)
我們需要:
?meshtastic radio(我使用的是XIAO ESP32S3 & Wio-SX1262 meshtastic & LoRa套件)
?第二個發(fā)送數(shù)據(jù)的無線電(與手機(jī)配對)我將使用Seeed的T1000E
?一個微控制器(我使用另一個小ESP32S3接收來自Meshtastic Radio的protobuf數(shù)據(jù)并做事情)
?電壓變換器
?一個開關(guān)
軟件方面,我們使用:
?神奇的網(wǎng)頁閃光器
?meshtastic控制臺
?帶有ESP32內(nèi)核的Arduino IDE
?Meshtastic的Arduino Protobuf庫
1)閃爍無線電n°1
訪問meshtastic web flash并按照說明操作。
2)配置無線
雖然你可以繼續(xù)使用Android或iOS應(yīng)用程序,但我將堅持使用meshtastic主機(jī)。我們將定義它的串行引腳(基于Xiao的引腳映射)并啟用protobuf通信。
由于我使用的是Xiao Grove Shields,我也分享了這個有用的引腳映射圖像。
重要提示:當(dāng)您參考Meshtastic設(shè)置中的引腳時,請始終參考ESP32S3命名(GPIO01, GIPO02, GPIO44等…),當(dāng)使用Arduino IDE和seeds庫引用它們時,請使用seeds命名)。
3)使用另一個小的Protobuf監(jiān)聽串口
讓我們這樣把兩塊板連接起來。重要的是TX要轉(zhuǎn)到RX,反之亦然。暫時不要連接3V3。
為了有串行通信的電纜,我改變了一個grove連接器,使其可以將TX更改為RX,反之亦然。
在安裝了Meshtastic Protobuf庫之后,我們可以運(yùn)行這段代碼來讀取通過串行端口傳遞的數(shù)據(jù),并讀取串行端口中接收到的所有節(jié)點(diǎn)。不要擔(dān)心:我們將微調(diào)這段代碼,以便做更少的事情。
4) Meshbot基本任務(wù):機(jī)器人結(jié)構(gòu)。
假設(shè)我們想讓bot對4個命令做出反應(yīng):/help, /servo, /red, /temp
?“/help”會回復(fù)所有的信息
?“/servo”將觸發(fā)一些微伺服運(yùn)動
?“/red”將觸發(fā)Chainable LED
?“/temp”將回答從Grove DHT20感知到的溫度和濕度
在這個場景中,您應(yīng)該能夠通過接收到的任何命令觸發(fā)這些狀態(tài)。顯然,我們可以通過指定要服從哪個通道或發(fā)送方來保護(hù)我們的系統(tǒng)。
請測試所有的傳感器和執(zhí)行器,現(xiàn)在讓我們總結(jié)代碼。
這是Meshbot v0.1的最終版本!
本文編譯自hackster.io