Gps协议解析
Gps协议解析

GPS卫星定位接收器的NMEA协议解析GPS接收机只要处于工作状态就会源源不断地把接收并计算出的GPS导航定位信息通过串口传送到计算机中。
前面的代码只负责从串口接收数据并将其放置于缓存,在没有进一步处理之前缓存中是一长串字节流,这些信息在没有经过分类提取之前是无法加以利用的。
因此,必须通过程序将各个字段的信息从缓存字节流中提取出来,将其转化成有实际意义的,可供高层决策使用的定位信息数据。
同其他通讯协议类似,对GPS进行信息提取必须首先明确其帧结构,然后才能根据其结构完成对各定位信息的提取。
对于本文所使用的GARMIN GPS天线板,其发送到计算机的数据主要由帧头、帧尾和帧内数据组成,根据数据帧的不同,帧头也不相同,主要有"$GPGGA"、"$GPGSA"、"$ GPGSV"以及"$GPRMC"等。
这些帧头标识了后续帧内数据的组成结构,各帧均以回车符和换行符作为帧尾标识一帧的结束。
对于通常的情况,我们所关心的定位数据如经纬度、速度、时间等均可以从"$GPRMC"帧中获取得到,该帧的结构及各字段释义如下:$GPRMC,<1>,<2>,<3>,<4>,<5>,<6>,<7>,<8>,<9>,<10>,<11>*hh<1> 当前位置的格林尼治时间,格式为hhmmss<2> 状态, A 为有效位置, V为非有效接收警告,即当前天线视野上方的卫星个数少于3颗。
<3> 纬度, 格式为ddmm.mmmm<4> 标明南北半球, N 为北半球、S为南半球<5> 径度,格式为dddmm.mmmm<6> 标明东西半球,E为东半球、W为西半球<7> 地面上的速度,范围为0.0到999.9<8> 方位角,范围为000.0到 359.9 度<9> 日期, 格式为ddmmyy<10> 地磁变化,从000.0到 180.0 度<11> 地磁变化方向,为E 或 W至于其他几种帧格式,除了特殊用途外,平时并不常用,虽然接收机也在源源不断地向主机发送各种数据帧,但在处理时一般先通过对帧头的判断而只对"$GPRMC"帧进行数据的提取处理。
GPS协议详解

GPS协议详解协议名称:GPS协议详解一、引言GPS(全球定位系统)协议是一种用于定位和导航的协议,通过卫星信号来确定地理位置和时间信息。
本协议旨在详细介绍GPS协议的工作原理、数据格式和通信流程,以便读者全面了解GPS技术。
二、协议概述GPS协议是一种规定了GPS设备与接收器之间通信方式和数据格式的协议。
它定义了数据的传输方式、数据内容以及数据的解析方法,确保GPS设备能够准确地获取卫星信号并解析出位置和时间信息。
三、GPS协议的工作原理1. GPS信号接收:GPS设备通过接收卫星发射的无线信号来获取定位信息。
卫星信号中包含有关卫星位置、时间、纠偏等信息。
2. 数据解析:GPS设备将接收到的信号解析成可用的数据。
解析过程包括解析卫星信号、计算卫星位置、计算接收器位置等。
3. 数据传输:GPS设备将解析后的数据传输给接收器。
数据传输方式可以是串口、USB、无线等。
4. 数据处理:接收器接收到GPS设备传输的数据后,进行进一步的处理,包括数据过滤、纠正、计算等。
5. 数据输出:接收器将处理后的数据输出给用户,通常以文本、数字或图形的形式呈现。
四、GPS协议的数据格式1. NMEA 0183协议:NMEA 0183是一种常用的GPS数据格式,它定义了一系列的语句(Sentence)来传输GPS数据。
常见的语句包括GGA(定位信息)、RMC(推荐定位信息)和VTG(地面速度信息)等。
2. RTCM协议:RTCM是一种用于差分GPS定位的协议,它定义了一系列的差分数据格式,用于提高GPS定位的精度。
3. SiRF协议:SiRF是一种常用的GPS芯片厂商,它定义了一种特定的数据格式,用于与其GPS芯片进行通信。
五、GPS协议的通信流程1. 初始化:接收器与GPS设备建立通信连接,并发送初始化命令,包括波特率、数据格式等。
2. 数据请求:接收器向GPS设备发送数据请求命令,要求获取特定的GPS数据。
3. 数据传输:GPS设备将请求的数据通过指定的通信方式传输给接收器。
GPS协议详解

