GPS数据格式
Publish by https://www.leachchen.com/
该协议信息包括 GGA 位置测定系统的定位资料、GSV 导航卫星资料、RMC 导航卫星特定精简资料、VTG 方向及速度等相关资料。这里以接收 GGA 数据为例,给出的格式如下:
$GPGGA,hhmmss,dddmm.mmmm,a,dddmm.mmmm,a,x,xx,x.x,x.x,M,,M,x.x,xxxx*CS
例:$GPGGA,033744,2446.5241,N,12100.1536,E,1,10,0.8,133.4,M,,,,*1F
表 1 所列是其具体说明。通过表 1 便可读出上面例子中的位置信息为:北纬 24度46.5241分,西经12l 度 00.1536 分,格林威治时间为:3点 37 分 44 秒
GPS 数据格式
a.GPS 固定数据输出语句($GPGGA)
这是一帧GPS 定位的主要数据,也是使用最广的数据。
$GPGGA 语句包括 17 个字段:语句标识头,世界时间,纬度,纬度半球,经度,经度半球,定位质量指示,使用卫星数量,水平精确度,海拔高度,高度单位,大地水准面高度,高度单位,差分GPS 数据期限,差分参考基站标号,校验和结束标记(用回车符
$GPGGA,<1>,<2>,<3>,<4>,<5>,<6>,<7>,<8>,<9>,M,<10>,M,<11>,<12>*xx
$GPGGA:起始引导符及语句格式说明(本句为 GPS 定位数据);
<1> UTC 时间,格式为 hhmmss.sss;
<2> 纬度,格式为 ddmm.mmmm(第一位是零也将传送);
<3> 纬度半球,N或S(北纬或南纬);
<4> 经度,格式为 dddmm.mmmm(第一位零也将传送);
<5> 经度半球,E 或 W(东经或西经)
<6> 定位质量指示,0=定位无效,1=定位有效;
<7> 使用卫星数量,从 00 到 12(第一个零也将传送)
<8> 水平精确度,0.5 到 99.9
<9> 天线离海平面的高度,-9999.9 到 9999.9 米M 指单位米
<10> 大地水准面高度,-9999.9 到 9999.9 米M 指单位米
<11> 差分 GPS 数据期限(RTCM SC-104),最后设立 RTCM 传送的秒数量
<12> 差分参考基站标号,从 0000 到 1023(首位 0 也将传送)。
* 语句结束标志符
xx 从$开始到*之间的所有 ASCII 码的异或校验和
b.可视卫星状态输出语句($GPGSV)
例2:$GPGSV,2,1,08,06,33,240,45,10,36,074,47,16,21,078,44,17,36,313,42*78
标准格式: $GPGSV,(1),(2),(3),(4),(5),(6),(7),…(4),(5),(6),(7)*hh
各部分含义为:
(1)总的 GSV 语句电文数;
(2)当前 GSV 语句号:1;
(3)可视卫星总数:08;
(4)卫星号:06;
(5)仰角(00~90 度):33度;
(6)方位角(000~359 度):240 度;
(7)信噪比(00~99dB):45dB(后面依次为第 10,16,17 号卫星的信息);
*总和校验域;
hh 总和校验数:78;
注:每条语句最多包括四颗卫星的信息,每颗卫星的信息有四个数据项,即:
(4)-卫星号,(5)-仰角,(6)-方位角,(7)-信噪比。
c.当前卫星信息($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.(检查位).
d.推荐定位信息(RMC)
$GPRMC,<1>,<2>,<3>,<4>,<5>,<6>,<7>,<8>,<9>,<10>,<11>,<12>*hh
<1> UTC 时间,hhmmss(时分秒)格式
<2> 定位状态,A=有效定位,V=无效定位
<3> 纬度 ddmm.mmmm(度分)格式(前面的 0 也将被传输)
<4> 纬度半球 N(北半球)或 S(南半球)
<5> 经度 dddmm.mmmm(度分)格式(前面的 0 也将被传输)
<6> 经度半球 E(东经)或 W(西经)
<7> 地面速率(000.0~999.9 节,前面的 0 也将被传输)
<8> 地面航向(000.0~359.9 度,以真北为参考基准,前面的 0 也将被传输)
<9> UTC 日期,ddmmyy(日月年)格式
<10> 磁偏角(000.0~180.0 度,前面的 0 也将被传输)
<11> 磁偏角方向,E(东)或 W(西)
<12> 模式指示(仅 NMEA0183 3.00 版本输出,A=自主定位,D=差分,E=估算,N=数据无效)
e.地面速度信息(VTG)
$GPVTG,<1>,T,<2>,M,<3>,N,<4>,K,<5>*hh
<1> 以真北为参考基准的地面航向(000~359 度,前面的 0 也将被传输)
<2> 以磁北为参考基准的地面航向(000~359 度,前面的 0 也将被传输)
<3> 地面速率(000.0~999.9 节,前面的 0 也将被传输)
<4> 地面速率(0000.0~1851.8 公里/小时,前面的 0 也将被传输)
<5> 模式指示(仅 NMEA0183 3.00 版本输出,A=自主定位,D=差分,E=估算,N=数据无效)
GPS 数据格式
a.GPRMC(建议使用最小 GPS 数据格式)
$GPRMC,<1>,<2>,<3>,<4>,<5>,<6>,<7>,<8>,<9>,<10>,<11>
1) 标准定位时间(UTC time)格式:时时分分秒秒.秒秒秒(hhmmss.sss)。
2) 定位状态,A = 数据可用,V = 数据不可用。
3) 纬度,格式:度度分分.分分分分(ddmm.mmmm)。
4) 纬度区分,北半球(N)或南半球(S)。
5) 经度,格式:度度分分.分分分分。
6) 经度区分,东(E)半球或西(W)半球。
7) 相对位移速度, 0.0 至 1851.8 knots
8) 相对位移方向,000.0 至 359.9 度。实际值。
9) 日期,格式:日日月月年年(ddmmyy)。
10) 磁极变量,000.0 至 180.0。
11) 度数。
12) Checksum.(检查位)
b.GPGSV(所示卫星格式)
$GPGSV,<1>,<2>,<3>,<4>,<5>,<6>,<7>,?<4>,<5>,<6>,<7>,<8>
1) 天空中收到讯号的卫星总数。
2) 定位的卫星总数。
3) 天空中的卫星总数,00 至 12。
4) 卫星编号, 01 至 32。
5) 卫星仰角, OO 至 90 度。
6) 卫星方位角, OOO 至 359 度。实际值。
7) 讯号噪声比(C/No), 00 至 99 dB;无表未接收到讯号。
8) Checksum.(检查位).第<4>,<5>,<6>,<7>项个别卫星会重复出现,每行最多有四颗卫星。其余卫星信息会于次一行出现,若未使用,这些字段会空白。
c.GPGSA(GPS 精度指针及使用卫星格式)
$GPGSA,<1>,<2>,<3>,<3>,,,,,<3>,<3>,<3>,<4>,<5>,<6>,<7>
1)模式 2:M = 手动, A = 自动。
2)模式 1:定位型式 1 = 未定位, 2 = 二维定位, 3 = 三维定位。
3) PRN 数字:01 至 32 表天空使用中的卫星编号,最多可接收 12 颗卫星信息。
4) PDOP-位置精度稀释 0.5 至 99.9.
5) HDOP-水平精度稀释 0.5 to 99.9.
6) VDOP-垂直精度稀释 0.5 to 99.9.
7) Checksum.(检查位).
d. GPS 固定数据输出语句($GPGGA)
这是一帧GPS 定位的主要数据,也是使用最广的数据。为了便于理解,下面举例说明$GPGGA 语句各部分的含义。例 1 是用 GN-77N 和笔者开发的软硬件接口,在笔者所在地接收到的$GPGGA 语句的内容。
例1:$GPGGA,050901,3931.4449,N,11643.5123,E,1,07,1.4,76.2,M,-7.0,M,,*65
其标准格式为:$GPGGA,(1),(2),(3),(4),(5),(6),(7),(8),(9),M,(10),M,(11),(12)*hh
各部分所对应的含义为:
(1)定位 UTC 时间:05 时 09分 01 秒;
(2)纬度(格式 ddmm.mmmm:即 dd 度,mm.mmmm 分);
(3)N/S(北纬或南纬):北纬 39 度 31.4449 分;
(4)经度(格式 dddmm.mmmm:即 ddd 度,mm.mmmm 分);
(5)E/W(东经或西经):东经 116 度 43.5123 分;
(6)质量因子(0=没有定位,1=实时 GPS,2=差分 GPS):1=实时 GPS;
(7)可使用的卫星数(0~8):可使用的卫星数=07;
(8)水平精度因子(1.0~99.9);水平精度因子=1.4;
(9)天线高程(海平面,-9999.9~99999.9,单位:m);天线高程=76.2m);
(10)大地椭球面相对海平面的高度(-999.9~9999.9,单位:m):-7.0m;
(11)差分 GPS 数据年龄,实时 GPS时无:无;
(12)差分基准站号(0000~1023),实时 GPS 时无:无;
*总和校验域;
hh 总和校验数:65
e.可视卫星状态输出语句($GPGSV)
例2:$GPGSV,2,1,08,06,33,240,45,10,36,074,47,16,21,078,44,17,36,313,42*78
标准格式: $GPGSV,(1),(2),(3),(4),(5),(6),(7),…(4),(5),(6),(7)*hh
各部分含义为:
(1)总的 GSV 语句电文数;2;
(2)当前 GSV 语句号:1;
(3)可视卫星总数:08;
(4)卫星号:06;
(5)仰角(00~90 度):33度;
(6)方位角(000~359 度):240 度;
(7)信噪比(00~99dB):45dB(后面依次为第 10,16,17 号卫星的信息);
*总和校验域;
hh 总和校验数:78;
注:每条语句最多包括四颗卫星的信息,每颗卫星的信息有四个数据项,即:
(4)-卫星号,(5)-仰角,(6)-方位角,(7)-信噪比。
From: http://zhidao.baidu.com/question/71090414.html
GPS 接收机能提供 ASCII 和二进制两种格式。其中 ASCII 码为 NMEA-0183,NMEA-0183 是美国国家海洋电子协会为海用电子设备制定的标准格式。它是在过去海用电子设备的标准格式0180 和 0182 的基础上,增加了 GPS 接收机输出的内容而完成的。目前广泛采用的是Ver 2.00版本。现在除少数GPS 接收机外,几乎所有的接收机均采用了这一格式。各条语句都以$开头,格式为:$AAXXX,ddd…ddd,*hh
$GPGGA,050901,3931.4449,N,11643.5123,E,1,07,1.4,76.2,M,-7.0,M,,*65
说明如下:
(1) GGA 表示定位语句。
(2) 定位 UTC 时间:050901 表示 05 时 09 分 01 秒
(3) 接收机所在纬度值(格式 ddmm.mmmm),N/S(北纬或南纬)。3931.4449,N 表示北纬 39 度 31.4449分。
(4) 经度(格式 dddmm.mmmm),E/W(东经或西经)。11643.5123,E 表示东经116 度 43.5123 分。
(5) 定位代号(0 为未定位或无效的定位;1为 GPS SPS 格式(SPS 为
商业用途格式),已定位;2 为偏差修正 GPS(即 DGPS),SPS 格式,已定位;3 为 GPS PPS 格式(PPS 为军用格式),已定位)。1 表示使用 SPS 定位服务而且是有效的定位。
(6) 可使用的卫星数。07表示可使用的卫星数为7 颗。
(7) 水平精度因子(HDOP),1.4 表示水平精度因子为 1.4。
(8) 天线 MSL(MSL - Main Sea Level 公海平面)高程(海平面,-9999.9~99999.9,单位:m),76.2 为天线 MSL 高程。
(9) 大地椭球面相对海平面的高度(-999.9~9999.9,单位:m),-7.0m。
(10)差分 GPS 数据年龄,实时 GPS 时无:无。
(11)差分基准站号(0000~1023),实时 GPS 时无:无。
(12)*总和校验域(hh ),总和校验数为 65。NMEA-0183 的串行通讯协议为:波特率为 4800,无校验位,8 个数据位,开始位和停止位各为1。
航向信息语句格式:$HEHDT,23.254,T*cc
• $GPAAM - Waypoint Arrival Alarm
• $GPBOD - Bearing, Origin to Destination
• $GPBWW - Bearing, Waypoint to Waypoint
• $GPGGA - Global Positioning System Fix Data
• $GPGLL - Geographic Position, Latitude/Longitude
• $GPGSA - GPS DOP and Active Satellites
• $GPGST - GPS Pseudorange Noise Statistics
• $GPGSV - GPS Satellites in View
• $GPHDG - Heading, Deviation & Variation
• $GPHDT - Heading, True
• $GPRMB - Recommended Minimum Navigation Information
• $GPRMC - Recommended Minimum Specific GPS/TRANSIT Data
• $GPRTE - Routes
• $GPVTG - Track Made Good and Ground Speed
• $GPWCV - Waypoint Closure Velocity
• $GPWNC - Distance, Waypoint to Waypoint
• $GPWPL - Waypoint Location
• $GPXTE - Cross-Track Error, Measured
• $GPXTR - Cross-Track Error, Dead Reckoning
• $GPZDA - UTC Date/Time and Local Time Zone Offset
• $GPZFO - UTC and Time from Origin Waypoint
• $GPZTG - UTC and Time to Destination Waypoint
NMEA-0183 语句格式一般为:“$”为语句起始标志;“,”为域分隔符;“*”为校验和识别符,其后面的两位数为校验和;“
“$HEHDT,nnn.nn,T*hh