李磊, 高永明, 吳止鍰, 張學(xué)波
(航天工程大學(xué)航天信息學(xué)院, 北京 101416)
衛(wèi)星是目前應(yīng)用最為廣泛的航天器,衛(wèi)星的姿態(tài)控制系統(tǒng)故障會導(dǎo)致嚴重的后果,其中執(zhí)行器由于長期處于工作狀態(tài)中很容易發(fā)生故障,因此衛(wèi)星姿態(tài)控制系統(tǒng)的執(zhí)行器故障診斷問題很有研究價值。很多故障在早期表現(xiàn)很微小[1],通常會被系統(tǒng)擾動噪聲掩蓋,因此微小故障的檢測對于故障的早期診斷有重要意義。
基于解析模型的方法,尤其是觀測器方法,在衛(wèi)星姿態(tài)控制系統(tǒng)故障診斷中取得了很多成果,也是目前研究最為活躍的方法[2-3]。基于解析模型的故障診斷易受到擾動干擾,為解決這個問題,文獻[4-5]研究了魯棒觀測器,力圖使觀測器殘差對擾動解耦,但是由于擾動無法完全解耦,對于微小故障的檢測達不到滿意的效果。與魯棒觀測器類似,文獻[6-8]提出的學(xué)習(xí)觀測器雖然對空間干擾和測量噪聲具有魯棒性,但是也沒有完全與故障殘差解耦。文獻[9-10]研究了自適應(yīng)觀測器方 法,通過對故障的自適應(yīng)估計使得觀測結(jié)果對擾動魯棒,但是只考慮了輸入端的擾動力矩,而沒考慮測量敏感器的噪聲。
鑒于解析模型難以解決擾動問題,神經(jīng)網(wǎng)絡(luò)因為其優(yōu)秀的非線性建模能力被用于故障診斷。文獻[11-12]提出應(yīng)用神經(jīng)網(wǎng)絡(luò)對系統(tǒng)中的非線性部分進行估計,放寬了對系統(tǒng)的匹配條件,但是沒有充分利用系統(tǒng)的結(jié)構(gòu)知識;文獻[13-15]提出了應(yīng)用神經(jīng)網(wǎng)絡(luò)直接估計故障的方法,但是仍然沒有考慮微小故障的檢測問題。
干擾觀測器[16-17]通常用來補償控制系統(tǒng)內(nèi)的模型誤差等擾動,參考其補償干擾的思路,本文提出了一種基于神經(jīng)網(wǎng)絡(luò)干擾觀測器的微小執(zhí)行器故障檢測方法。利用衛(wèi)星姿態(tài)控制系統(tǒng)內(nèi)的冗余關(guān)系,通過構(gòu)建干擾觀測器對系統(tǒng)內(nèi)的測量誤差、擾動等進行估計,對基于解析模型的故障檢測觀測器進行擾動補償,實現(xiàn)對微小故障的檢測。并利用Lyapunov理論證明了所設(shè)計的干擾觀測器的穩(wěn)定性。
考慮如圖1所示的三軸穩(wěn)定衛(wèi)星姿態(tài)控制系統(tǒng),其中敏感器為陀螺和星敏感器;執(zhí)行器為反作用飛輪;控制算法采用非線性四元數(shù)反饋控制律。衛(wèi)星姿態(tài)控制系統(tǒng)可以分為運動學(xué)子系統(tǒng)和動力學(xué)子系統(tǒng)[18]。運動學(xué)子系統(tǒng)包括陀螺、星敏感器和運動學(xué)過程,反映了衛(wèi)星姿態(tài)角與角速度間的關(guān)系;動力學(xué)子系統(tǒng)包括反作用飛輪、陀螺和動力學(xué)過程,反映了衛(wèi)星受到的控制力矩與角速度間的關(guān)系。僅考慮反作用飛輪可能出現(xiàn)故障的情況。
由四元數(shù)描述的姿態(tài)運動學(xué)方程為[18]
(1)
(2)
選取x1=[q0,q1,q2,q3]T為狀態(tài)變量,則姿態(tài)運動學(xué)方程可以寫成如下所示的狀態(tài)空間形式:
(3)
式中:u1=[ωx,ωy,ωz]T為運動學(xué)輸入;y1=[q0,q1,q2,q3]T為運動學(xué)輸出;φ(x1,u1)為運動學(xué)非線性函數(shù)。
圖1 衛(wèi)星姿態(tài)控制系統(tǒng)Fig.1 Satellite attitude control system
(4)
考慮陀螺的測量誤差,則運動學(xué)子系統(tǒng)表達式為
(5)
式中:b=[bx,by,bz]T為陀螺的測量誤差,包括常值漂移和隨機噪聲。
將衛(wèi)星本體看作剛體,則由剛體運動的動量矩公式可得到衛(wèi)星姿態(tài)動力學(xué)方程[18]為
(6)
式中:H為衛(wèi)星的角動量;τ=[τx,τy,τz]T為衛(wèi)星本體受到的合力矩在本體坐標(biāo)系中的分量。
(7)
角動量H可以表示為H=IJω,其中IJ為衛(wèi)星的轉(zhuǎn)動慣量矩陣,通常情況下,衛(wèi)星的慣性主軸與衛(wèi)星本體坐標(biāo)系重合時,則有IJ=diag{IJx,IJy,IJz}??紤]衛(wèi)星在空間環(huán)境中受到的干擾力矩,則式(6)可以寫為
(8)
其中:τc=[τcx,τcy,τcz]T為執(zhí)行器產(chǎn)生的控制力矩;τd=[τdx,τdy,τdz]T為衛(wèi)星受到的干擾力矩。
選取x2=[ωx,ωy,ωz]T為狀態(tài)變量,則動力學(xué)子系統(tǒng)可以寫成如下所示的狀態(tài)空間形式:
(9)
其中:u2=[τcx,τcy,τcz]T為動力學(xué)子系統(tǒng)的輸入;y2=[ωx,ωy,ωz]T為動力學(xué)子系統(tǒng)的輸出;d=[τdx,τdy,τdz]T為干擾力矩;φ(x2)為動力學(xué)子系統(tǒng)的非線性函數(shù)。
(10)
系統(tǒng)的輸入矩陣B、輸出矩陣E和擾動分布矩陣C2表達式如下:
在進行問題描述前,做以下合理假設(shè)。
假設(shè)1假設(shè)衛(wèi)星工作在小角度機動狀態(tài)下,因此式(3)和式(9)中的非線性函數(shù)均為滿足Lipschitz條件的Lipschitz函數(shù),即
(11)
假設(shè)2不同部件不會同時發(fā)生故障。
假設(shè)3故障和擾動均有界,且故障的變化速率有界。
考慮2類故障:加性故障和乘性故障。相應(yīng)的故障模型為
uout=u+f
(12)
uout=(a+f)u
(13)
式中:u為正常信號;uout為故障后信號;f為故障參數(shù),可以是一個突變常數(shù),也可以是一個時變參數(shù);a為某正常參數(shù)。
則故障后的動力學(xué)子系統(tǒng)模型可以表示為
(14)
式中:uf=[ufx,ufy,ufz]T為飛輪故障向量。
觀察式(14)可知,系統(tǒng)中存在模型不確定性、擾動以及測量誤差等干擾,因此基于故障觀測器的檢測方法對于混雜在干擾中的微小故障檢測能力很弱。本文的工作即是提出一種基于神經(jīng)網(wǎng)絡(luò)干擾觀測器的方法對系統(tǒng)內(nèi)存在的干擾進行估計,并對故障觀測器進行干擾補償,提高故障觀測器的檢測能力。如圖1所示,衛(wèi)星姿態(tài)控制系統(tǒng)可以分為運動學(xué)子系統(tǒng)和動力學(xué)子系統(tǒng)2個部分。運動學(xué)子系統(tǒng)能反映陀螺和星敏感器間的關(guān)系,動力學(xué)子系統(tǒng)能反映陀螺和反作用飛輪間的關(guān)系。因此可以分別利用2 個子系統(tǒng)間的冗余關(guān)系對陀螺測量誤差和干擾力矩進行估計,進而達到補償故障觀測器的目的。
基于神經(jīng)網(wǎng)絡(luò)干擾觀測器的微小執(zhí)行器故障檢測系統(tǒng)框圖如圖2所示,q為姿態(tài)四元數(shù),r為檢測殘差。其中利用運動學(xué)子系統(tǒng)估計陀螺干擾;利用動力學(xué)子系統(tǒng)以及陀螺干擾估計結(jié)果,估計干擾力矩;最后用得到的2 個擾動估計值去補償故障檢測觀測器。
圖2 故障檢測觀測器框圖Fig.2 Block diagram of fault detection observer
考慮無故障情況下的運動學(xué)子系統(tǒng)狀態(tài)方程式(3),采用神經(jīng)網(wǎng)絡(luò)對陀螺的測量誤差進行估計,可以得到的干擾觀測器為
(15)
(16)
(17)
根據(jù)神經(jīng)網(wǎng)絡(luò)的逼近特性,存在一組理想權(quán)值和閾值使得b可以表示為
(18)
由式(5)和式(15)可以得到觀測誤差動態(tài)方程為
(19)
(20)
(21)
(22)
則得到最終的神經(jīng)網(wǎng)絡(luò)權(quán)值更新律為
(23)
定理1考慮如式(5)的動態(tài)系統(tǒng),構(gòu)造如式(15)的干擾觀測器,以式(19)定義觀測誤差。如果采用式(23)為神經(jīng)網(wǎng)絡(luò)的權(quán)值更新律,則觀測誤差一致有界,且神經(jīng)網(wǎng)絡(luò)權(quán)值估計誤差有界。
證明選擇如下正定Lyapunov函數(shù):
(24)
ATP+PA=-Q
(25)
式中:A為Hurwitz矩陣;Q為對稱正定矩陣。對式(24)進行微分可得
(26)
式中:g1(x1,u1)=φ(x1,u1)-A,由式(11)可知g1(x1,u1)滿足Lipschitz條件。
(27)
將式(11)和式(27)代入式(26),可以得到
(28)
(29)
式中:
(30)
證畢
考慮無故障情況下的動力學(xué)子系統(tǒng)狀態(tài)方程式(9),采用神經(jīng)網(wǎng)絡(luò)對陀螺的測量誤差進行估計,可以得到如下的干擾觀測器:
(31)
(32)
式中:隱層神經(jīng)元的傳遞函數(shù)σ2(·)與σ1(·)相同。同樣地,根據(jù)神經(jīng)網(wǎng)絡(luò)的逼近特性,存在一組理想權(quán)值和閾值使得d可以表示為
(33)
由式(9)和式(31)可以得到觀測誤差動態(tài)方程如下:
(34)
與式(23)類似,給出如下權(quán)值更新率:
(35)
定理2考慮如式(9)形式的動態(tài)系統(tǒng),構(gòu)造如式(31)的干擾觀測器,以式(34)定義觀測誤差。如果采用式(35)為神經(jīng)網(wǎng)絡(luò)的權(quán)值更新律,則觀測誤差一致有界,且神經(jīng)網(wǎng)絡(luò)權(quán)值估計誤差有界。
證明過程參照定理1。
為檢測執(zhí)行器的微小故障,在2個干擾觀測的基礎(chǔ)上,針對式(9)設(shè)計如下執(zhí)行器微小故障檢測觀測器:
(36)
得到的觀測誤差動態(tài)方程為
(37)
以下定理保證所設(shè)計故障觀測器的穩(wěn)定性。
定理3對于給定常數(shù)γ0,如果存在矩陣M和對稱正定矩陣Q滿足:
(38)
證明以運動學(xué)子系統(tǒng)故障檢測觀測器(36)為例,選擇如下正定Lyapunov函數(shù):
(39)
對其求導(dǎo)可得
(40)
(41)
證畢
衛(wèi)星姿態(tài)控制系統(tǒng)仿真框架如圖1所示。控制器采用非線性四元數(shù)反饋算法,比例系數(shù)Kp=[40,40,40]T,微分系數(shù)Kd=[1 000,1 000,1 000]T。衛(wèi)星的轉(zhuǎn)動慣量矩陣為IJ=diag{930,800,1 070} kg·m2;初始軌道角速度為ω0=[0,1.2×10-6,0]Trad/s;初始姿態(tài)角速度ω(0)=[0,0,7.3]T×10-5rad/s;初始姿態(tài)為Q0=[0.978 6,-0.070 4,-0.179 8,0.070 4]T;干擾力矩為τd=[Axsinωdt,Aysinωdt,Azsinωdt]T,其中Ax=1.4×10-5N·m,Ay=1.5×10-5N·m,Az=1.6×10-5N·m,ωd=0.02 rad/s;陀螺常值漂移為8.72×10-5rad/s,噪聲為高斯白噪聲N(0,10-7)。神經(jīng)網(wǎng)絡(luò)的參數(shù)選擇并沒有統(tǒng)一的公式可循,通常參考經(jīng)驗公式并根據(jù)具體問題進行粗略設(shè)定,然后根據(jù)網(wǎng)絡(luò)的表現(xiàn)情況進行優(yōu)化。本文略去了參數(shù)的優(yōu)化過程,直接給出了表現(xiàn)較好的一組參數(shù)。由式(16)可知,陀螺干擾觀測器采用3層神經(jīng)網(wǎng)絡(luò),其中輸入層4個神經(jīng)元,隱藏層14個神經(jīng)元,輸出層3個神經(jīng)元,學(xué)習(xí)率η1=η2=20,ρ1=ρ2=1×10-7;由式(32)可知,干擾力矩觀測器采用3層神經(jīng)網(wǎng)絡(luò),其中輸入層3個神經(jīng)元,隱藏層10個神經(jīng)元,輸出層3個神經(jīng)元,學(xué)習(xí)率η3=η4=10,ρ3=ρ4=1×10-6。
3.2.1 干擾估計
圖3~圖5分別為各軸受到的干擾力矩估計情況,ε為估計誤差。可以看出神經(jīng)網(wǎng)絡(luò)的估計誤差在100 s左右收斂到0附近,能夠?qū)Ω蓴_力矩進行很好的跟蹤估計。
圖6~圖8分別為各軸陀螺的測量誤差估計情況,bx、by、bz為各軸陀螺噪聲。可以看出相對力矩干擾觀測器,陀螺干擾觀測器的收斂速度很快,這是因為陀螺干擾觀測器中只有陀螺測量誤 差為干擾源,而力矩干擾觀測器中不僅在輸入端存在力矩干擾,還在輸出端存在測量干擾。
圖3 x軸干擾力矩估計Fig.3 Estimated disturbance torque in x axes
圖4 y軸干擾力矩估計Fig.4 Estimated disturbance torque in y axes
圖5 z軸干擾力矩估計Fig.5 Estimated disturbance torque in z axes
圖6 x軸陀螺噪聲估計Fig.6 Estimated noise of gyro in x axes
圖7 y軸陀螺噪聲估計Fig.7 Estimated noise of gyro in y axes
圖8 z軸陀螺噪聲估計Fig.8 Estimated noise of gyro in z axes
3.2.2 微小執(zhí)行器故障檢測
對3類不同類型故障的檢測結(jié)果如圖9~ 圖11所示。其中,圖9為對故障參數(shù)為uf1=圖9(a)、圖10(a)和圖11(a)的結(jié)果顯示,不加擾動補償?shù)那闆r下,除斜坡故障在幅值增大一定程度后可以被檢測外,其他2個故障都被掩蓋在擾動產(chǎn)生的殘差中。圖9(b)、圖10(b)和圖11(b)的結(jié)果顯示,進行擾動補償后,降低了檢測閾值,且3個故障均可及時檢測出來,其中前100 s為動態(tài)調(diào)整過程,不做討論。
圖9 故障案例1檢測殘差Fig.9 Detection residual of fault case 1
圖10 故障案例2檢測殘差Fig.10 Detection residual of fault case 2
圖11 故障案例3檢測殘差Fig.11 Detection residual of fault case 3
由3個不同故障案例的檢測結(jié)果來看,該方法解決了微小執(zhí)行器故障的檢測問題,但是不能解決故障的隔離、診斷問題,后續(xù)還需要進行故障隔離觀測器等工作。
1) 通過利用姿態(tài)控制系統(tǒng)內(nèi)冗余關(guān)系設(shè)計干擾觀測器,對故障檢測器進行擾動補償,從而實現(xiàn)了對微小執(zhí)行器故障的檢測,但是不能進行故障隔離等。
2) 干擾觀測器采用神經(jīng)網(wǎng)絡(luò)進行設(shè)計,證明了采用的自適應(yīng)權(quán)值更新律能夠保證觀測器的穩(wěn)定性;證明了擾動補償下的故障檢測觀測器的穩(wěn)定性。
3) 以3 軸穩(wěn)定衛(wèi)星姿態(tài)控制系統(tǒng)為例,仿真了本文方法對不同類型的微小執(zhí)行器故障的檢測能力,并與未進行擾動補償?shù)那闆r進行了對比。