花了1年半時間,我終于做出來了桌面機(jī)器人!
做了個桌面機(jī)器人,也可以是“電子寵物”
本文引用地址:http://www.ex-cimer.com/article/202412/465286.htm參考了Anki公司Cozmo機(jī)器人的外觀設(shè)計。
*圖片來源自百度,僅對文中提及的“Cozmo機(jī)器人”起到說明作用,侵刪
它實現(xiàn)了這些功能:
功能/亮點
手機(jī)遙控RC:機(jī)器人拍攝實景,手機(jī)可查看實景并控制機(jī)器人行動
局域網(wǎng)圖傳
語音交互:能和機(jī)器人聊天!通過ESP32的語音喚醒+識別
魔方與機(jī)器人交互、UI交互
具備3個自由度(手臂2個、頭部1個):使用自己修改的特制舵機(jī)支持關(guān)節(jié)角度回傳
硬件設(shè)計
機(jī)器人主要由【頭部+底盤】兩部分組成,共6塊PCB:
Chassis-board 原理圖
Chassis-board PCB圖
Cube 原理圖
Cube PCB圖
Cube-usb-ttl 原理圖
Cube-usb-ttl PCB圖
head-board 原理圖
head-board PCB圖
lcd-board 原理圖
lcd-board PCB圖
servo-board 原理圖
servo-board PCB圖
1.電路設(shè)計說明
設(shè)計軟件:嘉立創(chuàng)EDA
機(jī)器人頭部主控:ESP32-S3,擔(dān)任 “大腦” 進(jìn)行UI交互、網(wǎng)絡(luò)通訊、輕量化AI處理
機(jī)器人底盤主控:STM32F103,擔(dān)任 “小腦” 進(jìn)行運動控制
魔方主控:ESP32-S3
參加活動:星火計劃,活動已提供:3次3D外殼打?。ü灿?17元)3次SMT(共計2250元)等耗材費用
2.選型說明
①機(jī)器人底盤為什么選擇STM32F103作為主控?
首先,機(jī)器人的底盤設(shè)計,需要滿足以下基礎(chǔ)功能:
支持1路串口 MSH 交互(用過rtthread的同學(xué)知道有多香)
與頭部開發(fā)板進(jìn)行通訊(串口)
支持串口OTA升級固件
支持激光測距,實時檢測掉落
控制兩個 I2C 總線舵機(jī)
可通過幻彩燈帶 WS2812 顯示狀態(tài)
ADC電壓采集測量
控制兩個電機(jī)+采集編碼器計數(shù)
可以檢測機(jī)器人的狀態(tài)(拿起、被搖晃等)
于是,誕生了以下幾點硬件需求:
至少2路串口
至少2路 I2C 總線
SPI/PWM驅(qū)動WS2812
1路ADC
2路硬件編碼器接口
4路PWM輸出
而 STM32F103RCT6:
資源符合本項目需求,沒有太多資源冗余
價格可以接受
ST的芯片成熟度較高(主要是軟件)
由此,最終底盤主控選擇了STM32F103RCT6
②機(jī)器人頭部為什么選擇ESP32-S3作為主控?
頭部PCB實物圖
頭部PCB實物圖
首先,機(jī)器人的頭部設(shè)計,需要滿足以下基礎(chǔ)功能:
支持1路串口MSH交互
與底盤進(jìn)行通訊(串口)
驅(qū)動一路 I2C 總線舵機(jī)
算力不能太弱(需部署語音識別等算法)
支持無線協(xié)議(遙控、圖傳)
支持攝像頭 DCMI 接口
可以流暢顯示 UI 動畫
可以播放音頻(I2S/DAC)
于是,誕生了以下幾點硬件需求:
至少2路串口
至少2路 I2C 總線
需要自帶無線射頻功能
需要支持 DCMI/MIPI-CSI 接口
需要支持高速率 SPI/RGB/MIPI-DSI 接口
需要支持 I2S /高分辨率 DAC 接口
而 ESP32-S3:
價格合理
樂鑫的軟件成熟度較高(ESP-IDF)
算力較強,有較為完善的AI端側(cè)算法支持
自帶 Wi-Fi 協(xié)議棧,帶寬符合應(yīng)用需求
支持 DCMI 接口用于圖傳
因此,底盤采用的主控是 ESP32-S3
③機(jī)器人控制板為什么選擇ESP32-S3作為主控?
首先,機(jī)器人的手臂&頭部控制板的設(shè)計,需要滿足以下基礎(chǔ)功能:
作為I2C從機(jī)使用,主機(jī)采用I2C控制從機(jī)的舵機(jī)運動
控制舵機(jī)中的電機(jī)運動
需要支持力反饋
需要可以精準(zhǔn)控制舵機(jī)運動
于是,誕生了以下幾點硬件需求:
支持硬件 I2C 從機(jī)協(xié)議
支持至少2路 PWM
支持 ADC 采樣
而 STM32F030F6:
資源符合本項目需求,沒有太多資源冗余
價格可以接受
ST的芯片成熟度較高(主要是軟件)
因此,底盤采用的主控是STM32F030F6
軟件設(shè)計
項目提供配套【開發(fā)資料】和對應(yīng)【SDK】以供二次開發(fā):
參考開源資料:
https://oshwhub.com/rbbbb/ATom-Bot
評論