GPS采集设备命令

经纬度简介

      经度,具体来说就是地球上一个地点距离一根被称为本初子午线的南北方向走线以东或以西的度数。按国际规定英国首都伦敦格林尼治天文台原址的那一条经线定为0°经线,从0°经线算起,向东、向西各分作180°,以东的180°属于东经,用“E”作代号,以西的180°属于西经,用“W”作代号。东经180°和西经的180°重合在一条经线上,那就是180°经线。除0°和180°经线外,其余经线都能准确区分是东经度还是西经度。不同的经线具有不同的地方时。偏东的地方时要早,偏西的地方时要迟。每15个经度便相差一个小时。

      纬度,其数值在0—90度之间。位于赤道以北的点的纬度叫北纬,记为N;位于赤道以南的点的纬度称南纬,记为S。

       一条经线的长度大约20000千米,每1°经度地表面的实地长度大约就是111千米。 纬线的长度不相等,赤道是最长的纬线圈,从赤道向两极纬线长度减小。每一条纬线都划分为360个经度,因此每1°经度地表面的实地距离不相等。在赤道处1°经度地表面的实地距离最大,由赤道向两极缩小。

       在经线上,纬度每差1度,实地距离大约为111千米(标准经度距离:111.31955km);每差1分,实地距离大约为1851.8m,每差1秒,实地距离大约为30.8m.

       在纬线上,经度每差1度,实际距离为111×cosθ千米。

     (其中θ表示该纬线的纬度,在不同纬线上,经度每差1度的实际距离是不相等的)。

       从理论上讲,所有的经线长度都相等,无论沿那条经线到南北极的距离都相等。地球上的纬度以赤道为界,向南向北各划分出90个纬度,全球总共划分为180个纬度。

格林威治标准时间(GMT)

地区:英国 皇家格林尼治天文台

时区:UTC/GMT 0 (零时区)

北京时差:现在格林威治时间比北京时间晚8小时,例如:北京时间=UTC+8h=GMT+8h。

格林威治位于泰晤士河南岸,与北岸城镇通隧道和公路。1423年格洛斯特公爵亨天雷围建了格林尼治公园,在河畔山丘建了镃望塔,后又建造了格林威治皇家天文台。因为本初子午线被定义在通过那里的经线。格林尼治天文台负责每隔一小时向全世界发放调时信息,由于地球每天的自转是有些不规则的,而且正在缓慢减速,因此格林威治平时基于天文观测本身的缺陷,已经被原子钟报时的世界协调时间(UTC)所取代。

协调世界时(UTC)

又称世界统一时间、世界标准时间、国际协调时间、世界协调时间,UTC协调世界时即格林威治平太阳时间,是指格林威治所在地的标准时间,也是表示地球自转速率的一种形式,UTC基于国际原子时间,通过不规则的加入闰秒来抵消地球自转变慢的影响,是世界上调节时钟和时间的主要时间标准

GMT(Greenwish Mean Time 格林威治平时),这是UTC的民间名称。GMT=UTC。


接收机实现的novatel协议说明

1.1 log指令

//NMEA语句

log com1 gpgga ontime X(X = 0.1 0.2 0.5 1 2 5…)

$GPGGA,015902.00,3725.6915,N,11842.0212,E,1,05,1.9,12.09,M,-1.50,M,,*4A

字段 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=不可用(FIX NOT valid),1=单点定位(GPS FIX), 2=差分定位(DGPS),3=无效 PPS,4=实时差分定位(RTK FIX), 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:校验值

log com1 gpgll ontime X

$GPGLL,4250.5589,S,14718.5084,E,092204.999,A*2D
字段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:校验值

log com1 gpgsa ontime X

$GPGSA,A,3,01,20,19,13,,,,,,,,,40.4,24.4,32.2*0A
字段0:$GPGSA,语句ID,表明该语句为GPS DOP and Active Satellites(GSA)当前卫星信息
字段1:定位模式,A=自动2D/3D,M=手动2D/3D
字段2:定位类型,1=未定位,2=2D定位,3=3D定位
字段3:PRN码(伪随机噪声码),第1信道正在使用的卫星PRN码编号(00)(前导位数不足则补0)
字段4:PRN码(伪随机噪声码),第2信道正在使用的卫星PRN码编号(00)(前导位数不足则补0)
字段5:PRN码(伪随机噪声码),第3信道正在使用的卫星PRN码编号(00)(前导位数不足则补0)
字段6:PRN码(伪随机噪声码),第4信道正在使用的卫星PRN码编号(00)(前导位数不足则补0)
字段7:PRN码(伪随机噪声码),第5信道正在使用的卫星PRN码编号(00)(前导位数不足则补0)
字段8:PRN码(伪随机噪声码),第6信道正在使用的卫星PRN码编号(00)(前导位数不足则补0)
字段9:PRN码(伪随机噪声码),第7信道正在使用的卫星PRN码编号(00)(前导位数不足则补0)
字段10:PRN码(伪随机噪声码),第8信道正在使用的卫星PRN码编号(00)(前导位数不足则补0)
字段11:PRN码(伪随机噪声码),第9信道正在使用的卫星PRN码编号(00)(前导位数不足则补0)
字段12:PRN码(伪随机噪声码),第10信道正在使用的卫星PRN码编号(00)(前导位数不足则补0)
字段13:PRN码(伪随机噪声码),第11信道正在使用的卫星PRN码编号(00)(前导位数不足则补0)
字段14:PRN码(伪随机噪声码),第12信道正在使用的卫星PRN码编号(00)(前导位数不足则补0)
字段15:PDOP综合位置精度因子(0.5 - 99.9)
字段16:HDOP水平精度因子(0.5 - 99.9)
字段17:VDOP垂直精度因子(0.5 - 99.9)
字段18:校验值

