馬經(jīng)緯,王延?xùn)|,江 晟
(中國科學(xué)院長春光學(xué)精密機(jī)械與物理研究所,長春 130033)
GPS 是目前世界范圍內(nèi)發(fā)展最為完善,運(yùn)行最為穩(wěn)定,應(yīng)用范圍最廣的衛(wèi)星導(dǎo)航系統(tǒng)。近年來,隨著GPS 產(chǎn)品的飛速發(fā)展和廣泛應(yīng)用,人們對GPS 的使用環(huán)境要求也越來越高,包括在高樓林立的城市街道、室內(nèi)、停車場等衛(wèi)星信號微弱的環(huán)境。因此,在弱信號環(huán)境下GPS 的衛(wèi)星信號捕獲問題成為了近年來的研究熱點(diǎn)[1]。
信號捕獲的主要任務(wù)是在空間中存在的眾多電磁波信號中準(zhǔn)確地識別捕獲到GPS 衛(wèi)星廣播的信號,確定衛(wèi)星信號的多普勒頻移和偽碼的初始相位,實(shí)現(xiàn)接收機(jī)本地生成的載波信號和偽碼與接收到的衛(wèi)星信號的粗同步,為接收機(jī)后續(xù)的信號跟蹤和導(dǎo)航結(jié)算打下基礎(chǔ)[2]。捕獲靈敏度是指接收機(jī)能夠捕獲到的衛(wèi)星信號的最低信噪比(SNR),是反映接收機(jī)性能的重要指標(biāo)。
在弱信號捕獲方面,加長相干積分時間是最有效的方法,但導(dǎo)航數(shù)據(jù)跳變位的存在限制了相干積分時間的加長[3]。在不知道導(dǎo)航數(shù)據(jù)跳變位置的情況下,相干積分時間通常不超過10ms[4]。因此,估計導(dǎo)航數(shù)據(jù)跳變的位置就成了弱信號捕獲的關(guān)鍵。文獻(xiàn)[5]中介紹了一種全比特的弱信號捕獲算法,但這種算法計算量巨大,不利于工程實(shí)現(xiàn)。文獻(xiàn)[6]中介紹了半比特捕獲算法,并將塊累加思想運(yùn)用到算法中,但這種算法中采用的非相干積分累加方法會造成平方損失,不利于積分增益的提高。文獻(xiàn)[3]中介紹了一種避免平方損失的差分累加的方法,但相干積分時間仍然限制在10 ms。
本研究對GPS 接收機(jī)的信號捕獲算法進(jìn)行了研究,同時在半比特捕獲算法的基礎(chǔ)上提出了一種改進(jìn)的弱信號捕獲算法,提高了GPS 接收機(jī)的捕獲靈敏度。
傳統(tǒng)的GPS 信號捕獲算法主要有串行時域捕獲算法和并行頻域捕獲算法2 種,其中,串行時域捕獲算法主要應(yīng)用在傳統(tǒng)的GPS 硬件接收機(jī)中,而并行頻域捕獲算法主要應(yīng)用于軟件接收機(jī)中。由于串行時域捕獲算法對衛(wèi)星信號的多普勒頻移和碼相位進(jìn)行二維搜索,搜索區(qū)間大,耗時長,因此本文主要介紹頻域的并行碼相位捕獲算法。
并行碼相位捕獲算法可將碼相位的搜索過程通過傅里葉變換一次性完成,因此只需要在頻率范圍內(nèi)進(jìn)行搜索即可。這種算法將與本地載波信號進(jìn)行混頻后的中頻信號和本地C/A 碼信號分別進(jìn)行傅里葉變換之后共軛相乘,然后再進(jìn)行傅里葉反變換,得到信號相關(guān)累積后的模值與門限值進(jìn)行比較,若高于門限值則捕獲成功,否則在下一頻段繼續(xù)捕獲。其原理圖如圖1 所示[7]。
圖1 并行碼相位捕獲算法原理框圖
對于2 個長為N 點(diǎn)的周期性序列x(n)和y(n),它們的相關(guān)值z(n)為
對上述相關(guān)值z(n)進(jìn)行離散傅里葉變換,得到離散傅里葉變換結(jié)果如下
其中:X(k)和Y(k)分別為x(n)和y(n)的離散傅里葉變換;ˉY(k)表示變換結(jié)果Y(k)的共軛。若x(n)和y(n)分別代表輸入的衛(wèi)星信號和本地產(chǎn)生的偽碼序列,則由式(2)可以得知,2 個序列在時域內(nèi)做相關(guān)運(yùn)算相當(dāng)于它們的離散傅里葉變換在頻域內(nèi)做共軛乘積運(yùn)算,因此,頻域內(nèi)乘積的傅里葉反變換也正代表了時域內(nèi)各個碼相位處的相關(guān)值。
在正常情況下接收機(jī)通常利用1 ms 的衛(wèi)星信號數(shù)據(jù)便可成功的捕獲到信號,即一個C/A 碼的周期,無論是采用時域捕獲算法或頻域捕獲算法均可,但在弱信號的環(huán)境下,由于有用信號的功率比較低,捕獲的判決量往往達(dá)不到門限值,造成捕獲的失敗。因此,在這種情況下,接收機(jī)在捕獲的過程中需要對幾十毫秒甚至幾百毫秒的衛(wèi)星數(shù)據(jù)通過一定方法進(jìn)行處理以得到可靠的捕獲判決量。一般采用對多個C/A 碼周期的相關(guān)結(jié)果進(jìn)行一定的累加方式以提高微弱信號的信噪比。常用的累加方法有相干累加、非相干累加和差分累加方法[8-10],相干累加方法對信噪比提升最為明顯,但其累加時間受到導(dǎo)航數(shù)據(jù)比特跳變和損耗因子的限制;非相干累加雖然克服了導(dǎo)航數(shù)據(jù)比特的跳變,但其引入了平方損失,信噪比提升有限; 差分累加的信噪比提升介于相干累加和非相干累加之間,由于其不受導(dǎo)航數(shù)據(jù)為跳變的影響,所以在弱信號處理過程中是一個比較好的選擇。在高靈敏度接收機(jī)設(shè)計中,為了盡可能兼顧實(shí)時性,獲取更高的信噪比,通常采取將這幾種累積算法相結(jié)合的算法。
半比特方法是弱信號捕獲中較常用的一種算法。由于導(dǎo)航數(shù)據(jù)比特的寬度為20 ms,因此半比特方法將讀入的衛(wèi)星信號每20 ms 分成兩段,前后各10 ms,這樣導(dǎo)航數(shù)據(jù)比特的跳變肯定會落在2 個10 ms 數(shù)據(jù)塊中的一個里面,從而導(dǎo)致含有導(dǎo)航跳變的數(shù)據(jù)塊相干累加結(jié)果變小。對前后10 ms的數(shù)據(jù)進(jìn)行相干累加,奇數(shù)段(數(shù)據(jù)段1,3,5,…)的相干結(jié)果進(jìn)行非相干累加,偶數(shù)段(數(shù)據(jù)段2,4,6,…)的相干結(jié)果進(jìn)行非相干累加,然后比較2 個非相干累加結(jié)果的大小。由于數(shù)據(jù)比特的寬度為20 ms,因此跳變位置只可能存在于奇數(shù)塊中或者偶數(shù)塊中而絕不可能同時存在于奇數(shù)塊和偶數(shù)塊中。因此,比較奇數(shù)塊和偶數(shù)塊非相干累加結(jié)果后便可以成功的避免導(dǎo)航數(shù)據(jù)比特跳變的影響,利用不含有導(dǎo)航跳變的一組數(shù)據(jù)進(jìn)行捕獲判決,完成衛(wèi)星信號的捕獲。但半比特方法有2 個明顯的缺點(diǎn):首先半比特方法中相干累加的時間只有10 ms,數(shù)據(jù)利用率低。其次該算法采用了非相干累加方法,捕獲過程中會引入平方損耗,降低了信噪比增益。
本研究提出的弱信號捕獲算法對半比特方法的2 個缺點(diǎn)進(jìn)行改進(jìn)。首先通過精確判斷導(dǎo)航數(shù)據(jù)比特跳變位置提高其相干累加時間,同時避免導(dǎo)航數(shù)據(jù)比特跳變的影響; 其次利用差分累加方式代替非相干累加來避免非相干累加引入的平方損失,提高信噪比。
由于半比特方法只是確定導(dǎo)航數(shù)據(jù)跳變存在于哪個10 ms 的數(shù)據(jù)塊當(dāng)中,因此在進(jìn)行捕獲的過程中最長只能進(jìn)行10 ms 的相干累加,而與其相鄰的存在導(dǎo)航數(shù)據(jù)跳變的10 ms數(shù)據(jù)則只能舍棄。針對這一問題,本研究將對導(dǎo)航數(shù)據(jù)跳變的位置進(jìn)行進(jìn)一步確定,將讀入的衛(wèi)星數(shù)據(jù)中的每個10 ms數(shù)據(jù)再進(jìn)行分塊,分成2 個5 ms 的數(shù)據(jù)塊,通過相干積分之后的比較進(jìn)一步確定導(dǎo)航數(shù)據(jù)跳變位置存在于哪個5 ms 的數(shù)據(jù)之中,從而使可用于相干積分的數(shù)據(jù)長度變?yōu)?5 ms,提高捕獲的靈敏度。新的捕獲算法數(shù)據(jù)分塊圖如圖2 所示。
圖2 改進(jìn)算法數(shù)據(jù)分塊
由圖2 可知,改進(jìn)的弱信號捕獲方法讀入N ×20 ms 的衛(wèi)星數(shù)據(jù),將衛(wèi)星數(shù)據(jù)每20 ms 為一組,共分成N 組;接下來每一組20 ms 數(shù)據(jù)以5 ms 為單位分為4 塊,分別標(biāo)記為A、B、C、D。將每一個5 ms 數(shù)據(jù)塊以1 ms 為單位進(jìn)行數(shù)據(jù)累加,累加后的數(shù)據(jù)進(jìn)行相干積分得到RAn,RBn,RCn,RDn(n =1 ~N)。由于每組數(shù)據(jù)相差時間為20 ms,即一個導(dǎo)航數(shù)據(jù)跳變周期,導(dǎo)航數(shù)據(jù)比特跳變將會發(fā)生在每組數(shù)據(jù)的相同位置的數(shù)據(jù)塊內(nèi)。將N 組數(shù)據(jù)中的相同位置數(shù)據(jù)塊的相干累加結(jié)果進(jìn)行平方相加得到4 組累加結(jié)果:
比較4 組累加結(jié)果(YA,YB,YC,YD)的大小,其中累加結(jié)果最小的一組內(nèi)含有導(dǎo)航數(shù)據(jù)比特的跳變,因此便確定了含有導(dǎo)航數(shù)據(jù)比特跳變的5 ms 數(shù)據(jù)塊的位置。以這個位置為邊界,將處在2 個導(dǎo)航數(shù)據(jù)跳變位置之間的3 個數(shù)據(jù)塊的相干累加結(jié)果進(jìn)行相干累加。由于處在2 個導(dǎo)航數(shù)據(jù)跳變位置之間的數(shù)據(jù)塊數(shù)據(jù)碼沒有跳變,即符號相同,因此得到的累加結(jié)果便相當(dāng)于15 ms 的相干累加結(jié)果。接下來對每個15 ms 的相干累加結(jié)果進(jìn)行差分累加,最終得到捕獲檢測量。下面舉例說明。
若導(dǎo)航數(shù)據(jù)比特跳變位置發(fā)生在A 位置,則不含導(dǎo)航數(shù)據(jù)比特跳變的數(shù)據(jù)塊累加結(jié)果依次為
則檢測統(tǒng)計量為
若導(dǎo)航數(shù)據(jù)比特跳變發(fā)生在B 位置,則不含導(dǎo)航數(shù)據(jù)比特跳變的數(shù)據(jù)塊累加結(jié)果依次為
則檢測統(tǒng)計量為
由于每組數(shù)據(jù)分為4 塊,所以導(dǎo)航數(shù)據(jù)跳變位置為C 和D 的情況分別與跳變位置為B 位置和A 位置相同,這里不再贅述。
綜上所述,結(jié)合并行碼相位FFT 捕獲方法,可以得到改進(jìn)的弱信號捕獲算法的具體流程圖如圖3 所示。
改進(jìn)后的弱信號捕獲算法具體流程如下:
1)讀入N×20 ms 衛(wèi)星信號數(shù)據(jù),在當(dāng)前搜索的頻點(diǎn)上進(jìn)行中頻信號與載波的混頻。
2)將讀入的數(shù)據(jù)以20 ms 為單位分組,每組再以5 ms為單位進(jìn)行數(shù)據(jù)分塊,分塊形式見圖2。
3)分別對每個5 ms 數(shù)據(jù)塊進(jìn)行數(shù)據(jù)累加,得到1 ms 的累加數(shù)據(jù),并對累加后的1 ms 數(shù)據(jù)進(jìn)行FFT 操作,與本地C/A碼的共軛FFT 相乘,對相乘結(jié)果進(jìn)行FFT 逆變換,這樣便得到了4 ×N 組累加數(shù)據(jù)塊的相干積分結(jié)果。分別每組數(shù)據(jù)相同位置的相干積分結(jié)果進(jìn)行平方累加,得到4 組累加結(jié)果。
4)比較4 組累加結(jié)果,結(jié)果最小的一組對應(yīng)的數(shù)據(jù)塊位置中存在導(dǎo)航數(shù)據(jù)比特跳變。
5)以存在導(dǎo)航數(shù)據(jù)比特跳變的數(shù)據(jù)塊為邊界,將2 個邊界之間的相鄰3 組數(shù)據(jù)塊的相干積分結(jié)果進(jìn)行累加,得到相當(dāng)于15 ms 的相干累加結(jié)果。
6)再對這些相干積分結(jié)果取模后進(jìn)行差分累加,累加后的結(jié)果與門限值比較,若大于門限值則捕獲成功,否則繼續(xù)在下一頻段搜索。
由以上分析可知,在改進(jìn)的弱信號捕獲方法中,導(dǎo)航數(shù)據(jù)跳變位置被更加精確地確定在了5 ms 的數(shù)據(jù)中,這樣每20 ms 的數(shù)據(jù)便可以進(jìn)行15 ms 的相干累加,結(jié)合差分累加,捕獲的信噪比增益較傳統(tǒng)半比特方法將大大提升。同時,采取先累加后相關(guān)的方法減小捕獲過程中的計算量,算法的執(zhí)行速度得以提升。
圖3 改進(jìn)的弱信號捕獲算法流程
為了驗(yàn)證改進(jìn)的弱信號捕獲算法的有效性,在Matlab 環(huán)境下對弱信號捕獲算法進(jìn)行了仿真。設(shè)置仿真參數(shù):采樣頻率: fs=8.184 MHz;中頻頻率: fi=4.309 MHz。采用恒虛警門限法,虛警率設(shè)為10-2。
首先對改進(jìn)的弱信號捕獲算法與傳統(tǒng)的半比特方法在捕獲概率上進(jìn)行比較。每種方法讀入100 ms 的衛(wèi)星數(shù)據(jù),分別在不同信噪比下進(jìn)行信號捕獲,每個信噪比下面進(jìn)行100 次捕獲,最終計算其捕獲概率,得到的結(jié)果圖如圖4所示。
圖4 改進(jìn)算法與傳統(tǒng)算法性能對比
由圖4 可知,相比于傳統(tǒng)的半比特方法,改進(jìn)的弱信號捕獲方法在捕獲靈敏度提升上效果較好。在相同的捕獲概率下,改進(jìn)的算法比傳統(tǒng)半比特算法靈敏度提高了2 ~3 dB。
在正常的室內(nèi)弱信號環(huán)境下,GPS 信號的信噪比SNR 大約在-34 dB 左右,此時采用改進(jìn)的弱信號捕獲算法進(jìn)行信號的捕獲,使用100 ms 的衛(wèi)星信號數(shù)據(jù),結(jié)果如圖5 所示。
由圖5 可知,在正常的室內(nèi)弱信號環(huán)境下,改進(jìn)的捕獲算法可以很好地捕獲到衛(wèi)星信號,捕獲過程中噪聲干擾小,在捕獲點(diǎn)處相關(guān)值突出,捕獲效果好。
為了驗(yàn)證改進(jìn)捕獲算法的捕獲靈敏度,繼續(xù)降低衛(wèi)星信號的信噪比,衛(wèi)星信號長度依舊為100 ms,當(dāng)信噪比SNR 達(dá)到-40 dB 時,改進(jìn)捕獲算法的捕獲效果圖和傳統(tǒng)算法的捕獲效果圖分別如圖6 和圖7 所示。
圖5 SNR= -34 dB 100 ms 數(shù)據(jù)改進(jìn)算法捕獲圖
圖6 SNR= -40 dB 改進(jìn)算法捕獲圖
圖7 SNR= -40 dB 傳統(tǒng)算法捕獲圖
由圖6 可知,當(dāng)衛(wèi)星信號的信噪比降低到-40 dB 時,改進(jìn)的捕獲算法依然能夠捕獲到衛(wèi)星信號,但捕獲過程中噪聲干擾比較大,捕獲點(diǎn)處相關(guān)值依然比較突出; 而由圖7 可知傳統(tǒng)算法在此信噪比下已經(jīng)無法捕獲到衛(wèi)星信號。繼續(xù)降低衛(wèi)星信號的信噪比,改進(jìn)捕獲算法依然可以捕獲到衛(wèi)星信號,但噪聲干擾變大,捕獲效果變差,所以認(rèn)為其捕獲靈敏度可以達(dá)到-40 dB。
本研究介紹了一種新的弱信號捕獲算法,在半比特算法的基礎(chǔ)上進(jìn)行了改進(jìn),將相干積分時間提高到了15 ms,并采用了新的累加方法提高信噪比。通過仿真分析,本研究的弱信號捕獲算法可以成功的捕獲到相當(dāng)于室內(nèi)弱信號的信噪比-40 dB 的衛(wèi)星信號,比傳統(tǒng)的半比特捕獲算法捕獲靈敏度提高了2 ~3 dB,使GPS 軟件接收機(jī)在弱信號環(huán)境下也能快速地實(shí)現(xiàn)信號的捕獲。
[1]Oleksiy V Korniyenko,Mohammad S Sharawi.GPS software receiver implementations[J]. IEEE Potentials Magazine,2007 (26):42-46.
[2]方科.高動態(tài)擴(kuò)頻信號捕獲的多普勒補(bǔ)償[J].四川兵工學(xué)報,2013,34(7):122-124.
[3]Yang Liu,Tian Jin.Analysis and compare of weak GPS signal acquisition algorithms[C]//IET International Communication Conference on Wireless Mobile and Computing.Shanghai,China,2009.
[4]O’Driscoll C,Petovello M G,Lachapelle G. Software receiver strategies for the acquisition and re-acquisition of weak GPS signals[C]//Proceedings of National Technical Meeting.California,USA,2008.
[5]Mao Wei-Lung,Chen An-Bang.New code delay compensation algorithm for weak GPS signal acquisition[J].AEU-International Journal of Electronics and Communications,2009,63(8):665-677.
[6]李寅寅,徐曉蘇,劉錫祥.基于半比特交替和FFT 組合的GPS 軟件接收機(jī)弱信號捕獲算法[J].中國慣性技術(shù)學(xué)報,2012,20(1):46-50.
[7]謝剛.GPS 原理與接收機(jī)設(shè)計[M].北京:電子工業(yè)出版社,2009.
[8]唐康華. GPS/MIMU 嵌入式組合導(dǎo)航關(guān)鍵技術(shù)研究[D].長沙:國防科技大學(xué),2008.
[9]馬若飛.GPS 弱信號捕獲算法研究及其在軟件接收機(jī)上的實(shí)現(xiàn)[D].哈爾濱:哈爾濱工業(yè)大學(xué),2010.
[10]文立,劉建業(yè),李榮冰.面向深組合導(dǎo)航技術(shù)的GPS 軟件接收機(jī)捕獲算法[J].彈箭與制導(dǎo)學(xué)報,2009,29(1):31-34.