張 偉,董啟甲,張爽娜,馬 躍,薛偉羅晨
(1.天津航天中為數據系統科技有限公司,天津 300301;2.航天恒星科技有限公司,北京 100095)
隨著北斗三號衛星導航系統組網成功以及接收機應用領域的不斷延伸,用戶對定位精度、完好性、連續性和可用性都提出了更高的要求與期望,尤其是國防軍工、交通運輸、測繪勘探、精準農業等行業,需求尤為迫切[1]。傳統的衛星導航信號具有落地功率較低、穿透性差、信號易丟失、再定位困難、易受欺騙、抗干擾能力差等弱點[2-3],難以滿足叢林、溝壕、洞庫和城市街區的導航需求,復雜環境下的服務性能急需提升。
針對弱信號的捕獲技術,國內外學者也做了大量的研究工作,其中相干積分、非相干積分和差分相干積分是三種經典的弱信號捕獲方法[4-6]。相干積分法能獲得最大的信噪比增益,然而受比特跳變的影響,相干積分時間通常不能超過一個比特的長度。非相干積分法通過對相關器輸出進行平方累積獲得信噪比增益,缺點是噪聲也相應地被平方,產生平方損耗[7]。差分相干積分通過將連續2個相關器的輸出共軛相乘再進行累積以避免噪聲的直接平方,該方案只是在一定程度上克服了相干積分法的缺陷,使得積分時間得以擴展。鑒于上述方法受某些條件的限制,對弱信號的捕獲性能提升有限。后續也有諸多學者提出了利用外部輔助的方法進一步提升捕獲性能,常見的輔助方法有慣性輔助[8-9]和基站網絡輔助[10-11]等方式。
同時,隨著衛星技術日漸成熟及運載成本的降低,低軌(Low Earth Orbit,LEO)衛星星座快速部署已具備條件。LEO衛星憑借其軌道和信號的獨特優勢以及廣泛的應用潛力,逐步受到導航增強領域的關注和青睞,并有望成為下一代衛星導航系統發展的新方向[12-14]。因此,本文提出了一種利用LEO衛星輔助完成弱信號高靈敏捕獲的算法,對于提升北斗系統的服務水平具有重要意義。
針對復雜環境下弱信號的捕獲,綜合考慮了相干積分與非相干積分的優缺點,本文采用借助LEO衛星的輔助,以相干積分為主、非相干為輔的實施方法實現弱信號的快速捕獲。本文設計利用LEO衛星搭載導航增強載荷,轉發北斗衛星的電文,并播發導航增強信號。首先LEO衛星接收處理全球衛星導航系統(Global Navigation Satellite System,GNSS)導航信號,并依據GNSS衛星信號完成自身的定位,同時得到北斗衛星的電文信息。然后將北斗衛星的電文信息進行處理,通過導航增強信號播發給地面終端。地面終端通過接收LEO衛星的導航增強信號獲取輔助信息,輔助實現B1C弱信號的長時間相干積分,提高了弱信號的處理增益,進而完成弱信號的快速捕獲。
(1)LEO衛星的特點
①成本較低
LEO衛星比中高軌衛星的質量小、軌道更低,可通過一箭多星的方式發射,LEO衛星的研發成本和火箭發射成本都較低。
②信號落地功率高
LEO衛星軌道高度一般為1000km 左右,相較于20000km 以上高度的中高軌導航衛星,LEO衛星信號傳輸路徑更短、信號時延和功率損耗更小。簡單來說,如果LEO衛星和中高軌衛星發射相同的信號功率,LEO衛星發射抵達地球表面的信號功率將比中高軌衛星高出30dB(即1000 倍[15])。更強的落地信號功率可在復雜地形環境和復雜電磁環境下改善定位效果,提升抗干擾和反欺騙能力。
③多普勒變化快,幾何構型更優
LEO衛星軌道高度低,運行速度快,多普勒頻移現象明顯,有利于提高測速的精度和基于多普勒觀測值的載波相位周跳探測效果。在LEO衛星單重或者雙重覆蓋的場景下,可以利用LEO衛星幾何構型變化快的特點,基于多普勒測速原理實現定位。
(2)相干積分
相干積分算法通過將相干積分結果相加,實現信號功率的平方倍數增長,而噪聲功率線性增長,隨著累加時間的增長,信噪比顯著增長。由文獻[16]可知,在捕獲過程中I和Q支路的相干積分結果可以表示為
I(n)=aD(n)R(τ)sinc(feTcoh)cos(φe)
(1)
Q(n)=aD(n)R(τ)sinc(feTcoh)sin(φe)
(2)
其中,a2為輸入信號的平均功率;D(n)為值為±1 的數據比特電平值;R(τ)為偽碼自相關函數;fe為輸入信號與本地信號之間的載波頻差;φe為輸入信號與本地信號的相位差異;Tcoh為相干積分長度。
由公式可知,在相干積分中,如果沒有比特翻轉,I/Q支路的能量峰值則不會受影響;如果存在比特翻轉,那么相干積分過程中跳變沿前后的能量極性相反,能量相互抵消,減少了I/Q支路的積分能量峰值。
延長相干積分時間是提高信噪比最有效的方法,但是也存在局限性。一方面是受到數據比特符號跳變的限制,最長積分時間不能超過數據碼的比特寬度;另一方面是受載波頻差的限制,延長相干積分時間會導致信號頻率維度搜索步進值減小。輸入信號與本地信號的載波頻差主要包含多普勒頻差和接收機時鐘頻差等,由于接收機固有頻差的存在,在工程實現中,相干時間也不能無限延長。
(3)非相干積分
非相干積分算法一般是在相干積分的基礎上進行的,通過將相干積分結果平方處理后疊加,實現信噪比的提升。平方處理不包含相位信息,使得非相干積分不受數據比特符號跳變的影響。
非相干積分雖然去除了積分輸出中的殘留相位,但是在對相干積分輸出采取平方操作時,相當于同時放大了信號項和噪聲項,降低了信號處理增益的提升效果,這就是非相干積分損失,也叫平方損耗。非相干積分帶來的平方損耗可由式(3)計算
(3)
其中,n為非相干積分的次數;Dc(1)為理想能力檢測因子,是關于檢測概率Pd和虛警概率Pfa的函數,表示為
Dc(1)=[erf-1(1-2Pfa)-erf-1(1-2Pd)]2
(4)
其中,erf-1(x)為誤差函數的反函數。給定檢測概率Pd=0.9和虛警概率Pfa=10-7,Dc(1)約等于21。
根據上述公式可得,在上述理想能力檢測因子Dc(1)約等于21的條件下,平方損耗與非相干積分次數之間的曲線關系,如圖1所示。由圖1可知,在輸入信噪比一定的條件下,非相干積分次數越大,越容易受多普勒頻偏和本地鐘差的影響,帶來的平方損耗越大,因此在實際應用時非相干積分的次數也不能過多。

