天天看點

畢業設計-兩輪自平衡小車主要闆

文章目錄

  • ​​前言​​
  • ​​硬體設計​​
  • ​​軟體設計​​
  • ​​再回首​​

前言

前幾天在朋友圈看到面包闆社群的小編發了個**​​曬闆子的活動​​**,作為面包闆社群的活躍使用者,這個活動必須要參加一下!

說起分享自己畫的闆子,我首先想到的就是人生中設計的第一塊PCB闆子:基于STM32+MPU6050的兩輪自平衡小車主要闆,也是幾年前讀大學時的畢業設計。

畢業設計-兩輪自平衡小車主要闆

思緒轉到5年前,2017年的夏天,大三的暑假還沒有結束,我就一人坐上了開往北京的列車,沒想到,這一去,就是5年!

實習的工作不算複雜,樣闆焊接、樣機調試,也會畫一些簡單的小闆子。因為自己是雙非普通大學出身,也深知自己的不足,平時白天幹活,晚上回去就學習PCB,單片機開發。實習了有半年的時間,到了大四下學期,回校準備畢業設計,由于有了一些實習經曆,畢業設計做起來就比較簡單了。

畢業設計-兩輪自平衡小車主要闆

主要闆是自己設計的,小車底盤(輪胎+電機+編碼器)和锂電池是購買的成品。

PCB闆焊接、硬體調試、軟體設計、調參,畢業論文,查重,答辯,一切都比較順利!記得當時答辯現場,可能是因為我是獨立設計、調試的,答辯老師們對我的設計很感興趣,整個答辯過程都是在和老師們愉快的溝通中進行的!最終,我的畢業設計被所在的學院所收藏,畢業設計所花費的費用也找學校報帳了,畢業設計也被評為了優秀!

畢業設計-兩輪自平衡小車主要闆

哈哈,居然還能找到當時在某PCB闆廠下的訂單,含運費一共90元,現在都是免費了吧!

畢業設計-兩輪自平衡小車主要闆

和主題無關的話說的有點多了,下面來詳細介紹一下我當時畫的這塊處女闆!

畢業設計-兩輪自平衡小車主要闆

硬體設計

硬體電路主要包括以下幾部分:

  • STM32F103RET6,最小系統電路
  • TB6612兩路直流電機驅動,電機編碼器檢測
  • 通過分壓電阻方式實作的锂電池電壓ADC檢測
  • 通過MOS管實作的锂電池防過放,欠壓保護電路
  • 闆載MPU6050陀螺儀,用于擷取實時姿态資訊
  • 一路紅外接收頭,預留OLED顯示接口,闆載HC-05藍牙子產品
  • 一路複位按鍵,一路使用者按鍵、兩路使用者LED
  • 預留SWD、序列槽、BOOT配置接口

硬體電路設計上的考慮不周到,電機AB相編碼器連接配接到了STM32的普通IO管腳, 而不是定時器的編碼器管腳,是以軟體控制效果不是太理想,哈哈,也可能是自己沒調好參數!

畢業設計-兩輪自平衡小車主要闆
畢業設計-兩輪自平衡小車主要闆

軟體設計

軟體設計上,僅僅實作了直立環,即平衡車直立效果,沒有實作速度環轉向控制,也沒有實作紅外、藍牙的遙控。

是以軟體方面的工作也比較簡單:

  • STM32基本外設驅動,GPIO、UART、TIMER、ADC、DMA、中斷等等。
  • MPU6050姿态擷取,使用官方DMP庫
  • PID控制算法實作,直立環,參數的整定
  • 異常姿态檢測算法,小車倒地後刹車,防止堵轉造成電機和晶片燒壞。
畢業設計-兩輪自平衡小車主要闆

再回首

現在,再回看自己當時設計的那塊闆子,發現還是有很多不足之處的:

  • 控制軟體方面不完美,僅僅實作了直立環,沒有實作速度環、紅外藍牙遙控等。
  • PCB布局布線不合理,導緻過孔太多,走線比較混亂。
  • 藍牙子產品射頻天線部分沒有預留淨空區,可能會導緻信号很弱。
  • 沒有在靠近電機驅動晶片的位置添加儲能電容,導緻燒了幾次驅動晶片,後來加上才好點。
  • 電機編碼器管腳沒有配置設定到定時器的編碼器接口,隻能通過GPIO中斷方式測速,導緻後續軟體調起來比較費勁

如今,我已經畢業四年,工作時間算是五年。畢業設計的空闆我還保留至今,剩下的都是回憶!

畢業設計-兩輪自平衡小車主要闆
畢業設計-兩輪自平衡小車主要闆

雖然時過多年,當時所學的專業也已經停止招生了,而我也不做單片機開發了,轉向了另一種可程式設計器件FPGA的開發,但是當看到單片機相關的技術文章還是會仔細的研讀一下。

富芮坤FR8016H開發闆+ESP8266實作疫情監控

畢業設計-兩輪自平衡小車主要闆
畢業設計-兩輪自平衡小車主要闆

uFUN開發闆+自己畫的PCIe擴充闆實作的聯網時鐘

畢業設計-兩輪自平衡小車主要闆

血的教訓,Mini PCIe闆子的厚度1.0mm即可,錫手指切掉了一部分才剛好能插進去。

畢業設計-兩輪自平衡小車主要闆

看起來還挺精緻的

畢業設計-兩輪自平衡小車主要闆
畢業設計-兩輪自平衡小車主要闆