桂林電子科技大學(xué)信息科技學(xué)院 朱劍芳
兩輪自平衡車的研究
桂林電子科技大學(xué)信息科技學(xué)院 朱劍芳
【摘要】?jī)奢喿云胶廛囀且粋€(gè)高度不穩(wěn)定兩輪機(jī)器人,是一種特殊輪式移動(dòng)車,其動(dòng)力學(xué)系統(tǒng)具有多變量、非線性、強(qiáng)耦合、參數(shù)不確定性等特性,是研究各種控制方法的一個(gè)理想平臺(tái)。其工作原理是系統(tǒng)以姿態(tài)傳感器(陀螺儀、加速度計(jì))來(lái)監(jiān)測(cè)車身所處的俯仰狀態(tài)和狀態(tài)變化率,高速中央處理器ATmega16用PID算法運(yùn)用卡爾曼濾波得出的更優(yōu)傾角近似值,求出驅(qū)動(dòng)電機(jī)的占空比PWM,驅(qū)動(dòng)電動(dòng)機(jī)產(chǎn)生前進(jìn)或后退的加速度來(lái)達(dá)到車體前后平衡的效果。本文選用適當(dāng)?shù)目刂破?、?zhí)行電機(jī)和傳感器,設(shè)計(jì)出兩輪自平衡車的驅(qū)動(dòng)電路,實(shí)現(xiàn)了兩輪車的硬件控制系統(tǒng)。
【關(guān)鍵詞】ATmega16;加速度傳感器;陀螺儀;PID算法;卡爾曼濾波
兩輪自平衡車兩輪共軸、獨(dú)立驅(qū)動(dòng)、車身中心位于車輪軸上方,通過(guò)電機(jī)運(yùn)動(dòng)保持車身平衡。由于特殊的結(jié)構(gòu),其適應(yīng)地形變化能力強(qiáng),運(yùn)動(dòng)靈活,可以勝任一些復(fù)雜環(huán)境里的工作。從研究意義上看,自平衡車系統(tǒng)是一個(gè)集外界感知、動(dòng)態(tài)平衡決策與規(guī)劃、平衡控制與執(zhí)行等多種功能于一體的綜合復(fù)雜系統(tǒng)。
兩輪平衡車通過(guò)姿態(tài)檢測(cè)系統(tǒng)來(lái)實(shí)時(shí)檢測(cè)車身姿態(tài)及運(yùn)動(dòng)狀態(tài),并根據(jù)姿態(tài)信息對(duì)小車進(jìn)行控制。因此,對(duì)于兩輪自平衡車來(lái)說(shuō),能夠精確并穩(wěn)定的檢測(cè)當(dāng)前車身傾角,是實(shí)現(xiàn)有效控制的關(guān)鍵所在。目前有多重技術(shù)可以實(shí)現(xiàn)傾角檢測(cè),但是實(shí)時(shí)性,經(jīng)濟(jì)性還不夠理想。采用MEMS陀螺儀和加速度計(jì)等慣性傳感器構(gòu)成的姿態(tài)檢測(cè)系統(tǒng)可以實(shí)時(shí)、準(zhǔn)確的檢測(cè)兩輪自平衡車的傾角。兩輪自平衡車屬于本質(zhì)不穩(wěn)定系統(tǒng),因此其實(shí)現(xiàn)的平衡是一種動(dòng)態(tài)平衡。傳統(tǒng)的PID控制在各類工業(yè)場(chǎng)合有著廣泛的應(yīng)用,完全可以滿足兩輪自平衡車的控制系統(tǒng)要求。
本設(shè)計(jì)利用ATmega16單片機(jī)進(jìn)行系統(tǒng)控制,通過(guò)接收和處理系統(tǒng)中各個(gè)模塊的數(shù)據(jù),利用C語(yǔ)言編程完成整個(gè)系統(tǒng)不同模塊的控制。對(duì)驅(qū)動(dòng)板控制以及傳感器數(shù)據(jù)處理是組成該系統(tǒng)的核心。根據(jù)兩輪自平衡車的特性,使用加速度傳感器以及陀螺儀兩種慣性導(dǎo)航傳感器來(lái)采集車體的傾角姿態(tài)信息,空心杯直流減速電機(jī)自帶光電編碼器用以采集電機(jī)速度信息。主控制芯片采用ATmega16微控制器來(lái)完成對(duì)數(shù)據(jù)采集以及處理、對(duì)車體姿態(tài)計(jì)算和判斷、空心杯直流減速電機(jī)控制及其他外圍的控制等功能。
根據(jù)系統(tǒng)要求,兩輪車必須要能夠在無(wú)外界干預(yù)下依靠一對(duì)平行的車輪保持平衡,并完成前進(jìn),后退,左右轉(zhuǎn)彎等動(dòng)作。分析系統(tǒng)要求可知,保持兩輪車的直立和運(yùn)動(dòng)的動(dòng)力都來(lái)自于車子的兩只車輪,車輪由兩只空心杯直流減速電機(jī)組成。驅(qū)動(dòng)器采用差動(dòng)驅(qū)動(dòng)方式。因此,從控制角度來(lái)看,可以將小車作為一個(gè)控制對(duì)象,控制輸入量是兩個(gè)車輪的轉(zhuǎn)動(dòng)速度。整個(gè)控制系統(tǒng)可以分為三個(gè)子系統(tǒng):
(1)兩輪車的平衡控制:以兩輪車傾角為輸入量,通過(guò)控制兩個(gè)電機(jī)的正反轉(zhuǎn)保持小車衡。
(2)兩輪車的速度控制:在保持平衡的基礎(chǔ)上,通過(guò)調(diào)節(jié)小車傾角實(shí)現(xiàn)對(duì)速度的控制,實(shí)際上還是演變?yōu)閷?duì)電機(jī)的控制實(shí)現(xiàn)小車的速度控制。
(3)兩輪車的方向控制:通過(guò)控制兩個(gè)電機(jī)間的轉(zhuǎn)速不同實(shí)現(xiàn)轉(zhuǎn)向。
兩輪自平衡車直立和方向控制任務(wù)都是直接通過(guò)控制車模兩個(gè)驅(qū)動(dòng)電機(jī)完成的,而速度控制則是通過(guò)調(diào)節(jié)小車傾角完成的。小車不同的傾角會(huì)引起車模的加減速,從而達(dá)到對(duì)小車速度的控制。三個(gè)子系統(tǒng)各自獨(dú)立進(jìn)行控制。由于最終都是對(duì)同一個(gè)控制對(duì)象(小車的電機(jī))進(jìn)行控制,所以各個(gè)子系統(tǒng)之間存在著耦合。為了方便分析,在分析其中之一時(shí),假設(shè)其它控制對(duì)象都已經(jīng)達(dá)到穩(wěn)定。比如在速度控制時(shí),需要小車已經(jīng)能夠保持直立控制;在方向控制時(shí),需要小車能夠保持平衡和速度恒定;同樣,在小車平衡控制時(shí),也需要速度和方向控制已經(jīng)達(dá)到平穩(wěn)。這三個(gè)任務(wù)是保持小車平衡是關(guān)鍵。由于小車同時(shí)受到三種控制的影響,從小車平衡控制的角度來(lái)看,其它兩個(gè)控制就成為干擾。因此對(duì)小車速度、方向的控制應(yīng)該盡量保持平滑,以減少對(duì)平衡控制的干擾。以速度調(diào)節(jié)為例,需要通過(guò)改變車模平衡控制中小車傾角設(shè)定值,從而改變車模實(shí)際傾斜角度,達(dá)到速度控制的要求。為了避免影響車模平衡控制,這個(gè)車模傾角的改變需要非常緩慢的進(jìn)行。其中平衡控制是系統(tǒng)的最基本要求,也是整個(gè)控制系統(tǒng)的難點(diǎn)。
一個(gè)傾角環(huán),一個(gè)車速環(huán)。角速度傳感器(陀螺儀)IDG500(經(jīng)過(guò)硬件RC濾波,再接入ADC)、加速度傳感器ADXL322,二者kalman融合取得角度、角速度。本文對(duì)傳感器兩者所采集的數(shù)據(jù)進(jìn)行了卡爾曼濾波優(yōu)化處理,補(bǔ)償陀螺儀的漂移誤差和加速度計(jì)的動(dòng)態(tài)誤差,得到一個(gè)更優(yōu)的傾角近似值。基于在過(guò)程控制中,PID控制器一直是應(yīng)用最為廣泛的一種自動(dòng)控制器,它解決了自動(dòng)控制理論所要解決的最基本問(wèn)題,既系統(tǒng)的穩(wěn)定性、快速性和準(zhǔn)確性,調(diào)節(jié)PID的參數(shù),可實(shí)現(xiàn)在系統(tǒng)穩(wěn)定的前提下,兼顧系統(tǒng)的帶載能力和抗擾能力。同時(shí)在PID調(diào)節(jié)器中引入積分項(xiàng),系統(tǒng)增加了一個(gè)零積點(diǎn),使之成為一階或一階以上的系統(tǒng)。這樣系統(tǒng)階躍響應(yīng)的穩(wěn)態(tài)誤差就為零。本文采用PID算法運(yùn)用卡爾曼濾波得出的更優(yōu)傾角近似值,求出驅(qū)動(dòng)電機(jī)的占空比,來(lái)實(shí)現(xiàn)兩輪自平衡電動(dòng)車姿態(tài)的平衡控制,采用卡爾曼濾波來(lái)優(yōu)化車體姿態(tài),提高兩輪自平衡電動(dòng)車的控制精度。結(jié)構(gòu)框架如圖1-1所示。
圖1-1 程序結(jié)構(gòu)框架
整定方法如下:
(1)調(diào)角度K值,調(diào)至平衡車基本能夠站立。
(2)調(diào)角速度K值,從零慢慢增加,這個(gè)K很小。太小的話,車子反應(yīng)遲鈍,好像沒(méi)有這項(xiàng)一樣,太大的話,車子抗擾能力變差,所以需要大量測(cè)試細(xì)心調(diào)至適當(dāng)位置。
(3)調(diào)水平速度K值的時(shí)候,要注意獲得的車速的精確性,同時(shí)城需要做好車速的低通濾波。濾波做好了,車速調(diào)節(jié)效果就很好,算位移的時(shí)候就很精確,不會(huì)有太快的漂移。
(4)位移K值也應(yīng)該很小,因?yàn)槭撬俣鹊睦塾?jì),慢慢的漂移會(huì)變大,設(shè)定一個(gè)上下限,是為了防止漂移過(guò)大造成控制量過(guò)大。K值參數(shù)如表1-1所示。
表1-1 K值參數(shù)
本文主要研究?jī)奢喥胶廛嚨脑O(shè)計(jì)與實(shí)現(xiàn)。通過(guò)相應(yīng)硬件與軟件的設(shè)計(jì),實(shí)現(xiàn)了兩輪平衡車的動(dòng)態(tài)平衡與運(yùn)動(dòng)控制。
系統(tǒng)硬件結(jié)構(gòu)以ATMEL公司8位單片機(jī)Atmega16為控制核心,采用MEMS陀螺儀IDG500及MEMS加速度計(jì)ADXL322構(gòu)成了慣性姿態(tài)檢測(cè)系統(tǒng),通過(guò)MOS管組成的H橋電機(jī)驅(qū)動(dòng)及旋轉(zhuǎn)編碼器實(shí)現(xiàn)了直流電機(jī)的閉環(huán)調(diào)速,最終實(shí)現(xiàn)了兩輪平衡車的姿態(tài)檢測(cè)與平衡控制。以及在保持兩輪平衡的基礎(chǔ)上可以實(shí)現(xiàn)前進(jìn)、后退、轉(zhuǎn)彎等基本動(dòng)作。
參考文獻(xiàn)
[1]林文建,鐘杭,黎福海等.兩輪自平衡機(jī)器人控制系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[J].電子測(cè)量與儀器學(xué)報(bào),2013.8.
[2]莊曉燕,王厚軍.基于卡爾曼濾波器的IEEE 1588時(shí)鐘同步算法[J].電子測(cè)量與儀器學(xué)報(bào),2012(09).
[3]楊興明,余忠宇.兩輪移動(dòng)倒立擺的開(kāi)關(guān)切換模糊極點(diǎn)配置控制器設(shè)計(jì)[J]. 電路與系統(tǒng)學(xué)報(bào), 2012(04).
作者簡(jiǎn)介:
朱劍芳(1981-),講師,主要研究方向:電子技術(shù)應(yīng)用,智能測(cè)控。