圖1 平方損耗與非相干積分次數的關系
根據文獻[17],北斗三號B1C信號采用了新型的BOC調制方式,同時也從傳統的單一數據通道改進為數據和導頻雙通道結構。數據通道調制有包含測距信息的導航電文,而導頻通道不包含任何數據信息。B1C 信號測距碼采用分層碼結構,由主碼和子碼相異或構成,子碼的碼片寬度與主碼的周期相同,子碼碼片起始時刻與主碼第一個碼片的起始時刻嚴格對齊。
根據B1C信號的特點,結合LEO衛星的優勢,本文提出了基于LEO輔助的B1C高靈敏快速捕獲算法[8-17]。該算法通過LEO獲取B1C信號的時間信息和頻率信息,輔助實現低信噪比條件下B1C信號的高靈敏快速捕獲。在低信噪比環境下,信號被淹沒在噪聲中,短時間的相關運算無法捕獲到偽碼的相位與載波多普勒,基于LEO獲取的時間信息,獲取子碼的碼相位估計值,剝離子碼,消除比特跳變的限制,進行長時間的相干積分,提高了信號的信噪比,實現了弱信號的高靈敏捕獲。
由于B1C信號的數據通道和導頻通道的信號是同步的,而且導頻通道未調制導航電文,故在捕獲過程中只捕獲導頻支路即可完成對B1C信號的捕獲。如圖2所示,基于LEO輔助的B1C高靈敏快速捕獲算法的實現可總結為如下步驟:

圖2 基于LEO輔助的B1C捕獲算法框圖
1)獲取B1C數字中頻信號。
2)接收處理LEO數字中頻信號,完成LEO信號的定位解算。
3)選取頻率搜索單元。在LEO的輔助下獲取B1C的頻率信息,縮小頻率搜索范圍,確定載波頻率搜索步長及當前載波頻率的搜索單元。
4)產生本地載波。根據載波頻率的搜索單元,產生本地載波。
5)混頻運算。將接收到的B1C數字中頻信號與產生的本地載波進行混頻運算。
6)產生本地測距碼。首先在LEO的輔助下獲取B1C信號的時間信息;然后根據B1C信號結構得到導頻支路碼相位的估計值,由碼相位的估計值分別產生導頻支路的主碼序列和子碼序列;最后將主碼序列和子碼序列進行異或運算得到本地測距碼。
7)相關運算。將混頻運算得到的同相支路和正交支路分別與產生的本地測距碼進行相關運算。
8)長相干積分運算。對相關運算后的同相支路和正交支路分別進行長時間相干積分。由于導頻支路的子碼參與相關運算,這樣在相關運算后就消除了比特跳變對相干積分的影響,不考慮頻率誤差的影響,理論上可以進行無限長時間相干積分。

10)門限判決與峰值檢測。對非相干積分的結果V尋找最大值,并且把該值與預設閾值進行比較,如果非相干積分的最大值超過預設閾值,則認為捕獲成功,同時該最大值對應的頻率和碼相位即為要捕獲信號的載波頻率和碼相位;否則需要更換頻率搜索單元和碼搜索單元繼續搜索,直至完成所有頻率搜索范圍和碼搜索范圍。
基于LEO輔助的北斗B1C高靈敏快速捕獲算法的關鍵在于通過LEO衛星獲取輔助信息。目前LEO衛星的落地功率一般比北斗衛星高出10~30dB,所以在B1C信號遮擋或者干擾環境下,地面終端依然能正常接收LEO的導航增強信號。
考慮到LEO的軌道高度較低,多普勒搜索范圍較大,一般在±40kHz,對于LEO信號的捕獲采用并行碼的捕獲算法,可以實現LEO信號的快速捕獲。
此外,由于LEO數量有限,多數情況下為單重或雙重覆蓋,利用LEO衛星相對地面運動速度較快、多普勒變化快的特點,采用多普勒測速原理完成地面接收機的導航定位解算。

(5)


(6)
其中,1n是北斗衛星n所述GNSS在接收機處的單位觀測矢量
(7)
根據上述分析可知,多普勒估計值的精度受測速精度和接收機鐘漂鐘差等多方面因素影響。
基于LEO輔助的B1C高靈敏快速捕獲算法的特點在于,一方面,利用LEO獲取的時間輔助信息可以進行長時間的相干積分,提高了信號的檢測信噪比,實現了弱信號的高靈敏捕獲;另一方面,利用LEO獲取的時間輔助信息和頻率輔助信息,可以縮小信號在頻率維度和碼維度的搜索范圍,降低捕獲時間,提高捕獲效率。
(1)提高捕獲靈敏度
在LEO的輔助下,通過時間輔助信息在相關運算中剝離子碼,實現長時間相干積分,提高了接收信號的信噪比,進而提高了信號的捕獲靈敏度。
由文獻[16],相干積分增益為
Gcoh=10lg(BpdTcoh)
(8)
其中,Bpd為相關器之前的噪聲帶寬;Tcoh為相干積分時間。記SNRpd為信號的預檢信噪比(相關器之前的信噪比),SNRcoh為相干積分后的信噪比,則有
SNRcoh=SNRpd+Gcoh
(9)
其中
SNRpd=C/N0-10lg(Bpd)
(10)
因此
SNRcoh=C/N0+10lg(Tcoh)
(11)
由于載噪比C/N0在相干積分前后不會改變,所以當延長相干積分時間Tcoh,信噪比SNRcoh也會提高。根據公式,當相干積分時間增加1倍,信噪比SNRcoh會相應提高約3dB。
設置B1C相關之前的噪聲帶寬為4.092MHz,可以得出相干積分時間與相干積分增益的曲線關系,如圖3所示。無LEO輔助下,為了減少比特跳變對相干積分的影響,一般相干積分時間不能超過一個子碼寬度的一半,此處采用2ms,對應的相干積分增益為39dB。在LEO輔助下,相干積分時間可以實現大于10ms的參數選擇,具體地,當Tcoh=80ms,相干積分增益為55dB,相比Tcoh=2ms,相干積分增益提高了16dB,由于高信噪比的檢測信號比低信噪比的檢測信號更容易超過捕獲門限,意味著信號的捕獲靈敏度可以相應地提高16dB。

