祝敕捷,葉險峰,曾翔強
(1.湘潭大學土木工程與力學學院,湖南 湘潭 411100;2.湖南省測繪科技研究所,長沙 410007)
連續運行參考站(Continuously Operating Reference Stations,CORS)系統是建立于現代GNSS技術、計算機網絡技術、數字通訊技術等高新科技多方位、深度結晶的產物,是現代測繪基準的重要組成部分。自2001年深圳建立中國第一個CORS系統起,各個省市紛紛建立了自己的CORS系統,到目前為止,全國各個省份均已建立了自己的CORS系統。目前CORS系統的建設接近尾聲,重心已逐步由系統建設轉向系統應用和維護[1]。隨著CORS系統的運行,所產生的觀測數據越來越多,而目前大部分CORS數據中心均采用定期人工處理觀測數據的模式對CORS數據進行處理,這種方法不僅費時費力,而且無法及時的發現基準框架的變化,不利于動態參考框架的維持。
GAMIT/GLOBK是由美國麻省理工學院(MIT)和SCRIPPS海洋研究所(SIO)共同研制的用于定位和定軌的GPS數據分析軟件,是目前應用最廣泛的高精度數據處理軟件之一。GAMIT/GLOBK是基于Linux系統開發和運行,且沒有圖形頁面,采用命令行驅動的模式。因此,利用GAMIT/GLOBK進行高精度數據處理具有一定的門檻,部分CORS系統數據中心甚至不具備使用GAMIT/GLOBK進行數據處理的能力[2]。此外,在利用GAMIT/GLOBK對CORS系統數據進行處理時,大部分工作是進行數據準備、數據預處理、表文件制作等重復性工作,費時費力,完全能夠用程序來代替。因此,需要建設一個低門檻、高效率的CORS系統自動處理系統,用于減少重復的數據處理工作,提升CORS系統的運維效率。本文基于GAMIT/GLOBK和JAVA,采用面向對象的程序設計建立CORS數據自動處理系統,旨在解決CORS站數據無法及時處理的問題,同時也為后續以CORS站為基準的網絡RTK測量提供基礎保障。
系統分為支持層、服務層和應用層,其架構如圖1所示。

圖1 CORS數據自動處理系統架構圖
(1) 支持層
支持層主要是CORS數據自動處理系統的數據、軟件、模型文件的支撐,包括CORS基準站的觀測數據,高精度數據處理所需要的GAMIT軟件、精密星歷數據、表模型文件數據,為CORS數據的處理提供軟化、數據和模型的支撐,是整個系統的基礎[3]。
(2) 服務層
服務層是CORS數據自動處理系統是對數據處理相關服務的集成和實現。包括基準站數據分析與預處理服務、解算控制文件生成、協議解析、數據通訊和解算結果存儲與調用服務,并形成API接口,供應用層調用。
(3) 應用層
應用層服務對CORS數據進行處理,形成高精度數據處理結果,并進行展示,將解算結果推送回服務層,存儲解算結果。此外應用層將GAMIT解算所生成的氣象數據通過API接口,推送給氣象服務系統。
通過我們對CORS數據自動處理系統的功能梳理,解算系統總共包含以下5個模塊:數據整理模塊、FTP下載模塊、解算預處理模塊、解算模塊、結果輸出模塊。自動處理系統如圖2所示。

圖2 CORS數據自動處理系統功能模塊圖
數據整理模塊:針對現有CORS中心的數據進行預處理,包括數據整理、數據轉換、數據重采樣、數據質檢4個功能。首先我們對基準站推送的數據進行整理,將數據轉換為標準的RINEX格式,并且對數據進行重采樣,采用間隔為30 s,利用TEQC對數據進行質檢,將質檢結果寫入數據庫,對于不符合質量要求的數據不進行數據處理[4]。
FTP下載模塊:該模塊的功能是自動下載GAMIT/GLOBK解算所需要的IGS站數據、表更新、星歷數據。
解算預處理模塊:該模塊主要是解算數據進行預處理,并形成解算所需要的表文件,包括文件整理、測站文件制作、控制文件制作、表文件制作。
解算模塊:解算模塊負責對完成預處理的數據進行基線解算,并輸出基線解算結果,對解算結果初步進行分析,對不符合要求的解算結果進行預警。
結果輸出模塊:利用GLOBK進行網平差,并將初步平差結果輸出到數據庫,形成各個站點的時間序列,為以后的時間序列分析奠定基礎,并對外輸出GAMIT解算所生產的氣象數據。
CORS基準站數自動處理的流程如圖3所示。

