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