当前位置:文档之家› ISO9141-2协议解析

ISO9141-2协议解析

ISO9141-2协议解析

ISO-9141-2协议是最常用的通信协议之一,也是属于OBD II标准协议的一种。下面从物理层特性、系统进入、帧结构、命令交互、交互时间参数、常用命令字等几个方面来介绍这种协议。

?物理层特性:空闲电平通常为12V;数据位格式为1+8+1,没有校验位;使用的波特率通常为10416BPS和9600BPS两种。

?系统进入初始化:ISO协议采用地址码进入方式,先使用5BPS发送地址码,ECU响应55H,KW1,KW2,设备对KW2取反发回给ECU,ECU对地址码取反发回给设备,完成系统初始化交互。其中55H这个字节用来规定后面的通信波特率。参见下图:Tool————> <— <—<——> <—ECU

T1 |<->| T2 |<->|T3|<->|T4|<->| T5 |<->| T6 |<->| T7

图2-2-1

其中:T1 ≥ 300ms

60 ms ≤ T2≤ 300 ms

5 ms ≤ T3 ≤20 ms

0 ms ≤ T4 ≤ 20 ms

25 ms ≤ T5 ≤ 50 ms

25 ms ≤ T6 ≤ 50 ms

55 ms ≤ T7 ≤ 5000 ms

?帧结构:帧头(3个字节)+数据(最大为7个字节)+校验(通常为校验和)。数据帧有两种:命令帧和响应帧。命令帧由Tools发出,响应帧是ECU对命令帧的响应。帧头结构如下图:

帧头字节1 帧头字节2 帧头字节3

Priority/Type 目标地址源地址

Request(Tools->ECU) 68H 6AH F1H

Response(ECU->Tools) 48H 6BH 28H

图2-2-2

数据区包含传送的数据。对于命令帧,DATA区是命令字节及命令参数;对于响应帧,DATA 区是命令响应及响应的数据。

校验是校验字节,为前面字节的累加和,包括帧头和数据区。

?命令交互:命令交互通常情况下为1对1,但也存在1对多或者多对1的情况。下面是一组命令交互举例:

Tools: 68H 6AH F1H BEH 81H

ECU: 48H 6BH 28H FEH 31H 32H 33H 40H 42H 43H 34H

在命令中,目标地址是固定的;ECU响应设备的命令字在设备命令字的基础上+0x40。

?交互时间参数:包括4个时间参数,如下:

设备发送命令字节间的时间间隔P1,通常为5ms-20ms,取6ms;

ECU返回命令字节间的时间间隔P2,通常为0ms

设备发送完一帧命令后等待ECU响应的时间P3,为25ms-50ms,一般取30ms;

设备接收到ECU响应后到发送下一帧命令的时间P4,通常为55ms-5000ms,一般取60ms。

?常用命令字:

系统退出:20H

读故障码:03H

清除故障码:14H

读版本信息:BEH

读数据流:B1H

NMEA协议详解

NMEA协议详解 2017/9/11 NMEA协议是为了在不同的GPS(全球定位系统)导航设备中建立统一的BTCM(海事无线电技术 委员会)标准,由美国国家海洋电子协会(NMEA-The National Marine Electronics Associations)制定的一套通讯协议。GPS接收机根据NMEA-0183协议的标准规范,将位置、速度等信息通过串 口传送到PC机、PDA等设备。 NMEA-0183协议是GPS接收机应当遵守的标准协议,也是目前GPS接收机上使用最广泛的协议, 大多数常见的GPS接收机、GPS数据处理软件、导航软件都遵守或者至少兼容这个协议。 不过,也有少数厂商的设备使用自行约定的协议比如GARMIN的GPS设备(部分GARMIN设备也 可以输出兼容NMEA-0183协议的数据)。软件方面,我们熟知的Google Earth目前也不支持 NMEA-0183协议,但Google Earth已经声明会尽快实现对NMEA-0183协议的兼容。呵呵,除非 你确实强壮到可以和工业标准分庭抗礼,否则你就得服从工业标准。 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,,,,0000*1F 字段0:$GPGGA,语句ID,表明该语句为Global Positioning System Fix Data(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) 字段9:海拔高度(-9999.9 - 99999.9) 字段10:地球椭球面相对大地水准面的高度 字段11:差分时间(从最近一次接收到差分信号开始的秒数,如果不是差分定位将为空)

GPS数据协议NMEA0183

