停售
停售
停售
停售
商品簡介 |
LidarBot 是一款激光雷達車,配備360°激光雷達感測器、M5Core主控、4個麥克納姆輪、車輪控制底板(集成MEGA328)、RGB燈條、操縱桿控制器等硬件,此外額外附送一個TRACE尋跡模塊套件用於黑白軌蹟的識別,基於麥克納姆輪技術的全方位運動小車可以實現前行、橫移、斜行、旋轉及其組合等運動方式,裝配大容量鋰電池為雷達小車提供長時間續航。
控制器與LidarBoT之間通過ESP-NOW 進行實時通信,運行時你可以在控制器屏幕上查看由激光雷達感測器掃描的地圖數據.我們在Github上提供了開源代碼,基於官方源代碼修改,你能夠將雷達掃描等採集數據通過Wi-Fi或其他方式進行傳輸至其他節點.LidarBoT 能夠應用在STEM教育領域用作編程學習、競賽等活動.不僅如此,功能強大的它,同樣適用於AGV開發領域的開發者進行項目開發
● 雷達: 8m @ 6Hz
● ESP-NOW遙控
● 具備尋跡功能
● 兼容 LEGO
● 開發平台:Arduino UIFlow
● 室內導航
● 自主走迷宮
● 路徑規劃
● 自動駕駛
商品規格 |
規格 | 參數 |
淨重 | 1980g |
產品尺寸 | 142x 117x 120 (mm) |
【商品清單】
LidarBot x1
遠程控製手柄 x1
尋跡模塊套件 x1
電池(1300mAh @ 11.1V) x2
電池充電器 x1
Type-C USB x1
技術文章 |
EasyLoader |
主控與底板之間的協議 |
協議對象 | 協議格式 | 案例 | 調用函數 |
Wheels | 0xAA,SpeedX(-7 ~ 7),SpeedY,SpeedZ,SpeedA,0x55 | 0xAA, 5, 5, 5, 5, 0x55(前進, 速度: 5) | ControlWheel(5, 5, 5) |
One RGB | 0xAB,LedIndex,R(0 ~ 254),G,B,0x55 | 0xAB, 3, 20, 50, 100, 0x55(3號燈點亮,顯示指定顏色) | setLedColor(3, 20, 50, 100) |
Front RGB Bar | 0xAC,R(0 ~ 254),G,B,0x55 | 0xAC, 20, 50, 100, 0x55(前向燈帶點亮,顯示指定顏色) | setFrontLedBar(20, 50, 100) |
Back RGB Bar | 0xAD,R(0 ~ 254),G,B,0x55 | 0xAD, 20, 50, 100, 0x55(後向燈帶點亮,顯示指定顏色) | setBackLedBar(20, 50, 100) |
All RGB | 0xAE,R(0 ~ 254),G,B,0x55 | 0xAE, 20, 50, 100, 0x55(全部燈帶點亮,顯示指定顏色) | setLedAll(20, 50, 100) |
ServoMotor0 | 0xAF,Angle(0 ~ 180),0x55 | 0xAF, 100, 0x55(舵機 0 轉動 100 °) | setServo0Angle(100) |
ServoMotor1 | 0xB0,Angle(0 ~ 180),0x55 | 0xB0, 100, 0x55(舵機 1 轉動 100 °) | setServo1Angle(100) |
參數 |
● 通信參數 ●
◎M5Core(車體主控) <-> 激光雷達(U1RXD(GPIO16) <-> 激光雷達) 串口配置參數: "230400bps, 8, n, 1"(8 位數據, 無奇偶校驗, 1 位停止位)
◎M5Core(車體主控) <-> 控制底板(U2TXD(GPIO17) <-> 控制底板) 串口配置參數: "115200bps, 8, n, 1"(8 位數據, 無奇偶校驗, 1 位停止位)
● 接口 ●
舵機 0 <-> A0(MEGA328)
舵機 1 <-> A1(MEGA328)
RGB LED <-> 11(MEGA328)
連接與配對 |
案例程序提示:
當手柄不能控製或者顯示地圖的時候,需要將雷達車和手柄重新配對一下。雷達車啟動之後按住Button B鍵(中間的按鍵)不放,直到雷達車聲音響起,雷達車進入廣播模式,主機的地址回顯示到屏幕上。手柄啟動之後按住Button B(中間的按鍵)不放,直到手柄聲音響起,此時應該接到來自雷達車的廣播消息,並且會顯示雷達車的Mac地址。如果有多個Mac地址可以通過down鍵向下選擇,如果錯過了可以按update鍵刷新當前操作。選擇與雷達車對應的Mac地址後按下select即可確認需要配對的雷達車地址。這時候雷達車,會收到手柄的確認信息,手柄的Mac地址並且會顯示到雷達車的屏幕上,按下屏幕的confirm即可完成配對。
範例程序 |
●例程目錄●
├─LidarBot_CarMain_V1.1 - LidarBot主控程序
├─LidarBot_RemoteController_V1.0 - 控制器程序 V1.0
└─LidarBot_RemoteController_V1.2 - 控制器程序 V1.2(相比v1.0精度提高一倍)
●程序解析●
1. LidarBot 主程序:
/* 主循环 */ void loop() { espnow.BotConnectUpdate();// ESPNOW 断开重连/换设备重连 lidarcar.MapDisplay();// 显示地图 esp_now_send(espnow.peer_addr, lidarcar.mapdata, 180);// ESPNOW 发送地图数据 }●單個功能解析●
◎讀取雷達數據的使用
#include "lidarcar.h" LidarCar lidarcar; lidarcar.Init(); GetData();//得到雷达保存到数组 distance[]◎循蹟的使用
#include "rprtrack.h" Rprtrack rprtrack; SensorStatus();// 巡线数值保存到数组 sensorValue[] CalTrackDev();// 处理数组 sensorValue[],得出小车偏移情况,保存至变量OffsetLine◎ESP_NOW的使用
請參考此連結: https://github.com/m5stack/M5-espnow
●遙控器主控程序●
/* 主循环 */ void loop() { espnow.RemoteConnectUpdate();// ESPNOW断开重连/换设备重连 keyboard.GetValue();//读取摇杆数据 esp_now_send(espnow.peer_addr, keyboard.keyData, 3);// ESPNOW发送摇杆数据给小车主控 MapDisplay();// 显示地图 accessport.AnalzyCommand();// 发送地图数据给上位机 }
#include "keyboard.h" KeyBoard keyboard; keyboard.Init(); GetValue();//手柄读数保存在adX, adY,并控制赋值给数组keyData[]和手柄RGB灯◎與上位機通信的使用
#include "accessport.h" AccessPort accessport; accessport.AnalzyCommand();// 发送地图数据给PC上位机
出貨清單 |