潘國富,鮑志雄
(廣州中海達衛星導航技術股份有限公司,廣州 511400)
目前全國各省市已經建立了很多連續運行參考站系統(continuous operational reference system,CORS)用于高精度衛星定位測量工作,測繪人員可以全天候接入CORS系統獲取差分數據進行高精度定位,一般使用雙頻接收機進行實時載波相位差分(real time kinematic,RTK)定位[1],精度能達到厘米級。但是在民用導航領域,針對消費級的導航運用的定位需求,采用低成本的天線及衛星接收芯片在CORS覆蓋區域內利用實時碼差分(real time code differential,RTD)定位,使得精度提高到亞米級,則可以大大提高CORS系統的運用價值。
隨著中國北斗衛星導航系統(BeiDou navigation satellite system,BDS)的建成和完善,利用多系統帶來的衛星數量優勢可以解決城市導航的問題,從而給CORS帶來更廣泛的的運用價值。基于高精度的BDSCORS系統來開發面向民用導航的差分服務系統到需要考慮解決多星座融合、差分定位技術方案選型、硬件成本條件限制、終端設備集成、系統多用戶并發等關鍵問題[2]。本文將介紹民用導航差分定位系統的基本定位原理及軟件體系的分布式架構設計,結合實際系統的建設及測試數據,驗證相關算法的精度和系統可靠性。
民用導航差分定位系統采用RTD方法作為原型,這種方法采用衛星的偽距觀測值進行定位,因此采用導航芯片級的接收機及天線即可,對接收機的硬件要求較低,由于不存在周跳探測和模糊度固定的問題[3],解算模型原理較為簡單[4]。
RTD定位通常使用國際通用的RTCM2.x標準格式中的1號電文進行差分數據傳播[5],該電文主要提供了各個衛星的偽距改正數(pseudo range correction,PRC)及偽距改正數的變化率(range rate correction,RRC)。移動端對每一顆公共衛星進偽距觀測值的改正

式(1)中,PRC(t0)為參考站系統提供的t0時刻的偽距改正數,RRC是t0時刻的偽距改正數速率。根據式(1)可以對任意衛星的觀測值PRM(t)進行改正,改正公式為

式(2)中,PR(t)代表改正后的衛星觀測值,移動端解算程序按照式(1)和式(2)對衛星觀測值進行改正后再進行單點定位過程,即可獲得RTD定位結果,單點定位的具體公式這里不再贅述,需要注意的是:由于PRC改正值已經包含了對流層和電離層的改正信息,移動站在單點定位時不需要再進行相關信息的模型改正,以免重復計算造成系統誤差。
最新的RTCM3.02標準里面,已經添加了對BDS差分電文的支持[6],但是目前國內外僅有少數廠家完成了升級,預計真正推廣使用還需要一定的時間??紤]到民用導航領域對數據鏈路的通訊成本要求,本文采用RTCM2.x電文進行差分數據傳播,由于RTCM2.x標準里面缺少對北斗系統的支持,因此移動設備端和差分服務軟件需要自定義BDS的數據交換格式,本文按RTCM2.x標準自定義了61號電文,其格式除了電文編號不同,其它內容與1號電文的格式保持一致。對于自制的新設備可以同時采用美國全球定位系統(global positioning system,GPS)加BDS進行RTD組合定位,而對于舊設備也可以同樣接入系統獲得基于單GPS的RTD定位服務,這樣就實現了設備的兼容,對新型北斗接收機和傳統的單GPS接收機都可以提供服務。
從RTD的定位原理可知,碼差分的理論前提假設偽距改正數包含了大氣誤差影響等綜合影響,在計算偽距改正數時需注意計算衛星位置使用的星歷要一致(根據IODE判斷)及計算衛星位置的算法一致(迭代次數一致),同時要對終端單點定位過程的鐘差消除、衛星鐘差消除、相對論效應消除、硬件延遲消除、電離層對流層模型改正等進行統一。避免重復計算導致系統性的偏差,本文實際計算偽距改正數(PRC)的公式如下