圖3 CORS數據自動處理系統處理流程圖
啟動系統后,系統讀取用戶所配置的解算參數文件,然后啟動表文件更新模塊、星歷下載模塊和基準站數據整理模塊,自動進行GAMIT表文件下載、星歷下載和基準站數據整理和下載。啟動完畢后,通過輪詢的模式,對所需要解算的CORS數據進行輪詢,按照年積日的方式,開始進行高精度基準站數據處理。輪詢是首先獲取解算所需要的基準站數據,從星歷下載模塊獲取解算所需要的廣播星歷和精密星歷,其中精密星歷優先選擇IGS提供的事后精密星歷,事后精密星歷不存在時選擇預報精密星歷。完成數準備后,生成解算所需要的相關控制文件,包括測站文件、近似坐標文件、解算控制文件等。完成解算控制文件生成后,開始進行基線解算和網平差,并將解算結果輸出到數據庫。
CORS數據自動解算系統功能采用JAVA語言進行開發,采用面向對象的程序設計。用戶配置系統參數、FTP參數、基準站參數和解算參數后,點擊啟動系統,系統會根據所配置的參數,自動進行數據解算。點擊啟動系統后,系統會自動啟動星歷下載、表文件更新、格網文件更新IGS數據下載、基準站數據下載、文件整理等功能。根據系統配置的參數,自動處理,實現高精度CORS數據處理自動化。其主頁面如圖4所示。

圖4 CORS數據自動處理系統主界面圖
為驗證自動處理系統的有效性及可靠性,本文選取了湖南衛星定位連續運行參考站數據中心(以下簡稱HNCORS)2020年10月26日(年積日為第300天)至2020年11月9日(年積日為第314天)連續15 d共111個連續運行基準站的觀測數據來使用該系統進行數據解算。
2.2.1參數配置
通過解算參數配置模塊,配置好CORS數據自動處理的解算參數,如圖5所示。

圖5 解算參數配置頁面圖
使用數據自動處理系統進行基線解算的主要策略有:ITRF框架為ITRF2014,基線解算處理模式設置為BASELINE模式,使用的IGS提供的時候精密星歷,設置為IGSF和IGSU表示優先使用IGSF軌道,沒有IGSF軌道時選擇IGSU軌道,觀測值采用了LC_AUTCLN的消除電離層影響的觀測值組合方式;設置衛星的截止高度角為10°,采樣間隔為30 s,處理的歷元總數為2880個,基線解算時引入大氣模型對解算時的誤差進行估計,大氣模型采用的是Saastamoinen模型,干、濕映射函數模型采用維也納映射函數(VMF1);基線解算每2 h估計一個天頂對流層延遲參數,每天估計兩對水平梯度參數。基線解算時潮汐、大氣潮、固體潮等對基線解算的影響,模型采用GAMIT提供的模型,天線相位中心改正采用GAMIT提供的antmod.dat文件中的值,天線改正模型采用ELEV模型[5]。
目前絕大部分CORS中心的基準站往往多余100個,而目前GAMIT 軟件只能同時處理少于100個測站的數據[6]。因此CORS數據自動處理系統能夠分子網進行結算,在設置基準站時設置不同的子網即可。HNCORS基準站數據自動處理時分為2個子網進行數據處理,公共站的選擇為ZJSZ(張家界桑植站)、YYPJ(岳陽平江站)、LDXH(婁底新化站)、SYSD(邵陽邵東站)、SYSN(邵陽遂寧站)、HHZJ(懷化芷江站)、YZDX(永州道縣站)、CZZX(郴州資興站),子網劃分如下圖6所示(其中淺色的點表示子網1(HNS1網)中的基準站,深色的點表示子網2(HNS2網)中的基準站)。

