苗正戈,鹿珂珂,劉陵順,張海洋
(1.海軍航空工程學院研究生大隊,山東煙臺264001;2.海軍航空工程學院控制工程系,山東煙臺264001)
GPS系統(tǒng)由美國在20世紀70年代研制的新型衛(wèi)星導航系統(tǒng),該系統(tǒng)是以衛(wèi)星為基礎的無線電導航定位系統(tǒng),具有全能性(陸地海洋航空和航天)、全球性、全天候、連續(xù)性和實時性的導航定位和定時的功能,能為各類用戶提供精密的三維坐標、速度和時間[1]。偽隨機序列(Pseudo Random Noise Code)是一個具有一定周期的取值為-1或1的離散符號串,它不但具有高斯噪聲所具有的良好的自相關特性,而且存在特定的編碼規(guī)則,GPS系統(tǒng)使用偽隨機序列來識別和分離不同的衛(wèi)星信號,同時提供無模糊度的測距數(shù)據(jù)。目前的GPS系統(tǒng)(全球導航定位系統(tǒng))的導航信號傳輸大多采用了擴頻通信體制,以此使多顆導航衛(wèi)星構成一個碼分多址(CDMA)系統(tǒng),播發(fā)有用的導航信息,為用戶提供導航定位服務。而擴頻通信本身需要借助偽隨機序列實現(xiàn)。因此,不同的GPS系統(tǒng)均選用了相應的偽隨機序列[2]。
4GPS衛(wèi)星信號包含3種信號分量,即載波、測距碼和數(shù)據(jù)碼:
1)測距碼:測距碼包括C/A碼,P碼,L2M碼,L2C碼,L5碼,L1碼和其他加密后的軍用碼。GPS衛(wèi)星所采用的測距碼均屬于PRN碼。所有GPS衛(wèi)星采用的測距碼的碼長、周期和碼速率均相同,不同的GPS衛(wèi)星采用的測距碼碼序不同。在GPS中,由C/A碼和P碼形成的擴頻信號具有很強的多址工作能力。GPS利用不同碼序的擴頻信號實現(xiàn)對24顆衛(wèi)星的識別和跟蹤。盡管24顆衛(wèi)星發(fā)射著同一種載頻信號,但可以按不同的偽隨機碼加以識別。
2)數(shù)據(jù)碼:數(shù)據(jù)碼又稱導航電文或D碼。它是利用GPS進行導航和定位的基礎,包含了有關衛(wèi)星的星歷、衛(wèi)星工作狀態(tài)、時間系統(tǒng)、衛(wèi)星鐘運行狀態(tài)、軌道攝動改正、大氣折射改正和由C/A碼捕獲P碼等的導航信息。數(shù)據(jù)碼也是二進制碼,數(shù)碼率為50 bits/s。
3)載波:GPS衛(wèi)星使用L波段的兩種頻率的電磁波作為載頻,即:
L1載波:fL1=154×f0=1 575.42 MHz;波長λ1=19.03 cm L2載波:fL2=120×f0=1 227.60 MHz;波長λ2=24.42 cm
兩種載頻之間的間隔為347.82 MHz,等于L2的28.3%。L1載波頻率為P碼碼率的154倍,而L2載波頻率為P碼碼率的120倍,所以選擇這兩個載波,是為了利用雙頻法測量出由于電離層效應而引起的延遲誤差,以便對定位結果加以修正,提高定位精度。
到目前為止,美國已經(jīng)研制了3代共5批GPS衛(wèi)星。初期概念驗證衛(wèi)星Block用于驗證初期的GPS概念,發(fā)射L1和L2波段的信號。第二代產(chǎn)品衛(wèi)星Block II增加了自動差錯檢測功能。在衛(wèi)星的姿態(tài)和速度控制系統(tǒng)中實現(xiàn)了自主的星載動量控制。隨后研制的Block IIA型衛(wèi)星與Block II十分類似。Block IIR又名補充衛(wèi)星,支持所有基本的GPS特性,L1上的C/A和P(Y)碼、L2上的P(Y)碼。隨后研制的現(xiàn)代化的補充衛(wèi)星Block IIR-M將會提供3種新的信號,在L1和L2上的兩個新的軍用碼和記作L2C的L2上的新軍用碼。Block IIF衛(wèi)星則支持M碼和L5的高數(shù)據(jù)吞吐量導航數(shù)據(jù)單元,L5頻率最終設定在1 176.45 MHz。進入新世紀,GPS III計劃提出Block III衛(wèi)星概念,預期提供分米級的定位精度、更好的定時精度、系統(tǒng)完整性解決方案、高數(shù)據(jù)容量的星間鏈路能力以及更高的信號功率。綜上所述,Block IIR系列之前的GPS衛(wèi)星在L1載波上調制有P碼、C/A碼;在L2載波上可調制P碼或C/A碼。隨著GPS現(xiàn)代化進程的發(fā)展,GPS衛(wèi)星將會播送3種新的信號,其中包括兩種新的民用信號:一個L2民用信號(L2C),一個頻率為1 176.45 MHz(115f0)的L5信號,另在L1和L2上會再疊加一個新的軍用信號M碼。
C/A碼屬于黃金碼族(Gold)組合碼,是由兩個10級線性移位寄存器(Linear Feedback Shift Register,LFSR)產(chǎn)生的m序列G1(見圖1)和G2(見圖2)模2復合碼.可表示為[3]:
圖1 移位寄存器G1的結構圖Fig.1 Structure diagram of G1 shift register
式中,τ0為碼元對應的時間1/1 023 ms;Ni為G1和G2間相位偏置的碼元數(shù);G1和G2的特征方程分別表示為式(2)和式(3)。
不同衛(wèi)星的C/A碼通過G2不同的時延確定,時延效果由G2不同的抽頭位置進行異或作為輸出來完成。如第一顆GPS衛(wèi)星的G2抽頭為2、6(圖2),第二顆為3、7等(具體的衛(wèi)星信號對應的抽頭及相應的延遲碼片數(shù)見表1)。
G1、G2的初始值均為1111111111。
C/A碼的碼速率為11 023 MHz,周期為1 ms,碼長為1 023 bits。由于其周期短,速率低,易于被接收機相關捕獲,但也造成了測量誤差大的不良影響,因此C/A碼也被稱為粗捕獲碼。
圖2 移位寄存器G2的結構圖(第一顆衛(wèi)星)Fig.2 Structure diagram of G2 shift register(First satellite)
表1 1~5號衛(wèi)星C/A碼和P碼的參數(shù)Tab.1 Satellite 1~5 parameters of C/A code and P code
P碼是復雜的偽隨機噪聲序列,其碼速率為10.23 MHz,碼周期為266 141天。在實際應用中,每顆衛(wèi)星使用P碼的長度被截短為一星期長擴頻序列。這個7天長的序列有4個12級的線性反饋移位寄存器(X1A,X1B,X2A,X2B)產(chǎn)生。X1A和X1B的輸出模二和形成序列X1、X2A和X2B的輸出模二和形成序列X2。對于第i顆衛(wèi)星序列X2延遲i位后產(chǎn)生序列X2i,然后X1和X2i的線性序列模2和得到最終的P碼序列。序列X1一個循環(huán)的長度是1 534 500,序列X2i一個循環(huán)的長度是15 345 037,i表示序列X2的延遲位數(shù),從而形成32顆衛(wèi)星的不同碼序列(另外5顆衛(wèi)星信號留做它用,如地面?zhèn)鬏敚?/p>
P碼產(chǎn)生的系統(tǒng)統(tǒng)一時鐘源為10.23 MHz。12級線性移位寄存器產(chǎn)生的最大隨機序列是4 095位,而X1A和X2A序列被截短為4 092個碼片,X1B和X2B序列被截短為4 093個碼片。即X1A序列每4 092個碼片循環(huán)一次,X1B序列每4 093個碼片循環(huán)一次,從而形成了X1B序列與X1A序列的相對運動。因此,當X1A序列循環(huán)了3 750次,就完成一次X1序列周期時,X1B序列只循環(huán)了3 749次。此時,X1B對應的移位寄存器就停止移位,等待X1A序列完成第3 750次循環(huán)后產(chǎn)生信號對X1A和X1B移位寄存器重新初始化。X2序列的產(chǎn)生過程與X1序列類似,區(qū)別在于,每次X2A序列完成第3 750次循環(huán)后都要等待37個時鐘周期才產(chǎn)生信號重新初始化X2A和X2B移位寄存器。從而,又形成了序列X2與序列X1的相對運動[4]。
4個移位寄存器的特征方程式分別表示為:4個移位寄存器的相關參數(shù),如表2所示。
表2 P碼移位寄存器相關參數(shù)Tab.2 Parameters of P code shift register
衛(wèi)星Block IIR-M上有兩種碼,L2CM和L2CL碼,這兩種碼可由相同的線性移位寄存器生成,其碼速率均為511.5 kb/s。這兩種碼都被初始化和在循環(huán)結束時重置為特定的初始值(見表3)。L2CM碼是在10 230個碼片后被重置,碼片時長為20 ms,L2CL碼是在767 250個碼片后被重置,其碼片時長是1.5 s。L2CM和L2CL碼的移位寄存器都是在P碼X1周期開始時被同步初始化的。也就是說,第一個L2CM或者L2CL碼片是在P碼一個星期的周期結束或者開始時產(chǎn)生的。
L2CM和L2CL碼的特征多項式是:
L2C的反饋移位寄存器如圖3所示。
圖3 L2C碼移位寄存器示意圖Fig.3 Schematic diagram of L2C code shift register
L2C碼對于不同的衛(wèi)星具有不同的初始值,初始值的情況如表3所示。
表3 不同衛(wèi)星對應移位寄存器的不同初始值和結束值Tab.3 Corresponding to different satellites with different initial values of the shift register and end values
L5碼包括I5i(t)和Q5i(t)兩種信號。這兩種信號的偽隨機序列對于不同的衛(wèi)星i都是獨立的,當時是同步產(chǎn)生的,序列長度是1 ms,碼速率是10.23 Mb/s。對于每一種碼序列都是兩個子序列XA和XBi的模2和。兩個子序列一個循環(huán)的長度分別是8 190和8 191個碼片,再完成一個循環(huán)后,開始一個新的循環(huán),直到產(chǎn)生一個10 230碼片長度的序列。XBi進行選擇性的超前一定的碼片數(shù),從而使得這種很基本的碼片產(chǎn)生方法可以產(chǎn)生出1 ms長的不同的碼序列。在所有的這些碼序列中,有32對是為衛(wèi)星的使用而設計的,另外5對現(xiàn)在預留作它用。這些碼根據(jù)不同的衛(wèi)星號和隨機序列號賦值的碼片見表4。這里的衛(wèi)星號和前面L2碼是一致的。XBi選擇性超前可以產(chǎn)生超過4 000種可能的碼片,這里給出的74種碼(37種I5碼和37種Q5碼)是在這眾多可能中選擇出來的子集。剩下的碼片可以為將來新增的衛(wèi)星使用或者讓其他的L5頻段的信號應用程序使用[5-6]。
I5碼和Q5碼分別在統(tǒng)一的時鐘頻率10.23 Mb/s下由XA和XBIi或者XBQi模2和得到的。XA碼長8 190,其寄存器初始狀態(tài)全為1。XA是13位的移位寄存器,其產(chǎn)生序列的最大長度是8 191位,故XA被截短1位,在每輸出8 190位后,狀態(tài)重置,然后繼續(xù)循環(huán)輸出,持續(xù)1毫秒的時間,輸出10 230個碼片(這與L1頻段的C/A碼是同步的)。XBIi和XBQi的初始值見表4,這兩個碼序列并沒有被截短,碼長是8 191。他們正常結束移位寄存器的一個循環(huán)周期,然后開始新的周期,直到在1 ms的時間內(nèi)生成10 230個碼片(與XA碼同步)。
XA,XBIi,XBQi碼的特征方程是:
XA,XB移位寄存器的示意圖與其他碼序列類似,不在占用版面篇幅進行表述。
表4 L5信號移位寄存器XB不同初始值和結束值及其超前碼片Tab.4 XB shift register L5 signals of different initial and end values and advance chip
以C/A碼仿真為例,在Matlab中分別定義兩個一維數(shù)組代替移位寄存器,然后用1代表0,-1代表1,因而模2和可以直接取數(shù)組中相應的位相乘。同時將兩個數(shù)組初始值均賦值為-1。數(shù)組的第一位作為寄存器的輸入,數(shù)組的最后一位作為輸出。按照特征多項式給出的值進行反饋相乘并賦值給數(shù)組的第一位,同時對數(shù)組進行移位處理。如此循環(huán)移位4 092次,即得到G1和G2的一個碼序列。然后對于不同的衛(wèi)星,對G2的輸出序列進行相應的延遲移位,再與G1的輸出序列進行模2和,就得到了C/A碼一個周期的碼序列。1號衛(wèi)星的輸出碼序列如圖4所示。
上述仿真結果分別為,上方兩幅波形均為1號衛(wèi)星的碼序列波形,左下為1號衛(wèi)星波形自相關運算結果,右下為1號衛(wèi)星碼序列的頻譜圖。經(jīng)與表1中結果比對準確無誤,符合真實GPS信號碼序列特征。其他碼序列產(chǎn)生除方法略顯繁瑣外,其他大致相同,在此不再贅述。C/A碼的自相關的最大值是1 023,等于C/A碼的長度。為了使結果更為明顯最大值峰被有意地移到了圖像的中間。其余的值是63、-1和-65。見圖4左下角波形。符合真實GPS信號碼序列的自相關特性。
圖4 1號衛(wèi)星的波形圖、自相關圖以及頻譜圖Fig.4 Waveform gram,autocorrelationgram,spectrumgram for first satellite
全球衛(wèi)星定位導航系統(tǒng)是以人造衛(wèi)星作為導航臺的星基無線電導航系統(tǒng),能全天時、全天候地為全球任何地方提供高精度的三維位置、速度和時間信息,已成為信息體系的重要基礎設施,直接關系到國計民生的關鍵性技術支撐系統(tǒng)。準確掌握GPS信號的產(chǎn)生原理,并能通過仿真方法產(chǎn)生GPS信號,可應用到GPS信號的分析研究中,以及GPS接收機的開發(fā)研制,并為進一步的GPS信號發(fā)生器及衛(wèi)星信號同步處理奠定了基礎。
[1] 邱致和.GPS原理與應用[M].北京:電子工業(yè)出版社,2002.
[2] 劉基余.GPS衛(wèi)星導航定位原理與方法[M].北京:科學出版社,2008,2-10.
[3] 馮永新,高瑜,潘成勝.GPS P碼的軟件生成算法[J].火力與指揮控制,2008,33(10):34-37.FENG Yong-xin,GAO Yu,PAN Cheng-sheng.Software algorithm for GPS P code generation[J].Fire Control&Command Control,2008,33(10):34-37.
[4] GPS JOINT PROGRAMOFFICE.IS-GPS-200.NAVSTAR GPS Space Segment Navigation Users Interfaces[S].2004.
[5] GPS JOINT PROGRAMOFFICE.IS-GPS-705.NAVSTAR GPS Space Segment Navigation Users Interfaces[S].2003.
[6] Sukeova L,Sontos MC,Langley R B,et al.GPS L2C Signal Quality Analysis[C]//ION 63rd Annual Meeting,Massachusetts:Cambridge,2007:232-241.