国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

VB.NET編程解決因時(shí)間過(guò)期TGO 基線不解算的研究

2012-11-05 05:08張福利丁亞南
山西建筑 2012年14期
關(guān)鍵詞:數(shù)據(jù)文件字符串控件

張福利 李 奇 丁亞南

(河南省中緯測(cè)繪規(guī)劃信息工程有限公司,河南焦作 454000)

0 引言

Trimble GPS&TGO(簡(jiǎn)稱TGO)是當(dāng)前測(cè)繪行業(yè)廣泛使用的GPS靜態(tài)數(shù)據(jù)處理軟件之一,可識(shí)別多種儀器導(dǎo)出的多個(gè)版本的RINEX文件,是多品牌GPS接收機(jī)聯(lián)合觀測(cè),聯(lián)合平差的首選軟件之一,由于軟件設(shè)定了基線解算的GPS周不能超過(guò)1 652,所以UTC時(shí)間2011年9月10日以后的數(shù)據(jù)TGO不再解算基線?;诖藸顩r,本文先對(duì)RINEX文件的組織結(jié)構(gòu)進(jìn)行分析,然后介紹VB.NET程序的設(shè)計(jì)思路和代碼的組織編寫(xiě),幫助測(cè)量工作者方便快捷的解決這一問(wèn)題。

1 RINEX文件的組織結(jié)構(gòu)

RINEX 是“The Receiver Independent Exchange Format”(接收機(jī)通用數(shù)據(jù)交換格式)的縮寫(xiě),它已經(jīng)成為GPS測(cè)量和精密導(dǎo)航應(yīng)用等的標(biāo)準(zhǔn)交換和存儲(chǔ)格式文件。當(dāng)前的RINEX格式文件主要由4種文本文件所組成,分別為O:觀測(cè)數(shù)據(jù)文件;N:導(dǎo)航數(shù)據(jù)文件;M:氣象數(shù)據(jù)文件;G:GLONASS導(dǎo)航數(shù)據(jù)文件。一般我們使用的主要是O文件、N文件和G文件(本文對(duì)G文件不做論述),由于不同接收機(jī)配備的軟件有其獨(dú)自的RINEX格式轉(zhuǎn)換模塊,本文以中海達(dá)儀器的O文件及N文件為例,重點(diǎn)對(duì)文件中與時(shí)間記錄相關(guān)的信息進(jìn)行論述。

1.1 O文件

RINEX觀測(cè)數(shù)據(jù)文件由文件頭和數(shù)據(jù)區(qū)兩部分組成,文件頭的第1行用來(lái)標(biāo)識(shí)文件的類型和文件版本,文件頭的結(jié)尾以“END OF HEADER”字符串為標(biāo)識(shí),在文件的中部以帶“MARKER NAME”的字符行標(biāo)識(shí)GPS點(diǎn)號(hào),以“TIME OF FIRST OBS”字符行標(biāo)識(shí)GPS記錄的起始時(shí)間,以“TIME OF LAST OBS”字符行標(biāo)識(shí)GPS記錄的結(jié)束時(shí)間。

不同的GPS軟件導(dǎo)出的O文件頭行數(shù)并不固定,但使用項(xiàng)目的RINEX星歷數(shù)據(jù),生成GPS觀測(cè)時(shí)間區(qū)間的星歷數(shù)據(jù)所需的起止時(shí)間是不可缺少的,如圖1,圖2所示。

圖1 RINEX觀測(cè)值文件文件頭

1.2 N 文件

RINEX導(dǎo)航文件也是由文件頭和數(shù)據(jù)區(qū)兩部分組成,通過(guò)文件頭的第1行來(lái)識(shí)別文件的類型和文件的版本,文件頭的結(jié)尾以“END OF HEADER”為標(biāo)識(shí)。在數(shù)據(jù)區(qū)每段數(shù)據(jù)的第1行前19個(gè)字符“03 10 9 2 6 0 0.0”記錄了衛(wèi)星的編號(hào)和記錄日期,第6行的第3列則記錄了GPS周數(shù),如圖3所示。

圖2 RINEX觀測(cè)值文件數(shù)據(jù)區(qū)

圖3RINEX導(dǎo)航文件

2 VB.NET程序的設(shè)計(jì)思路

RINEX格式是純ASCII碼的文本文件非常便于用程序代碼操作,VB.NET集成了豐富的內(nèi)部函數(shù),如:DATEADD,DATEDIFF可以方便的對(duì)時(shí)間進(jìn)行換算,STRCOMP函數(shù)可以對(duì)兩個(gè)字符串進(jìn)行比較,REPLACE函數(shù)可對(duì)一個(gè)字符串內(nèi)的某個(gè)字符串進(jìn)行替換。對(duì)RINEX文件的修改主要就是時(shí)間字符串的替換,由于GPS周的起點(diǎn)為UTC時(shí)間的1980年1月6日,我們就可將2個(gè)文件的每個(gè)觀測(cè)值時(shí)標(biāo)更換為GPS周1 653之前的某n周,保持相同的星期幾;將2個(gè)文件的每個(gè)觀測(cè)值的UTC時(shí)間更換為某n周之前的UTC時(shí)間,保持相同的時(shí)刻,如2012年1月1日,是1 669周第1天(星期日),可將其更換為20周前的時(shí)間,即2011年8月14日,GPS周1 649周第1天(星期日)的數(shù)據(jù),對(duì)于O文件的修改如下:

1)將文件頭中記錄觀測(cè)數(shù)據(jù)的起止時(shí)間:

3 程序的開(kāi)發(fā)與代碼編寫(xiě)

3.1 程序的界面設(shè)計(jì)

程序的界面設(shè)計(jì)如圖4所示,界面上的命令按鈕讀者可只添加“打開(kāi)RINEX文件”“保存文件夾”和“轉(zhuǎn)換”3個(gè)按鈕;添加的文本框控件用于輸入需提前的GPS周數(shù)量,添加的列表框控件用于顯示打開(kāi)的文件列表及文件轉(zhuǎn)換后的結(jié)果。

圖4 程序設(shè)計(jì)界面

3.2 代碼的編寫(xiě)

1)“打開(kāi)RINEX文件”的代碼主要是對(duì)OpenFileDialog控件進(jìn)行瀏覽選擇文件的操作,當(dāng)設(shè)置OpenFileDialog.Multiselect=True時(shí)允許同時(shí)選中多個(gè)文件,當(dāng)設(shè)置文件類型過(guò)濾器OpenFile-Dialog.Filter=“標(biāo)準(zhǔn) RINEX 文件|* .OBS;* .??N;* .??O|所有文件(*.*)|*.*”時(shí),可以瀏覽帶通配符的多種擴(kuò)展名稱的文件。

2)“選擇保存文件夾”是引用FolderBrowserDialog控件在程序運(yùn)行時(shí)通過(guò)FolderBrowserDialog.SelectedPath方法獲取一個(gè)保存路徑,這些是VB的基礎(chǔ)操作,在此不再贅述。

3)UTC時(shí)間與GPS周的相互運(yùn)算。

要將UTC時(shí)間轉(zhuǎn)換為GPS周,首先要計(jì)算出GPS的UTC時(shí)間與GPS周起算的UTC時(shí)間的天數(shù)差;第二,以天數(shù)差為除數(shù),每個(gè)GPS周7天為被除數(shù),所求的整數(shù)即為GPS周數(shù),余數(shù)為GPS周當(dāng)中的第幾天(星期日為第1天)。在VBNET中DateDiff函數(shù)可以直接求得兩個(gè)時(shí)間的時(shí)間差,用MOD函數(shù)可求得兩個(gè)整數(shù)相除的余數(shù)。

代碼編寫(xiě)如下:

5)程序的運(yùn)行。

記錄靜態(tài)GPS網(wǎng)的RINEX文件比較多,程序代碼編寫(xiě)時(shí)盡量設(shè)計(jì)為循環(huán)模式。文中的示例程序在打開(kāi)文件時(shí)將選擇的多個(gè)RINEX文件的名稱和路徑添加到列表框控件中,代碼執(zhí)行時(shí)循環(huán)讀取列表中的每個(gè)文件,通過(guò)讀文件頭判斷文件的格式,依據(jù)文件格式提取存儲(chǔ)GPS記錄的UTC時(shí)間和GPS周的字符串格式,進(jìn)而用計(jì)算出的新時(shí)間字符替換舊時(shí)間字符,程序采用了順序文件的讀寫(xiě)方法,運(yùn)行速度理想,如圖5,圖6所示。

圖5 程序運(yùn)行界面

圖6TGO基線解算固定界面

4 結(jié)語(yǔ)

限于篇幅,未能列出完整的程序代碼,但對(duì)于長(zhǎng)期從事測(cè)繪工程又有計(jì)算機(jī)基礎(chǔ)的人員,相信會(huì)有所獲,自行編寫(xiě)出各種各樣的RINEX文件修改器應(yīng)用到實(shí)際工作中,提高生產(chǎn)效率,節(jié)約資源投入。

[1]GB/T 18314-2009,全球定位系統(tǒng)(GPS)測(cè)量規(guī)范[S].

[2]曹祖圣.Visual Basic 2005完全開(kāi)發(fā)指南[M].北京:科學(xué)出版社,2007.

[3]徐紹銓.GPS測(cè)量原理及應(yīng)用[M].武漢:武漢大學(xué)出版社,2003.

[4]張 曜.Visual Basic函數(shù)實(shí)用手冊(cè)[M].北京:冶金工業(yè)出版社,2002.

猜你喜歡
數(shù)據(jù)文件字符串控件
基于文本挖掘的語(yǔ)詞典研究
關(guān)于.net控件數(shù)組的探討
數(shù)據(jù)文件恢復(fù)專題問(wèn)答
數(shù)據(jù)文件安全管控技術(shù)的研究與實(shí)現(xiàn)
SQL數(shù)據(jù)文件恢復(fù)工具
ASP.NET服務(wù)器端驗(yàn)證控件的使用
一種新的基于對(duì)稱性的字符串相似性處理算法
依據(jù)字符串匹配的中文分詞模型研究
一種針對(duì)Java中字符串的內(nèi)存管理方案
基于嵌入式MINIGUI控件子類化技術(shù)的深入研究與應(yīng)用
浦北县| 共和县| 井陉县| 耿马| 伽师县| 旺苍县| 东乌珠穆沁旗| 怀远县| 中阳县| 竹溪县| 仲巴县| 曲沃县| 巩义市| 柞水县| 文安县| 朝阳市| 金华市| 绥芬河市| 贵阳市| 宜兰市| 塔城市| 凤翔县| 丽江市| 剑河县| 宁陕县| 普兰县| 喜德县| 峡江县| 新竹市| 贵港市| 阿拉善左旗| 乌兰浩特市| 安塞县| 大宁县| 中牟县| 鲁甸县| 连城县| 高陵县| 贡嘎县| 淳化县| 庄浪县|