楊東澤 孫強 丁韜 賈萱 溫裕鴻 席鵬程 趙昱皓 李德玖
摘要:本項目基于STM32來設(shè)計實現(xiàn)雙輪平衡小車,硬件方面采用STM32F103R6單片機作為系統(tǒng)的主控芯片,采用MPU6050陀螺儀檢測小車的自身姿態(tài),采用兩個直流電機和兩路直流電機驅(qū)動器控制平衡小車的前進后退和轉(zhuǎn)速。同時加裝藍牙傳輸模塊將小車數(shù)據(jù)傳輸?shù)绞謾CAPP上,通過手機APP也可以遙控小車的運行。在軟件方面,平衡小車實時讀取陀螺儀的數(shù)據(jù)獲取自身姿態(tài),并與目標姿態(tài)對比后通過PID控制兩輪的轉(zhuǎn)速和轉(zhuǎn)向,實現(xiàn)小車姿態(tài)的調(diào)整。
1.引言
如今科技發(fā)展不斷進步,但從這些年來講,移動機器人的發(fā)展越來越好,產(chǎn)業(yè)鏈也日漸完善,在生活中我們或多或少可以見到不同形式的機器人的存在。這幾年最受人們關(guān)注的莫過于平衡車了,自動平衡車的各種優(yōu)點讓它迅速成為了一種環(huán)保又舒適的綠色交通代步工具,有望成為以后未來汽車和自行車的代步品。
2.硬件設(shè)計
該系統(tǒng)由主控制器STM32單片機、電機驅(qū)動模塊、藍牙通訊模塊、直流電源模塊、液晶顯示模塊、傳感器感知模塊和速度測量模塊等部分組成。
控制器采用單片機STM32F429,該單片機使用的內(nèi)核是Cortex M4,含有DSP指令集,它內(nèi)部的SRAM
大小為256KB。該芯片的模擬量轉(zhuǎn)為數(shù)字量的轉(zhuǎn)換速度非???,并且轉(zhuǎn)換模塊的工作供電電壓很低,內(nèi)部含有8個定時器,可同時處理32位數(shù)據(jù),I/O端口可以復(fù)用為很多其它的功能,常用的串行接口有USART和SPI通信,該單片機最高的工作頻率可以達到180MHz , STM32F429單片機總線訪問的速度非??欤⑶以搯纹瑱C擁有強大的數(shù)據(jù)處理能力,可以完全滿足本次設(shè)計要求。
顯示模塊主要是將雙輪自平衡小車的運行狀態(tài)實時的顯示到人機交互界面,使我們進一步了解雙輪自平衡小車的運行狀況。顯示模塊采用串口觸摸屏顯示,串口觸摸屏HMI就是將它的一般功能進行封裝,使用者可以通過串口USART與屏幕進行消息的交換,從而滿足用戶的要求,人機交互界面非常友好且操作性良好,用戶可以通過屏幕發(fā)送相應(yīng)的指令來完成相關(guān)操作。
3.自平衡原理與控制策略
由于小車上安裝有六軸傳感器MPU6050,可以檢測到小車x, y,,三軸的傾斜角度和三軸方向的加速度,將所收集的數(shù)據(jù)進行分析和處理,可以得到小車所處的狀態(tài),并且程序是根據(jù)小車所處的不同狀態(tài)而編寫。
(1)靜止時:當(dāng)小車的重心位于電機軸線中心位置的正上方時,此時傳感器MPU6050將采集到的數(shù)據(jù)進行處理分析得出小車位于00位置,即平衡位置,此時小車靜止。當(dāng)檢測到小車的重心向前傾斜時,則需要小車向前運動來保持小車的平衡狀態(tài);當(dāng)檢測到小車的重心向后傾斜時,則需要小車向后運動來保持小車的平衡狀態(tài)。
(2)前進時:小車略微向后加速,這將傾斜小車的重心,使其稍微向前,然后再使小車在反方向加速,小車就會向前傾斜,同時保持小車處于平衡狀態(tài),使得小車前進。
(3)后退時:小車的車輪稍微向前加速,這將傾斜小車的重心,使其稍微向后,然后再使小車的兩輪在反方向加速,這將使小車向后傾斜,同時保持小車的平衡,使得小車倒退。
(4)左轉(zhuǎn)時:當(dāng)小車處于前進或者后退并且保持平衡狀態(tài)時,控制小車的左輪以較慢的速度運動、小車的右輪以較快速度運動時,即可使小車向左轉(zhuǎn)。
(5)右轉(zhuǎn)時:當(dāng)小車處于前進或者后退并且保持平衡狀態(tài)時,控制小車的右輪以較慢的速度運動、小車的左輪以較快速度運動時,即可使小車向右轉(zhuǎn)。
經(jīng)過理論分析即可得出小車處于不同狀態(tài)時的控制思路,進而對小車實現(xiàn)不同的控制。
結(jié)論
本次系統(tǒng)設(shè)計采用單片機STM32作為主控制器,對該系統(tǒng)發(fā)送指令,實現(xiàn)控制;傳感器MPU6050模塊用來檢測當(dāng)前小車的傾斜程度,通過傾斜程度來對小車進行控制;顯示模塊用來顯示小車的運行信息;最終小車實現(xiàn)了在不同狀態(tài)下的自平衡。
參考文獻:
[1] 李詳鵬, 陳春, 周子文,等. 基于MEMS傳感器的兩輪平衡小車設(shè)計[J]. 科技創(chuàng)新與應(yīng)用, 2019, 000(022):27-29.
[2] 朱先勇, 歐陽修若, 孫靈欣,等. 基于STM32f1兩輪自平衡小車設(shè)計[J]. 數(shù)碼設(shè)計:下, 2019, 000(008):82-83.
[3]鄭歡.雙輪小車自平衡循跡系統(tǒng)設(shè)計與實現(xiàn)[J].內(nèi)蒙古煤炭經(jīng)濟,2019(08):141-142.
[4]李帥男.基于STM32控制的雙輪自平衡小車的設(shè)計[J].現(xiàn)代工業(yè)經(jīng)濟和信息化,2018,8(13):34-35.
[5]錢玉恒,楊亞非.基于雙輪自平衡小車的創(chuàng)新實驗課教學(xué)內(nèi)容設(shè)計[J].實驗技術(shù)與管理,2018,35(09):29-33.
[6]徐施博,李輝,黃毅,陳彬.基于STM32的單軸雙輪自平衡小車的設(shè)計[J].儀表技術(shù),2018(02):27-29.
[7]孟帥,常德軍,陳章寶.雙輪自平衡小車控制系統(tǒng)設(shè)計[J].電子世界,2017(01):89-90.
[8]徐錦.基于STM32單片機的雙輪自平衡小車系統(tǒng)的設(shè)計[J].山東工業(yè)技術(shù),2016(21):282+272.
[9]陳章寶,鮑偉超,孟帥.兩輪自平衡小車的研究與設(shè)計[J].蚌埠學(xué)院學(xué)報,2016,5(05):1-5.
經(jīng)費支持:衢州學(xué)院實驗室開放項目(KFXM202007)
衢州學(xué)院 電氣與信息工程學(xué)院 浙江省衢州市 324000