學(xué)習(xí)一種單片機(jī)最快的方式莫過于用它實(shí)際制作一個作品了,前些天看到有人在玩平衡小車,感覺非常有趣,于是就決定自己動手制作一個基于stm32的兩輪平衡小車。從電路板設(shè)計,到程序編寫,一步一步的,希望自己在這個過程中有一定的收獲。
這篇博客先寫最開始的電路設(shè)計,之后會更新后續(xù)的代碼編寫和小車調(diào)試。
電路設(shè)計的基本過程一般是這樣的:需求分析——元件選型——原理圖設(shè)計——PCB設(shè)計——焊接調(diào)試。
需求分析:在這里,主要是確定小車需要哪些模塊、外設(shè)或接口。首先,stm32最小系統(tǒng)是必須的,這是小車控制的核心。然后小車的兩個輪子需要兩個H橋驅(qū)動和編碼器接口。需要陀螺儀感知小車的姿態(tài)(包括傾角,轉(zhuǎn)向角,角速度等)。需要一些調(diào)試和指示用的外設(shè)(蜂鳴器,LED等)。需要電源電路為系統(tǒng)供電。需要電池電壓采集電路來實(shí)時采集電池電壓,做低壓報警,防止電池過放。需要下載接口和調(diào)試用的串口?;揪褪歉鶕?jù)自己想要實(shí)現(xiàn)功能,然后確定需要那些部分的電路。
元件選型:為需要的各個部分電路選擇元件,一般來說,主要是選擇何種型號、什么封裝的芯片,對于一些比較特殊的電路,即使是電阻電容這樣常見的無源器件也需要認(rèn)真選擇,然而平衡小車的電路中并不需要一些高精度或很高速的電路部分,所以,下面主要介紹如何選擇各個電路部分的主要芯片。
1.最小系統(tǒng):考慮到小車的主控板可以作為今后做四軸或其他更高級的機(jī)器人的基礎(chǔ)電路,所以主控選擇了stm32F405RGT6,這款主控是M3內(nèi)核的,主頻可以達(dá)到168M,有豐富的外設(shè)資源可以使用,性能非常強(qiáng)悍,非常適合以后的開發(fā)和拓展。
2.電機(jī)驅(qū)動:小車的兩個輪子電機(jī)需要兩個H橋驅(qū)動。驅(qū)動的選擇和電機(jī)的參數(shù)緊密相關(guān)。我選用的電機(jī)的正常工作電流360mA,并且考慮到小車在正常情況下基本不會出現(xiàn)賭轉(zhuǎn)的情況,并且為了盡量減小PCB板的面積,所以選擇了東芝的電機(jī)驅(qū)動芯片TB6612,該芯片有兩個集成的H橋,可以同時驅(qū)動兩個電機(jī),每個H橋可以持續(xù)輸出1.2A的電流,PWM頻率可以到100kHz,芯片的供電電壓最大可以到15V,適合用3S電池供電,并且芯片封裝很小,節(jié)省PCB面積。
3.電源電路:主要考慮輸入電壓、輸出電壓、輸出電流等。小車電池采用3S鋰聚合物電池,放電率25C,以后做四軸還能用。電池的滿電電壓12.6V左右,電路中需要5V和3.3V的電源,因此需要選擇兩款款芯片將12V電壓降壓到5V,然后再將5V降壓到3.3V。12V-5V的芯片可以選擇MPS公司的DCDC降壓芯片MP2482,該芯片支持最大5A電流輸出,最大28V電壓輸入,0.8至25V可調(diào)電壓輸出,符合需求。5V-3.3V選用常見的AMS1117-3.3。
4.陀螺儀:選用MPU6050模塊,模塊自帶了軟件濾波算法,采用串口對外輸出數(shù)據(jù),在115200波特率的情況下,每秒鐘可以輸出100幀的數(shù)據(jù)。
原理圖設(shè)計:
1.最小系統(tǒng):包括stm32f405rgt6,晶振電路,復(fù)位電路。R2和R3用于配置啟動方式。C9和C12是單片機(jī)內(nèi)部電源變換部分的濾波電容。最小系統(tǒng)基本都是一樣的,按照常用的電路設(shè)計一般沒有錯。那幾個電容式芯片的去耦電容,注意一下,模擬電壓、模擬地和數(shù)字電源、數(shù)字地之間用磁珠隔離,防止數(shù)字電路的高頻噪聲影響到模擬電路的精度。

2.電源電路:R22和R23將電池電壓分壓到1.2V,接到單片機(jī)內(nèi)部的ADC引腳,監(jiān)控電池電壓,防止過放。

3.電機(jī)驅(qū)動和編碼器電路:基本就是按照芯片datasheet上的參考電路設(shè)計的,注意做好電源去耦,因?yàn)殡姍C(jī)的電壓較高、電流較大,容易通過電源網(wǎng)絡(luò)對其它電路產(chǎn)生影響。

