管春洋,劉 洋,何 偉,郭玉勝
(北京自動化控制設(shè)備研究所,北京 100074)
組合導(dǎo)航系統(tǒng)利用慣導(dǎo)、衛(wèi)星導(dǎo)航接收機、氣壓高度表等多個硬件設(shè)備的信息,通過卡爾曼濾波器進行數(shù)據(jù)融合,實現(xiàn)長航時、高精度、高可靠性的導(dǎo)航[1]。
組合導(dǎo)航系統(tǒng)主要利用慣性導(dǎo)航系統(tǒng)和衛(wèi)星導(dǎo)航系統(tǒng)進行數(shù)據(jù)融合,其中衛(wèi)星導(dǎo)航接收機利用衛(wèi)星信號進行導(dǎo)航信息解算,容易受到環(huán)境或人為因素的干擾,導(dǎo)致組合導(dǎo)航系統(tǒng)輸出導(dǎo)航信息異常。國內(nèi)外學(xué)者對組合導(dǎo)航系統(tǒng)的自主完好性檢測算法及衛(wèi)星導(dǎo)航接收機的故障檢測算法進行了研究,設(shè)計了快照法,如最小二乘檢測、奇偶矢量檢測等方法,可以很好地檢驗突變故障[2-4];設(shè)計了自主完好性外推法,實現(xiàn)了對緩變故障的檢測;對于組合導(dǎo)航系統(tǒng)而言,設(shè)計了基于卡爾曼數(shù)據(jù)融合濾波器的卡方檢驗法[5-6]。上述方法均是從接收機或者數(shù)據(jù)融合濾波器的角度進行故障檢測[7-8],快照法存在無法檢測緩變故障的缺點,自主完好性外推方法存在故障檢出延遲和運算量大等缺點[9],卡爾曼濾波卡方檢驗法存在不能檢出緩變故障等缺點[10]。
本文提出了一種組合導(dǎo)航系統(tǒng)自主完好性檢測算法,在組合導(dǎo)航系統(tǒng)級利用氣壓高度輔助最小二乘檢測算法,對衛(wèi)星導(dǎo)航接收機突變和緩變故障進行檢測。利用組合導(dǎo)航系統(tǒng)卡方檢驗方法進行故障識別,若為突變故障,對故障進行隔離;若為緩變故障,組合導(dǎo)航系統(tǒng)切換為純慣性導(dǎo)航模式。該方案利用慣性導(dǎo)航、氣壓高度等冗余信息實現(xiàn)了對突變和緩變故障的檢測和隔離,無需增加傳感器,實現(xiàn)了組合導(dǎo)航系統(tǒng)在復(fù)雜環(huán)境下的高精度、長航時的導(dǎo)航定位。
衛(wèi)星導(dǎo)航接收機利用導(dǎo)航衛(wèi)星下發(fā)的電磁波信息進行定位和測速,衛(wèi)星導(dǎo)航接收機和導(dǎo)航衛(wèi)星都可能存在故障。常見的故障主要有衛(wèi)星上的電子故障、衛(wèi)星播發(fā)的星歷與時鐘模型錯誤、異常大氣層延時、多路徑及接收機故障等。在慣性/衛(wèi)星緊組合系統(tǒng)中,衛(wèi)星故障帶來的后果表現(xiàn)為測量偽距值包含有故障等效偏差,并且由于量測量偽距差的變化,影響了導(dǎo)航的最終結(jié)果。
欺騙式干擾信號可以正常地被衛(wèi)星導(dǎo)航接收機捕獲與跟蹤,并參與到衛(wèi)星導(dǎo)航接收機的定位解算中。通過更改星歷或者調(diào)整信號發(fā)射時間來達到干擾定位結(jié)果的目的。欺騙式干擾通常又分為生成式干擾與轉(zhuǎn)發(fā)式干擾,生成式干擾通過生成特定的衛(wèi)星導(dǎo)航信號來達到干擾定位結(jié)果的目的。而轉(zhuǎn)發(fā)式干擾則通過轉(zhuǎn)發(fā)真實的衛(wèi)星信號干擾偽距跟蹤結(jié)果來達到干擾定位結(jié)果的目的[11]。
組合導(dǎo)航系統(tǒng)采用最小二乘殘差法[12]對衛(wèi)星的偽距進行故障檢測,本文提出的氣壓高度輔助最小二乘殘差法實現(xiàn)了4顆星定位時的故障檢測,輸出定位結(jié)果的同時完成故障檢測;同時組合導(dǎo)航系統(tǒng)的故障檢測采用卡爾曼濾波殘差法檢驗[13],實現(xiàn)了對突變故障的識別。
利用氣壓高度傳感器修正后的氣壓高度進行衛(wèi)星導(dǎo)航接收機的故障檢測是可以滿足精度需求的。氣壓高度輔助下的衛(wèi)星導(dǎo)航接收機的故障檢測算法是利用最小二乘殘差法對接收機的自主完好性進行檢測,對觀測方程進行更改。
假設(shè)衛(wèi)星導(dǎo)航接收機觀測的觀測方程如式(1)所示,則狀態(tài)變量x的最小二乘解如式(2)所示。
y=Gx+ε
(1)
x=(GTG)-1GTy0
(2)
其中,G矩陣即為導(dǎo)航星座的雅克比矩陣,矩陣的最后一行為氣壓高度虛擬衛(wèi)星的位置矢量,具體形式如式(3)所示。
(3)
結(jié)合式(3)推導(dǎo)得到偽距殘差向量Δy如式(4)所示,其中S=I-G(GTG)-1GT為偽距殘差協(xié)因數(shù)矩陣。
Δy=y0-y
=(I-G(GTG)-1GT)ε
=Sε
(4)
由于矩陣G(GTG)-1GT的秩為4,進而可以推導(dǎo)得到
(5)
其中,n為可觀測衛(wèi)星的數(shù)目,由式(4) 、式(5) 可得偽距殘差Δy的平方和θ=ΔyT×Δy,如式(6)所示。
(6)
由以上推導(dǎo)再結(jié)合卡方分布的定義可知,若不存在故障衛(wèi)星,即偽距誤差服從正態(tài)分布,且滿足E(ε)=0時,則偽距最小二乘殘差的平方和θ的歸一化變量θ/σ2滿足以0為中心的自由度為n-4的χ2分布,其中σ2為偽距誤差的方差。
當(dāng)衛(wèi)星存在故障時,設(shè)故障所引起的偽距誤差矢量為b,如式(7)所示,其中,N為故障衛(wèi)星的數(shù)量,偽距殘差Δy改寫為式(8)所示。
(7)
Δy=S(ε0+b)
(8)
此時偽距誤差無法滿足E(ε)=0,則結(jié)合χ2分布的定義,并結(jié)合之前的推導(dǎo)可知,此時偽距殘差Δy的平方和θ的歸一化變量θ/σ2,滿足以λ為中心的自由度為n-4的χ2分布。
經(jīng)過上面的計算完成了基于最小二乘殘差法的氣壓輔助衛(wèi)星導(dǎo)航接收機的故障檢測,經(jīng)過分析可知,氣壓輔助下的故障檢測可以提高衛(wèi)星導(dǎo)航接收機故障檢測的冗余度。在衛(wèi)星導(dǎo)航接收機收到4顆星時即可進行故障檢測,當(dāng)收到5顆及以上的衛(wèi)星時就可以完成故障的排除,提高了衛(wèi)星導(dǎo)航接收機故障檢測的實用程度。在衛(wèi)星導(dǎo)航接收機可以定位時就可以進行故障檢測,提高了衛(wèi)星導(dǎo)航接收機導(dǎo)航信息的可靠性。
文獻[1]中提出了一種基于組合導(dǎo)航系統(tǒng)卡爾曼濾波殘差卡方檢驗法的故障檢測數(shù)據(jù)融合算法,該算法利用新息構(gòu)造故障檢測函數(shù)實現(xiàn)對故障的檢測。
將組合導(dǎo)航系統(tǒng)做分段線性化處理,得到如下的線性系統(tǒng)表達式:
xk=Φk/k-1xk-1+wk-1
yk=Hkxk+vk
(9)
式中:xk為n維狀態(tài)向量;Φk/k-1為狀態(tài)轉(zhuǎn)移矩陣;yk為m維量測向量;Hk為量測矩陣;wk-1、vk為相互獨立的白噪聲向量。組合導(dǎo)航系統(tǒng)的卡爾曼濾波殘差為:
rk=yk-yk/k-1=yk-Hkxk/k-1
(10)
式中:xk/k-1為狀態(tài)一步預(yù)測值。正常工作時,卡爾曼濾波殘差服從零均值高斯分布,其方差為:
=E[(yk-Hkxk/k-1)×(yk-Hkxk/k-1)T]
(11)
式中,Pk/k-1為一步預(yù)測方差陣;Rk為量測噪聲陣。
(12)
系統(tǒng)正常工作情況下,βk服從自由度為m的卡方分布,即βk~χ2(m)。通過選擇適當(dāng)?shù)恼`警概率PFA,可得到檢測門限值Td。檢測門限值Td與衛(wèi)星數(shù)n和允許的誤警率PFA有關(guān)。
(13)
根據(jù)χ2分布的概率密度曲線,設(shè)自由度為7,虛警門限PFA=0.01時,組合導(dǎo)航系統(tǒng)卡爾曼濾波卡方檢驗的概率密度函數(shù)如圖1所示,可以得到故障檢測門限為15.72。
卡爾曼濾波殘差卡方檢驗法可以有效地對偽距跳變式干擾進行檢測與識別,同時由于各個偽距觀測量相互獨立,在保證系統(tǒng)前一次沒有故障的前提下,還可以有效地對多顆故障進行識別。但是對于偽距緩變式干擾,該方法則無能為力。當(dāng)系統(tǒng)中存在偽距緩變式干擾時,偽距誤差會影響狀態(tài)預(yù)報值xk/k-1,狀態(tài)預(yù)報值會對誤差進行跟蹤,導(dǎo)致有數(shù)據(jù)融合,濾波器得到的新息值rk較小,無法對其進行故障檢測與識別。表1為故障檢測算法的對比。
表1 故障檢測算法對比
組合導(dǎo)航系統(tǒng)故障檢測算法是充分利用已有算法的優(yōu)點,結(jié)合緊組合導(dǎo)航系統(tǒng)運行的硬件基礎(chǔ)進行的故障檢測算法,設(shè)計了一種能夠在工程上實現(xiàn)的組合導(dǎo)航系統(tǒng)故障檢測和識別算法。故障檢測模塊采用氣壓輔助下的最小二乘殘差法,突變故障識別算法使用卡爾曼濾波殘差卡方檢驗法,保證故障識別的準確可靠;考慮到組合導(dǎo)航系統(tǒng)使用的實時性和硬件限制,基于自主完好性外推法的緩變故障識別方法在本組合導(dǎo)航系統(tǒng)上失去使用意義,當(dāng)檢出系統(tǒng)存在非突變故障時,組合導(dǎo)航系統(tǒng)切換導(dǎo)航模式,利用慣導(dǎo)系統(tǒng)進行純慣性導(dǎo)航。緊組合導(dǎo)航系統(tǒng)故障檢測算法流程如圖2所示。
根據(jù)上文分析,故障檢測模塊中的最小二乘檢測法可以較快地檢測出故障[14],并且具有檢出突變故障和緩變故障的能力。在故障消除或剔除后能夠及時報出系統(tǒng)無故障信號,不受先驗信息的干擾,實時利用當(dāng)前時刻的信息進行故障的檢測。所以最小二乘殘差法非常適合作為組合導(dǎo)航系統(tǒng)的故障檢測模塊。缺點是最小二乘殘差法需要5顆星才能檢出故障,6顆及以上才能識別故障。根據(jù)第2節(jié)的分析,在氣壓高度傳感器的輔助下,最小二乘殘差法在4顆星時就可檢出故障,衛(wèi)星導(dǎo)航接收機滿足定位條件就能進行故障檢測,極大地提高了組合導(dǎo)航輸出信息的可靠性。突變故障檢出模塊采用卡爾曼濾波器殘差卡方檢驗法,根據(jù)卡爾曼濾波器的相關(guān)理論,利用卡爾曼濾波器新息構(gòu)造的故障檢測識別模塊可以實時地識別出具體的衛(wèi)星故障,從而為故障剔除模塊提供信息。當(dāng)突變故障檢出某顆衛(wèi)星存在故障后,則將該衛(wèi)星剔除,然后繼續(xù)進行最小二乘檢測,保證進入數(shù)據(jù)融合濾波器的信息不存在故障。當(dāng)檢出非突變故障時,由于組合導(dǎo)航系統(tǒng)不具備剔除緩變故障的能力,為了保證導(dǎo)航信息的可靠性,則退出組合導(dǎo)航,利用慣導(dǎo)系統(tǒng)進行純慣性導(dǎo)航。
根據(jù)上文分析,結(jié)合組合導(dǎo)航系統(tǒng)常見的偽距突變故障和偽距緩變故障,利用最小二乘算法進行故障檢測,并將最小二乘作為故障檢出和故障消除的標志。利用組合導(dǎo)航系統(tǒng)卡爾曼濾波卡方檢驗識別具體偽距故障的衛(wèi)星,然后將故障剔除后重新利用最小二乘殘差檢測算法進行故障檢測,直至觀測量中無故障,保證組合導(dǎo)航數(shù)據(jù)融合濾波器不被故障污染。
1)偽距突變故障檢測和識別
利用組合導(dǎo)航系統(tǒng)實際收星數(shù)據(jù)進行復(fù)現(xiàn)仿真,組合導(dǎo)航系統(tǒng)全程收到7顆導(dǎo)航衛(wèi)星,故障條件設(shè)置如下:
突變故障1,計算次數(shù)10~50時,2號衛(wèi)星偽距跳變100m;
突變故障2,計算次數(shù)300~350時,2號衛(wèi)星偽距跳變200m;
突變故障3,計算次數(shù)600~620時,1號衛(wèi)星偽距跳變20m;
仿真結(jié)果如圖3所示。
從圖3中可以看出,當(dāng)組合導(dǎo)航系統(tǒng)偽距存在突變故障時,組合導(dǎo)航系統(tǒng)在偽距跳變處存在位置誤差較大的情況(50m左右),由此可見,偽距跳變對組合導(dǎo)航系統(tǒng)的導(dǎo)航定位影響較大。
根據(jù)圖4所示,當(dāng)系統(tǒng)存在仿真條件中設(shè)置的3個突變故障時,最小二乘殘差法及時送出檢測故障,并且在突變故障消除后,立刻消除檢測故障,能夠很好地檢出突變故障,并在故障消除后及時報出無故障。
根據(jù)圖5仿真結(jié)果可知,組合導(dǎo)航系統(tǒng)的卡爾曼濾波殘差卡方檢測在最小二乘殘差法檢出系統(tǒng)存在故障后,利用能夠及時識別出2號衛(wèi)星存在的2次較大的偽距突變故障和1號星存在1次較小的偽距突變故障。由此可見,卡爾曼濾波殘差卡方檢測能夠及時地識別出具體的衛(wèi)星偽距突變故障。
2)偽距緩變故障檢測
在1)突變故障檢測和識別的基礎(chǔ)上,在四號衛(wèi)星上添加緩變故障。
仿真條件設(shè)置:
突變故障1,計算次數(shù)10~50時,2號衛(wèi)星偽距跳變100m;
突變故障2,計算次數(shù)300~350時,2號衛(wèi)星偽距跳變200m;
突變故障3,計算次數(shù)600~620時,2號衛(wèi)星偽距跳變20m;
緩變故障1,計算次數(shù)400~450時,4號衛(wèi)星偽距緩變步長1m。
利用某組合導(dǎo)航系統(tǒng)機載試驗數(shù)據(jù)進行復(fù)現(xiàn)仿真,組合導(dǎo)航系統(tǒng)全程收到7顆GPS導(dǎo)航衛(wèi)星,并按照故障模式進行設(shè)置,仿真結(jié)果如圖6所示。
從圖6中可以看出,除去在3.1節(jié)中分析的對于突變故障的檢出結(jié)果,重點關(guān)注系統(tǒng)在400~450s的步長為1m的緩變故障,當(dāng)計算次數(shù)為412時,檢測門限為1.189,已經(jīng)超過檢出故障門限(檢測門限定位0.5,實際使用根據(jù)能夠接受的虛警率[15]進行計算得到);在計算次數(shù)為450時,故障消除,檢測門限立刻小于檢出故障門限??梢钥闯?,最小二乘殘差法可以較為及時地檢出系統(tǒng)的緩變故障,并且在緩變故障消除時能夠及時地消除故障標志。
通過圖7中的分析,在計算次數(shù)400~450s時的緩變故障,在緊組合導(dǎo)航系統(tǒng)卡爾曼濾波殘差卡方檢驗結(jié)果中可以看出,該緩變故障相對于檢出故障門限(檢測門限設(shè)為0.5,只保留高位值,檢測門限根據(jù)能夠接受的虛警率計算得到)還相差較多,不能夠滿足故障檢出的要求。因此,該方法不具備檢出偽距緩變故障的能力。
經(jīng)過上文最小二乘殘差檢驗法和卡爾曼濾波殘差卡方檢驗法對突變故障和緩變故障的檢測和識別理論分析及仿真試驗可以看出,最小二乘殘差檢測法對突變故障和緩變故障均有較好的檢測能力,并且在故障消除后能夠迅速消除故障報警??柭鼮V波殘差卡方檢驗對于突變故障具有很好的檢測能力,并能夠準確識別故障星,給組合導(dǎo)航系統(tǒng)剔除故障星提供依據(jù);但是該方法不具備對緩變故障的檢測和識別能力,根據(jù)故障檢測流程,當(dāng)組合導(dǎo)航系統(tǒng)最小二乘故障檢測檢測到導(dǎo)航系統(tǒng)存在故障后,組合導(dǎo)航系統(tǒng)卡爾曼濾波殘差卡方檢驗未識別出突變故障,組合導(dǎo)航系統(tǒng)退出組合導(dǎo)航狀態(tài),轉(zhuǎn)入純慣性導(dǎo)航狀態(tài),當(dāng)最小二乘故障檢測算法預(yù)警消除后,重新進入組合導(dǎo)航狀態(tài)。
針對現(xiàn)有的快照法故障檢測算法和自主完好性檢測算法進行優(yōu)缺點分析,并結(jié)合組合導(dǎo)航系統(tǒng)外部故障的機理,從偽距跳變和偽距緩變方向入手,提出了一種能夠利用氣壓高度輔助下的最小二乘殘差法檢測偽距跳變和偽距緩變的檢測算法,并利用組合導(dǎo)航系統(tǒng)卡爾曼濾波殘差法識別具體的突變故障算法模塊。當(dāng)無法完全剔除檢出的故障時,組合導(dǎo)航系統(tǒng)及時切換成純慣性導(dǎo)航狀態(tài),充分利用SINS系統(tǒng)不受干擾的優(yōu)點,將純慣性導(dǎo)航作為組合導(dǎo)航系統(tǒng)存在故障時的最可靠的導(dǎo)航方式,當(dāng)存在未能識別的故障時,提高了組合導(dǎo)航系統(tǒng)在發(fā)生突變故障和緩變故障時的完好性。