基于虚拟仪器技术的GPS信息采集系统的设计与试验研究

2016-06-14 17:40张亚莉吴泽涛张智刚
江苏农业科学 2016年4期
关键词:采集系统虚拟仪器

张亚莉+吴泽涛+张智刚

摘要:针对采用本文编程语言开发GPS定位信息采集系统存在的问题,在分析NMEA-0183协议的基础上,探讨了GPS信息采集与解析的关键技术与方法,利用LabVIEW软件开发了基于虚拟仪器技术的GPS信号采集系统。本研究设计的GPS信息采集系统根据GPS设备与PC间串行通信的技术优势,使用LabVIEW软件实时采集GPS接收机输出的定位信息,并在电子地图上实时、准确和形象地显示出来。系统还可将采集到的原始数据进行保存用于后续进一步分析。实地试验表明,设计的GPS信息采集系统能够实时采集GPS定位信息并显示其运动轨迹。本设计对GPS 应用系统开发等提供了参考,也可作为定位结果优化处理提供良好的数据源支持。

关键词:虚拟仪器;GPS;LabVIEW;采集系统

中图分类号: TP311 .1

文献标志码: A

文章编号:1002-1302(2016)04-0415-04

目前,已经投入运行的卫星导航定位系统有美国的全球定位系统(GPS)和俄罗斯的全球导航卫星系统(GLONASS),正在建设的有欧洲的全球卫星导航定位系统(GALILEO)和中国的北斗全球定位系统[1-2]。其中美国的GPS系统是迄今最成熟的导航定位系统,以GPS为代表的卫星导航应用产品逐渐成为现代社会信息来源的重要工具[3]。国际上广泛使用的GPS定位数据处理软件有:美国麻省理工学院(MIT)和加州大学圣地亚哥分校Scripps海洋研究所(SIO)研制的GAMIT/GLOBK,美国喷气推进实验室(JPL)研制的GIPSY/OASIS软件和瑞士BERNE大学研制的Bernese软件[4]。这些GPS数据处理软件的研发大多数是基于VC++等传统文本编程语言开发的,但采用传统文本编程语言开发需要熟练掌握复杂的编程语言,编程过程中需要考虑传统编程语言的许多句法细节,同时文本编程语言不够直观、易懂。GPS信息采集系统需要人机界面,而文本编程语言的人机界面开发功能并不十分强大,且相对较为复杂。

虚拟仪器技术应用非常广泛,它充分利用现代计算机强大的数据处理能力,在计算机及其周边硬件的支持下,利用系统软件完成对数据的采集、控制、分析以及处理等多种功能[5-6]。目前最有影响力和发展前景的虚拟仪器编程语言是美国一家仪器(NI)公司设计的LabVIEW (Laboratory Virtual Instrument Engineering Workbench)和Labwindows/CVI(C for Virtual Instruments)。它被工业界、学术界和研究实验室广泛接受,被公认为是标准的数据采集和仪器控制软件[7]。LabVIEW 作为一种开放型模块化的程序设计语言,采用G语言进行程序设计,充分体现出它在语言程序设计上的诸多优势,即具有功能强大的用户界面、使用图形编程方法来设计图形程序、使用数据流编程,具有可独立运行的应用程序、可充分提高用户的效率、节约大量的时间和金钱等,同时保证了程序的质量和运行速度[8-10]。

本研究针对文本编程语言开发GPS信息采集系统存在的问题,选择LabVIEW作为编程语言,设计开发了基于虚拟仪器技术的GPS信息采集系统。

1 GPS数据采集与数据处理

1.1 GPS数据传送方式

计算机通过串行接口(Serial Interface)与GPS设备进行通信。串行接口数据是一位一位地顺序进行传送,其特点是通信线路简单,只需要一对传输线就可以实现双向通信,从而大大降低了成本,特别适用于近距离通信。串口通信包括同步串行通信和异步串行通信2种最基本的方式。串行接口按电气标准及协议来区分包括一般电脑应用的RS-232(使用 25 针或 9 针连接器)和工业应用的半双工RS-485与全双工RS-422等。本系统采用异步串行通信方式,GPS数据终端设备(DTE)与计算机数据通信设备(DCE)之间利用 RS-232接口进行数据交换。