log com1 gpgst ontime X

log com1 gpgsv ontime X

$GPGSV,3,1,10,20,78,331,45,01,59,235,47,22,41,069,,13,32,252,45*70
字段0:$GPGSV,语句ID,表明该语句为GPS Satellites in View(GSV)可见卫星信息
字段1:本次GSV语句的总数目(1 - 3)
字段2:本条GSV语句是本次GSV语句的第几条(1 - 3)
字段3:当前可见卫星总数(00 - 12)(前导位数不足则补0)
字段4:PRN 码(伪随机噪声码)(01 - 32)(前导位数不足则补0)
字段5:卫星仰角(00 - 90)度(前导位数不足则补0)
字段6:卫星方位角(00 - 359)度(前导位数不足则补0)
字段7:信噪比(00-99)dbHz
字段8:PRN 码(伪随机噪声码)(01 - 32)(前导位数不足则补0)
字段9:卫星仰角(00 - 90)度(前导位数不足则补0)
字段10:卫星方位角(00 - 359)度(前导位数不足则补0)
字段11:信噪比(00-99)dbHz
字段12:PRN 码(伪随机噪声码)(01 - 32)(前导位数不足则补0)
字段13:卫星仰角(00 - 90)度(前导位数不足则补0)
字段14:卫星方位角(00 - 359)度(前导位数不足则补0)
字段15:信噪比(00-99)dbHz
字段16:校验值

log com1 gphdt ontime X

log com1 gprmc ontime X

$GPRMC,022442.00,A,3725.6947016,N,11842.0213880,E,0.114,148.4,100698,0. 0,E,A*3A

字段 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(节,海里每小时 1 节等于每小时 1 海里,也就是每小时行驶 1.852千米(公里))

字段 8:方位角,度

字段 9:UTC 日期,DDMMYY 格式 (日、月、年)

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

字段 11:磁偏角方向,E=东 W=西

字段 12:校验值

log com1 gpvtg ontime X

$GPVTG,89.68,T,,M,0.00,N,0.0,K*5F
字段0:$GPVTG,语句ID,表明该语句为Track Made Good and Ground Speed(VTG)地面速度信息
字段1:运动角度,000 - 359,(前导位数不足则补0)
字段2:T=真北参照系
字段3:运动角度,000 - 359,(前导位数不足则补0)
字段4:M=磁北参照系
字段5:水平运动速度(0.00)(前导位数不足则补0)
字段6:N=节,Knots
字段7:水平运动速度(0.00)(前导位数不足则补0)
字段8:K=公里/时,km/h
字段9:校验值

GPSNMEA0183协议中的GGA、GLL、GSA、GSV、RMC、VTG、ZDA_北斗GPS导航_新浪博客

log com1 gpzda ontime X

$GPZDA,<1>,<2>,<3>,<4>,<5>*hh
<1> UTC时间,hhmmss(时分秒)格式
<2> UTC日期,日
<3> UTC日期,月
<4> UTC日期,年
<5>时区

// 二进制数据

log com1 bestposb ontime X

log com1 bestxyzb ontime X

log com1 timeb ontime X

log com1 refstationb ontime X

log com1 refstationb onchanged

log com1 rangecmpb ontime X

log com1 rangeb ontime X

频率为5Hz,需要NovAtel Convert软件转成Rinex格式数据。这种格式输出占用存储空间小,方便有限波特率下的串口输出。

log com1 psrdopb ontime X

log com1 psrposb ontime X

log com1 satvisb ontime X

// ASCII码格式数据

log rangea ontime 0.2

