,,,
(航天工程大學(xué) 航天信息學(xué)院,北京 101416)
航天器是一種結(jié)合多個(gè)領(lǐng)域尖端技術(shù)的大型復(fù)雜系統(tǒng),其對(duì)國(guó)民經(jīng)濟(jì)、科技等活動(dòng)有著重要的影響。航天器所處的特殊空間環(huán)境不僅使得其面臨的故障情況十分復(fù)雜,同時(shí)難以進(jìn)行診斷和維修。因此,開(kāi)展航天器的故障研究具有重要的社會(huì)經(jīng)濟(jì)效益和工程價(jià)值[1]。
基于解析模型的方法是目前研究最為活躍的方法[2-3]。文獻(xiàn)[4-5]研究了魯棒觀測(cè)器,設(shè)計(jì)產(chǎn)生對(duì)擾動(dòng)解耦的觀測(cè)器殘差,但是無(wú)法完全解耦。與魯棒觀測(cè)器類(lèi)似,文獻(xiàn)[6-8]提出的學(xué)習(xí)觀測(cè)器雖然對(duì)空間干擾和測(cè)量噪聲具有魯棒性,但是也沒(méi)有完全與故障殘差解耦。文獻(xiàn)[9-10]研究了自適應(yīng)觀測(cè)器方法,通過(guò)對(duì)故障的自適應(yīng)估計(jì)使得觀測(cè)結(jié)果對(duì)擾動(dòng)魯棒,但是觀測(cè)器設(shè)計(jì)復(fù)雜,增益矩陣計(jì)算困難。
神經(jīng)網(wǎng)絡(luò)具有優(yōu)秀的非線性建模能力,因此被用于故障診斷。文獻(xiàn)[11-12]提出應(yīng)用神經(jīng)網(wǎng)絡(luò)對(duì)系統(tǒng)中的非線性部分進(jìn)行估計(jì),放寬了對(duì)系統(tǒng)的匹配條件,但是沒(méi)有充分利用系統(tǒng)的結(jié)構(gòu)知識(shí);文獻(xiàn)[13-15]提出了應(yīng)用神經(jīng)網(wǎng)絡(luò)直接估計(jì)執(zhí)行器故障的方法,沒(méi)有考慮陀螺故障的情況。
為了實(shí)現(xiàn)對(duì)陀螺故障的檢測(cè)、隔離與估計(jì),在利用模型知識(shí)的同時(shí)降低觀測(cè)器的設(shè)計(jì)難度,本文提出一種基于神經(jīng)網(wǎng)絡(luò)觀測(cè)器的陀螺故障診斷方法,利用系統(tǒng)內(nèi)的冗余關(guān)系實(shí)現(xiàn)對(duì)陀螺故障的檢測(cè)和隔離,同時(shí)利用神經(jīng)網(wǎng)絡(luò)的萬(wàn)能逼近性實(shí)現(xiàn)對(duì)故障的估計(jì)。
考慮如圖1所示的三軸穩(wěn)定衛(wèi)星姿態(tài)控制系統(tǒng)。衛(wèi)星姿態(tài)控制系統(tǒng)可以分為運(yùn)動(dòng)學(xué)子系統(tǒng)和動(dòng)力學(xué)子系統(tǒng)[16]。運(yùn)動(dòng)學(xué)子系統(tǒng)包括陀螺、星敏感器和運(yùn)動(dòng)學(xué)過(guò)程;動(dòng)力學(xué)子系統(tǒng)包括反作用飛輪、陀螺和動(dòng)力學(xué)過(guò)程??刂坡蔀樗脑獢?shù)反饋控制律。僅考慮陀螺出現(xiàn)故障的情況。
圖1 衛(wèi)星姿態(tài)控制系統(tǒng)
由四元數(shù)描述的姿態(tài)運(yùn)動(dòng)學(xué)方程為[16]:
(1)
(2)
選取x1=[q0,q1,q2,q3]T為狀態(tài)變量,則姿態(tài)運(yùn)動(dòng)學(xué)方程可以寫(xiě)成如下所示的狀態(tài)空間形式:
(3)
其中:u1=[ωx,ωy,ωz]T為運(yùn)動(dòng)學(xué)輸入;y1=[q0,q1,q2,q3]T為運(yùn)動(dòng)學(xué)輸出;φ(x1,u1)為運(yùn)動(dòng)學(xué)非線性函數(shù)。
(4)
考慮陀螺的測(cè)量誤差,則運(yùn)動(dòng)學(xué)子系統(tǒng)觀測(cè)方程可以表達(dá)如下:
(5)
其中:b=[bx,by,bz]T為陀螺的測(cè)量誤差,包括常值漂移和隨機(jī)噪聲。
將衛(wèi)星本體看作剛體,則由剛體運(yùn)動(dòng)的動(dòng)量矩公式可得到如下的衛(wèi)星姿態(tài)動(dòng)力學(xué)方程[16]:
(6)
其中:H為衛(wèi)星的角動(dòng)量;τ=(τx,τy,τz)T為衛(wèi)星本體受到的合力矩在本體坐標(biāo)系中的分量;ω=[ωx,ωy,ωz]T為衛(wèi)星本體的角速度在本體坐標(biāo)系下的分量;
(7)
角動(dòng)量H可以表示為H=Iω,其中I為衛(wèi)星的轉(zhuǎn)動(dòng)慣量矩陣,通常情況下,衛(wèi)星的慣性主軸與衛(wèi)星本體坐標(biāo)系重合時(shí),則有I=dig{Ix,Iy,Iz}??紤]衛(wèi)星在空間環(huán)境中受到的干擾力矩,則式(5)可以寫(xiě)做如下形式:
(8)
其中:τc=(τcx,τcy,τcz)T為執(zhí)行器產(chǎn)生的控制力矩;τd=(τdx,τdy,τdz)T為衛(wèi)星受到的干擾力矩。
選取x2=[ωx,ωy,ωz]T為狀態(tài)變量,則動(dòng)力學(xué)子系統(tǒng)可以寫(xiě)成如下所示的狀態(tài)空間形式:
(9)
其中:u2=[τcx,τcy,τcz]T為動(dòng)力學(xué)子系統(tǒng)的輸入;y2=[ωx,ωy,ωz]T為動(dòng)力學(xué)子系統(tǒng)的輸出;d=[τdx,τdy,τdz]T為干擾力矩;b=[bx,by,bz]T為陀螺的測(cè)量誤差;φ(x2)為動(dòng)力學(xué)子系統(tǒng)的非線性函數(shù)。
(10)
系統(tǒng)的輸入矩陣、輸出矩陣和擾動(dòng)分布矩陣如下:
為方便分析,對(duì)系統(tǒng)做以下合理假設(shè)。
假設(shè)1:假設(shè)衛(wèi)星工作在小角度機(jī)動(dòng)狀態(tài)下,因此式(3)和式(9)中的非線性函數(shù)均為滿(mǎn)足Lipschitz條件的Lipschitz函數(shù),即:
(11)
假設(shè)2:不同部件不會(huì)同時(shí)發(fā)生故障。
假設(shè)3:故障和擾動(dòng)均有界,且故障的變化速率有界。
其中,假設(shè)1是采用觀測(cè)器方法的前提;假設(shè)2通常情況下是可以滿(mǎn)足的,因?yàn)轱w輪、陀螺和星敏感器為獨(dú)立部件,同時(shí)故障的概率較??;假設(shè)3反應(yīng)的是實(shí)際系統(tǒng)是能量有限的,不會(huì)出現(xiàn)變化率為無(wú)窮大的突變。
觀察式(5)和式(9),陀螺的測(cè)量值為運(yùn)動(dòng)學(xué)方程的輸入和動(dòng)力學(xué)方程的輸出。因此運(yùn)動(dòng)學(xué)子系統(tǒng)和動(dòng)力學(xué)子系統(tǒng)間存在冗余關(guān)系,運(yùn)動(dòng)學(xué)子系統(tǒng)能反映陀螺和星敏感器間的關(guān)系,動(dòng)力學(xué)子系統(tǒng)能反應(yīng)陀螺和反作用飛輪間的關(guān)系。利用這種冗余關(guān)系可以對(duì)陀螺故障進(jìn)行檢測(cè)和隔離。
本文僅考慮加性故障,故障模型如下:
uout=u+f
(12)
其中:u為正常信號(hào);uout為故障后信號(hào);f為故障參數(shù),可以是一個(gè)突變常數(shù),也可以是一個(gè)時(shí)變參數(shù)。則故障后的衛(wèi)星姿態(tài)控制系統(tǒng)觀測(cè)模型為:
(13)
(14)
各符號(hào)意義與前文一致。
基于解析模型的觀測(cè)器方法通常需要分別設(shè)計(jì)故障檢測(cè)觀測(cè)器和故障估計(jì)觀測(cè)器,同時(shí)需要設(shè)計(jì)復(fù)雜的解耦方法,使得設(shè)計(jì)的觀測(cè)器只對(duì)特定故障敏感。為簡(jiǎn)化設(shè)計(jì)過(guò)程,在一定模型知識(shí)的前提下采用神經(jīng)網(wǎng)絡(luò)對(duì)故障直接進(jìn)行估計(jì)。根據(jù)1.2節(jié)的分析,運(yùn)動(dòng)學(xué)子系統(tǒng)和動(dòng)力學(xué)子系統(tǒng)間存在著冗余關(guān)系,分別針對(duì)運(yùn)動(dòng)學(xué)子系統(tǒng)和動(dòng)力學(xué)子系統(tǒng)設(shè)計(jì)陀螺故障觀測(cè)器,根據(jù)冗余關(guān)系就可以避免其他故障對(duì)檢測(cè)結(jié)果的影響。
考慮無(wú)故障下運(yùn)動(dòng)學(xué)子系統(tǒng)的觀測(cè)方程式(3)以及陀螺故障情況下的運(yùn)動(dòng)學(xué)子系統(tǒng)狀態(tài)方程式(13),采用神經(jīng)網(wǎng)絡(luò)對(duì)陀螺故障參數(shù)進(jìn)行估計(jì),可以得到如下的故障觀測(cè)器:
(15)
(16)
(17)
根據(jù)神經(jīng)網(wǎng)絡(luò)的逼近特性,存在一組理想權(quán)值和閾值使得f可以表示為如下形式:
(18)
由式(13)和式(15)可以得到觀測(cè)誤差動(dòng)態(tài)方程如下:
(19)
神經(jīng)網(wǎng)絡(luò)觀測(cè)器設(shè)計(jì)的關(guān)鍵之處在于尋找合適的神經(jīng)網(wǎng)絡(luò)權(quán)值更新律和觀測(cè)器增益使得觀測(cè)器能夠穩(wěn)定收斂,即觀測(cè)誤差應(yīng)漸近趨向于零。參照經(jīng)典的誤差反向傳播算法,給出如下的神經(jīng)網(wǎng)絡(luò)權(quán)值更新律:
(20)
(21)
(22)
則得到最終的神經(jīng)網(wǎng)絡(luò)權(quán)值更新律為:
(23)
定理1:考慮如式(13)形式的動(dòng)態(tài)系統(tǒng),構(gòu)造如式(15)的故障觀測(cè)器,以式(19)定義觀測(cè)誤差。對(duì)于給定常數(shù)γ0,如果存在矩陣M和對(duì)稱(chēng)正定矩陣Q滿(mǎn)足:
(24)
觀測(cè)器增益選為L(zhǎng)1= -MC1-1,采用式(23)為神經(jīng)網(wǎng)絡(luò)的權(quán)值更新律,則觀測(cè)誤差一致有界,且神經(jīng)網(wǎng)絡(luò)權(quán)值估計(jì)誤差有界。
證明:選擇如下正定Lyapunov函數(shù):
(25)
(26)
注意到以下不等式成立:
(27)
將式(11)和式(27)代入式(26)得:
(28)
(29)
證畢。
定理1:給出了保證神經(jīng)網(wǎng)絡(luò)觀測(cè)器穩(wěn)定的觀測(cè)器增益選取方法,具體設(shè)計(jì)時(shí)可以通過(guò)求解定理1內(nèi)式(35)給出的線性矩陣不等式來(lái)確定觀測(cè)器增益的值。需要注意的是神經(jīng)網(wǎng)絡(luò)參數(shù)的選擇,由于神經(jīng)網(wǎng)絡(luò)的黑箱性質(zhì),通常參數(shù)的選擇依靠經(jīng)驗(yàn)進(jìn)行調(diào)節(jié),基本原則是在一定精度情況下使神經(jīng)元數(shù)量盡可能的少;當(dāng)學(xué)習(xí)曲線震蕩變大時(shí),減小學(xué)習(xí)率。
考慮陀螺故障情況下的動(dòng)力學(xué)子系統(tǒng)狀態(tài)方程式(14),采用神經(jīng)網(wǎng)絡(luò)對(duì)陀螺故障參數(shù)進(jìn)行估計(jì),可以得到如下的故障觀測(cè)器:
(30)
(31)
根據(jù)神經(jīng)網(wǎng)絡(luò)的逼近特性,存在一組理想權(quán)值和閾值使得f可以表示為如下形式:
(32)
由式(14)和式(30)可以得到觀測(cè)誤差動(dòng)態(tài)方程如下:
(33)
與2.1節(jié)相同,需要尋找合適的神經(jīng)網(wǎng)絡(luò)權(quán)值更新律和觀測(cè)器增益使得設(shè)計(jì)的觀測(cè)器能夠穩(wěn)定收斂。與式(23)類(lèi)似的給出如下權(quán)值更新律:
(34)
定理2:考慮如式(14)形式的動(dòng)態(tài)系統(tǒng),構(gòu)造如式(30)的故障觀測(cè)器,以式(33)定義觀測(cè)誤差。對(duì)于給定常數(shù)γ0,如果存在矩陣M和對(duì)稱(chēng)正定矩陣Q滿(mǎn)足:
(35)
觀測(cè)器增益選為L(zhǎng)1= -MC1-1,采用式(34)為神經(jīng)網(wǎng)絡(luò)的權(quán)值更新律,則觀測(cè)誤差一致有界,且神經(jīng)網(wǎng)絡(luò)權(quán)值估計(jì)誤差有界。
證明過(guò)程同定理1。定理2的作用與定理1相同,都是給出了保證神經(jīng)網(wǎng)絡(luò)觀測(cè)器穩(wěn)定的條件,參數(shù)的求取也是類(lèi)似的,求取式(35)的線性矩陣不等式即可。兩者的區(qū)別在于擾動(dòng)在系統(tǒng)狀態(tài)方程的不同位置,因此對(duì)于觀測(cè)誤差的影響不同,最終保持觀測(cè)器穩(wěn)定的邊界條件也有所區(qū)別。
通?;谟^測(cè)器的故障診斷方法通過(guò)產(chǎn)生殘差進(jìn)行故障診斷,本文中則直接以神經(jīng)網(wǎng)絡(luò)的故障估計(jì)值為故障診斷依據(jù)。由式(13)、式(14)、式(15)和式(30)可以看出,當(dāng)存在執(zhí)行器故障和星敏感器故障時(shí),會(huì)對(duì)陀螺故障估計(jì)結(jié)果形成干擾,由單一的觀測(cè)器結(jié)果不能判斷故障的準(zhǔn)確位置。由1.2節(jié)可知,陀螺的測(cè)量值為運(yùn)動(dòng)學(xué)方程的輸入和動(dòng)力學(xué)方程的輸出,即運(yùn)動(dòng)學(xué)子系統(tǒng)和動(dòng)力學(xué)子系統(tǒng)存在冗余關(guān)系。如果發(fā)生星敏感器故障,則會(huì)影響運(yùn)動(dòng)學(xué)子系統(tǒng)觀測(cè)器的估計(jì)值,但不會(huì)影響動(dòng)力學(xué)子系統(tǒng)觀測(cè)器;如果發(fā)生執(zhí)行器故障,則會(huì)影響動(dòng)力學(xué)子系統(tǒng)觀測(cè)器的估計(jì)值,但不會(huì)影響運(yùn)動(dòng)學(xué)子系統(tǒng)觀測(cè)器。利用這一冗余關(guān)系容易得到如下的故障決策邏輯:
(36)
由式(19)和式(33)可以看出觀測(cè)器受到擾動(dòng)力矩和陀螺測(cè)量誤差的影響,同時(shí)由于神經(jīng)網(wǎng)絡(luò)的估計(jì)存在誤差,當(dāng)沒(méi)有故障時(shí),神經(jīng)網(wǎng)絡(luò)的輸出應(yīng)為擾動(dòng)、估計(jì)誤差共同作用下的穩(wěn)定小值;當(dāng)發(fā)生故障時(shí),神經(jīng)網(wǎng)絡(luò)的輸出為故障的估計(jì)值。因此該方法只能估計(jì)大于擾動(dòng)干擾的陀螺故障。閾值的選取取決于擾動(dòng)對(duì)系統(tǒng)的干擾情況。
仿真所需參數(shù)如下:衛(wèi)星的慣量矩陣為I=diag{930,800,1070}kg·m2;初始軌道角速度為ω0=7.3×10-5rad/s;初始姿態(tài)角速度ω(0)=[0,0,7.3]T×10-5rad/s;初始姿態(tài)為Q0=[0.9786,-0.0704,-0.1798,0.0704]T;干擾力矩為τd=[Axsinωdt,Aysinωdt,Azsinωdt]T,其中Ax=1.4e-5N·m,Ay=1.5e-5 N·m,Az=1.6e-5 N·m,ωd=0.02 rad/s;陀螺常值漂移為8.72e-5 rad/s,噪聲為高斯白噪聲N(0,10-7);控制器參數(shù)為Kp=[40,40,40]T,Kd=[1000,1000,1000]T。由式(16),基于運(yùn)動(dòng)學(xué)的故障觀測(cè)器采用3層神經(jīng)網(wǎng)絡(luò),其中輸入層4個(gè)神經(jīng)元,隱藏層14個(gè)神經(jīng)元,輸出層3個(gè)神經(jīng)元,學(xué)習(xí)率η1=η2=20,ρ1=ρ2=1e-7;由式(31),基于動(dòng)力學(xué)的故障觀測(cè)器采用3層神經(jīng)網(wǎng)絡(luò),其中輸入層3個(gè)神經(jīng)元,隱藏層10個(gè)神經(jīng)元,輸出層3個(gè)神經(jīng)元,學(xué)習(xí)率η3=η4=10,ρ3=ρ4=1e-6。
系統(tǒng)仿真長(zhǎng)度為400 s,步長(zhǎng)為0.01 s,設(shè)置故障時(shí)刻為200 s。以X軸故障為例,分別設(shè)置3個(gè)故障案例。案例1為陀螺常值漂移故障f=0.0001 rad/s;案例2為執(zhí)行器恒差故障f=0.001 N;案例3為星敏感器卡死故障,輸出固定為Q=[1,0,0,0]。
根據(jù)無(wú)故障情況下的估計(jì)情況,設(shè)定閾值為ε1=1e-4,ε2=6e-5;δ1=2.5e-4,δ2=1.5e-4。
圖2為案例1故障診斷結(jié)果,其中圖2(a)為基于運(yùn)動(dòng)學(xué)的故障觀測(cè)器估計(jì)結(jié)果;圖2(b)為基于動(dòng)力學(xué)的故障觀測(cè)器估計(jì)結(jié)果。根據(jù)式(36)可以確定發(fā)生陀螺故障,故障估計(jì)值的相對(duì)變化大小與故障值近乎相同。
圖2 案例1故障診斷結(jié)果
圖3為案例2故障診斷結(jié)果,其中圖3(a)為基于運(yùn)動(dòng)學(xué)的故障觀測(cè)器估計(jì)結(jié)果;圖3(b)為基于動(dòng)力學(xué)的故障觀測(cè)器估計(jì)結(jié)果。根據(jù)式(36)可以確定發(fā)生執(zhí)行器故障。
圖3 案例2故障診斷結(jié)果
圖4為案例3故障診斷結(jié)果,其中圖4(a)為基于運(yùn)動(dòng)學(xué)的故障觀測(cè)器估計(jì)結(jié)果;圖4(b)為基于動(dòng)力學(xué)的故障觀測(cè)器估計(jì)結(jié)果。根據(jù)式(36)可以確定發(fā)生星敏感器故障。
圖4 案例3故障診斷結(jié)果
由3個(gè)仿真案例可以看出,在檢測(cè)到陀螺故障的前提下,由兩個(gè)觀測(cè)器估計(jì)結(jié)果的相對(duì)變化情況即可得到故障程度的估計(jì),后續(xù)可以考慮采用kalman濾波等信息融合算法對(duì)兩個(gè)觀測(cè)器的估計(jì)結(jié)果進(jìn)行最優(yōu)化估計(jì),以便減少噪聲的影響。
1)利用運(yùn)動(dòng)學(xué)子系統(tǒng)與動(dòng)力學(xué)子系統(tǒng)特的冗余關(guān)系,設(shè)計(jì)了陀螺故障檢測(cè)和隔離的邏輯,實(shí)現(xiàn)了對(duì)陀螺故障的估計(jì)。
2)觀測(cè)器采用神經(jīng)網(wǎng)絡(luò)與模型相結(jié)合的方法設(shè)計(jì),與一般觀測(cè)器相比有更高的設(shè)計(jì)裕量,但是算法運(yùn)算量較大,實(shí)時(shí)性較弱。
3)以三軸穩(wěn)定衛(wèi)星姿態(tài)控制系統(tǒng)為例,仿真結(jié)果表明所提方法的故障診斷能力。