圖3 相干積分時間與相干積分增益的關系
(2)縮短捕獲時間
對某一顆衛星導航信號的捕獲過程一般通過對該信號的載波頻率和碼相位這2個維度進行掃描來完成搜索[7]。而對該信號捕獲搜索所需的時間也就由載波頻率和碼相位不確定區間的大小決定。
如圖4所示,其中信號載波頻率和碼相位的不定值分別為func與tunc,搜索頻帶與碼帶寬度分別為fbin與tbin,那么該二維搜索范圍包含的搜索單元數據Ncell為
(12)
假設駐留時間Tdwell是指接收機在每個搜索單元上進行一次信號搜索所需要的時間,于是駐留時間乘以搜索單元總數就等于搜索一遍整個不定區間所需要的時間Ttot,即
Ttot=TdwellNcell
(13)
接收機中捕獲的信號參數值一般是隨機地分布在二維搜索范圍之內的,那么接收機在聲明信號捕獲之前所搜索過的搜索單元數目的平均值等于總搜索單元數目的一半,即平均捕獲時間Tacq的估算公式為
(14)
根據圖4(a)所示,無LEO輔助下,對于頻率和碼相位的搜索必須對應進行全頻段和全碼段的搜索。根據圖4(b)所示,有LEO輔助模式下,根據時間信息和頻率信息的輔助,對于頻率和碼相位的搜索只需對應進行局部頻段和局部碼段的搜索,同時在頻率維度和碼維度減少了搜索單元數量,二維搜索范圍由圖4(a)縮小至圖4(b)灰色部分,搜索范圍有著大幅度地縮小。

(a)無低軌衛星輔助下的搜索范圍
具體地分析如表1所示,B1C信號的碼長為10230,碼率為1.023Mcps,碼周期為10ms。無LEO衛星輔助下,接收機對B1C信號的頻率和碼相位的搜索范圍分別設為±5kHz和10230碼片,并采用500Hz的頻率搜索步長和0.5碼片的碼相位搜索步長,則二維搜索的搜索單元總數為429660個。

表1 無輔助與LEO輔助下捕獲搜索單元對比
對于有LEO輔助場景,根據2.2節,綜合考慮LEO的定位精度、授時精度、測速精度和接收機鐘差鐘漂等因素,進行了仿真標的,得到在LEO輔助下,接收機對B1C信號的頻率搜索范圍可以縮小至±10Hz,碼相位的搜索范圍可以縮小至±20個碼片。
在頻率和碼片搜索步長保持不變的情況下,二維搜索的搜索單元總數為80個,相比無LEO輔助下減少了5.4×103倍。在弱信號條件下,為了提高捕獲靈敏度,采用延長相干積分時間的策略,考慮頻率誤差與相干積分時間的關系,設置5Hz的頻率搜索步長和0.5碼片的碼相位搜索步長,則二維搜索的搜索單元總數為400個,相比無LEO輔助下減少了1.1×103倍。
此外,雖然理論上減少捕獲搜索單元數就相當于縮短了捕獲時間,但是在實際工程實現中,多數接收機可能會采用快捕方法,即并行頻率和/或并行碼。如果采用串行搜索,可以輔助減少搜索單元數,進而縮短搜索時間。如果采用并行搜索策略,通過輔助可以顯著地減小對單路信號處理的計算量,并減少并行處理的通道數量,達到節省硬件計算資源的效果。
為了驗證上述LEO輔助的長相干積分方法對B1C捕獲靈敏度性能提升的有效性,測試實驗采用Matlab和FPGA兩種方式進行驗證分析,Matlab平臺是從算法層面進行驗證試驗,為了進一步證明本文提出算法在工程化中的可行性,進行了FPGA設計及EDA驗證試驗。其中上述兩種試驗的輸入中頻信號均是利用Matlab搭建平臺產生的B1C數字中頻信號。
(1)捕獲算法的功能測試
為了驗證LEO輔助下高靈敏捕獲算法功能的正確性,首先利用軟件產生信號功率為-130dBm和-140dBm的B1C數字中頻信號,然后分別采用2ms、10ms和20ms的相干積分時間,兩次非相干積分進行信號捕獲,捕獲結果如圖5和圖6所示。

圖5 基于Matlab的捕獲仿真結果(-130dBm)