5hz。能够直观看到数据,不需要解析,但是一次数据量大,串口传不过来的话会丢数。

  #RANGEA,COM1,0,68.5,FINESTEERING,961,283720.000,00000000,5103,3642; 14, 22,0,23717791.210,0.064,-124637862.195665,0.012,2005.867,44.9,298.980,18109c04, 22,0,23717797.097,0.600,-97120398.286810,0.056,1563.012,25.6,293.460,11309c0b, 32,0,20481805.368,0.027,-114574071.216334,0.007,-365.078,52.6,1440.050,08109c84, 32,0,20481806.575,0.036,-89297863.506825,0.007,-284.480,50.1,1424.360,01309c8b, 12,0,23771439.045,0.127,-124919717.172560,0.013,-3452.766,43.7,45.470,18109ca4, 12,0,23771436.511,0.324,-97340061.981315,0.019,-2690.465,35.6,45.480,11309cab,25,0,21127151.343,0.089,-111023925.222644,0.016,-1733.215,42.1,888.070,18109ce4, 25,0,21127153.728,0.117,-86512157.302906,0.019,-1350.559,39.8,888.080,11309ceb, 26,0,23093108.734,0.115,-121355119.424984,0.022,3477.047,39.9,175.590,18109d64, 26,0,23093112.558,0.284,-94562418.771419,0.026,2709.387,32.0,168.940,11309d6b, 31,0,20795104.834,0.033,-116220473.147846,0.006,855.531,50.6,1438.974,18109d84, 31,0,20795103.425,0.053,-90580761.773172,0.006,666.648,46.6,1425.900,11309d8b, 14,0,20697085.011,0.040,-115705378.147919,0.007,1156.406,49.0,1450.450,18109da4, 14,0,20697084.251,0.045,-90179390.523722,0.007,901.098,48.1,1437.900,11309dab*7b0a6ebf 4

字段 0:数据头 字段 1:L1 频段跟踪观察到的信息总数

字段 2:GPS 卫星 PRN 数

字段 3:保留位 0

字段 4:伪距测量(M)

字段 5:伪距测量标准偏差(M)

字段 6:循环载波相位(累积多普勒范围)

字段 7:估计的循环载波相位偏差

字段 8:瞬时载波多普勒频率(Hz)

字段 9:C/N0 载波噪声密度比,C/N 0 = 10[log 10 (S/N 0 )] (dB-Hz)

字段 10:连续跟踪的秒数(无周期滑动)

字段 11:跟踪状态(如图 1、2、3)

字段 12:校验值:GPS接收机常用命令 - 百度文库

log com1 bestvela ontime X

log com1 headinga ontime X

log com1 comconfiga ontime X

log com1 comconfiga once

log com1 loglista ontime X

log com1 loglista once

log com1 versiona ontime X

log com1 versiona once

1.2 设置串口波特率

com com1 X (X = 9600 19200 38400 115200)

一般使用9600.

1.3 请求卫星星历指令

命令示例:

log com1 ionutcb onchanged/onnew              //GPS电离层和UTC参数

log com1 rawephemb onchanged/onnew      //GPS星历

log com1 gpsephemb onchanged/onnew      //GPS星历

log com1 bdsephemerisb onchanged/onnew //BD2星历

log com1 gloephemerisb onchanged/onnew  //GLONASS星历

log com1 ionutcb ontime 60                           //GPS电离层和UTC参数

log com1 rawephemb ontime 60                    //GPS星历

log com1 gpsephemb ontime 60                    //GPS星历

log com1 bdsephemerisb ontime 60              //BD2星历

log com1 gloephemerisb ontime 60               //GLONASS星历

1.4 设置基准站,并发送RTCM3格式差分数据

fix position latitude longitude height             //设置基准站坐标

上述命令中,纬度和经度的单位是度,高程的单位是米

log com2 rtcm1004 ontime 1 //GPS差分数据

log com2 rtcm1104 ontime 1 //BD2差分数据

log com2 rtcm1006 ontime 1 //基准站信息

1.5 设置移动站,并接收RTCM3格式差分数据

interfacemode com2 rtcmv3 novatel

1.6 关闭串口输出指令

unlog—关闭指定输出

例如:unlog com1 bestposb

unlogall—关闭当前串口全部输出

例如:

unlogall COM1                     //串口1所有指令的结束

unlogall                                //所有串口指令的结束

1.7 保存接收机配置和串口输出等

saveconfig

1.8 清除保存的接收机配置和串口输出等

freset command

1.9 设置卫星遮蔽角

ecutoff angle// angle的单位是度

例如:设置卫星遮蔽角为10度:ecutoff 10.0

1.10 接收机复位重启

reset

1.11 关闭/开启卫星系统

关闭卫星系统:lockoutsystem 卫星系统

开启卫星系统:unlockoutsystem 卫星系统

上述卫星系统参见表1。

开启全部卫星系统:unlockout all

关闭GLONASS卫星系统:lockoutsystem glonass

开启BD2卫星系统:unlockoutsystem compass

