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