您的位置:首页 > 其它

GPS协议

2015-07-27 17:54 127 查看
  http://www.gpsinformation.org/dale/nmea.htm

  我们所说的GPS协议一般指:NMEA-0183协议

  NMEA协议是为了在不同的GPS(全球定位系统)导航设备中建立统一的RTCM(海事无线电技术委员会)标准,由美国国家海洋电子协会(NMEA-The National Marine Electronics Associa-tion)制定的一套通讯协议。GPS接收机根据NMEA-0183协议的标准规范,将位置、速度等信息通过串口传送到PC机、PDA等设备。

  NMEA协议有0180、0182和0183这3种,0183可以认为是前两种的升级,也是目前使用最为广泛的一种

  。NMEA-0183协议是GPS接收机应当遵守的标准协议,大多数常见的GPS接收机、GPS数据处理软件、导航软件都遵守或者至少兼容这个协议。也有少数厂商或软件不支持NMEA-0183,购买和使用的时候需要注意识别。

  NAEA 0183 GPS协议

  该协议为NAEA 0183 2.0版,此协议是为了在不同的GPS导航设备中建立统一的RTCM标准。NAEA 0183语句以ASCII格式输出,传输速率可自定义。

  NMEA通讯协议所定义的标准通讯接口参数为:

  波特率:4800bit/s(缺省值 );

  数据位:8位;

  停止位:1位;

  奇偶校验:无;

  传输长度表:传输长度=传输总字符数/每秒传输数

  

波特率 每秒传输数 语句 最大字符

1200 120 GPGGA 72

2400 240 GPGSA 65

4800 480 GPGSV 210

9600 960 GPRMC 70

