GPS数据采集功能的实现
李云飞
摘 要:介绍了全球定位系统的基本现状以及其工作原理,对GPS接口通信协议(NMEA 0183协议)也进行了细致地说明,最后对GPS数据中纬度、经度、时间等相关数据的采集实现做了详细地阐述。
关键词:GPS 通信协议 数据采集
全球定位系统GPS是美国从上世纪的70年代开始,于1994年全面建成,具有在海、路、空进行全方位实时三维导航与定位能力的新一代卫星导航与定位系统。然而GPS发展历程也是充满艰辛,1973~1979年,共发射了4颗试验卫星,研制了地面接收机及建立了地面跟踪网;1979~1984年,又陆续发射了7颗试验卫星,研制了各种用途接收机;1989年2月第一颗GPS工作卫星发射成功,GPS系统进入了工程建设阶段。1993年底,历时20多年,耗资200亿美元实用的GPS网,即(21+3)GPS星座全面建成,具有在海、陆、空进行全方位实时三维导航与定位能力的新一代卫星导航与定位系统。
GPS工作原理
GPS由3个独立部分组成:①空间部分:21颗工作卫星,3颗备用卫星。②地面支撑系统:1个主控站,3个注入站,5个监测站。③用户设备部分:主要由接收硬件和处理软件组成(其中GPS接收硬件一般由主机、天线和电源组成)。
用户通过用户设备接收GPS卫星发射信号,经信号处理而获得用户位置、速度等信息,最终达到利用GPS进行导航和定位的目的。
GPS定位的基本原理是根据高速运动的卫星瞬间位置作为已知的起算数据,采用空间距离后方交汇的方法,确定待测点的位置。
GPS通信接口协议——NMEA 0183协议
NMEA(Nationnal Marine Electronics Association)0183是一种航海、海运方面关于数字信号传递的标准,此标准定义了电子信号所需要的传输协议、传输数据时间。一般有以下几种数据帧:时间输出(UTC)、位置信息(GGA)、GPS DOP和卫星活动(GSA)、当前GPS卫星状态(GSV)、最简特性(RMC)、VTG速度相对正北的方向(VTG)、带有LORAN ID的地理信息(LCGLL)、带有LORAN ID的轨道和速度信息(LCVTG)、状态信息(PGRMT)和3D定位信息(PGRMV)。
GPS的通信协议采用的NMEA 0183协议,它要求的串行通信参数为:波特率=4800;数据位=8位;停止位=1位;无奇偶校验位。
GPS接收机只要处于工作状态,就会源源不断地把接收到的GPS导航定位信息通过串口传送到计算机中。这些接收信息在没有经过分类之前是无法加以利用的,因此必须通过程序将各个字段的信息从缓存字节流中提取出来,将其转化成有实际意义、可供高层决策使用的定位信息数据。与其他通信协议类似,对GPS进行信息提取,必须首先明确其帧结构,然后才能根据其结构完成对定位信息的提取。
本设计使用的GPS模块,其发送到计算机的数据主要由帧头、帧尾和帧内数据组成。根据数据帧的不同,帧头也不相同,主要有$GPGGA、$GPGSA、$GPGSV以及$GPRMC等,这些帧头标识了后续帧内数据的组成结构,各帧均以回车符和换行符作为帧尾标识一帧的结束。
虽然接收机也在源源不断地向主机发送各种数据帧,但在处理时,一般先通过对帧头的判断,只对$GPGGA帧进行数据提取处理。由于帧内各数据段由逗号分割,因此在处理缓存数据时,一般是通过搜寻ASCII码$来判断是否是帧头。在对帧头的类别进行识别后,再通过对所经历逗号个数的计数来判断当前在处理的是哪一种导航定位参数,并作出相应的处理,将所需信息提取到内存,包括时间、时期以及经纬度等信息。
3、GPS定位信息的解析
通过函数gps_processdata()对提取后的GPGGA数据帧进行解析,获得当前的UTC时间、经度和纬度信息。由于UTC时间与北京时间相差8小时,所以通过对UTC时间加上8小时以转换为北京时间。
结束语
GPS的应用越来越广泛,在我们工作中也经常涉及到此项技术,比如目前的AIS系统、视频监控系统、数字广播系统、公安350M系统,针对GPS的深入了解,对其现状、工作原理、通信协议以及数据的接收、提取和解析有了进一步的认识,能够很好地帮助上述中各项系统的了解,为更好的维护保障做好一定的理论基础。
参考文献:
[1]李明峰、《GPS定位技术及其应用》、2006年2月第1版、国防工业出版社.
[2]管耀武、《嵌入式无线通信系统开发》、2006年5月第1版、电子工业出版社.
(作者单位:长江南京通信管理局)