4.陀螺儀:集成的模塊,沒啥好說的,把引腳連到單片機(jī)上就好了,簡單在電源腳上并一個電容做一下電源去耦(不做也無妨,因?yàn)槟K內(nèi)部已經(jīng)做了)。

5.CAN通信:在小車上并沒有用到CAN通信,但是CAN通信在現(xiàn)在的機(jī)器人設(shè)計中應(yīng)用的非常廣泛。并且我們做小車本來就是要學(xué)東西的,加上調(diào)一下,多學(xué)習(xí)些知識,何樂而不為呢?CAN通信用的芯片是飛利浦的TJA1050,這是一個CAN收發(fā)器,stm32內(nèi)部集成了CAN控制器。R4是阻抗匹配的電阻,在整個CAN通信網(wǎng)絡(luò)中有且只有兩個節(jié)點(diǎn)焊接此電阻,電阻阻值為120ohm?,F(xiàn)在也還沒有深入學(xué)習(xí)CAN通信相關(guān)的知識,在以后調(diào)試CAN通信的時候再詳細(xì)學(xué)習(xí)吧。(^.^)

6.調(diào)試電路和其他的接口:SWD下載接口,USART調(diào)試串口,藍(lán)牙接口(根據(jù)選擇的藍(lán)牙模塊不同確定接口不同引腳的用途,比如使能腳、狀態(tài)輸入腳等,后面寫藍(lán)牙的時候詳細(xì)描述)。蜂鳴器和雙色LED燈用于調(diào)試和指示。另外又引出了幾個定時器的引腳,可以留作拓展使用。



PCB設(shè)計:不詳細(xì)說了吧,工程文件在附件里有。注意事項主要有電源去耦(具體做法可以參考我之前關(guān)于電源去耦的博文)、線寬控制(大電流的走線要盡量寬)、開關(guān)電源的布局布線(一般來說主要記住三點(diǎn)就好了:一是芯片的SW的信號是電壓高,頻率高的開關(guān)信號,會對其他電路產(chǎn)生嚴(yán)重的干擾,要盡量遠(yuǎn)離敏感的電路。二是反饋網(wǎng)絡(luò)是很敏感的網(wǎng)絡(luò),盡量避免受干擾。三是電源的電流較大,注意線寬和過孔的數(shù)量、孔徑等,保證有能力通過這么大的電流。注意了這三點(diǎn),集成的DCDC電路一般沒有問題)等。這里貼一下板子正反兩面的3D效果圖
焊接調(diào)試:也不多說了,平時多練練手,0603 QFP這些封裝的元件就能輕松搞定了。焊接的時候先焊接電源部分,上電測試電源沒有問題的話再焊接其他部分,否則一旦電源有問題,整板全白焊了。。下面貼一個焊接調(diào)試好了的實(shí)物圖。
嗯,就先寫這么些吧。上面寫的比較啰嗦,也沒有什么高大上的技術(shù),差不多都是硬件電路設(shè)計需要的基礎(chǔ)知識吧。只是希望將自己設(shè)計這塊平衡小車電路板的過程比較系統(tǒng)和通俗的介紹一下,能將自己這實(shí)踐過程中學(xué)到的只是和經(jīng)驗(yàn)分享出來,沒怎么接觸過這方面的朋友可以將其當(dāng)作參考,快速入門。同時希望各位高手和達(dá)人能多多指教。
-
編碼器
+關(guān)注
關(guān)注
45文章
3955瀏覽量
142717 -
代碼
+關(guān)注
關(guān)注
30文章
4968瀏覽量
74001 -
平衡小車
+關(guān)注
關(guān)注
1文章
39瀏覽量
12956
原文標(biāo)題:stm32學(xué)習(xí)——兩輪平衡小車之硬件設(shè)計
文章出處:【微信號:all4lib,微信公眾號:開源Block】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
百度地圖技術(shù)引擎重塑兩輪車導(dǎo)航新體驗(yàn)
四維圖新發(fā)布兩輪車智能化解決方案
ASM1042A3S車規(guī)級CANFD芯片在兩輪車和平衡車控制器方案中的技術(shù)應(yīng)用
四維圖新參與編制兩輪車智能化技術(shù)發(fā)展路線圖
Arduino Uno l兩輪自平衡機(jī)器人 電機(jī)驅(qū)動無輸出求解
賦能兩輪車新國標(biāo) | 匠芯創(chuàng)D13x系列芯片為手機(jī)無線投屏與導(dǎo)航提供核心支持
電動兩輪車儀表盤2.0時代來臨,開啟智慧出行新潮流
晶華微新歐標(biāo)兩輪車BMS解決方案
杰發(fā)科技亮相2025年兩輪車智能化技術(shù)發(fā)展大會
武漢芯源半導(dǎo)體CW32L010在兩輪車儀表的應(yīng)用介紹
武漢芯源半導(dǎo)體CW32L010在兩輪車儀表的應(yīng)用介紹
杰發(fā)科技持續(xù)賦能兩輪車智能化升級
兩輪平衡小車之硬件設(shè)計
評論