徐雪松, 吳儀政, 倪 赟
(華東交通大學(xué) 電氣與自動化工程學(xué)院,江西 南昌 330013)
隨著微機(jī)電系統(tǒng)(micro-electro-mechanical system,MEMS)在科技領(lǐng)域的發(fā)展,無人機(jī)(unmanned aerial vehicle,UAV)的應(yīng)用范圍也變得更廣。無人機(jī)可代替人工去完成一些高風(fēng)險、高強(qiáng)度的工作,例如軍事任務(wù)、噴灑農(nóng)藥、配送快遞、電路巡檢等[1]。由于實際無人機(jī)飛行易受負(fù)載質(zhì)量的變化以及周圍未知環(huán)境的影響,使得無人機(jī)的載荷系統(tǒng)發(fā)生突變,導(dǎo)致無人機(jī)掉高或姿態(tài)失衡[2],從而無法完成復(fù)雜的高空飛行任務(wù)。因此,考慮建立一個變載荷四旋翼無人機(jī)模型,并設(shè)計一個抗負(fù)載擾動能力強(qiáng)的飛行控制系統(tǒng)。
目前,國內(nèi)外學(xué)者對四旋翼無人機(jī)抗擾動穩(wěn)定飛行控制的方法有滑??刂啤⒎床椒刂?、自適應(yīng)控制、串級比例—積分—微分(proportion-integration-differentiation,PID)控制等[3~5]。采用串級PID控制應(yīng)用于無人機(jī)系統(tǒng)的穩(wěn)定控制,對角度、角速度的PID控制參數(shù)進(jìn)行非線性化模糊整定[6],要求控制參數(shù)跟隨系統(tǒng)的非線性變化自適應(yīng)修正。但循環(huán)邊界限制只在規(guī)定載荷范圍內(nèi)起作用,應(yīng)對變載荷系統(tǒng)的自適應(yīng)能力較差。進(jìn)一步提出L1自適應(yīng)塊控反步控制方法,對外回路設(shè)計了塊控反步控制器,對內(nèi)回路引入L1自適應(yīng)控制可補(bǔ)償外部擾動及內(nèi)部參數(shù)偏差[7],但控制效果過于依賴數(shù)學(xué)模型精度,易受不確定性外界擾動影響。隨后設(shè)計了自抗擾控制器(active disturbance rejection controller,ADRC)[8],應(yīng)用擴(kuò)張狀態(tài)觀測器實現(xiàn)狀態(tài)解耦和擾動估計解決了系統(tǒng)模型精度易受外界干擾的問題[9,10]。由于實際變載荷無人機(jī)飛行控制系統(tǒng)存在非線性時變的外界負(fù)載干擾等影響,使得自抗擾控制器的擾動估計補(bǔ)償易出現(xiàn)較大誤差,且自抗擾控制器存在調(diào)節(jié)參數(shù)過多難以整定的缺陷。
本文采用基于自適應(yīng)變載荷補(bǔ)償?shù)哪:钥箶_控制器(adaptive fuzzy active disturbance rejection controller,AFADRC)應(yīng)用于變載荷四旋翼無人機(jī)。首先,自適應(yīng)控制可辨識負(fù)載系統(tǒng)的變化并能快速準(zhǔn)確跟蹤估計出負(fù)載變化量,從而可根據(jù)負(fù)載動態(tài)變化修正自抗擾控制器的外部擾動補(bǔ)償系數(shù),增強(qiáng)對非線性時變無人機(jī)系統(tǒng)抵抗負(fù)載擾動的魯棒性和穩(wěn)定性。其次,將模糊控制應(yīng)用于自抗擾控制器中通過制定合理的模糊推理規(guī)則對控制參數(shù)進(jìn)行在線自整定調(diào)節(jié),能有效提升系統(tǒng)響應(yīng)速度,更符合工程自動化應(yīng)用需求。
攜負(fù)載四旋翼無人機(jī)是固聯(lián)十字交叉[11]。建立機(jī)體—地理坐標(biāo)系如圖1所示。
圖1 攜負(fù)載四旋翼無人機(jī)的機(jī)體—地理坐標(biāo)系
根據(jù)牛頓—?dú)W拉動力學(xué)方程和剛體運(yùn)動定理[12],建立變負(fù)載四旋翼無人機(jī)模型的三軸合力平衡方程和三軸合力矩平衡方程如下
(1)
(2)
式中Γ為無人機(jī)位置,ω為無人機(jī)角速度,F(xiàn)為作用于無人機(jī)上合外力;τ為機(jī)體坐標(biāo)系下合外總力矩;機(jī)體總質(zhì)量為m包括機(jī)身質(zhì)量mb和負(fù)載質(zhì)量ms;I為機(jī)體坐標(biāo)系下的轉(zhuǎn)動慣量。
無人機(jī)攜負(fù)載的質(zhì)心位置表達(dá)式為
(3)
式中rs為負(fù)載質(zhì)心相對機(jī)體坐標(biāo)系偏移量。
在地理坐標(biāo)系下,升力總是沿z軸正方向,可得總升力Ft表達(dá)式為
(4)
式中Rb-e為坐標(biāo)系旋轉(zhuǎn)矩陣,b為旋翼的升力系數(shù),Ω為旋翼的轉(zhuǎn)速[13]。
機(jī)體旋翼產(chǎn)生的力矩Mp和作用于復(fù)合系統(tǒng)重力產(chǎn)生的力矩Fp可表示為
Mp=[U2U3U4]T
(5)
Fp=-(rG×Rb-e[0 0mg]T)
(6)
因此,系統(tǒng)合力矩τ以及合力F又可表示為
(7)
F=Ft-Fg
(8)
式中l(wèi)為四旋翼無人機(jī)中心到旋翼中心的距離,d為旋翼的扭矩力系數(shù),F(xiàn)g為地理坐標(biāo)系下重力矢量[14]。
整理式(1)、式(2)與式(7)、式(8)可得不確定變載荷四旋翼無人機(jī)6自由度動力學(xué)方程如下
(9)
為提高無人機(jī)控制系統(tǒng)對不確定擾動進(jìn)行實時精準(zhǔn)的估計和補(bǔ)償。本文對自抗擾控制器進(jìn)行改進(jìn),對變負(fù)載系統(tǒng)進(jìn)行自適應(yīng)跟蹤估計,再由負(fù)載估計值調(diào)節(jié)擾動補(bǔ)償系數(shù),并在非線性狀態(tài)誤差反饋(nonlinear state error feedback,NLSEF)中引入模糊控制器實現(xiàn)參數(shù)快速自整定調(diào)節(jié),控制系統(tǒng)結(jié)構(gòu)框圖如圖2所示。
圖2 控制系統(tǒng)結(jié)構(gòu)框圖
無人機(jī)攜帶負(fù)載存在的不確定性會導(dǎo)致自抗擾控制中擾動補(bǔ)償系數(shù)出現(xiàn)較大偏差難以精準(zhǔn)補(bǔ)償。為此設(shè)計自適應(yīng)控制器使得估計負(fù)載量與預(yù)期負(fù)載量之間誤差趨近于零,再由估計負(fù)載量求得準(zhǔn)確補(bǔ)償系數(shù),從而提高擾動補(bǔ)償精度。
將無人機(jī)控制對象的變載荷子系統(tǒng)表示為
(10)
式中a為被估對象的未知參數(shù),且可任意變化。u為待設(shè)計的控制器輸入函數(shù)。設(shè)計控制器具體步驟如圖3。
圖3 自適應(yīng)估計負(fù)載變化量結(jié)構(gòu)框圖
Step1 以負(fù)載質(zhì)量變化為例設(shè)計預(yù)期量為x1d,則對其的跟蹤誤差表示為
e1=x1d-x1
(11)
求跟蹤誤差變化率,并將式(10)代入可得
(12)
式中u1為虛擬控制器輸入函數(shù)。
Step2 為使跟蹤誤差收斂,選取Lyapunov函數(shù)
(13)
對其求導(dǎo),可得
(14)
(15)
(16)
代入式(14)可得
(17)
將式(15)代入式(13)可得線性化反饋為
再由式(12)可得虛擬控制器輸入函數(shù)為
(18)
Step3 設(shè)計實際控制輸入u2,使得控制器能適應(yīng)變負(fù)載系統(tǒng)中任意未知參數(shù)a。則a的估計誤差可表示為
(19)
(20)
Step4 選取Lyapunov函數(shù)
(21)
對上式求導(dǎo)并結(jié)合式(18)~式(20)整理可得
(22)
(23)
(24)
由上式可得實際控制輸入函數(shù)為
(25)
(26)
然后,結(jié)合估計的負(fù)載質(zhì)量變化量和機(jī)體質(zhì)量求得高度控制通道的補(bǔ)償系數(shù)為
(27)
(28)
式中Ib,Is分別為三軸機(jī)體質(zhì)心轉(zhuǎn)動慣量和負(fù)載質(zhì)心轉(zhuǎn)動慣量。
以橫滾角φ為例,設(shè)計非線性二階跟蹤微分器(tra-cking differentiator,TD)表達(dá)式如下
(29)
式中φd1為期望輸入橫滾角φd的跟蹤信號,φd2為φd1微分信號,R為收斂速度因子。
采用二階離散系統(tǒng)的快速最優(yōu)綜合函數(shù),u=fhan(φd1-φd,φd2,R,h)如下
(30)
式中R為速度因子,h為積分步長,積分步長h越大振蕩幅度越大。
設(shè)計擴(kuò)張狀態(tài)觀測器(extended state observer,ESO)表達(dá)式如下
(31)
為防止出現(xiàn)較大誤差影響系統(tǒng)增益,并提升系統(tǒng)抗擾性,為此設(shè)計改進(jìn)型nFal函數(shù)表達(dá)式如下
(32)
設(shè)計模糊NLSEF表達(dá)式如下
(33)
式中e1,e2為誤差及誤差微分信號;β1,β2類似反饋誤差的比例微分調(diào)節(jié)系數(shù);b為補(bǔ)償因子;u0為狀態(tài)誤差反饋控制量,u為最終控制量。
由于狀態(tài)誤差反饋參數(shù)常需根據(jù)被控對象實時狀態(tài)進(jìn)行手動調(diào)參,自適應(yīng)能力受限。為此設(shè)計以e1,e2作為模糊輸入量,利用模糊邏輯控制規(guī)則在線調(diào)節(jié)狀態(tài)誤差反饋參數(shù),得到模糊控制器輸出為Δβ1,Δβ2,實現(xiàn)在線實時自動調(diào)節(jié)參數(shù)并逐步逼近最優(yōu),提升系統(tǒng)控制效果。
規(guī)定以e1,e2為各自論域的5個模糊控制子集分別是{NB,NS,ZO,PS,PB},并采用三角形隸屬度函數(shù),應(yīng)用Mamdani型模糊推理原則,設(shè)計出Δβ1和Δβ2模糊規(guī)則表如表1、表2所示。
表1 Δβ1模糊規(guī)則
表2 Δβ2模糊規(guī)則
根據(jù)模糊推理規(guī)則,最終修正反饋誤差控制律的增益系數(shù)為
(34)
在MATLAB/Simulink環(huán)境中搭建變載荷四旋翼無人機(jī)模型,再設(shè)計串級PID控制、自適應(yīng)反步法、ADRC算法以及AFADRC算法進(jìn)行飛行穩(wěn)定性對比實驗。最后,通過STM32硬件開發(fā)平臺作為飛控系統(tǒng)實際飛行驗證本文算法的可靠性。具體變載荷無人機(jī)參數(shù)取值如表3。
表3 四旋翼無人機(jī)參數(shù)
設(shè)定無人機(jī)初始飛行高度為1 m保持3 s再升到3 m位置穩(wěn)定3 s后降回至2 m位置定高飛行,并在t=7 s時增加負(fù)載質(zhì)量為ms=0.25 kg。模擬飛行中出現(xiàn)負(fù)載擺動的變質(zhì)心情況,在負(fù)載質(zhì)心偏移機(jī)體坐標(biāo)系XY軸的基礎(chǔ)上加正弦信號模擬負(fù)載擺動。則負(fù)載質(zhì)心距離分別為Xs=Ys=7.5+2.5sinω,Zs=15 cm。自適應(yīng)控制對變負(fù)載系統(tǒng)的估計和四種算法的高度及其姿態(tài)角控制效果對比曲線,如圖4、圖5所示。
圖4 負(fù)載變化量估計
圖5 三段高度變化及姿態(tài)角跟蹤誤差
由圖4可知,對于負(fù)載質(zhì)量以及質(zhì)心沿坐標(biāo)系XY軸擺動偏移量,自適應(yīng)控制都可快速準(zhǔn)確估計出負(fù)載系統(tǒng)變化量。由圖5可知,對于在飛行過程中改變四旋翼無人機(jī)飛行高度以及增加負(fù)載質(zhì)量和偏心擺動干擾,本文算法的高度跟蹤以及姿態(tài)控制效果依然表現(xiàn)較好,高度變化響應(yīng)時間約為0.6 s,姿態(tài)角的誤差變化幅度基本保持±4°以內(nèi),相比其他三種算法的響應(yīng)速度提高了45 %,姿態(tài)角綜合動態(tài)穩(wěn)定性提高了約50 %。
實驗中,四旋翼無人機(jī)飛行姿態(tài)信息、高度信息數(shù)據(jù)通過Radio Telemetry無線數(shù)傳裝置實時反饋至地面上位機(jī)。用黑盒裝載0.25 kg可滾動物體至于機(jī)體偏心位置作為變負(fù)載,進(jìn)行空中定點(diǎn)定高保持穩(wěn)定飛行控制實驗。圖6為無人機(jī)攜變負(fù)載飛行,其中,負(fù)載掛于機(jī)體的質(zhì)心偏移量范圍為x=±10 cm,y=±10 cm。在攜偏心負(fù)載保持飛行穩(wěn)定一段時間后,空中釋放負(fù)載驗證負(fù)載質(zhì)量變化時,機(jī)體姿態(tài)及高度穩(wěn)定性情況。
圖6 攜帶變負(fù)載飛行
圖7 實物飛行高度及姿態(tài)角誤差
實際飛行實驗結(jié)果如圖7所示,根據(jù)無人機(jī)攜變負(fù)載飛行狀態(tài)下的測試結(jié)果可知高度誤差,Δz=±0.08 m,且姿態(tài)角誤差控制在±4°之內(nèi)。因此,飛行器能很好的保持高度和姿態(tài)穩(wěn)定,較好的驗證了本文算法的有效性,同時也基本與仿真模型實驗的結(jié)果保持一致。
綜合實驗結(jié)果,能夠比較清晰地驗證本文設(shè)計模型及改進(jìn)算法的有效性。在不確定性變負(fù)載條件下本文算法都可以更穩(wěn)定控制住無人機(jī)系統(tǒng)的飛行高度及姿態(tài),同時驗證了本文算法相比其他三種算法具有更快的響應(yīng)速度,更好的魯棒性以及應(yīng)對不確定性變負(fù)載擾動的自適應(yīng)能力更強(qiáng)。