GPS协议详解协议名称:GPS协议详解一、引言GPS(全球定位系统)是一种卫星导航系统,通过一组卫星和接收器,提供全球范围内的位置和时间信息。
本协议旨在详细解释GPS协议的相关内容,包括协议的基本原理、数据格式和通信流程等。
二、协议基本原理1. GPS系统由一组卫星、地面控制站和用户设备组成。
卫星以地球为中心的轨道上运行,地面控制站负责监控卫星状态和传输导航信息,用户设备接收卫星信号并计算自身位置。
2. GPS协议采用卫星发射的无线电信号进行通信。
卫星发送导航信息的广播信号,用户设备通过接收和解码信号来获取位置信息。
3. GPS协议使用特定的数据格式来传输导航信息。
常见的数据格式包括NMEA(National Marine Electronics Association)和RTCM(Radio Technical Commission for Maritime Services)等。
三、数据格式1. NMEA数据格式NMEA数据格式是一种广泛应用于GPS设备的数据格式,常用于航海、航空和汽车导航系统等。
其基本格式为以"$"符号开头,以回车换行符"\r\n"结束的语句。
示例:$GPGGA,123519,4807.038,N,01131.000,E,1,08,0.9,545.4,M,46.9,M,,*472. RTCM数据格式RTCM数据格式主要用于差分GPS(DGPS)系统,通过提供卫星信号的误差校正信息,提高定位精度。
RTCM数据格式通常以二进制形式传输,并包含导航信息、观测数据和差分数据等。
示例:RTCM 3.0, 1005, 123456, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,。
GPS协议详解

GPS协议详解协议名称:GPS协议详解一、引言GPS(全球定位系统)协议是一种用于定位和导航的协议,通过卫星和接收器之间的通信,提供准确的地理位置信息。
本协议旨在详细介绍GPS协议的工作原理、数据格式和通信流程。
二、工作原理1. GPS系统由24颗卫星组成,这些卫星围绕地球轨道运行,每颗卫星都具有精确的时钟和位置信息。
2. 接收器通过接收来自至少4颗卫星的信号,并计算信号传播的时间差来确定其位置。
3. 接收器通过与卫星的通信,获取卫星的位置和时钟信息,以便更准确地计算位置。
4. GPS协议定义了接收器与卫星之间的通信规则和数据格式。
三、数据格式1. NMEA 0183格式:最常用的GPS数据格式,包括位置、速度、时间等信息。
每条NMEA消息以"$"开始,以"\r\n"结束。
2. RTCM SC-104格式:用于差分GPS,提供更高的精度和可靠性。
包括基准站和移动站之间的数据交换。
3. SiRF二进制格式:用于SiRF接收器,提供更多的数据和控制选项。
四、通信流程1. 接收器启动,并搜索可见的卫星信号。
2. 接收器与卫星建立通信连接,获取卫星的位置和时钟信息。
3. 接收器计算自身的位置,速度和时间,并将数据以NMEA格式发送给外部设备。
4. 外部设备接收到GPS数据后,可以进行进一步的处理和应用,如导航、地图显示等。
五、协议规范1. 接收器应符合NMEA 0183、RTCM SC-104或SiRF二进制格式的规范,以确保数据的兼容性和可靠性。
2. 数据传输应使用可靠的通信协议,如串口、USB或无线网络等。
3. 接收器应具备良好的抗干扰能力,以确保在复杂的环境中仍能正常工作。
4. 接收器应提供完善的错误处理和故障诊断机制,以便及时发现和解决问题。
5. GPS数据的解析和处理应遵循相应的算法和规范,以确保数据的准确性和可靠性。
六、安全性考虑1. GPS协议的数据传输应采用加密和身份验证等安全措施,以防止数据被篡改或伪造。
GPS协议详解