NMEA通讯协议所规定的通讯语句都已是以ASCII码为基础的,NMEA-0183协议语句的数据格式如下:“”为语句起始标志;“,”为域分隔符;“∗”为校验和识别符,其后面的两位数为校验和,代表了“”和“*”之间所有字符的按位异或值(不包括这两个字符);“/”为终止符,所有的语句必须以回车换行来结束,也就是ASCII 字符的“回车”(十六进制的0D)和“换行”(十六进制的0A)

  在读取输出语句时数据之间最好用“,”区分,不要按位读取,以保证应用程序的兼容性。

  1、GGA

  GPGGA、<1>、<2>、<3>、<4>、<5>、<6>、<7>、<8>、<9>、M,<11>、<12>∗hh  <0>GPGG,语句ID,表明该语句为GlobalPositioning System Fix Data(GGA)GPS定位信息

  <1>UTC时间,hh mm ss格式(定位它的卫星提供)

  <2>纬度dd mm mmmm 格式(前导位数不足则补0)

  <3>纬度方向 (北纬)或S(南纬)

  <4>经度ddd mm mmmm 格式(前导位数不足则补0)

  <5>经度方向E(东经)或W(西经)

  <6>GPS状态指示:0—未定位, 1—无差分定位信息, 2—带差分定位信息 ,3-无效GPS,6-正在估算

  <7>正在使用的卫星数量(00- 12)(前导位数不足则补0)

  <8>HDOP水平精度因子(0.5- 99.9)

  <9>海平面高度(-9999.9- 99999.9)

  <10>地球椭球面相对大地水准面的高度

  <11>差分GPS信息,即差分时间(从最近一次接收到差分信号开始的秒数,如果不是差分定位将为空)

  <12>差分站ID号0000 - 1023(前导位数不足则补0,如果不是差分定位将为空)

  2、GSA

  GPGSA、<1>、<2>、<3>、<3>、<3>、<3>、<3>、<3>、<3>、<3>、<3>、<3>、<3>、<3>、<4>、<5>、<6>、∗hh  <0>GPGSA,语句ID,表明该语句为GPSDOP and Active Satellites(GSA)当前卫星信息

  <1>定位模式M—手动,A—自动

  <2>当前状态 1—无定位信息,2—2D 3—3D

  <3>PRN号01~32(伪随机噪声码),当前信道(共12个信道)正在使用的卫星PRN码编号(00)(前导位数不足则补0)

  <4>PDOP综合位置精度因子(0.5- 99.9)

  <5>HDOP水平精度因子(0.5- 99.9)

  <6>VDOP垂直精度因子(0.5- 99.9)

  3、GSV

  GPGSV、<1>、<2>、<3>、<4>、<5>、<6>、<7><4>、<5>、<6>、<7>∗hh  <0>GPGSV,语句ID,表明该语句为GPSSatellites in View(GSV)可见卫星信息

  <1>GSV语句的总数目(1 -3)

  <2>当前GSV语句数目(1 -3)

  <3>显示卫星的总数目00~12(前导位数不足则补0)

  <4>卫星的PRN号星号(01- 32)(前导位数不足则补0)

  <5>卫星仰角(00- 90)度(前导位数不足则补0)

  <6>卫星旋角(00- 359)度(前导位数不足则补0)

  <7>信噪比(00-99)dbHz

  *语句共两条,每条最多包括4颗星的处所。每个星有4个数据,即<4>—星号 <5>—仰角<6>—方位<7>—信噪比

  4、RMC

  GPRMC、<1>、<2>、<3>、<4>、<5>、<6>、<7>、<8>、<9>、<10>、<11>、∗hh  <0>GPRMC,语句ID,表明该语句为RecommendedMinimum Specific GPS/TRANSIT Data(RMC)推荐最小定位信息

  <1>定位时UTC时间hhmmss.sss格式

  <2>状态A=定位V=导航

  <3>经度ddmm.mmm 格式(前导位数不足则补0)

  <4>经度方向N(北纬)或S(南纬)

  <5>纬度dddmm.mmmm (前导位数不足则补0)

  <6>纬度方向E(东经)或W(西经)

  <7>速率,节,Knots

  <8>方位角(二维方向指向,相当于二维罗盘)

  <9>当前UTC日期ddmmyy 格式

  <10>磁偏角,(000- 180)度(前导位数不足则补0)

  <11>磁偏角方向,E=东经 W=西经

  5、VTG

  GPVTG、<1>、T、<2>、M、<3>、N、<4>K∗hh  <0>GPVTG,语句ID,表明该语句为TrackMade Good and Ground Speed(VTG)地面速度信息

  <1>真实方向(000 - 359),(前导位数不足则补0)

  T-正北参照系

  <2>相对方向

  M-磁北参照系

  <3>步长

  N-节,Knots

  <4>速率

  K-公里/时,km/h

  6、GPGLL

  例:GPGLL,<1>,S,<3>,E,<5>,<6>∗<7>  <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>:校验值

  1、NMEA接收语句

  *GPS 25输入语句,主要为初始化,参数设置导通过RXP管脚

  (1)ALM(历书信息)格式:GPALM、<1>、<2>、<3>、<4>、<5>、<6>、<7>、<8>、<9>、<10>、<11>、<12>、<13>、<14>、<15>、∗hh  如果板上的备用电池耗完,用此语句初始化信息  <1>在历书下传时能将历书总数传至GPS板上,当发送历书到GPS板上此字段可空或任意数。  <2>当前历书数20这个字段可为空或任意值;  <3>卫星PRN数不清0到32  <4>GPS星历数  <5>SV状态,每个历书的17−24位  <6>离心率  <7>星历参考时间  <8>倾角  <9>上升速率  <10>半轴  <11>近地点的末端  <12>节经度  <13>近点离角  <14>Afo时间参数  <15>Af1时间参数  hh:语句末端的hh为该语句的校检符,应由用户计算送给GPS25板,计算规则为:“S”后的所有字节的8个计,每4个组成一个BCD码(A、B、C等应用大写)。GPS25输出,语句后均有校验位,用户可通过它,验证结果。  (2)初始化信息命令(仅在GPS25上用)PGRMI用来初始化板子设定卫星位置和时间

  该语句一般在裙位置和当前实际位置的距离超过800公里时使用,以回忆定位速度

  格式:PGRMIGPALM、<1>、<2>、<3>、<4>、<5>、<6>、*hh

  <1>纬度ddmm.mmm格式(初始化必须被写入板子)

  <2>纬度方向N或S

  <3>经度ddmm.mmm格式(初始化必须被写入板子)

  <4>经度方向E或N

  <5>当前UTC日期,kkmm yy格式

  <6>当前UTC时间hhmm ss格式

  (3)板子配置信息命令(仅用于GPS 25)

  GPALM配置接收板上的参数,存储在备用电池上。GPALM、 <1>、<2>、<3>、<4>、<5>、<6>、<7>、 <8>、<9>、<10>、<11>、<12>、*hh< LF>

  <1>合适的工作模式A——自动,2——2D模式,3—3D模式

  <2>海平面高度-1500.00~1800.00米

  <3>地理坐标索引

  <4>用户在地坐标

  <5>用户大地坐标精度

  <6>用户大地坐标 x轴

  <7>用户大地坐标 y轴

  <8>用户大地坐标z轴

  <9>差分模式A—自动(激活时自动输出差分信息)D—差分模式

  <10>NMEA波特率1=200 2=2400 3=4800 4=9600

  <11>速度滤波器状态0=不过滤 1—自动 2~255=滤波器时间常数

  <12>PPS模式:1=无Z=1HZ

  波特率和PPS的改变在重新加电或PIN6初始化后发挥作用。

  (4)输出语句的激活(仅适用于GPS 25)

  PGRMO决定是否进行语句输出。PGRMO<1>、<2>*hh

  (1)语句描述

  (2)语句模式0—关闭特殊1 —开启特 2—关闭所有 3—开启所有(除GPALM)

  注意:(1)如果为2或3时,不做检验。允许有空字段

  (2)如果为0或1时,描述字段必须被定义

  (3)如果如果都不作用时(指上语句中<1><2>),该语句无影响

  (4)PGRMO、GPALM、1将传送所有昨历  2、NMEA的发送语句  通过TXD管脚(GPS25板上)  (1)传输速率  用户可自定义  传输长度表传输长度=传输总字符数/每秒传输数  波特率每秒传输数语句最大字符  1200120GPGGA72  2400240GPGSA65  4800480GPGSV210  9600960GPRMC70  GPVTG34  PGRME36  PGRMT47  PGRMV26  PGRMF79  LCGLL36  LCDTG34  缺省波特率为48000。  (2)时间传输  输出UTC时间和日期,通过计算板上时间得到当前日期时间。  (3)全球卫星的星历(ALM)GPALM、 <1>、<2>、<3>、<4>、<5>、<6>、<7>、 <8>、<9>、<10>、<11>、<12>、<13>、< 14>、<15>、*hh

  I 不能正常传送,要通过PGRMO、GPALM、1命令初始化后得到  ∗在读取输出语句时数据之间最好用“、”区分,不要按位读取,以保证应用程序兼容性  (4)位置信息(GGA)GPGGA、 <1>、<2>、<3>、<4>、<5>、<6>、<7>、 <8>、<9>、M, <11>、<12>*hh

  <1>UTC时间,hh mm ss格式(定位它的)

  <2>经度dd mm mmmm 格式(非0)

  <3>经度方向 N或S

  <4>纬度ddd mm mmmm 格式(非0)

  <5>纬度方向E或W

  <6>GPS状态批示0—未定位 1—无差分定位信息 2—带差分定位信息

  <7>使用卫星号(00~08)

  <8>精度百分比

  <9>海平面高度

  <10>*大地随球面相对海平面的高度

  <11>差分GPS信息

  <12>差分站ID号 0000-123

  (5) GPS DOP 和活动卫星

  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—2D3—3D  <3>PRN号01 32  <4>位置精度  <5>垂直精度  <6>水平精度  (6)当前GPS卫星状态(GSV)GPGSV、<1>、<2>、<3>、<4>、<5>、<6>、< 7><4>、<5>、<6>、<7>*hh

  <1>GSV语句的总数目

  <2>当前GSV语句数目

  <3>显示卫星的总数目00~12

  <4>卫星的PRV号星号

  <5>卫星 仰角

  <6>卫星 旋角

  <7>信操比

  语句共两条,第条最多包括4颗星的处所。每个星有4个数据,即<4>—星号 <5>—仰角<6>—方位<7>—信噪比

  (7)最简特性(RMC)

  GPRMC、<1>、<2>、<3>、<4>、<5>、<6>、<7>、<8>、<9>、<10>、<11>、∗hh  <1>定位时UTC时间hhmmss格式  <2>状态A=定位V=导航  <3>经度ddmm.mmm格式  <4>经度方向N或S  <5>纬度dddmm.mmmm  <6>纬度方向E或W  <7>速率  <8>方位敬爱(二维方向指向,相当于二维罗盘)  <9>当前UTC日期ddmmyy格式  <10>太阳方位  <11>太阳方向  (8)VTG速度相对正北的方向GPVTG、<1>、T、<2>、M、<3>、N、<4>K*hh

  <1>真实方向<2>、相对方向<3>步长<4>速率

  (9)带有LORAN ID的地理信息命令

  LCGLL 报告位置信息

  LCGLL、<1>、<2>、<3>、<4>,<5>  1、经度,ddmm.mm格式  2、经度方向N或S  3、纬度,dddmm.mm格式  4、纬度方向E或W  5、UTC时间(定位点)hhmmss格式  (10)带有LORANID的轨迹,速度信息  LCVTG报告轨迹和速度信息LCVTG、<1>、T、<2>、、<3>、N、<4>,K,

  1、 真实方向(相对于正北)

  2、 相对方向

  3、 步长

  4、 速率

  (11)评估错误信息

  PGRME报告评估错误信息PGRME、<1>、M、<2>、M、<3>、M、*hh

  1、 GPS星号(0-1023)

  2、 附加PGS(0-604799)

  3、 UTC日期(当前点)hhmmss格式

  4、 UTC时间(当前点)hhmmss格式

  5、 GPS跳跃秒数

  6、 经度,ddmm.mmmm格式

  7、 经度方向,N或S

  8、 纬度,dddmm.mmmm格式

  9、 纬度方向,E或W

  10、模式 M=”手动” A=”自动”

  11、定位类型 0=没定位 1=2D 2=3D

  12、速率

  13、方位角

  (13)状态信息

  PGRMT、<1>、<2>、<3>、<4>、<5>、<6>、<7>、<8>、<9>∗hh  报告板子状态语句  1、产品名称,模式和软件版本  2、自测P−通过F−失败  3、接收检测P−通过F−失败  4、储存数据状态R−保留L−丢失  5、时钟数据状态R−保存L−丢失  6、晶振检测P−通过F−测试有误  7、数据采集C−收集空时为不收集  8、板子温度℃  9、板子配置数据R−保留L−丢失  (14)3D定位信息PGRMV、<1>、<2>、<3>*hh

  1、 向东真实速率 -999.9 to 9999.9

  2、 向北真实速率 -999.9 to 9999.9

  3、 垂直速率 -999.9 to 9999.9

  数据实例

  GPGSA,A,1,,,,,,,,,,,,,99.9,99.9,99.9∗09PSNY,0,00,05,500,06,06,06,06*14

  GPVTG,000.0,T,,M,000.0,N,000.0,K∗60GPGGA,062320,3537.8333,N,13944.6667,E,0,00,99.9,0100,M,,M,000,0000*7D

  GPGLL,3537.8333,N,13944.6667,E,062320,V∗3BGPRMC,062320,V,3537.8333,N,13944.6667,E,000.0,000.0,030222,,*0D

  GPZDA,062320,03,02,2022,,∗4EGPGSV,1,1,00,,,,,,,,,,,,,,,,*79

  GPVTG,000.0,T,,M,000.0,N,000.0,K∗60GPGGA,062321,3537.8333,N,13944.6667,E,0,00,99.9,0100,M,,M,000,0000*7C

  GPGLL,3537.8333,N,13944.6667,E,062321,V∗3AGPRMC,062321,V,3537.8333,N,13944.6667,E,000.0,000.0,030222,,*0C

  GPZDA,062321,03,02,2022,,∗4FGPGSA,A,1,,,,,,,,,,,,,99.9,99.9,99.9*09

  PSNY,0,00,05,500,06,06,06,06∗14GPVTG,000.0,T,,M,000.0,N,000.0,K*60

  GPGGA,062322,3537.8333,N,13944.6667,E,0,00,99.9,0100,M,,M,000,0000∗7FGPGLL,3537.8333,N,13944.6667,E,062322,V*39

  GPRMC,062322,V,3537.8333,N,13944.6667,E,000.0,000.0,030222,,∗0FGPZDA,062322,03,02,2022,,*4C

转自:http://blog.csdn.net/henry19850318/article/details/6907181
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息