关闭/开启卫星系统:assignall 卫星系统控制参数

assignall 支持的卫星系统参见表2,控制参数参见表3。

 命令示例:

关闭GLONASS卫星系统:

assignall glonass idle

开启BD2卫星系统:

assignall compass active

开启GPS卫星系统:

assignall gps active

1.12.板卡记录操作

设置指令示例如下:
LOG FILE RANGEB ONTIME 1             //输出原始数据记录在板卡
LOG FILE RAWEPHEMB ONTIME 1    //输出 GPS 原始星历记录在板卡
SAVECONFIG                                        //保存命令设置

LOG FILE OPEN XX.LOG                   //使用命令开始记录数据,数据会被记录到 XX.LOG 文件中

LOG FILE RANGEB ONTIME 1          //输出原始数据记录在板卡
LOG FILE RAWEPHEMB ONTIME 1  //输出 GPS 原始星历记录在板卡
SAVECONFIG                                     //保存命令设置

LOGFILE CLOSE                                 //使用命令停止记录数据

注意:    LOG DIRENT    命令可以查看板卡里面的存储文件

2、命令的一些说明

(1)上述命令不区分英文字母的大小写

(2)接收机的三个串口均可以接收上述命令

(3)上述命令中,当缺省com Id时,默认为当前串口。例如,通过接收机的串口1给接收机输入命令:log gpgga ontime 1 时,接收机的串口1会输出gpgga语句。

3、常用操作示例

3.1 实时RTK设置基准站

fix position latitude longitude height

纬度和经度的单位是度,高程的单位是米

log com2 rtcm1004 ontime 1

log com2 rtcm1104 ontime 1

log com2 rtcm1006 ontime 1

log com1 gpgga ontime 1

说明:上述操作中设置串口1输出gpgga语句,串口2输出差分数据。

3.2 实时RTK设置移动站

interfacemode com2 rtcmv3 novatel

log com1 gpgga ontime 1

说明:上述操作中设置串口1输出gpgga语句,串口2输出差分数据。

3.3 采集静态数据事后解算分析

log com1 rangecmpb ontime 1

log com1 ionutcb onchanged

log com1 rawephemb onchanged

log com1 bdsephemerisb onchanged

log com1 gloephemerisb onchanged

from:接收机实现的NovAtel协议说明


1. Log version 查看或输出接收机序列号和软件版本号

2. Log comconfig 查看或输出接收机串口设置

3. Log loglist 查看接收机输出的数据信息设置

4. Log rxstatus 查看接收机状态信息

5. Saveconfig 保存接收机设置

6. Com com1 9600 n 8 1 n off 设置接收机串口波特率9600

7. posave 0.01 取 0.01 小时的数据作平均值固定测站

8. Log bestposa ontime ?输出 GPS 天线的纬度、经度和高程等信息

9. Log GPGGA ontime ? 输出 GPS 通用 NMEA 语句信息 GGA

11.unlog GPGGA或unlog all  停止输出信息

12. Freset 清空接收机内存中所保存的所有设置和信息,使接收机恢复出厂设置

  • 6
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
python的GPS数据采集可以通过串口助手将GPS模组数据提取出来,并保存为gps.txt文档,放到python脚本目录下。然后可以编写程序提取坐标信息。可以使用以下代码进行坐标信息提取: ```python import math def create_float_value(tmpfloat): intPart = 0.0 fractPart = 0.0 fractPart, intPart = math.modf(tmpfloat) tempVal1 = int(intPart / 100) tempVal2 = int(intPart % 100) tempVal3 = tempVal2 + fractPart tempVal4 = tempVal3 / 60.0 tempVal5 = tempVal1 + tempVal4 return tempVal5 fp = open("gps.txt", 'r') lines = fp.readlines() longitude_list = [] latitude_list = [] for line in lines: if line[:6] == '$GNGLL': longitude_list.append(create_float_value(float(line.split(',')[3]))) latitude_list.append(create_float_value(float(line.split(',')[1]))) else: continue ``` 接下来,可以使用folium库将提取的WGS-84坐标直接带入使用,生成设备位置分布图。可以使用以下代码进行设备位置分布图的生成: ```python import folium map_info = folium.Map(location=[30.2813, 114.2352], zoom_start=12, control_scale=True) for longitude, latitude in zip(longitude_list, latitude_list): folium.Circle((latitude, longitude), radius=7, color='yellow', fill=True, fill_color='red', fill_opacity=0.7).add_to(map_info) lenth = len(longitude_list) for i in range(lenth): folium.Marker(location=[latitude_list[i], longitude_list[i]], popup='点', icon=folium.Icon(icon='cloud')).add_to(map_info) map_info.add_child(folium.LatLngPopup()) map_info.save('gps.html') ``` 这样就可以将设备位置分布图保存为gps.html文件。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值