《全站仪双向通信及数据格式转换程序设计实现.docx》由会员分享,可在线阅读,更多相关《全站仪双向通信及数据格式转换程序设计实现.docx(13页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、全站仪双向通信及数据格式转换程序设计实现 打开文本图片集 摘 要:以索佳SET610型号全站仪为例,阐述了全站仪与计算机的双向通信方法、采集数据格式转换为CASS、SCS等数字化成图软件坐标文本格式及其它通用格式等自由转换方法及其程序设计实现。据此设计编制的数据传输与转换程序实际应用效果较好。 关键词:双向通信;指令;格式转换;程序设计 DOIDOI:10.11907/rjdk.151738 中图分类号:TP391 文献标识码:A 文章编号:1673-7800007-0149-04 0 引言 虽然GPS RTK技术已经普及,GNSS技术方兴未艾,但在实际工作中,全站仪仍在广泛应用。全站仪与计算
2、机的通信及其数据在相关成图系统的应用始终是野外测绘数据采集6技术人员不行或缺的日常工作,数据传输与转换工具的稳定性、易用性、适用性等性能对测绘外业作业人员作业效率的提高有着较大影响。本文就全站仪与计算机的数据双向通信与多格式自动转换问题及其程序设计进行探讨,旨在为一线测量技术人员的外业作业供应实际帮助。 1 全站仪通信 全站仪通信的主要目的是对仪器进行限制并实现数据传输,通信技术包括有线通信、无线通信等。本文的全站仪通信是基于计算机串口接口的有线通信,也即基于计算机的COM口进行通信。目前,个人计算机主板已基本上不集成传统的COM物理接口,但是仍有大量全站仪设备的设计主要通过COM口进行通信,
3、在计算机端通过USB-COM转换连接线安装USB接口,将其转换为COM接口,在操作系统设备管理器中安装相应设备,设置COM端口号进而实现串口通信。 2 全站仪双向通信原理及其限制指令集 全站仪的双向通信在本文指由计算机通过PC端数据传输软件获得全站仪的数据采集结果、设置值等数据和由计算机通过PC端数据传输软件向全站仪传输可接收的数据,即由计算机发起自全站仪获得数据或向全站仪发送数据的计算机与全站仪之间的通信。 索佳全站仪在国内外测绘仪器市场始终是最具代表性的测绘仪器之一,其SET系列全站仪在各行业早已得到广泛应用。本文以索佳SET 610型号全站仪为例介绍全站仪的双向限制指令集,其它型号仪器指
4、令原理也相类似。 索佳全站仪双向通信指令分为3类:QP输入指令、输出指令和设置指令1。指令由计算机向全站仪发出,输出指令的执行结果由仪器向计算机输出数据,输入指令用于仪器接收来自计算机的数据。 通信程序设计中引用的几种主要指令1如下:坐标数据输入指令如下“/Dg”:计算机向全站仪发出该指令可实现向全站仪输入附加于指令后的相应坐标数据,包括点号,应用于实际工作中常用于将已知点坐标或待放样坐标等数据通过计算机自动批量输入全站仪,为外业工作做好打算;仪器参数设置指令“/B”;仪器参数输出指令“B”;斜距和角度值数据输出指令“Ea”;距离和角度放样数据输入指令“/Db”;距离和角度放样数据输出指令“D
5、b”。 3 全站仪数据格式 SET系列全站仪输出到计算机的文本数据格式包括SDR2X、SDR332等。SET610型号全站仪输出到计算机的数据采纳SDR33格式。 SET 610型号全站仪输出的碎部点文件内容实例: 00NMSDR33 V04-04.02 21-May-02 00:00 113111 10NMJOB9 121111 06NM1.00000000 01NM:SET600 V41-05 012053SET600 V41-05 01205331 0.000 03NM10.000 08TP 15541015.045 361537.028 -5.1101 M 08TP 25541013.
6、652 361535.873 -5.094 M 08TP 166555003.453 3615101.453 2.801 M 00000 部分SDR33记录标记符格式含义如下2: 00NM,文件头标记 10NM,作业标识符记录标记 01NM,仪器型号、序列号等标记 03NM,观测目标具体记录标记 4 双向数据通信设置及程序设计 4.1 硬件打算 事先运用专用的通信线缆将全站仪与计算机连接好,打开并启动全站仪端及计算机端。 4.2 软件设置 在全站仪端找到通信参数设置功能,设置好数据通信参数、端口、传输速率、奇偶校验、数据位、停止位等,并选定须要下载的工作区文件,使全站仪处于等待发送数据状态。
7、在计算机端启动传输软件,需先设置好数据通信参数、端口、传输速率、奇偶校验、数据位、停止位等,与全站仪端完全一样,通过计算机端传输软件打开通信端口,发送数据通信指令实现数据传输。 4.3 数据下载功能程序设计 传输软件以Microsoft公司经典的Visual BASIC 6.0开发平台进行程序设计实现5。运用了MSCOMM32.OCX通信控件对象。 将通信对象命名为AllStationComm。数据下载调用方法为AllStationComm.Input,实现全站仪工作区文件文本字符流的下载。 数据下载实现代码: “ Open TargetFileYS For Output As #1 AllS
8、tationComm.PortOpen = True AllStationComm.EOFEnable = True buffer = Do buffer = buffer & AllStationComm.Input Loop Until InStr) Print #1,buffer AllStationComm.PortOpen = False Close #1 ” 通过计算机端传输软件打开通信端口,发送数据下载指令实现数据下载。 下载的数据存放于TargetFileYS变量所指向的文本文件中。 4.4 数据上传功能程序设计 数据上传调用方法为AllStationComm. Output,
9、该方法实现计算机向全站仪发送指令,全站仪将依据收到的指令内容完成相应工作,如接收计算机上传的数据等。 数据上传实现代码实例: “ Open SourceFile For Input As #1 AllStationComm.PortOpen = True Do Until EOF Line Input #1,outdata i = InStr newout = /Dg + Mid + , + Mid AllStationComm.Output = newout + vbCrLf Loop AllStationComm.PortOpen = False Close #1 ” 以上代码的功能是通过
10、重复发送/Dg 指令将每行格式为点号及X、Y、H的坐标数据文件内容导入全站仪,即由计算机向全站仪自动输入点坐标。 5 数据转换算法及程序设计 5.1 下载源数据格式分析 下载源数据格式主要包括: 碎部点直角坐标6格式。其标记符为“08TP”2,每个点坐标为一行,以该标记符为起始字符串,后面是点名,X、Y、H坐标,点代码等6,各占16个字符位。如:08TP 85541015.328 361530.196 2.473 M。除非引用的预先输入的起始点有误,一般无需关注测站信息。 碎部点极坐标6格式。其标记符为“09F1”2,每个点坐标为一行,以该标记符为起始字符串,后面是点名、斜距、天顶距、水平角、
11、目标高、点代码等6。测站点、定向点、仪器高、检查点等信息由其它标记符标识。 其它观测数据。其格式参照仪器指令参考手册。 5.2 数据格式转换算法 数据格式转换主要是对下载自全站仪的观测记录数据进行内容识别与格式转换,以便其转换结果被数字化成图软件、平差软件等第三方应用进行干脆读取和后续处理。 算法设计以下载的地形碎部点采集数据的格式转换为例,直角坐标数据的转换结果包括测绘行业广泛运用的两种基于AutoCAD平台二次开发的数字化地形地籍成图与管理系统碎部点坐标文本数据格式,即开思SCS数据格式、南方CASS数据格式两种固定格式,以及自定义格式,极坐标转换目标格式为自定义格式。 5.2.1 碎部点
12、数据开思SCS数据格式 开思SCS碎部点坐标数据格式4: “ 总点数 点名 点代码 Y坐标 X坐标 H高程 点名 ” 依据下载的数据文件内容中有“08TP”标记符的行根据SDR33格式含义识别出点名,X、Y、H坐标,点代码等,根据开思SCS碎部点坐标数据格式排列内容输出,至于总点数则访问完源数据文件即可得出。 5.2.2 碎部点数据南方CASS数据格式 南方CASS碎部点坐标数据格式3: “ 总点数 点名,点代码,Y坐标,X坐标,H高程 点名, ” 依据下载的数据文件内容中有“08TP”标记符的行根据SDR33格式含义识别出点名,X、Y、H坐标,点代码等,根据南方CASS碎部点坐标数据格式排列
13、内容输出即可。南方格式中总点数在后期版本的定义中已取消,但成图软件仍向下兼容以前格式。 5.2.3 自定义格式 直角坐标数据的自定义格式转换,同样是依据下载的数据文件内容中有“08TP”标记符的行根据SDR33格式含义识别出点名,X、Y、H坐标,点代码等,确定好点名,X、Y、H坐标,点代码等排列依次以及分隔符号,然后输出,如表1所示。 分隔符号自行选择,如“,”、空格、回车换行符等符号。 若识别的点名,X、Y、H坐标,点代码等初始依次为,根据开思SCS数据格式选择输出依次则为,即: “ 点名 点代码 Y坐标 X坐标 H高程 ” 分隔符号为回车换行符。 极坐标数据的自定义格式转换与直角坐标数据的
14、自定义格式转换相类似。 5.3 数据转换算法程序设计 5.3.1 界面设计 转换软件数据转换目标格式设置界面如图1所示。 5.3.2 程序实现 以直角坐标数据的自定义格式转换程序设计为例。 设置界面上选定后确定保存的直角坐标输出依次号代码: “ colSort = ComboZzb.ListIndex . colSort = ComboZzb.ListIndex ” 点名,X、Y、H坐标,点代码等的设置输出依次号保存在colSort数组中。 根据选定的输出依次号,对点名,X、Y、H坐标,点代码等重新进行排序: “ myvar.myindex = colSort . myvar.myindex
15、= colSort myvar.mychr = dm myvar.mychr = Trim myvar.mychr = Trim myvar.mychr = Trim myvar.mychr = Trim For i = 0 To 3 For j = i + 1 To 4 If myvar.myindex myvar.myindex Then h = myvar myvar = myvar myvar = h End If Next j Next i ” 排序后的结果存放在myvar数组中,最终按序输出myvar数组的值即可满意要求。由于排序数据量微小,因此运用了简洁的一般选择算法。 6 数据
16、通信与转换程序应用 日常工作中,在进行全站仪野外地形碎部点数据采集前,于室内利用此传输程序上传已知限制点成果数据,做好外业数据采集打算工作。外业数据采集完毕后,在内业利用此传输程序下载数据并转换为所须要的文本数据格式如南方CASS数据格式等,即可在CASS系统中读入此坐标数据文件完成展点,以便进行下一步绘图工作。 此外,上传仪器参数设置、待放样坐标、下载观测数据等也是常用功能。 7 结语 其它品牌全站仪的通信原理大同小异,也都有自己的指令系统与文件格式,其双向通信及其数据格式转换的程序设计方法基本相同。 据此设计编制的数据传输与转换工具多年来始终在一线的实际项目中得到应用,效果良好。随着新平台
17、、新技术、新接口等的发展,其在IOS、android、WPx等适时智能移动平台上实现则更加切合当今软硬件的发展及应用需求。 参考文献: 1 索佳测绘仪器贸易有限公司.索佳SET210、510、610电子全站仪运用说明书R.日本株式会社索佳,V2.0-0503-500,2000. 2 NIKON INSTRUMENTS INC.Nikon pulse laser station NPL-302 series instruction manualR.Nikon Instruments Inc,H163E 05.10.TF.9,2001. 3 广州南方测绘仪器公司.南方CASS5.0数字化地形地籍成
18、图系统参考手册R.南方测绘仪器公司,2002. 4 广州开思测绘软件有限公司.SCS 2002G多用途数字化地形地籍测绘与管理系统用户手册R.广州开思测绘软件有限公司,2002. 5 林永,张乐强.Visual Basic 6.0用户编程手册M.第2版.北京:人民邮电出版社,2002. 6 武汉测绘科技高校测量学编写组.测量学M.第3版.北京:测绘出版社,2000. 第13页 共13页第 13 页 共 13 页第 13 页 共 13 页第 13 页 共 13 页第 13 页 共 13 页第 13 页 共 13 页第 13 页 共 13 页第 13 页 共 13 页第 13 页 共 13 页第 13 页 共 13 页第 13 页 共 13 页