蔣科材,屈利忠,趙齊樂
(武漢大學衛星導航定位技術研究中心,湖北 武漢 430079)
?
實時GNSS數據流管理平臺的實現及應用
蔣科材,屈利忠,趙齊樂
(武漢大學衛星導航定位技術研究中心,湖北 武漢 430079)
Implementation and Application of Real-time GNSS Data Stream Management Platform
JIANG Kecai,QU Lizhong,ZHAO Qile
摘要:隨著互聯網技術的發展,利用互聯網將觀測站的實時GNSS數據高速傳輸給數據處理中心,可以打破GNSS數據事后處理的傳統模式,從而實現GNSS數據的實時處理。對于數據處理中心而言,具備實時GNSS數據流管理功能的軟件平臺就顯得尤為重要。本文主要對自主實現的實時GNSS數據流管理平臺軟件的實現及應用進行了介紹。該軟件采用C/S框架設計,實現后端服務與前端用戶界面相分離的效果,可通過網絡與觀測站建立連接來獲取實時GNSS數據流,支持TCP/IP通信協議及NTRIP通信協議,支持解碼RTCM3.X、BINEX等多種數據傳輸格式,能夠匯聚分布在各地的觀測站的GNSS數據,為后續的數據實時處理工作提供數據支撐,并在我國所發起的國際GNSS監測評估系統建設中得到應用。
關鍵詞:實時GNSS數據流管理;數據傳輸;數據解碼;C/S框架設計;NTRIP協議
全球衛星導航定位系統是20世紀80年代出現的最具劃時代意義的航天技術和信息技術[1-3]。然而30多年來,對GNSS數據的處理主要以事后處理的模式為主,應用實時性較差[4]。互聯網技術的發展為傳統的導航應用帶來了新的契機。具有實時性功能的導航服務逐漸成為當今GNSS發展的熱點之一。結合互聯網高速數據傳輸的特點,打破了傳統GNSS技術由于接收機的數據傳輸特征而帶來的時空局限性[5-6]。使得觀測站的GNSS數據可以高速傳輸給數據處理中心進行實時處理。為此各接收機廠商分別制定了適用于實時傳輸GNSS數據的數據格式。另外國際海運事業無線電技術委員會(Radio Technical Commission for Maritime Services,RTCM)提出的GNSS信號差分格式RTCM SC 104也可用于GNSS數據的實時傳輸[7-9]。
由于數據處理中心接收分布在區域或全球各地的觀測站的實時GNSS數據,各個觀測站所支持的數據傳輸格式隨接收機廠商或儀器型號的不同而有所差異,因此對于數據處理中心而言,具備實時GNSS數據流管理功能的軟件平臺就顯得尤為重要。本文主要對自主研發的實時GNSS數據流管理平臺軟件的實現及應用進行介紹,該軟件可通過網絡與觀測站建立連接,獲取實時GNSS數據流,支持TCP/IP 和 NTRIP通信協議, 并支持解碼多種數據
傳輸格式,可對各個測站發送的實時GNSS數據流進行有效管理。
一、軟件概述
實時GNSS數據流管理平臺軟件主要功能分為以下兩大部分。
1) 實時GNSS數據流轉發子程序:接收觀測站推送的實時GNSS數據流,同時具備接受第三方用戶請求的能力,并轉發數據流。
2) 實時GNSS數據流接收子程序:從實時GNSS數據流轉發子程序接收轉發的實時GNSS數據流或直接從觀測站接收,并對數據流進行解碼、轉存等工作。
實時GNSS數據流管理平臺軟件采用C/S(Client/Server)架構設計。后端服務能夠以控制臺方式或Windows服務方式在系統后臺運行,前端用戶界面可通過網絡TCP/IP通信與后端服務進行交互,界面程序可運行在任何能夠與后端服務建立網絡連接的電腦上,且支持多個界面程序同時運行,后端服務負責保證多個前端用戶界面數據的一致性。
該平臺軟件的運行環境為Windows平臺,能夠支持Windows 2003、NT、XP及以上版本,運行需要.NET Framework4.0或以上版本,同時支持32位和64位的操作系統。
三、軟件體系結構
平臺軟件體系可劃分為配置信息管理模塊、實時數據流接收模塊、實時數據流解碼模塊、實時數據流匯集模塊、實時數據流發布模塊和實時數據流統計模塊等。
配置信息管理模塊用于對其他模塊的設置信息進行配置和管理操作,包括測站信息的添加、編輯和刪除等操作;實時數據流接收模塊通過網絡與觀測站建立連接,獲取實時GNSS數據流,支持TCP/IP通信協議、NTRIP通信協議,并根據系統參數設置穩定地接收各個測站的實時GNSS數據,異常發生時產生相應的日志記錄,并負責軟件與數據源的斷開重連機制;實時數據流解碼模塊基于正確的協議格式,適配相應的解析器用于解析數據流,對特定數據格式的數據流進行解碼,獲取衛星導航星歷、觀測數據、氣象數據等信息,可支持RTCM3.X、BINEX(BINary EXchange)及多種接收機自定義格式的解碼;實時數據流匯集模塊將衛星導航星歷、觀測數據、氣象數據等信息按照指定的采樣間隔以RINEX3.02文件格式保存成RINEX文件或直接保存原始數據格式的二進制文件,更新時間15 min;實時數據流發布模塊接收第三方用戶請求,并進行身份認證,通過認證后,基于TCP/IP或NTRIP協議,為其提供實時數據服務,轉發觀測站的原始實時數據流或以RTCM3.X格式進行重編碼后的實時數據流,否則拒絕連接申請,保證數據不被非法請求訪問,另外,實時數據流發布模塊還可將所接收到的所有測站的同一歷元GNSS數據進行合并,以指定端口輸出的方式播發軟件解碼后的ASCII格式數據;實時數據流統計模塊用于對各個測站的丟包率、傳輸時延等信息進行統計。
四、軟件實現及應用
實時GNSS數據流管理平臺軟件基于C#編程實現。軟件的核心是建立穩定的實時數據流連接,并對二進制實時GNSS數據流進行正確的解碼。圖1為建立數據流連接的流程圖,圖2為進行數據解碼的流程圖。
在數據解碼模塊實現過程中,平臺軟件采用面向接口的設計理念,軟件中實時GNSS數據流的具體實現類都繼承自IParser接口,不同的數據流解析器實例的創建通過ParserFactory工廠類統一維護創建。IRinexDecoder接口接收IParser接口分割的完整的數據包,并進行相應的CRC校驗,再根據數據包中消息類別,通過RinexFactory工廠類創建IRinex接口的具體實例。由IRinex派生出EPEHM類、RANGE類、RinexAdapter適配器類等描述具體類別信息的子類。其他相關子類可通過繼承EPHEM、RANGE、RinexAdapter等實現。采用面向接口的設計理念,僅需實現對信息本身感興趣的子類,減少重復編碼工作,保證系統的靈活性及可拓展性,最大化地保持系統的穩定運行。圖3為部分解析器子類的實現結構關系圖。