GPS协议详解协议名称:GPS协议详解一、引言GPS(全球定位系统)是一种基于卫星导航的定位技术,广泛应用于交通运输、航空航海、地理测绘等领域。
为了确保GPS系统的正常运行和数据的准确性,制定本协议旨在规范GPS设备的使用和数据传输。
二、定义1. GPS设备:指用于接收和解码GPS卫星信号,并计算位置、速度和时间等信息的设备。
2. GPS数据:指GPS设备通过卫星信号接收到的位置、速度、时间等信息。
三、协议内容1. GPS设备要求a. GPS设备应具备接收和解码GPS卫星信号的功能。
b. GPS设备应具备高精度定位能力,定位误差不超过3米。
c. GPS设备应具备快速定位能力,定位时间不超过10秒。
d. GPS设备应具备稳定性和可靠性,能在各种天气条件下正常工作。
e. GPS设备应具备数据存储功能,能够记录历史轨迹和相关参数。
f. GPS设备应具备数据传输功能,能够将数据传输到指定的服务器或终端设备。
2. GPS数据传输a. GPS数据传输方式可以选择有线传输或无线传输,具体根据应用场景和需求确定。
b. 有线传输可以通过USB、RS232等接口实现,数据传输速率应满足实时性要求。
c. 无线传输可以通过GPRS、3G、4G、5G等通信网络实现,数据传输稳定可靠。
d. GPS数据传输应采用加密算法进行数据加密,确保数据安全性。
e. GPS数据传输应具备数据压缩和优化功能,提高传输效率和节省网络带宽。
3. GPS数据格式a. GPS数据应采用标准的数据格式,如NMEA 0183、RTCM等。
b. GPS数据格式应包括位置信息(经度、纬度、海拔)、速度、时间等基本信息。
c. GPS数据格式应具备扩展性,允许添加自定义字段以满足特定需求。
d. GPS数据格式应具备数据校验功能,确保数据传输的完整性和准确性。
4. GPS数据处理a. GPS数据接收端应具备数据解码和处理功能,将接收到的数据转化为可读性强的格式。
GPGGA协议解析

GPGGA协议解析GPGGA协议是Global Positioning System (GPS) 接收器输出的一种NMEA(National Marine Electronics Association)协议。
它包含了GPS接收器获取到的位置、时间、定位质量等相关信息。
GPGGA协议的解析是GPS数据处理中非常重要的一步,下面将详细介绍GPGGA协议的解析过程。
$GPGGA,hhmmss.sss,llll.ll,a,yyyyy.yy,a,x,xx,x.x,x.x,M,x.x,M, x.x,xxxx*hh<CR><LF>解析过程中,第一步是确定协议格式的正确性。
GPGGA协议的首字母必须是'$',最后两个字符必须是回车符(<CR>)和换行符(<LF>)。
在确定格式正确后,可以开始解析协议内容。
首先,我们需要提取协议中的每个字段。
以逗号(,)作为分隔符,将协议内容分割成多个字段。
第一个字段是协议的名称,通常是$GPGGA。
第二个字段是UTC时间,格式为hhmmss.sss。
第三个字段是纬度信息,格式为llll.ll。
第四个字段是纬度半球(N or S)。
第五个字段是经度信息,格式为yyyyy.yy。
第六个字段是经度半球(E or W)。
第七个字段表示定位质量指示符,可以为0-8的数字。
第八个字段是卫星数量。
第九个字段是水平精度因子。
第十个字段是天线离海平面的高度,单位为米。
第十一个字段是大地水准面相对于 WGS84 椭球面的高度偏差,单位为米。
第十二个字段是差分GPS数据期限,单位为秒。
最后一个字段是差错校验。
将每个字段提取出来后,可以进一步对其进行解析和处理。
首先,需要将UTC时间字段中的时、分、秒提取出来,并转换为相应的数字格式。
纬度和经度字段中的度数也需要进行提取和转换。
定位质量指示符用于判断GPS定位的质量,一般为0代表无效定位,1代表GPS定位解,2代表DGPS定位解。
GPS信息原型及解析(常用NMEA-0183语句字段定义解释)