GPS 数据协议 NMEA-0183
NMEA 0183 是美国国家海洋电子协会(National Marine Electronics Association )为海用电子设备制定的标准格式。目前业已成了 GPS 导航设备统一的 RTCM(Radio Technical Commission for Maritime services)标准协议。
序号 1 2 3 4 5 6 7
命令 $GPGGA $GPGSA $GPGSV $GPRMC $GPVTG $GPGLL $GPZDA
说明 全球定位数据 卫星 PRN 数据 卫星状态信息 运输定位数据 地面速度信息 大地坐标信息 UTC 时间和日期
最大帧长 72 65 210 70 34
注:发送次序$PZDA、$GPGGA、$GPGLL、$GPVTG、$GPGSA、$GPGSV*3、 $GPRMC 协议帧总说明: 该协议采用 ASCII 码, 其串行通信默认参数为: 波特率=4800bps, 数据位=8bit, 开始位=1bit,停止位=1bit,无奇偶校验。 帧格式形如:$aaccc,ddd,ddd,…,ddd*hh 1、“$”——帧命令起始位 2、aaccc——地址域,前两位为识别符,后三位为语句名 3、ddd…ddd——数据 4、“*”——校验和前缀 5、hh——校验和(check sum),$与*之间所有字符 ASCII 码的校验和(各字 节做异或运算,得到校验和后,再转换 16 进制格式的 ASCII 字符。) 6、——CR(Carriage Return) + LF(Line Feed)帧结束,回车和 换行 GPGGA GPS 固定数据输出语句, 这是一帧 GPS 定位的主要数据, 也是使用最广的数据。
$GPGGA,<1>,<2>,<3>,<4>,<5>,<6>,<7>,<8>,<9>,<10>,<11>,<12>,<13>,<14>*<1 5> <1> UTC 时间,格式为 hhmmss.sss。 <2> 纬度,格式为 ddmm.mmmm(前导位数不足则补 0)。 <3> 纬度半球,N 或 S(北纬或南纬)。 <4> 经度,格式为 dddmm.mmmm(前导位数不足则补 0)。

GNSS输出NEMA协议解析

GNSS 导航芯片输出 NEMA 协议解析 1. NEMA 协议的由来 NMEA 协议是为了在不同的 GPS (全球定位系统)导航设备中建立统一的 BTCM (海事无线电技术委员会)标准,由美国国家海洋电子协会( NMEA-The National Marine Electronics Associa-tion )制定的一套通讯协议。GPS接收机根据NMEA-0183 协议的标准规范,将位置、速度等信息通过串口传送到 PC 机、PDA 等设备。 NMEA-0183 协议是 GPS 接收机应当遵守的标准协议,也是目前 GPS 接收机上使用最广泛的协议,大多数常见的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,,,,0000*1F 字段 0: $GPGGA ,语句 ID,表明该语句为 Global Positioning System Fix Data (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 ) 字段 9: 海拔高度( -9999.9 - 99999.9 ) 字段 10: 地球椭球面相对大地水准面的高度 字段 11 : 差分时间(从最近一次接收到差分信号开始的秒数,如果不是差分定位将为空) 字段 12: 差分站 ID 号 0000 - 1023 (前导位数不足则补 0,如果不是差分定位将为空) 字段 13: 校验值

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"帧进行数据的提取处理。如果情况特殊,需要从其他帧获取数据,处理方法与之也是完全类似的。由于帧内各数据段由逗号分割,因此在处理缓存数据时一般是通过搜寻ASCII码"$"来判断是否是帧头,在对帧头的类别进行识别后再通过对所经历逗号个数的计数来判断出当前正在处理的是哪一种定位导航参数,并作出相应的处理。 附:NMEA0183常用协议格式 说明:NMEA0183格式以“$”开始,主要语句有GPGGA,GPVTG,GPRMC等

NMEA0183协议说明(中文)

NMEA-0183协议说明 V2.20 2004年1月 注:因本人水平有限,难免出现错,敬请修改。

1、NMEA输出报文 A. GGA –全球定位系统固定数据 $GPGGA,161229.487,3723.2475,N,12158.3416,W,1,07,1.0,9.0,M,,,,0000*18

B. GLL –地理信息——纬度/经度 $GPGLL, 3723.2475,N,12158.3416,W,161229.487,A*2C C. GSA –GNSS DOP(定位点)活动卫星 $GPGSA, A,3,07,02,26,27,09,04,15,,,,,,1.8,1.0,1.5*33

和表1.7应互换) D. GSV –GNSS DOP(定位点)活动卫星 $GPGSV,2,2,07,07,79,048,42,02,51,062,43,26,36,256,42,27,27,138,42*71

E. RMC –推荐的最小具体定位数据 $GPRMC,161229.487,A,3723.2475,N,12158.3416,W,0.13,309.62,120598,,*10