圖1 建立數據流連接流程

圖2 數據流解碼流程

圖3 部分解析器子類的實現結構關系
在軟件架構上,實時GNSS數據流管理平臺軟件采用CS架構設計,后端服務與前端管理界面相分離,二者通過網絡TCP/IP進行通信,大大增加了平臺軟件的管理靈活性。圖4為后端服務子程序以Windows服務形式啟動運行圖。圖5為前端管理子程序的登錄界面。通過界面登錄,與后端服務子程序建立網絡連接,管理人員可以通過管理界面進行查看、增刪、權限分配等管理操作。且操作完畢后關閉前端界面程序不會影響后端服務的正常運行。通過界面的實時顯示,管理人員可以直觀地查看各觀測站實時GNSS數據流的相關信息,包括測站位置地圖顯示、測站星空視圖、各衛星系統的可視衛星數、衛星高度角、方位角、信噪比等信息,如圖6所示。

圖4 后端服務子程序以Windows服務形式啟動

圖5 前端登錄界面

圖6 前端管理界面實時流信息的實時顯示
管理平臺軟件對外提供兩種形式的數據訪問服務:一種為通過NTRIP協議用戶直接接收軟件轉發的觀測站原始實時GNSS數據流或軟件以RTCM3.X格式進行重編碼后的實時數據流;另一種為通過TCP/IP協議用戶接收軟件解碼后的ASCII格式數據。作為數據流管理平臺,軟件可對用戶的數據訪問權限進行控制,可限制用戶接收不公開測站的實時數據流。圖7為通過BNC(BKG Ntrip Client)軟件[10]接收管理平臺轉發的觀測站原始數據流,圖8為通過瀏覽器訪問管理平臺軟件解碼后的ASCII格式數據。

