本實(shí)用新型涉及兩輪自平衡小車,尤其涉及一種基于arduino和云模型控制的兩輪自平衡小車。
背景技術(shù):
兩輪自平衡小車是一個參數(shù)多變,自然不平衡的運(yùn)動系統(tǒng),其平衡姿態(tài)的控制關(guān)鍵在于核心控制算法,目前控制算法多采用PID控制及其改進(jìn)算法。兩輪平衡車是由左右兩個車輪和車體組成的多變量、強(qiáng)耦合、高度不穩(wěn)定、非線性的控制系統(tǒng),也是檢測各種控制算法優(yōu)劣的經(jīng)典控制理論模型。中國文獻(xiàn)“兩輪自平衡小車的 PID 控制[J]”(黃亞新,耿安坤,陳樓等,電子世界,2013,18:81,136)采用經(jīng)典PID算法實(shí)現(xiàn)了兩輪小車的平衡控制,經(jīng)典PID算法簡單,不要求精確的系統(tǒng)模型。中國文獻(xiàn)“基于PID和LQR控制的兩輪自平衡小車研究[D]”(陸軍,西安:西南交通大學(xué),2012,6)中涉及的LQR算法是現(xiàn)代控制理論的典型代表,要求對系統(tǒng)建立精確模型。中國文獻(xiàn)“基于 LQR 算法兩輪自平衡小車的系統(tǒng)設(shè)計(jì)與研究[D]”(李洋,太原:太原理工大學(xué),2011)通過仿真實(shí)驗(yàn)表明,LQR比PID算法具有更好的控制效果和范圍。中國文獻(xiàn)“兩輪自平衡小車姿態(tài)平衡控制系統(tǒng)的研究[J]”(盧秀和,李海銘,薛鵬等,數(shù)字技術(shù)與應(yīng)用,2013(2):10-11,13)中也采用了LQR線性二次型最優(yōu)控制,結(jié)合系統(tǒng)建模實(shí)現(xiàn)了兩輪自平衡較好的平衡姿態(tài)控制,并在仿真中得到驗(yàn)證。中國文獻(xiàn)“雙閉環(huán)控制方法在兩輪自平衡小車中的應(yīng)用研究[D]”(茹斐斐,河南大學(xué),2013)中提出了一種雙閉環(huán)的控制算法,內(nèi)環(huán)采用根軌跡控制方法控制小車角度,外環(huán)采用模糊控制方法,把小車位置和速度作為輸入量。中國文獻(xiàn)“基于自校正 PID 控制的兩輪自平衡小車[J]”(李天利,周東輝,陳遠(yuǎn)思,王馬林,自動化應(yīng)用,2015(02):71-73)則提出一種自校正的PID算法控制方案,利用其自適應(yīng)特性對兩輪小車進(jìn)行姿態(tài)平衡控制,能使小車具有較好的快速性和穩(wěn)定性。中國文獻(xiàn)“基于PID神經(jīng)網(wǎng)絡(luò)的兩輪自平衡小車研究[J]”(陳波,傅攀,陸軍,機(jī)械工程與自動化,2014,12(06):154-156)是利用PID神經(jīng)網(wǎng)絡(luò)對兩輪自平衡小車的系統(tǒng)辨識,并利用辨識結(jié)果對小車控制器參數(shù)進(jìn)行調(diào)整,優(yōu)化了控制器參數(shù),改善了兩輪小車的平衡性能。由于兩輪自平衡小車具有強(qiáng)耦合性、非線性和不穩(wěn)定性,因此難以建立精確的數(shù)學(xué)模型,中國文獻(xiàn)“模糊控制研究及其在兩輪自平衡小車中的應(yīng)用[D]”(黃彥海,河南:河南大學(xué),2014)設(shè)計(jì)了單一輸入規(guī)則群(SIRMs)動態(tài)加權(quán)模糊控制器,對小車進(jìn)行控制,也取得了較好的控制效果。中國文獻(xiàn)“基于GA的兩輪自平衡小車LQR最優(yōu)控制器設(shè)計(jì)[J]”(楊凌霄,李曉陽,河南理工大學(xué)學(xué)報(自然科學(xué)版),2015,34(1):85-90)針對LQR最優(yōu)控制器權(quán)重矩陣確定困難以及由此導(dǎo)致的響應(yīng)速度慢等問題,提出一種通過遺傳算法實(shí)現(xiàn)LQR控制器參數(shù)尋優(yōu)的方法,相對于傳統(tǒng)的極點(diǎn)配置和LQR方法具有更好的控制效果,響應(yīng)速度更快,超調(diào)更小。中國文獻(xiàn)“一種新型兩輪自平衡小車的建模與控制[D]”(丁鳳,武漢:華中科技大學(xué),2012)設(shè)計(jì)滑??刂破鞒龑π≤囘M(jìn)行較好的平衡控制外,還實(shí)現(xiàn)了小車在直線運(yùn)動和拐彎運(yùn)動的速度控制,并采用離線遺傳算法獲取剎車過程滑??刂破鞯淖顑?yōu)參數(shù),通過三級滑模切換控制實(shí)現(xiàn)小車的最優(yōu)剎車。但PID算法控制方案的技術(shù)缺陷是小車自平衡的控制效果不佳、抗干擾性不強(qiáng)。
專利號為ZL201520805309.8的中國實(shí)用新型專利公開了一種兩輪自平衡小車,屬于機(jī)器人領(lǐng)域。所述兩輪自平衡遙控小車,其特征在于:包括遙控終端和車體,所述車體分為車底和車身,所述車底設(shè)有車輪、驅(qū)動電機(jī)、光電編碼器;所述車身上設(shè)有2層支架,下層支架上設(shè)有驅(qū)動電路板和電源;上層支架上設(shè)有單片機(jī)、傳感器、紅外接收器、顯示屏和按鍵;所述單片機(jī)分別控制按鍵、傳感器、光電編碼器、紅外接收器。通過顯示屏可以及時顯示小車當(dāng)前速度等控制參數(shù),方便使用人員的讀取。使用人員還可以使用按鍵對小車當(dāng)前速度的調(diào)整,可以有效解決人機(jī)互動的問題。但該實(shí)用新型采用的仍是PID算法控制方案,因此依然存在小車自平衡的控制效果不佳、抗干擾性不強(qiáng)的技術(shù)缺陷。
技術(shù)實(shí)現(xiàn)要素:
為了解決上述現(xiàn)有兩輪自平衡小車存在的技術(shù)缺陷,本實(shí)用新型采用泛正太分布的高斯云模型方法控制驅(qū)動電機(jī)的PWM信號,以實(shí)現(xiàn)兩輪小車的自平衡控制的技術(shù)方案,具體如下:
一種基于arduino和云模型控制的兩輪自平衡小車,包括主控模塊、小車姿態(tài)獲取模塊以及小車動力模塊,所述主控模塊包括arduino UNO R3主控板和云模型控制器。
優(yōu)選的是,所述小車姿態(tài)獲取模塊采用六軸傳感器模塊MPU6050。
在上述任一方案中優(yōu)選的是,所述小車動力模塊采用兩個直流電機(jī)驅(qū)動車輪運(yùn)動,采用L298P作為電機(jī)驅(qū)動器,同時驅(qū)動兩個直流電機(jī)。
在上述任一方案中優(yōu)選的是,所述云模型控制器的控制規(guī)則為:
IF小車前傾較大,THEN電機(jī)正轉(zhuǎn)加速度較大;
IF小車前傾較小,THEN電機(jī)正轉(zhuǎn)加速度較??;
IF小車前傾為零,THEN電機(jī)加速度為零;
IF小車后傾較小,THEN電機(jī)反轉(zhuǎn)加速度較??;
IF小車后傾較大,THEN電機(jī)反轉(zhuǎn)加速度較大。
在上述任一方案中優(yōu)選的是,所述前傾較大為30°,所述前傾較小為10°,所述前傾為零為0°,所述后傾較小為-10°,所述后傾較大為-30°,將所述30°,10°,0°,-10°,-30°作為前件云的五個期望,對應(yīng)控制電機(jī)加速度的后件云期望分別為250,80,0,-80,-250。
在上述任一方案中優(yōu)選的是,所述前件云參數(shù)和后件云參數(shù)分別為:
前件云五規(guī)則 后件云五規(guī)則
(30°,20,2) (250,200,20)
(10°,8,0.8) (80,60,6)
(0°,0.3,0) (0,2,0.2)
(-10°,8,0.8) (-80,60,6)
(-30°,20,2) (-250,200,20)
本實(shí)用新型與現(xiàn)有技術(shù)相比的有益效果是:本實(shí)用新型提出了一種基于云模型控制的兩輪自平衡小車,以arduino作為核心處理器,采用了自帶卡爾曼濾波和姿態(tài)解算的MPU6050模塊來測量小車傾斜角度,根據(jù)測量的光電傳感器輸出脈寬值計(jì)算實(shí)時速度,通過云模型控制算法調(diào)節(jié)小車左右電機(jī)加速度,從而使其保持平衡。所述云模型控制算法是利用基于超熵的泛正太分布云模型替代了傳統(tǒng)的PID精確控制,從而達(dá)到了更好的控制效果,也進(jìn)一步提高了小車自平衡控制的抗干擾性。
附圖說明
圖1為按照本實(shí)用新型的基于arduino和云模型控制的兩輪自平衡小車的優(yōu)選實(shí)施例的主控模塊算法框架示意圖;
圖2為按照本實(shí)用新型的基于arduino和云模型控制的兩輪自平衡小車的圖1所示優(yōu)選實(shí)施例中的云模型控制器的多規(guī)則生成器推理過程的框架示意圖。
附圖標(biāo)記說明:
Ex:期望,指云滴在論域空間分布的期望,是最能夠代表定性概念的點(diǎn),是這個概念量化的最典型樣本;
En:熵,“熵”這一概念最初是作為描述熱力學(xué)的一個狀態(tài)參量,此后又被引入統(tǒng)計(jì)物理學(xué)、信息論、復(fù)雜系統(tǒng)等,用以度量不確定的程度。在云模型中,熵代表定性概念的可度量粒度,熵越大,通常概念越宏觀,也是定性概念不確定性的度量,由概念的隨機(jī)性和模糊性共同決定。一方面, En是定性概念隨機(jī)性的度量,反映了能夠代表這個定性概念的云滴的離散程度;另一方面,又是定性概念亦此亦彼性的度量,反映了在論域空間可被概念接受的云滴的取值范圍。用同一個數(shù)字特征來反映隨機(jī)性和模糊性,也必然反映他們之間的關(guān)聯(lián)性;
He:超熵,熵的不確定性度量,即熵的熵,由熵的隨機(jī)性和模糊性共同決定。反映了每個數(shù)值隸屬這個語言值程度的凝聚性,即云滴的凝聚程度。超熵越大,云的離散程度越大,隸屬度的隨機(jī)性也隨之增大,云的厚度也越大;
CAi:前件云發(fā)生器; CBi:后件云發(fā)生器。
具體實(shí)施方式
為了更好地理解本實(shí)用新型,下面結(jié)合具體實(shí)施例對本實(shí)用新型作了詳細(xì)說明,但是,顯然可對本實(shí)用新型進(jìn)行不同的變型和改型而不超出后附權(quán)利要求限定的本實(shí)用新型更寬的精神和范圍。因此,以下實(shí)施例是具有示例性的而沒有限制的含義。
如圖1、2所示,一種基于arduino和云模型控制的兩輪自平衡小車,包括主控模塊、小車姿態(tài)獲取模塊以及小車動力模塊,所述主控模塊包括arduino UNO R3主控板和云模型控制器,所述小車姿態(tài)獲取模塊采用六軸傳感器模塊MPU6050,所述小車動力模塊采用兩個直流電機(jī)驅(qū)動車輪運(yùn)動,采用L298P作為電機(jī)驅(qū)動器,同時驅(qū)動兩個直流電機(jī),所述云模型控制器的控制規(guī)則為:
IF小車前傾較大,THEN電機(jī)正轉(zhuǎn)加速度較大;
IF小車前傾較小,THEN電機(jī)正轉(zhuǎn)加速度較??;
IF小車前傾為零,THEN電機(jī)加速度為零;
IF小車后傾較小,THEN電機(jī)反轉(zhuǎn)加速度較?。?/p>
IF小車后傾較大,THEN電機(jī)反轉(zhuǎn)加速度較大。
所述前傾較大為30°,所述前傾較小為10°,所述前傾為零為0°,所述后傾較小為-10°,所述后傾較大為-30°,將所述30°,10°,0°,-10°,-30°作為前件云的五個期望,對應(yīng)控制電機(jī)加速度的后件云期望分別為250,80,0,-80,-250。
所述前件云參數(shù)和后件云參數(shù)分別為:
前件云五規(guī)則 后件云五規(guī)則
(30°,20,2) (250,200,20)
(10°,8,0.8) (80,60,6)
(0°,0.3,0) (0,2,0.2)
(-10°,8,0.8) (-80,60,6)
(-30°,20,2) (-250,200,20)
所述云模型的前件云五規(guī)則參數(shù)和后件云五規(guī)則參數(shù)是按數(shù)字特征即期望Ex、熵En和超熵He依次表示:在前件云五規(guī)則中,每一組數(shù)值中的第一個數(shù)據(jù)30°,10°,0°,-10°,-30°代表期望值,每一組數(shù)值中的第二個數(shù)據(jù)20,8,0.3,8,20代表熵值,每一組數(shù)值中的第三個數(shù)據(jù)2,0.8,0,0.8,2代表超熵值;同理,在后件云五規(guī)則中,每一組數(shù)值中的第一個數(shù)據(jù)250,80,0,-80,-250代表期望值,每一組數(shù)值中的第二個數(shù)據(jù)200,60,2,60,200代表熵值,每一組數(shù)值中的第三個數(shù)據(jù)20,6,0.2,6,20代表超熵值。
由上述技術(shù)方案可知,本實(shí)用新型的硬件部分包括主控部分的硬件、小車姿態(tài)獲取部分的硬件以及小車動力部分的硬件,軟件部分除電機(jī)驅(qū)動程序和基于卡爾曼濾波的數(shù)據(jù)處理程序外,主要包括小車平衡系統(tǒng)的控制算法。所述arduino UNO R3主控板不僅僅是一款單片機(jī),它還是一個開放源碼的電子原型平臺,擁有靈活易用的軟件封裝庫和硬件模塊,被廣大DIY愛好者所喜愛。所述小車姿態(tài)獲取部分的硬件采用的是InvenSense公司推出的一款低成本的六軸傳感器模塊MPU6050,包括三軸加速度和三軸角速度,該模塊內(nèi)部集成了卡爾曼濾波和姿態(tài)結(jié)算技術(shù),并可通過串口直接讀取三軸角度,角度輸出精度達(dá)到0.01度,運(yùn)動情況下角度輸出精度在0.05度左右,完全滿足平衡車和六軸飛行器等產(chǎn)品的要求。小車動力部分的硬件是通過兩個直流電機(jī)驅(qū)動車輪運(yùn)動,直流電機(jī)的驅(qū)動電路設(shè)計(jì)關(guān)系到整個系統(tǒng)的穩(wěn)定性,因?yàn)殡姍C(jī)反轉(zhuǎn)時會產(chǎn)生反向電動勢會干擾到電源系統(tǒng)內(nèi)其他設(shè)備的運(yùn)行,本實(shí)用新型采用L298P作為電機(jī)驅(qū)動器,是兩路的H橋驅(qū)動,可同時驅(qū)動兩個直流電機(jī),輸出電流可達(dá)2.5A;IN1、IN2分別連接arduino主控板的8、9引腳,EN1接arduino的10引腳,當(dāng)EN1為高時,從IN1和IN2輸入的PWM信號驅(qū)動電機(jī)1的轉(zhuǎn)速和方向;同理,IN3、IN4分別連接arduino主控板的6、7引腳,EN2接arduino的11引腳,當(dāng)EN2為高時,從IN3和IN4輸入的PWM信號驅(qū)動電機(jī)2的轉(zhuǎn)速和方向。
本實(shí)用新型的所述小車平衡系統(tǒng)的控制算法采用李德毅院士提出的云模型控制算法,利用基于超熵的泛正太分布云模型替代傳統(tǒng)的PID精確控制,能夠達(dá)到更好的控制效果,進(jìn)一步提高小車自平衡控制的抗干擾性。
結(jié)合圖1具體描述基于云模型的兩輪自平衡小車控制系統(tǒng)的工作原理:
首先,根據(jù)安裝完成的兩輪小車重心的不同,調(diào)整并確定小車的平衡角度;姿態(tài)傳感器反饋的小車角度和小車平衡角度的誤差e作為云模型控制器的輸入。
其次,設(shè)計(jì)五規(guī)則的云模型控制器,確定其控制規(guī)則和前、后件云的參數(shù)。
所述控制規(guī)則為:
IF小車前傾較大,THEN電機(jī)正轉(zhuǎn)加速度較大;
IF小車前傾較小,THEN電機(jī)正轉(zhuǎn)加速度較??;
IF小車前傾為零,THEN電機(jī)加速度為零;
IF小車后傾較小,THEN電機(jī)反轉(zhuǎn)加速度較?。?/p>
IF小車后傾較大,THEN電機(jī)反轉(zhuǎn)加速度較大。
所述控制規(guī)則可統(tǒng)一描述為IF Ai THEN Bi,為模糊語言,利用云模型實(shí)現(xiàn)對定性知識的定量轉(zhuǎn)化。云模型中的每個云滴就是這個定性概念在定量上的一次實(shí)現(xiàn)。云模型的數(shù)字特征用期望Ex、熵En和超熵He來表示,把模糊性和隨機(jī)性完全結(jié)合到了一起,構(gòu)成定性和定量相互間的映射。根據(jù)控制系統(tǒng)的特性和控制經(jīng)驗(yàn),選定前傾較大為30°,前傾較小為10°,前傾為零為0°,后傾較小為-10°,后傾較大為-30°,將它們作為前件云的五個期望;對應(yīng)控制電機(jī)加速度的后件云期望分別為:250,80,0,-80,-250。依據(jù)云模型理論的3En原則選擇前、后件云的熵,超熵比熵小一個數(shù)量級。所選取的前、后件云參數(shù)值可根據(jù)實(shí)際控制效果進(jìn)行調(diào)整。
結(jié)合圖2具體描述云模型控制器的多規(guī)則生成器推理過程原理:
當(dāng)一個確定的傾角誤差23°產(chǎn)生時,它屬于Ai的隸屬度分別為μAi,會同時刺激多條規(guī)則發(fā)生器的前件云CAi,每個CAi產(chǎn)生一個或一組值觸發(fā)相應(yīng)的后件云發(fā)生器CBi,產(chǎn)生多組云團(tuán),將多組云團(tuán)送入逆向云發(fā)生器,用最小二乘法擬合這些云團(tuán),生成正態(tài)虛擬云,取該虛擬云的期望值作為輸出控制電機(jī)驅(qū)動器,從而調(diào)節(jié)電機(jī)加速度,實(shí)現(xiàn)兩輪小車平衡控制。
所述云模型是由中國工程院院士李德毅提出的,處理定性概念與定量描述的不確定轉(zhuǎn)換模型。隨著不確定性研究的深入,越來越多的科學(xué)家相信,不確定性是這個世界的魅力所在,只有不確定性本身才是確定的。在眾多的不確定性中,隨機(jī)性和模糊性是最基本的。針對概率論和模糊數(shù)學(xué)在處理不確定性方面的不足,1995年我國工程院院士李德毅教授在概率論和模糊數(shù)學(xué)的基礎(chǔ)上提出了云的概念,并研究了模糊性和隨機(jī)性及兩者之間的關(guān)聯(lián)性。自李德毅院士等人提出云模型至今,云模型已成功的應(yīng)用到自然語言處理、數(shù)據(jù)挖掘、決策分析、智能控制、圖像處理等眾多領(lǐng)域。