MAXPDA论坛 » GPS讨论区 » 了解我们的GPS

2007-7-17 11:30 leoncoolmoon
了解我们的GPS

用了GPS一段时间,觉得应该可以自己开发自己的GPS工具了

下面是关于GPS的一些资料
涉及以下几个语句:$GPGGA、$GPGSV、$GPGSA、$GPRMC


a.GPS固定数据输出语句($GPGGA)
这是一帧GPS定位的主要数据,也是使用最广的数据。
$GPGGA 语句包括17个字段:语句标识头,世界时间,纬度,纬度半球,经度,经度半球,定位质量指示,使用卫星数量,水平精确度,海拔高度,高度单位,大地水准面高度,高度单位,差分GPS数据期限,差分参考基站标号,校验和结束标记(用回车符<CR>和换行符<LF>),分别用14个逗号进行分隔。该数据帧的结构及各字段释义如下:

$GPGGA,<1>,<2>,<3>,<4>,<5>,<6>,<7>,<8>,<9>,M,<10>,M,<11>,<12>*xx<CR><LF>

$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码的异或校验和
<CR>   回车
<LF>   换行


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(CR)(LF)   
各部分含义为:   
(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;   
(CR)(LF)回车,换行。   
注:每条语句最多包括四颗卫星的信息,每颗卫星的信息有四个数据项,即:  
(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=数据无效)


以上内容参考了[url]http://bbs.100gps.com/archiver/tid-52320.html[/url]的内容。

下面是我用串口从GPS上实际接收的文本

$Version NAVMAN GPS 2.3.5 BT3
$TOW: 184207  
$WK:  1436
$POS: -2765644 4768710  3197402
$CLK: 92553   
$CHNL:12

$Baud rate: 57600  System clock: 12.277MHz
$HW Type: S2AM
$Asic Version: 0x23
$Clock Source: GPSCLK
$Internal Beacon: None
$GPGGA,031112.272,3016.8960,N,12006.7089,E,1,03,13.5,80.7,M,7.0,M,0.0,0000*49
$GPRMC,031112.272,A,3016.8960,N,12006.7089,E,0.000000,,170707,,*1C
$GPGGA,031113.272,3016.8830,N,12006.7156,E,1,04,11.9,81.6,M,7.0,M,0.0,0000*46
$GPGSA,A,3,18,05,30,21,,,,,,,,,19.8,11.9,15.8*0B
$GPGSV,3,1,09,18,78,131,37,22,60,319,00,05,48,131,39,12,44,102,00*7E
$GPGSV,3,2,09,30,38,154,43,09,38,038,00,14,32,303,00,21,18,194,41*70
$GPGSV,3,3,09,31,09,231,00*4B
$GPRMC,031113.272,A,3016.8830,N,12006.7156,E,0.000000,,170707,,*1A
$GPGGA,031113.687,3016.8846,N,12006.7229,E,1,04,9.5,75.7,M,7.0,M,0.0,0000*7D
$GPRMC,031113.687,A,3016.8846,N,12006.7229,E,0.868531,304.18,170707,,*0F
$GPGGA,031115.992,3016.8857,N,12006.7230,E,1,04,11.6,66.8,M,7.0,M,0.0,0000*4F
$GPGSA,A,3,18,05,30,21,,,,,,,,,19.2,11.6,15.3*05
$GPGSV,3,1,09,18,78,131,36,22,60,319,00,05,48,131,40,12,44,102,00*71
$GPGSV,3,2,09,30,38,154,44,09,38,038,00,14,32,303,00,21,18,194,41*77
$GPGSV,3,3,09,31,09,231,00*4B
$GPRMC,031115.992,A,3016.8857,N,12006.7230,E,0.295239,322.73,170707,,*04

大家读一下内容就可以知道我接收GPS的坐标了。。。
如果配合上地图和地图的坐标就能定位了。

[[i] 本帖最后由 leoncoolmoon 于 2007-7-17 11:49 编辑 [/i]]

2007-7-17 15:45 .地主□■
这就是精华啊。。怎么没人顶?:L :L

狂顶

2007-7-17 16:18 liruifeng8
不错~!~!:lol :lol

2007-7-17 20:29 guo0931
[quote]原帖由 [i]leoncoolmoon[/i] 于 2007-7-17 11:30 发表 [url=http://www.maxpda.com/redirect.php?goto=findpost&pid=752483&ptid=73306][img]http://www.maxpda.com/images/common/back.gif[/img][/url]
用了GPS一段时间,觉得应该可以自己开发自己的GPS工具了

我关心的是这一句:用了GPS一段时间,觉得应该可以自己开发自己的GPS工具了

希望早日动手

2007-7-21 21:11 bloveluna
gpg就是圆环套圆环:P

2007-7-24 11:03 leoncoolmoon
其实GPS的模块直接就把坐标算出来了,只要我们掌上或者电脑把坐标利用校准的信息换算到地图图片的坐标上就可以了,要用到的编程方面的知识包括了串口编程和图片解码方面的内容。。。:loveliness:

页: [1]
查看完整版本: 了解我们的GPS


Powered by Discuz! Archiver 5.5.0  © 2001-2006 Comsenz Inc.