本系统的串口通信设计使用LabVIEW软件中提供的函数来实现。LabVIEW针对计算机标准的串行口提供了1组串行口通信子函数,用户可以非常方便地用来开发串口通信程序。本系统中LabVIEW串口程序如图1所示。图1中“VISA配置串口”函数用于按设定的波特率、数据位等参数将指定的串口初始化,“VISA 读取”函数用于从串口缓存向程序中返回数据。当请求字节的数量等于或少于串口中待读取字节的数量,或者已经收到了终止符,或者在串口中没有可用的数据且在超时时间内没有收到数据时,该函数将停止读取串口数据。

1.2 GPS数据格式和数据采集

GPS 主机和控制终端之间的数据交换协议一般都由生产厂商自行约定,各厂商间互不相同。美国国家海洋电子协会NMEA(The National Marine Electronics Association)制定了NMEA 协议,定义了不同海事电子设备间的数据传输接口,该协议有0180、0182 和0183 这3种版本,其中,NEMA-0183协议是目前使用最为广泛的一种[11]。

1组标准的NMEA-0183数据由帧头、帧内数据和帧尾3部分组成。NEMA-0183格式数据串的所有字符均为ASCII文本字符,数据传输以“语句”方式进行[12]。由于本系统只需要提取UTC时间、卫星使用数、经纬度以及海拔高度等GPS定位信息,所以选用 GGA数据格式。

在提取GPS定位数据时,先判断是否有起始标志符“$”,当接收到“$”字符后,才开始接收数据。由于本系统在初始配置中要求只输出GGA格式的数据,所以并不检查语句识别符的正确性,直接接收GGA格式的数据。在对数据的类别进行识别后,再通过对数据中逗号个数的计数来判断出当前正在处理的是哪一种定位参数。“*”字符为数据结束标志符,当接收到“*”字符时,则完成一条数据的接收,提取出相应信息后,再进行数据处理[13-14]。

LabVIEW在功能模板上的字符串子模板中提供了一整套的字符串处理函数,能够完成各种字符串处理功能。NMEA-0183语句解析程序代码如图2所示。在框图程序中,左边部分为 GGA 格式的数据提取,主要提取UTC时间、经纬度、海拔高度和使用卫星数等信息;右边部分为数据格式的转换并显示。注意提取的时间为UTC时间(世界标准时间),地球上共分为 24 个时区,每一个时区都有本地时间,为了有统一的时间标准,国际上使用 UTC标准。UTC 是基于 GMT(格林尼治标准时间)标准提供的准确时间,它与北京时间所在的时区不同,北京时间比UTC 时间早8 h。

1.3 GPS数据显示和保存

GPS数据显示是系统的人机界面问题。虚拟仪器前面板的特殊之处在于,前面板不仅仅是显示面板,同时还是操作面板,前面板的设置是否合理、友好决定了最终操作用户使用的满意程度[15-16]。

LabVIEW的特性之一就是为数据的图形化显示提供丰富的图形显示功能控件,可使虚拟仪器前面板设计得更加形象、直观,增强了用户界面的表达能力,而且使用起来极其方便。本系统通过调用LabVIEW图形显示功能的控件,实时显示物体的运动轨迹。软件实现的界面如图3所示,为了直观地显示定位信息,在前面板上设置了图表显示控件用来实时显示运动轨迹,坐标是经纬度。同时前面板上能够显示即时的定位信息,包括UTC时间、经纬度、海拔高度、卫星数等,并设置了系统控制栏,包括串口配置、开始/停止按钮。

完成了采集数据和分析数据后,需要把采集到的原始数据保存起来用作离线分析,又或者把分析完的数据保存起来以便作进一步的处理。LabVIEW有丰富的文件操作函数库,可以方便地进行文件的读写,例如,LabVIEW可以读写文本

