盛開宇,陳熙源*,湯新華,閆 晣,高 寧
(1.東南大學(xué)儀器科學(xué)與工程學(xué)院,江蘇 南京 210096;2.微慣性儀表與先進(jìn)導(dǎo)航技術(shù)教育部重點實驗室,江蘇 南京 210096)
隨著衛(wèi)星通信技術(shù)的進(jìn)步,全球衛(wèi)星導(dǎo)航系統(tǒng)(GNSS)[1]不斷完善發(fā)展,廣泛應(yīng)用在國民經(jīng)濟(jì)和國防等領(lǐng)域。接收機技術(shù)作為GNSS 應(yīng)用的重要內(nèi)容,主要可以分為衛(wèi)星捕獲、跟蹤和導(dǎo)航解算3 個環(huán)節(jié)。其中跟蹤環(huán)節(jié)主要通過對本地數(shù)控振蕩器(NCO)進(jìn)行調(diào)整,得到與輸入衛(wèi)星中頻信號接近的本地復(fù)制信號,從而實現(xiàn)衛(wèi)星信號的鎖定。從跟蹤環(huán)路可以解調(diào)得到導(dǎo)航電文、偽碼相位和載波多普勒頻率等信息,這些信息用于PVT 導(dǎo)航解算環(huán)節(jié)。因此,跟蹤環(huán)路的優(yōu)劣將影響接收機的靈敏度、精度等性能指標(biāo)。衛(wèi)星信號由于發(fā)射功率較低,經(jīng)過傳播、損耗后到達(dá)地面用戶接收終端時相當(dāng)微弱,容易受到外界環(huán)境干擾從而導(dǎo)致衛(wèi)星信號失效,如何魯棒而精確地跟蹤衛(wèi)星信號是GNSS 接收機技術(shù)的研究熱點之一。
傳統(tǒng)跟蹤環(huán)路主要包括載波相位控制環(huán)路(PLL)和碼相位控制環(huán)路(DLL)[2],在一些高動態(tài)場景,也會用到載波頻率控制環(huán)路(FLL),以上環(huán)路均可以用于對單個信號參數(shù)比如載波相位的估計,其濾波增益和環(huán)路帶寬固定不變,難以適用于弱信號環(huán)境和高動態(tài)載體定位。為了提高跟蹤環(huán)路中各個參數(shù)的估測精度,信息融合技術(shù)被應(yīng)用于跟蹤環(huán)路中,其中在跟蹤環(huán)路設(shè)計中引入Kalman 濾波(KF)已成為優(yōu)選設(shè)計方案,與傳統(tǒng)跟蹤環(huán)路相比,基于KF 的跟蹤環(huán)路,可以實現(xiàn)可用信息的最大化利用,Tang 等[3]分析了基于KF 的跟蹤環(huán)路及傳統(tǒng)環(huán)路算法復(fù)雜度,比較了不同濾波器參數(shù)對跟蹤性能的影響,得出濾波器的通用參數(shù)設(shè)置方法。傅金琳等[4]研究基于Kalman 濾波的跟蹤在干擾環(huán)境下的性能,得出其可以提升環(huán)路跟蹤靈敏度的結(jié)論,但未分析其對于定位精度的影響。此外程向紅[5-6]等引入了強跟蹤Kalman濾波、容積Kalman 等算法,對于解決濾波器模型失配問題和鑒相器的非線性限制有一定效果。Yan 等[7]提出基于自適應(yīng)LM-QN 的環(huán)路跟蹤算法,其在提升跟蹤精度的同時也增大了計算量。Shen 等[8]提出了一種改進(jìn)的多速率強跟蹤平方根容積卡爾曼濾波器(MR-STSCKF),用于自適應(yīng)估計系統(tǒng)協(xié)方差。該方法在保證組合導(dǎo)航結(jié)果高精度的前提下,克服了不同傳感器采樣頻率不一致的問題,對跟蹤環(huán)路中Kalmn 濾波器的設(shè)計提供了參考。本文旨在設(shè)計一種基于自適應(yīng)強跟蹤Kalman 濾波(ASTKF)的跟蹤環(huán)路[9-11],利用卡方分布和卡方檢測值來調(diào)整漸消因子,以提高跟蹤環(huán)路的魯棒性以及導(dǎo)航解算的精度。
如圖1 所示是本文設(shè)計的GNSS 信號跟蹤環(huán)路。首先利用捕獲結(jié)果初始化載波NCO 和碼NCO,將中頻信號與本地復(fù)制信號作相關(guān)運算,其結(jié)果經(jīng)過鑒相器運算得到碼相位差和載波相位差,通過基于ASTKF 的濾波器反饋調(diào)整本地NCO。
圖1 GNSS 信號跟蹤環(huán)路設(shè)計框圖
在基于Kalman 濾波的跟蹤環(huán)路中,狀態(tài)向量xk選擇衛(wèi)星中頻信號的碼相位誤差、載波相位誤差、載波頻率誤差和載波頻率變化率的誤差,其中載波相位可由載波頻率積分得到,載波頻率可由載波頻率變化率積分得到,載波頻率變化率可視為緩慢變化的偏差,碼相位可視為碼頻率的積分,而碼多普勒頻移為載波多普勒頻移乘以比例因子β,對于GPS 的L1 信號來說其值為1/1 540,假設(shè)在一個更新周期內(nèi)上述狀態(tài)量保持不變,由此可推出Kalman濾波的系統(tǒng)方程如下所示[12]:
式中:Δτk、Δφk、Δfk和Δαk分別代表碼相位誤差(碼片)、載波相位誤差(rad)、載波頻率誤差(Hz)和載波頻率變化率誤差(Hz/s),T是更新周期,過程噪聲向量nk-1對應(yīng)的協(xié)方差矩陣Qk[13]與接收機射頻前端振蕩器噪聲特性有關(guān)。
濾波器觀測量zk包括碼鑒相器輸出的δτk和載波鑒相器輸出的δφk,其中碼鑒相器采用非相干超前滯后包絡(luò)鑒別器、載波鑒相器采用二象限反正切鑒別器[1]:
式中:IP、QP、IE、QE、IL、QL分別為第k時刻中頻信號與本地復(fù)制信號的同相和正交分量經(jīng)相關(guān)器與本地超前、即時、滯后碼相關(guān)積分的輸出。載波鑒相器的輸出δφk和碼鑒相器的輸出δτk分別為載波相位誤差和碼相位誤差在相關(guān)積分時間T內(nèi)的平均值[12]:
由此可以得到量測更新方程如下[2]:
式中:量測噪聲向量υk是高斯白噪聲,其協(xié)方差矩陣用Rk表示。
Kalman 濾波包括一步預(yù)測估計和量測更新過程,一步預(yù)測估計過程如下:
量測更新過程如下:
式中:Kk為Kalman 增益矩陣。
傳統(tǒng)Kalman 濾波器進(jìn)入穩(wěn)定狀態(tài)后,其噪聲參數(shù)和Kalman 增益矩陣都會收斂于固定值。當(dāng)接收信號發(fā)生突變時,比如受到電磁干擾或者載體高速運動時,KF 不能很快地適應(yīng)這些變化,而強跟蹤KF 對系統(tǒng)突變狀態(tài)有較強的適應(yīng)能力。對于衛(wèi)星跟蹤環(huán)路而言,實際的噪聲模型很難確定,基于Kalman 濾波的跟蹤環(huán)路可能無法適應(yīng)環(huán)境變化而導(dǎo)致跟蹤上錯誤的碼頻率和載波多普勒頻率,甚至導(dǎo)致跟蹤環(huán)路的失鎖。本文引入基于ASTKF 的跟蹤環(huán)路濾波算法,在強跟蹤Kalman 濾波(STKF)的基礎(chǔ)上,使用基于卡方分布的漸消因子計算方法,加入量測協(xié)方差矩陣的自適應(yīng)計算,可以更好地根據(jù)信號的變化而調(diào)整環(huán)路的帶寬,使得濾波器具有更好的魯棒性,以提升衛(wèi)星接收機在多變環(huán)境下的跟蹤性能。
定義新息序列如下:
STKF 的原理是通過調(diào)整狀態(tài)協(xié)方差矩陣使得新息序列正交[14],從而最小化狀態(tài)誤差[6]:
當(dāng)存在濾波模型失配時,傳統(tǒng)的KF 容易發(fā)散,而STKF 將漸消因子引入到狀態(tài)協(xié)方差矩陣的一步預(yù)測方程中:
式中:λk=diag(λ2,k,λ1,k,λ3,k,…,λn,k)是漸消因子,應(yīng)用到式(9)中可以得到增益矩陣Kk,因此STKF 可以實時地調(diào)整KF 增益,而KF 增益的調(diào)整也會影響到環(huán)路的等效帶寬Bn。
漸消因子λk的計算方法[5]如下:
式中:Nk和Mk的定義如下:
Nk和Mk分別可以反映當(dāng)前時刻量測信息偏差和歷史量測信息偏差,當(dāng)前時刻量測信息的偏差較大時計算得到漸消因子應(yīng)該較大,從而實現(xiàn)對狀態(tài)協(xié)方差矩陣的調(diào)整,是估計的新息協(xié)方差矩陣,tr[·]是矩陣對角線和,ρ是遺忘因子,典型值為0.95[12]。
調(diào)節(jié)因子σi為大于等于1 的常數(shù),其大小可以反映量測信息對各個狀態(tài)量的影響程度,σi越大,則計算得到λi,k越大,狀態(tài)協(xié)方差矩陣Pk對應(yīng)位置的值也會放大更多,從而使得對應(yīng)狀態(tài)量更加信任量測信息,反之則不信任量測信息。
根據(jù)式(18)可知Rk對漸消因子的計算影響很大,如果Rk取值不準(zhǔn)確,判決依據(jù)ai,k>1 可能會產(chǎn)生誤判,同時,錯誤的Rk也會導(dǎo)致錯誤的漸消因子,從而導(dǎo)致濾波器的精度下降,甚至比普通的Kalman濾波更差。量測噪聲主要與信號載噪比、相關(guān)積分時間、碼相關(guān)器間隔等直接相關(guān),從而可以按照以下公式計算其量測協(xié)方差矩陣[14]:
式中:(c/n0)k=10(C/N0)k/10是第k時刻的載噪比,(C/N0)k的單位為dB·Hz,通過窄帶寬帶功率比方法[1]計算得到,d0為碼相關(guān)器間隔。
STKF 中調(diào)節(jié)因子σi根據(jù)經(jīng)驗確定,難以根據(jù)系統(tǒng)模型的準(zhǔn)確性進(jìn)行實時調(diào)整,而系統(tǒng)模型的準(zhǔn)確性體現(xiàn)在對新息協(xié)方差矩陣的準(zhǔn)確估計。本文提出的ASTKF 算法通過關(guān)于新息協(xié)方差矩陣的卡方檢驗來確定漸消因子,定義卡方檢驗函數(shù)γk為:
在系統(tǒng)模型準(zhǔn)確、濾波器正常運行情況下,新息序列dk應(yīng)該是高斯白噪聲序列,且不同時刻的dk相互正交,γk越大則說明當(dāng)前時刻估計的新息序列偏離值越大,γk服從自由度為s的卡方分布:
若卡方檢測值大于閾值ε,則可以判定假設(shè)不成立,說明新息序列異常導(dǎo)致估計的新息協(xié)方差矩陣與實際的新息協(xié)方差矩陣差異較大,需要通過漸消因子來調(diào)整新息協(xié)方差矩陣,若卡方檢測值小于閾值ε,則判定假設(shè)成立,說明估計的信息協(xié)方差矩陣與實際的新息協(xié)方差矩陣相差不大,則不需要通過漸消因子來調(diào)整,此時系統(tǒng)工作在穩(wěn)定的狀態(tài),可以進(jìn)行正常濾波。該卡方檢驗函數(shù)能夠判斷新息序列是否出現(xiàn)異常。
對于每一維觀測量,分別進(jìn)行卡方檢驗,則有:
式中:vii,k為矩陣對角線的第i個元素。漸消因子的選取標(biāo)準(zhǔn)就是在給定閾值情況下,使得卡方檢測值始終小于閾值,從而滿足假設(shè)條件,對于新息協(xié)方差的估計越不準(zhǔn)確,就越需要漸消因子調(diào)節(jié)狀態(tài)協(xié)方差矩陣,本文通過卡方檢測值的大小來設(shè)置調(diào)節(jié)因子σi,k:
對于系統(tǒng)的不可觀測量,由于無法直接進(jìn)行估計,對應(yīng)的漸消因子應(yīng)取值為1,最終的漸消因子取值如下:
對于本文所使用的跟蹤環(huán)路模型,觀測量的維度s=2。
本文通過實際車載實驗完成衛(wèi)星中頻數(shù)據(jù)的采集,所用的中頻采樣器為捷星廣達(dá)的型號為UTREK210 的雙模采樣器,同時搭載RTK 提供高精度的位置速度信息,并將其作為參考值驗證所提出方法的精度。車載實驗運動軌跡如圖2 所示,軌道選取一段城市道路,道路上存在一些樹木和建筑物遮擋,車載實驗軌跡速度變化曲線如圖3 所示,本文所截取的實驗軌跡如下:實驗車輛先是在起點位置保持20 s 左右的靜止,之后經(jīng)過40 s 的加速過程、30 s 的減速過程又恢復(fù)靜止,保持靜止約15 s 后再次加速運動。
圖2 車載實驗軌跡圖
圖3 車載實驗軌跡速度變化曲線
為了比較基于ASTKF 的跟蹤與其他跟蹤環(huán)路的性能,本文進(jìn)行了4 種跟蹤環(huán)路的對比試驗,半物理仿真實驗中跟蹤環(huán)路的更新周期設(shè)定為1 ms,4種環(huán)路跟蹤方法如下:
環(huán)路1:傳統(tǒng)PLL/DLL 環(huán)路
環(huán)路2:基于Kalman 濾波的跟蹤環(huán)路
環(huán)路3:基于STKF 的跟蹤環(huán)路
環(huán)路4:基于ASTKF 的跟蹤環(huán)路
對于環(huán)路4,本文選擇卡方檢驗置信度為95%,對應(yīng)的檢測閾值為3.84。
在完成捕獲之后,分別利用上述四種跟蹤環(huán)路算法跟蹤采集到的衛(wèi)星信號,信號中頻頻率為4.5 MHz,采樣頻率為19.199 9 MHz。圖4 所示是以衛(wèi)星PRN16 為例,不同跟蹤環(huán)路得到的載波多普勒頻率變化曲線,圖5 所示為在跟蹤過程中計算的各個衛(wèi)星載噪比的變化曲線。
圖4 不同跟蹤環(huán)路的載波多普勒頻率變化曲線(PRN16)
圖5 跟蹤環(huán)路的載噪比變化曲線
由圖4 可知基于ASTKF 的跟蹤環(huán)路(環(huán)路4)相比于傳統(tǒng)的跟蹤環(huán)路(環(huán)路1)在跟蹤載波頻率時抖動明顯減小,和基于KF 的跟蹤環(huán)路(環(huán)路2)以及基于STKF 的跟蹤環(huán)路(環(huán)路3)比較接近,圖5 顯示在110 s 至140 s 的時間段內(nèi)該衛(wèi)星跟蹤通道載噪比因受到環(huán)境因素影響而急劇下降,傳統(tǒng)標(biāo)量跟蹤環(huán)路中的載波多普勒頻率誤差在這個時間段內(nèi)出現(xiàn)了較大的波動,而環(huán)路2、環(huán)路3、環(huán)路4 仍然能保持較為穩(wěn)定的跟蹤,其中基于ASTKF 的跟蹤環(huán)路(環(huán)路4)相比于環(huán)路2 和環(huán)路3 表現(xiàn)得更為平滑,由此說明基于ASTKF 的跟蹤環(huán)路有更好的魯棒性。
跟蹤環(huán)路的好壞最終會影響到定位精度,本文采用結(jié)構(gòu)復(fù)雜度較低的最小二乘法進(jìn)行PVT 解算。圖6 以及圖7 表示的是不同跟蹤環(huán)路的位置誤差和速度誤差。
圖6 不同跟蹤環(huán)路位置誤差變化曲線
圖7 不同跟蹤環(huán)路速度誤差變化曲線
統(tǒng)計結(jié)果見表1,表中用均方根誤差(RMSE)來衡量測量值與參考真值的偏差,由于是車載實驗,所以本文未考慮垂直方向上的位置和速度誤差。
表1 不同跟蹤環(huán)路位置和速度的均方根誤差統(tǒng)計
根據(jù)統(tǒng)計結(jié)果可以知道,基于ASTKF 的跟蹤環(huán)路在定位和定速精度上有更優(yōu)異的表現(xiàn)。其中基于ASTKF 的跟蹤環(huán)路(環(huán)路4)相比于基于Kalman 濾波的環(huán)路(環(huán)路2)位置誤差和速度誤差分別提升了33.8%和31.2%,而相比于基于STKF 的跟蹤環(huán)路(環(huán)路3)位置誤差和速度誤差也分別提升了26.4%和23.8%,因此基于ASTKF 算法的跟蹤環(huán)路可以更有效地提升導(dǎo)航定位精度。衛(wèi)星信號在110 s 到140 s 左右載噪比明顯下降,對最終的定位解算也造成了影響,而環(huán)路4 相比于其他方法仍然能夠在該時間段內(nèi)保持較高的定位精度,其中環(huán)路4 相比于環(huán)路3 的精度提升可以說明所提出的漸消因子計算方法的優(yōu)越性。
本文提出了一種基于ASTKF 的跟蹤環(huán)路,ASTKF 可以在環(huán)路中代替環(huán)路濾波器,使得環(huán)路能夠?qū)崿F(xiàn)更高精度的濾波,同時ASTKF 通過引入漸消因子實現(xiàn)對環(huán)路帶寬的動態(tài)調(diào)整,通過確定漸消因子使得卡方檢驗假設(shè)成立,使得計算得到的新息協(xié)方差矩陣接近真實值,在低信噪比環(huán)境下仍然能保持較為穩(wěn)定的跟蹤,從而提高了跟蹤環(huán)路的魯棒性。
半物理實驗仿真分析表明,基于ASTKF 的跟蹤環(huán)路位置誤差和速度誤差最小,相比于基于STKF 的跟蹤環(huán)路位置誤差減小了26.4%,速度誤差減小了23.8%,同時對于一些粗大誤差起到了平滑效果。
因此本文提出的方法可以有效提高衛(wèi)星導(dǎo)航接收機的跟蹤性能,也可以為后續(xù)的導(dǎo)航解算以及其他相關(guān)應(yīng)用提供更為精確的觀測量。