GPS-NMEA数据格式详解
GPS数据传输格式NMEA
NMEA是"National Marine Electronics Association"(国际海洋电子协会)缩写,同时也是数据传输标准工业协会,在这里,实际上应为NMEA 0183。
它是一套定义接收机输出的标准信息,有几种不同的格式,每种都是独立相关的ASCII格式,逗点隔开数据流,数据流长度从30-100字符不等,通常以每秒间隔选择输出,最常用的格式为"GGA",它包含了定位时间,纬度,经度,高度,定位所用的卫星数,DOP 值,差分状态和校正时段等,其他的有速度,跟踪,日期等。
NMEA实际上已成为所有的GPS接收机和最通用的数据输出格式,同时它也被用于与GPS接收机接口的大多数的软件包里。
NMEA-0183协议定义的语句非常多,但是常用的或者说兼容性最广的语句只有$GPGGA、$GPGSA、$GPGSV、$GPRMC、$GPVTG、$GPGLL等。
下面给出这些常用NMEA-0183语句的字段定义解释。
$GPGGA例:$GPGGA,092204.999,4250.5589,S,14718.5084,E,1,04,24.4,19.7,M,,,,000 0*1F字段0:$GPGGA,语句ID,表明该语句为Global Positioning System Fix D ata(GGA)GPS定位信息字段1:UTC 时间,hhmmss.sss,时分秒格式字段2:纬度ddmm.mmmm,度分格式(前导位数不足则补0)字段3:纬度N(北纬)或S(南纬)字段4:经度dddmm.mmmm,度分格式(前导位数不足则补0)字段5:经度E(东经)或W(西经)字段6:GPS状态,0=未定位,1=非差分定位,2=差分定位,3=无效PPS,6=正在估算字段7:正在使用的卫星数量(00 - 12)(前导位数不足则补0)字段8:HDOP水平精度因子(0.5 - 99.9)(一般认为大于6就等于误差太大,值为纬度和经度误差平方和的开根号值)字段9:海拔高度(-9999.9 - 99999.9)字段10:地球椭球面相对大地水准面的高度字段11:差分时间(从最近一次接收到差分信号开始的秒数,如果不是差分定位将为空)字段12:差分站ID号0000 - 1023(前导位数不足则补0,如果不是差分定位将为空)字段13:校验值$GPGSA例:$GPGSA,A,3,01,20,19,13,,,,,,,,,40.4,24.4,32.2*0A字段0:$GPGSA,语句ID,表明该语句为GPS DOP and Active Satellites (GSA)当前卫星信息字段1:定位模式,A=自动手动2D/3D,M=手动2D/3D字段2:定位类型,1=未定位,2=2D定位,3=3D定位字段3:PRN码(伪随机噪声码),第1信道正在使用的卫星PRN码编号(00)(前导位数不足则补0)字段4:PRN码(伪随机噪声码),第2信道正在使用的卫星PRN码编号(00)(前导位数不足则补0)字段5:PRN码(伪随机噪声码),第3信道正在使用的卫星PRN码编号(00)(前导位数不足则补0)字段6:PRN码(伪随机噪声码),第4信道正在使用的卫星PRN码编号(00)(前导位数不足则补0)字段7:PRN码(伪随机噪声码),第5信道正在使用的卫星PRN码编号(00)(前导位数不足则补0)字段8:PRN码(伪随机噪声码),第6信道正在使用的卫星PRN码编号(00)(前导位数不足则补0)字段9:PRN码(伪随机噪声码),第7信道正在使用的卫星PRN码编号(00)(前导位数不足则补0)字段10:PRN码(伪随机噪声码),第8信道正在使用的卫星PRN码编号(0 0)(前导位数不足则补0)字段11:PRN码(伪随机噪声码),第9信道正在使用的卫星PRN码编号(0 0)(前导位数不足则补0)字段12:PRN码(伪随机噪声码),第10信道正在使用的卫星PRN码编号(0 0)(前导位数不足则补0)字段13:PRN码(伪随机噪声码),第11信道正在使用的卫星PRN码编号(0 0)(前导位数不足则补0)字段14:PRN码(伪随机噪声码),第12信道正在使用的卫星PRN码编号(0 0)(前导位数不足则补0)字段15:PDOP综合位置精度因子(0.5 - 99.9)字段16:HDOP水平精度因子(0.5 - 99.9)字段17:VDOP垂直精度因子(0.5 - 99.9)字段18:校验值$GPGSV例:$GPGSV,3,1,10,20,78,331,45,01,59,235,47,22,41,069,,13,32,252,45*70 字段0:$GPGSV,语句ID,表明该语句为GPS Satellites in View(GSV)可见卫星信息字段1:本次GSV语句的总数目(1 - 3)字段2:本条GSV语句是本次GSV语句的第几条(1 - 3)字段3:当前可见卫星总数(00 - 12)(前导位数不足则补0)字段4:PRN 码(伪随机噪声码)(01 - 32)(前导位数不足则补0)字段5:卫星仰角(00 - 90)度(前导位数不足则补0)字段6:卫星方位角(00 - 359)度(前导位数不足则补0)字段7:信噪比(00-99)dbHz字段8:PRN 码(伪随机噪声码)(01 - 32)(前导位数不足则补0)字段9:卫星仰角(00 - 90)度(前导位数不足则补0)字段10:卫星方位角(00 - 359)度(前导位数不足则补0)字段11:信噪比(00-99)dbHz字段12:PRN 码(伪随机噪声码)(01 - 32)(前导位数不足则补0)字段13:卫星仰角(00 - 90)度(前导位数不足则补0)字段14:卫星方位角(00 - 359)度(前导位数不足则补0)字段15:信噪比(00-99)dbHz字段16:校验值$GPRMC例:$GPRMC,024813.640,A,3158.4608,N,11848.3737,E,10.05,324.27,15070 6,,,A*50字段0:$GPRMC,语句ID,表明该语句为Recommended Minimum Specific GPS/TRANSIT Data(RMC)推荐最小定位信息字段1:UTC时间,hhmmss.sss格式字段2:状态,A=定位,V=未定位字段3:纬度ddmm.mmmm,度分格式(前导位数不足则补0)字段4:纬度N(北纬)或S(南纬)字段5:经度dddmm.mmmm,度分格式(前导位数不足则补0)字段6:经度E(东经)或W(西经)字段7:速度,节,Knots字段8:方位角,度字段9:UTC日期,DDMMYY格式字段10:磁偏角,(000 - 180)度(前导位数不足则补0)字段11:磁偏角方向,E=东W=西字段16:校验值$GPVTG例:$GPVTG,89.68,T,,M,0.00,N,0.0,K*5F字段0:$GPVTG,语句ID,表明该语句为Track Made Good and Ground S peed(VTG)地面速度信息字段1:运动角度,000 - 359,(前导位数不足则补0)字段2:T=真北参照系字段3:运动角度,000 - 359,(前导位数不足则补0)字段4:M=磁北参照系字段5:水平运动速度(0.00)(前导位数不足则补0)字段6:N=节,Knots字段7:水平运动速度(0.00)(前导位数不足则补0)字段8:K=公里/时,km/h字段9:校验值$GPGLL例:$GPGLL,4250.5589,S,14718.5084,E,092204.999,A*2D字段0:$GPGLL,语句ID,表明该语句为Geographic Position(GLL)地理定位信息字段1:纬度ddmm.mmmm,度分格式(前导位数不足则补0)字段2:纬度N(北纬)或S(南纬)字段3:经度dddmm.mmmm,度分格式(前导位数不足则补0)字段4:经度E(东经)或W(西经)字段5:UTC时间,hhmmss.sss格式字段6:状态,A=定位,V=未定位字段7:校验值。
NMEA标准输出——GPS数据格式标准
NMEA-0183标准NMEA‐0183NMEA 0183 是美国国家海洋子会〔 National Marine Electronics Association 〕海用子拟定的准格式。
当前已成了 GPS航一的 RTCM〔 Radio TechnicalCommission for Maritime services〕准。
序号命令明最大1$GPGGA全球定位数据722$GPGSA星 PRN数据653$GPGSV星状信息2104$GPRMC运定位数据705$GPVTG地面速度信息346$GPGLL大地坐信息7$GPZDA UTC和日期注:送次序 $PZDA、 $GPGGA、 $GPGLL、$GPVTG、$GPGSA、 $GPGSV*3、 $GPRMC 明:采用 ASCII,其串行通信默参数:波特率 =4800bps,数据位 =8bit,开始位 =1bit,停止位 =1bit,无奇偶校。
格式形如: $aaccc,ddd,ddd, ⋯,ddd*hh<CR><LF>1、“ $〞——命令初步位2、aaccc ——地址域,前两位符,后三位句名3、ddd⋯ ddd——数据4、“ * 〞——校和前5、hh——校和〔 checksum〕, $与* 之所有字符 ASCII的校和〔各字做异或运算,获取校和后,再 16 制格式的 ASCII字符。
〕6、<CR><LF>—— CR〔Carriage Return〕 + LF〔 Line Feed〕束,回和行GPGGAGPS固定数据出句,是一GPS定位的主要数据,也是使用最广的数据。
$GPGGA,<1>,<2>,<3>,<4>,<5>,<6>,<7>,<8>,<9>,<10>,<11>,<12>,<13>,<14>*<15><CR><LF><1> UTC,格式。
Gps协议解析
GPS卫星定位接收器的NMEA协议解析GPS接收机只要处于工作状态就会源源不断地把接收并计算出的GPS导航定位信息通过串口传送到计算机中。
前面的代码只负责从串口接收数据并将其放置于缓存,在没有进一步处理之前缓存中是一长串字节流,这些信息在没有经过分类提取之前是无法加以利用的。
因此,必须通过程序将各个字段的信息从缓存字节流中提取出来,将其转化成有实际意义的,可供高层决策使用的定位信息数据。
同其他通讯协议类似,对GPS进行信息提取必须首先明确其帧结构,然后才能根据其结构完成对各定位信息的提取。
对于本文所使用的GARMIN GPS天线板,其发送到计算机的数据主要由帧头、帧尾和帧内数据组成,根据数据帧的不同,帧头也不相同,主要有"$GPGGA"、"$GPGSA"、"$ GPGSV"以及"$GPRMC"等。
这些帧头标识了后续帧内数据的组成结构,各帧均以回车符和换行符作为帧尾标识一帧的结束。
对于通常的情况,我们所关心的定位数据如经纬度、速度、时间等均可以从"$GPRMC"帧中获取得到,该帧的结构及各字段释义如下:$GPRMC,<1>,<2>,<3>,<4>,<5>,<6>,<7>,<8>,<9>,<10>,<11>*hh<1> 当前位置的格林尼治时间,格式为hhmmss<2> 状态, A 为有效位置, V为非有效接收警告,即当前天线视野上方的卫星个数少于3颗。
<3> 纬度, 格式为ddmm.mmmm<4> 标明南北半球, N 为北半球、S为南半球<5> 径度,格式为dddmm.mmmm<6> 标明东西半球,E为东半球、W为西半球<7> 地面上的速度,范围为0.0到999.9<8> 方位角,范围为000.0到 359.9 度<9> 日期, 格式为ddmmyy<10> 地磁变化,从000.0到 180.0 度<11> 地磁变化方向,为E 或 W至于其他几种帧格式,除了特殊用途外,平时并不常用,虽然接收机也在源源不断地向主机发送各种数据帧,但在处理时一般先通过对帧头的判断而只对"$GPRMC"帧进行数据的提取处理。
2024版一文读懂GPSNMEA
20XX 专业合同封面COUNTRACT COVER甲方:XXX乙方:XXX2024版一文读懂GPSNMEA 本合同目录一览1. 定义与术语解释1.1 GPSNMEA的定义1.2 合同双方的身份和信息1.3 相关术语的解释2. 合同的条款和条件2.1 合同的有效期2.2 双方的权利和义务2.3 合同的修改和终止3. GPSNMEA的使用和功能3.1 GPSNMEA的使用范围3.2 GPSNMEA的功能描述3.3 GPSNMEA的技术参数4. 技术支持和维护服务4.1 技术支持的提供4.2 维护服务的实施4.3 服务响应时间和处理流程5. 合同的价格和支付条款5.1 合同价格的确定5.2 支付方式和支付时间5.3 发票的出具和支付6. 违约责任6.1 双方违约的情形6.2 违约责任的计算和赔偿6.3 违约解决的流程7. 争议解决7.1 争议解决的途径7.2 仲裁的地点和规则7.3 法律适用8. 保密条款8.1 保密信息的定义8.2 保密信息的保护措施8.3 保密信息的例外情况9. 法律和监管要求9.1 合同遵守的法律9.2 合同的监管要求9.3 法律变更的影响10. 一般条款10.1 通知和通讯10.2 合同的完整性和可分割性10.3 合同的转让11. 保险11.1 保险的购买和维持11.2 保险事故的通知和处理11.3 保险赔偿的分配12. 知识产权12.1 知识产权的保护12.2 知识产权的使用权限12.3 知识产权侵权的责任13. 附件和附录13.1 合同附件的说明13.2 附录内容的列举13.3 附件和附录的法律效力14. 签署页14.1 双方签署的合同正本14.2 双方签署的合同副本14.3 签署日期和地点的记录第一部分:合同如下:第一条定义与术语解释1.1 GPSNMEA的定义GPSNMEA是全球定位系统(Global Positioning System)的导航信息(Navigation Message)的缩写,是指由GPS卫星发射的一种数据格式,包含了卫星的时间、位置、速度等导航信息。
标准NMEA协议
标准NMEA协议协议名称:标准NMEA协议一、引言标准NMEA协议是一种用于全球定位系统(GPS)设备和其他导航设备之间进行数据通信的协议。
该协议定义了一系列数据格式和通信规则,以确保不同设备之间的数据交换的一致性和互操作性。
本协议旨在提供一种通用的数据交换标准,使得不同厂商的设备能够无缝地进行数据交互。
二、协议结构标准NMEA协议采用文本格式进行数据传输,每条数据以"$"符号开头,以回车换行符"\r\n"结尾。
数据的内容由逗号分隔的字段组成,每个字段代表一个特定的数据类型。
三、数据格式标准NMEA协议定义了多种数据格式,以下是其中几种常用的数据格式:1. GGA(地理定位信息)格式:- 数据格式:$GPGGA,UTC时间,纬度,纬度半球,经度,经度半球,定位质量指示,使用卫星数量,水平精度因子,天线离海平面的高度,大地水准面偏移量,差分GPS数据期限,差分参考站ID,校验和<CR><LF>- 示例:$GPGGA,123519,4807.038,N,01131.000,E,1,08,0.9,545.4,M,46.9,M,,*472. GLL(经纬度和UTC时间数据)格式:- 数据格式:$GPGLL,纬度,纬度半球,经度,经度半球,UTC时间,定位状态,校验和<CR><LF>- 示例:$GPGLL,4916.45,N,12311.12,W,225444,A,*1D3. RMC(推荐最小定位信息)格式:- 数据格式:$GPRMC,UTC时间,定位状态,纬度,纬度半球,经度,经度半球,速度,航向,UTC日期,磁偏角,磁偏角方向,模式指示,校验和<CR><LF>- 示例:$GPRMC,123519,A,4807.038,N,01131.000,E,022.4,084.4,230394,003.1,W,*6A四、通信规则1. 数据发送频率:设备应按照预定的频率发送数据,以确保及时更新和数据的准确性。
NMEA 标准输出——GPS数据格式标准
NMEA-0183标准NMEA‐0183NMEA 0183是美国国家海洋电子协会(National Marine Electronics Association )为海用电子设备制定的标准格式。
目前业已成了GPS导航设备统一的RTCM(Radio Technical Commission for Maritime services)标准协议。
序号命令说明最大帧长1 $GPGGA 全球定位数据 722 $GPGSA 卫星PRN数据 653 $GPGSV 卫星状态信息 2104 $GPRMC 运输定位数据 705 $GPVTG 地面速度信息 346 $GPGLL 大地坐标信息7 $GPZDA UTC时间和日期注:发送次序$PZDA、$GPGGA、$GPGLL、$GPVTG、$GPGSA、$GPGSV*3、$GPRMC协议帧总说明:该协议采用ASCII码,其串行通信默认参数为:波特率=4800bps,数据位=8bit,开始位=1bit,停止位=1bit,无奇偶校验。
帧格式形如:$aaccc,ddd,ddd,…,ddd*hh<CR><LF>1、“$”——帧命令起始位2、aaccc——地址域,前两位为识别符,后三位为语句名3、ddd…ddd——数据4、“*”——校验和前缀5、hh——校验和(check sum),$与*之间所有字符ASCII码的校验和(各字节做异或运算,得到校验和后,再转换16进制格式的ASCII字符。
)6、<CR><LF>——CR(Carriage Return) + LF(Line Feed)帧结束,回车和换行GPGGAGPS固定数据输出语句,这是一帧GPS定位的主要数据,也是使用最广的数据。
$GPGGA,<1>,<2>,<3>,<4>,<5>,<6>,<7>,<8>,<9>,<10>,<11>,<12>,<13>,<14>*<15><CR><LF><1> UTC时间,格式为hhmmss.sss。
GPS数据格式详解
GPS数据格式详解第一篇:GPS数据格式详解GPS数据格式(2009-05-15 11:15:05)一、NMEA0183标准语句1、Global Positioning System Fix Data(GGA)GPS定位信息$GPGGA,<1>,<2>,<3>,<4>,<5>,<6>,<7>,<8>,<9>,M,<10 >,M,<11>,<12>*hh <1> UTC时间,hhmmss(时分秒)格式<2> 纬度ddmm.mmmm(度分)格式(前面的0也将被传输)<3> 纬度半球N(北半球)或S(南半球)<4> 经度dddmm.mmmm(度分)格式(前面的0也将被传输)<5> 经度半球E(东经)或W(西经)<6> GPS状态:0=未定位,1=非差分定位,2=差分定位,6=正在估算 <7> 正在使用解算位置的卫星数量(00~12)(前面的0也将被传输)<8> HDOP水平精度因子(0.5~99.9)<9> 海拔高度(-9999.9~99999.9)<10> 地球椭球面相对大地水准面的高度<11> 差分时间(从最近一次接收到差分信号开始的秒数,如果不是差分定位将为空)<12> 差分站ID号0000~1023(前面的0也将被传输,如果不是差分定位将为空)2、GPS DOP and Active Satellites(GSA)当前卫星信息$GPGSA,<1>,<2>,<3>,<3>,<3>,<3>,<3>,<3>,<3>,<3>,<3 >,<3>,<3>,<3>,<4>,<5>,<6>*hh <1> 模式,M=手动,A=自动<2> 定位类型,1=没有定位,2=2D定位,3=3D定位<3> PRN码(伪随机噪声码),正在用于解算位置的卫星号(01~32,前面的0也将被传输)。
NMEA协议
NMEA协议协议名称:NMEA协议一、引言NMEA协议是一种用于全球定位系统(GPS)接收器和其他导航设备之间进行数据交换的通信协议。
该协议定义了数据格式、语法和传输规则,以确保设备之间的数据互操作性和兼容性。
本协议旨在详细描述NMEA协议的标准格式和规范。
二、协议版本当前最新版本的NMEA协议为NMEA 0183。
三、协议结构NMEA协议的数据格式由数据字段和控制字符组成。
每个数据字段以逗号分隔,以确保数据的准确性和一致性。
以下是NMEA协议的标准格式:1. 数据字段NMEA协议中的数据字段包括以下几种类型:- 语句类型(Sentence Type):指定数据的类型和用途,通常由两个字母表示。
- 数据字段(Data Field):包含有关定位和导航的具体数据,如经度、纬度、速度等。
- 校验和(Checksum):用于验证数据的完整性,采用十六进制表示。
2. 控制字符NMEA协议中使用的控制字符包括以下几种:- 开始字符(Start Character):以"$"符号开头,用于标识数据字段的开始。
- 结束字符(End Character):以换行符(LF)和回车符(CR)结尾,用于标识数据字段的结束。
四、数据类型NMEA协议支持多种数据类型,包括但不限于以下几种:1. GGA(Global Positioning System Fix Data):包含有关GPS定位的基本信息,如纬度、经度、海拔高度等。
2. RMC(Recommended Minimum Navigation Information):包含有关导航信息的基本数据,如日期、时间、速度等。
3. VTG(Course Over Ground and Ground Speed):包含有关船舶或车辆的航向和速度信息。
4. GSA(GPS DOP and Active Satellites):包含有关GPS接收器的状态和卫星信息。
nmea格式解读
NMEA格式是一种常见的海上电子导航数据格式,由美国国家海洋电子协会(National Marine Electronics Association)定义和标准化。
NMEA格式通常用于海上电子导航设备、GPS接收机和其他相关设备中,以传输海上电子导航数据。
NMEA格式通常包含以下几种数据类型:1. 时间数据NMEA格式中的时间数据通常以“$”符号开头,表示时间数据。
时间数据包括UTC时间和本地时间,通常以“T”或“,”符号进行分隔。
例如:$T,123456.789,D,123456.789,E,34.56N,123.456W,0,0.0,A*7CF4其中,第一个元素“123456.789”表示UTC时间的毫秒数。
2. 位置数据位置数据通常以“$”符号和逗号符号分隔,表示经度和纬度坐标。
例如:$GPGGA,123456.789,34.56N,123.456W,0.0,0.0,A*7CF4其中,第一个元素“123456.789”是UTC时间的秒数。
3. 速度数据速度数据通常以“$”符号和逗号符号分隔,表示速度和航向信息。
例如:$GPGSA,A,123456,000.00,000.00,000.00,000.00,000.00,12.0*7CF4其中,第一个元素“123456”是UTC时间的秒数。
4. 其他数据其他数据类型包括时间差数据、航向数据、高度数据等,通常以“$”符号和逗号符号分隔。
例如:$GPRMC,123456.789,34.56N,123.456W,000.000,000.00,A*7CF4其中,第一个元素“123456.789”是UTC时间的毫秒数。
需要注意的是,NMEA格式的数据类型和格式可能因设备和厂商而异,因此在解析NMEA格式数据时需要仔细检查数据格式和语法规则。
NMEA协议
NMEA协议协议名称:NMEA协议一、介绍NMEA(National Marine Electronics Association)协议是一种用于海洋电子设备之间数据通信的标准协议。
该协议定义了一系列数据格式和语句,用于描述和传输全球定位系统(GPS)接收器和其他导航设备的数据。
NMEA协议旨在提供一个通用的数据格式,以确保不同制造商的设备可以相互兼容和交互。
本协议旨在详细描述NMEA协议的标准格式和数据语句。
二、标准格式NMEA协议的标准格式如下:1. 语句起始符号:每个语句都以"$"字符开始。
2. 语句类型:紧随起始符号之后是一个三个字母的标识符,表示语句的类型。
例如,"$GPGGA"表示GPS定位数据。
3. 数据字段:语句类型之后是一系列由逗号分隔的数据字段。
每个字段包含特定的数据值,用于描述设备的状态或位置信息。
4. 校验和:数据字段之后是一个星号字符和两位十六进制数,表示校验和。
校验和用于验证数据的完整性。
三、常见语句类型和数据字段1. $GPGGA:GPS定位数据- UTC时间:表示定位数据的时间,格式为hhmmss.sss。
- 纬度:表示定位数据的纬度,格式为ddmm.mmmm。
- 纬度半球:表示纬度的半球,N表示北半球,S表示南半球。
- 经度:表示定位数据的经度,格式为dddmm.mmmm。
- 经度半球:表示经度的半球,E表示东经,W表示西经。
- 定位质量指示:表示定位的质量,数值范围从0到8,0表示定位无效,8表示定位有效。
- 使用卫星数量:表示用于定位的卫星数量。
- HDOP:水平精度因子。
- 海拔高度:表示海拔高度,单位为米。
- 大地水准面偏差:表示大地水准面偏差,单位为米。
- 差分GPS数据期限:表示差分GPS数据的期限。
2. $GPGLL:地理定位数据- 纬度:表示地理位置的纬度,格式为ddmm.mmmm。
- 纬度半球:表示纬度的半球,N表示北半球,S表示南半球。
NMEA数据格式
NMEA数据格式索引一、 GPS模块的介绍和选择、GPS 9540二、常见GPS数据的输出格式三、 GPS 接口电路的选择和制作四、串口的调试、系统的装车五、常见GPS软件的种类和选择、灵图天行者系列软件的调试和运行六、开放式的OZI 系列软件七、 GSM远程信息传递模块的介绍和选择八、利用51单片机对GPS模块和GSM模块进行通讯试验九、能通过GSM短信传递即时车辆位置信息的高级车辆防盗系统一GPS模块的介绍和选择GPS 系美国最初为军方服务而提出并实施的庞大宇宙、航天工程。
系统共有24颗卫星运行于太空特定的轨道上向地球发射定位信息,地面GPS接收机可获取经度、纬度、高度、方向、速度、时间等信息为其军事报机构服务。
随着科技的发展和发用需求的增加,现在GPS技术己全面对民用开放,并被广泛用于航天、测绘、交通管理等领域,其中地面移动目标(如车辆等)的定位、监控是使用定位技术最为成功的行业; GPS卫星定位模块是开发GPS相关产品的必备器件,GPS 模块一般由美国、日本、台湾生产。
其中台湾生产的模块价格比较便宜,性能也不错,所以被广泛应用。
这里我们就是选择性价比比较高的台湾模块,当然在精度、响应时间、数据传输方面肯定会有一些差距但是在车载民用领域已经是足够了,经过比较选择了GPS9540 GPS 9540模块GPS 9540模块为台湾产12通道的GPS接收模块;体积40x72x13毫米,匹配馈线5米长GPS磁性接收天线。
该模块为T T L 电平数据输出,每秒一次$GPGGA/$GPRMC指令,9600波特率。
模块中,封装有实时时钟、PPS定时输出、DGPS、波特率可选输入(输出)、NMEA 0183、以及一个永久存贮器。
主要特点是:结构小巧、性能优良、低功耗的12通道模块。
其主要就是提供给从事GPS模块二次开发的客户使用的。
默认每秒输出一次TTL的NMEA-0183信号。
格式如下:$GPRMC,040936.626,A,3148.4753,N,12138.6459,E,013.6,180 .54,100404,,*1A这条信息中包含了非常精确的年/月/日/时/分/秒/毫秒,和当前经纬度、运动速度、运动方向等数据。
NMEA数据格式说明
NMEA数据格式说明目录第1章标准NMEA协议 (3)1.1 GGA (4)1.2 GLL (5)1.3 GSA (6)1.4 GSV (7)1.5 RMC (8)1.6 VTG (9)第2章GX601默认配置......................................................................... 错误!未定义书签。
第3章GX602默认配置 (10)第4章GX603默认配置 (11)第1章标准NMEA协议致物模块支持标准协议NMEA 0183,下表是对NMEA 0183协议结构的说明。
表1:NEMA结构表1.1 GGAGPS定位信息帧,包含了GPS卫星时间、位置以及确定数据需要的其他参数,如可用卫星数等等输出范例:$GPGGA,161229.487,3723.2475,N,12158.3416,W,1,07,1.0,9.0,M, , , ,0000*18表2:GGA 数据格式表3:定位代号指示器1.2 GLLGPGLL信息帧记录了当前地理定位信息,包括经度、纬度和UTC时间输出范例:$GPGLL,3723.2475,N,12158.3416,W,161229.487,A*2C表4:GLL数据格式1.3 GSAGPGSA信息帧记录了当前卫星的信息输出范例:$GPGSA,A,3,07,02,26,27,09,04,15, , , , , ,1.8,1.0,1.5*33 表5:GSA数据格式表6:模式1表7:模式 21.4 GSVGPGSV是记录当前接收卫星状态以及上空位置的信息帧输出范例:$GPGSV,2,1,07,07,79,048,42,02,51,062,43,26,36,256,42,27,27,138,42*71 $GPGSV,2,2,07,09,23,313,42,04,19,159,41,15,12,041,42*41表8:GSV数据格式1.5 RMCGPRMC记录了NMEA推荐的最小信息帧,包括了大部分定位导航需要的信息输出范例:$GPRMC,161229.487,A,3723.2475,N,12158.3416,W,0.13,309.62,120598, ,*10表9:RMC数据格式1.6 VTGGPVTG记录了接收终端的地表矢量速度,由地表角度和地表速度组成.输出范例:$GPVTG,309.62,T, ,M,0.13,N,0.2,K*6E表1:VTG数据格式第2章GX601默认配置表11:GX601默认配置第3章GX602默认配置表12:GX602默认配置第4章GX603默认配置因为现在GX603支持GPS/GLONASS或者GPS/BeiDou,所以根据目前市场需求,在据于NMEA-0183 基础上使用不同的$字段定义来区分不同navigation satellite system信息,字段后面输出数据完全按照NMEA-0183 协议的:$GP XXX 代表球定位系统(GPS-global positioning system)$BD XXX 代表北斗导航卫星系统(COMPASS)$GN XXX代表全球导航卫星系统(GNSS-global navigation satellite system)表13:GX602默认配置联系我们:上海致物通信科技有限公司地址:科技京城B区712A室邮编:200002。
GPS NMEA数据格式
GPS(全球定位系统)接收机与手持机之间的数据交换格式GPS(全球定位系统)接收机与手持机之间的数据交换格式一般都由生产厂商缺省定制,其定义内容普通用户很难知晓,且不同品牌、不同型号的GPS接收机所配置的控制应用程序也因生产厂家的不同而不同。
所以,对于通用GPS应用软件,需要一个统一格式的数据标准,以解决与任意一台GPS的接口问题。
NMEA-0183数据标准就是解决这类问题的方案之一。
NMEA协议是为了在不同的GPS导航设备中建立统一的RTCM(海事无线电技术委员会)标准,它最初是由美国国家海洋电子协会(NMEA—The NationalMarine Electronics Association)制定的。
NMEA协议有0180、0182和0183这3种,0183可以认为是前两种的升级,也是目前使用最为广泛的一种NMEA通讯协议所定义的标准通讯接口参数:波特率:4800bit/s;数据位:8位;停止位: 1位奇偶校验:无;NMEA-0183协议语句详解1、 Global Positioning System Fix Data(GGA)GPS定位信息$GPGGA,<1>,<2>,<3>,<4>,<5>,<6>,<7>,<8>,<9>,M,<10>,M,<11>,<12>*hh<CR><LF><1> UTC时间,hhmmss(时分秒)格式<2> 纬度ddmm.mmmm(度分)格式(前面的0也将被传输)<3> 纬度半球N(北半球)或S(南半球)<4> 经度dddmm.mmmm(度分)格式(前面的0也将被传输)<5> 经度半球E(东经)或W(西经)<6> GPS状态:0=未定位,1=非差分定位,2=差分定位,6=正在估算<7> 正在使用解算位置的卫星数量(00~12)(前面的0也将被传输)<8> HDOP水平精度因子(0.5~99.9)<9> 海拔高度(-9999.9~99999.9)<10> 地球椭球面相对大地水准面的高度<11> 差分时间(从最近一次接收到差分信号开始的秒数,如果不是差分定位将为空)<12> 差分站ID号0000~1023(前面的0也将被传输,如果不是差分定位将为空)2、 GPS DOP and Active Satellites(GSA)当前卫星信息$GPGSA,<1>,<2>,<3>,<3>,<3>,<3>,<3>,<3>,<3>,<3>,<3>,<3>,<3>,<3>,<4>,<5>,<6>*hh<CR><LF><1> 模式,M=手动,A=自动<2> 定位类型,1=没有定位,2=2D定位,3=3D定位<3> PRN码(伪随机噪声码),正在用于解算位置的卫星号(01~32,前面的0也将被传输)。
nmea格式解读 -回复
nmea格式解读-回复NMEA格式解读NMEA格式是一种用于准确记录和传输全球定位系统(GPS)信息的标准化格式。
它由美国海洋电子协会(NMEA)制定,并被广泛应用于航海、航空、汽车导航等领域。
在本文中,我们将逐步回答有关NMEA格式的问题,并深入了解其原理和应用。
第一步:什么是NMEA格式?NMEA格式是一种定位数据记录和传输格式,以ASCII文本形式存在。
它以特定的消息语句(Message Sentence)组成,每个消息语句均以美元符号开始,并以换行符结束。
每个消息语句包含一些标准化标识符,用于描述特定的定位相关数据。
NMEA格式主要用于记录和传输GPS设备的位置、速度、时间和航向等信息。
第二步:NMEA格式的基本结构和语法是什么样的?每个消息语句都由逗号分隔的字段组成。
字段的数量和类型在不同的消息语句中会有所不同,但每个字段都有固定的位置和含义。
例如,GGA消息语句中,字段的顺序分别是:纬度、纬度方向、经度、经度方向、定位质量指示、使用卫星数量、水平精度因子、海拔高度、地球椭球高、差分修正数据等。
除了逗号分隔的字段之外,每个消息语句还包含一个校验值,用于检查数据的完整性。
校验值是通过对美元符号后的字符进行异或运算计算得出的。
这一校验机制确保了数据的准确性和完整性。
第三步:NMEA格式主要包含哪些常用的消息语句?NMEA格式包含众多的消息语句,但其中一些常用的消息语句包括GGA、RMC、VTG和GSA。
GGA消息语句(Global Positioning System Fix Data)提供了定位质量指示、使用卫星数量、位置精度因子等重要信息。
它常用于确定GPS接收器的位置和质量。
RMC消息语句(Recommended Minimum Navigation Information)包含了位置、速度和时间等关键信息。
它经常用于导航任务中用于计算航向和速度。
VTG消息语句(Course Over Ground and Ground Speed)提供了GPS 接收器的航向和地速等信息。
【GPS】NEMA协议
【GPS】NEMA协议【GPS】NEMA协议NMEA传输信号GM-270智能型卫星接收器,由美国瑟孚公司(SiRF)提供技术⽀持,采NMEA-0183标准输出格式。
⼀般的NMEA默认值为:传输速率(Baud Rate) 4800 bps;资料位:8 bits,停⽌位(stop bit) 及⽆极性输出(no parity).NMEA 记录说明GGA 定位后卫星定位信息GSA ⼀种偏差信息, 说明卫星定位信号的强弱状态GSV GNSS天空范围内的卫星RMC 为达定位⽬的⽽为最低度需求的GNSS信息定位后卫星定位信息(GGA)输出范例: :$GPGGA,161229.487,3723.2475,N,12158.3416,W,1,07,1.0,9.0,M, , , ,0000*18GGA 资料格式名称实例单位叙述讯息代号$GPGGA GGA 规范表头标准定位时间161229.487 时时分分秒秒.秒秒秒7纬度3723.2475 度度分分.分分分分北/南半球指⽰器N 北半球(N)或南半球(S)经度12158.3416 度度度分分.分分分分东/西半球指⽰器W 东半球(E)或西半球(W)定位代号指⽰器1 参考表2-3使⽤中的卫星数⽬07 00 to 12⽔平稀释精度1.0 0.5 ~ 99.9⽶海拔⾼度9.0 ⽶-9999.9⾄99999.9⽶单位M ⽶⼤地⽔准⾯分隔⽶单位M ⽶差分修正秒0表⾮DGPS基地台代码0000总和检查码*18讯息终点定位代号指⽰器数值叙述0 未定位或⽆效的定位1 GPS SPS格式, ⼰定位2 差分修正, SPS格式, 已定位3 GPS PPS格式, ⼰定位2.2.1.2 偏差信息(GNSS DOP) 及卫星状态(GSA)输出范例:$GPGSA,A,3,07,02,26,27,09,04,15, , , , , ,1.8,1.0,1.5*33GSA 资料格式名称实例单位叙述讯息代号$GPGSA GSA规范表头模式1 A 参阅表2-5模式2 3 参阅表2-6使⽤中的卫星数⽬07 Channel 1使⽤中的卫星数⽬02 Channel 2…… ….使⽤中的卫星数⽬Channel 12位置精度稀释值1.8 0.5 ~ 99.9⽔平精度稀释值1.0 0.5 ~ 99.9垂直精度稀释值1.5 0.5 ~ 99.9*33讯息终点1. Satellite used in solution.8数值叙述M ⼿动– 只能于⼆维定位或三维定位模式运作A ⾃动– 允许⾃动切换⼆维定位或三维定位模式表2-6 模式2叙述1 未定位2 ⼆维定位3 三维定位GNSS 所在位置天空中的卫星(GSV)输出范例:$GPGSV,2,1,07,07,79,048,42,02,51,062,43,26,36,256,42,27,27,138,42*71 $GPGSV,2,2,07,09,23,313,42,04,19,159,41,15,12,041,42*41表2-7 GSV 资料格式名称实例单位叙述讯息代号$GPGSV GSV 规范表头讯息总数2 1 ⾄3讯息号码1 1 ⾄3天空中卫星总数07卫星编号07 频道1 (01 到32)卫星仰⾓79 度频道1 (最⼤值90 度)卫星⽅位⾓048 度频道1 (000 ⾄359 度. 实际值)信号噪声⽐(C/No) 42 dBHz 00 ⾄99dB ; 0 表未接收到信号.... ....卫星编号27 频道4 (01 到32)卫星仰⾓27 度频道4 (最⼤值90 度)卫星⽅位⾓138 度频道4 (000 ⾄359 度. 实际值)信号噪声⽐(C/No) 42 dBHz 00 ⾄99 dB ; 0 表未接收到信号总和检查码*71讯息终点注意! ,,和项个别卫星会重复出现,每⾏最多有四颗卫星,其余卫星信息会于次⼀⾏出现,若未使⽤这些字段会空⽩。
NMEA协议
NMEA协议协议名称:NMEA协议协议简介:NMEA(National Marine Electronics Association)协议是一种用于航海设备和GPS接收器之间进行数据交换的标准协议。
该协议定义了一系列数据格式和通信规则,以确保不同设备之间的数据交换和解析的一致性。
NMEA协议广泛应用于航海、船舶导航、渔业和其他相关领域。
一、协议结构和数据格式NMEA协议采用文本格式进行数据交换,每条数据通常以美元符号($)开头,以回车换行符(CR/LF)结尾。
每条数据称为一条语句(Sentence),包含多个字段(Field),字段之间以逗号(,)分隔。
协议中定义了多种语句类型,每种语句类型有特定的数据格式和含义。
常见的NMEA语句类型包括:1. GGA(Global Positioning System Fix Data):包含GPS接收器的定位信息,如纬度、经度、海拔高度等。
2. RMC(Recommended Minimum Specific GNSS Data):包含推荐的最小GNSS数据,如时间、日期、位置、速度等。
3. GSV(GPS Satellites in View):包含可见GPS卫星的信息,如卫星编号、仰角、方位角等。
4. GSA(GPS DOP and Active Satellites):包含DOP(Dilution of Precision)值和当前使用的卫星信息。
5. VTG(Course Over Ground and Ground Speed):包含地面航向和地面速度信息。
二、协议通信规则1. 数据传输方式:NMEA协议使用串行通信方式,通常通过RS-232或RS-422接口传输数据。
2. 波特率:通信波特率根据设备的要求进行设置,常见的波特率为4800、9600、19200等。
3. 数据传输模式:NMEA协议采用单向传输模式,即GPS接收器将数据发送给其他设备,其他设备无法向GPS接收器发送指令。
nmea数据格式解析
nmea数据格式解析
NMEA数据格式是一种用于在全球定位系统(GPS)和其他导航设备和设备之间交换信息的标准协议。
NMEA协议定义了一组消息格式,这些消息可以传输有关GPS设备和传感器的信息,如位置、速度、时间和方位角。
NMEA语句格式包括:“$”或“!”作为起始字符,“,”作为域分隔符,“*”后跟着两位校验和数字,最后以回车和换行符号“\r\n”结尾。
每个消息中的数据字段用逗号分隔。
NMEA协议中有多种类型的消息,例如:
1. GGA:Global Positioning System Fix Data,全球定位系统定位数据。
2. RMC:Recommended Minimum Specific GPS/Transit Data,推荐最小特定GPS/传输数据。
3. VTG:Course Over Ground True,地面真方位角。
4. GSA:GPS DOP and Active Satellites,GPS精度因子和活动的卫星。
这些消息包含在ASCII文本中,并以特定的起始字符和格式进行传输。
通过解析NMEA数据格式,我们可以获取有关位置、速度、时间等信息,进而用于导航和其他应用。
NMEA消息说明
3.7数据消息NMEA数据消息如表3.6所示。
表3.6 数据消息3.7.1 GPGGAGPGGA消息包含详细的GPS定位数据,是使用频率最高的NMEA数据消息,消息格式为:$GPGGA,HHMMSS.SS,DDMM.MMMM,S,DDDMM.MMMM,S,N,Q Q,PP.P,SAAAAA.AA,M,±XXXX.XX,M,SSS,AAAA*CC<CR><LF>。
消息各组成部分如表3.7所示。
表3.7 GPGGA语句3.7.2 GPGLLGPGLL消息包含经纬度等信息,消息格式为:$GPGLL,DDMM.MMMM,S,DDDMM.MMMM,S,HHMMSS.SS,S*CC <CR><LF>。
消息各组成部分如表3.8所示。
表3.8 GPGLL语句3.7.3 GPGSAGPGSA消息包含GPS精度因子及当前参与定位计算的卫星信息。
无效卫星的数据域为空域。
消息格式为:$GPGSA,A,B,CC,DD,EE,FF,GG,HH,II,JJ,KK,MM,NN,OO,P.P,Q.Q, R.R*CC<CR><LF>消息各组成部分如表3.9所示。
表3.9 GPGSA语句3.7.4 GPGSTGPGST语句包含全球导航卫星系统伪距错误统计信息。
消息格式为:$GPGST,HHMMSS.SS,A.A,B.B,C.C,D.D,E.E,F.F,G.G*CC<CR><LF>消息各组成部分如表3.10所示。
表3.10 GPGST语句3.7.5 GPGSVGPGSV语句包含GPS卫星信息,无效数据对应空域。
消息格式为:$GPGSV,T,M,N,II,EE,AAA,SS,…II,EE,AAA,SS,*CC<CR><LF>消息各组成部分如表3.11所示。
表3.11 GPGSV语句3.7.6 GPRMCGPRMC包含推荐最小定位信息。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
NMEA dataTable of Contents•Introduction•Hardware connection•NMEA sentences•Decodes of some position sentences•Decodes of some navigation sentences•Decodes of a few other sentences•Decodes of some proprietary sentences•Sample StreamsDisclaimerThis site is based on personal research and is believed to be accurate but there is no guarantee that any of the information is correct or suitable for any purpose. I have been told by the NMEA folks that my information is old and out of date. The current version of NMEA at the time I wrote this is 3.01 which is not described here. This site is for historical information and is not intended to be used for any official purpose. For official data please contact the NMEA web site. Please see the bottom of this article for the sources of this data.IntroductionThe National Marine Electronics Association (NMEA) has developed a specification that defines the interface between various pieces of marine electronic equipment. The standard permits marine electronics to send information to computers and to other marine equipment. A full copy of this standard is available for purchase at their web site. None of the information on this site comes from this standard and I do not have a copy. Anyone attempting to design anything to this standard should obtain an official copy.GPS receiver communication is defined within this specification. Most computer programs that provide real time position information understand and expect data to be in NMEA format. This data includes the complete PVT (position, velocity, time) solution computed by the GPS receiver. The idea of NMEA is to send a line of data called a sentence that is totally self contained and independent from other sentences. There are standard sentences for each device category and there is also the ability to defineproprietary sentences for use by the individual company. All of the standard sentences have a two letter prefix that defines the device that uses that sentence type. (For gps receivers the prefix is GP.) which is followed by a three letter sequence that defines the sentence contents. In addition NMEA permits hardware manufactures to define their own proprietary sentences for whatever purpose they see fit. All proprietary sentences begin with the letter P and are followed with 3 letters that identifies the manufacturer controlling that sentence. For example a Garmin sentence would start with PGRM and Magellan would begin with PMGN.Each sentence begins with a '$' and ends with a carriage return/line feed sequence and can be no longer than 80 characters of visible text (plus the line terminators). The data is contained within this single line with data items separated by commas. The data itself is just ascii text and may extend over multiple sentences in certain specialized instances but is normally fully contained in one variable length sentence. The data may vary in the amount of precision contained in the message. For example time might be indicated to decimal parts of a second or location may be show with 3 or even 4 digits after the decimal point. Programs that read the data should only use the commas to determine the field boundaries and not depend on column positions. There is a provision for a checksum at the end of each sentence which may or may not be checked by the unit that reads the data. The checksum field consists of a '*' and two hex digits representing an 8 bit exclusive OR of all characters between, but not including, the '$' and '*'. A checksum is required on some sentences.There have been several changes to the standard but for gps use the only ones that are likely to be encountered are 1.5 and 2.0 through 2.3. These just specify some different sentence configurations which may be peculiar to the needs of a particular device thus the gps may need to be changed to match the devices being interfaced to. Some gps's provide the ability configure a custom set the sentences while other may offer a set of fixed choices. Many gps receivers simply output a fixed set of sentences that cannot be changed by the user. The current version of the standard is 3.01.I have no specific information on this version, but I am not aware of any GPS products that require conformance to this version.Hardware ConnectionThe hardware interface for GPS units is designed to meet the NMEA requirements. They are also compatible with most computer serial ports using RS232 protocols, however strictly speaking the NMEA standard is not RS232. They recommend conformance to EIA-422. The interface speed can be adjusted on some models but the NMEA standard is 4800 b/s (bit per secondrate) with 8 bits of data, no parity, and one stop bit. All units that support NMEA should support this speed. Note that, at a b/s rate of 4800, you can easily send enough data to more than fill a full second of time. For this reason some units only send updates every two seconds or may send some data every second while reserving other data to be sent less often. In addition some units may send data a couple of seconds old while other units may send data that is collected within the second it is sent. Generally time is sent in some field within each second so it is pretty easy to figure out what a particular gps is doing. Some sentences may be sent only during a particular action of the receiver such as while following a route while other receivers may always send the sentence and just null out the values. Other difference will be noted in the specific data descriptions defined later in the text.At 4800 b/s you can only send 480 characters in one second. Since an NMEA sentence can be as long as 82 characters you can be limited to less than 6 different sentences. The actual limit is determined by the specific sentences used, but this shows that it is easy to overrun the capabilities if you want rapid sentence response. NMEA is designed to run as a process in the background spitting out sentences which are then captured as needed by the using program. Some programs cannot do this and these programs will sample the data stream, then use the data for screen display, and then sample the data again. Depending on the time needed to use the data there can easily be a lag of 4 seconds in the responsiveness to changed data. This may be fine in some applications but totally unacceptable in others. For example a car traveling at 60 mph will travel 88 feet in one second. Several second delays could make the entire system seem unresponsive and could cause you to miss your turn.The NMEA standard has been around for many years (1983) and has undergone several revisions. The protocol has changed and the number and types of sentences may be different depending on the revision. Most GPS receivers understand the standard which is called: 0183 version 2. This standard dictates a transfer rate of 4800 b/s. Some receivers also understand older standards. The oldest standard was 0180 followed by 0182 which transferred data at 1200 b/s. An earlier version of 0183 called version 1.5 is also understood by some receivers. Some Garmin units and other brands can be set to 9600 for NMEA output or even higher but this is only recommended if you have determined that 4800 works ok and then you can try to set it faster. Setting it to run as fast as you can may improve the responsiveness of the program.In order to use the hardware interface you will need a cable. Generally the cable is unique to the hardware model so you will need an cable made specifically for the brand and model of the unit you own. Some of the latestcomputers no longer include a serial port but only a USB port. Most gps receivers will work with Serial to USB adapters and serial ports attached via the pcmcia (pc card) adapter. For general NMEA use with a gps receiver you will only need two wires in the cable, data out from the gps and ground.A third wire, Data in, will be needed if you expect the receiver to accept data on this cable such as to upload waypoints or send DGPS data to the receiver.GPS receivers may be used to interface with other NMEA devices such as autopilots, fishfinders, or even another gps receivers. They can also listen to Differential Beacon Receivers that can send data using the RTCM SC-104 standard. This data is consistent with the hardware requirements for NMEA input data. There are no handshake lines defined for NMEA.NMEA sentencesNMEA consists of sentences, the first word of which, called a data type, defines the interpretation of the rest of the sentence. Each Data type would have its own unique interpretation and is defined in the NMEA standard. The GGA sentence (shown below) shows an example that provides essential fix data. Other sentences may repeat some of the same information but will also supply new data. Whatever device or program that reads the data can watch for the data sentence that it is interested in and simply ignore other sentences that is doesn't care about. In the NMEA standard there are no commands to indicate that the gps should do something different. Instead each receiver just sends all of the data and expects much of it to be ignored. Some receivers have commands inside the unit that can select a subset of all the sentences or, in some cases, even the individual sentences to send. There is no way to indicate anything back to the unit as to whether the sentence is being read correctly or to request a re-send of some data you didn't get. Instead the receiving unit just checks the checksum and ignores the data if the checksum is bad figuring the data will be sent again sometime later.There are many sentences in the NMEA standard for all kinds of devices that may be used in a Marine environment. Some of the ones that have applicability to gps receivers are listed below: (all message start with GP.)•AAM - Waypoint Arrival Alarm•ALM - Almanac data•APA - Auto Pilot A sentence•APB - Auto Pilot B sentence•BOD - Bearing Origin to Destination•BWC - Bearing using Great Circle route•DTM - Datum being used.•GGA - Fix information•GLL - Lat/Lon data•GRS - GPS Range Residuals•GSA - Overall Satellite data•GST - GPS Pseudorange Noise Statistics•GSV - Detailed Satellite data••MSK - send control for a beacon receiver•MSS - Beacon receiver status information.•RMA - recommended Loran data•RMB - recommended navigation data for gps•RMC - recommended minimum data for gps•RTE - route message•TRF - Transit Fix Data•STN - Multiple Data ID•VBW - dual Ground / Water Spped•VTG - Vector track an Speed over the Ground•WCV - Waypoint closure velocity (Velocity Made Good)•WPL - Waypoint Location information•XTC - cross track error•XTE - measured cross track error•ZTG - Zulu (UTC) time and time to go (to destination)•ZDA - Date and TimeSome gps receivers with special capabilities output these special messages.•HCHDG - Compass output•PSLIB - Remote Control for a DGPS receiverIn addition some GPS receivers can mimic Loran-C receivers by outputing the LC prefix in some of their messages so that they can be used to interface to equipment that is expecting this prefix instead of the GP one.The last version 2 iteration of the NMEA standard was 2.3. It added a mode indicator to several sentences which is used to indicate the kind of fix the receiver currently has. This indication is part of the signal integrity information needed by the FAA. The value can be A=autonomous, D=differential, E=Estimated, N=not valid, S=Simulator. Sometimes there can be a null value as well. Only the A and D values will correspond to an Active and reliable Sentence. This mode character has been added tothe RMC, RMB, VTG, and GLL, sentences and optionally some others including the BWC and XTE sentences.If you are interfacing a GPS unit to another device, including a computer program, you need to ensure that the receiving unit is given all of the sentences that it needs. If it needs a sentence that your GPS does not send then the interface to that unit is likely to fail. Here is a Link for the needs of some typical programs. The sentences sent by some typical receivers include:NMEA 2.0Name Garmin Magellan Lowrance SiRF Notes:GPAPB N Y Y N Auto Pilot BGPBOD Y N N N bearing, origin to destination - earlier G-12's do not transmit thisGPGGA Y Y Y Y fix dataGPGLL Y Y Y Y Lat/Lon data - earlier G-12's do not transmit thisGPGSA Y Y Y Y overall satellite reception data, missing on some Garmin modelsGPGSV Y Y Y Y detailed satellite data, missing on some Garmin modelsGPRMB Y Y Y N minimum recommended data when following a routeGPRMC Y Y Y Y minimum recommended dataGPRTE Y U U N route data, only when there is an active route. (this is sometimes bidirectional)GPWPL Y Y U N waypoint data, only when there is an active route (this is sometimes bidirectional)NMEA 1.5 - some units do not support version 1.5. Lowrance units provide the ability to customize the NMEA output by sentences so that you can develop your own custom sentence structure.Name Garmin Magellan Notes:GPAPA N Y Automatic Pilot AGPBOD Y N bearing origin to destination - earlier G-12's donot send thisGPBWC Y Y bearing to waypoint using great circle route. GPGLL Y Y lat/lon - earlier G-12's do not send this GPRMC Y N minimum recommend dataGPRMB Y N minimum recommended data when following a route GPVTG Y Y vector track and speed over groundGPWPL Y N waypoint data (only when active goto)GPXTE Y Y cross track errorThe NMEA 2.3 output from the Garmin Legend, Vista, and perhaps some others include the BWC, VTG, and XTE sentences.The Trimble Scoutmaster outputs: APA, APB, BWC, GGA, GLL, GSA, GSV, RMB, RMC, VTG, WCV, XTE, ZTG.The Motorola Encore outputs: GGA, GLL, GSV, RMC, VTG, ZDA and a proprietary sentence PMOTG.Units based on the SiRF chipset can output: GGA, GLL, GSA, GSV, RMC, and VTG. What is actually output is based on which sentences are selected by the user or application program. See below for more details. Some implementations have enhanced the SiRF capabilities with other sentences as well by changing the firmware. For example, the u-blox receivers add ZDA and some proprietary sentences to the above list of sentences. Check your documentation for more details.Garmin receivers send the following Proprietary Sentences: •PGRME (estimated error) - not sent if set to 0183 1.5•PGRMM (map datum)•PGRMZ (altitude)•PSLIB (beacon receiver control)Note that Garmin converts lat/lon coordinates to the datum chosen by the user when sending this data. This is indicated in the proprietary sentence PGRMM. This can help programs that use maps with other datums but is not an NMEA standard. Be sure and set your datum to WGS84 on Garmin units when communicating to other NMEA devices.Magellan also converts lat/lon coordinates to the datum chosen on the receiver but do not indicate this in a message. Magellan units use proprietary sentences for waypoint maintenance and other tasks. They use a prefix of PMGN for this data.Most other units always output NMEA messages in the WGS84 datum. Be sure and check the user documentation to be sure.It is possible to just view the information presented on the NMEA interface using a simple terminal program. If the terminal program can log the session then you can build a history of the entire session into a file. More sophisticated logging programs can filter the messages to only certain sentences or only collect sentences at prescribed intervals. Some computer programs that provide real time display and logging actually save the log in an ascii format that can be viewed with a text editor or used independently from the program that generated it.NMEA inputSome units also support an NMEA input mode. While not too many programs support this mode it does provide a standardized way to update or add waypoint and route data. Note that there is no handshaking or commands in NMEA mode so you just send the data in the correct sentence and the unit will accept the data and add or overwrite the information in memory. If the data is not in the correct format it will simply be ignored. A carriage return/line feed sequence is required. If the waypoint name is the same you will overwrite existing data but no warning will be issued. The sentence construction is identical to what the unit downloads so you can, for example, capture a WPL sentence from one unit and then send that same sentence to another unit but be careful if the two units support waypoint names of different lengths since the receiving unit might truncate the name and overwrite a waypoint accidently. If you create a sentence from scratch you should create a correct checksum. Be sure you know and have set you unit to the correct datum. Many units support the input of WPL sentences and a few support RTE as well.On NMEA input the receiver stores information based on interpreting the sentence itself. While some receivers accept standard NMEA input this can only be used to update a waypoint or similar task and not to send a command to the unit. Proprietary input sentences could be used to send commands. Since the Magellan upload and download maintenance protocol is based on NMEA sentences they support a modified WPL message that adds comments, altitude, and icon data.Some marine units may accept input for alarms such as deep or shallow water based on the DPT sentence or MTW to read the water temperature. For example the Garmin Map76 supports DPT, MTW (temperature), and VHW (speed) input sentences. Other units may use NMEA input to provide initialization data via proprietary sentences, or to select which NMEA sentences to output.Decode of selected position sentencesThe most important NMEA sentences include the GGA which provides the current Fix data, the RMC which provides the minimum gps sentences information, and the GSA which provides the Satellite status data.GGA - essential fix data which provide 3D location and accuracy data.$GPGGA,123519,4807.038,N,01131.000,E,1,08,0.9,545.4,M,46.9,M,,*47Where:GGA Global Positioning System Fix Data123519 Fix taken at 12:35:19 UTC4807.038,N Latitude 48 deg 07.038' N01131.000,E Longitude 11 deg 31.000' E1 Fix quality: 0 = invalid1 = GPS fix (SPS)2 = DGPS fix3 = PPS fix4 = Real Time Kinematic5 = Float RTK6 = estimated (dead reckoning) (2.3 feature)7 = Manual input mode8 = Simulation mode08 Number of satellites being tracked0.9 Horizontal dilution of position545.4,M Altitude, Meters, above mean sea level46.9,M Height of geoid (mean sea level) above WGS84ellipsoid(empty field) time in seconds since last DGPS update(empty field) DGPS station ID number*47 the checksum data, always begins with *If the height of geoid is missing then the altitude should be suspect. Some non-standard implementations report altitude with respect to the ellipsoid rather than geoid altitude. Some units do not report negative altitudes at all. This is the only sentence that reports altitude.GSA - GPS DOP and active satellites. This sentence provides details on the nature of the fix. It includes the numbers of the satellites being used in the current solution and the DOP. DOP (dilution of precision) is an indication of the effect of satellite geometry on the accuracy of the fix. It is a unitless number where smaller is better. For 3D fixes using4 satellites a 1.0 would be considered to be a perfect number, however for overdetermined solutions it is possible to see numbers below 1.0.There are differences in the way the PRN's are presented which can effect the ability of some programs to display this data. For example, in the example shown below there are 5 satellites in the solution and the null fields are scattered indicating that the almanac would show satellites in the null positions that are not being used as part of this solution. Other receivers might output all of the satellites used at the beginning of the sentence with the null field all stacked up at the end. This difference accounts for some satellite display programs not always being able to display the satellites being tracked. Some units may show all satellites that have ephemeris data without regard to their use as part of the solution but this is non-standard.$GPGSA,A,3,04,05,,09,12,,,24,,,,,2.5,1.3,2.1*39Where:GSA Satellite statusA Auto selection of 2D or 3D fix (M = manual)3 3D fix - values include: 1 = no fix2 = 2D fix3 = 3D fix04,05... PRNs of satellites used for fix (space for 12)2.5 PDOP (dilution of precision)1.3 Horizontal dilution of precision (HDOP)2.1 Vertical dilution of precision (VDOP)*39 the checksum data, always begins with *GSV - Satellites in View shows data about the satellites that the unit might be able to find based on its viewing mask and almanac data. It also shows current ability to track this data. Note that one GSV sentence only can provide data for up to 4 satellites and thus there may need to be 3 sentences for the full information. It is reasonable for the GSV sentence to contain more satellites than GGA might indicate since GSV may include satellites that are not used as part of the solution. It is not a requirment that the GSV sentences all appear in sequence. To avoid overloading the data bandwidth some receivers may place the various sentences in totally different samples since each sentence identifies which one it is.The field called SNR (Signal to Noise Ratio) in the NMEA standard is often referred to as signal strength. SNR is an indirect but more useful value that raw signal strength. It can range from 0 to 99 and has units of dB according to the NMEA standard, but the various manufacturers send different ranges of numbers with different starting numbers so the valuesthemselves cannot necessarily be used to evaluate different units. The range of working values in a given gps will usually show a difference of about 25 to 35 between the lowest and highest values, however 0 is a special case and may be shown on satellites that are in view but not being tracked.$GPGSV,2,1,08,01,40,083,46,02,17,308,41,12,07,344,39,14,22,228,45*75Where:GSV Satellites in view2 Number of sentences for full data1 sentence 1 of 208 Number of satellites in view01 Satellite PRN number40 Elevation, degrees083 Azimuth, degrees46 SNR - higher is betterfor up to 4 satellites per sentence*75 the checksum data, always begins with *RMC - NMEA has its own version of essential gps pvt (position, velocity, time) data. It is called RMC, The Recommended Minimum, which will look similar to:$GPRMC,123519,A,4807.038,N,01131.000,E,022.4,084.4,230394,003.1,W*6AWhere:RMC Recommended Minimum sentence C123519 Fix taken at 12:35:19 UTCA Status A=active or V=Void.4807.038,N Latitude 48 deg 07.038' N01131.000,E Longitude 11 deg 31.000' E022.4 Speed over the ground in knots084.4 Track angle in degrees True230394 Date - 23rd of March 1994003.1,W Magnetic Variation*6A The checksum data, always begins with *Note that, as of the 2.3 release of NMEA, there is a new field in the RMC sentence at the end just prior to the checksum. For more information on this field see here.GLL- Geographic Latitude and Longitude is a holdover from Loran data and some old units may not send the time and data active information if they are emulating Loran data. If a gps is emulating Loran data they may use the LC Loran prefix instead of GP.$GPGLL,4916.45,N,12311.12,W,225444,A,*1DWhere:GLL Geographic position, Latitude and Longitude4916.46,N Latitude 49 deg. 16.45 min. North12311.12,W Longitude 123 deg. 11.12 min. West225444 Fix taken at 22:54:44 UTCA Data Active or V (void)*iD checksum dataNote that, as of the 2.3 release of NMEA, there is a new field in the GLL sentence at the end just prior to the checksum. For more information on this field see here.VTG - Velocity made good. The gps receiver may use the LC prefix instead of GP if it is emulating Loran output.$GPVTG,054.7,T,034.4,M,005.5,N,010.2,K*48where:VTG Track made good and ground speed054.7,T True track made good (degrees)034.4,M Magnetic track made good005.5,N Ground speed, knots010.2,K Ground speed, Kilometers per hour*48 ChecksumNote that, as of the 2.3 release of NMEA, there is a new field in the VTG sentence at the end just prior to the checksum. For more information on this field see here.Receivers that don't have a magnetic deviation (variation) table built in will null out the Magnetic track made good.Decode of some Navigation SentencesWPL - Waypoint Location data provides essential waypoint data. It is output when navigating to indicate data about the destination and is sometimes supported on input to redefine a waypoint location. Note thatwaypoint data as defined in the standard does not define altitude, comments, or icon data. When a route is active, this sentence is sent once for each waypoint in the route, in sequence. When all waypoints have been reported, the RTE sentence is sent in the next data set. In any group of sentences, only one WPL sentence, or an RTE sentence, will be sent.$GPWPL,4807.038,N,01131.000,E,WPTNME*5CWith an interpretation of:WPL Waypoint Location4807.038,N Latitude01131.000,E LongitudeWPTNME Waypoint Name*5C The checksum data, always begins with *AAM - Waypoint Arrival Alarm is generated by some units to indicate the Status of arrival (entering the arrival circle, or passing the perpendicular of the course line) at the destination waypoint.$GPAAM,A,A,0.10,N,WPTNME*32Where:AAM Arrival AlarmA Arrival circle enteredA Perpendicular passed0.10 Circle radiusN Nautical milesWPTNME Waypoint name*32 Checksum dataAPB - Autopilot format B is sent by some gps receivers to allow them to be used to control an autopilot unit. This sentence is commonly used by autopilots and contains navigation receiver warning flag status, cross-track-error, waypoint arrival status, initial bearing from origin waypoint to the destination, continuous bearing from present position to destination and recommended heading-to-steer to destination waypoint for the active navigation leg of the journey.Note: some autopilots, Robertson in particular, misinterpret "bearing from origin to destination" as "bearing from present position to destination". This is likely due to the difference between the APB sentence and the APA sentence. for the APA sentence this would be the correct thing to do for the data in the same field. APA only differs from APB in this one field and APA leaves off the last two fields where thisdistinction is clearly spelled out. This will result in poor performance if the boat is sufficiently off-course that the two bearings are different.$GPAPB,A,A,0.10,R,N,V,V,011,M,DEST,011,M,011,M*3Cwhere:APB Autopilot format BA Loran-C blink/SNR warning, general warningA Loran-C cycle warning0.10 cross-track error distanceR steer Right to correct (or L for Left)N cross-track error units - nautical miles (K for kilometers) V arrival alarm - circleV arrival alarm - perpendicular011,M magnetic bearing, origin to destinationDEST destination waypoint ID011,M magnetic bearing, present position to destination011,M magnetic heading to steer (bearings could True as 033,T)BOD- Bearing - Origin to Destination shows the bearing angle of the line, calculated at the origin waypoint, extending to the destination waypoint from the origin waypoint for the active navigation leg of the journey.$GPBOD,045.,T,023.,M,DEST,START*01where:BOD Bearing - origin to destination waypoint045.,T bearing 045 True from "START" to "DEST"023.,M bearing 023 Magnetic from "START" to "DEST"DEST destination waypoint IDSTART origin waypoint ID*01 checksumBWC- Bearing & Distance to Waypoint using a Great Circle route. Time (UTC) and distance & bearing to, and location of, a specified waypoint from present position along the great circle path.$GPBWC,225444,4917.24,N,12309.57,W,051.9,T,031.6,M,001.3,N,004*29where:BWC Bearing and distance to waypoint - great circle 225444 UTC time of fix 22:54:444917.24,N Latitude of waypoint12309.57,W Longitude of waypoint。