張曉明,劉 磊
(尚禹河北電子科技股份有限公司,河北 石家莊 050091)
GNSS作為國家重大基礎(chǔ)設(shè)施的關(guān)鍵組成部分,已廣泛應(yīng)用于人民的日常生活中,例如民用航空、電力系統(tǒng)、時(shí)間同步網(wǎng)絡(luò)、金融和交通運(yùn)輸?shù)阮I(lǐng)域[1]。但是由于導(dǎo)航衛(wèi)星信號的功率較低,易受各種有意或無意干擾的影響,而欺騙干擾由于具有功率較低、信號隱蔽性好的特點(diǎn)相對壓制干擾對衛(wèi)星導(dǎo)航系統(tǒng)的影響更大[2],尤其是缺乏安全保護(hù)的民用導(dǎo)航信號[3]。
國內(nèi)外的研究資料表明,關(guān)注GNSS欺騙干擾與反欺騙技術(shù)的學(xué)者越來越多,已成為GNSS領(lǐng)域內(nèi)的研究熱點(diǎn)[4-6]。目前常見的接收端欺騙干擾抑制技術(shù)主要有以下幾種:① 通過對接收信號處理階段信號的畸變來檢測欺騙干擾[7-10],然后剔除受欺騙影響的導(dǎo)航衛(wèi)星,在多顆衛(wèi)星被欺騙的情況下可能會導(dǎo)致參與定位的衛(wèi)星數(shù)量不夠;② 利用多個(gè)天線對比接收信號的差異或通過對欺騙干擾來波方向的估計(jì)檢測和識別欺騙干擾[11-13],比對信號差異的方法對運(yùn)動的欺騙干擾信號無效,波達(dá)方向估計(jì)需要對每顆衛(wèi)星信號相關(guān)后分別進(jìn)行測向,測向后濾除或直接剔除受欺騙衛(wèi)星,或再在欺騙方向形成零陷,計(jì)算量較大,不利于在接收機(jī)中實(shí)現(xiàn);③ 組合導(dǎo)航的欺騙干擾檢測和抑制方法[14-17]需要有慣導(dǎo)并且慣導(dǎo)和衛(wèi)導(dǎo)必須為緊耦合或超緊耦合才能實(shí)現(xiàn)欺騙干擾抑制,而通用的小型接收機(jī)中一般沒有慣導(dǎo)系統(tǒng)。因此,找到一種簡單、易于在普通接收機(jī)中實(shí)現(xiàn)的欺騙干擾抑制方法成為目前的研究熱點(diǎn)。
在此基礎(chǔ)上,本文提出了一種應(yīng)用在定位解算階段的基于M-估計(jì)的抗欺騙擴(kuò)展卡爾曼濾波算法,是對現(xiàn)在欺騙干擾檢測與抑制算法的有益補(bǔ)充,解決了接收端的欺騙干擾抑制問題,又不增加現(xiàn)有接收機(jī)的硬件復(fù)雜度。
衛(wèi)星導(dǎo)航的欺騙干擾具有和導(dǎo)航衛(wèi)星信號相同的信號參數(shù)(信息碼可能不同),由于和真實(shí)信號功率相差不大,在干擾衛(wèi)星導(dǎo)航接收機(jī)使其產(chǎn)生錯誤定位信息的同時(shí)還具備較好的隱蔽性。欺騙干擾主要有2種:產(chǎn)生式欺騙干擾和轉(zhuǎn)發(fā)式欺騙干擾[18],產(chǎn)生式欺騙干擾是根據(jù)偵察到的天上的衛(wèi)星信號的碼結(jié)構(gòu)產(chǎn)生的與天上衛(wèi)星信號相關(guān)性最大的偽隨機(jī)碼,然后調(diào)制上與導(dǎo)航電文結(jié)構(gòu)一致的虛假電文。對于開放的民碼信號,該種方式很容易實(shí)現(xiàn),但是對于保密的軍碼信號,該種方式較難實(shí)現(xiàn);轉(zhuǎn)發(fā)式欺騙干擾是增加信號的傳播時(shí)延,在干擾機(jī)收到衛(wèi)星導(dǎo)航信號后,經(jīng)過一定的濾波放大,再發(fā)射出去,該種欺騙干擾方式不需要區(qū)別軍民信號,但是要注意收發(fā)之間的隔離。
欺騙干擾具有與導(dǎo)航信號相同的擴(kuò)頻碼和載波頻率的一種特殊信號,利用與真實(shí)信號的時(shí)延差或修改的導(dǎo)航電文影響導(dǎo)航接收機(jī)的正常定位,則欺騙干擾信號可表示為:
(1)
當(dāng)存在欺騙干擾信號時(shí),接收信號可表示為:
(2)
式中,n(t)為系統(tǒng)噪聲;xi(t)為導(dǎo)航信號;L為當(dāng)前可見衛(wèi)星個(gè)數(shù)。
若接收機(jī)捕獲跟蹤上欺騙信號,則將影響接收機(jī)的最終定位結(jié)果,因此,需要采用一定的濾波算法消除欺騙干擾對導(dǎo)航定位的影響。
(3)
(4)
從式(3)和式(4)可得,GNSS接收機(jī)定位解算的模型Zk=h[Xk,k]+Vk是非線性的,Vk為測量噪聲,服從均值為零的高斯分布,k為時(shí)間序列。
將h[·]進(jìn)行Taylor級數(shù)非線性展開,取一階近似,則線性化的測量方程可表示為:
ΔZk=HΔXk+sk+vk,
(5)
式中,sk為欺騙干擾引起的誤差;ΔZk為測量偽距,ΔXk為真實(shí)位置與估計(jì)位置之間的向量差;H是向量函數(shù)h[·]的雅克比矩陣,也稱為觀測矩陣,其元素為觀測量對狀態(tài)量的偏導(dǎo)。
殘差f(·)函數(shù)和的線性化測量方程可寫為:
(6)
式中,k時(shí)刻的測量量個(gè)數(shù)為n;f(·)為標(biāo)量函數(shù)。
f(·)的最小化殘差的和為:
(7)
進(jìn)一步變形可得到:
(8)
式中,ψ(·)是f(·)對于相對狀態(tài)矢量的導(dǎo)數(shù),代表測量誤差對定位結(jié)果的影響程度;hi是觀測矩陣H=(hij)的第i行,即hi=hi1,hi2,…,him,m為參數(shù)的個(gè)數(shù),進(jìn)一步化簡可得:
(9)
令:
(10)
則式(7)可化簡為:
(11)
寫為矩陣形式:
HTD(e)e=0,
(12)
式中,D(e)=diag[D(e1),D(e2),…,D(en)] 。
令e=HΔXk-ΔZk,則式(10)可寫成:
(HTD(e)H)ΔXk=HTD(e)ΔZk。
(13)
式(13)與加權(quán)最小二乘方程一致,其解為:
(14)
為了使欺騙干擾對定位結(jié)果的影響最小,調(diào)整加權(quán)因子D(e)的值,使D(e)在測量誤差越大時(shí)取值越小,不存在干擾時(shí),所有權(quán)值取值為1。
考慮衛(wèi)星導(dǎo)航接收機(jī)定位解算的特點(diǎn),基于最小二乘的M-估計(jì)加權(quán)矩陣為:
(15)
將M-估計(jì)應(yīng)用到卡爾曼濾波中,根據(jù)卡爾曼濾波的特點(diǎn),基于卡爾曼濾波的M-估計(jì)加權(quán)矩陣可改寫為:
(16)
式中,參數(shù)a和b為根據(jù)接收機(jī)實(shí)際應(yīng)用場景設(shè)定的常數(shù),數(shù)值的大小由接收機(jī)定位測速的誤差決定。
擴(kuò)展卡爾曼濾波的三維定位狀態(tài)方程可寫為:
GWk-1,
(17)
寫成矩陣的形式為:
Xk=ΦXk-1+GWk-1,
(18)
則預(yù)測方程可表示為:
(19)
(20)
(21)
(22)
式中,Vk為測量余量;R為測量噪聲的正定協(xié)方差矩陣;αk為測量余量協(xié)方差。
濾波增益為:
(23)
估計(jì)過程為:
(24)
(25)
仿真試驗(yàn)?zāi)康氖菫榱蓑?yàn)證M-估計(jì)的抗欺騙擴(kuò)展卡爾曼濾波算法的抗欺騙性能。將本文提出的算法與最小二乘、擴(kuò)展卡爾曼濾波和結(jié)合M-估計(jì)的抗欺騙擴(kuò)展卡爾曼濾波算法在存在欺騙干擾時(shí)的定位性能對比。
仿真以 BDS系統(tǒng)為例,使用偽距單點(diǎn)定位方式,定位精度為米級,選取4顆GDOP值較好的衛(wèi)星,測距誤差為±3 m,假定狀態(tài)矢量為(6 378 258,0,0,100,100,100,0,0),初始濾波狀態(tài)矢量為(6 378 000,4 000,2 000,0,0,0,0,0)。Q,R矩陣取值如下:
(26)
(27)
首先仿真欺騙干擾對偽距測量的影響,每間隔1 s采樣一次,共計(jì)采樣2 000 s,假設(shè)第500~860 s受到欺騙式干擾的影響,該欺騙干擾引起的偽距測量誤差如圖1所示,為1 200 m,大約相當(dāng)于偽距偏移3個(gè)碼片。
圖1 欺騙引起的偽距誤差Fig.1 Pseudorange error caused by spoofing
圖2給出了第500~860 s受到欺騙干擾影響時(shí),最小二乘算法的定位精度。
(a) X坐標(biāo)軸引入的定位誤差
(b) Y坐標(biāo)軸引入的定位誤差
(c) Z坐標(biāo)軸引入的定位誤差
從圖2中可以看出,在受到欺騙干擾影響的第500~860 s,最小二乘算法在定位解算中不能消除欺騙干擾影響,欺騙干擾在X軸上引起的定位誤差在2 000 m左右,在Y軸上引起的定位誤差在-1 500 m左右,在高程上引起的定位誤差在800 m左右。
圖3給出了第500~860 s受到欺騙干擾影響時(shí),傳統(tǒng)擴(kuò)展卡爾曼濾波算法的定位精度。
(a) X坐標(biāo)軸引入的定位誤差
(b) Y坐標(biāo)軸引入的定位誤差
(c) Z坐標(biāo)軸引入的定位誤差
從圖3中可以看出,在受到欺騙干擾影響的第500~860 s,傳統(tǒng)擴(kuò)展Kalman濾波算法在定位解算中同樣不能消除欺騙干擾影響。
圖4給出了第500~860 s受到欺騙干擾影響時(shí),結(jié)合M-估計(jì)的擴(kuò)展卡爾曼濾波算法的定位精度。
(a) X坐標(biāo)軸引入的定位誤差
(b) Y坐標(biāo)軸引入的定位誤差
(c) Z坐標(biāo)軸引入的定位誤差圖4 結(jié)合M-估計(jì)的擴(kuò)展卡爾曼濾波法定位誤差Fig.4 Positioning error of extended Kalman filtering combined with M-estimation
從圖2~圖4的對比中可以看出,最小二乘和擴(kuò)展卡爾曼濾波算法都不能抑制欺騙干擾對導(dǎo)航定位的影響,定位結(jié)果出現(xiàn)了較大的誤差,將近2 000 m。本文提出算法在存在欺騙干擾的條件下,定位誤差優(yōu)于10 m,說明本文算法對欺騙干擾具有較好的抑制性能,定位精度較好。
本文提出了一種基于M-估計(jì)的抗欺騙擴(kuò)展卡爾曼濾波算法,結(jié)合穩(wěn)健統(tǒng)計(jì)中的M-估計(jì)來調(diào)整擴(kuò)展卡爾曼濾波的狀態(tài)更新過程,消除突發(fā)欺騙干擾對導(dǎo)航定位的影響,提升接收機(jī)定位解算過程中的欺騙干擾抑制性能。通過與最小二乘定位和統(tǒng)擴(kuò)展卡爾曼濾波定位算法的對比表明,在引入1 200 m的偽距誤差時(shí),最小二乘定位和統(tǒng)擴(kuò)展卡爾曼濾波定位算法在3個(gè)方向上均出現(xiàn)了較大的定位誤差,而本文提出的抗欺騙干擾定位算法在3個(gè)方向定位精度均優(yōu)于10 m。本算法適用于對成本敏感且具有一定抗欺騙干擾能力的普通接收機(jī),可以在不增加硬件成本的前提下使接收機(jī)具有欺騙干擾抑制能力。