$GPVTG,309.62,T,,M,0.13,N,0,2,K*6E NMEA 输入报文提供了允许通过NMEA协议控制GPS的方法。 传输格式: 1.起始符包含3个字节,从MID100开始(Message identifier consisting of three numeric characters. Input messages begin at MID 100.)。?????? 2.具体数据,特定的数据序列。 3.NMEA定义的校验是2个HEX的字符,适用于所有输入报文。

NMEA通讯协议详解

NMEA通讯协议详解 说起NMEA协议,只要接触过GPS设备的人,或者说是要用到GPS设备研发的人都知道,这是一个很常用的GPS通讯协议,而且也有很多人遇到关于NEMA协议的一些问题,我忽然有一个想法,就是按照自己对这个协议的一些理解,写一点这方面的东西,看是不是能帮刚刚入门的人解答一些疑问,由于笔者水平有限,这个东西也只能算是一个简单介绍,就算是知识普及吧,希望能引高手出来大家一起讨论。好了,言归正传,我们开始吧! GPS(全球定位系统)接收机与手持机之间的数据交换格式一般都由生产厂商缺省定制,其定义内容普通用户很难知晓,且不同品牌、不同型号的GPS接收机所配置的控制应用程序也因生产厂家的不同而不同。所以,对于通用GPS应用软件,需要一个统一格式的数据标准,以解决与任意一台GPS的接口问题。NMEA-0183数据标准就是解决这类问题的方案之一。NMEA协议是为了在不同的GPS导航设备中建立统一的RTCM(海事无线电技术委员会)标准,它最初是由美国国家海洋电子协会(NMEA—The NationalMarine Electronics Association)制定的。NMEA协议有0180、0182和0183这3种,0183可以认为是前两种的升级,也是目前使用最为广泛的一种 NMEA通讯协议硬件接口 符合NMEAO183标准的GPS接收机的硬件接口能够兼容计算机的RS-232C协议串口,然而,严格来说NMEA标准不是RS-232C,规范推荐依照EIA422(也称为RS-422)。是一个与RS-232C不同的系统。标准RS-232C采用负逻辑,即逻辑“1”表示-5V~-15v,逻辑“0”表示+5V~+15V,利用传输信号线和信号地之间的电压差进行传输。而EIA-422是利用导线之间的信号电压差来传输信号的,其每个通道要用两条信号线,一条是逻辑“1”,~条是逻辑“0”,通过传输线驱动器和传输线接收器实现逻辑电平和电位差之间的转换,一般允许驱动器输出为±2V~±6V 。 虽然存在区别,但在实际使用中,如果只是接收GPS的输出.则只需两根信号线GPS数据输出线和信号地线,可以直接将EIA-422输出通道两条信号线的中一条同计算机的Rs232C 输入线相连(这个方法我并没有试验过,是从别的地方听来的,有兴趣有条件的兄弟可以动手实验一下,不过后果自负哦!呵呵)。 NMEA通讯协议所定义的标准通讯接口参数为: 波特率:4800bit/s; 数据位:8位; 停止位:1位; 奇偶校验:无; NMEA-OI83语句解析 NMEA通讯协议所规定的通讯语句都已是以ASCII码为基础的,NMEA-0183协议语句的数据格式如下:“$”为语句起始标志;“,”为域分隔符;“ *”为校验和识别符,其后面的两位数为校验和,代表了“$”和“*”之间所有字符的按位异或值(不包括这两个字符);“/”为终止符,所有的语句必须以来结束,也就是ASCII 字符的“回车”(十六进制的0D)和“换行”(十六进制的0A)。 典型的NMEA0183语句如下面的GPGGA语句。

NMEA0183 协议

GNSS NMEA 0813标准数据格式的解释和模拟 廖永生梁绕 (广西第一测绘院广西南宁530023) 【摘要】对NMEA 0183格式的定位数据进行解释和数据模拟,为开发GNSS应用服务系统作了基础性研究,可作为未来GNSS各应用系统开发参考。 【关键词】NMEA 0183 GNSS数据解释模拟 1 前言 GNSS导航定位技术是目前应用得最广泛的空间定位技术之一,已被广泛应用于空间信息数据采集和服务等各个方面。随着各地区域性CORS(Continously Operation Reference System)建成,差分GPS定位服务得到了不断深化。随着GLONASS的完善和Galileo卫星导航定位系统的建成,GNSS导航定位技术将更加普及,将会对各行各业都产生重大影响。 数据格式问题一直是GNSS相关服务中的难题,特别是差分GNSS数据和静态GNSS数据格式之间的差异使普通GPS设备无法直接获得专业差分服务。数据格式标准的统一,是实现GNSS相关服务的基础。 目前最通用的GNSS格式是NMEA 0183格式,NMEA 0183是最终定位格式,即将二进制定位格式转为统一标准定位格式,与卫星类型无关。掌握NMEA 0183格式,对于推广GNSS应用服务和研究GNSS相关技术具有重要意义。 本文将对NMEA 0183格式进行概括说明,同时采用程序模拟NMEA 0183格式,作为NMEA 0183标准格式的技术探索。 2 NMEA 0183协议概述 NMEA是“National Marine Electronics Association”(国际海洋电子协会)的缩写,同时也是数据传输标准工业协会,该协会定制的GNSS数据格式是NMEA 0183数据格式,它是一套定义接收机输出的标准信息,有几种不同

