姜陶然,華秀峰,李 濤
(南京信息工程大學(xué)自動化學(xué)院,江蘇 南京 210044)
近年來,隨著計算機(jī)、工程控制、人工智能和自動駕駛等技術(shù)的迅猛發(fā)展,無人機(jī)(unmanned aerial vehicle, UAV)[1]的飛行控制技術(shù)取得了極大的進(jìn)步,飛行安全性和可靠性大大增加,進(jìn)而推動了無人機(jī)在各個領(lǐng)域的應(yīng)用。多旋翼無人機(jī)具有維護(hù)成本低、飛行靈活等優(yōu)點,已經(jīng)在低空偵查、軍事打擊等軍用領(lǐng)域,以及電力巡檢、短途運(yùn)輸、航拍等民用領(lǐng)域得到廣泛應(yīng)用[2-5]。然而,隨著多旋翼無人機(jī)執(zhí)行的任務(wù)越來越多樣化,其結(jié)構(gòu)也越來越復(fù)雜,這些都會增加無人機(jī)發(fā)生故障的概率,甚至?xí)斐蓢?yán)重的人員財產(chǎn)損失[6-8],因此對多旋翼無人機(jī)進(jìn)行容錯控制,保證無人機(jī)在發(fā)生故障情況下的安全性和飛行穩(wěn)定性,具有重要的現(xiàn)實意義[9-10]。
近些年,對于多旋翼無人機(jī)在發(fā)生故障情況下的容錯控制已經(jīng)有了很多研究成果。文獻(xiàn)[11]構(gòu)建了一種具有未知輸入解耦功能的故障診斷模塊,并與主動容錯方法相結(jié)合,實現(xiàn)對無人機(jī)的容錯控制。文獻(xiàn)[12]將自適應(yīng)故障診斷方案與自適應(yīng)Backstepping控制方法相結(jié)合,實現(xiàn)對無人機(jī)的容錯控制。為了實現(xiàn)故障情況下無人機(jī)的穩(wěn)定,文獻(xiàn)[13]提出了基于降維滑模觀測器的故障補(bǔ)償控制方法。文獻(xiàn)[9]設(shè)計了基于觀測器的反步縱向控制方法,并將其用于帶有執(zhí)行器故障的基于載波的無人機(jī)系統(tǒng)。上述容錯控制方法都具有很好的容錯控制效果,但它們均需要先設(shè)計故障診斷模塊,利用故障重構(gòu)信息再進(jìn)行控制器的設(shè)計。然而在實際應(yīng)用中,增加觀測器模塊設(shè)計也加大了整個系統(tǒng)的復(fù)雜度,為系統(tǒng)設(shè)計帶來了困難,并且無人機(jī)系統(tǒng)在狀態(tài)空間模型轉(zhuǎn)換后有可能不滿足觀測器匹配條件[14],會給觀測器的實際應(yīng)用帶來困難。上述這些問題都會對容錯控制的效果產(chǎn)生很大影響。
本文基于自適應(yīng)滑模技術(shù),提出一種不依賴故障診斷模塊的容錯控制方法。首先建立了能統(tǒng)一描述無人機(jī)電機(jī)卡死和失效兩種故障類型的動力學(xué)模型,降低了針對不同類型故障進(jìn)行不同處理的復(fù)雜度;然后在自適應(yīng)滑模控制器中設(shè)計自適應(yīng)機(jī)制,在線估計故障信號,取代用于故障重構(gòu)的觀測器,從而降低整個容錯系統(tǒng)設(shè)計的難度,保證無人機(jī)在發(fā)生執(zhí)行器故障的情況下穩(wěn)定飛行。
為了方便描述,對文中出現(xiàn)的符號進(jìn)行解釋。P∈m×n表示矩陣P為m×n階的矩陣,代表實數(shù)域,“-1”表示標(biāo)量的倒數(shù)和矩陣的逆矩陣,?(t)的歐幾里得范數(shù)由‖? (t)‖表示。
六旋翼無人機(jī)系統(tǒng)比較復(fù)雜,具有很強(qiáng)的非線性以及軸間耦合,為了便于分析,作出如下合理假設(shè):1)六旋翼無人機(jī)機(jī)體為剛體,并且滿足機(jī)體結(jié)構(gòu)軸對稱;2)無人機(jī)的質(zhì)心與飛行中心重合;3)無人機(jī)的飛行姿態(tài)角不會發(fā)生大角度突變。
以圖1所示的無人機(jī)為研究對象,定義機(jī)體坐標(biāo)系和地理坐標(biāo)系,對無人機(jī)的結(jié)構(gòu)及飛行原理進(jìn)行分析。
如圖1所示,obxbybzb為六旋翼無人機(jī)的機(jī)體坐標(biāo)系,坐標(biāo)系原點ob為六旋翼無人機(jī)質(zhì)心,也即無人機(jī)的飛行中心,在機(jī)體坐標(biāo)系中,obxb軸正方向為機(jī)頭方向,在無人機(jī)左右對稱面內(nèi);obzb軸與obxb軸垂直,正方向指向機(jī)體下方,同樣也位于無人機(jī)左右對稱面內(nèi);obyb軸與obxbzb構(gòu)成的平面垂直。對于低空飛行的六旋翼無人機(jī)來說,地面是靜止不動的,在地面上選擇一點og為原點建立地理坐標(biāo)系ogxgygzg,ogxg軸位于地面的水平面,ogyg軸也位于地面水平面且垂直于ogxg軸,ogzg軸垂直于平面ogxgyg并指向正下方。地理坐標(biāo)系ogxgygzg為無人機(jī)飛行的參考慣性坐標(biāo)系。
為了便于分析,對圖1中的六旋翼無人機(jī)的機(jī)體結(jié)構(gòu)進(jìn)行簡化,簡化后的結(jié)構(gòu)圖如圖2所示。
圖2 六旋翼無人機(jī)簡化結(jié)構(gòu)圖
圖中,黑色實線代表六旋翼無人機(jī)機(jī)體、力臂等剛性結(jié)構(gòu),1~6分別表示無人機(jī)的6個執(zhí)行機(jī)構(gòu),對應(yīng)的弧形箭頭表示各個旋翼的旋轉(zhuǎn)方向。l1為2和5號電機(jī)與機(jī)體連接點O之間的距離;l2為1和4號電機(jī)與機(jī)體連接點M(1和4號電機(jī)的力臂)之間的距離;l3為連接點O和M之間的距離;α為1和4號電機(jī)力臂與OM延長線的銳夾角。由于無人機(jī)結(jié)構(gòu)對稱,因此3和6號電機(jī)力臂長度也為l2,力臂與ON延長線的銳夾角也為α。
由文獻(xiàn)[15]可知,根據(jù)牛頓-歐拉方程,六旋翼無人機(jī)的動力學(xué)模型可以建立為:
(1)
式中:σ=[φ,θ,ψ]T∈3×1,為六旋翼無人機(jī)的姿態(tài)角向量,φ,θ,ψ分別為滾轉(zhuǎn)角、俯仰角和偏航角;Ω=[p,q,r]T∈3×1,為機(jī)體坐標(biāo)系中無人機(jī)的角速度向量,p,q,r分別為滾轉(zhuǎn)、俯仰和偏航角速度;J=diag{Jx,Jy,Jz},為六旋翼無人機(jī)的轉(zhuǎn)動慣量矩陣,Jx,Jy,Jz分別為各個通道的轉(zhuǎn)動慣量;d∈3×1,為無人機(jī)飛行過程中所受到的外部干擾;Da=[Da1,Da2,Da3]T∈3×1,Da1,Da2,Da3分別為d在滾轉(zhuǎn)、俯仰和偏航三個通道影響效果權(quán)重;L∈3×3,為滾轉(zhuǎn)、俯仰、偏航通道的等效力臂,由六旋翼無人機(jī)的機(jī)體結(jié)構(gòu)所決定;τc∈3×3,為機(jī)體在滾轉(zhuǎn)、俯仰、偏航通道所受到的等效力;W∈3×3,為繞三軸角速度向量與歐拉角向量的轉(zhuǎn)換矩陣。W的表達(dá)式為:
(2)
由假設(shè)3)可知,無人機(jī)在飛行過程中沒有大角度的突變,因此可以將矩陣W近似為單位矩陣,代入式(1)得到:
(3)
由圖2中力臂長度以及力臂與機(jī)體夾角可得:
(4)
式中:b為升力系數(shù);c為反扭矩系數(shù)。
τc與六旋翼無人機(jī)每個電機(jī)產(chǎn)生升力的關(guān)系為:
τc=Su
(5)
式中:u=[f1,f2,f3,…,f6]T∈6×1,為無人機(jī)旋翼電機(jī)產(chǎn)生的升力矩陣,元素為第i個電機(jī)產(chǎn)生的升力大小,ωi為第i個電機(jī)旋翼的轉(zhuǎn)速;S∈3×3,為各個電機(jī)產(chǎn)生的升力對六旋翼無人機(jī)姿態(tài)角的影響因子,根據(jù)圖2中力臂長度以及力臂與機(jī)體夾角關(guān)系,可得到S為:
(6)
把式(4)~(6)代入式(3),可得:
(7)
式中:λ=c/b。
1.1節(jié)建立了正常情況下的六旋翼無人機(jī)的數(shù)學(xué)模型。但是如果無人機(jī)某一電機(jī)發(fā)生故障,其轉(zhuǎn)速將會立即下降,遠(yuǎn)小于正常值,直接導(dǎo)致無人機(jī)飛控系統(tǒng)的不穩(wěn)定。本節(jié)研究六旋翼無人機(jī)發(fā)生執(zhí)行機(jī)構(gòu)故障時的情況,所研究的故障分為電機(jī)卡死和電機(jī)失效兩種類型。
1)假設(shè)第i號電機(jī)發(fā)生卡死故障,其轉(zhuǎn)速輸出可以表示為:
(8)
式中:Δωi為第i號電機(jī)發(fā)生卡死故障后的電機(jī)轉(zhuǎn)速。如果Δωi=0,表示第i號電機(jī)完全卡死,則其輸出升力Δfi為:
(9)
2)假設(shè)第i號電機(jī)發(fā)生失效故障,其轉(zhuǎn)速輸出可以表示為:
(10)
(11)
綜合式(8)和式(11),定義故障電機(jī)模型如下:
(12)
(13)
式(13)表示同一電機(jī)在某一時刻只能發(fā)生一種類型的故障,這也符合現(xiàn)實情況,則發(fā)生執(zhí)行器故障的六旋翼無人機(jī)系統(tǒng)動力學(xué)模型可以統(tǒng)一構(gòu)造為:
(14)
本節(jié)將設(shè)計六旋翼無人機(jī)自適應(yīng)滑模容錯控制器,使發(fā)生電機(jī)故障的無人機(jī)依舊能保持飛行姿態(tài)的穩(wěn)定。為了保證所設(shè)計的自適應(yīng)滑??刂破髂軌蜻_(dá)到預(yù)期的控制效果,作如下假設(shè):1)六旋翼無人機(jī)動力學(xué)方程的系統(tǒng)狀態(tài)是可觀測的;2)對于所有類型的故障,都滿足秩條件rank(LSρ)=rank(LS)。假設(shè)2是為了保證系統(tǒng)具備執(zhí)行器控制冗余的特點,在執(zhí)行器發(fā)生故障的容錯控制中,具備控制冗余往往是必要的,特別是針對執(zhí)行器卡死或者完全失效故障,滿足冗余假設(shè)條件十分重要。本文的六旋翼無人機(jī)滿足此條件。
本文控制器的設(shè)計思路是,基于自適應(yīng)滑模技術(shù)構(gòu)建滑模函數(shù),實現(xiàn)姿態(tài)角跟蹤到期望值;在控制律設(shè)計中運(yùn)用自適應(yīng)模塊,在線對故障信息進(jìn)行估計,在無人機(jī)的飛行受到外界干擾的影響下,實現(xiàn)容錯控制。
對發(fā)生執(zhí)行器故障的六旋翼無人機(jī)系統(tǒng)動力學(xué)模型式(14)構(gòu)建誤差向量eσ:
eσ=σ-σd
(15)
式中:σd為六旋翼無人機(jī)姿態(tài)角的期望值。然后設(shè)計積分滑模函數(shù)sσ如下:
(16)
式中:sσ=[sσ1,sσ2,sσ3]T;c1,c2>0,為積分滑模函數(shù)的參數(shù);τ為時間間隔。然后,對積分滑模函數(shù)式(16)求導(dǎo)可得:
(17)
把式(14)代入式(17),可得
(18)
構(gòu)建自適應(yīng)滑模容錯控制律如下:
u=-(LS)TJW-1Γsign(sσ)
(19)
其中,Γ的具體表達(dá)式為:
(20)
(21)
(22)
對于失效故障失效率的處理,給出如下引理:
引理1 對于行滿秩的矩陣LS,存在正標(biāo)量μ,對于所有的ρ,都滿足不等式LSρ(LS)T≥μLS(LS)T。
基于引理1,給出如下定理:
定理1,對于六旋翼無人機(jī)系統(tǒng)式(14),在滿足假設(shè)1)和2)的條件下,滑模函數(shù)、自適應(yīng)滑??刂坡?、自適應(yīng)律分別由式(16)、(19)和(21)給出,則在有電機(jī)卡死、失效故障和外界干擾的影響下,仍能保證無人機(jī)閉環(huán)容錯系統(tǒng)是漸近穩(wěn)定的。
證明:
針對六旋翼無人機(jī)容錯系統(tǒng)(14),構(gòu)建Lyapunov函數(shù):
(23)
顯然,Lyapunov函數(shù)大于0。對式(23)求導(dǎo)可得:
(24)
然后把式(14)代入到式(24)可得:
(25)
將自適應(yīng)滑??刂坡?19)代入式(25)中,可得:
(26)
由引理1可得:
(27)
(28)
將式(21)、(22)代入式(28),可得
(29)
圖3 3號電機(jī)卡死故障無人機(jī)姿態(tài)角容錯控制圖
圖4 6號電機(jī)失效故障無人機(jī)姿態(tài)角容錯控制圖
從圖可以看出,本文設(shè)計的自適應(yīng)滑??刂坡赡軌蚴篃o人機(jī)姿態(tài)角由初始狀態(tài)收斂于穩(wěn)定位置。在第30 s發(fā)生電機(jī)失效故障后,雖然無人機(jī)的姿態(tài)角發(fā)生了變化,但自適應(yīng)滑模控制器能在發(fā)生故障后幾秒鐘內(nèi)使無人機(jī)姿態(tài)角趨于穩(wěn)定,實現(xiàn)容錯控制。
針對基于觀測器的主動容錯方法需要設(shè)計故障診斷模塊而增大系統(tǒng)設(shè)計難度的問題,本文提出一種不依賴故障診斷模塊的自適應(yīng)滑模容錯控制方法。由于電機(jī)卡死和失效故障的發(fā)生原因不同,傳統(tǒng)的主動容錯控制方法對于不同的故障類型采用不同的處理方法,在實際應(yīng)用中需要先進(jìn)行故障類型的識別,比較繁瑣,而本文建立的能統(tǒng)一描述無人機(jī)電機(jī)卡死和失效兩種故障類型的數(shù)學(xué)模型,降低了針對不同類型故障進(jìn)行不同處理的復(fù)雜度。為了在線估計故障信號,傳統(tǒng)的主動容錯方法需要在無人機(jī)系統(tǒng)外額外設(shè)計觀測器系統(tǒng),會使整個系統(tǒng)變得更加復(fù)雜,本文在自適應(yīng)滑模控制器中設(shè)計自適應(yīng)機(jī)制在線估計故障和干擾信息,不需要額外設(shè)計觀測器,也不需要考慮觀測器匹配等條件,因而降低了整個容錯系統(tǒng)設(shè)計的難度。數(shù)值仿真結(jié)果驗證了本文設(shè)計的控制算法的有效性。