nema0183 java解析_NEMA 0183 语句解析

nema0183 java解析_NEMA 0183 语句解析一 NMEA0183 标准语句 GPS 常用语句 1 GlobalPositi GGA GPS 定位信息 GPGGA lt 1 gt lt 2 gt lt 3 gt lt 4 gt lt 5 gt lt 6 gt lt 7 gt lt 8 gt lt 9 gt M lt 10 gt M lt 11 gt lt

一、 NMEA0183标准语句(GPS常用语句)

1、 Global Positioning System Fix Data(GGA)GPS定位信息

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

<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也将被传输,如果不是差分定位将为空)

2、 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

<1> 模式,M=手动,A=自动

<2> 定位类型,1=没有定位,2=2D定位,3=3D定位

<3> PRN码(伪随机噪声码),正在用于解算位置的卫星号(01~32,前面的0也将被传输)。

<4> PDOP位置精度因子(0.5~99.9)

<5> HDOP水平精度因子(0.5~99.9)

<6> VDOP垂直精度因子(0.5~99.9)

3、 GPS Satellites in View(GSV)可见卫星信息$GPGSV,<1>,<2>,<3>,<4>,<5>,<6>,<7>,…<4>,<5>,<6>,<7>*hh

<1> GSV语句的总数

<2> 本句GSV的编号

<3> 可见卫星的总数(00~12,前面的0也将被传输)

<4> PRN码(伪随机噪声码)(01~32,前面的0也将被传输)

<5> 卫星仰角(00~90度,前面的0也将被传输)

<6> 卫星方位角(000~359度,前面的0也将被传输)

<7> 信噪比(00~99dB,没有跟踪到卫星时为空,前面的0也将被传输)

注:<4>,<5>,<6>,<7>信息将按照每颗卫星进行循环显示,每条GSV语句最多可以显示4颗卫星的信息。其他卫星信息将在下一序列的NMEA0183语句中输出。

4、 Recommended Minimum Specific GPS/TRANSIT Data(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=数据无效)

5、 Track Made Good and Ground Speed(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=数据无效)

6、 Geographic Position(GLL)定位地理信息

$GPGLL,<1>,<2>,<3>,<4>,<5>,<6>,<7>*hh

<1> 纬度ddmm.mmmm(度分)格式(前面的0也将被传输)

<2> 纬度半球N(北半球)或S(南半球)

<3> 经度dddmm.mmmm(度分)格式(前面的0也将被传输)

<4> 经度半球E(东经)或W(西经)

<5> UTC时间,hhmmss(时分秒)格式

<6> 定位状态,A=有效定位,V=无效定位

<7> 模式指示(仅NMEA0183 3.00版本输出,A=自主定位,D=差分,E=估算,N=数据无效)

7.  Data and time (ZDA) 时间和日期信息$GPZDA,<1>,<2>,<3>,<4>*hh

<1> UTC时间,hhmmss(时分秒)格式

<2> UTC日期,日

<3> UTC日期,月

<4> UTC日期,年

8.  Datum (DTM) 大地坐标系信息

$GPDTML,<1>,<2>,<3>,<4>,<5>,<6>,<7>,<8>*hh

<1>本地坐标系代码 W84

<2>坐标系子代码 空

<3>纬度偏移量

<4>纬度半球N(北半球)或S(南半球)

<5>经度偏移量

<6>经度半球E(东经)或W(西经)

<7>高度偏移量

<8>坐标系代码 W84

二、 GARMIN定义的语句1、 Estimated Error Information(PGRME)估计误差信息

$PGRME,<1>,M,<2>,M,<3>,M*hh

<1> HPE(水平估计误差),0.0~999.9米

<2> VPE(垂直估计误差),0.0~999.9米

<3> EPE(位置估计误差),0.0~999.9米

2、 GPS Fix Data Sentence(PGRMF)GPS定位信息$PGRMF,<1>,<2>,<3>,<4>,<5>,<6>,<7>,<8>,<9>,<10>,<11>,<12>,<13>,<14>,<15>*hh

<1> GPS周数(0~1023)

<2> GPS秒数(0~)

<3> UTC日期,ddmmyy(日月年)格式

<4> UTC时间,hhmmss(时分秒)格式

<5> GPS跳秒数

<6> 纬度ddmm.mmmm(度分)格式(前面的0也将被传输)

<7> 纬度半球N(北半球)或S(南半球)

