趙明翰,周 郁,趙桂軍,張 樂,陳峻山,曹培培
(1.上海無線電設(shè)備研究所,上海 201109;2.上海機(jī)電工程研究所,上海 201109)
自平衡車最早出現(xiàn)于1898年[1],最初的結(jié)構(gòu)是目前市面上最為流行的兩輪并行結(jié)構(gòu)。近年來,隨著控制,建模以及硬件技術(shù)的快速發(fā)展,自平衡車的研究不僅僅局限于兩輪并行結(jié)構(gòu),開始更多的聚焦于自行車結(jié)構(gòu)的自平衡車。對于自行車結(jié)構(gòu)的自平衡車,其基本動力學(xué)模型可以按照倒立擺進(jìn)行處理,在提供倒立擺回復(fù)力來維持車體平衡可以采用兩種方案:第一種是通過增加飛輪或力矩陀螺來維持其姿態(tài)穩(wěn)定,這種結(jié)構(gòu)可以在前進(jìn)速度為零的情況下維持姿態(tài)穩(wěn)定;另一種方案不增加額外的執(zhí)行結(jié)構(gòu),通過調(diào)整前進(jìn)速度和車把偏角來提供實現(xiàn)姿態(tài)穩(wěn)定[2],這種結(jié)構(gòu)只能在運(yùn)動中維持平衡。針對第一種結(jié)構(gòu)的控制系統(tǒng)已經(jīng)有了大量的成熟設(shè)計案例[3-6],然而針對第二種結(jié)構(gòu)的相關(guān)控制系統(tǒng)設(shè)計相對較少且控制器結(jié)構(gòu)單一[7-10]。本文將利用滑??刂破鱽磲槍Φ诙N結(jié)構(gòu)的車體姿態(tài)平衡問題進(jìn)行設(shè)計與仿真。
我們做出如下假設(shè)。假設(shè)自行車圓周運(yùn)動前進(jìn)的線速度為ν0,對應(yīng)的圓周運(yùn)動半徑為r0,后輪中心到車體質(zhì)心的長度為l1,后輪中心到前輪中心長度為l,自行車質(zhì)心的線速度為v,自行車圓周運(yùn)動圓心到車體質(zhì)心的距離為r,前輪與車體的夾角為φ,后輪中心到質(zhì)心對應(yīng)的圓周角度為α,后輪中心到前輪中心對應(yīng)的圓周角度為β,如圖1所示。
由圖1我們可以得到如下關(guān)系:
圖1 自行車?yán)硐牖疽鈭D
平衡小車的平衡原理與倒立擺系統(tǒng)基本相同,都是通過一個回復(fù)力來克服擾動回復(fù)到平衡狀態(tài)。參照倒立擺回復(fù)原理,此時的回復(fù)力為:
通過2.1的分析,自行車在傾斜的狀態(tài)下若想保持平衡,根據(jù)牛頓-歐拉方程,應(yīng)有如下動力學(xué)方程:
其中,I為自行車?yán)@地面接觸點(diǎn)旋轉(zhuǎn)的轉(zhuǎn)動慣量,h為自行車質(zhì)心到地面的高度。
將(6),(7)帶入(8)可得:
可以看出,在式(9)中存在著同時含有車把偏角φ與車體傾角θ 的耦合項,因此需要對其進(jìn)行一定的處理,否則將對后續(xù)的控制系統(tǒng)設(shè)計帶來影響。由于θ,φ均為較小角,故可以令sin θ=θ,cosθ=cosφ=1,tanφ=sinφ=φ,得到的線性化后的方程如下:
將表1所示數(shù)據(jù)代入式(10),可以得到系統(tǒng)的模型如下:
表1 自行車模型相關(guān)數(shù)據(jù)
其中,v0表示小車前進(jìn)速度,為了方便控制器設(shè)計,取v0=1m/s。
針對式(11)給出的控制系統(tǒng)模型,可以設(shè)計一個基于趨近律的滑模魯棒控制器。
滑模函數(shù)設(shè)計為:
其中,c>0滿足Hurwitz條件。
誤差及誤差的導(dǎo)數(shù)為:
其中,θd(t)為理想角度信號。
則有:
采用指數(shù)趨近律,有:
其中,ε是指數(shù)趨近律中等速趨近部分的系數(shù),ε越小,趨近速度越慢;ε 越大,趨近速度越快,到達(dá)切換面時的速度也越快,引起的抖振也越大;k是指數(shù)趨近律中指數(shù)趨近部分的系數(shù),k越大,速度衰減得越快,k越小,速度衰減得越慢。在指數(shù)趨近律中,為了同時實現(xiàn)快速收斂與小抖振,需要適當(dāng)選擇ε的k值。
通過式(14)和(15),得:
則滑??刂坡蔀椋?/p>
式中,c是一個系數(shù),用于產(chǎn)生由于角速度偏差生成的控制量。
根據(jù)第二部分的滑??刂破髟O(shè)計,利用MATLAB中的Simulink搭建模塊進(jìn)行仿真。按照第二部分的參數(shù)整定原則進(jìn)行相關(guān)參數(shù)的整定,最終獲得參數(shù)為ε=20,k=20,c=10,k2=0.00989。
首先選取輸入信號為單位階躍信號,輸出結(jié)果如圖2所示。
圖2 輸入信號為單位階躍信號時輸出曲線
當(dāng)輸入信號是幅值為1,頻率為1rad/s的正弦波信號時,輸出結(jié)果如圖3所示。
圖3 輸入信號為正弦信號時輸出曲線
對應(yīng)的誤差曲線如圖4所示。為了進(jìn)一步驗證滑模控制器抑制擾動的能力,在反饋信號中疊加擾動,輸出結(jié)果如圖5所示,對應(yīng)的誤差曲線見圖6。對于圖6進(jìn)行統(tǒng)計學(xué)分析可以得到:輸入信號的數(shù)學(xué)期望是0.2356,標(biāo)準(zhǔn)差是0.7543;擾動信號的數(shù)學(xué)期望是0.0219,標(biāo)準(zhǔn)差是0.3387;利用滑??刂破鬟M(jìn)行控制后系統(tǒng)的偏差的數(shù)學(xué)期望是0.0101,標(biāo)準(zhǔn)差是0.3694??梢郧逦乜闯?,滑??刂破髂軌蜉^為有效地抑制擾動。
圖4 輸入為正弦信號時誤差
圖5 存在擾動時輸出曲線
圖6 存在擾動時誤差曲線
綜合圖2-圖6的結(jié)果可以看出,滑??刂破髂軌蚩焖俑檰挝浑A躍信號,能夠較好地跟蹤正弦信號,對于系統(tǒng)中出現(xiàn)的擾動也有較好的抑制能力。
在完成滑??刂破鞯姆抡骝炞C后,本節(jié)將對傳統(tǒng)PID控制器、模糊PID 控制器以及滑??刂破餍阅苓M(jìn)行比較分析。
作為工程中應(yīng)用最為廣泛的PID 控制器,在對平衡小車進(jìn)行控制時其控制性能與滑??刂破骺刂菩阅艿谋容^如下圖所示。
當(dāng)輸入信號為單位階躍信號時,輸出比較結(jié)果如圖7所示。
圖7 單位階躍信號下滑??刂破髋cPID控制器比較
為了比較系統(tǒng)跟蹤性能,輸入幅值為1,角頻率為1rad/s的正弦波信號,輸出結(jié)果如圖8所示。
圖8 正弦信號滑??刂破髋cPID控制器比較
由于兩種控制器跟蹤性能都比較好,為了進(jìn)一步比較,將兩者對應(yīng)的誤差繪制如圖9所示。
圖9 正弦信號滑??刂破髋cPID控制器輸出誤差
為了研究比較傳統(tǒng)PID控制器與滑??刂破鲗τ跀_動的抑制能力,在正弦信號的基礎(chǔ)上,增加擾動信號,得到的系統(tǒng)輸出如圖10所示,對應(yīng)的誤差見圖11。
圖10 擾動信號滑??刂破髋cPID控制器比較
當(dāng)輸入信號為疊加了擾動信號的正弦信號時,滑??刂破髋cPID控制器的輸出統(tǒng)計結(jié)果如表2所示。
通過圖7-圖11,結(jié)合表2的數(shù)據(jù)進(jìn)行比較可以看出,平衡小車是一個非最小相位系統(tǒng),PID控制器無法消除非最小相位帶來的影響,而滑模控制器能夠消除非最小相位引入的不良影響。從輸入輸出結(jié)果的角度來看,當(dāng)輸入信號為單位階躍信號時,滑??刂破鞯目焖傩?,過渡過程時間以及超調(diào)量等指標(biāo)均優(yōu)于傳統(tǒng)的PID 算法;當(dāng)輸入信號是理想正弦信號時,傳統(tǒng)PID 控制器存在周期性變化的偏差,滑??刂破髂軌蚩焖偈諗?,使偏差為 0;當(dāng)輸入信號是存在擾動的正弦信號時,通過表2的數(shù)據(jù)可以看出,滑模輸出無論是從數(shù)學(xué)期望的角度還是標(biāo)準(zhǔn)差的角度來看,其性能都是優(yōu)于傳統(tǒng)PID控制器的。
圖11 擾動信號滑??刂破髋cPID控制器輸出誤差比較
表2 滑??刂破髋cPID控制器比較
在5.1 節(jié)中已經(jīng)完成了滑??刂破髋c傳統(tǒng)PID 控制器性能的比較,而作為傳統(tǒng)PID控制器的改進(jìn)型控制器,模糊PID 控制器有著優(yōu)于傳統(tǒng)PID 控制器的性能。在本小節(jié)中將對模糊PID 控制器與滑??刂破鬟M(jìn)行比較,輸入信號與仿真環(huán)境與4小結(jié)相同,得到的結(jié)果如下:
對于單位階躍信號輸入時,模糊PID 控制器與滑??刂破骺刂菩Ч鐖D12所示。
圖12 單位階躍信號下滑??刂破髋c模糊PID控制器控制性能比較
當(dāng)選取輸入信號是幅值為1,角頻率為1rad/s的正弦信號時,模糊PID控制器與滑??刂破骺刂菩阅苋鐖D13,對應(yīng)的誤差如圖14。
圖13 正弦信號滑??刂破髋c模糊PID控制器比較
圖14 正弦信號滑模控制器與模糊PID控制器誤差
同樣地,為了驗證兩種控制器抑制擾動的能力,在正弦信號的基礎(chǔ)上增加一個擾動信號,比較滑??刂破髋c模糊PID控制器的性能,得到了如圖15,圖16所示的結(jié)果。
圖15 擾動信號滑模控制器與模糊PID控制器比較
當(dāng)輸入信號為疊加了擾動信號的正弦信號時,滑??刂破髋c模糊PID控制器的統(tǒng)計結(jié)果如表3所示。
通過圖12-圖16,結(jié)合表3可以看出,盡管模糊PID的性能優(yōu)于傳統(tǒng)PID 控制器。但是模糊PID 控制器仍然無法消除由于非最小相位引入的控制問題。在單位階躍信號輸入時,雖然模糊PID控制器的過渡過程時間,超調(diào)量以及快速性優(yōu)于傳統(tǒng)PID控制器,但模糊PID控制器的性能依舊不如滑??刂破鳎划?dāng)輸入信號是理想正弦信號時,盡管模糊PID控制器進(jìn)一步抑制了周期性誤差,但仍然不能完全消除這個誤差;當(dāng)輸入存在擾動的正弦信號時,依據(jù)表3的數(shù)據(jù),可以看出模糊PID 控制器的性能盡管優(yōu)于傳統(tǒng)PID控制器,但仍舊不如滑??刂破?。
圖16 擾動信號滑模控制器與模糊PID控制器誤差
表3 滑??刂破髋c模糊PID控制器比較
對于自行車平衡控制來說,這是一個非最小相位系統(tǒng)。對于非最小相位系統(tǒng),大多數(shù)線性控制器并不能很好地消除非最小相位系統(tǒng)帶來的控制困難,相比之下,滑??刂破髟谙亲钚∠辔幌到y(tǒng)的方面有著良好的表現(xiàn)。通過比較可以發(fā)現(xiàn),當(dāng)輸入信號為單位階躍信號時,無論是快速性,還是超調(diào)量,抑或是過渡過程時間,滑??刂破鞫加兄^為明顯的優(yōu)勢;當(dāng)輸入信號是正弦信號時,滑??刂破髂軌蚩焖傧`差,而傳統(tǒng)PID控制器與模糊PID 控制器都不能完全消除誤差;當(dāng)輸入信號為存在擾動的正弦信號時,盡管滑??刂破饕矔嬖诓▌樱ㄟ^統(tǒng)計數(shù)據(jù)可以明顯看出,滑模控制器的數(shù)學(xué)期望偏差與標(biāo)準(zhǔn)差都是明顯優(yōu)于傳統(tǒng)PID 控制器和模糊PID 控制器的。這些都可以說明滑模控制器在處理縱向雙輪自平衡車車體平衡的控制問題有著較大的應(yīng)用前景。