圖6 基于Matlab的捕獲仿真結果(-140dBm)
圖5展示了信號功率為-130dBm條件下基于Matlab的捕獲結果,根據捕獲檢測到的峰值可以看到,三種情況均成功捕獲,而且碼相位結果均與預設碼相位偏移一致,累加峰值成比例增長。
圖6展示了信號功率為-140dBm條件下基于Matlab的捕獲結果,根據捕獲檢測到的峰值可以看到,相干積分為2ms下無輔助的情況捕獲失敗;LEO衛星輔助下的相干積分為10ms和20ms的情況下均成功捕獲,而且碼相位結果均與預設碼相位偏移一致,能量值成比例增長。
為了進一步證明該算法在工程化中的可行性,利用FPGA實現LEO輔助B1C高靈敏捕獲算法,并進行了EDA仿真驗證,仿真驗證結果如圖7所示。

圖7 基于FPGA的捕獲仿真結果
圖7展示了信號功率為-140dBm條件下基于FPGA的捕獲結果。無LEO輔助下,相干積分為2ms,兩次非相干積分,對非相干后的結果進行峰值檢測,無法檢測到峰值,捕獲失敗。有LEO輔助下,相干積分設置為20ms,同樣采用兩次非相干積分,由圖7可知,成功檢測到峰值,捕獲成功,并且產生了捕獲轉跟蹤的信號,說明捕獲完成,進入跟蹤階段。
綜上所述,LEO輔助下的B1C高靈敏捕獲算法功能正確,在提高信號捕獲靈敏度方面具有顯著的效果,工程實現可行性高。
(2)捕獲算法的靈敏度測試
針對低動態導航信號,采用蒙特卡羅仿真方式在信號強度、虛警率和相干積分時間三方面設置對比實驗,比較有無LEO輔助下對不同強度信號的捕獲靈敏度。首先,用軟件分別生成不同信號強度的低動態中頻仿真信號;然后,設置多組虛警率,并根據虛警概率與捕獲門限的關系,計算出對應的捕獲門限;最后,分別采用2ms、10ms、20ms、40ms和80ms相干積分時間進行蒙特卡羅實驗,每組實驗的非相干次數均設置為兩次,得到捕獲算法的ROC曲線如圖8~圖10所示

圖8 B1C捕獲靈敏度測試(Pfa=10-5)

圖9 B1C捕獲靈敏度測試(Pfa=10-6)

圖10 B1C捕獲靈敏度測試(Pfa=10-7)
從圖8~圖10中可以看出,當虛警率為10-5時,使用80ms的相干積分對載噪比24dB以上的信號可以達到0.9的檢測率;而使用2ms的相干積分時間時,只有當載噪比在39dB以上信號的檢測概率才能達到0.9左右。當虛警率為10-6時,使用80ms的相干積分對載噪比26dB以上的信號可以達到0.9的檢測率;而使用2ms的相干積分時間時,只有當載噪比在40dB以上信號的檢測概率才能達到0.9左右。當虛警率為10-7時,使用80ms的相干積分對載噪比28dB以上的信號可以達到0.9的檢測率;而使用2ms的相干積分時間時,只有當載噪比在42dB以上信號的檢測概率才能達到0.9左右。
綜上可知,在LEO衛星輔助下使用80ms相干積分時間比無LEO衛星輔助下信號捕獲靈敏度可以提高至少14dB。
本文首先對提升接收機捕獲靈敏度進行了分析,對比了相干積分與非相干積分對于信號處理增益的影響,得出在低軌導航增強信號的輔助下采用增加相干積分時間的捕獲算法對低信噪比條件下B1C信號的捕獲更有效。然后提出了基于LEO輔助的B1C高靈敏快速捕獲算法,從理論分析和實驗仿真兩方面對比驗證了LEO輔助下高靈敏捕獲算法的有效性和可行性。
綜上所述,本文提出的基于LEO輔助的B1C高靈敏快速捕獲算法的創新點有兩點:
1)利用LEO獲取的時間輔助信息可以進行長時間的相干積分,提高了信號的檢測信噪比,實現了弱信號的高靈敏捕獲。對于低動態信號,在LEO衛星輔助下使用80ms相干積分時間比無LEO衛星輔助下信號捕獲靈敏度可以提高至少14dB。
2)利用LEO獲取的時間輔助信息和頻率輔助信息,可以縮小信號在頻率維度和碼維度的搜索范圍,降低捕獲時間,提高捕獲效率。
此外,本文所提的基于LEO輔助的北斗B1C高靈敏快速捕獲算法僅對低動態場景進行了仿真驗證,后續還需要對高動態場景下LEO輔助捕獲性能的提升做進一步研究分析。