李建武,馮雙記
(華中光電技術研究所 武漢光電國家研究中心,湖北 武漢 430074)
全球衛星導航系統(Global Navigation Satellite System,GNSS)是一種誤差不隨時間累積的導航定位系統,在測繪、交通運輸、城市監測等領域應用廣泛[1-4]。在高動態場景下,衛星信號的快速有效捕獲是實現衛星接收機跟蹤、定位的前提[5]。北斗衛星導航系統(Beidou Navigation Satellite System,BDS)的衛星導航電文數據率較高,且BDS D1電文存在Neumann-Hoffman(NH)碼調制,使BDS接收機在對衛星信號進行捕獲過程中存在頻繁的電文數據比特跳變[6](簡稱“比特跳變”),引起相干積分檢測峰值發生分裂,降低峰值對應的多普勒頻率估計精度,甚至會導致檢測峰值低于預設門限造成捕獲失敗,嚴重影響高動態BDS接收機的捕獲性能[7]。
針對導航電文頻繁比特跳變引起的捕獲峰值分裂問題,文獻[8]在FFT并行碼相位搜索算法基礎上采用了二次精頻捕獲方法,消除了比特跳變的影響但進行了二次捕獲,增加了捕獲時間。文獻[9]首先對本地擴頻碼進行拆分和補零以剔除循環卷積內潛在的比特跳變問題,然后對分塊捕獲結果進行組合以重構完整的捕獲結果,算法實施相對較為復雜。文獻[10-11]通過并行搜索連續多組數字中頻數據捕獲峰值的最大值,雖規避了比特跳變對短時間相干積分的影響,但顯著增加了捕獲時間以及資源消耗。文獻[12]采用NH碼調制后的北斗信號擴頻碼構成一個新的擴頻序列,直接對接收信號進行捕獲,可規避NH導致的比特跳變問題,但該方法的FFT長度為傳統方法的20倍,導致接收機運算負擔急劇增加。文獻[13]通過改進一種基于非對稱FFT的碼相位并行搜索算法,克服了比特跳變對相干積分增益的影響,但只能適用于短碼信號,而對于中長碼的BDS B3I信號,FFT點數的增加則幾何擴大了接收機捕獲邏輯的硬件資源消耗。因此,針對高動態場景下存在頻繁比特跳變的BDS B3I信號,亟需研究一種簡便有效、易于工程實現的快速捕獲方法。
根據以上研究現狀,首先理論分析了比特跳變對BDS B3I信號捕獲峰值的影響機理;然后以高動態為應用背景,綜合考慮捕獲時間、算法復雜度以及硬件資源消耗,提出了一種基于比特遍歷的PMF+FFT快速捕獲方法;最后利用BDS衛星導航信號模擬器生成高動態場景下的仿真數據,驗證了該方法對BDS B3I信號的適用性。
為了分析比特跳變對衛星接收機捕獲性能的影響,假設接收到的衛星導航信號為s(t),不考慮噪聲和量化誤差,則有:
s(t)=Ad(t)c(t)e-j(ω0t+θ0),
(1)
式中,t為天線接收衛星導航信號的時間;A為信號幅度;c(t),d(t)分別為偽隨機碼和偽隨機碼上調制的數據碼;ω0,θ0分別為接收信號的載波頻率和初始載波相位。假設衛星接收機生成的本地信號為x(t),則有:
(2)

衛星接收機中對單顆衛星信號的捕獲,本質上可表示為求取s(t)和x(t)積分最大值的過程[14],則有:
(3)

(4)
假設本地碼相位和接收衛星信號的碼相位完全對齊,即τ為零,則式(4)可簡化為:
(5)
在大多數應用場景中,接收機捕獲的檢測積分時間一般不會超過1個符號周期[14],在此期間只可能存在一次信息跳變,假設發生在αT(0≤α≤1)時刻,則式(5)可改為:
(6)

(7)
為了方便分析,對式(7)進行歸一化處理,則有:
(8)

由圖1可知,當相干積分時間內存在比特跳變時,捕獲相關器輸出的檢測變量不僅僅是簡單符號位的變化,新的變量是比特跳變位置的函數,其峰值的大小和位置都隨比特跳變位置的變化而改變。因此,比特跳變導致多普勒頻率估計精度降低,從而影響捕獲性能。

