基于VS2008的PDA水准手簿程序开发

时间:2022-05-01 12:52:14

基于VS2008的PDA水准手簿程序开发

摘要: 在Visual C++9.0环境下,探讨了基于PDA的水准记录电子手簿嵌入式开发原理和方法,根据水准测量相关规范及技术标准,完成了基于PDA的水准记录电子手簿的程序设计,成功实现了水准记录手簿软、硬件的更新换代,极大的方便了外业记录工作,取得了良好的效果。

Abstract: The paper discussed the embedded development principle and method of leveling electronic hand book based on PDA by using Visual C++ 9.0. And cording to the related standards and technological standards of leveling, it designs the program of leveling electronic hand book based on PDA, pdates the software and hardware, which is convenient to field recording work, and has obtained the good effect.

关键词: PDA;VC++;水准测量;电子手簿

Key words: PDA;VC++;leveling;electronic hand book

中图分类号:TP39 文献标识码:A 文章编号:1006-4311(2012)36-0172-02

0 引言

为了监测福建省及其近海地震活动,根据研究目标区域活动断裂的空间分布及活动特征,我中心在福建省内及闽赣交界处布设了闽赣跨断层场地、水口库区场地和厦门跨断层场地三类形变观测场地,监测相应断裂的活动。

闽赣跨断层短水准场地从1970-1982年共建有11个场地,2008年在福建省前兆流动监测项目中又增建了6个跨断层短水准观测场地,分别是:政和—海丰断裂带上的大田县旺建场地、邵武—河源断裂带上的泰宁县狮子山场地、闽江断裂带的闽候县坑南场地、永安—晋江断裂带上的安溪县参内场地,上杭—云宵断裂带上的平和县南山场地、沙县—南日岛断裂带上的莆田市莆田场地,观测场地分布见图1。

在水准测量工作中,手工水准记簿是一项极为繁琐的工作,记录、计算、检核各项工作需要记簿员非常准确、快速的完成,整个过程高度紧张,稍有差错就可能导致全测段返工。所以当可编程计算器一面世,各种类型的水准电子记录手簿纷纷出现,应用于各等级的水准测量。我中心水准记录也经历了从手工记录到Hp200Lx掌上电脑,再到基于EVB的PDA水准电子手簿的发展历程。

随着计算机软件及硬件技术的不断发展,微软不再对EVB软件进行升级,新一代的WinCE系统也不再支持基于EVB语言的程序设计,使我中心早期以EVB开发的水准记簿程序不能在新的PDA平台上运行,对生产作业造成很大影响。因此,必须对设备及软件进行升级换代。笔者提出利用Visual C++9.0开发新的基于PDA掌上电脑的水准观测记簿软件。

1 PDA及其开发环境简介

PDA是Personal Digital Assistant的缩写,意为“个人数字助理”。PDA产品大部分采用Windows Mobile、Palm OS和Linux这几种操作系统。其中微软公司研发的Windows Mobile(基于WinCE)系统继承了桌面Windows平台的易于使用和扩展性好等优点,使用最为广泛。

WinCE操作系统支持的与Windows系统兼容的API函数有上千个,使基于WinCE的嵌入式系统中运行的程序可以拥有与PC电脑中的程序同样复杂和强大的功能。可直接从微软官网下载Microsoft embedded Visual Tools开发工具包来开发WinCE应用程序。

这个软件包中还包含了WinCE平台模拟器,可直接在电脑上编写和调试WinCE程序,其中的进程、线程、视窗的概念,API函数以及控件的使用等与Windows系统非常相似。利用Microsoft Visual C++为开发语言,语言灵活性好,效率高,软件运行速度快,是基于PDA嵌入式程序设计的首选语言。在VS2008环境中进行,需安装如下组件:①安装VS2008,主要安装VC++9.0以及.Net Framework 3.5;②安装ActiveSync,用来与PC同步;③安装Windows Mobile 6.0 Professional SDK(语言开发工具包),也可用VS 2008集成的WindowsMobile 5 Professional SDK ;④安装Windows Mobile 6 Professional Image(模拟器),也可用VS 2008集成的Windows Mobile5 Professional Image。

