APP下载

天宝全站仪机载油罐测量程序开发

2015-05-08王瑞鹏李广云任飞明荆海峰

测绘通报 2015年7期
关键词:天宝油罐全站仪

王瑞鹏,王 力,李广云,任飞明,荆海峰

(1.信息工程大学,河南 郑州 450001; 2.北京金旗华瑞科技发展有限公司,北京 100022)



天宝测绘解决方案专栏

天宝全站仪机载油罐测量程序开发

王瑞鹏1,王 力1,李广云1,任飞明2,荆海峰1

(1.信息工程大学,河南 郑州 450001; 2.北京金旗华瑞科技发展有限公司,北京 100022)

一、引 言

目前我国国内的大型油库超过万家,使用先进的计量仪器和方法精确测量出大型油罐的容量具有十分重要的现实意义。

全站仪具有优越的无合作目标测距和自动驱动功能,因此使用全站仪进行油罐容量的标定逐渐被油罐容量计量部门所青睐。天宝提供的基于用户的软件开发包(TASDK)对所有用户开放,而且提供了用户界面和仪器的访问接口,可以根据全站仪油罐测量的流程开发机载测量软件模块,实现油罐的高精度自动化测量,使油罐的容量测量在较短时间内自动完成,从而简化外业操作,提高计量检定的效率。

本文利用天宝公司提供的TASDK软件开发平台,在天宝联合社区下载TIM(Trimble installation manager),对开发所需要的模拟器、工具及语言进行选择和安装,采用C++语言在Visual Studio 2008环境下对全站仪机载油罐测量程序进行开发。程序在实现仪器控制、点坐标测量与存储等问题的基础上,依据油罐国家计量检定规范《立式金属罐容量检定规程》(JJG 168—2005)的要求进行计量数据的采集与处理。

二、天宝S系列全站仪及TASDK

1.天宝S系列全站仪

Trimble S系列全站仪包括S3、S6、S8,以及最新款的S5、S7、S9、S9HP。本次开发以Trimble S7全站仪为例进行测试,它是一款生产效率很高的全站仪,将扫描、成像和测绘等功能组合成一套功能强大的解决方案。

2.Trimble Access软件开发包

Trimble Access软件开发包是通过TIM安装到电脑上的软件组件,包括:

1) 应用程序编程接口(API),即开发所需的小工具,以及底层的头文件和lib库,允许开发者将自己编写的程序与Trimble Access进行交互,可使用程序通用的基本功能。

2) Trimble Access全站仪模拟器,可以在电脑上模拟全站仪的界面和操作环境对编写好的程序进行测试,从而提高编程的效率。

3) 源代码示例,举例说明了如何在全站仪上开发完整的应用,以及数据库、全站仪控制、UI等的使用,开发人员可以学习和修改,从而开发新的测量应用模块。

三、油罐计量系统设计

1.开发内容和流程

油罐计量系统主要包括球型油罐测量,以及立式油罐的内测、外测和罐底测量,如图1所示。

图1 油罐计量系统组成

在油罐计量系统开发过程中,由于TASDK软件开发包已经实现了测站的新建和打开、测站设置、参数改正及测量数据输出等功能,并且标准函数中也包含了坐标几何计算、坐标系统转换相关的方法,因此在开发过程中,测量界面的设计和特定测量流程的实现是开发的重点,根据SDK提供的类和函数对用户界面进行设计、仪器控制,以及对采集的点进行存储和调用,具体开发的流程如图2所示。

图2 开发流程

通过Visual Studio 2008创建SC工程完成后,会生成5个文件,分别为[ApplicationName].cpp、MyApplication、MyMainWiondow、MyUITask、[ApplicationName].tdb。其中,UITask的注册和MyApplication的调用是在[ApplicationName].cpp中完成的,MyMainWiondow用来创建主窗口,X_code的创建是通过[ApplicationName].tdb来实现的。

2.全站仪开发相关的类

1) 基本的核心类(core classes):主要包括与应用初始化、注册图标、注册应用、创建主窗口、对文件的操作,以及时间处理相关的类。

2) 用户界面相关的类(user interface classes):主要包括与窗体、按钮、文本框、下拉菜单,以及向导相关的类。

3) 任务数据相关的类(job database classes):主要包括对采集的点坐标的读取和存储,以及点坐标类型相关的类。

4) 坐标类型相关的类(coordinate classes):主要包括不同类型的坐标系相关的类,以及坐标系之间转换的函数。

5) 全站仪支持的类(total station support classes):主要包括全站仪控制和监控、获取和设置全站仪测量模式、合作目标相关信息,以及外界环境相关的类。

其中,tsc_TsModes用来对全站仪进行控制、状态查询及执行测量;tsc_ITsMonitor用来处理全站仪相关的全局事件;tsc_TsEnvironment用来处理全站仪测量时的环境信息,包括仪器自身参数、靶标信息、测站数据,以及与大气相关的信息;tsc_Form用来实现简单的对话框窗体,tsc_WizardPage用来实现工作流向导对话框,tsc_WizardMenu用来实现菜单式向导对话框;数据的管理是通过tsc_Database来实现的,其中数据的读取是通过tsc_Points完成的,数据的写入是通过tsc_Observation来完成的;Measure()函数用来实现全站仪的测量点功能;SetTurnToHoriz()、SetTurnToVertical()及SetFace()函数分别用来实现对全站仪水平角、竖直角及盘左盘右的定向控制;TurnTo()函数用来使全站仪转向已知的坐标点。

4.油罐计量系统的实现

根据油罐测量的流程,对天宝全站仪的向导界面、测量主界面及消息相应按钮进行设计,通过对话框对板高、测量点间隔、圈板个数及母线号等参数进行设置,并在测量主界面上对一些参数的值进行实时显示,从而实现对全站仪油罐容量测量的自动控制。

定制的油罐计量系统开发完成后,通过TASDK将应用程序集成到Trimble Access外业软件中,使油罐计量软件与已经发布的常规测量、道路、矿场等模块具有相统一的界面风格。软件开发完成后,进入测量界面,打开DR(Direct Reflex)和LP(Laser Pointer)模式进行测量,使天宝全站仪能够像激光扫描仪一样按照设定的参数进行自动测量。在测量过程中油罐测量系统的主界面如图3所示,测量控制界面如图4所示,参数设置界面如图5所示。

图3 油罐测量系统的主界面

图4 测量控制界面程

图5 参数设置界面

四、结束语

本文基于TASDK全站仪机载软件开发平台,结合全站仪自身软硬件和油罐容量测量的特定流程,开发了应用于油罐容量自动化测量的全站仪控制应用程序,扩展了天宝全站仪操作软件的功能模块,使全站仪更加智能化,从而简化了油罐测量过程中的外业操作,提高了生产效率。

(本专栏由天宝测量部和本刊编辑部共同主办)

猜你喜欢

天宝油罐全站仪
大连天宝化学工业有限公司
18PA6B型柴油机配套油罐溢油问题分析与解决措施
《天宝桥》国画
把握主动权,提高油罐火灾扑救成功率
全站仪中间法在矿山高程测量中的应用——以河南镇平县地形测量为例
全站仪极坐标法监测点稳定性分析方法研究
天宝三载发生了什么?
油罐内外
天宝流浪记
车载全站仪位姿估计方法研究