基于.NET的流动GPS观测辅助系统设计与实现
2011-06-05王文青任海军王丹宁
周 辉,马 亮,王文青,任海军,程 陈,王丹宁,郑 蕊
(中国地震局 第二监测中心,陕西 西安 710054)
利用GPS(Global Positioning System)全球定位系统来获得精确的定位和时间信息已成为当今世界导航、勘测、测绘、工程抗震和地震记录等许多领域的先进技术,近几年来得到了广泛的应用[1]。在我国的地震行业中GPS也已经得到广泛应用:以GPS观测技术为主的中国地壳运动观测网络在2000年底建成[2]。GPS测量作为水准测量之外的一种重要的形变监测手段,正在获得广泛的应用,与常规大地测量相比GPS有外业观测简便、定位精度高、24 h全天候观测、经济效益显著等优点[3]。
流动GPS观测是流动监测一种重要手段。遵循中国地壳运动观测技术规程,目前流动GPS观测是采用由GPS作业小组在野外搭帐篷守点观测这种模式。野外观测期间,作业人员每天按时拿着笔记本电脑连接GPS接收机来完成下载、转换、检查的工作。在野外观测的特殊条件下,这是一个相当繁琐的工作。日复一日的重复工作,中间难免会出差错。早上八点,在阳光的映射下观测员也很难看清笔记本电脑屏幕。因此需要一个辅助程序,通过简单操作来实现这些功能,同时附加良好的语音提示告知作业人员检查结果。基于目前的作业模式,GPS数据每次检查完成后,备份在随身携带的笔记本电脑和移动硬盘上。在作业期间可能会发生电脑和移动硬盘损坏或丢失,严重威胁GPS数据的安全。同时科研人员也无法及时获取到最新的观测数据进行科学研究,尤其在地震应急时更是如此,只能等GPS作业小组作业完成回到单位以后才能拿到“新”数据。
1 系统分析设计
1.1 功能需求分析
根据野外实际业务情况,软件需具备以下功能:
1)能够正确下载、转换、检查GPS观测数据文件,具有能够一键操作完成的功能,并有相应的语音提示;
2)能够通过现有VPN通道上传GPS数据文件。
目前流动GPS观测中使用的GPS接收机为Topcon NET-G3A,数据转换程序为Topcon公司提供的tps2rin,而质量检查工具则是TEQC。Tps2rin将从接收机下载到的原始数据转换为通用的RINEX格式(Receiver INdependent EXchange format,即与接收机无关的交换格式)。TEQC(Translation,Editing and Quality Checking)是由 UNAVCO Facility(美国卫星导航系统与地壳形变观测研究大学联合体)研制的为地学研究GPS监测站数据管理服务的公开免费软件,以GNSS数据质量检核为核心,并具有数据格式转换和数据编辑功能的软件[4]。Tps2rin和TEQC功能完善并得到广泛的应用,但它们是基于命令行环境的软件,没有可视化的界面,一般用户较难掌握其操作。
本系统将根据软件工程的思想,以tps2rin和TEQC作为数据处理的核心引擎,利用Visual C#.NET 2008对流动GPS观测辅助系统软件进行设计开发。
1.2 作业流程分析
现有实际作业流程如图1所示,从下载数据到数据归档共有7个步骤,基本上每一步都要手动干预,最终将数据保存到移动存储设备中。观测任务结束以后,所有数据上交单位。最后研究人员才能利用这些数据进行研究。
图1 人工作业流程Fig.1 Manual processes flow chart
1.3 系统框架结构设计
本系统是以广大流动GPS观测人员为主要服务对象。提供良好的用户界面,实现简洁的操作流程,减轻野外观测人员的工作量,改善和提髙工作效率。
下载模块是从GPS接收机通过FTP协议下载原始观测数据;转换模块利用官方提供的tps2rin程序将原始观测数据转换为通用的RINEX格式。检查模块通过调用teqc程序检查已转换为通用格式的GPS观测数据,并显示检查结果。上传模块是使用已有的VPN通道,将观测数据和结果上传到服务器。系统功能总体结构如图2所示。
图2 系统功能结构Fig.2 Structure of system function
2 关键技术的实现
2.1 利用Process类调用tps2rin和TEQC
tps2rin和TEQC是基于命令行的应用程序,本系统调用它们来实现转换和检查数据的功能。.NET平台提供了Process类用于加载其他程序。Process类在 System.Diagnostics命名空间中。通过将Process对象实例化,设置StartInfo属性并调用Start()方法就可完成对外部程序的调用[5]。下面代码是调用tps2rin程序转换观测数据的例子。
2.2 利用FtpWebRequest类实现文件下载、上传
在.NET平台中位于命名空间为System.Net中的FtpWeb-Request类实现了文件传输协议 (FTP)客户端的一些基本功能,如文件上传和下载等[6]。本系统通过FTP协议从GPS接收机下载观测的原始数据和将观测数据和检查结果通过VPN网络上传到单位内部服务器上。
1)下面是下载观测数据的核心代码。首先将FtpWeb-Request类实例化并设置相关下载数据的参数,读取到FTP服务器上的数据,最后将读取到的数据写成文件。
2)下面是上传观测数据的核心代码。首先读取数据文件,接着将FtpWebRequest类实例化并设置相关上传数据的参数,最后将读取到的数据上传到FTP服务器上。
3 结束语
针对流动GPS观测作业环境恶劣、操作步骤繁琐、不能及时利用观测成果等特点,本系统结合野外作业现状,在功能上力求满足实际需要;采用面向对象程序设计方法实现了流动GPS观测辅助系统。目前本系统已经应用在本单位的流动GPS观测中,极大提高了作业的效率,达到了预期的效果,今后将根据用户的反馈继续完善。
[1]殷海涛,李杰,张玲,等.基于GPS观测网的山东地区地壳运动特征分析[J].西北地震学报,2008,30(3):276-281.YIN Hai-tao,LIJie,ZHANG Ling.Analysisofcrustal movement features in shandong area based on the data of GPS observation network[J].Northwestern Seismological Journal,2008,30(3):276-281.
[2]牛之俊,马宗晋,陈鑫连,等.中国地壳运动观测网络[J].大地测量与地球动力学,2002,22(3):88-93.NIU Zhi-jun,MA Zong-jin,CHEN Xin-lian,et al.Crustal movement observation network of china [J].Journal of Geodesy and Geodynamics,2002,22(3):88-93.
[3]朱照荣.城市GPS应用及发展趋势探讨[J].北京测绘,2002(3):27-35.ZHU Zhao-rong.The discussion on application and development tendency of urban GPS[J].Beijing Surveying and Mapping,2002,3:27-35.
[4]范士杰,郭际明,彭秀英.TEQC在GPS数据预处理中的应用与分析[J].测绘信息与工程,2004,29(2):33-35.FAN Shi-jie,GUO Ji-ming,PENG Xiu-ying.Applications of TEQC to GPS data pre-processing[J].Journal of Geomatics,2004,29(2):33-35.
[5]余文坤,戴吾蛟,杨哲.基于TEQC的GNSS数据质量分析及预处理软件的设计与实现 [J].大地测量与地球动力学,2010,30(5):81-85.YU Wen-kun,DAI Wu-jiao,YANG Zhe.GNSS data analysis& pre-processing software design based on TEQC[J].Journal of Geodesy and Geodynamics,2010,30(5):81-85.
[6]龚俐,毛晓蛟.基于C#的FTP客户端的实现[J].电脑编程技巧与维护,2010(24):94-95.GONG Li,MAO Xiao-jiao.Implement of FTP client based on C#[J].Computer Programming Skills & Maintenance,2010(24):94-95.