于雪暉,徐 京,柳 濤
(北京衛(wèi)星信息工程研究所 北京 100086)
目前,GPS(Global Positioning System)系統(tǒng)被廣泛地應(yīng)用于民用和軍事部門,提供定位、測(cè)速和授時(shí)服務(wù)。GPS在L1(1 575.42 MHz)頻率上提供標(biāo)準(zhǔn)定位服務(wù)(SPS)。 每顆 GPS衛(wèi)星有一個(gè)唯一的擴(kuò)頻碼(C/A碼),在用戶端每顆衛(wèi)星的C/A碼是已知的。GPS接收機(jī)需要搜索這些C/A碼,確定當(dāng)前哪些衛(wèi)星是可用的[1]。對(duì)于每個(gè)碼,接收機(jī)要執(zhí)行二維的搜索,即搜索載波頻率偏移和碼相位偏移,也就是捕獲C/A碼,捕獲后接收機(jī)要跟蹤該信號(hào)。信號(hào)捕獲是GPS接收機(jī)中最耗時(shí)的操作,因此,C/A碼信號(hào)的快速捕獲也逐漸成為研究的熱點(diǎn)課題。
Van Nee[2]提出了一種快速的搜索算法(并行碼相位搜索捕獲算法),該方法利用基于FFT的相關(guān)器,在一步內(nèi)搜索所有可能的碼相位偏移,并用頻域乘法進(jìn)行相關(guān)運(yùn)算。在此方法的基礎(chǔ)上,采用兩步信號(hào)處理的方式,減少一級(jí)數(shù)據(jù)采樣點(diǎn),再對(duì)已得到的粗單元進(jìn)行細(xì)分,將頻率分辨率控制在100 Hz左右。相對(duì)于傳統(tǒng)的并行碼相位搜索捕獲算法,在減少了信號(hào)捕獲的運(yùn)算量的同時(shí)提高了頻率分辨率,由此提高了信號(hào)捕獲速度并減小了相關(guān)峰值衰減[3]。
采用基于FFT的并行碼相位快速捕獲方法完成對(duì)衛(wèi)星信號(hào)的捕獲,對(duì)衛(wèi)星信號(hào)的捕獲實(shí)質(zhì)上還是一個(gè)二維搜索的過(guò)程,一個(gè)是對(duì)碼延遲的搜索,另一個(gè)是對(duì)多普勒頻移的搜索。
經(jīng)過(guò)射頻模擬下變頻和數(shù)字下變頻后,接收到的衛(wèi)星信號(hào)可以表示為:
其中A為信號(hào)幅度,C(t)為接收信號(hào)的 PRN 碼,D(t)為導(dǎo)航數(shù)據(jù)信息,頻率為50 Hz,τ為信號(hào)延遲,fd為多普勒頻率,φ0為初始相位,ξ(t)為接收機(jī)噪聲,服從正態(tài)分布。
當(dāng)數(shù)字中頻信號(hào)分別與I支路和Q支路上某一頻率的復(fù)制正弦和復(fù)制余弦載波信號(hào)混頻后,并行碼相位搜索捕獲算法對(duì)混頻結(jié)果進(jìn)行傅里葉變換,然后將變換結(jié)果與復(fù)制C/A碼信號(hào)傅里葉變換的共軛值相乘,接著將所得的乘積經(jīng)傅里葉反變換得到在時(shí)域內(nèi)的相關(guān)結(jié)果,最后對(duì)這些相關(guān)值進(jìn)行檢測(cè)來(lái)判斷信號(hào)是否存在[4]。
根據(jù)衛(wèi)星信號(hào)(1)式,設(shè)多普勒頻移估計(jì)值為f?d,那么首先對(duì)y(tn)信號(hào)進(jìn)行多普勒去除,然后再與復(fù)現(xiàn)的C/A碼作相關(guān)運(yùn)算,如式(2)所示。
其中 d為碼延遲,ts為采樣時(shí)間間隔,C(m-d)為 C/A碼的循環(huán)移位。
對(duì) Z(d,l)做離散傅里葉變換:
因?yàn)镃/A碼為實(shí)數(shù),所以:
對(duì)上式取反傅里葉變換那么,z(d)即為碼延遲為 d,歸一化多普勒為 l時(shí)的相關(guān)值。
根據(jù)上面的討論,當(dāng)復(fù)現(xiàn)的C/A碼與實(shí)際接收信號(hào)的C/A碼完全對(duì)齊,并且 l=[Nfdts]時(shí)相關(guān)結(jié)果z(d)取得最大值,[x]表示取不大于x的最大整數(shù)。此時(shí),碼延遲的估計(jì)值為d,多普勒的估計(jì)值為:
其中,N為DFT的點(diǎn)數(shù),fs為采樣頻率,fs=1/ts。
根據(jù)(7)可知,多普勒頻移的頻率分辨率為:
由式(8)可知,在采樣頻率一定時(shí),DFT的點(diǎn)數(shù)越大,多普勒頻移的頻率分辨能力就越高。
相關(guān)峰值的損耗主要來(lái)自于兩個(gè)方面,碼片分辨率和頻率分辨率。第一由于對(duì)PRN碼進(jìn)行了采樣,碼片分辨率的精度受到采樣率的影響,進(jìn)而影響相關(guān)峰值,相關(guān)峰值的損耗為:
第二方面來(lái)自于殘余的多普勒頻偏,即頻率分辨率,當(dāng)如式(1)的數(shù)字中頻信號(hào)經(jīng)過(guò)混頻后,在進(jìn)行碼相關(guān)的積分時(shí),會(huì)產(chǎn)生一個(gè)幅度的調(diào)制系數(shù) sin c(T),如式所示:
因此,當(dāng)頻率有偏移時(shí),相關(guān)峰值能量的損失SNRloss2為201 g[sin c(T)]。
本文采用Matlab設(shè)計(jì)工具進(jìn)行算法設(shè)計(jì)與實(shí)現(xiàn)。如圖1所示為并行碼相位捕獲算法流程圖。首先,根據(jù)已知的載波頻率和偽碼產(chǎn)生原理復(fù)現(xiàn)本地?cái)?shù)字中頻載波信號(hào)和偽隨機(jī)碼(C/A碼)信號(hào);再將本地載波與接收到的中頻信號(hào)進(jìn)行混頻,剝離載波信號(hào);然后將C/A碼信號(hào)和混頻后的信號(hào)在頻域進(jìn)行乘法運(yùn)算,再進(jìn)行傅里葉反變換,在時(shí)域得到相關(guān)峰值所對(duì)應(yīng)的載波頻點(diǎn)和碼相位[5]。至此,第一次粗搜索進(jìn)行完畢,但由于500 Hz的頻率分辨率太低,不利于后續(xù)的信號(hào)跟蹤,所以要進(jìn)行第二次精搜索。
第二次搜索只對(duì)已經(jīng)捕獲到的信號(hào)即相關(guān)峰值超過(guò)預(yù)定門限的信號(hào)進(jìn)行搜索,根據(jù)上述求得的C/A碼相位,可以得到剝離C/A碼后的載波信號(hào),再將捕獲到的粗單元進(jìn)行細(xì)分,重復(fù)上述計(jì)算,增加數(shù)據(jù)長(zhǎng)度將頻率分辨率調(diào)至100 Hz,這樣只需求得該載波信號(hào)在頻域中最大功率值所對(duì)應(yīng)的頻點(diǎn)[6],即為載波頻率。根據(jù)以上的相關(guān)峰值衰減的理論分析可知,在碼相位分辨率不變的情況下,頻率分辨率從500 Hz提升到100 Hz,相關(guān)峰值衰減可以減小3.78 dB,增大了信號(hào)捕獲的概率,提高了捕獲性能。
為驗(yàn)證捕獲算法的有效性,以一段實(shí)測(cè)的GPS信號(hào)作為數(shù)據(jù)源,該GPS射頻信號(hào)首先通過(guò)射頻前端的下變頻、濾波和放大到中頻為9.548 MHz的信號(hào),然后以38.192 MHz的采樣率進(jìn)行數(shù)字化,量化位數(shù)為8-bit,由于C/A碼信號(hào)帶寬為2.046 MHz,因此38.192 MHz采樣率滿足奈奎斯特采樣定理。經(jīng)數(shù)字化后,每1 ms采樣時(shí)間內(nèi)有38 192個(gè)C/A碼采樣點(diǎn),從這里開(kāi)始利用該算法對(duì)C/A碼進(jìn)行搜索和捕獲。
以21號(hào)衛(wèi)星為例,仿真結(jié)果如圖2所示。從圖中可以得到相關(guān)峰值的C/A碼相位起始位置在采樣點(diǎn)的第13 404點(diǎn)處,最大頻率分量出現(xiàn)在載波頻率為9 547.5 kHz處,此時(shí)得到的載頻有較低的頻率分辨率,細(xì)化頻率后得到其精細(xì)載頻為9 547.426 kHz,滿足跟蹤環(huán)所需的頻率分辨率在幾十赫茲以內(nèi)的要求。
圖3所示為32顆衛(wèi)星的捕獲結(jié)果,全部衛(wèi)星捕獲完畢后將測(cè)量值(峰值與次峰值的比值)與捕獲門限進(jìn)行比較,超過(guò)門限則判為捕獲可以進(jìn)一步轉(zhuǎn)為跟蹤,未超過(guò)門限則視為無(wú)法捕獲[7]。
圖1 并行碼相位捕獲算法流程圖Fig.1 Flow chart of parallel code-phase acquisition method
圖2 21號(hào)衛(wèi)星信號(hào)仿真結(jié)果Fig.2 Simulation result of GPS21 signal
實(shí)驗(yàn)中采樣頻率為38.192 MHz,因此,1 ms內(nèi)得到的采樣點(diǎn)為 38 192個(gè),對(duì)于 FFT運(yùn)算要進(jìn)行補(bǔ)零,即 N′=N+n=38 192+273 44=65 536=216。在并行碼相位捕獲算法中進(jìn)行了兩次FFT運(yùn)算,一次矩陣乘法運(yùn)算和一次IFFT運(yùn)算,每次FFT 和 IFFT 運(yùn)算需要 lbN′×(N′/2)次乘法運(yùn)算和 N′lbN′次加法運(yùn)算,矩陣運(yùn)算需要N′次乘法。若在時(shí)域進(jìn)行傳統(tǒng)的順序搜索捕獲,那么要分別進(jìn)行N2次乘法和加法。因此,可以求得乘法和加法的頻域運(yùn)算次數(shù)相對(duì)于時(shí)域運(yùn)算次數(shù)的百分比分別為:
文中利用Matlab對(duì)改進(jìn)了的并行碼相位捕獲算法進(jìn)行了仿真,仿真結(jié)果表明采用該種方法可以得到輸入信號(hào)的C/A碼初始位置和載波的精細(xì)頻率,減小相關(guān)峰值衰減量,提高捕獲能力,同時(shí)將大量相關(guān)運(yùn)算轉(zhuǎn)換到頻域進(jìn)行,極大減少了計(jì)算量,相對(duì)于時(shí)域順序捕獲算法大大提高了信號(hào)的捕獲速度,能更好地滿足高動(dòng)態(tài)接收機(jī)的實(shí)時(shí)性要求。
[1]謝鋼.GPS原理與接收機(jī)設(shè)計(jì)[M].北京:電子工業(yè)出版社,2009:372-374.
[2]Van-Nee D J R,Coenen A J R M.New fast GPS code acquisition technique using FFT[J].Electronics Letter,1991,27(2):158-160.
[3]Akopian D.Fast FFT based GPS satellite acquisition methods[J].IEE Proceedings Radar Sonar&Navigation,2005,152(4):277-286.
[4]Psiaki M L.Block acquisition of weak GPS signals in a software receiver[EB/OL].(2001-09).http://citeseerx.ist.psu.edu/viewdoc/download doi=10.1.1.6.6940&rep=rep1&type=pdf.
[5]Nogues-Correig O,Gali E C.A GPS-Reflections receiver that computes Doppler/Delay Maps in Real Time [J].IEEE Transactions on Geoscience and Remote Sensing,2007,45(1):156-174.
[6]Nunes F D,Leitao J M N.A new fast code/frequency acquisition algorithm forGPS C/A signals [C]//Vehicular Technology Conference,2003(2):766-770.
[7]Lin D W,Tsui J B Y.A software GPS receiver for weak signals[C]//IEEE MTT-S International Microwave Symposium Digest,2001(3):2139-2142.
[8]李琪琪,葉斌,陳鋒.液體火箭發(fā)動(dòng)機(jī)試驗(yàn)頻率量信號(hào)的處理與仿真[J].火箭推進(jìn),2008(5):39-42.
LI Qi-qi,YE Bin,CHEN Feng.Processing and simulating of frequency signal in liquid propellant rocket engine test[J].Journal of Rocket Propulsion,2008(5):39-42.