GPS NMEA协议数据全分析

NMEA是"National Marine Electronics Association"(国际海洋电子协会)缩写,同时也是数据传输标准工业协会,在这里,实际上应为NMEA 0183。它是一套定义接收机输出的标准信息,有几种不同的格式,每种都是独立相关的ASCII格式,逗点隔开数据流,数据流长度从30-100字符不等,通常以每秒间隔选择输出,最常用的格式为"GGA",它包含了定位时间,纬度,经度,高度,定位所用的卫星数,DOP值,差分状态和校正时段等,其他的有速度,跟踪,日期等。NMEA实际上已成为所有的GPS接收机和最通用的数据输出格式,同时它也被用于与GPS接收机接口的大多数的软件包里。 NMEA数据如下:$GPGGA,121252.000,3937.3032,N,11611.6046,E,1,05,2.0,45.9,M,-5.7,M,,0000*77 $GPRMC,121252.000,A,3958.3032,N,11629.6046,E,15.15,359.95,070306,,,A*54 $GPVTG,359.95,T,,M,15.15,N,28.0,K,A*04 $GPGGA,121253.000,3937.3090,N,11611.6057,E,1,06,1.2,44.6,M,-5.7,M,,0000*72 $GPGSA,A,3,14,15,05,22,18,26,,,,,,,2.1,1.2,1.7*3D $GPGSV,3,1,10,18,84,067,23,09,67,067,27,22,49,312,28,15,47,231,30*70 $GPGSV,3,2,10,21,32,199,23,14,25,272,24,05,21,140,32,26,14,070,20*7E $GPGSV,3,3,10,29,07,074,,30,07,163,28*7D $GPGGA,032648.00,2307.595860,N,11321.993373,E,1,09,0.9,30.7,M,-5.2,M,,*4C $PSAT,HPR,032714.00,74.19,-23.16,,N*1F 说明:NMEA0183格式以“$”开始,常用语句有GPGGA,GPVTG,GPZDA等 1、GPS DOP and Active Satellites(GSA)当前卫星信息 $GPGSA,<1>,<2>,<3>,<3>,,,,,<3>,<3>,<3>,<4>,<5>,<6>,<7> <1>模式:M = 手动,A = 自动。<2>定位型式1 = 未定位,2 = 二维定位,3 = 三维定位。<3>PRN 数字:01 至32 表天空使用中的卫星编号,最多可接收12颗卫星信息。<4> PDOP位置精度因子(0.5~99.9)<5> HDOP水平精度因子(0.5~99.9)<6> VDOP垂直精度因子(0.5~99.9)<7> Checksum.(检查位). 2、GPS Satellites in View(GSV)可见卫星信息$GPGSV, <1>,<2>,<3>,<4>,<5>,<6>,<7>,?<4>,<5>,<6>,<7>,<8> <1> GSV语句的总数<2> 本句GSV的编号<3> 可见卫星的总数,00 至12。<4> 卫星编号,01 至32。<5>卫星仰角,00 至90 度。<6>卫星方位角,000 至359 度。实际值。<7>讯号噪声比(C/No),00 至99 dB;无表未接收到讯号。<8>Checksum.(检查位). 第<4>,<5>,<6>,<7>项个别卫星会重复出现,每行最多有四颗卫星。其余卫星信息会于次一行出现,若未使用,这些字段会空白。 3、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(度分)

NMEA0183协议的介绍和解析

