徐亞明,劉志鋒,張 鵬,孫福余
(1. 武漢大學測繪學院,湖北 武漢 430079; 2. 精密工程與工業(yè)測量國家測繪地理
信息局重點實驗室, 湖北 武漢 430079)
?
USRP平臺下GPS軟件接收機高精度定位的實現
徐亞明1,2,劉志鋒1,張鵬1,2,孫福余1,2
(1. 武漢大學測繪學院,湖北 武漢 430079; 2. 精密工程與工業(yè)測量國家測繪地理
信息局重點實驗室, 湖北 武漢 430079)
The Implement of High Precision Software Receiver Based on USRP
XU Yaming,LIU Zhifeng,ZHANG Peng,SUN Fuyu
摘要:首先介紹了采用軟件無線電外設USRP(universal software radio peripheral)實現軟件接收機的過程,然后介紹了采用軟件接收機實現高精度定位的過程,輸出了RINEX格式導航電文和觀測文件,并詳細介紹了利用開源軟件RTKLIB進行最終定位的解算細節(jié),經過與距離400 m左右的IGS站進行基線解算分析,該軟件接收機能夠達到厘米級別的定位精度,均方根誤差在1 cm左右。
關鍵詞:軟件接收機;USRP;RTKLIB;定位
傳統(tǒng)的商用接收機大多采用專用集成電路技術(application specific integrated circuit,ASIC),計算能力強、效率高、專一性好,但是無法進行算法的升級,不能對其進行修改和定制,不具備可擴展性,產品更新?lián)Q代的時間也較長。而軟件接收機利用了軟件無線電的思想,其優(yōu)點是可以方便、簡單、快速地適應新的頻率制式,也可以適應多路徑、GNSS反射等一些特殊的科學研究需要,而且可以方便地植入智能手機,與慣性設備進行深組合等[1]。軟件接收機核心思想是將數字信號處理模塊中信號捕獲、信號跟蹤等核心模塊全部通過軟件來實現。衛(wèi)星信號首先由射頻前端模塊進行預處理,完成下變頻并進行數字化,之后所有的工作都由運行在通用處理器上的軟件接收機程序來實現。
目前,基于軟件接收機的研究主要集中在導航領域,定位精度有限,在高精度定位領域的研究還很欠缺。本文從捕獲、碼環(huán)路、載波環(huán)路、本地載波頻率漂移量等方面的具體實現進行了分析,并重點講述了載波相位測量值的輸出原理,試驗結果驗證了基于USRP的實時單頻軟件接收機短基線能夠達到厘米級別的定位精度,東西、南北、高程3個方向的均方根誤差能夠維持在1 cm左右,接近高精度的商用接收機的定位精度。
一、基本模塊分析與實現
1. 射頻前端模塊
本文利用USRP1作為試驗平臺中的射頻前端,USRP1源于Ettus實驗室,它借助開源軟件GNURadio通過USB2.0連接到電腦,其傳輸速度最大為480 Mbps,可以滿足試驗要求。USRP由母板、子板組成,母板包括一個FPGA、兩個模數轉換器和兩個數模轉換器,可以在母板上插入覆蓋不同頻率范圍的子板。不同的子板可以覆蓋從0~2.9 GHz的頻率,本文選擇了DBSRX子板,它可以處理的頻率范圍從800 MHz~2.4 GHz,基本上可以處理GNSS系統(tǒng)所有的信號頻段。
本文中,DBSRX的主要功能是將處于L1頻段的GPS信號通過混頻操作將射頻信號下變頻到中頻頻段,便于主板上的模數轉換器進行采樣。而母板的主要功能是將處于中頻的模擬信號通過ADC變換為數字信號,如圖1所示,并將得到的數字中頻數據通過USB接口傳遞給軟件接收機,軟件接收機通過GNURadio先設置子板的混頻頻率、數據抽取率等待信息,把數字中頻信號讀進內存進行下一步捕獲、跟蹤處理或保存到硬盤進行離線分析。
圖1 射頻前端模塊示意圖
2. 數據處理模塊
軟件接收機中的軟件處理模塊主要包括3部分:捕獲、跟蹤和定位[2]。詳細過程如圖2所示。
圖2 軟件處理模塊示意圖
捕獲過程得到衛(wèi)星號、偽隨機碼相位和中頻信號頻率的初始值,然后程序進入跟蹤模塊,跟蹤模塊由碼跟蹤環(huán)和載波跟蹤環(huán)共同組成。如圖3所示,其中碼跟蹤環(huán)由延遲鎖定環(huán)路(delay lock loop,DLL)實現,目標是跟蹤并剝離偽隨機碼;而載波跟蹤環(huán)一般由鎖相環(huán)(phase-locked loop,PLL)完成,目標是完全剝離載波信號[3]。
在GPS軟件接收機的捕獲和跟蹤過程中,本地碼產生、載波產生、相關積分這3個部分耗時最多[4],本地微調生成載波最為耗時,所用時間占整個信號跟蹤處理時間的近一半。因此本文在捕獲過程中,基于FFT算法,利用了預存查表的技術,本地先生成各個衛(wèi)星的偽隨機噪聲碼(PRN碼)并對其進行傅里葉變換,保存為一個單獨的文件,這樣在捕獲過程中可以直接通過指針來獲得任意一顆衛(wèi)星的PRN碼,提高了軟件接收機捕獲過程的處理速度和實時性。在實現載波跟蹤環(huán)的過程中,同樣利用了預存查表技術,先生成了頻率間隔為10 Hz的載波,這樣在進行載波剝離時可以直接與預先生成的載波相乘,有效地提高了跟蹤衛(wèi)星的速度,滿足了實時軟件接收機的要求。
圖3 載波跟蹤環(huán)信號處理流程
3. 載波相位測量值的生成
軟件接收機中,輸入鎖相環(huán)的中頻信號和本地復制載波信號都是離散的數字信號,鎖相環(huán)的工作也完全由軟件實現。因此鎖相環(huán)的頻率更新不再是實時進行的,而是有一個更新周期T。在本文中,由于中頻數據是以1 ms為整體進行處理的,故跟蹤環(huán)路的更新周期為1 ms。在剛進入跟蹤環(huán)路時,利用鎖頻環(huán)輔助鎖相環(huán),鎖相環(huán)在鎖頻環(huán)的跟蹤頻率的基礎上鎖定載波相位[5],采用載波環(huán)輔助碼環(huán)的策略,降低了碼環(huán)的噪聲帶寬,減小碼環(huán)的誤差。跟蹤環(huán)路穩(wěn)定后,每1 ms進行載波跟蹤和碼跟蹤,每毫秒載波環(huán)都會計算在該周期內中頻信號和本地復制載波的相位差異,并以此反饋給下一毫秒更新本地載波生成器的輸出頻率。
由于整周模糊度N的存在,因此在軟件接收機部分無法得到準確的載波相位值,但是在后處理中可以通過一些算法進行求解。重點是測量不同時刻的載波相位測量值的差值,只要保證測得的相位小數部分的精確且沒有太多周跳,就可以在后處理中得到高精度的定位值。由于衛(wèi)星和接收機之間相對運動在它們連線方向的投影改變接收信號的頻率,產生多普勒頻移fD(t)。根據頻率和相位的內在關系,對fD(t)積分會得到該時間段內的載波相位測量值的變化量Δφ,簡稱積分多普勒[6],即
(1)
(2)
如果算得初始歷元t1的載波相位測量值Φ1,那么t2時刻的載波相位測量值Φ2可以由以下公式得到
(3)
二、試驗結果
本次試驗數據的采集時間是2014年7月25日,地點在某大學樓頂平臺。試驗中用到的天線是高精度的增益為29 dB的Novatel GPS-702GG有源天線,該天線采用強制對中的方式固定在觀測墩上,如圖4所示,此點為要計算的未知點。天線直接連接到USRP的射頻輸入端,USRP通過USB2.0接口連接到筆記本電腦,所有的基帶數字信號處理由運行在筆記本電腦上的軟件按接收機程序完成,實時輸出測量結果并存儲為RINEX文件,如圖5所示。值得注意的是本文輸出RINEX觀測數據的頻率是1 Hz,因此下文中所用的基準站的數據也是1 Hz的高頻數據。
圖4 天線位置示意圖
圖5 軟件接收機
測試時間為UTC時間7:10—7:53。為了評估軟件接收機定位精度,本文選擇與待測點距離約400 m左右的IGS跟蹤站WUHN站作為參考站進行單基線解算,以WUHN站為基準站,基準站坐標從IGS發(fā)布的數據獲得,可以認為基準站坐標是幾乎沒有誤差的,因為起算點精度對短基線精度影響可以忽略不計[8]。該站點采用的是Trimble公司的NETR9型號接收機,天線為TRM59900有源高精度天線。
通常,長時間的靜態(tài)定位結果可以獲得更好的定位精度,但不能很好地體現出接收機定位誤差的變化情況,因此筆者選擇輸出動態(tài)的雙差定位結果,可以逐歷元地輸出待測點在3個方向上的點位偏差。本次試驗選擇開源軟件RTKLIB作為解算軟件,它能夠逐歷元地輸出定位結果,可以實現近似的動態(tài)解,這是其他解算軟件無法做到的。RTKLIB解單基線是基于雙差觀測值,采用LAMBDA法搜索整周模糊度,解算界面如圖6所示。在試驗過程中,待測點和基準站處均能檢測到8~10顆衛(wèi)星,衛(wèi)星可見圖如圖7所示。為了更直觀地比較定位結果,選擇均方根誤差(RMS)作為衡量定位結果的依據,定位結果如圖8所示,可以看出東西方向的均方根誤差為1.04 cm,南北方向均方根誤差為0.28 cm,高程方向的均方根誤差為0.81 cm。可以看出垂直方向的精度要低于水平方向的精度,由于精度評定是建立在數理統(tǒng)計的基礎上的,由于這里觀測時間有限,因此分析結果帶有一定的隨機性或偶然性[9]。而東西方向的精度要略差于南北方向的精度,是由基線的幾何位置位置決定的,從試驗結果可以看到基線基本上就是南北走向的,從幾何條件上知道南北方向的基線精度必然高于東西方向的精度。由于本研究主要是針對單頻軟件接收機,另外由于本試驗在選擇天線類型時沒顧及天線的型號,并沒有天線相位中心偏差和天線相位中心變化進行改正,此項可能對基線解算結果有一定影響[10]。由于單頻接收機容易受電離層、對流層誤差、多路徑等因素的影響,因此模糊度難以固定,如果讀者想了解單頻接收機模糊度方法,可以參考文獻[11]。將解算結果轉換為KML文件導入到谷歌地球,如圖9所示??梢钥闯銮蟮玫拇郎y點位置就是放置軟件接收機天線的位置。
圖6 RTKLIB解算界面
圖7 觀測時段的衛(wèi)星可見圖
三、結束語
目前,軟件接收機在導航領域已經得到了較廣泛的應用,但對實時軟件接收機高精度定位領域的研究還沒有廣泛展開,有學者基于Matlab軟件平臺實現了高精度定位和測速[12]。本文研究了用于高精度定位領域的軟件接收機的載體相位觀測值的生成,實現了高精度的定位,并對定位結果進行了分析。接下來會繼續(xù)研究提高軟件接收機的定位精度的方法,并針對其在滑波監(jiān)測、多路徑減弱、室內高精度定位等領域的應用作更加深入的研究。
圖8 雙差逐歷元解點位偏差
圖9 定位結果示意圖
參考文獻:
[1]PANY T, FALK N, RIEDL B, et al. Software GNSS Receiver[J]. GPS World, 2012, 23(9): 60-66.
[2]GPS 原理與接收機設計[M]. 北京:電子工業(yè)出版社, 2009: 266-267.
[3]張鵬,孫福余,徐亞明,等. 基于USRP平臺的GPS軟件接收機設計與實現[J]. 測繪通報,2012(11):55-58,80.
[4]劉銀鋒, 陳小惠, 楊鳳偉. 基于預存查表的 GPS 軟件接收機的載波產生方法[J]. 艦船電子工程, 2011, 31(3): 78-80.
[5]王俊, 李加琪, 吳嗣亮. 鎖頻環(huán)輔助下鎖相環(huán)的跟蹤誤差分析[J]. 北京理工大學學報, 2011, 31(7): 838-843.
[6]KAPLAN E, HEGARTY C. Understanding GPS: Principles and Applications[M]. [S.l.]: Artech House, 2005:162-163.
[7]孫福余,張鵬,徐亞明,等. 載波相位測量原理及在GPS軟件接收機上的實現[J]. 測繪通報,2014(4):70-73.
[8]梁洪寶,吳向陽. 起算點坐標偏差對GPS基線解的影響分析研究[J]. 測繪科學,2009,34(S2):33-34,32.
[9]黃聲享, 劉經南. 利用長期觀測資料評價 GPS 短基線的定位精度[J]. 測繪工程, 2001, 10(2): 41-44.
[10]劉寧, 熊永良, 馮威, 等. 單頻 GPS 動態(tài)定位中整周模糊度的一種快速解算方法[J]. 測繪學報, 2013, 42(2): 211-217.
[11]郭際明,史俊波,汪偉. 天線相位中心偏移和變化對高精度GPS數據處理的影響[J]. 武漢大學學報(信息科學版),2007,32(12):1143-1146.
[12]孫希延, 紀元法, 施滸立, 等. GPS 軟件接收機高精度定位和測速的研究與實現[J]. 武漢理工大學學報(交通科學與工程版), 2008, 32(4): 623-626.
中圖分類號:P228
文獻標識碼:B
文章編號:0494-0911(2016)02-0008-04
作者簡介:徐亞明(1964—),男,教授,研究方向為精密工程測量。E-mail:ymxu@sgg.whu.edu.cn
基金項目:國家自然科學基金 (41374011;41474005);湖北省自然科學基金 (2014CFB717)
收稿日期:2015-01-30; 修回日期: 2015-12-02
引文格式: 徐亞明,劉志鋒,張鵬,等. USRP平臺下GPS軟件接收機高精度定位的實現[J].測繪通報,2016(2):8-11.DOI:10.13474/j.cnki.11-2246.2016.0038.