王悅(西安文理學(xué)院 信息中心,陜西 西安 710068)
基于FPGA的GPS軟件接收機(jī)跟蹤算法的優(yōu)化和研究
王悅
(西安文理學(xué)院 信息中心,陜西 西安710068)
隨著GPS技術(shù)在日常生話(huà)和科研領(lǐng)域應(yīng)用的越來(lái)越廣泛,而GPS軟件接收機(jī)作為作為GPS技術(shù)最關(guān)鍵的一部分,對(duì)其定位的準(zhǔn)確性,精度以及實(shí)時(shí)性的要求就變得越來(lái)越高。傳統(tǒng)的GPS軟件接收機(jī)以及無(wú)法滿(mǎn)足現(xiàn)在高精度,高時(shí)效性的要求。因此,本文在原有接收機(jī)跟蹤算法的基礎(chǔ)上,進(jìn)行了升級(jí)和優(yōu)化。開(kāi)發(fā)了一個(gè)基于FPGA的GPS軟件接收機(jī)優(yōu)化的跟蹤算法,完成了跟蹤算法中噪聲帶寬、環(huán)路增益、快捕范圍、環(huán)路濾波器等關(guān)鍵參數(shù)的設(shè)置。本算法具有比之前傳統(tǒng)算法具有穩(wěn)定度高,定位準(zhǔn)確且高效的優(yōu)勢(shì),經(jīng)過(guò)數(shù)據(jù)測(cè)試,達(dá)到了設(shè)計(jì)要求。
GPS;跟蹤;FPGA;算法優(yōu)化;接收機(jī)
隨著全球各種衛(wèi)星導(dǎo)航系統(tǒng)以及GPS技術(shù)的逐漸普及和完善,衛(wèi)星導(dǎo)航定位接收機(jī)作為導(dǎo)航技術(shù)中最關(guān)鍵的一環(huán),其各種應(yīng)用也都得到了最大程度的發(fā)展和普及。除了在大家熟知的軍事,勘探,交通的行業(yè),如今在電力部門(mén),土地部門(mén)以及消防,農(nóng)業(yè)等部門(mén)也都得到了廣泛的應(yīng)用。并且其應(yīng)用的形式也是多種多樣并朝著更加多元化的方式發(fā)展。GPS技術(shù)是當(dāng)今應(yīng)用最廣也是導(dǎo)航性能最好,最穩(wěn)定的定位系統(tǒng),其高穩(wěn)定度嗎,高精度,高時(shí)效性,光應(yīng)用性等特點(diǎn)是其以成為一個(gè)重要產(chǎn)業(yè)的原因,也使得越來(lái)越多其他產(chǎn)業(yè)對(duì)此越來(lái)越關(guān)注。與傳統(tǒng)的GPS接收機(jī)相比,GPS軟件接收機(jī)在應(yīng)用的廣度和靈活度上有著很大的優(yōu)勢(shì)。該接收機(jī)運(yùn)用的是如今應(yīng)用最廣泛的軟件編程的原理,在硬件平臺(tái)上可以根據(jù)自己的使用需求下載不同的應(yīng)用程序,然后通過(guò)對(duì)程序的控制來(lái)實(shí)現(xiàn)使用者需求的功能。軟件接收機(jī)與普通接收機(jī)相比另一個(gè)明顯的優(yōu)勢(shì)就是對(duì)信號(hào)的存儲(chǔ)功能,中頻或者中低頻的信號(hào)的可以被其存儲(chǔ)下來(lái),因此其可以滿(mǎn)足各種不同的甚至非常復(fù)雜的算法要求,并且在不降低響應(yīng)速度的前提下,提高接收機(jī)的精度以及提高信號(hào)的強(qiáng)度。因?yàn)樵趥鬏斶^(guò)程,因?yàn)楹芏嘣蚨紩?huì)導(dǎo)致信號(hào)有衰減,所以該軟件接收機(jī)會(huì)對(duì)信號(hào)進(jìn)行增強(qiáng)。文中為了滿(mǎn)足上述對(duì)軟件接收機(jī)全新的高要求,對(duì)軟件接收機(jī)的算法進(jìn)行了改進(jìn)。設(shè)計(jì)開(kāi)發(fā)了基于FPGA的GPS軟件接收機(jī)的跟蹤算法,
運(yùn)用MATLAB進(jìn)行定點(diǎn)建模。利用FPGA這個(gè)平臺(tái)將跟蹤算法進(jìn)行升級(jí)和優(yōu)化。并利用Verilog語(yǔ)言對(duì)算法中需要的各個(gè)子模塊進(jìn)行硬件性的描述,將信號(hào)獲取和信號(hào)分析統(tǒng)一在一起,最后經(jīng)過(guò)系統(tǒng)調(diào)試和實(shí)驗(yàn),實(shí)現(xiàn)了實(shí)時(shí)準(zhǔn)確地定位功能[1-2]。
GPS系統(tǒng)主要是由空間星座部分、地面監(jiān)控部分和用戶(hù)設(shè)備部分等3個(gè)部分組成。3個(gè)部分通過(guò)信號(hào)的傳遞,互相連通,協(xié)調(diào)合作,完成一系列操作[3]。
GPS系統(tǒng)是依靠被發(fā)射入太空的24顆衛(wèi)星構(gòu)成,在這些衛(wèi)星中實(shí)際參與工作的衛(wèi)星是21顆,其余的3顆是備用衛(wèi)星。所有的衛(wèi)星均勻分布在地球周?chē)牧鶄€(gè)軌道平面上,之所以說(shuō)是平均分布,是因?yàn)樵诿總€(gè)平面上都均勻分配著四顆衛(wèi)星。每個(gè)平面的夾角都是60°。
為了滿(mǎn)足地球上的使用者可以在任何時(shí)間地點(diǎn)利用到衛(wèi)星進(jìn)行實(shí)際應(yīng)用這個(gè)需求,衛(wèi)星的設(shè)計(jì)者將其布局安排與上述結(jié)構(gòu)一致,這也是最科學(xué)的分配方法。因?yàn)樵摲椒ㄊ墙?jīng)過(guò)嚴(yán)格的數(shù)學(xué)計(jì)算以及充分考慮到衛(wèi)星之間的容錯(cuò)率。如果某一個(gè)軌道平面上的衛(wèi)星因?yàn)槟撤N原因發(fā)生故障不能工作時(shí),與之相鄰軌道平面上的衛(wèi)星會(huì)自動(dòng)接管此衛(wèi)星的工作,直至該衛(wèi)星恢復(fù)正常,不會(huì)影響到衛(wèi)星信號(hào)的覆蓋和使用。而且,備用的三顆零時(shí)衛(wèi)星也可以在多個(gè)衛(wèi)星同時(shí)出現(xiàn)故障時(shí)起到很好地代替作用,充分保證了GPS系統(tǒng)的正常運(yùn)轉(zhuǎn)。地面的監(jiān)控部分主要是由主控站,注入站和監(jiān)測(cè)站構(gòu)成。其分別分布在世界的各個(gè)角落。其中主控站只有一個(gè),而其余兩個(gè)則分別是四個(gè)和六個(gè)。地面監(jiān)控部分的主要職責(zé)就是對(duì)空中的衛(wèi)星進(jìn)行實(shí)時(shí)監(jiān)控,對(duì)其的運(yùn)行軌道和運(yùn)行狀態(tài)進(jìn)行跟蹤分析,發(fā)出工作指令以及解決突發(fā)問(wèn)題,保證系統(tǒng)的正常運(yùn)轉(zhuǎn)。用戶(hù)設(shè)備通??梢岳斫鉃镚PS接收裝置。這個(gè)設(shè)備的主要作用就是接收衛(wèi)星所發(fā)出的信息信號(hào),將信號(hào)傳入接收機(jī)內(nèi)部,通過(guò)其內(nèi)部各個(gè)模塊的分析處理,以實(shí)現(xiàn)對(duì)用戶(hù)位置的導(dǎo)航解算,完成定位功能[4-5]。
完成上述一些列操作的媒介就是衛(wèi)星的傳輸信號(hào),而衛(wèi)星信號(hào)的主要成分就是偽隨機(jī)碼。由于在太空中有很多影響信號(hào)穩(wěn)定的物質(zhì),所以一般在信號(hào)發(fā)射前,需要對(duì)偽隨機(jī)碼調(diào)制解調(diào),對(duì)信號(hào)進(jìn)行增強(qiáng),達(dá)到可以接收到穩(wěn)定正確的傳輸信號(hào)的目的。偽隨機(jī)碼中的偽隨機(jī)序列是保證信號(hào)可以被捕獲和跟蹤的保證,因?yàn)槠溆兄軓?qiáng)的互相關(guān)性。對(duì)偽隨機(jī)序列進(jìn)行的頻率進(jìn)行拓展,可以增強(qiáng)GPS信號(hào)的抗干擾能力,并使其隱秘性得到了加強(qiáng),并可以提高其在定位導(dǎo)航功能上的精度。由于本文研究的接收機(jī)主要是在民用范圍,因此本文的隨機(jī)碼主要是C/A碼[6-7]。圖1為C/A發(fā)生器的結(jié)構(gòu)。
圖1 CA碼發(fā)生器結(jié)構(gòu)
GPS基帶信號(hào)處理的過(guò)程是GPS系統(tǒng)在實(shí)現(xiàn)過(guò)程過(guò)程中最關(guān)鍵的一個(gè)部分,其處理過(guò)程的穩(wěn)定性和準(zhǔn)確性是保證實(shí)現(xiàn)定位等功能的關(guān)鍵。處理過(guò)程主要是捕獲和追蹤兩個(gè)方面。在對(duì)信號(hào)進(jìn)行的處理過(guò)程中,首先要將信號(hào)進(jìn)行捕獲,通過(guò)捕獲得到信號(hào)的原始頻率和C/A碼的粗略的估計(jì)值。在操作完成后,進(jìn)入到追蹤階段,追蹤的主要目的就是將上一步得到的粗略的估計(jì)值進(jìn)行準(zhǔn)確的分析,經(jīng)過(guò)分析得到精確地相位和頻率信息,并對(duì)最終的信號(hào)進(jìn)行調(diào)制解調(diào)[8]。
捕獲作為基帶信號(hào)處理最關(guān)鍵的一個(gè)步驟,在對(duì)信號(hào)的處理過(guò)程中,第一步就是找到需要處理的信號(hào),就是將其捕獲。由于GPS系統(tǒng)中有許多不同地址的系統(tǒng),所以在對(duì)信號(hào)進(jìn)行捕獲時(shí)最常用的算法就是串行搜索捕獲算法。GPS串行搜索捕獲算法的框圖如圖2所示。算法作為捕獲過(guò)程的核心,是完成該步驟的關(guān)鍵,本文的目的也是通過(guò)對(duì)算法的優(yōu)化,實(shí)現(xiàn)高精度,高效率的信號(hào)分析和最終定位。該算法的實(shí)現(xiàn)過(guò)程相對(duì)比較簡(jiǎn)單,基本原理就是通過(guò)將輸入信號(hào)與本地的偽碼經(jīng)行乘積運(yùn)算。輸入的信號(hào)通過(guò)與本地偽碼的乘積運(yùn)算后,在于載波信號(hào)相乘。其中與本地載波cos(x)相乘產(chǎn)生同相支路I路,與本地載波sin(x)相乘產(chǎn)生Q支路。I、Q兩路信號(hào)分別經(jīng)過(guò)一個(gè)完整C/A碼周期(即1 ms的積分時(shí)間)時(shí)間的積分,分別平方相加。在理想的情況下,C/A碼只調(diào)制在I支路上,信號(hào)的功率也都集中在I支路上[9]。最后需要對(duì)檢測(cè)的信號(hào)進(jìn)行驗(yàn)證,若檢測(cè)到的信號(hào)與發(fā)出信號(hào)頻率相同,并與偽碼保持一致,即可認(rèn)為捕獲后的參數(shù)具有可靠性,可以繼續(xù)下一步的操作。
圖2 串行捕獲算法的原理圖
在確認(rèn)捕獲過(guò)程成功后,系統(tǒng)會(huì)自動(dòng)進(jìn)行下一個(gè)步驟,也就是跟蹤環(huán)節(jié)。這個(gè)步驟的目的就是對(duì)信號(hào)進(jìn)行分析解調(diào)和應(yīng)用。跟蹤環(huán)節(jié)就是對(duì)載波的頻率,相位以及傳輸精度等信息進(jìn)行實(shí)時(shí)的分析和跟蹤,觀察其是否在預(yù)定的范圍周期內(nèi)變化,保證其運(yùn)轉(zhuǎn)依照事先分析計(jì)算的路徑和規(guī)律一致。在保持此狀態(tài)的情況下,即達(dá)到了穩(wěn)定的狀態(tài),就可以準(zhǔn)確地獲得信號(hào)中傳遞的信息,隨后就可對(duì)其解調(diào),得到具體的數(shù)據(jù),經(jīng)過(guò)計(jì)算完成定位的功能[10-11]。圖2為串行捕獲算法的原理圖。
在GPS接收機(jī)的跟蹤系統(tǒng)中,載波跟蹤環(huán)和偽碼跟蹤環(huán)是缺一不可的,兩者相互協(xié)作,緊密的聯(lián)系在一起。因?yàn)檩d波跟蹤環(huán)需要利用偽碼跟蹤換對(duì)信號(hào)進(jìn)行解調(diào),而載波跟蹤環(huán)為其提供相位頻率等分析功能。
圖3為GPS接收機(jī)跟蹤環(huán)路的原理圖。其中IE,IL,QE 和QL,分別為各個(gè)載波以及各種偽碼進(jìn)行積分運(yùn)算后的輸出值,經(jīng)過(guò)鑒相器的處理,等到精度非常高的相位信息,在經(jīng)過(guò)濾波器對(duì)多余的信號(hào)進(jìn)行處理,濾除頻率較高或者不滿(mǎn)足條件的正弦信號(hào),最后將結(jié)果反饋給NEO模塊進(jìn)行處理,最終完成對(duì)偽碼的整體處理。IP和QP分別為正交或同相載波與C/A碼的積分,同樣通過(guò)鑒相器的處理,得到相位方面的誤差,然后經(jīng)過(guò)濾波器濾除頻率相對(duì)較高的部分,最終將結(jié)果反饋給NEO模塊進(jìn)行處理,這一過(guò)程完成了對(duì)跟蹤環(huán)的整體優(yōu)化和調(diào)整。GPS信號(hào)到達(dá)天線(xiàn)后,首先會(huì)有射頻的遠(yuǎn)端進(jìn)行分析和處理,使其變?yōu)榈皖l信號(hào)。在捕獲的過(guò)程中,每一個(gè)衛(wèi)星都有其各自的C/A碼和多普勒頻率,為了最準(zhǔn)確的接收到衛(wèi)星發(fā)出來(lái)的信號(hào),需要檢測(cè)到所有可以運(yùn)用到的衛(wèi)星并可通過(guò)計(jì)算和分析得出其粗略的相位和頻率。為了使接收機(jī)可以準(zhǔn)確并且迅速的捕捉到GPS發(fā)出的信號(hào),接收機(jī)需要對(duì)載波和C/A碼進(jìn)行并行的處理。如果經(jīng)過(guò)并行處理后發(fā)現(xiàn)信號(hào)與信號(hào)之間的誤差超過(guò)了可以接收的范圍,那么環(huán)路就會(huì)自動(dòng)失鎖,而捕獲就是為了使得碼相位和載波頻率這兩個(gè)參數(shù)跟真實(shí)的信號(hào)吻合[12-13]。
圖3 GPS接收機(jī)跟蹤原理圖
GPS跟蹤系統(tǒng)是由多個(gè)不同的模塊組成的,為了使各個(gè)模塊在分工不同的情況下保持正常運(yùn)轉(zhuǎn)并且互相協(xié)作完成工作,就需要有一個(gè)主控制模塊來(lái)統(tǒng)籌和協(xié)調(diào)各個(gè)模塊的工作。所以控制模塊的主要功能就是實(shí)時(shí)跟蹤系統(tǒng)中各個(gè)信號(hào)的傳輸,以及對(duì)鑒相器和濾波器等信號(hào)加工儀器進(jìn)行控制。控制模塊的算法與代碼都與其他模塊不同,因?yàn)槠湫枰獙?duì)整個(gè)體系的模塊進(jìn)行不間斷的監(jiān)控和調(diào)試,保證其安全穩(wěn)定的運(yùn)行。
文中的GPS軟件接收機(jī)的優(yōu)化算法中,GPS基帶信號(hào)處理模塊是在FPGA的平臺(tái)上來(lái)實(shí)現(xiàn)的,優(yōu)勢(shì)就是對(duì)數(shù)據(jù)以及信號(hào)有著實(shí)時(shí)可靠的分析,而并不是將射頻前端采集的數(shù)據(jù)先進(jìn)行存儲(chǔ)后在對(duì)其進(jìn)行處理。如圖4所示,clk為系統(tǒng)的工作時(shí)鐘,clk_1023為 C/A碼最后一個(gè)碼片時(shí)產(chǎn)生的高電平,count為計(jì)數(shù)器的輸出端口,在clk_1023為高電平時(shí)計(jì)數(shù)。Clr為積分清零信號(hào),高電平有效;ena為偽碼鑒相器求平方和開(kāi)根號(hào)使能信號(hào),高電平有效;pdf_en為載波環(huán)和偽碼環(huán)鑒相器使能信號(hào),高電平有效;clk1_en為環(huán)路濾波信號(hào),clk2_en為載波和偽碼 NCO模塊頻率控制字更新信號(hào),當(dāng)clk2_en為高電平時(shí),進(jìn)行本地NCO頻率控制字的更新。
文中在研究了傳統(tǒng)GPS軟件接收機(jī)算法的基礎(chǔ)上,對(duì)跟蹤算法進(jìn)行了優(yōu)化,設(shè)計(jì)了基于FPGA的GPS跟蹤算法。本文首先對(duì)GPS系統(tǒng)以及信號(hào)做出了接收和分析,并進(jìn)一步對(duì)其跟蹤算法做出了詳細(xì)的研究,并在FPGA的平臺(tái)上對(duì)其進(jìn)行了跟蹤環(huán)路的整體測(cè)試。完成了跟蹤算法中噪聲帶寬、環(huán)路增益、快捕范圍、環(huán)路濾波器等關(guān)鍵參數(shù)的設(shè)置。本算法具有比之前傳統(tǒng)算法具有穩(wěn)定度高,定位準(zhǔn)確且高效的優(yōu)勢(shì),達(dá)到了設(shè)計(jì)要求。
圖4 控制模塊波形仿真圖
[1]Elliott D.Kaplan.Christopher J.Hegarty.GPS原理與應(yīng)用[M].北京:電子工業(yè)出版社,2007.
[2]James Bao-Yen Tsui.Fundamentals of Global Positioning System Receivers:A Software Approach[M].John Wiley& SonsInc,2005.
[3]Alaqeeli,A.Starzyk,J.van Graas F.Real-time acquisition and tracking for GPS receiver circuits and Systems[C]ISCAS’03,2003(3):500-503.
[4]吳娜.GNSS接收機(jī)捕獲算法的研究與實(shí)現(xiàn)[D].北京:北京郵電大學(xué),2010.
[5]董吉虹.GPS信號(hào)C/A碼跟蹤環(huán)的FPGA實(shí)現(xiàn) [D].天津:天津理工大學(xué),2007.
[6]Elliott D.Kaplan,GPS原理與應(yīng)用[M].寇艷紅,譯.電子工業(yè)出版社,2007.
[7]王洪,呂幼新,汪學(xué)剛,等.寬帶數(shù)字接收機(jī)的高效 FPGA設(shè)計(jì)[J].電子科技大學(xué)學(xué)報(bào),2008(3):364-365.
[8]B M Ledvina,M L Psiaki.AReal-TimeGPSCivilian L1/L2 Software Receiver[J].Proceedings of the Institute of Navigation GNSS,September,2004:24-26.
[9]Manandhar D,Suh Y,Shibasaki R.GPS Signal Acquisition and Tracking An Approach toward Development of Software-based GPS Receiver[C].Technical Report of IEICE,ITSZO04-16,2004.
[10]Manandhar D,Shibasaki R.GPS Signal Analysis using LHCP/RHCPAntennaandSoftwareGPSReceiver[J]. IONGNSS2004,Long Beach,21-24 September 2004:2489-2498.
[11]Manandhar D,Shibasaki R.Software-Based GPS Receiver a Research and Simulation Tool forGlobal Navigation Satellite System[J].ACRS2004,2004:22-26.
[12]Jin Tian,Qin HongLei,Zhu JunJie,et a.Real-time GPS Software Receiver Correlator Design[J].2008.
[13]Jin Tian.A Novel GNSS Weak Signal Acquisition Using Wavelet Denoising Method[C].ION NTM 2008,28-30 January 2008,San Diego,CA.
GPS software receiver based on FPGA optimization and the research of the algorithm
WANG Yue
(Xi’an University Information Center,Xi’an 710068,China)
As the GPS technology application in the field of daily life words and research more and more widely,and the GPS software receiver as the most key part of the GPS technology,the accuracy of its positioning and becomes more and more high accuracy and real-time requirements.Traditional GPS software receiver and now cannot meet the high precision,high efficiency requirements.Therefore,in this paper,on the basis of the original receiver tracking algorithm,the upgrade and optimization.Developed a tracking algorithm based on FPGA GPS software receiver optimization,completed the tracking algorithm in the noise bandwidth fast acquisition range,loop filter,loop gain,such as key parameters Settings.Before this algorithm is better than traditional algorithm has high stability,accurate and efficient advantages,through the test data,has reached the design requirements.
GPS;tracking;FPGA;optimizing algorithm;receiver
TN99
A
1674-6236(2016)11-0058-03
2015-11-16稿件編號(hào):201511154
王 悅(1972—),男,陜西西安人,碩士研究生,工程師。研究方向:計(jì)算機(jī)應(yīng)用。