式(3)中,P(t)為衛星到基站或VRS站點的理論幾何距離(由衛星位置和基站坐標可以準確求出),CA(t)為實際觀測值,dT(s)為衛星鐘差(根據廣播星歷計算得到),Re為相對論效應,c為光速。
面向民用導航差分定位系統的用戶群數量巨大,同時在線的用戶量對于系統服務的壓力較大,如果每個RTD用戶都采用類似RTK定位那樣的通過互聯網進行RTCM網絡傳輸的協議標準(networked transport of RTCM via Internet protocol,NTRIP)協議登陸、則虛擬參考站(virtual reference station,VRS)觀測值生成計算與播發過程會造成系統阻塞崩潰。因此設計時必須對用戶連接請求進行分流,算法層面則需考慮減少單個用戶的計算量。從以上兩個思路出發,本文設計了一套分布式架構的CORS系統,可以實現大型CORS系統的組網,同時保證海量用戶的登陸服務。
RTD定位的精度主要受偽距碼精度及大氣誤差的影響,通常作業范圍可以達到數百千米,而現有的CORS系統因為兼顧到RTK用戶的高精度定位需求所以基站之間的距離通常小于100km(即基線短于100km)。所以對于RTD用戶而言,在精度無差異的前提下,沒有必要進行虛擬參考站的偽距改正數的綜合生成,系統只需要找到距離用戶最近的實際基站進行RTD差分數據轉發即可,這樣就避免了每一個RTD用戶都進行復雜的內插計算和虛擬觀測值的生成計算[7-8],從而減少了計算復雜度。
通過以上分析,實際上可以實時生成每一個站點每一個歷元對應RTD差分數據進行廣播,這樣當導航用戶登陸服務器,只需要根據用戶傳回的標準定位結果電文NMEA位置查找最近單站的RTD差分數據源即可。當用戶量增加到一定程度時,還可以通過架設多個服務單元并部署到不同的電腦上完成用戶分流。
對于大規模的CORS系統,往往基站數量超過100個,構造的三角網基線數量達到數百條,這樣對于服務器的基線解算壓力較大,會造成解算延遲和服務阻塞。因此要考慮對CORS系統的解算單元進行分布式的設計。
本文將站點根據地域相鄰關系,劃分為多個子網,每一個子網作為一個獨立的解算單元運行在不同的電腦上,再統一的由服務單元進行集成。當用戶登錄時,服務器根據用戶位置查找最近的解算單元(子網),再判斷服務類型,如果是RTD用戶則直接轉發緩存的RTD數據包,如果是RTK用戶,則將鏈接轉交給相應的子網服務器,系統總體運行原理圖如圖1所示。

圖1 分布式CORS系統架構圖
從圖1可以看到,由于有多個解算單元的存在,基線的解算壓力被分攤到不同的計算機上,誤差信息則統一匯總到了服務單元這里。實際系統還提供了網頁形式的信息管理平臺便于管理人員進行日常維護和運營管理,這里不再贅述。
本文以中國東部某BDS CORS系統作為測試平臺,該CORS系統由11個基站組成,其中最長基線約60km,基站采用國產北斗三星七頻主機,移動站采用某國產導航芯片集成,全網站點分布示意圖如下:

圖2 測試CORS系統的站點分布圖
RTD服務軟件基于中海達ZNetVRS虛擬參考站軟件平臺實現,系統實時生成和對外播發一秒一次的RTD數據,終端設備通過GPRS網絡獲取RTD差分數據。
為了能檢測本文算法的精度及偽距差分的定位服務的穩定性,測試采取實測方式進行如下實驗:1)靜止開機后設置為RTD定位,按1s的采樣頻率連續記錄定位結果;2)事后統計精度計算方法:將坐標投影成高斯平面坐標,后按不同的方向統計內符合中誤差,計算公式如下

式(4)中,N為測試點個數,Δi為各觀測值與平均值之差,本文進行了3次測試,每次8h。精度統計結果如下:

表1 RTD定位中誤差統計(GPS+BDS)
從測試結果可以看出:
1)采用GPS加BDS的RTD定位平面精度可以達到亞米級精度(1倍標準差),相比傳統的單點定位結果有明顯提高(廠家標稱精度達5m)。
2)本文系統能夠連續的進行RTD差分定位服務。
筆者將本文算法運用在實際BDS CORS系統中投入市場使用多年,測試表明相關技術方案正確可行,使用國產的導航芯片可以實現亞米級差分定位精度,隨著國產芯片技術的發展,將來導航芯片也能輸出載波觀測值時還可以進一步優化終端定位算法從而提高終端定位精度[9]。
[1] 李征航,黃勁松.GPS測量與數據處理[M].武漢:武漢大學出版社.2005:71-74.
[2] 鄧健,王慶,潘樹國,等.基于多參考站的分米級GPS偽距差分定位方法[J].東南大學學報:自然科學版,2010,40(2):316-319.
[3] 黃愛萱,吳云,童小華.利用 GPS組合觀測值探測修復周跳的方法比較[J].測繪工程,2007,16(4):25-29.
[4] 高星偉,葛茂榮.GPS/GLONASS偽距差分的數據處理[J].測繪通報,2000(6):1-3.
[5] RTCM 10402.3,RTCM Recommended Standards for Differential GNSS(Global Navigation Satellite Systems)Service,Version 2.3[S].
[6] RTCM Standard 10403.2,Differential GNSS(Global Navigation Satellite System)Service,Version 3[S].
[7] 彭慧,高成發,喻國榮.基于 VRS的 GPS偽距碼的虛擬與精度分析[J].測繪通報,2007(6):1-4.
[8] 羅天宇,臧德彥.虛擬參考站對流層延遲算法[J].測繪科學,2012,37(5):107-109.
[9] 戚浩平,高成發.中等距離GPS相位平滑偽距差分動態定位精度的測定[J].測繪通報,2006(8):4-5.