NMEA协议是为了在不同的GPS(全球定位系统)导航设备中建立统一的BTCM(海事无线电技术委员会)标准,由美国国家海洋电子协会(NMEA-The National Marine Electronics Associa-tion)制定的一套通讯协议。
GPS接收机根据NMEA-0183协议的标准规范,将位置、速度等信息通过串口传送到PC机、PDA 等设备。
NMEA-0183协议是GPS接收机应当遵守的标准协议,也是目前GPS接收机上使用最广泛的协议,大多数常见的GPS接收机、GPS数据处理软件、导航软件都遵守或者至少兼容这个协议。
不过,也有少数厂商的设备使用自行约定的协议比如GARMIN的GPS设备(部分GARMIN设备也可以输出兼容NMEA-0183协议的数据)。
软件方面,我们熟知的Google Earth目前也不支持NMEA-0183协议,但Google Earth已经声明会尽快实现对NMEA-0183协议的兼容。
呵呵,除非你确实强壮到可以和工业标准分庭抗礼,否则你就得服从工业标准。
NMEA-0183协议定义的语句非常多,但是常用的或者说兼容性最广的语句只有$GPGGA、$GPGSA、$GPGSV、$GPRMC、$GPVTG、$GPGLL等。
下面给出这些常用NMEA-0183语句的字段定义解释。
$GPGGA例:$GPGGA,092204.999,4250.5589,S,14718.5084,E,1,04,24.4,19.7,M,,,,0000*1 F字段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=未定位,1=非差分定位,2=差分定位,3=无效PPS,6=正在估算字段7:正在使用的卫星数量(00 - 12)(前导位数不足则补0)字段8:HDOP水平精度因子(0.5 - 99.9)字段9:海拔高度(-9999.9 - 99999.9)字段10:地球椭球面相对大地水准面的高度字段11:差分时间(从最近一次接收到差分信号开始的秒数,如果不是差分定位将为空)字段12:差分站ID号0000 - 1023(前导位数不足则补0,如果不是差分定位将为空)字段13:校验值$GPGSA例:$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:校验值$GPGSV例:$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:校验值$GPRMC例:$GPRMC,024813.640,A,3158.4608,N,11848.3737,E,10.05,324.27,150706,,,A* 50字段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字段8:方位角,度字段9:UTC日期,DDMMYY格式字段10:磁偏角,(000 - 180)度(前导位数不足则补0)字段11:磁偏角方向,E=东W=西字段16:校验值$GPVTG例:$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:校验值$GPGLL例:$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:校验值1、GPS DOP and Active Satellites(GSA)当前卫星信息$GPGSA,<1>,<2>,<3>,<3>,<3>,<3>,<3>,<3>,<3>,<3>,<3>,<3>,<3>,<3>,<4>,<5>, <6>*hh<CR><LF><1> 模式,M=手动,A=自动<2> 定位类型,1=没有定位,2=2D定位,3=3D定位<3> PRN码(伪随机噪声码),正在用于解算位置的卫星号(01~32,前面的0也将被传输)。
2024年gps协议书gps协议docx(二篇)

