董慧芬 沈鵬飛
(中國民航大學(xué)機(jī)器人研究所控制科學(xué)與工程 天津 300300)
非同軸兩輪力矩陀螺平衡車采用控制力矩陀螺(Control Moment Gyro,CMG)作為抗干擾控制機(jī)構(gòu),具有節(jié)能、體積小、反應(yīng)靈敏等優(yōu)點(diǎn),是一種用途多變的平衡機(jī)器[1-3]。由于缺少車把轉(zhuǎn)向而產(chǎn)生的離心力作用,陀螺平衡車的靜態(tài)平衡控制與倒立擺的平衡控制有一定程度上的相似性[4],對控制器性能要求提出了更高的要求,因此提升陀螺平衡車靜態(tài)平衡控制性能具有重要意義。根據(jù)力矩陀螺的數(shù)量可以分為單陀螺控制和雙陀螺控制,由于單陀螺在進(jìn)動時會產(chǎn)生向前的分力矩,而雙陀螺可以通過兩個陀螺反方向進(jìn)動抵消前向力矩,所以雙陀螺設(shè)計(jì)相對于單陀螺設(shè)計(jì)具有更好的平衡控制效果。
文獻(xiàn)[5]采用反饋線性化輸入消除系統(tǒng)的非線性部分,但反饋線性化對系統(tǒng)數(shù)學(xué)模型的精確性提出了很高的要求;文獻(xiàn)[6]通過預(yù)測控制來提高系統(tǒng)的抗干擾能力使得機(jī)器人可以在崎嶇道路上行走,但是預(yù)測控制的設(shè)計(jì)復(fù)雜,對處理器的實(shí)時數(shù)據(jù)處理要求高,難以應(yīng)用到小型的自平衡車中;文獻(xiàn)[7]闡述了PID控制器對抗干擾處理的有效性,但是閉環(huán)動態(tài)響應(yīng)對PID增益的變化很敏感;文獻(xiàn)[8]通過模糊PD增益調(diào)度控制方式維持車身的平衡,但是需要單獨(dú)設(shè)計(jì)回零補(bǔ)償控制器使得陀螺進(jìn)動角回零,增加設(shè)計(jì)負(fù)擔(dān)。
線性二次型控制器(Linear Quadratic Regulator,LQR)通過狀態(tài)變量的線性反饋構(gòu)成閉環(huán)最優(yōu)控制器,在耦合系統(tǒng)的穩(wěn)定控制上面表現(xiàn)出相對優(yōu)良的控制效果,在自平衡車穩(wěn)定控制過程中可以有效調(diào)整CMG進(jìn)動角回到零位,將CMG的進(jìn)動角控制在有限的范圍內(nèi),防止CMG翻轉(zhuǎn)造成平衡力矩反向。但是在實(shí)驗(yàn)中狀態(tài)加權(quán)矩陣Q和控制加權(quán)矩陣R的選取一般通過經(jīng)驗(yàn)來進(jìn)行確定,選取時間跨度大并且控制效果不確定性大。
文獻(xiàn)[9]通過遺傳算法對倒立擺的控制參數(shù)進(jìn)行了優(yōu)化,在較好滿足控制需求的同時增強(qiáng)了系統(tǒng)魯棒性,但是遺傳算法進(jìn)化速度慢并且需要無法對已有的知識進(jìn)行繼承,難以得到最優(yōu)解。文獻(xiàn)[10]采用搜索能力較強(qiáng)的量子粒子群算法(Quantum Particle Swarm Optimization,QPSO)選取權(quán)重矩陣,但是QPSO的粒子間信息交流不充分,算法存在容易過早收斂、優(yōu)化過程慢等問題。為進(jìn)一步改善該問題,文獻(xiàn)[11]應(yīng)用融合社會學(xué)習(xí)和萊維飛行的QPSO(LSL-QPSO),首先利用社會學(xué)習(xí)使得其他粒子互相分享位置,使算法突破局部最優(yōu);然后通過萊維飛行[12]克服最優(yōu)粒子更新不足的缺點(diǎn)。
本文針對雙陀螺非同軸雙輪平衡車靜態(tài)平衡控制問題設(shè)計(jì)LQR控制器,提出一種動態(tài)線性遞減LSL-QPSO智能搜索算法,進(jìn)一步提高算法收斂精度,并且在該算法的基礎(chǔ)上應(yīng)用收縮-擴(kuò)張因子的線性遞減來提高算法的穩(wěn)定性,優(yōu)化Q、R權(quán)值矩陣參數(shù),通過與QPSO優(yōu)化得到的結(jié)果進(jìn)行仿真與對比實(shí)驗(yàn)。
圖1 自平衡車模型示意側(cè)視圖
綜上所述,可以得到自平衡車系統(tǒng)的動能:
系統(tǒng)所受的重力為有勢力,則系統(tǒng)勢能為E:
E=2m1grcosβ+m2gh2cosβ+2m3gh3cosβ
(2)
根據(jù)拉格朗日方程:
令q1=β,可得關(guān)于側(cè)傾角動力學(xué)方程為:
令q2=δ可得進(jìn)動角動力學(xué)方程:
由此可得系統(tǒng)側(cè)傾的動力學(xué)模型如下:
考慮到自平衡車在實(shí)際應(yīng)用中偏離平衡位置范圍一般在-15°~15°(±0.26 rad),所以在平衡點(diǎn)附近可以對模型進(jìn)行局部線性化,可得到:
表1 自平衡車參數(shù)表
將表1的參數(shù)代入,可得A和B分別為:
粒子群優(yōu)化算法(Particle Swarm Optimization,PSO)由具體的位置和速度向量進(jìn)行描述,通過對解空間進(jìn)行搜索[9],粒子群算法位置更新公式:
式中:V、X表示粒子速度和位置;r是區(qū)間[0,1]之間的隨機(jī)常數(shù);ω為慣性權(quán)重;C1、C2為非負(fù)的加速度常數(shù);pbest(t)為當(dāng)前最優(yōu)粒子位置;gbest(t)為全局最優(yōu)粒子位置。
QPSO是基于PSO改進(jìn)的算法。它利用波函數(shù)表示粒子的狀態(tài),替換PSO中速度和位置的表現(xiàn)方式,大大提高了粒子出現(xiàn)在空間任意地點(diǎn)的概率,提高了PSO全局搜索能力。
更改更新式(10)如下:
Xi,j(t+1)=pi,j(t)±
式中:M為粒子規(guī)模;ɑ為收縮-擴(kuò)張因子;Xi,j(t)是粒子i在t時刻第j維坐標(biāo);pbesti,j(t)為t時刻粒子i的歷史最優(yōu)的第j維坐標(biāo);ui,j(t)服從區(qū)間(0,1)之間的均勻分布。
pi,j(t)=φj(t)pbesti,j(t)+(1-φj(t))gbestj(t)
(12)
式(12)為勢阱中心公式。式中:φj(t)服從區(qū)間(0,1)之間的均勻分布,為第j維坐標(biāo)的隨機(jī)系數(shù);gbestj(t)為t時刻所有粒子中最優(yōu)位置的第j維坐標(biāo)。
為了解決粒子群多樣性衰減問題提出基于社會學(xué)習(xí)的QPSO,其余粒子首先通過計(jì)算學(xué)習(xí)概率判斷是否向最優(yōu)粒子學(xué)習(xí),然后通過偏移量向最優(yōu)粒子靠攏。式(12)更改為:
式中:Pi,j(t)為粒子i的自身局部最優(yōu)位置;Pk,j(t)為更優(yōu)粒子k的局部最優(yōu)位置。
基于社會學(xué)習(xí)的QPSO每一次進(jìn)化僅針對非最優(yōu)粒子,不能解決最優(yōu)粒子的進(jìn)化問題。為改善以上缺陷,引入萊維飛行策略對全局最優(yōu)粒子進(jìn)行更新。
第t代種群的全局最優(yōu)粒子的位置更新公式更改為:
但是由于萊維飛行不能保證更新后的粒子更優(yōu),所以通過計(jì)算并比較適應(yīng)值決定是否更新:
式中:f為適應(yīng)度函數(shù)。
將萊維飛行應(yīng)用于SL-QPSO,可以有效解決SL-QPSO中最優(yōu)粒子的更新問題,避免算法陷入局部最優(yōu)。
根據(jù)文獻(xiàn)[11]的實(shí)驗(yàn)結(jié)果分析可知,更改后的勢阱中心的特征長度公式依然會隨著時間收斂到0,說明LSL-QPSO不僅滿足收斂性的要求,而且還可以有效地實(shí)現(xiàn)最優(yōu)化處理的功能。
LQR控制器設(shè)計(jì)關(guān)鍵是確定最優(yōu)反饋控制量,Q、R為權(quán)值矩陣。Q、R權(quán)值矩陣為待設(shè)定參數(shù),只有適當(dāng)取值才能獲得較好的控制效果。
采用LSL-QPSO進(jìn)行參數(shù)優(yōu)化,適應(yīng)度函數(shù)選擇ITAE誤差指標(biāo)。
ɑ選取動態(tài)線性遞減策略可以有效地提升收斂的穩(wěn)定性:
式中:ɑ1和ɑ2分別是初始值和最終值;g為當(dāng)前迭代次數(shù);K為最大迭代次數(shù)。
根據(jù)式(11)可以知道,LSL-QPSO的粒子更新方向?yàn)槠骄底顑?yōu)方向。根據(jù)文獻(xiàn)[13],采用該種更新方式的QPSO在α取值在區(qū)間[0.4,0.8]的情況下可以取得較好的效果,并且當(dāng)α在區(qū)間[0.5,0.6]線性減小的情況下算法表現(xiàn)出最好的性能。因此參考文獻(xiàn)[13],本文參數(shù)優(yōu)化算法將ɑ1和ɑ2分別設(shè)置為0.6和0.5。
設(shè)權(quán)值矩陣Q=(q1,q2,q3,q4)、R=r均為正定的,則待優(yōu)化參數(shù)向量為x=(q1,q2,q3,q4,r)。粒子位置坐標(biāo)分別代表Q、R矩陣的參數(shù)值,采用LSL-QPSO進(jìn)行優(yōu)化,通過LSL-QPSO優(yōu)化的LQR控制器模型如圖2所示。
圖2 LSL-QPSO優(yōu)化LQR控制器
當(dāng)適應(yīng)度函數(shù)值收斂到指定范圍內(nèi)或迭代次數(shù)達(dá)到指定的最大迭代次數(shù)時停止計(jì)算,LSL-QPSO優(yōu)化陀螺平衡車LQR參數(shù)的具體流程如圖3和圖4所示。
圖3 LQR 權(quán)重系數(shù)優(yōu)化流程
圖4 LSL-QPSO算法流程
QPSO最終結(jié)果為:
Q=diag(301.23,209.89,164.63,26.03)R=0.18
如圖5所示,LSL-QPSO經(jīng)過大約30次迭代后到達(dá)收斂狀態(tài),得到的最終結(jié)果為:
Q=diag(310.39,250.98,266.02,204.75)R=0.06
圖5 參數(shù)優(yōu)化曲線
分析采用QPSO進(jìn)行陀螺平衡車LQR參數(shù)優(yōu)化的可行性,分別由QPSO和LSL-QPSO得到參數(shù),在陀螺車初始傾角15°(0.26 rad)條件下進(jìn)行仿真。側(cè)傾角、進(jìn)動角及進(jìn)動角速度的仿真結(jié)果如圖6、圖7和圖8所示。
圖6 起擺傾角仿真曲線圖
圖7 起擺進(jìn)動角速度仿真曲線
圖8 起擺進(jìn)動角仿真曲線
由圖6可以看出,LSL-QPSO與QPSO相比調(diào)節(jié)時間相近,超調(diào)量更小,響應(yīng)速度更快,傾角響應(yīng)峰值降低了18.2%,調(diào)節(jié)時間縮短了16.6%,有效提升了系統(tǒng)動態(tài)響應(yīng)性能。
由圖7可以看出,相對于QPSO,經(jīng)過LSL-QPSO整定得到的參數(shù)使得進(jìn)動角速度響應(yīng)峰值降低了17.9%,調(diào)節(jié)時間縮短了14.3%。
由圖8可以看出,LQR控制器可以有效地控制陀螺進(jìn)動角回零,相對于QPSO,經(jīng)過LSL-QPSO算法整定得到的參數(shù)使得進(jìn)動角響應(yīng)峰值降低了21%,調(diào)節(jié)時間縮短了14.3%,可以更加有效地避免因進(jìn)動角超調(diào)量過大造成控制力矩陀螺自鎖現(xiàn)象的發(fā)生。
分析采用QPSO進(jìn)行陀螺平衡車LQR參數(shù)優(yōu)化的抗干擾可行性,分別由PSO優(yōu)化和LSL-QPSO優(yōu)化得到的參數(shù)在平衡車在受到外力干擾,側(cè)傾角從0偏轉(zhuǎn)0.26 rad(15°)條件下,基于Simulink模型進(jìn)行陀螺平衡車LQR控制仿真,側(cè)傾角進(jìn)動角及進(jìn)動角速度的仿真結(jié)果如圖9、圖10、圖11所示。
圖9 抗干擾側(cè)傾角仿真曲線
圖10 抗干擾進(jìn)動角速度仿真曲線
圖11 抗干擾進(jìn)動角仿真曲線
由圖9可以看出,兩種方法所得到的參數(shù)都能滿足抗干擾控制的要求,雖然LSL-QPSO與QPSO相比傾角響應(yīng)峰值提高了24%,但是調(diào)節(jié)時間縮短了20%。
由圖10可以看出,相對于QPSO,經(jīng)過LSL-QPSO整定得到的參數(shù)使得進(jìn)動角速度響應(yīng)峰值提高了8.6%,但是調(diào)節(jié)時間縮短了23%。
由圖11可以看出,LQR控制器可以有效地在受到干擾的情況下控制陀螺進(jìn)動角回零,相對于QPSO,經(jīng)過LSL-QPSO整定得到的參數(shù)使得進(jìn)動角響應(yīng)峰值降低了15.2%,調(diào)節(jié)時間縮短了12.5%,可以更加有效地避免因進(jìn)動角超調(diào)量過大造成控制力矩陀螺自鎖現(xiàn)象的發(fā)生。
針對自平衡車LQR控制器Q、R矩陣參數(shù)依靠量子粒子群算法優(yōu)化時存在過早收斂、容易陷入局部優(yōu)化的問題,應(yīng)用一種融合社會學(xué)習(xí)和萊維飛行的改進(jìn)量子粒子群算法代替量子粒子群算法,為了進(jìn)一步提高算法的穩(wěn)定性,對收縮-擴(kuò)張因子應(yīng)用動態(tài)線性遞減策略,將Q、R矩陣描述為粒子坐標(biāo),將ITAE作為適應(yīng)度函數(shù),結(jié)合改進(jìn)的融合社會學(xué)習(xí)和萊維飛行的量子粒子群算法進(jìn)行仿真得到最終結(jié)果。結(jié)果表明,通過LSL-QPSO得到的參數(shù)相較于QPSO得到的參數(shù)使得系統(tǒng)動態(tài)響應(yīng)性能得到顯著的改善:在起擺過程中,傾角響應(yīng)峰值降低了18.2%,調(diào)節(jié)時間縮短了16.6%,進(jìn)動角速度響應(yīng)峰值降低了17.9%,調(diào)節(jié)時間縮短了14.3%,進(jìn)動角響應(yīng)峰值降低了21%,調(diào)節(jié)時間縮短了14.3%;在抗干擾過程中,側(cè)傾角調(diào)節(jié)時間縮短了20%,進(jìn)動角速度響應(yīng)調(diào)節(jié)時間縮短了23%,進(jìn)動角響應(yīng)峰值降低了15.2%,調(diào)節(jié)時間縮短了12.5%。