GPS数据遵循NMEA-0183协议,该数据标准是由NMEA(National Marine Electronics Association,美国国家海事电子协会)于1983年制定的。统一标准格式NMEA-0183 输出采用ASCII 码,其串行通信的参数为:波特率=4800bps,数据位=8bit,开始位=1bit,停止位=1bit,无奇偶校验。 数据传输以“语句”的方式进行,每个语句均以“$”开头,然后是两个字母的“识别符”和三个字母的“语句名”,接着就是以逗号分割的数据体,语句末尾为校验和,整条语句以回车换行符结束。 NMEA-0183的数据信息有十几种,这些信息的作用分别是:$GPGGA:输出GPS的定位信息;$GPGLL:输出大地坐标信息;$GPZDA:输出UTC时间信息;$GPGSV:输出可见的卫星信息;$GPGST:输出定位标准差信息;$GPGSA:输出卫星DOP值信息;$GPALM:输出卫星星历信息;$GPRMC:输出GPS推荐的最短数据信息等。 分别介绍如下: 1. GPRMC语句(Recommended Minimum Specific GPS/TRANSIT Data-RMC,推荐定位信息1次/1秒) 对于一般的GPS动态定位应用,GPRMC语句完全满足要求。该语句中包括经纬度、速度、时间和磁偏角等字段,这些数据为导航定位应用提供了充分的信息。下表详细说明GPRMC语句中的各个字段: $GPRMC,<1>,<2>,<3>,<4>,<5>,<6>,<7>,<8>,<9>,<10>,,<12> 字段 $GPRMC语句意义——取值范围 <1> UTC时间:hhmmss.ss——000000.00~235959.99 <2> 状态,有效性——A表示有效;V表示无效 <3> 纬度格式:ddmm.mmmm——0000.00000~8959.9999 <4> 南北半球——N北纬;S南纬 <5> 经度格式:dddmm.mmmm——00000.0000~17959.9999 <6> 东西半球——E表示东经;W表示西经 <7> 地面速度——000.00~999.999 <8> 速度方向——000.00~359.99 <9> 日期格式,月日年——010100~123199 <10> 磁偏角,单位:度——00.00~99.99 磁偏角方向——E表示东;W表示西 <12> 模式指示及校验和—— A=自主定位,D=差分,E=估算,N=数据无效 例如: $GPRMC,074529.82,A,2429.6717,N,11804.6973,E,12.623,32.122,010806,,W ,A*08 2. GPGGA语句(Global Positioning System Fix Data-GGA,GPS定位信息, 输出1次/1秒) GPS定位主要数据,该语句中包括经纬度、质量因子、HDOP、高程、基准站号等字段。下表详细说明GPGGA语句中的各个字段: $GPGGA,<1>,<2>,<3>,<4>,<5>,<6>,<7>,<8>,<9>,<10>,,<12>,,<14> 字段 $GPGGA语句意义——取值范围 <1> UTC时间:hhmmss.ss——000000.00~235959.99

GPS NMEA-0183协议常用报文数据格式

GPS NMEA-0183协议常用报文数据格式NMEA-0183协议定义的语句非常多,常用如下: GPGGA(定位信息) $GPGGA,HHMMSS.SS,DDMM.MMMM,S,DDDMM.MMMM,S,N,QQ,PP.P,SAAA AA.AA,M,±XXXX.XX,M,SSS,AAAA*CC 例:$GPGGA,092204.999,4250.5589,S,14718.5084,E,1,04,24.4, M,19.7,M,,,0000*1F 字段0:$GPGGA,语句ID,表明该语句为Global Positioning S ystem Fix Data(GGA)GPS定位信息 字段1:UTC时间,hhmmss.sss,时分秒格式 字段2:纬度ddmm.mmmm,度分格式(前导位数不足则补0) 字段3:纬度N(北纬)或S(南纬) 字段4:经度dddmm.mmmm,度分格式(前导位数不足则补0)字段5:经度E(东经)或W(西经) 字段6:GPS状态,0=不可用(FIX NOT valid),1=单点定位(GP S FIX),2=差分定位(DGPS),3=无效PPS,4=实时差分定位(RTK F IX),5=RTK FLOAT,6=正在估算 字段7:正在使用的卫星数量(00-12)(前导位数不足则补0) 字段8:HDOP水平精度因子(0.5-99.9)

字段9:海拔高度(-9999.9-99999.9) 字段10:单位:M(米) 字段11:地球椭球面相对大地水准面的高度WGS84水准面划分字段12:WGS84水准面划分单位:M(米) 字段13:差分时间(从接收到差分信号开始的秒数,如果不是差分定位将为空) 字段14:差分站ID号0000-1023(前导位数不足则补0,如果不是差分定位将为空) 字段15:校验值 GPGSA(当前卫星信息) $GPGSA,A,B,CC,DD,EE,FF,GG,HH,II,JJ,KK,MM,NN,OO,P.P,Q.Q,R. R*CC 例:$GPGSA,A,3,01,20,19,13,,,,,,,,,40.4,24.4,32.2*0A 字段0:$GPGSA,语句ID,表明该语句为GPS DOP and Activ e Satellites(GSA)当前卫星信息 字段1:定位模式(选择2D/3D),A=自动选择,M=手动选择 字段2:定位类型,1=未定位,2=2D定位,3=3D定位 字段3:PRN码(伪随机噪声码),第1信道正在使用的卫星PRN 码编号(00)(前导位数不足则补0) 字段4:PRN码(伪随机噪声码),第2信道正在使用的卫星PRN 码编号(00)(前导位数不足则补0)