gps协议书gps协议docx(二)GPS协议书一、引言GPS(全球定位系统)是一种全球性定位系统,它通过将卫星定位系统与地面控制站相结合,可以准确地确定全球任何地点的位置和时间。
本协议书的目的是明确GPS协议的基本要求与规定,以确保GPS技术的稳定运行和有效利用。
二、协议目的本协议旨在确保GPS的正常运作,保护用户隐私,并规范各方的权利和义务。
三、协议范围本协议适用于使用GPS技术的各个领域,包括但不限于交通运输、物流、导航、军事等。
四、协议要求1. 数据采集与存储要求a. GPS设备应能准确采集到卫星定位信号,并将其转化为可供使用的坐标数据。
b. GPS设备应具备合理的存储容量,以保存采集到的坐标数据。
c. GPS设备的存储安全性与稳定性应得到保障,防止数据丢失或泄露。
2. 数据传输与共享要求a. GPS设备应支持可靠的数据传输方式,包括但不限于有线传输(如USB、RS232)和无线传输(如无线局域网、蓝牙)。
b. GPS数据的传输应符合相关法律法规的规定,并且用户的隐私权应得到保护。
c. GPS数据共享应在明确授权的情况下进行,并且应符合相关法律法规的规定。
3. 设备安装与维护要求a. GPS设备的安装应符合相关法律法规和技术标准的要求。
b. GPS设备的维护应及时进行,确保设备的正常运作。
c. GPS设备的维护人员应具备相应的专业知识和技能,能够熟练操作和维护设备。
4. 用户权益与义务a. 用户拥有自己的GPS坐标数据,并有权决定是否分享或公开此数据。
b. 用户应合法使用GPS设备,不得利用GPS技术从事任何违法违规行为。
c. 用户应配合相关机构对GPS设备进行定位、监控或调查,以维护公共利益和社会安全。
5. 违约责任与争议解决a. 如发生协议违约行为,违约方应承担相应的法律责任。
b. 双方在协议履行过程中发生争议,应优先通过友好协商解决,如协商无果,可提交仲裁机构进行裁决。
六、其他条款本协议要求各方严格遵守,如有违反,将追究相应责任。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
GPS卫星定位接收器的NMEA协议解析GPS接收机只要处于工作状态就会源源不断地把接收并计算出的GPS导航定位信息通过串口传送到计算机中。
前面的代码只负责从串口接收数据并将其放置于缓存,在没有进一步处理之前缓存中是一长串字节流,这些信息在没有经过分类提取之前是无法加以利用的。
因此,必须通过程序将各个字段的信息从缓存字节流中提取出来,将其转化成有实际意义的,可供高层决策使用的定位信息数据。
同其他通讯协议类似,对GPS进行信息提取必须首先明确其帧结构,然后才能根据其结构完成对各定位信息的提取。
对于本文所使用的GARMIN GPS 天线板,其发送到计算机的数据主要由帧头、帧尾和帧内数据组成,根据数据帧的不同,帧头也不相同,主要有"$GPGGA"、"$GPGSA"、"$ GPGSV"以及"$GPRMC"等。
这些帧头标识了后续帧内数据的组成结构,各帧均以回车符和换行符作为帧尾标识一帧的结束。
对于通常的情况,我们所关心的定位数据如经纬度、速度、时间等均可以从"$GPRMC"帧中获取得到,该帧的结构及各字段释义如下:$GPRMC,<1>,<2>,<3>,<4>,<5>,<6>,<7>,<8>,<9>,<10>,<11>*hh<1> 当前位置的格林尼治时间,格式为hhmmss<2> 状态, A 为有效位置, V为非有效接收警告,即当前天线视野上方的卫星个数少于3颗。
<3> 纬度, 格式为ddmm.mmmm<4> 标明南北半球, N 为北半球、S为南半球<5> 径度,格式为dddmm.mmmm<6> 标明东西半球,E为东半球、W为西半球<7> 地面上的速度,范围为0.0到999.9<8> 方位角,范围为000.0到359.9 度<9> 日期, 格式为ddmmyy<10> 地磁变化,从000.0到180.0 度<11> 地磁变化方向,为E 或W至于其他几种帧格式,除了特殊用途外,平时并不常用,虽然接收机也在源源不断地向主机发送各种数据帧,但在处理时一般先通过对帧头的判断而只对"$GPRMC"帧进行数据的提取处理。
如果情况特殊,需要从其他帧获取数据,处理方法与之也是完全类似的。
由于帧内各数据段由逗号分割,因此在处理缓存数据时一般是通过搜寻ASCII码"$"来判断是否是帧头,在对帧头的类别进行识别后再通过对所经历逗号个数的计数来判断出当前正在处理的是哪一种定位导航参数,并作出相应的处理。
附:NMEA0183常用协议格式说明: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><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.(检查位).2、GPS Satellites in View(GSV)可见卫星信息$GPGSV, <1>,<2>,<3>,<4>,<5>,<6>,<7>,?<4>,<5>,<6>,<7>,<8><CR><LF><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>项个别卫星会重复出现,每行最多有四颗卫星。
其余卫星信息会于次一行出现,若未使用,这些字段会空白。
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><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也将被传输,如果不是差分定位将为空)4、Recommended Minimum Specific GPS/TRANSIT Data(RMC)推荐定位信息$GPRMC,<1>,<2>,<3>,<4>,<5>,<6>,<7>,<8>,<9>,<10>,<11>,<12>*hh<CR><LF><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=数据无效)报文$GPGSA,A,1,,,,,,,,,,,,,,,*1E$GPGSV,3,1,12,23,89,179,,13,58,305,,16,56,075,,01,51,113,*7E $GPGSV,3,2,12,20,25,193,,07,24,259,,06,16,118,,03,13,136,*76 $GPGSV,3,3,12,10,13,322,,31,06,071,,02,03,317,,04,02,281,*71 $GPRMC,034323.718,V,,,,,,,240810,,,N*49$GPVTG,,T,,M,,N,,K,N*2C$GPGGA,034324.719,,,,,0,00,,,M,0.0,M,,0000*5B $GPGSA,A,1,,,,,,,,,,,,,,,*1E$GPRMC,034324.719,V,,,,,,,240810,,,N*4F$GPVTG,,T,,M,,N,,K,N*2C$GPGGA,034325.718,,,,,0,00,,,M,0.0,M,,0000*5B $GPGSA,A,1,,,,,,,,,,,,,,,*1E$GPRMC,034325.718,V,,,,,,,240810,,,N*4F$GPVTG,,T,,M,,N,,K,N*2C$GPGGA,034326.718,,,,,0,00,,,M,0.0,M,,0000*58 $GPGSA,A,1,,,,,,,,,,,,,,,*1E$GPRMC,034326.718,V,,,,,,,240810,,,N*4C$GPVTG,,T,,M,,N,,K,N*2C$GPGGA,034327.724,,,,,0,00,,,M,0.0,M,,0000*56 $GPGSA,A,1,,,,,,,,,,,,,,,*1E$GPRMC,034327.724,V,,,,,,,240810,,,N*42$GPVTG,,T,,M,,N,,K,N*2C$GPGGA,034328.718,,,,,0,00,,,M,0.0,M,,0000*56 $GPGSA,A,1,,,,,,,,,,,,,,,*1E$GPGSV,3,1,12,23,89,179,,13,58,305,,16,56,075,,01,51,113,*7E $GPGSV,3,2,12,20,25,193,,07,24,259,,06,16,118,,03,13,136,*76 $GPGSV,3,3,12,10,13,322,,31,06,071,,02,03,317,,04,02,281,*71 $GPRMC,034328.718,V,,,,,,,240810,,,N*42$GPVTG,,T,,M,,N,,K,N*2C$GPGGA,034329.724,,,,,0,00,,,M,0.0,M,,0000*58 $GPGSA,A,1,,,,,,,,,,,,,,,*1E$GPRMC,034329.724,V,,,,,,,240810,,,N*4C$GPVTG,,T,,M,,N,,K,N*2C$GPGGA,034330.718,,,,,0,00,,,M,0.0,M,,0000*5F $GPGSA,A,1,,,,,,,,,,,,,,,*1E$GPRMC,034330.718,V,,,,,,,240810,,,N*4B$GPVTG,,T,,M,,N,,K,N*2C$GPGGA,034331.718,,,,,0,00,,,M,0.0,M,,0000*5E $GPGSA,A,1,,,,,,,,,,,,,,,*1E$GPRMC,034331.718,V,,,,,,,240810,,,N*4A$GPVTG,,T,,M,,N,,K,N*2C$GPGGA,034417.726,,,,,0,00,,,M,0.0,M,,0000*50 $GPGSA,A,1,,,,,,,,,,,,,,,*1E$GPRMC,034417.726,V,,,,,,,240810,,,N*44$GPVTG,,T,,M,,N,,K,N*2C$GPGGA,034418.718,,,,,0,00,,,M,0.0,M,,0000*52 $GPGSA,A,1,,,,,,,,,,,,,,,*1E$GPGSV,3,1,12,23,89,179,,13,58,305,,16,56,075,,01,51,113,*7E $GPGSV,3,2,12,20,25,193,,07,24,259,,06,16,118,,03,13,136,*76 $GPGSV,3,3,12,10,13,322,,31,06,071,,02,03,317,,04,02,281,*71 $GPRMC,034418.718,V,,,,,,,240810,,,N*46$GPVTG,,T,,M,,N,,K,N*2C$GPGGA,034419.721,,,,,0,00,,,M,0.0,M,,0000*59 $GPGSA,A,1,,,,,,,,,,,,,,,*1E$GPRMC,034419.721,V,,,,,,,240810,,,N*4D$GPVTG,,T,,M,,N,,K,N*2C$GPGGA,034420.718,,,,,0,00,,,M,0.0,M,,0000*59 $GPGSA,A,1,,,,,,,,,,,,,,,*1E$GPRMC,034420.718,V,,,,,,,240810,,,N*4D$GPVTG,,T,,M,,N,,K,N*2C$GPGGA,034421.718,,,,,0,00,,,M,0.0,M,,0000*58 $GPGSA,A,1,,,,,,,,,,,,,,,*1E$GPRMC,034421.718,V,,,,,,,240810,,,N*4C$GPVTG,,T,,M,,N,,K,N*2C$GPGGA,034422.718,,,,,0,00,,,M,0.0,M,,0000*5B $GPGSA,A,1,,,,,,,,,,,,,,,*1E$GPRMC,034422.718,V,,,,,,,240810,,,N*4F$GPVTG,,T,,M,,N,,K,N*2C$GPGGA,034423.718,,,,,0,00,,,M,0.0,M,,0000*5A $GPGSA,A,1,,,,,,,,,,,,,,,*1E$GPGSV,3,1,12,23,89,179,,13,58,305,,16,56,075,,01,51,113,*7E $GPGSV,3,2,12,20,25,193,,07,24,259,,06,16,118,,03,13,136,*76 $GPGSV,3,3,12,10,13,322,,31,06,071,,02,03,317,,04,02,281,*71 $GPRMC,034423.718,V,,,,,,,240810,,,N*4E$GPVTG,,T,,M,,N,,K,N*2C$GPGGA,034424.727,,,,,0,00,,,M,0.0,M,,0000*51 $GPGSA,A,1,,,,,,,,,,,,,,,*1E$GPRMC,034424.727,V,,,,,,,240810,,,N*45$GPVTG,,T,,M,,N,,K,N*2C。