<8> 经度dddmm.mmmm(度分)格式(前面的0也将被传输)

<9> 经度半球E(东经)或W(西经)

<10> 模式,M=手动,A=自动

<11> 定位类型,0=没有定位,1=2D定位,2=3D定位

<12> 地面速率(0~1851公里/小时)

<13> 地面航向(000~359度,以真北为参考基准)

<14> PDOP位置精度因子(0~9,四舍五入取整)

<15> TDOP时间精度因子(0~9,四舍五入取整)

3、 Map Datum(PGRMM)坐标系统信息$PGRMM,<1>*hh

<1> 当前使用的坐标系名称(数据长度可变,如“WGS 84”)

注:该信息在与MapSource进行实时连接的时候使用。

4、 Sensor Status Information(PGRMT)工作状态信息$PGRMT,<1>,<2>,<3>,<4>,<5>,<6>,<7>,<8>,<9>*hh

<1> 产品型号和软件版本(数据长度可变,如“GPS 15L/15H VER 2.05”)

<2> ROM校验测试,P=通过,F=失败

<3> 接收机不连续故障,P=通过,F=失败

<4> 存储的数据,R=保持,L=丢失

<5> 时钟的信息,R=保持,L=丢失

<6> 振荡器不连续漂移,P=通过,F=检测到过度漂移

<7> 数据不连续采集,C=正在采集,如果没有采集则为空

<8> GPS接收机温度,单位为摄氏度

<9> GPS接收机配置数据,R=保持,L=丢失

注:本语句每分钟发送一次,与所选择的波特率无关。

5、 3D velocity Information(PGRMV)三维速度信息$PGRMV,<1>,<2>,<3>*hh

<1> 东向速度,514.4~514.4米/秒

<2> 北向速度,514.4~514.4米/秒

<3> 上向速度,999.9~9999.9米/秒

6、 DGPS Beacon Information(PGRMB)信标差分信息$PGRMB,<1>,<2>,<3>,<4>,<5>,K,<6>,<7>,<8>*hh

<1> 信标站频率(0.0,283.5~325.0kHz,间隔为0.5kHz)

<2> 信标比特率(0,25,50,100或200bps)

<3> SNR信标信号信噪比(0~31)

<4> 信标数据质量(0~100)

<5> 与信标站的距离,单位为公里

<6> 信标接收机的通讯状态,0=检查接线,1=无信号,2=正在调谐,3=正在接收,4=正在扫描

<7> 差分源,R=RTCM,W=WAAS,N=非差分定位

<8> 差分状态,A=自动,W=仅为WAAS,R=仅为RTCM,N=不接收差分信号

三、TEXT文本格式说明:

区域描述:              长度:    注释:

———————– ——- ————————

句头起始符              1       始终为 ‘@’

———————– ——- ————————

/年                      2       UTC年的最后两位数字

| ———————– ——- ————————

| 月                      2       UTC月, “01”..”12″

T | ———————– ——- ————————

i | 日                      2       UTC日, “01”..”31″

m | ———————– ——- ————————

e | 时                      2       UTC时, “00”..”23″

| ———————– ——- ————————

| 分                      2       UTC分, “00”..”59″

| ———————– ——- ————————

/秒                      2       UTC秒, “00”..”59″

———————– ——- ————————

/纬度半球                1       ‘N’ 或 ‘S’

| ———————– ——- ————————

| 纬度坐标                7       WGS84坐标系统,坐标格式ddmmmmm,

|                                 在第4位数字后省略了一个小数点。

| ———————– ——- ————————

| 经度半球                1       ‘E’ 或 ‘W’

| ———————– ——- ————————

| 经度坐标                8       WGS84坐标系统,坐标格式dddmmmmm,

P |                                 在第5位数字后省略了一个小数点。

o | ———————– ——- ————————

s | 定位状态                1       ‘d’ 2维差分定位

i |                                 ‘D’ 3维差分定位

t |                                 ‘g’ 2维定位

i |                                 ‘G’ 3维定位

o |                                 ‘S’ 模拟状态

n |                                 ‘_’ 无效

| ———————– ——- ————————

| 水平定位误差            3       单位为“米”

| ———————– ——- ————————

| 高度符号                1       ‘+’ 或 ‘-‘

| ———————– ——- ————————

/高度                    5       海拔高,单位为“米”

———————– ——- ————————

/东/西速度方向          1       ‘E’ 或 ‘W’