圖1 歸一化的相干積分檢測變量包絡Fig.1 Normalized envelop of the detection variable of coherent integration algorithm
作為全球四大衛星導航系統之一,我國的BDS衛星導航系統正在高速發展,并已于2020年完成全球組網。目前,BDS B3I信號已經提供公開定位服務,并由地球靜止軌道衛星(GEO)、傾斜地球同步軌道衛星(IGSO)、中圓地球軌道衛星(MEO)同步進行信號播發,BDS B3I的信號體制隨其播發衛星的種類不同而存在差異。GEO衛星播發速率為500 bit/s的D2導航電文;IGSO衛星和MEO衛星播發速率為50 bit/s的D1導航電文,同時采用周期為20 ms的NH碼對偽隨機碼進行二次調制。顯然,BDS B3I的信號屬性極大提高了其比特跳變率,甚至在每個擴頻碼周期都有可能存在比特跳變。
研究表明[8,14],比特跳變會使相關主峰值減小甚至消失,在頻率軸主峰兩側出現2個邊鋒,頻率估計誤差變大,嚴重時將會導致轉跟蹤失敗;在碼相位軸,主峰的位置保持不變,即比特跳變不影響碼相位的測量精度。在高動態場景下,BDS B3I信號頻繁的比特跳變會導致衛星接收機的捕獲相干積分檢測峰值極易發生分裂現象[15-17]。為此,本文綜合考慮捕獲時間、算法復雜度、硬件資源消耗,提出了一種基于比特遍歷的PMF+FFT快速捕獲方法。該方法在工程實現時具體可劃分為兩步:
第一步,高動態BDS接收機首先讀取數字中頻數據與本地復制的載波進行混頻處理得到零中頻數據,然后將零中頻數據按照2倍碼速率進行累加抽取和量化處理,最后將降采樣后的零中頻數據與緩存的2倍碼速率的本地偽碼序列輸入至PMF+FFT算法模塊中,如圖2所示。

圖2 高動態BDS B3I接收機的捕獲邏輯框圖Fig.2 Logical block diagram of acquisition in high dynamic BDS B3I receiver
第二步,在PMF+FFT算法模塊中,當輸入的零中頻數據與本地緩存的偽碼序列進行分段相關積分后,將PMF相關積分結果等分前后2段,分別與(-1,+1)和(+1,+1)相乘以進行比特遍歷處理,以此抵消考慮到相關積分檢測時間中間位置發生比特跳變對捕獲結果造成的最惡劣的影響,具體算法流程結構如圖3所示。然后將比特遍歷后的2組相關積分結果分別補零進行FFT運算,并選取最大值進行捕獲門限判決。

圖3 基于比特遍歷的PMF+FFT算法邏輯框圖Fig.3 Logical block diagram of PMF+FFT acquisition algorithm based on bit traversal
在基于比特遍歷的PMF+FFT快速捕獲算法中,針對1個碼不確定度,僅在PMF運算后等分前后2段進行比特遍歷處理,可有效削弱相關積分檢測時間中間位置發生比特跳變對捕獲結果造成的最惡劣的影響,而在算法復雜度方面相比于傳統算法只并行多做1次FFT運算。假定傳統算法做一次n點FFT運算,則基于比特遍歷的PMF+FFT快速捕獲算法并未增加FFT運算的點數,僅需做2次n點FFT運算,所以硬件資源消耗程度增加少,易于工程實現,可適用于高動態下BDS B3I衛星接收機的快速捕獲。
為了驗證本文提出的基于比特遍歷的PMF+FFT快速捕獲算法的性能,進行了相應的高動態模擬環境仿真實驗。利用GNSS信號模擬器生成的高動態場景下的BDS B3I衛星導航數據,考慮到高動態場景下的衛星信號功率不至于微弱,故仿真時設置模擬的BDS衛星信號接收功率設定恒為-130 dBm,GNSS信號模擬器的軟件控制界面如圖4所示。

圖4 GNSS信號模擬器軟件控制界面Fig.4 Software control interface of GNSS signal simulator
在利用GNSS信號模擬器進行仿真過程中,設定載體的高動態運動軌跡如表1所示。

表1 載體運動軌跡說明Tab.1 Description of dynamic trajectory of carrier
表1中,g為重力加速度,取值為9.806 65 m/s2。
在Matlab平臺上分別采用傳統PMF+FFT算法和本文提出的基于比特遍歷的PMF+FFT捕獲算法,對采取的BDS B3I數字中頻數據進行捕獲處理,由于BDS D1電文調制了NH碼,比特跳變現象更為明顯,因此在仿真過程中設置捕獲搜索的BDS衛星PRN號范圍為調制了NH碼的6號~10號衛星。選取了相干積分檢測時間段內存在比特跳變的仿真結果記錄如圖5和圖6所示。

(a) 多普勒頻移、碼相位二維搜索仿真圖

(a) 多普勒頻移、碼相位二維搜索仿真圖
由圖5和圖6可知,基于比特遍歷的PMF+FFT算法可在一定程度上抑制相干積分檢測時間段內存在比特跳變對捕獲峰值的影響,保證捕獲參數的有效性。對于在相干積分檢測時間段內非中間區域發生的比特跳變,捕獲峰值對應的多普勒頻率與真實值偏差相對較小。因此,本文提出的基于比特遍歷的PMF+FFT快速捕獲方法可適用于高動態的BDS B3I信號,且易于工程實現。
捕獲是衛星導航接收機實現跟蹤、定位的前提,然而捕獲相關積分檢測時間段內的比特跳變會導致檢測變量峰值分裂,在降低峰值的同時導致載波多普勒頻率估計精度降低,直接影響接收機對衛星信號的捕獲性能。本文以高動態場景下北斗衛星導航系統的B3I信號為研究對象,針對比特跳變導致的捕獲峰值分裂問題,提出了一種基于比特遍歷的PMF+FFT快速捕獲方法,削弱了頻繁比特跳變對捕獲造成的惡劣影響,并且算法復雜度方面相比于傳統算法僅并行多做1次FFT運算,易于工程實現,可適用于高動態的北斗B3I信號。