盧 丹 趙崴震 鐘倫瓏
(中國民航大學天津市智能信號與圖像處理重點實驗室 天津 300300)
全球導航衛星系統(Global Navigation Satellite System, GNSS)的定位精度高和實時性好等優點使其在民航航行新技術中扮演著重要角色[1]。然而,GNSS信號功率低和民用粗碼結構公開等因素導致其極易受到欺騙式干擾的影響[2,3]。欺騙式干擾使用假冒的衛星信號,致使機載接收機生成錯誤的定位結果,這嚴重影響了飛機的飛行安全。軟件無線電技術(Software Defined Radio, SDR)與硬件平臺的發展使得個人生成模擬GNSS信號將更加容易[4,5],未來蓄意破壞者對目標用戶進行有意干擾的頻率將大大增加。GNSS欺騙逐漸成為不容忽視的威脅。
針對欺騙式干擾,主要有信號功率監視[6]、密碼認證[7-9]、天線陣列處理[10,11]和使用輔助導航信息[12]等檢測方式。慣性導航系統(Inertial Navigation System, INS)是機載自主式導航設備,不受無線電信號的干擾,與GNSS有較高的互補性,是檢測機載GNSS欺騙最常用的輔助導航工具[13,14]。基于卡爾曼濾波新息序列的欺騙檢測算法,不需要對基礎設施進行修改,也不需要增加額外的設備,利用飛機上已有的INS/GNSS數據即可實現檢測,便于飛行過程中使用[15]。欺騙式干擾會導致INS/GNSS系統量測值發生幅值較大的階躍變化,此時新息序列的均值不為0,通過該新息序列構造的卡方檢驗統計量會超過閾值,從而檢測到欺騙式干擾的存在[16]。也就是說,卡方檢驗算法有意義的條件是構成卡方檢驗統計量的新息序列的均值能夠在存在欺騙式干擾的情況下始終不為0。然而,當量測值突變幅度保持不變時,卡爾曼濾波的估計值和一步預測值會由于欺騙量測值的修正而逐漸和量測值“一致”起來,新息序列均值重新歸0,檢驗統計量重新回到閾值之下,卡方檢測算法失效,即使后面存在欺騙,檢測算法也無法通過統計量與閾值的關系進行判斷。因此,INS/GNSS系統無法依據傳統卡方檢測算法來判斷給出的定位信息是否正確。另外,以上使用輔助導航信息進行欺騙檢測的方法大多局限于INS/GNSS組合方式,并沒有考慮到機載多導航源這一特點。
機載測距機(Distance Measuring Equipment,DME)是一種由地面應答機和機載詢問機兩部分組成的無線電測距導航系統。該系統通過測量脈沖信號在兩者之間的傳播時間來獲取斜距信息,進而確定飛機的3維位置[17]。GNSS欺騙信號的功率比真實GNSS信號功率略高且在接收機熱噪聲下,DME信號的功率遠高于接收機熱噪聲,因此DME系統不會受到欺騙式干擾的影響[18]。本文使用聯邦卡爾曼濾波進行INS,GNSS和DME的數據融合,引入融合后的INS/DME數據參與構建欺騙檢驗統計量。當機載GNSS欺騙達到一定程度時,本文算法能夠給出較為準確的欺騙持續時間。本文進一步將所設計的算法應用于組合導航系統中,得到了正確的定位信息,最后通過仿真實驗對所提算法的有效性進行了驗證。
本節分別給出了松組合方式下INS/GNSS系統和INS/DME系統的卡爾曼濾波的狀態方程和量測方程,并對欺騙式干擾環境下的INS/GNSS量測方程進行量化分析,簡要說明了傳統檢測算法的失效原因。
使用導航系原點固定的INS直接輸出北、東和下3個方向的位置信息,以INS的誤差參數作為狀態量,得到卡爾曼濾波的狀態方程為



變,而此時的統計量會再次超過閾值。因此,當統計量第2次超過閾值后,不一定就是由于欺騙結束而導致,進而說明,傳統算法無法依據統計量超過閾值的次數來判斷欺騙是否結束。也就是說,傳統算法存在檢測不到欺騙持續時間的局限性。
本文主要由傳感器模塊、欺騙檢測模塊和定位解算模塊構成,如圖1所示。傳感器模塊提供檢測所必需的INS, GNSS和DME位置信息。欺騙檢測模塊給出了基于重構新息序列的有限記憶卡方檢測算法的構造過程并證明了該方法的可行性。在此基礎上,本文進一步利用DME數據,給出定位解算模塊。該模塊能夠在存在GNSS欺騙的情況下提供正確的飛行引導。下面對新的檢測算法進行詳細介紹。

