段文杰,王大軼,劉成瑞
(1.北京控制工程研究所,北京100190;2.空間智能控制技術(shù)重點實驗室,北京100190)
飛機、衛(wèi)星等控制系統(tǒng)對穩(wěn)定性,可靠性要求很高,對于這類系統(tǒng),如何快速實現(xiàn)執(zhí)行器故障后的系統(tǒng)重構(gòu)是保證其安全可靠工作的關(guān)鍵問題.
故障的檢測,隔離和診斷(FDI,fault detection and isolation,)[1]是主動容錯控制方法的基礎(chǔ).充分冗余可以保證故障系統(tǒng)的可控性,對于過驅(qū)動系統(tǒng),控制分配[2]是處理帶約束的冗余的有效方法.控制分配經(jīng)常和其他的控制方法共同使用,以用于處理故障[3].將故障診斷,重構(gòu)算法和控制分配相結(jié)合,可以有效地處理故障[4-5].
本文面向閉環(huán)冗余控制系統(tǒng)設(shè)計的可重構(gòu)控制方法,包含控制器、控制分配和故障診斷三個部分.對于閉環(huán)系統(tǒng)執(zhí)行器故障,在線重構(gòu)時,故障很容易在閉環(huán)系統(tǒng)中傳播開來,可能導(dǎo)致故障檢測時多個觀測變量都超過了報警閾值,增加了故障隔離的難度.另外,受到控制器魯棒性影響,理論上可以隔離的故障,在實際中往往難以實現(xiàn).如何克服這些問題,快速的定位故障,并隔離故障,是實現(xiàn)可重構(gòu)控制的關(guān)鍵.因此本文重點設(shè)計如何快速定位可能的故障源和在線定位故障.
本文采用有向圖(SDG,signed directed graph)[6]方法進行故障檢測,得到可能的故障源,然后對難以隔離的故障設(shè)計一種在線故障定位方法.對于控制分配部分,提出基于可達集的控制分配在求解時,可以對可達集表面重新排序,從而提高求解速度.文中將提到的方法應(yīng)用到一個四動量輪航天器模型.
航天器動力學方程為
其中,h(t)為動量輪相對于量體角動量,hx(t)、hy(t)和hz(t)為h(t)在x、y和z方向的分量.φ、θ,φ分別為滾動角、俯仰和偏行角,Ix、Iy和Iz分別為x、y、z軸轉(zhuǎn)動慣量,ω0為軌道角速度.
式(1)寫成狀態(tài)方程為
由文獻[7]可知,式中的ξ0(t)為匹配項,可以表示為ξ為BC的偽逆.定義,所以式(2)可以表示為
本文的故障診斷和隔離算法基于采樣系統(tǒng),所以將式離散化可得本文研究對象,離散過驅(qū)動線性時不變系統(tǒng)如下:
式中,v(k)=B0u(k),B0∈Rp×m為執(zhí)行器安裝矩陣,u(k)∈Rm為m個執(zhí)行器的輸出向量,A=
當主系統(tǒng)與真實系統(tǒng)輸出的差超過了閾值時,故障檢測模塊報警,接下來故障隔離算法基于故障檢測的結(jié)果隔離故障.定位故障后,控制分配部分重新分配控制律,流程圖如圖1所示.
本文以航天器冗余動量輪系統(tǒng)的故障隔離及重構(gòu)為例,在可重構(gòu)設(shè)計中主要做了以下工作:
1)控制器設(shè)計;
2)控制分配:改進基于可達集(AMS)直接分配方法;
圖1 容錯控制流程圖Fig.1 Fault-tolerant control flowchart
3)檢測到故障后,應(yīng)用SDG方法快速定位可能的故障源;對難以隔離的故障,設(shè)計一種在線故障隔離算法.
故障檢測:主系統(tǒng)與真實系統(tǒng)輸出的差超過預(yù)設(shè)的閾值時,故障檢測報警,檢測到系統(tǒng)發(fā)生故障.定義閾值為sk,當時,故障檢測報警,故障隔離算法將基于故障檢測結(jié)果隔離故障.為了簡便,假設(shè)方程(4)和(5)中的C矩陣為單位矩陣.此時用于故障檢測的殘差為
應(yīng)用SDG方法首先要將解析模型轉(zhuǎn)化為SDG圖.可表示為微分方程的系統(tǒng),SDG的節(jié)點對應(yīng)方程的系統(tǒng)變量和輸入,而節(jié)點間的支路符號可通過對微分方程求偏導(dǎo)計算.例如,某系統(tǒng)的狀態(tài)變量為x=[x1,…,xn],系統(tǒng)狀態(tài)方程如下:
節(jié)點xj到節(jié)點xi的支路的符號函數(shù)為sgn(?fi/?xj),即當 ?fi/?xj>0 ,該支路符號為正,取值為1;當?fi/?xj<0,該支路符號為負,取值為-1;當 ?fi/?xj=0時,則說明節(jié)點xj到節(jié)點xi之間沒有支路連接.
下面以航天器飛輪故障的診斷為例,說明SDG故障診斷方法.首先,過驅(qū)動航天器系統(tǒng)的有向圖可以分層畫出,u→v→x.支路符號與系統(tǒng)的參數(shù)有關(guān).采用的系統(tǒng)參數(shù)為Ix=200 kg·m2,Iy=100 kg·m2,Iz=180 kg·m2,Torbit=10 h,ω0=(2π/3 600)Torbit.動量輪的構(gòu)型為三正一斜,其安裝矩陣為
式(1)~式(4)所示的航天器模型的有向圖為圖2.
搜索支路,確定故障源,通過以下幾步進行:
(1)用T={σk,i}來表示報警節(jié)點集合;
(2)從T中任取一個 σk,i,對應(yīng)的狀態(tài)變量為xi,在有向圖中從該節(jié)點沿箭頭回溯得到上一個節(jié)點.對該路徑分兩種情況考慮,一種是若該節(jié)點在以前的回溯搜索中已經(jīng)搜索過了,則停止回溯;另一種是一直回溯到部件節(jié)點ui;
圖2 航天器系統(tǒng)有向圖Fig.2 SDG of the spacecraft
(3)繼續(xù)搜索,遍歷所有可能路徑;
(4)按照上面處理完所有故障報警節(jié)點,取各個故障報警節(jié)點產(chǎn)生的候選節(jié)點集合的并集作為故障源候選節(jié)點集合SFau.
應(yīng)用SDG方法離線制作出故障源表,在線發(fā)生故障時,通過查表,就可以得到可能的故障源集合.
通過以上方法獲得的故障源SFau中,一般存在不止一個故障源.如 σk,4報警,SFau={u2,u4}.為了進一步的定位故障,本文設(shè)計了一種在線閉環(huán)系統(tǒng)隔離故障方法,該方法如下:
1)故障檢測報警后,通過查表或者在線SDG分析,迅速得到可能故障源SFau={1,…,uj,…}.定義故障源uj對報警狀態(tài)xi的影響程度因子為ηij,表示該路徑m個支路影響因子的乘積
其中,φi為該傳播路徑的第i個支路的偏導(dǎo)數(shù),如果該支路為xp→xq,則 φi=?fq/?xp,按照 ηij從大到小的順序排序SFau.
2)重置故障診斷主系統(tǒng)狀態(tài),令x=,使得主系統(tǒng)狀態(tài)和真實系統(tǒng)狀態(tài)相同.
3)假設(shè)SFau中排列最前的組件故障(已經(jīng)檢驗過的跳過),然后應(yīng)用故障診斷結(jié)果隔離故障,重新分配控制律.如果故障診斷部分未再次報警,則故障診斷結(jié)果正確,系統(tǒng)重構(gòu)完成;如果又再次報警且報警節(jié)點相同,跳到第2)步;如果報警但節(jié)點不同,則報警節(jié)點為兩次報警節(jié)點的并集,跳到第1)步.
本文的重構(gòu)方法,診斷出某個執(zhí)行器故障后,在控制分配中,將該執(zhí)行器隔離.本文在線隔離方法應(yīng)用的前提是控制器具有較強的魯棒性,系統(tǒng)在線隔離時能保證系統(tǒng)安全.
采用模型參考方法,參考輸入為yr,k.對于姿態(tài)調(diào)節(jié)系統(tǒng),yr,k=0.對主系統(tǒng),控制律為
系統(tǒng)(5)的控制律如下:
將式(10)代入式(5),可得
將式(9)和式(10)代入到式(12),并結(jié)合式(11),可得
由式(13)可知,設(shè)計控制參數(shù)Kn和Kp,使得A-BKnC和A-BKnC-BKpC的特征值在單位圓內(nèi),可以使得姿態(tài)調(diào)節(jié)系統(tǒng)(yr,k=0)漸進穩(wěn)定.
vk為控制器設(shè)計出的控制律,控制分配在故障診斷的基礎(chǔ)上,將vk分配到各個執(zhí)行器,方程為
本節(jié)采用基于可達集的直接方法求解,該方法的解空間可以充滿整個可達集中.基于可達集的解法主要分為兩步,首先建立可達集,找到所有可達集表面,然后尋找相交面確定解向量.原來的算法,相交面的搜索過程是按照可達集建立的過程排列的,按照此順序搜索時間可能較長.本節(jié)為了快速確定相交面,提出將可達集表面按照各個可達集表面法向量ni和虛擬控制律vk之間的夾角從小到大的順序排列.該排序的指標為
其中,μi是可達集表面法向量ni和虛擬控制律vk之間的夾角的余弦值,μi越小,可達集表面法向量ni和虛擬控制律vk之間的夾角越小.當可達集接近一個正多面體時,搜索速度很快.
當某一個輸出方向飽和時,可達集的解落在目標向量和可達集的相交表面上,指向目標方向.
本節(jié)仿真衛(wèi)星姿態(tài)調(diào)節(jié)過程中動量輪故障時的重構(gòu)問題.安裝在y軸自動量輪在姿態(tài)調(diào)節(jié)開始t=4 s后失效,無法接收指令,輸出為0.仿真初始條件為 x0=[0.05 0 0 0 0 0],報警閾值為sk=0.005.式(13)中 A-BKnC的極點設(shè)計為 pker=[0.991 0.992 0.993 0.994 0.995 0.996],通過 Matlab 中的place函數(shù)進行極點設(shè)計,可得 Kn=place(A,B,pker).且令Kp=0.
在仿真Ⅰ中,t=6.9 s報警,報警節(jié)點為3.經(jīng)過分析可知,可能的故障源為{u2,u4}.然后按照上一節(jié)給出的方法,在線定位故障和隔離故障.
首先,對{u2,u4}排序.由x3回溯到到u2,可得故障傳播路徑為:u2→v2→x4→x3,計算影響因子為.同理,由x回溯到到u,故障34傳播路徑為:u4→v2→x4→x3,可以計算出其影響因子為.因此排序的結(jié)果為SFau={u2,u4}.
然后重置故障診斷主系統(tǒng)狀態(tài),令x=.先令故障源中排在前面的u2故障,控制分配對象為u1,u3,u4,隔離后的安裝矩陣為
繼續(xù)仿真,因為診斷結(jié)果正確,系統(tǒng)故障正確隔離,系統(tǒng)重構(gòu)完成.仿真結(jié)果如圖3~圖5所示.由仿真結(jié)果得知,本文提出的重構(gòu)方法非常有效.在圖4中t=6.9 s時,主系統(tǒng)俯仰角和俯仰角速度的狀態(tài)突變,是由主系統(tǒng)和真實系統(tǒng)的差別較大報警后,姿態(tài)重置產(chǎn)生的.
在仿真Ⅰ中,t=6.9 s,系統(tǒng)報警后,如果我們不排序故障源,并先假定動量輪4故障.這次仿真為仿真Ⅱ.此時,真實的系統(tǒng)的可用動量輪為u1,u3,u4,但由于錯誤的診斷,控制分配的對象為u1,u2,u3,控制分配應(yīng)用的安裝矩陣為式(17).因為u2故障,無法接收信號,實際的u2輸出為零.
圖3 仿真Ⅰ滾動角、滾動角速度時間歷程Fig.3 Histories of roll angle and roll angle rate in simulationⅠ
圖4 仿真Ⅰ俯仰角、俯仰角速度時間歷程Fig.4 Histories of pitch angle and pitch angle rate in simulationⅠ
圖5 仿真Ⅰ偏航角、偏航角速度時間歷程Fig.5 Histories of yaw angle and yaw angle rate in simulationⅠ
此時,動量輪實際的輸出力矩和控制分配的控制力矩,又產(chǎn)生了偏差,進而仿真中,t=9.38 s,系統(tǒng)再次報警,報警節(jié)點為σk,3,與之前報警節(jié)點相同.選擇u2為故障源,繼續(xù)仿真.因為故障源判斷正確,系統(tǒng)重構(gòu)完成,姿態(tài)調(diào)節(jié)系統(tǒng)俯仰角及俯仰角速度仿真曲線如圖6所示.
圖6 仿真Ⅱ俯仰角、俯仰角速度時間歷程Fig.6 Histories of pitch angle and pitch angle rate in simulationⅡ
通過這兩次仿真的對比,可見,對故障源按照其對報警節(jié)點的影響因子排序,可以快速定位故障.這點與實際情況相符,因為每個觀測節(jié)點受故障源影響不同,每個故障對觀測節(jié)點產(chǎn)生的影響也不同,所以每個故障更可能在其影響最大的節(jié)點報警.
本文的故障診斷部分,采用了SDG快速診斷+在線評價的方式隔離故障.這時閾值作為故障檢測參數(shù),它的大小關(guān)系著故障檢測和隔離的速度.首先閾值不宜過大.本文中,如果設(shè)置sk=0.015,則系統(tǒng)無報警,雖然發(fā)生了故障,但是利用重構(gòu)算法的魯棒性,系統(tǒng)最終仍然穩(wěn)定,此次仿真為仿真Ⅲ,狀態(tài)歷程曲線如圖7所示.圖7表明本文的控制器具有較強的魯棒性,在控制器重構(gòu)時,可以保證系統(tǒng)安全.
圖7 仿真Ⅲ系統(tǒng)狀態(tài)歷程Fig.7 Histories of state variables in simulation Ⅲ
減小報警閾值,可以減少故障影響.但對于實際系統(tǒng),存在模型誤差,閾值不宜過小,可能產(chǎn)生故障誤報.
本文設(shè)計了一種含冗余執(zhí)行器的閉環(huán)系統(tǒng)可重構(gòu)控制方法.該方法包括控制器設(shè)計,控制分配和故障診斷3個方面.其中,控制器設(shè)計采用了反饋控制方法;控制分配部分改進了基于可達集的直接分配方法,重新排列了可達集表面,提高了求解速度;對冗余執(zhí)行器的故障定位是本文在線可重構(gòu)算法重要的一個環(huán)節(jié),采用了SDG快速診斷可能的故障源,對難以隔離的故障,設(shè)計了在線故障隔離方法.最后,將本文重構(gòu)方法應(yīng)用到了具有冗余動量輪的衛(wèi)星姿態(tài)調(diào)節(jié)系統(tǒng),當動量輪故障時,取得了良好的重構(gòu)效果.
[1]ZHANG Y,JIANG J.Bibliographical review on reconfigurable fault-tolerant control systems[J].Annual Reviews in Control,2008,32(2):229-252.
[2]DURHAM W C.Attainable moments for the constrained control allocation problem[J].Journal of Guidance Control,and Dynamics,1994,17(6):1371-1379.
[3]CASAVOLA A,GARONE E.Adaptive fault tolerant actuator allocation for overactuated plants[C]//Proceedings of the 2007 American Control Conference.New York:ACC,2007:3985-3990.
[4]ZHANG Y M,SURESH V S,JIANG B,et al.Reconfigurable control allocation against aircraft control effector failures[C]//The 16thIEEE International Conference on Control Applications.Singapore:IEEE,2007:1197-1202.
[5]HAMAYUN M T,EDWARDS C,ALWI H.A fault tolerant control allocation scheme with output integral sliding modes[J].Automatica,2013,49(6):1830-1837.
[6]YANG F,XIAO D,SHAH S L.Signed directed graphbased hierarchical modelling and fault propagation analysis for large-scale systems[J].IET Control Theory &Applications,2013,7(4):537-550.
[7]CASTANOS F,F(xiàn)RIDMAN L.Analysis and design of integral sliding manifolds for systems with unmatched perturbations[J].IEEE Transactions on Automatic Control,2006,51(5):853-858.