| ———————– ——- ————————

| 东/西速度               4       单位是“米/秒”,在第三位后省略了一个小数点,

|                                 (“1234” = 123.4 m/s)

V | ———————– ——- ————————

e | 南/北 速度方向          1       ‘S’ 或 ‘N’

l |

o | ———————– ——- ————————

c | 南/北速度              4       单位是“米/秒”,在第三位后省略了一个小数点,

i |                                 (“1234” = 123.4 m/s)

t | ———————– ——- ————————

y | 垂直速度方向            1       ‘U’ (上) 或 ‘D’ (下)

| ———————– ——- ————————

| 垂直速度                4       单位是“米/秒”,在第二位后省略了一个小数点,

/                                (“1234” = 12.34 m/s)

———————– ——- ————————

句尾结束符              2        回车, ‘0x0D’, 和换行’0x0A’

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/229183.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月16日 下午5:17
下一篇 2026年3月16日 下午5:17


相关推荐

  • 安卓java模拟器怎么用_安卓java模拟器(安卓手机如何玩JAVA游戏以及JAVA软件的方法)…

    安卓java模拟器怎么用_安卓java模拟器(安卓手机如何玩JAVA游戏以及JAVA软件的方法)…首先最简单的方法就是 JAVA 模拟器 但是由于 JAVA 模拟器的兼容性并不是太好而导致部分 挺大部分的 机型无法使用 所以就有了第二个方法 那就是 PSP 模拟器 因为 PSP 上是有 JAVA 模拟器的 所以就可以通过模拟 PSP 后模拟 JAVA 是不是有点像绕口令 虽然复杂但是确实是一个有效的解决方法 然后就进入教程吧 以下内容下载会放在最后 第一个方法 java 模拟器版 JAVA 模拟器首先你需要下载 JAVA 模

    2026年3月16日
    2
  • Linux日志收集与分析项目教程_FilebeatLogstashELK整合

    Linux日志收集与分析项目教程_FilebeatLogstashELK整合

    2026年3月15日
    2
  • c++ priority queue_priority

    c++ priority queue_priority既然是队列那么先要包含头文件#include&lt;queue&gt;优先队列具有队列的所有特性,包括基本操作,只是在这基础上添加了内部的一个排序,它本质是一个堆实现的定义:priority_queue&lt;Type,Container,Functional&gt;Type就是数据类型,Container就是容器类型(Container必须是用数组实现的容器,比如vector,deque等等,但不能用

    2025年8月24日
    10
  • 手把手:1分钟把 Claude Code 迁到 DeepSeek V3.1,开箱即干

    手把手:1分钟把 Claude Code 迁到 DeepSeek V3.1,开箱即干

    2026年3月16日
    2
  • 【实战模拟】Kali Linux Vim命令大全 ——新手上路必备

    【实战模拟】Kali Linux Vim命令大全 ——新手上路必备新手上路 vim 编译器不会保存 不会退出 今天教大家如何使用 vim 编译器的指令 vim 编译器在使用是会在做左下角出现提示 通常插入表示的是可进行编辑 输入的意思 当你按下 Esc 键 就会取消编辑状态 但不会退出 你可以按着 shift 输出一个 然后输入 wq 1 txt 已经有 的不用在输入 w 表示保存为 q 表示退出 表示强制在里面遇到的任何情况都可以按 Esc 即退出编辑状态可以按下小写 i 即可进入插入模式 也就是编辑状态下面我把

    2026年3月20日
    2
  • leetcode-403. 青蛙过河(动态规划|记忆化搜索)[通俗易懂]

    leetcode-403. 青蛙过河(动态规划|记忆化搜索)[通俗易懂]一只青蛙想要过河。 假定河流被等分为若干个单元格,并且在每一个单元格内都有可能放有一块石子(也有可能没有)。 青蛙可以跳上石子,但是不可以跳入水中。给你石子的位置列表 stones(用单元格序号 升序 表示), 请判定青蛙能否成功过河(即能否在最后一步跳至最后一块石子上)。开始时, 青蛙默认已站在第一块石子上,并可以假定它第一步只能跳跃一个单位(即只能从单元格 1 跳至单元格 2 )。如果青蛙上一步跳跃了 k 个单位,那么它接下来的跳跃距离只能选择为 k – 1、k 或 k + 1 个单位。 另请注意

    2022年8月9日
    17

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号