圖1 新的檢測算法原理圖



在式(13)的基礎上進一步構造檢驗統計量,用于實現對欺騙開始和結束時間的較為準確的獲取。下面給出有限記憶檢驗統計量的具體構造過程和相關的判決準則。


反之,則不存在欺騙式干擾。使用基于重構新息序列的有限記憶卡方檢驗統計量能夠較為準確地判斷欺騙的開始和結束,為使用GNSS還是DME進行準確的飛行引導提供了判斷依據。
根據2.2節的分析可知,新息序列的均值是否為0,直接決定了后續構造的檢驗統計量能否檢測到欺騙。下面給出新的檢測算法的有效性證明。
將式(12)代入式(11),對新的量測值進行化簡,得到




本節通過仿真來驗證新算法的有效性。模擬一段時間為180 s的直線飛行軌跡,初始位置為北緯40°,東經116°,高度1000 m。該實驗使用GNSS模擬器生成GNSS信號,然后用軟件接收機接收得到GNSS的位置信息。按照實際應用中對INS傳感器精度的要求,設置陀螺儀隨機噪聲和加速度計隨機噪聲分別為0.07 °/h2和3 mg,設置陀螺儀和加速度計的1階馬爾可夫過程噪聲分別為0.08 °/h2和12 mg,設置馬爾可夫過程的相關時間為3600 s。根據真實DME測量精度,設置其測量誤差為180 m。
本文設置欺騙的開始時間和結束時間分別為第40 s和第141 s。默認使用的欺騙信號在北、東、地3個方向上引起的偏差相同,以東方向位置誤差為例,如圖2所示。由圖2可知,如果接收機接收真實GNSS信號,則接收機解算出來的位置誤差均值始終為0。如果軟件接收機從第40 s開始接收欺騙信號,可以看到,在第40~140 s這一時間段內,接收機解算的位置誤差均值為300 m。由此說明,接收機接收欺騙信號解算的位置與接收真實GNSS信號解算位置存在300 m的偏差。
使用傳統瞬時卡方算法對圖2的欺騙場景進行檢測,如圖3所示。由圖3可以看到,傳統算法在第40 s超過閾值而報警,但在第53 s之后,傳統算法的檢驗統計量重新回到閾值之下。第53~140 s這一時間段內,雖然存在GNSS欺騙但不會出現警報,直到第141 s欺騙結束引起量測值第2次發生突變,檢驗統計量再次超過閾值而告警。由此不難得出,傳統算法給出的統計量與閾值的關系不能用來判斷欺騙是否結束。

圖2 接收機有、無欺騙的東向位置誤差

圖3 基于傳統新息序列的瞬時卡方檢測算法
在相同的實驗條件下,使用本文設計的算法對圖2的欺騙場景進行檢測,如圖4所示。滑動窗口的長度N設置為10,有限記憶卡方檢驗統計量在第41 s超過閾值而發出警報,表明該算法檢測到了欺騙式干擾的存在。在第149 s檢驗統計量重新回到閾值之下,表明本文算法檢測到了GNSS欺騙結束。由此可知,新的檢測算法可以依靠統計量與閾值的關系來判斷欺騙的開始和結束。

圖4 基于重構新息序列的有限記憶卡方檢測算法
圖5分別給出了INS/GNSS系統位置誤差、INS/DME系統定位誤差和本文算法的誤差曲線,其中3個子圖分別表示北、東、地3個方向。由圖可知,在沒有欺騙式干擾時,INS/GNSS系統的誤差曲線均值為0。第40~141 s這一時間段內,GNSS欺騙導致INS/GNSS系統的誤差曲線被帶到0均值以外。無論是否存在GNSS欺騙,INS/DME系統誤差曲線始終保持0均值。然而,DME系統本身的定位誤差遠遠大于GNSS,從而導致INS/DME的定位誤差大于INS/GNSS。當本文所提的檢測算法沒有超過閾值時,使用INS/GNSS/DME作為組合導航系統的定位解。當檢測到GNSS欺騙后,本文的定位算法立刻停止GNSS參與系統定位,因此紅色的誤差曲線能夠始終保持0均值的統計規律。在GNSS系統隔離期間,本文的定位算法實質上就是INS/DME,組合導航系統的定位精度會發生下降。然而,無論是否存在欺騙式干擾,本文給出的定位方案都優于單一使用INS/GNSS或INS/DME。

