我會將軟件,焊接方式全部開源,方便你上手!
項目介紹平衡車幾乎是入坑電子DIY的必做項目 。
并且此類平衡車原理都差不多 , 大家想制作屬于自己的平衡車這篇文章可以提供參考 。
本車包括了
傳感器采集處理電機運動控制pid算法調節等許多領域本項目外觀小巧 , 運動性能卓越 。
兼顧專業性和趣味性,非常適合作為入門練習項目 。

文章插圖
這是附件的文檔內容
開源文件說明主要以硬件、軟件兩個角度展開說明 。
硬件部分
模型文件都上傳到附件了,包含完整的solidworks建模裝配體文件 。有需要發我【88】
小車按照實際尺寸建模,可以提供一點參考 。
亞克力板切割用里面的DWG文件,放了兩塊一樣的板,直接定制即可 。
電路圖在下方查看 。
軟件部分
見附件代碼,當前為最新版本,后續優化會標上版本號上傳 。有需要發我【88】
使用Arduino IDE開發,需要自行下載準備的庫有:<ArduinoJson.h>、<MPU6050_tockn.h> 。
工程中的每個模塊為.h+.cpp文件的組合,已添加了很多注釋,可自行查閱 。
藍牙調參
需要將最開頭的BTMODE 宏定義修改為0(默認為1,即遙控模式) 。
手機端APP用任意的藍牙調試APP都行,發送指令格式見代碼中的注釋說明如下:
/* 藍牙發送參數指令,使用JSON格式進行打包和解析,字符串格式:"{"cmd":1,"data":[p,i,d]}" , (p、i、d為常數) * cmd=1:角度環pid設置 * cmd=2:速度環pid設置 * cmd=3:轉向環pid(暫未添加) * cmd=4:角度平衡值, 發送格式:"{"cmd":4,"data":[angle]}" , (angle為常數) * cmd=5:速度值,同角度 * cmd=6:轉向值,同上 **/藍牙遙控
遙控用的APP已放在附件中,僅限安卓平臺 。在APP里自行配置的搖桿參數如下圖所示:

文章插圖
設計圖

文章插圖
原理圖

文章插圖
PCB
硬件設計詳述主要以3D建模、焊接組裝、材料清單三個方面展開描述 。
3D建模
完整結構建模
電機排線需要向上突出,下面放不了電池,所以使用三層板堆疊結構 。
下面兩層使用亞克力切割;最上層為電路板;電池放置在上層 。下層“挖空”引出電機排線、
亞克力板還需增加電機固定架孔位 。
將電機安排得盡可能靠近來減小橫向間距 。
solidworks建模如下:

文章插圖
除電路板外,需要定制的僅兩塊相同的亞克力板,從solidworks導出為DWG文件即可定制 。

文章插圖
焊接和組裝
電路板焊接測試
CH340缺了一個電容(見debug部分) 。
飛線已解決,上了一坨熱熔膠固定 。
電源接口也加上了熱熔膠,防短路 。

文章插圖
整體組裝
下面兩層亞克力板,上面一層PCB 。
用M3六角銅柱連接固定,長度能短則短 , 但電池和排線需要一定的空間 。
下面用的長度15mm,上面是20mm 。
最下面的電機是用的附贈的電機座,螺絲固定 。

文章插圖
Debug記錄
CH340 V3接口缺少一個0.1uF電容接地 , 導致無法正常連接串口 。
用飛線接上電容后可以正常工作 。
電機排線6p插座方向設置錯誤 。
原設計打算放在背面,但根據實際接線順序需要放在正面 。
請注意檢查,否則容易造成短路風險 。
材料清單

文章插圖
其他“元件”:
剩下的CH340、AMS1117還有電阻電容等元件比較常規,可根據BOM表配單 。
買的時候注意封裝型號 。
特別說明本項目電路焊接部分有一定的門檻?。?
如果對小型貼片器件的焊接沒有把握,不建議嘗試!
打板的時候選嘉立創SMT代工,省去了自己焊的麻煩 。
基本信息主控芯片:ESP32-WROOM
六軸加速度傳感器模塊:MPU6050
【教你做屬于自己的事 教你做屬于自己的事情】用于獲取姿態信息 。
芯片:DRV8833驅動電機運動,提供較大電流 。
電機:選用N20減速電機 。
帶有AB相霍爾編碼器用于測量轉速 。
供電:選用7.4V鋰電池(2s) 。
經線性穩壓器:LM1084穩壓至5V 。
再使用1117穩壓至3.3V給ESP32供電 。
程序部分:基于Arduino IDE 。
使用開源庫實現角度獲取和pid算法平衡控制 。
使用JSON庫編寫了指令解析程序,用于藍牙遠程調節pid參數 。
并借助開源的安卓藍牙APP用來遙控小車運動 。
總結從結構與軟件層面進行總結 , 以下是當前的問題 。
結構層面
如果再要減小的話就要換更小的電機才行 。
最大的問題是電池接線,電機排線也比較突出 , 倒地的時候撞到排線,可能造成損壞 。
改進方式:考慮連接座換成直針,代替目前的彎針即可解決 。
軟件層面
PID運行的前一分鐘,電機運動會出現明顯的滯后和超調現象,運行一段時間才能恢復正常的平衡模式 。
目前未排查到原因,估計是某些變量初始化時的問題,還在排查中 。
小車運行穩定程度也還有提升空間,靜止時還不能很穩 。
一方面PID算法和參數還可以優化,另一方面可能受編碼器分辨率影響 。
按20Hz采樣率,得到編碼器數據范圍是0-50左右的整數值,數據精度十分有限 。
后續可能的更新
優化PID算法,爭取達到更穩定的效果換一種更緊湊美觀的外形結構
- 企業微信解除綁定微信 退出 企業微信解除綁定微信,企業不退出有什么影響
- 電腦開機windows無法啟動顯示資源管理器l停止工作 電腦開機windows無法啟動黑屏
- 華為手機怎樣拍抖音 華為手機怎樣拍抖音視頻教程
- 微信使用技巧視頻教程 微信的正確使用
- 路由器無線橋接另一個路由器怎么設置 無線路由器無線橋接另一個路由器
- 橋接無線路由器主副路由器 橋接路由器主副路由器哪個用好的
- 微信沒有手機號可以注冊賬號嗎安全嗎 微信沒有手機號可以注冊賬號嗎怎么注銷
- 微信清理好友是否有木馬 微信清理會不會刪除聯系人
- 測網速的app有哪些 比較好用的測網速app