圖7 BNC軟件接收管理平臺轉發的指定測站的RTCM數據流

圖8 通過瀏覽器訪問管理平臺軟件解碼后的ASCII格式數據
該平臺軟件已在國際GNSS監測評估系統(International GNSS Monitoring and Assessment System,iGMAS)中的各家數據中心及分析中心的實時GNSS數據流管理任務中得到應用。以武漢數據中心為例,實時GNSS數據流管理平臺軟件通過網絡連接國內外的全球連續監測評估系統跟蹤站,獲取實時GNSS數據流,將匯聚后的實時GNSS數據流提供給數據分析中心進行實時處理。該平臺軟件還對各跟蹤站實時GNSS數據流每天的丟包率及平均時延等信息進行統計,并將每天的統計結果自動發送給運行管理中心。
五、結束語
本文主要對自主開發的實時GNSS數據流管理平臺的實現及應用進行了介紹。平臺軟件在代碼實現上采用面向接口的編程理念,僅需實現對信息本身感興趣的子類,減少重復編碼工作,保證系統的靈活性及可拓展性,最大化地保持系統的穩定運行;在軟件架構上采用C/S架構設計,后端服務與前端管理界面相分離,二者通過網絡TCP/IP進行通信,大大增加了平臺軟件的管理靈活性;在功能實現上通過網絡與觀測站建立連接,獲取實時GNSS數據流,支持TCP/IP通信協議、NTRIP通信協議,并支持解碼多種數據傳輸格式,可對各測站所發送的實時GNSS數據流進行有效管理,并為后續的數據實時處理工作提供數據支撐。該軟件已在我國所發起的國際GNSS監測評估系統建設中得到了應用。
參考文獻:
[1]李征航, 黃勁松. GPS測量與數據處理[M]. 武漢:武漢大學出版社, 2005:182-201.
[2]王惠南. GPS導航原理與應用[M]. 北京:科學出版社, 2003.
[3]周忠謨,易杰軍,周琪. GPS衛星測量原理與應用[M]. 北京:測繪出版社, 1992.
[4]劉大杰, 施一民, 過靜君. 全球定位系統(GPS)的原理與數據處理[M]. 上海:同濟大學出版社,1996.
[5]Tokyo University of Marine Science and Technology. RTKLIB ver. 2.4.2 Manual [EB/OL]. [2015-07-20]. http:∥www.rtklib.com/.
[6]劉科, 聶桂根, 范嘆奇. 基于Ntrip協議的差分數據實時傳輸平臺及定位研究[J]. 測繪信息與工程, 2009, 34(1): 7-8.
[7]Radio Technical Commission for Maritime Services. Differential GNSS (Global Navigation Satellite Systems) Services-Version 3:104-2013-SC104-STD[S].[S.l.]:RTCM,2013.
[8]Federal Agency for Cartography and Geodesy. Networked Transport of RTCM via Internet Protocol Ntrip Version 1.0 [EB/OL]. [2015-07-22].http:∥igs.ifag.de/index_ntrip.htm.
[9]劉智敏, 林文介, 唐衛明. GPS 差分協議RTCM電文分析與應用[J]. 桂林工學院學報, 2004, 24(2): 188-191.
[10]Federal Agency for Cartography and Geodesy. BKG Ntrip Client (BNC) Version 2.11.0 Manual [EB/OL]. [2015-07-22].http:∥igs.bkg.bund.de/ntrip/download.
中圖分類號:P208
文獻標識碼:B
文章編號:0494-0911(2016)04-0092-04
作者簡介:蔣科材(1900—),男,碩士生,主要從事低軌衛星定軌研究。E-mail:kc.jiang@whu.edu.cn
基金項目:國家自然科學基金(41374034);國家863計劃(2014AA123101);國際GNSS監測評估(iGMAS)項目
收稿日期:2015-08-10
引文格式: 蔣科材,屈利忠,趙齊樂. 實時GNSS數據流管理平臺的實現及應用[J].測繪通報,2016(4):92-95.DOI:10.13474/j.cnki.11-2246.2016.0130.