2 程序设计思路

跨断层短水准场地分布在福建全省,比较分散、且测段短而多,但观测人员、仪器、标尺等相对固定,观测时间段固定,场地信息变化少。因此,在程序设计时充分考虑了以上因素,采用相对比较独立的模块化设计,系统主要包括六个模块:①设置观测人员、仪器型号、标尺常数等场地信息的系统初始化模块;②跨断层场地水准记录及计算模块(有观测时间限制);③长水准观测及计算模块(无观测时间限制);④仪器、标尺检测模块;⑤成果查询模块;⑥观测成果、仪检成果打印模块。

采用模块化设计的优势是把大部分信息录入工作放在系统初始化模块来运行,可提前在室内来完成,外业时就直接运行②或③模块录入观测数据、点击“下一步”按钮即可,这样就减少了记簿员的外业输入工作量,缩短外业时间,保证在一个观测时段内完成一次往测或返测,特别是在像水口场地这种有观测时间限制而水准路线又比较长的跨断层场地中体现得尤为明显。

3 程序实现

由于PDA没有键盘输入,而水准观测外业记录时需要频繁输入数据,在外界光线比较强的时候PDA界面由于反光会看不太清楚,因此数据输入界面需要大而明显。程序设计时特别设计了大而高亮显示的数字输入控件,如图3所示。

以下是部分程序代码:

If (yq = "Ni004" Or yq = "Ni007" )

{

If (Abs(q_c1 - (fzds_cs)) > 6 )

{

check_xc = False;

error_num6 = error_num6 + 1;

Call PlaySound("\shuizhun\msgbox.wav", 1, 0);

MsgBox "基辅分划读数的差超限!", , "读数差超限";

}

}

//上下丝读数平均值与中丝读数的差

If (KM_bs = "K" )

{

fzds_cs = h_c2 - Kc_Constants * 10;

}

If (KM_bs = "M" )

{

fzds_cs = h_c2 - Mc_Constants * 10;

}

xc = ((h_u + h_d) * 10 / 2) - (fzds_cs);

If (Abs(xc) > 30)

{

check_xc = False;

error_num5 = error_num5 + 1;

Call PlaySound("\shuizhun\msgbox.wav", 1, 0);

MsgBox "上下丝读数平均值与中丝读数的差超限!", , "三丝超限";}

4 结束语

本电子手簿是一个具有完善功能的水准测量记簿软件,可完全代替手工记簿。软件经过2011、2012年的厦门岛内外一等水准复测,闽赣跨断层短水准18处3期等复测的实际应用,成功实现了水准电子手簿的更新换代,提高了工作效率。说明基于VC++的PDA水准电子手簿工作流程正确,限差设置符合规范要求,数据安全性强,操作方便。

不仅如此,程序设计时,为了拓宽PDA电子手簿应用范围,同时编制了三、四等水准观测记录程序,可应用于一般工程性项目,例如在厦门市导线控制测量网布设项目中施测四等水准就得到了很好的应用。

参考文献:

[1]国家地震局.跨断层测量规范[s].北京:地震出版社,1991.

[2]国家一、二等水准测量规范[s].北京:中国标准出版社出版,1992.

[3]国家三、四等水准测量规范.(GB12898-91).

[4]汪兵,李存斌,陈鹏等.EVC高级编程及应用开发[M].北京:中国水利水电出版社,2005.

[5]杨睿,尹晖.Smart Survey水准测量一体化系统设计与开发[J].测绘工程,2009,18(6),49-52.

[6]Microsoft Windows CE程序设计[M].北京:北京大学出版社,2001.

[7]周奕君,童小华.基于掌上电脑PDA的水准测量电子手簿研究与关键技术开发[J].黑龙江哈尔滨:测绘与空间地理信息,2008(1):l7~20.

[8]刘俊清,李克,郭锋等.利用掌上电脑开发水准测量记簿软件[J].辽宁沈阳:东北地震研究,2006(1):52~55.

上一篇:安全生产管理研究 下一篇:供电企业安全生产节奏管控模型的探索和实践