文件、数据报表文件、二进制文件和测试文件等。使用LabVIEW 图形化编程语言可以很简单地设计数据保存程序。本系统采取了文本形式来进行GPS数据的保存。

2 串口模拟试验测试

本系统设计完成后采用了友善串口调试助手进行了串口模拟试验。友善串口调试支持常用的110~25 600 bps波特率及自定义波特率,可以自动识别串口,能设置校验、数据位和停止位,能以ASCII码、十六进制接收或发送任何数据或字符、任意设定自动发送周期[17-18]。

串口模拟试验利用计算机的2个串口,通过友善串口调试助手从计算机一个串口发送NMEA-0183格式的数据,本研究设计的GPS信息采集系统从计算机的另一个串口采集串口调试助手发送的数据后进行处理、分析和显示。串口初始化后,GPS信息采集系统采集开始采集串口调试助手发送的数据并在系统前面板上实时显示系统采集到的UTC时间、经纬度、海拔高度、卫星数等信息。

3 实地试验与分析

3.1 试验测试

本系统采用Trimble 5700 GPS 接收机构建GPS基准站,以提供可靠的差分修正减少定位误差,使用Novatel OEM615 接收机板卡构建GPS移动站。

实地试验在华南农业大学华山运动场进行。首先搭建GPS基准站和GPS移动站并连接相关硬件设备。在基准站位置上安装三脚架及对其上方自带三角台和天线适配器进行设置,将5700接收机挂在三脚架上,并把黄色的GPS天线电缆接到Zephyr天线上,然后连接GPS天线电缆的另一端到5700接收机的黄色TNC端口。本系统利用支持高精度RTK 定位的Novatel OEM615 接收机板卡构建GPS移动站,首先将电脑和Novatel OEM615 接收机板卡固定在推车上,把Novatel OEM615接收机板卡通过串口与电脑连接。采用PDL大功率数传电台和PDL RXO单收模块构建差分数据通讯链路,PDL电台连接5700接收机的差分输出端,RXO单收模块连接OEM615接收机板卡的差分数据输入接口。载波频率、空中速率、传输协议等参数设置确保收发双方一致。然后打开GPS信息采集系统,推动推车绕着足球场边界行走,GPS信息采集系统则自动记录足球场的边界GPS数据信息,且动态实时在系统前面板“GPS定位信息动态显示”栏中显示运动轨迹。系统按照要求将试验获取的GPS数据保存为文本文件以便后续进一步分析。

实地试验过程中,在GPS信息采集系统前面板“定位信息”栏中可以看到系统采集到的UTC时间,足球场边界的经纬度、海拔高度,以及采集GPS信息使用的卫星数等信息,同时在“GPS定位信息动态显示”栏中可以观察到电子地图实时显示推车在足球场运动轨迹。试验过程及试验结果如图4、图5所示。

3.2 结果与分析

3.2.1 Novatel OEM615 接收机板卡的动态定位精度分析 电子地图能够通过采集的GPS数据真实、形象地反映物体运动轨迹。同时,在系统前面板“定位信息存储”指定的计算机位置中,可以找到系统存储的采集的GPS原始数据。

为了检验动态定位精度,对所采集的数据进行提取、转换处理后,将实测经纬度坐标通过高斯投影换算成以m为单位的平面坐标后,计算GPS定位点在足球场各边上的偏移误差(Bj)和随机误差(Sj)[19],结果见表1。

从以上数据分析,试验轨迹相距最大偏离距均在0.05 m以内。分析其中最大偏差部分存在误差的主要原因是:在行走过程中,由于不能始终保持天线在一个水平面上,以及未能保证行走的路线完全重合所造成的。

3.2.2 GPS测试结果与卷尺测量结果的对比分析 为了比较GPS信息采集系统获取的推车运动轨迹图与足球场的实际形状,用卷尺测量足球场各边的长度以及足球场中心发球区直径,并使用MATLAB进行作图得到足球场实际形状(图6)。通过绕足球场整个边界采集的GPS数据进行测试后,GPS信息采集系统获取的推车运动轨迹图与足球场实际形状进行对比分析结果见表2。

