当前位置:
文档之家› GPS NMEA 0183 协议
GPS NMEA 0183 协议
本贴被 bg8wj 编辑过,最后修改时间:2010-11-14,18:57:59.
2010-11-14,1 8:52:28
资料 ↑↑
邮件 回复 ↓↓
引用回复
编辑 删除 举报广告、提议置酷等 举报
【2楼】 bg8wj 积分:77 派别: 等级:-----来自:
回复【1楼】bg8wj -----------------------------------------------------------------------
http://www.ourdev.cn/bbs/bbs_content.jsp?bbs_sn=4391290&bbs_id=9999
2011-2-26
【配阿莫的gps开源我发个最简单的gps信息显示项目】兄弟篇 nmea0183协... Page 2 of 6
3、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> $GPGGA,050458.000,2459.8991,N,10242.8698,E,1,5,1.20,1885.0,M,-32.2,M,,*45 <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也将被传输,如果不是差分定位将为空)
http://www.ourdev.cn/bbs/bbs_content.jsp?bbs_sn=4391290&bbs_id=9999
2011-2-26
【配阿莫的gps开源我发个最简单的gps信息显示项目】兄弟篇 nmea0183协... Page 3 of 6
派别: 等级:-----来自:
Βιβλιοθήκη Baidu
如51版面中提到的checksum计算,c语言的描述如下 sum = *data; while(*data!='*') { sum ^= *data; data++; } 计算的时候需要对整个数据帧进行计算,从$到<cr>之间的数据统统做check sum,这里的数据包括 标点符号分割符。 格式是: 1.一律以 $ 符號開頭 2.$ 後是Message id. 5個ASCII Code. 3.一連串以','分開的欄位. 4.Checksum,checkum以'*'開始,後面是兩個ASCII code. 5.checksum 计算是从$开始到*之间的ASCII字符做异或运算 sum^=sum
╟—虚拟总论坛
本网站由阿莫电子邮购独家赞助
跳转至:
发
表
新
话
题
↓↓ 【配阿莫的gps开源我发个最简单的gps信息显示项目】兄弟篇 nmea0183协议
回复数:10,点击 数:963
【楼主位】 bg8 wj 积分:77 派别: 等级:-----来自:
关于nmea0183协议标准 ourdev_597890AGATXL.pdf(文件大小:59K) (原文件名:plugin-DescriptionNMEA.pdf) nmea0183协议规定的数据格式如下: $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 说明:NMEA0183格式以“$”开始,主要语句有GPGGA,GPVTG,GPRMC等 1、 GPS DOP and Active Satellites(GSA)当前卫星信息 $GPGSA,<1>,<2>,<3>,<3>,,,,,<3>,<3>,<3>,<4>,<5>,<6>,<7><CR><LF> $GPGSA,A,3,16,23,31,32,14,,,,,,,,1.53,1.20,0.95*0A <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.(检查位).
4、Recommended Minimum Specific GPS/TRANSIT Data(RMC)推荐定位信息 $GPRMC,<1>,<2>,<3>,<4>,<5>,<6>,<7>,<8>,<9>,<10>,<11>,<12>*hh<CR><LF> $GPRMC,050459.000,A,2459.8990,N,10242.8698,E,0.67,158.73,190808,,,A*6A <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=数据无效) 5、 Track Made Good and Ground Speed(VTG)地面速度信息 $GPVTG,<1>,T,<2>,M,<3>,N,<4>,K,<5>*hh<CR><LF> <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=数据无效)
2010-11-14,1 8:52:03
资料 ↑↑
邮件 回复 ↓↓
引用回复
编辑 删除 举报广告、提议置酷等 举报
【1楼】 bg8wj 积分:77
回复【楼主位】bg8wj -----------------------------------------------------------------------
2、 GPS Satellites in View(GSV)可见卫星信息 $GPGSV, <1>,<2>,<3>,<4>,<5>,<6>,<7>,?<4>,<5>,<6>,<7>,<8><CR><LF> $GPGSV,3,2,12,42,39,118,,32,38,225,20,20,34,252,,31,34,060,34*76 <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>项个别卫星会重复出现,每行最多有四颗卫星。其余卫星信息会于次一行出 现,若未使用,这些字段会空白。
【配阿莫的gps开源我发个最简单的gps信息显示项目】兄弟篇 nmea0183协... Page 1 of 6
雕刻机,中国电子开发网,阿莫电子,阿莫论坛,莫进明,www.ourdev.cn,AVR,STM32
欢迎您,yfpbird |登录 | 快速注册 |退出
首页 酷贴 搜索 在线
个人功能
论坛首页 -> 虚拟总论坛 -> 【配阿莫的gps开源我 发个最简单的gps信息显示项目】兄弟篇 nmea0183 协议 (属于论坛:GPS导航)
本贴被 bg8wj 编辑过,最后修改时间:2010-11-14,19:07:23.
2010-11-14,1 8:52:45
资料 ↑↑
邮件 回复 ↓↓
引用回复
编辑 删除 举报广告、提议置酷等 举报
【3楼】 bg8wj 积分:77 派别: 等级:-----来自:
回复【楼主位】bg8wj ----------------------------------------------------------------------另外关于gps模块再多说一些,我们现在所谓的因为使用12通道高精度gps模块,所以误差小于xx米 的提法是错误的。在海湾战争结束后大约是在95年的时候米国已经放开gps定位精度误差控制,就 是不在卫星定位信号中插入误差码,而米国宣称的gps定位精度民用为5米的确是真的。在定位精度
另外关于gps模块中的tx rx引脚的用途。就是用来完成gps模块的nmea0183配置通讯用的。大部分 的模块默认的串口电气规范是ttl232,如果需要和pc机之间连接的话是需要做电平调理的。
由此引申出的单片机通讯的问题就是,所有的双机通讯要想稳定必须建立在通讯协议的基础上,也 就是数据必须经过封装的,有帧头、信息体、校验字节、帧结束符的。在《配合》一文中给出的gp s帧解析部分是效率最低的,直接在串行通讯中断服务程序中解析,这样的编程只能是简单学习应 用,因为这样的解析只能针对最低导航信息要求来完成。如果需要从模块中提取跟多的信息的话, 则需要单独写函数完成对帧封装的信息的解析。
http://www.ourdev.cn/bbs/bbs_content.jsp?bbs_sn=4391290&bbs_id=9999
2011-2-26
【配阿莫的gps开源我发个最简单的gps信息显示项目】兄弟篇 nmea0183协... Page 4 of 6
上再也没有民用、军用的区分。军用和民用的区别在于军用的gps永远保障,而且卫星信号永久加 密,每2秒换一次干扰ca码,民用gps信号得不到保障,可能随时被关停,特别是美军处于战争状态 下,民用gps无一例外的会出问题。而为什么我们在买来的商品化模块会出现漂移、定位精度低, 是因为我们自己没有使用差分gps(dgps)的功能,我们用的还是gps模块中误差较大的信息(我姑 且称之为,快速gps方式)。快速gps功能中定位信息是估计出来的,(就像我们在ad滤波函数中滤 波函数一样,对于信号的处理是预测的,计算的)当然会出现漂移、精度低。而不幸的是目前大部 分的厂家一味的降低模块成本,几乎无一例外的取消dgps功能。相对于快速gps,差分gps(dgps) 模式定位精度就高很多。当然要具备这种功能的模块价格也是不低的。 需要指出的是快速gps和差分gps没有本质的区别,依然是1颗卫星给出时间信息、2颗卫星给出高度 信息、3颗卫星才能给出海拔、速度信息。无一例外的飞机上用gps导航就是用的dgps方法给出的位 置信息。快速gps初始化的时候不需要对模块输入当前的位置信息,而普通民用差分gps需要对模块 初始化后才能精确导航。普通民用差分dgps在这点上和惯导一样。 遗憾的是我们能够使用的北斗系统,就是快速gps方式。