王兆康 郝軍迪 張龍 王尊
摘要:目前,國內(nèi)市場上的平衡車琳瑯滿目,但多數(shù)功能單一,價(jià)格昂貴,平衡性與穩(wěn)定性也有待提高。針對這一問題,設(shè)計(jì)了基于STM32的可控兩輪自平衡小車,本文主要介紹了該設(shè)計(jì)的先進(jìn)性、可靠性。通過一系列的試驗(yàn)表明,本文所介紹的智能小車具有控制方便、系統(tǒng)穩(wěn)定、功能豐富、成本低廉等優(yōu)點(diǎn)。
關(guān)鍵詞:兩輪可控自平衡小車;STM32;硬件電路;軟件算法
自平衡小車自問世至今,便受到研究人士的廣泛關(guān)注,迅速成為理想的控制理論研究平臺,同時(shí)它也成為商家眼中的巨大商機(jī),很多商家已將其投入運(yùn)輸、承載、代步等商業(yè)用途中使用,雖然仍存在很多問題,但同樣創(chuàng)造了可觀的收益。提起兩輪車,人們大多都會想起摩托車、自行車甚至是兩輪手推車等,其主要特點(diǎn)是兩個(gè)輪子處于同一平面,其靜態(tài)穩(wěn)定性很差,而兩輪可控自平衡小車在傳統(tǒng)兩輪車的基礎(chǔ)上進(jìn)行了功能上的突破,它有著極為突出的特色:兩個(gè)輪子處于共軸的平行平面上,運(yùn)動方式為差動式,零半徑轉(zhuǎn)向,根據(jù)倒立擺原理達(dá)到動態(tài)平衡狀態(tài)。世界上最早對自平衡小車進(jìn)行研究的是美國發(fā)明家狄恩·卡門(Dean Kamen),其所研發(fā)的第一臺平衡小車售價(jià)高達(dá)7萬人民幣,而且其平衡性、穩(wěn)定性都有著很大的提升空間,近年來中國市場上所銷售的自平衡小車也都面臨著相似的問題:平衡性、可靠性差,價(jià)格高昂,功能單一。如何提高平衡小車的穩(wěn)定性、可靠性,降低生產(chǎn)成本,豐富其功能是本文所要解決的主要問題。
本文設(shè)計(jì)的自平衡小車增加了藍(lán)牙模塊和顯示功能,可以通過手機(jī)安裝相應(yīng)的APP進(jìn)行具有遠(yuǎn)程遙控并實(shí)時(shí)了解小車的狀態(tài),這大大增加了小車操作的可控性,也方便了調(diào)試。微處理器選用基于ARM內(nèi)核的STM32,不僅具有低功耗和高性價(jià)比的特點(diǎn),而且大大降低了生產(chǎn)成本,其他所需的電子器件在市面上也都較為常見且價(jià)格低廉,完全滿足了設(shè)計(jì)平衡車的需求。
1 系統(tǒng)總體設(shè)計(jì)
本系統(tǒng)的主控芯片采用STM32,電源模塊選用航模電池,小車的實(shí)施狀況通過陀螺儀MPU-6050和加速度傳感器進(jìn)行采集,然后通過IIC接口發(fā)送給主控芯片STM32,所接受數(shù)據(jù)經(jīng)主控芯片STM32分析后,主控芯片作出相應(yīng)反應(yīng)通過改變馬達(dá)轉(zhuǎn)速從而控制小車狀態(tài)。另一方面,從手機(jī)端APP發(fā)送過來的指令也可經(jīng)主控芯片STM32分析后,通過主控芯片STM32控制小車做出相應(yīng)操作,結(jié)構(gòu)框架如圖1所示。
2 系統(tǒng)硬件設(shè)計(jì)
STM32主控模塊:本系統(tǒng)所采用的主控芯片為意法半導(dǎo)體公司推出的ARM Cortex-M3內(nèi)核的32位單片機(jī)stm32f103RB,其具有能力強(qiáng)、運(yùn)算快、功耗低的特點(diǎn),內(nèi)部集成了FLASH、SRAM、PWM、SPI、IIC、USART、TIMER、AD等多種模塊,被廣泛用于工業(yè)控制領(lǐng)域。
電源供電模塊:本系統(tǒng)所采用的供電模塊為航模電池,其輸出電壓為12V,由于各模塊對電壓要求不同,因此將12V電壓通過低壓差線性穩(wěn)壓器LM2940轉(zhuǎn)換成5V電壓,對藍(lán)牙模塊和陀螺儀傳感器進(jìn)行供電;將5V電壓通過低壓差線性穩(wěn)壓器LT1117轉(zhuǎn)換成3.3V電壓,進(jìn)而對測速模塊和主控芯片STM32等進(jìn)行供電。
陀螺儀傳感器模塊:本系統(tǒng)所采用的陀螺儀傳感器型號為MPU-6050,其內(nèi)部功能較為豐富,不僅兼具了加速度傳感器和陀螺儀傳感器的功能,還有開源的協(xié)處理器。另外,將額外的數(shù)字傳感器接在IIC通用串行數(shù)據(jù)傳輸口,還可進(jìn)一步的進(jìn)行功能拓展。采用ICC接口實(shí)現(xiàn)主控芯片與陀螺儀傳感器MPU-6050的通信,主要由于IIC接口的硬件連接方式相對簡單,數(shù)據(jù)的傳輸只需借助SDA數(shù)據(jù)線和SCL時(shí)鐘線兩根線即可完成,而且在速度方面也毫不遜色,完全滿足本系統(tǒng)的設(shè)計(jì)要求。
測速模塊:本系統(tǒng)所采用的測速方法為光柵法,即將一個(gè)均勻分布有扇形槽孔的轉(zhuǎn)盤安裝在馬達(dá)軸上,紅外發(fā)射端和紅外接收端分別固定在轉(zhuǎn)盤的兩端,在馬達(dá)工作過程中,轉(zhuǎn)盤一側(cè)的紅外接收端會收到相應(yīng)的PULSE信號,并對單位時(shí)長內(nèi)的PULSE信號進(jìn)行記錄,根據(jù)所記錄的PULSE信號數(shù)據(jù)便可計(jì)算出馬達(dá)的旋轉(zhuǎn)速率。
藍(lán)牙模塊:本系統(tǒng)所選用的藍(lán)牙模塊為ZK-07,它是新一代的無線藍(lán)牙數(shù)傳模塊,用戶只需進(jìn)行簡單的設(shè)置與編寫簡單的傳輸程序,就能夠透明傳輸任何大小的數(shù)據(jù)。在通信傳輸過程中,藍(lán)牙模塊各種參數(shù)的調(diào)節(jié)可通過AT命令實(shí)現(xiàn),比如修改串口傳輸波特率,修改藍(lán)牙模塊名稱,通信測試等。采用USARTA1接口實(shí)現(xiàn)藍(lán)牙模塊與主控芯片之間的通信,當(dāng)自平衡小車上的ZK-07模塊與手機(jī)端的藍(lán)牙匹配成功后,數(shù)據(jù)通信功能便可得到實(shí)現(xiàn),在手機(jī)APP端發(fā)送給小車相應(yīng)的指令,小車上的藍(lán)牙模塊接收相應(yīng)命令后便可做出相應(yīng)的回應(yīng),如調(diào)整自身前進(jìn)姿態(tài),調(diào)整行駛速度以及左右轉(zhuǎn)向等。
3 系統(tǒng)軟件設(shè)計(jì)
軟件設(shè)計(jì)主要包括如下內(nèi)容:各類外設(shè)及模塊驅(qū)動,陀螺儀傳感器MPU-605驅(qū)動、加速度傳感器驅(qū)動、定時(shí)器驅(qū)動、PWM外設(shè)驅(qū)動、IIC驅(qū)動、USART驅(qū)動;各外設(shè)及模塊的初始化,小車車輪速度的測量,小車姿態(tài)數(shù)據(jù)的獲取以及濾波,適配本系統(tǒng)的PID算法。軟件系統(tǒng)的運(yùn)行過程如圖2所示。
4 結(jié)語
本文介紹了一種基于STM32微處理器的兩輪可控自平衡小車的設(shè)計(jì)。本系統(tǒng)應(yīng)用陀螺儀傳感器、超聲波模塊、紅外接收模塊等從硬件角度構(gòu)建了一個(gè)自平衡系統(tǒng),以uCOS-II為軟件系統(tǒng)進(jìn)行了一系列的軟件設(shè)計(jì),并對自平衡小車系統(tǒng)進(jìn)行了相關(guān)的功能拓展。 實(shí)驗(yàn)證明,該系統(tǒng)控制方便、系統(tǒng)穩(wěn)定、功能豐富、成本低廉,可用于野外拍攝,商業(yè)運(yùn)輸?shù)韧緩健?/p>
參考文獻(xiàn)
[1]張陽.基于視覺的自平衡小車協(xié)同行進(jìn)控制研究[D].重慶大學(xué),2016.
[2]丁鳳.一種新型兩輪自平衡小車的建模與控制[D].華中科技大學(xué),2012.
[3]劉博文.ARM Cortex-M3應(yīng)用開發(fā)實(shí)例詳解[M].電子工業(yè)出版社,2011.
[4]朱加輝.兩輪自平衡小車反饋線性化及變結(jié)構(gòu)控制研究[D].西安電子科技大學(xué),2010.
[5]楊菲,周鳳星.基于ARM的藍(lán)牙通信模塊的設(shè)計(jì)與實(shí)現(xiàn)[J].通信技術(shù),2011.
[6]栗維克.兩輪自平衡小車大范圍穩(wěn)定的智能控制研究[D].西安電子科技大學(xué),2008.
[7]孟強(qiáng).基于STM32的數(shù)據(jù)采集系統(tǒng)設(shè)計(jì)[D].南京林業(yè)大學(xué),2014.
[8]高忠斌.模塊化接收機(jī)與多通道數(shù)據(jù)采集電路設(shè)計(jì)[D].哈爾濱工程大學(xué),2010.