圖5 組合導航系統位置誤差
下面分析不同DME測量精度下,欺騙引起的位置偏差對新算法檢測概率的影響。接收機分別接收不同的欺騙信號,使其解算位置分別偏離真實GNSS位置20 m, 25 m, 30 m直到100 m。在存在GNSS欺騙的時間段內,如果出現檢驗統計量超過閾值的情況,則視該次實驗檢測到GNSS欺騙。進行1000次蒙特卡羅仿真,統計傳統算法和本文算法檢測到欺騙的次數,如圖6所示。由圖6可知,DME的定位精度越高,能夠檢測到的位置偏差量越小,檢測概率越高。如果DME的測量誤差為20 m,當3個方向都偏離20 m時,本文算法的檢測概率就達到100%。相同實驗條件下,傳統算法需要當3個方向都偏離70 m時檢測概率才能達到100%。由此說明,如果未來DME的定位精度提高或者存在其他定位精度更高的輔助導航源,所提算法都將有比現在更好的檢測效果。

圖6 不同DME測量誤差下本文算法的檢測概率
上面實驗提到,新算法的滑動窗口長度設置為10,下面給出N= 10 的選取依據。N的選取需要綜合考慮欺騙引起的位置偏差量、漏警概率和時間延遲量3個因素。接收機分別接收不同的欺騙信號,使其解算位置分別偏離真實GNSS位置200 m, 250 m,300 m直到500 m。在存在GNSS欺騙的時間段內,如果檢驗統計量出現低于閾值的情況,則視該次實驗出現漏警。進行1000次蒙特卡羅實驗,對位置偏差量和滑動窗口長度共同影響下的新算法的漏警概率進行統計,如圖7所示。由圖7可知,當本文算法的滑動窗口長度N設置為1時,其漏警概率在位置偏差為500 m時才能達到0%。相同實驗條件下,當本文算法的滑動窗口長度N設置為10時,其漏警概率在加入250 m的GNSS欺騙時就能夠達到0%。對圖7進一步分析可知,如果GNSS欺騙為250 m及以上時,新算法的N≥10就可以保證漏警概率為0%。而對于200 m及以下的GNSS欺騙,需滿足新算法的N≥20才可以達到0%的漏警概率。

圖7 不同滑窗長度下本文算法的漏警概率
進一步分析不同程度的欺騙下,滑動窗口長度對新算法檢測延遲的影響,如圖8所示。由圖8可知,當N/=1時,滑動窗口的存在會造成本文算法在欺騙檢測上出現延遲。對于任意一個GNSS欺騙,滑動窗口的長度N越大,兩幅子圖的時間延遲量越大,所設計的檢測算法給出的欺騙持續時間越不準確。假如欺騙式干擾至少會引起250 m的位置偏差,在滿足漏警概率為0%的條件下,應讓N盡量小。綜合欺騙引起的位置偏差量、漏警概率和時間延遲量3個因素,本文選取滑動窗口的長度N為10。

圖8 不同滑窗長度下本文算法的檢測延遲
基于傳統新息序列的卡方檢測算法無法給出欺騙的持續時間,從而導致INS/GNSS系統無法根據該算法的檢測結果判斷其定位解算是否正確。本文提出一種基于重構新息序列的有限記憶卡方檢測算法。本算法使用INS,GNSS和DME的數據構造一種不參與卡爾曼濾波的新息序列,然后將該新息序列構造成有限記憶卡方檢驗統計量,從而實現對欺騙式干擾的檢測。仿真表明,當欺騙式干擾造成250 m及以上的位置偏差時,所設計的算法能夠實現對欺騙持續時間較為準確的獲取。本文進一步將所提算法應用于INS/GNSS/DME系統中,給出了正確的飛行引導方案。由檢測概率的仿真圖可知,如果未來DME的定位精度提高,或者存在其他定位精度更高的導航源,本文算法都將有比現在更好的檢測效果和定位效果。