李灵爱,潘国兵
(重庆交通大学土木工程学院,重庆 400074)
电子水准仪原始数据智能化处理软件研究
李灵爱,潘国兵
(重庆交通大学土木工程学院,重庆 400074)
摘要:计算机技术的发展使得电子水准仪数据处理逐渐达到自动化水平。笔者结合编程语言VisualBasic进行了软件开发,所编程序不仅满足内业计算处理要求,更能通过自动化数据检核功能进行各项数据超限判定,检核结果采用色彩区分的方式更为直观地显示出数据超限情况;此外,通过“测段小结”对一测段主要信息进行了呈现。经工程实践应用证明,软件功能满足测量规范要求,具备较强的实用价值。
关键词:电子水准仪;程序设计;数据检核;工程实践
天宝DINI03电子水准仪以其精度高、读数快、使用便捷等优点正被广泛应用于测绘生产实践中,其测量精度满足国家各级水准测量要求。读、记自动化的处理方式不仅能有效避免人工读数引起测、记误差的弊端,而且在具备良好测量环境条件的情况下,其测量效率相较于传统测量仪器有着很大程度的提高。即使DINI03电子水准仪有诸多优点,加之目前市面上也出现了针对其数据处理的相关软件,但仍存在一些软件功能上的缺陷,无法将DINI03电子水准仪优势得以最佳程度的发挥。如使用现有数据处理软件执行基础运算后,并未对其结果进行数据检核,即未对前后视距差、视距累计差及基、辅分化读数差和基、辅分化高差之差是否超限作出判定。且现有处理软件虽然能输出标准电子数据表格,但对于数据超限情况未能以直观方式呈现等。鉴于DINI03电子水准仪现有数据处理软件存在的上述问题,笔者结合编程语言VisualBasic进行软件开发,使其在数据格式转换基础上,通过“奇进偶舍”的方式分配闭合差,完成数据计算处理,进而将处理成果进行数据检核,并通过色彩区分的方式,更加直观地呈现检核结果,最终成果以Excel表格形式予以存储。成果表中涵盖“测段小结”部分,呈现该测段主要信息。
一、天宝DINI03 电子水准仪原始数据读取分析
软件设计旨在将数据通过自动化计算处理和检核,并根据国家水准测量规范输出为标准电子记录表格,以便于存储和管理,同时能在输出表格中将数据检核结果予以体现。数据的读取是执行以上工作的必要前提,信息提取的可靠性将直接影响内业效率。因此,首先对天宝DINI03电子水准仪原始数据格式进行分析,并总结出格式转换与处理中需要注意的几个关键点:
1) 原始*.dat数据文件中以“Start-Line”作为测量起始标志,数据读取以“End-Line”作为终止信号,表示一测段结束。
2) 外业测量等级录入可通过作业方式“BFFB”和“BBFF”进行判读确定,前者表示该测段为三等水准测量,后者则表示该测段为四等水准测量。
3) 测段所包含的无效信息以“#”符号为标志,对该符号之后的信息在数据读取时予以忽略[1]。以此为据,只读取“Measurementrepeated”与“Stationrepeated”后面的有效信息。
4) 数据文件中“HD”符号标志着前后视距的数据信息,与作业方式具有统一性。符号“Z”表示累计高差,第一测段累计高差为零;“Sh”“Db”“Df”分别代表全测段累计高差、累计后视距和累计前视距,可直接将其读入测段信息表。
二、 软件设计
1. 软件设计思路
软件设计流程如图1所示。
图1 软件设计流程
2. 软件功能模块简介
(1) 数据读取模块
1) 测量信息读取:录入存储于计算机任一根目录下的电子水准仪原始数据文件,提取包含测量方式、测段信息、测站数及起终点高程在内的数据信息。
2) 有效数据读取:根据原始测量文件所提供的测量方式,遵循“逐行读取”原则,将原始数据文件读入软件内存,依据原始文件中的“#”进行有效数据的提取,如图2所示。
图2 数据读取与处理主界面
执行数据读取并写入相关变量是较复杂的过程,读取顺序与测量顺序需保持一致,在此基础上,对不合格数据及附加符号进行剔除。主要代码如下:[2]
DimmhsAsMatchCollection
DimmhAsMatch
′多行
reg.MultiLine=True
′全部匹配
reg.Global=True
′忽略大小写
reg.IgnoreCase=True
′删除多余头
reg.Pattern= "(.* .*)1*Start-Line(.* ){2}"
strTmp=reg.Replace(strTmp, "")
′删除多余尾
reg.Pattern= "(.* .*){2}End-Line.* "
strTmp=reg.Replace(strTmp, "")
′删除带“|TO”的行
reg.Pattern= ".*|TO.* "
strTmp=reg.Replace(strTmp, "")
′删除带“#”的行
reg.Pattern= ".*#.* "
strTmp=reg.Replace(strTmp, "")
strContent=strTmp
(2) 数据分析处理模块
1) 数据处理:水准内业计算的首要任务是进行高差闭合差预检核,如图3所示。只有检校合格的数据才有后续处理的意义,如果闭合差超限,程序给予相应提示,并自动终止运行。涉及高差闭合差分配时小数取位的问题,程序设计中采用“奇进偶舍”的方式来避免因取舍不当造成改正数之和与高差闭合差不相符的情况发生[3]。进一步根据不同测量方式,计算不同布设形式下单一路线的各个测站高差、视距差、累计视距差,以及累计距离等信息。
图3 三、四等闭合差检核界面
2) 数据检核:根据测量方式和测量等级要求的不同选定检核标准,判定前后视距差、视距累计差及基、辅分化读数差和基、辅分化高差之差是否超限[4],并予以提示,如图4所示。
图4 三、四等数据检核界面
数据检核主要代码如下:
PublicFunctionCheckResult(ByValflagThreeAsBoolean,ByValflagShijuchaAsBoolean,ByValflagleijichaAsBoolean,ByValflagbiaochidushuAsBoolean)AsBoolean
DimretAsBoolean
′true代表验证通过
ret=True
Dimcanshu1AsDouble
Dimcanshu2AsDouble
Dimcanshu3AsDouble
′三、四等检核条件设置
If(flagThree)Then
canshu1 = 3
canshu2 = 6
canshu3 = 0.3
Else
canshu1 = 5
canshu2 = 10
canshu3 = 0.2
EndIf
DimiAsInteger
Fori= 0ToUBound(myds)
′视距差检校
If(flagShijucha)Then
If(Abs(myds(i).shijucha1) >canshu1)Then
exsheet.cells(10 +i* 4, 3).Interior.ColorIndex= 4
ret=False
EndIf
If(Abs(myds(i).shijucha2) >canshu1)Then
exsheet.cells(10 +i* 4, 4).Interior.ColorIndex= 4
ret=False
EndIf
EndIf
′累计视距差检校
If(flagleijicha)Then
If(Abs(myds(i).leijicha) >canshu2)Then
exsheet.cells(11 +i* 4, 4).Interior.ColorIndex= 4
ret=False
EndIf
EndIf
′尺读数检校
If(flagbiaochidushu)Then
If(Abs(myds(i).houchi1) exsheet.cells(8 +i* 4, 5).Interior.ColorIndex= 4 ret=False EndIf If(Abs(myds(i).houchi2) exsheet.cells(8 +i* 4, 6).Interior.ColorIndex= 4 ret=False EndIf If(Abs(myds(i).qianchi1) exsheet.cells(9 +i* 4, 5).Interior.ColorIndex= 4 ret=False EndIf If(Abs(myds(i).qianchi2) 6).Interior.ColorIndex= 4 ret=False EndIf EndIf Next CheckResult=ret EndFunction (3) 成果输出模块 1) 超限标记:根据水准测量等级选择相应的检核标准,对超过限差要求的数据采用色彩区分方式在输出的成果表中予以呈现。 2) 测段小结:输出成果包含测段小结表,用于该测段主要信息的直观展示。 3) 输出成果表:将数据处理结果和各测站的测量记录输出为标准电子记录表格,供数据存储管理及后续检查使用。 (4) 辅助功能模块 运行帮助功能可查阅本软件的帮助文件,便于程序调试问题的解决。 三、软件工程实践应用 本文以重庆合川某高速公路项目为测试对象,选取其中附合水准路线某个典型测段数据进行软件功能测试,较为直观地对软件实践应用的有效性和可靠性予以验证。 1. 数据计算处理 从*.dat数据文件中将原始数据加载至软件处理模块中,如图5所示。 图5 水准附合导线原始数据 闭合差检核结果通常分为如图6所示的两种情况,本例中闭合差检核通过,随之进行数据内业计算处理。 图6 闭合差检核提示框 2. 数据检核 根据工程实际需要,本次计算以三等水准数据处理标准(如图4所示)检核,检核结果提示框显示 如图7所示,“False”意味着处理结果中存在前后视距差或视距累计差及基、辅分化读数高差超限情况。 图7 数据检核提示框 3. 成果输出 成果输出为标准水准测量电子记录手簿,如图8所示,其中灰色部分显示数据检核超限情况。测段小结对该测段主要信息进行汇总,如图9所示。 图8 输出成果表格 图9 测段小结表格 四、结束语 电子水准仪在测量中的应用既能保证测量精度,又能避免测、记误差的产生,很大程度上提高了测量工作效率。笔者自行开发的水准数据处理软件界面友好,便于操作,其优势体现于数据处理效率及数据检核和成果展示中,通过工程实践验证了该软件的有效性和可靠性,尤其对大型水准测量工程数据处理及变形监测项目中数据的对比分析具有较高的实用价值。在软件后续开发中将增加图形绘制及报告的自动生成等功能。 参考文献: [1]苏利娜,伍鹏.电子测量仪器自动记录数据格式转换程序设计[J].测绘科学,2011,36(4):186-187. [2]龚沛曾.VisualBasic程序设计简明教程[M].北京:高等教育出版社,2002. [3]罗海滨,赵显富.电子手簿在水准测量实践教学中的应用研究[J].测绘科学,2012,37(6):187-188. [4]国家技术监督局. 国家三、四等水准测量规范:GB12898—1991[S].北京:中国标准出版社,2005. [5]张正禄.工程测量学[M].2版.武汉:武汉大学出版社,2013. [6]王海城,何义斌.基于DINI12电子水准仪记录数据标准化处理方法[J].测绘科学,2007,32(1):112-114. [7]马春艳,郭敏,邹友峰.数字水准仪与光学水准仪的测量精度比较[J].测绘科学,2010,35(1):91-92. [8]李维功,刘旭春,唐庆隆,等.DINI数字水准仪数据格式转换及平差功能程序设计与实现[J].测绘通报,2007(7):8-10. [9]赵显富,朱杰,吕伟.DiNi03数字水准仪数据格式转换程序的设计与实现[J].测绘通报,2013(11):134-135. [10]刘晓云,张世娟,程传录. 精密水准测量数据处理自动化系统的研究与实现[J].测绘通报,2013(10): 67-69. [11]林宜华.数字水准仪数据格式转换及检查的解决方法[J].测绘与空间地理信息,2010,33(4):221-224. [12]王强,胡铁石.VB语言在编写水准测量程序中的应用[J].测绘与空间地理信息,2009,32(6):177-179. [13]马德英,赖鸿斌.电子水准仪数据传输转换和成果管理系统的设计和建立[J].测绘与空间地理信息,2008, 31(6):199-201. [14]周庆贵.基于VB编程环境数据采集系统的设计[J].测控技术,2008,27(4):62-64. [15]胡亚琦,夏宝华.数据采集在VB编程中的实现[J].甘肃联合大学学报(自然科学版),2004,18(4):25-27. Research on the Intelligent Processing Software of the Original Data oftheElectronicLevelMeter LI Lingai,PAN Guobing 收稿日期:2015-11-05; 修回日期: 2016-02-24 基金项目:交通运输部应用基础研究项目(2014319814260);重庆市研究生科研创新项目(CYS14157);重庆交通大学研究生教育创新基金 作者简介:李灵爱(1991—),女,硕士生,研究方向为结构变形监测。E-mail:498805741@qq.com 通信作者:潘国兵 中图分类号:P204 文献标识码:B 文章编号:0494-0911(2016)06-0128-06 引文格式: 李灵爱,潘国兵. 电子水准仪原始数据智能化处理软件研究[J].测绘通报,2016(6):128-132.DOI:10.13474/j.cnki.11-2246.2016.0208.