GNSS输出NEMA协议解析

GNSS导航芯片输出NEMA协议解析 1.NEMA协议的由来 NMEA协议是为了在不同的GPS(全球定位系统)导航设备中建立统一的BTCM(海事无线电技术委员会)标准,由美国国家海洋电子协会(NMEA-The National Marine Electronics Associa-tion)制定的一套通讯协议。GPS接收机根据NMEA-0183协议的标准规范,将位置、速度等信息通过串口传送到PC机、PDA等设备。 NMEA-0183协议是GPS接收机应当遵守的标准协议,也是目前GPS接收机上使用最广泛的协议,大多数常见的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,,,,0000*1F 字段0:$GPGGA,语句ID,表明该语句为Global Positioning System Fix Data(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) 字段9:海拔高度(-9999.9 - 99999.9) 字段10:地球椭球面相对大地水准面的高度 字段11:差分时间(从最近一次接收到差分信号开始的秒数,如果不是差分定位将为空)字段12:差分站ID号0000 - 1023(前导位数不足则补0,如果不是差分定位将为空) 字段13:校验值

GPS通讯协议(NMEA0183)解析

GPS通讯协议(NMEA0183)解析 说起NMEA协议,只要接触过GPS设备的人,或者说是要用到GPS设备研发的人都知道,这是一个很常用的GPS通讯协议,而且也有很多人遇到关于NEMA协议的一些问题,我忽然有一个想法,就是按照自己对这个协议的一些理解,写一点这方面的东西,看是不是能帮刚刚入门的人解答一些疑问,由于笔者水平有限,这个东西也只能算是一个简单介绍,就算是知识普及吧,希望能引高手出来大家一起讨论。好了,言归正传,我们开始吧! GPS(全球定位系统)接收机与手持机之间的数据交换格式一般都由生产厂商缺省定制,其定义内容普通用户很难知晓,且不同品牌、不同型号的GPS接收机所配置的控制应用程序也因生产厂家的不同而不同。所以,对于通用GPS应用软件,需要一个统一格式的数据标准,以解决与任意一台GPS的接口问题。NMEA-0183数据标准就是解决这类问题的方案之一。NMEA协议是为了在不同的GPS导航设备中建立统一的RTCM(海事无线电技术委员会)标准,它最初是由美国国家海洋电子协会(NMEA—The NationalMarine Electronics Association)制定的。NMEA协议有0180、0182和0183这3种,0183可以认为是前两种的升级,也是目前使用最为广泛的一种 NMEA通讯协议硬件接口 符合NMEAO183标准的GPS接收机的硬件接口能够兼容计算机的RS-232C协议串口,然而,严格来说NMEA标准不是RS-232C,规范推荐依照EIA422(也称为RS-422)。是一个与RS-232C不同的系统。标准RS-232C采用负逻辑,即逻辑“1”表示-5V~-15v,逻辑“0”表示+5V~+15V,利用传输信号线和信号地之间的电压差进行传输。而EIA-422是利用导线之间的信号电压差来传输信号的,其每个通道要用两条信号线,一条是逻辑“1”,~条是逻辑“0”,通过传输线驱动器和传输线接收器实现逻辑电平和电位差之间的转换,一般允许驱动器输出为±2V~±6V 。 虽然存在区别,但在实际使用中,如果只是接收GPS的输出.则只需两根信号线GPS数据输出线和信号地线,可以直接将EIA-422输出通道两条信号线的中一条同计算机的Rs232C 输入线相连(这个方法我并没有试验过,是从别的地方听来的,有兴趣有条件的兄弟可以动手实验一下,不过后果自负哦!呵呵)。 NMEA通讯协议所定义的标准通讯接口参数为: 波特率:4800bit/s; 数据位:8位; 停止位:1位; 奇偶校验:无; NMEA-OI83语句解析 NMEA通讯协议所规定的通讯语句都已是以ASCII码为基础的,NMEA-0183协议语句的数据格式如下:“$”为语句起始标志;“,”为域分隔符;“ *”为校验和识别符,其后面的两位数为校验和,代表了“$”和“*”之间所有字符的按位异或值(不包括这两个字符);“/”为终止符,所有的语句必须以来结束,也就是ASCII 字符的“回车”(十六进制的0D)和“换行”(十六进制的0A)。 典型的NMEA0183语句如下面的GPGGA语句。

NMEA协议