通过以上3组数据的对比分析可知,通过卷尺测量和GPS测量2点之间距离的结果虽然存在差别,但是最大误差均在1 m以内,说明设计的GPS信息采集系统具有较高的测量精度。

4 结论

本研究使用LabVIEW图形化编程语言,基于虚拟仪器技术开发的GPS信息采集系统实现了对GPS接收机输出NAME-0183数据的实时接收和处理,能够根据所要判断的字符串对GPS输出的各类型NMEA语句进行解析,同时也可以存储GPS接收机输出的原始文件,便于在后处理中更为准确地计算用户位置。该程序具有通用性,可以配置成为接受其他型号的GPS信息采集系统,使用可靠方便。由于北斗导航仪等也遵守NAME-0183 协议,本设计也为北斗导航信息采集系统的研究提供了参考。

参考文献:

[1]邱中军. 北斗卫星导航系统及其他卫星系统简介[J]. 科技资讯,2012(36):27.

[2]贠 敏,葛榜军. 北斗卫星导航系统及应用[J]. 卫星应用,2012(5):19-23.

[3]Eastion R L. The navigation technology program in global positioning system[J]. The Institute of Navigation,2001(1):15-20.

[4]张小强. 利用GPS导航卫星实现国产低轨卫星精密定轨技术研究与应用[D]. 青岛:山东科技大学,2012.

[5]张毅刚. 虚拟仪器技术介绍:国外电子测量技术[J]. 2006,25(6):1-6.

[6]程学庆. LABVIEW 图形化编程与实例应用[M]. 北京:中国铁道出版社,2009.

[7]Johnson G W,Jennings R. LabVIEW graphical programming[M]. New York:McGraw-Hill,2006.

[8]余 莉,陈 杰. LabVIEW编程语言特点[J]. 中国农机化,2006(1):92-94.

[9]张千锋. 浅谈LabVIEW 在语言程序实现中的优势[J]. 机电产品开发与创新,2010,23(3):119-121.

[10]任 凯,章传银,王天文. 基于LabView的GPS数据采集及处理[J]. 测绘科学,2009,34(6):226-227.

[11]曹婷婷,高 玉.GPS中NMEA-0183协议的应用[J]. 电子工程师,2006,32(10):8-11.

[12]肖远亮. NMEA-0183数据标准在GPS 技术中的应用[J]. 物探装备,2003(6):127-132.

[13]王 威,董绪荣,柳 丽. 基于VC++实现GPS数据的采集与处理[J]. 科技创新导报,2009(11):20.

[14]马海瑞,韩云东,袁群哲,等. 基于LabVIEW的GPS 信息采集与解析[J]. 国外电子测量技术,2011,30(9):64-66.

[15]何秀慧,蒋敏兰. 基于LabVIEW的车载GPS定位系统的实现[J]. 仪器仪表学报,2009,30(6):427-429.

[16]何香玲,郑 钢,范秋华. GPS 定位信息的采集和显示[J]. 自动化仪表,2007,28(3):40-45.

[17]席东河,马磊娟,杜 娟. 单片机串口通信的调试方法与技术[J]. 武汉职业技术学院学报,2010,9(3):75-78.

[18]黄 晖,柴剑勇,严 兴. 串口通信技术[J]. 科技创新导报,2010,27:20-21.

[19]Han S,Zhang Q,Noh H,et al. A dynamic performance evaluation method for DGPS receivers under linear parallel-tracking applications[J]. Transactions of The ASAE,2004,47(1):321-329. 卢琳芳,沙之敏,岳玉波,等. 不同类型生态农庄的面源污染调查与分析[J]. 江苏农业科学,2016,44(4):419-423.

猜你喜欢
采集系统虚拟仪器
PCB 刻制机功能开发及在虚拟仪器实验室建设中的应用
虚拟仪器及其在电工电子实验中的应用
基于嵌入式的电量计量采集系统研究
用电信息采集在抄核收中的应用及效果分析
虚拟仪器技术在农业装备测控中的应用
基于虚拟仪器的DMFC实时监控系统