
NMEA 0813标准数据格式的解释和模拟.doc
13页. NMEA 0813标准数据格式的解释和模拟NMEA是“National Marine Electronics Association”(国际海洋电子协会)的缩写,同时也是数据传输标准工业协会,该协会定制的GNSS数据格式是NMEA 0183数据格式,它是一套定义接收机输出的标准信息,有几种不同的格式,每种都是独立相关的ASCII格式,逗点隔开数据流,数据流长度从30-100字符不等,通常以每秒间隔选择输出最常用的格式为“GGA”,它包含了定位时间、纬度、经度、高度、定位所用的卫星数、DOP值、差分状态和校正时段等,还有速度,跟踪,日期等 GPS接收机根据NMEA 0183协议的标准规,将位置、速度等信息通过串口传送到PC机、PDA等设备NMEA实际上已成为所有的GNSS接收机和最通用的数据输出格式,同时它也被用于与GNSS接收机接口的大多数软件包里 NMEA-0183协议是GNSS接收机应当遵守的标准协议,也是目前GPS接收机上使用最广泛的协议,大多数常见的GNSS接收机、GNSS数据处理软件、导航软件都遵守或者至少兼容这个协议。
NMEA 0813格式与专业RTCM2.3/3.0和CMR+的GNSS数据格式不同,NMEA 0813格式主要针对民用定位导航设备,通过NMEA 0183格式,可以实现GNSS接收机与PC或PDA之间的数据交换,可以通过USB和COM口等通用数据接口进行数据传输,其兼容性高,数据传输稳定 同时NMEA 0183可以作为民用差分GPS服务解算基础数据,通过CORS参考站和GPRS/CDMA公网通讯,直接接收NMEA 0183兼容格式的差分信息,实现一般差分GNSS服务NMEA最基本的使用方式如图1所示 图一NMEA-0183协议定义的语句非常多,但是常用的或者说兼容性最广的语句只有$GPGGA、$GPGSA、$GPGSV、$GPRMC、$GPVTG、$GPGLL等 NMEA-0183 的每条语句的格式如下表1所示表1 NMEA协议语句格式定义符号(ASCII)定义“$”语句起始位aaccc地址域,前两位为识别符,后三位为语句名“,”域分隔符ddd…ddd发送的数据容“*”效验和符号,后面的两位数是效验和hh效验和
用户需要先弄清楚需要哪些信息,然后对照GPS OEM接收板的技术资料,寻找那些包括所需信息的NMEA语句 下面将介绍兼容性最广泛的6条NMEA语句 (1)$GPGGA语句 Global Positioning System Fix Data(GGA),即GPS定位信息该语句中反映GPS定位主要数据,包括经纬度、质量因子、HDOP、高程、参考站号等字段 其标准格式如下: $GPGGA,<1>,<2>,<3>,<4>,<5>,<6>,<7>,<8>,<9>,M,<10>,M,<11>,<12>*hh
表3 $GPGSA语句各字段的含义和取值围字段含义取值围<1>模式M=手动,A=自动<2>定位类型1=没有定位,2=2D定位,3=3D定位<3>PRN码(伪随机噪声码),正在用于解算位置的卫星号01~32<4>PDOP位置精度因子0.5~99.9<5>HDOP水平精度因子0.5~99.9<6>VDOP垂直精度因子0.5~99.9 例句: $GPGSA,A,3,19,11,03,23,27,13,16,,,,,,3.43,1.67,2.99*0E (3)$GPGSV语句 GPS Satellites in View(GSV)可见卫星信息,反映GPS可见星的方位角、俯仰角、信噪比等 其标准格式如下: $GPGSV,<1>,<2>,<3>,<4>,<5>,<6>,<7>,…<4>,<5>,<6>,<7>*hh
其他卫星信息将在下一序列的NMEA0183语句中输出 例句: $GPGSV,3,1,11,1,83,54,32,3,19,192,28,6,26,57,36,7,51,140,37*7D $GPGSV,3,2,11,14,40,136,34,16,64,266,36,20,21,293,,22,2,168,*4C $GPGSV,3,3,11,23,10,321,,25,53,7,40,30,2,46,*48 (4)$GPRMC 语句 Recommended Minimum Specific GPS/TRANSIT Data(RMC),即推荐定位信息 其标准格式如下: $GPRMC,<1>,<2>,<3>,<4>,<5>,<6>,<7>,<8>,<9>,<10>,<11>,<12>*hh
其标准格式为: $GPVTG,<1>,T,<2>,M,<3>,N,<4>,K,<5>*hh
struct CNmeaData { CNmeaData (); void ResetData (); // Data retrieved from the NMEA sentences. double lat; // 纬度,单位为度(正数为北纬,负数为南纬) double lon; // 经度,单位为度(正数为东经,负数为西经) double altitude; // 海拔高度,米 double speed; // 速度,节。