NMEA协议是为了在不同的GPS(全球定位系统)导航设备中建立统一的BTCM(海事无线电技术委员会)标准,由美国国家海洋电子协会(NMEA-The National Marine Electronics Associa-tion)制定的一套通讯协议。GPS接收机根据NMEA-0183协议的标准规范,将位置、速度等信息通过串口传送到PC机、PDA 等设备。 NMEA-0183协议是GPS接收机应当遵守的标准协议,也是目前GPS接收机上使用最广泛的协议,大多数常见的GPS接收机、GPS数据处理软件、导航软件都遵守或者至少兼容这个协议。 不过,也有少数厂商的设备使用自行约定的协议比如GARMIN的GPS设备(部分GARMIN设备也可以输出兼容NMEA-0183协议的数据)。软件方面,我们熟知的Google Earth目前也不支持NMEA-0183协议,但Google Earth已经声明会尽快实现对NMEA-0183协议的兼容。呵呵,除非你确实强壮到可以和工业标准分庭抗礼,否则你就得服从工业标准。 NMEA-0183协议定义的语句非常多,但是常用的或者说兼容性最广的语句只有$GPGGA、$GPGSA、$GPGSV、$GPRMC、$GPVTG、$GPGLL等。下面给出这些常用NMEA-0183语句的字段定义解释。 $GPRMC 例: $GPRMC,024813.640,A,3158.4608,N,11848.3737,E,10.05,324.27,150706,,,A* 50 $GPRMC,133402.00,A,4717.14124,N,00833.86176,E,0.019,247.29,190203,,,A *63 字段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

NEMA0183 协议分析

NMEA0813协议解析1 信息源标识(Talker Identifiers)

2 语句标识符与格式(Sentence Identifiers and Formats) 在此,只列出语句标识符及中文解释,具体格式内容详见各设备相关语句。

3 属性语句(Some Proprietary Sentences)

4 NMEA0813 GPS相关 4.1 信息源 4.2 GPS相关语句 NMEA 0183 输出语句包括GGA、GSA、GSV、RMC 、VTG、GLL。可通过GPS串口调试软件发送相应的命令语句给GPS OEM 板,此后GPS OEM板会跟据设置参数决定每隔若干毫秒发送哪种或哪几种NMEA 语句。 4.2.1 GGA格式解析 例:$GPGGA,062320,3537.8333,N,13944.6667,E,0,00,99.9,0100,M,,M,000,0000*7D 11 1 2 3 4 5 6 7 8 9 10| 12 13 14 15 | | | | | | | | | | | | | | | $--GGA,hhmmss.ss,llll.ll,a,yyyyy.yy,a,x,xx,x.x,x.x,M,x.x,M,x.x,xxxx*hh 1) UTC时间 2) 纬度 3) N=北纬S=南纬 4) 经度 5) E=东经W=西经 6) GPS性能指示0=未定位1=误差分定位信息2=带差分定位信息 7) 使用卫星号00-12 8) 精度百分比 9) 大地水准面高度 10) 天线高度单位米

12) 高度单位米 13) 带差分GPS定位数据时间,未使用DGPS时此字段为空 14) 差分站ID号0000-1023 15) 校验位 4.2.2 GSA格式解析 例:$GPGSA,A,1,,,,,,,,,,,,,99.9,99.9,99.9*09 1 2 3 14 15 16 17 18 | | | | | | | | $--GSA,a,a,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x.x,x.x,x.x*hh 1) 选择模式M=手动A=自动 2) 当前状态1=无定位信息2=2D 3=3D 3) 使用卫星号1 4) 使用卫星号2 ... 14) 使用卫星号12 15) 位置精度米 16) 水平精度米 17) 垂直精度米 18) 校验位 4.2.3 GSV格式解析 例:$GPGSV,1,1,00,,,,,,,,,,,,,,,,*79 1 2 3 4 5 6 7 n | | | | | | | | $--GSV,x,x,x,x,x,x,x,...*hh 1) GSV语句的总数目 2) 当前GSV语句总数 3) 显示卫星的总数目 4) 卫星的PRV号星号 5) 卫星仰角 6) 卫星旋角/方位 7) 信噪比 ... 更多颗卫星数据省略,其中每颗卫星数据包括<4>星号<5>仰角<6>旋角<7>信噪比 n) 校验位 4.2.4 RMC格式解析 例:$GPRMC,062321,V,3537.8333,N,13944.6667,E,000.0,000.0,030222,,*0C $GPRMC,154916,A,3140.0488,N,12112.8300,E,000.0,000.0,080416,,,A*7D 12 1 2 3 4 5 6 7 8 9 10 11 | | | | | | | | | | | | | $--RMC,hhmmss.ss,A,llll.ll,a,yyyyy.yy,a,x.x,x.x,xxxx,x.x,a*hh 1) UTC时间 2) 状态位V=导航报警接收器 3) 纬度 4) N=北纬S=南纬

nmea0183协议解析器