圖6 子網劃分示意圖
2.2.2結果分析
設置好解算參數和參與解算的基準站后,點擊自動處理,軟件就能夠自動從服務器下載所需要的數據和文件,獲取解算結果。本文獲得了2020年10月26日(年積日為第300天)至2020年11月9日(年積日為第314天)連續15 d共111個連續運行基準站并聯合周邊共6個IGS站(分別為BJFS站、JFNG站、CHAN站、SHAO站、LHAZ站、HKSL站)的基線解算結果。為充分的驗證該系統的可靠性及實用性,將從以下3個角度來分析該數據自動處理系統的解算結果質量[7]:
(1) 從該數據自動處理系統中得到的基線解算文件中提取出單日解NRMS(標準化均方根誤差)值來對該系統的基線解算結果的質量做出分析與評價,并由此對該系統的數據處理結果質量做出判斷;
(2) 利用基線解算文件通過調用GLOBK網平差中的glred模塊對各時段解向量重復性進行統計分析;
(3) 對基線解算結果的X、Y、Z3個方向的中誤差進行統計分析。
對15 d的基線解算結果文件中提取的單日解NRMS值進行統計與分析,其結果見表1。

表1 單日解的NRMS值統計表
由于GAMIT軟件采用全組合網解的方式解算基線向量,其同步閉合差在基線處理完時已進行了分配,因此可將基線精度指標NRMS值作為同步環質量檢驗的一個指標,可以直觀的反映基線解算質量[8]。根據國內利用GAMIT處理GPS數據的經驗,一般認為NRMS值在0.12~0.5之間是合理的,最優值是在0.2左右[9]。從表3的基線解算結果的NRMS值統計表可以看出,所有時段的NRMS值都分布在0.18~0.21之間,均小于0.21。這說明利用該數據自動處理系統的基線解算結果質量較好,同時反映了利用CORS數據自動處理系統進行數據自動處理其基線解算結果的可靠性。
各個時段解向量的重復性反映了基線解的內部精度,是用來衡量基線解質量的一個重要指標[10],我們對本次解算進行了重復性檢驗,整網各方向分量的重復性精度可以用式(1)表示:
δ=a+bd
(1)
式中:δ為各分量重復性精度指標;a為固定誤差,mm;b為比例誤差系數;d為基線長度是一個標量,m。表2統計了子網HNS1和子網HNS2中各分量中重復性精度指標的固定誤差a和比例誤差系數b。
從表2可以看出,本次解算的基線分量重復性較高,HNS1的基線長度重復性統計結果為1.5 mm+0.25×10-8d,HNS2的基線長度重復重復性統計結果為0.9 mm+0.27×10-8d,完全能夠滿足CORS高精度數據處理的要求。表3統計了采用CORS數據自動處理系統解算的基線結果在X、Y、Z3個方向上最大、最小和平均中誤差。

表2 基線重復性統計表

表3 解算精度結果統計表
從上表可以看出自動解算在X方向的平均中誤差為0.7 mm,Y方向的平均中誤差為1.4 mm,Z方向的平均中誤差為0.8 mm,其解算精度完全能夠滿足CORS參考框架的維持,自動解算系統能夠在實際工作中替代人工數據處理,實現數據處理自動化、智能化。
本文基于現有CORS系統運維工作強度大、基準站數據無法及時處理的問題,設計和實現了基于GAMIT/GLOBK軟件的CORS數據自動處理系統,通過對HNCORS 2020年10月26日(年積日為第300天)至2020年11月9日(年積日為第314天)連續15 d共111個連續運行參考站并聯合周邊共6個IGS站的GNSS數據進行實例驗證,得到該系統能夠達到人工解算的精度和可靠性,能夠在實際工作中替代人工解算,對降低CORS高精度數據處理的門檻和運維成本具有重要意義。