一、簡介
接觸STM32開發(fā)一段時間了,想用STM32做一個有意思的項目,經(jīng)歷了無數(shù)的調(diào)參調(diào)參再調(diào)參,終于讓它站穩(wěn)了,接一下就一步步的跟大家介紹一下,項目的整體實現(xiàn)過程—
二、項目介紹
STM32平衡小車是一種基于STM32芯片的智能小車,它可以通過自動控制來保持平衡,使其可以在不同的地形上穩(wěn)定行駛。其使用范圍非常廣泛。需要用到一些基本的硬件組件,例如電機、輪子、陀螺儀、加速度計、電池等。通過設(shè)計的電路板進行連接,組成一個完整的系統(tǒng)。
三、硬件設(shè)計
根據(jù)上述需求,我進行了電路圖設(shè)計


四、軟件設(shè)計
4.1電機驅(qū)動編寫
4.1.1電機引腳說明

編碼電機
引腳說明:
| M1電機電源線(12V) |
| GND編碼器地線 |
| C1電機編碼器A相 |
| C2電機編碼器B相 |
| VCC編碼器電源3.3V |
| M2電機電源線(12V) |
4.1.2電機驅(qū)動模塊說明

TB6612FNG電機驅(qū)動模塊
| VCC:電源正極,一般接5V或3.3V電源。 |
| GND:電源負(fù)極,接地。 |
| AIN1:H橋A口輸入1,接控制信號。 |
| AIN2:H橋A口輸入2,接控制信號。 |
| PWMA:A口PWM輸入,控制A口輸出占空比。 |
| STBY:H橋使能信號,高電平使能,低電平關(guān)閉。 |
| AO1:H橋A口輸出1,接電機正極。 |
| AO2:H橋A口輸出2,接電機負(fù)極。 |
| BIN1:H橋B口輸入1,接控制信號。 |
| BIN2:H橋B口輸入2,接控制信號。 |
| PWMB:B口PWM輸入,控制B口輸出占空比。 |
| BO1:H橋B口輸出1,接電機正極。 |
| BO2:H橋B口輸出2,接電機負(fù)極。 |
根據(jù)原理圖將對應(yīng)硬件連接,接下來我們開始測試
4.1.3電機驅(qū)動實戰(zhàn)
我們給PWMA、PWMB引腳輸出PWM信號,控制電機轉(zhuǎn)速,AO1、AO2、BO1、BO2設(shè)置位正轉(zhuǎn)
真值表
| AO1 | AO2 | BO1 | BO2 |
| 1 | 0 | 1 | 0 |
以上主要通過引腳控制電機轉(zhuǎn)動方向,下面講一下STM32輸出PWM原理
4.1.3.1 PWM原理
STM32通過初始化PA8、PA11這兩個引腳,復(fù)用為TIM脈沖寬度調(diào)制模式1,通過修改TIM1通道1、4的寄存器存放數(shù)值,來控制PWM的輸出脈寬。
#define PWMA TIM1->CCR1 //PA8
#define PWMB TIM1->CCR4 //PA11
通過以上設(shè)置,實現(xiàn)對電機轉(zhuǎn)速、方向的控制
五、效果演示

審核編輯黃宇
-
STM32
+關(guān)注
關(guān)注
2301文章
11092瀏覽量
369912 -
平衡車
+關(guān)注
關(guān)注
7文章
80瀏覽量
27817
發(fā)布評論請先 登錄
基于STM32的雙輪平衡小車設(shè)計
兩輪自平衡小車的設(shè)計與實現(xiàn)
基于STM32設(shè)計的智能平衡小車源代碼免費下載
【STM32】兩輪自平衡小車學(xué)習(xí)筆記1
平衡小車調(diào)試總結(jié)
基于STM32的兩輪平衡小車設(shè)計

基于STM32的平衡小車設(shè)計過程分享(1)
評論