编号:_______________本资料为word版本,可以直接编辑和打印,感谢您的下载 nmea0183协议解析器 甲方:___________________ 乙方:___________________ 日期:___________________

nmea0183B议解析器 篇一:nema0183协议分析 nmea0813协议解析 1 信息源标识(talkeridentifiers ) 2 语句标识符与格式(sentenceidentifiersandFormats ) 在此,只列出语句标识符及中文解释,具体格式内容详 见各设备相关语句。 3 届性语句(someproprietarysentences ) 4nmea0813gps 相关 4.1信息源 4.2gps相关语句 nmea0183输出语句包括gga、gsa、gsV、Rmc Vtg、gll。 可通过gps串口调试软件发送相应的命令语句给gpsoem板, 此后gpsoem板会跟据设置参数决定每隔若干毫秒发送哪种或哪几种nmea语句。 4.2.1gga格式解析 例: $gpgga,062320,3537.8333,n,13944.6667,e,0,00,99.9,01 00,m,,m,000,0000*7d 11

12345678910|12131415||||||||||||||| $--gga,hhmmss.ss,llll.ll,a,yyyyy.yy,a,x,xx,x.x,x.x, m,x.x,m,x.x,xxxx*hh1)utc 时间2)纬度 3)n=北纬s=南纬4)经度 5)e=东经w=?经 6)gps性能指示0=未定位仁误差分定位信息2=带差分 定位信息7)使用卫星号00-128)精度百分比9)大地水准面高 度10)天线高度单位米 11) wsg-84大地椭球体海平面相对海平面的高度,负数 表示低于平均海平面 12)高度单位米 13)带差分gps定位数据时间,未使用dgps时此字段为 空14)差分站id号0000-102315)校验位 4.2.2gsa格式解析 例:$gpgsa,a,1,,,,,,,,,,,,,99.9,99.9,99.9*09 1231415161718|||||||| $--gsa,a,a,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x.x,x.x,x.x* hh 1)选择模式m寻动a=自动 2)当前状态仁无定位信息2=2d3=3d3)使用卫星号14)使用卫星号

GPS_NMEA-0813协议详解

GPS NMEA-0183协议详解 NMEA协议是为了在不同的GPS(全球定位系统)导航设备中建立统一的BTCM(海事无线电技术委员会)标准,由美国国家海洋电子协会(NMEA-The National Marine Electronics Associa-tion)制定的一套通讯协议。GPS接收机根据NMEA-0183协议的标准规范,将位置、速度等信息通过串口传送到PC机、PDA等设备。 NMEA-0183协议是GPS接收机应当遵守的标准协议,也是目前GPS接收机上使用最广泛的协议,大多数常见的GPS接收机、GPS数据处理软件、导航软件都遵守或者至少兼容这个协议。 NMEA-0183协议定义的语句非常多,但是常用的或者说兼容性最广的语句只有$GPGGA、$GPGSA、$GPGSV、$GPRMC、$GPVTG、$GPGLL、$GPZDA等。下面给出这些常用NMEA-0183语句的字段定义。 协议帧总说明: 该协议采用ASCII码,其串行通信默认参数为:波特率=4800bps,数据位=8bit,开始位=1bit,停止位=1bit,无奇偶校验。 帧格式形如:$aaccc,ddd,ddd,…,ddd*hh 1、“$”——帧命令起始位 2、aaccc——地址域,前两位为识别符,后三位为语句名 3、ddd…ddd——数据 4、“*”——校验和前缀 5、hh——校验和(check sum),$与*之间所有字符ASCII码的校验和(各字节做异或运算,得到校验和后,再转换16进制格式的ASCII字符。) 6、——CR(Carriage Return)+ LF(Line Feed)帧结束,回车和换行 GPGGA GPS固定数据输出语句,这是一帧GPS定位的主要数据,也是使用最广的数据。 $GPGGA,<1>,<2>,<3>,<4>,<5>,<6>,<7>,<8>,<9>,<10>,<11>,<12>,<13>,<14>*<15> <1> UTC时间,格式为hhmmss.sss。 <2> 纬度,格式为ddmm.mmmm(前导位数不足则补0)。 <3> 纬度半球,N或S(北纬或南纬)。 <4> 经度,格式为dddmm.mmmm(前导位数不足则补0)。 <5> 经度半球,E或W(东经或西经)。 <6> 定位质量指示,0=定位无效,1=定位有效。 <7> 使用卫星数量,从00到12(前导位数不足则补0)。 <8> 水平精确度,0.5到99.9。 <9> 天线离海平面的高度,-9999.9到9999.9米 <10> 高度单位,M表示单位米。 <11> 大地椭球面相对海平面的高度(-999.9到9999.9)。 <12> 高度单位,M表示单位米。

相关主题