【通信协议-RTCM】MSM语句(1) - 多信号GNSS观测数据消息格式

注释:
RTCM响应消息1020为GLONASS星历信息,暂不介绍,前公司暂未研发RTCM消息类型版本的DR/RTK模块,DR/RTK模块仅NMEA消息类型使用

注释:
公司使用的多信号语句类型为MSM4&MSM7,也应该是运用最广泛的语句类型,例如本人之前在公司开发的工具全是基于MSM7语句类型来进行的

1. 通用GNSS MSM描述

MSM Type Message Name No. of Bits (upper bound) NOTES
MSM1 紧凑型GNSS伪距 169+Nsat*(10+16*Nsig) 1353 for Nsat=16, Nsig=4 大多数GNSS信号的模1 ms伪距。 此消息中只应传输具有转向时钟的数据,该消息应在DF411(时钟转向指示器)中指示。 如果传输了多个GNSS的数据,并且这些GNSS的时钟之间的差异超过0.25毫秒(模1秒),则不应使用此消息类型。
MSM2 紧凑型GNSS伪距 169+Nsat*(10+28*Nsig) 2121 for Nsat=16, Nsig=4 大多数GNSS信号的模1 ms相位范围。 此消息中只应传输具有转向时钟的数据,该消息应在DF411(时钟转向指示器)中指示。 如果传输了多个GNSS的数据,并且这些GNSS的时钟之间的差异超过0.25毫秒(模1秒),则不应使用此消息类型。
MSM3 紧凑型GNSS伪距和相位距 169+Nsat*(10+43*Nsig) 3081 for Nsat=16, Nsig=4 大多数GNSS信号的模1 ms伪距和相位范围。 此消息中只应传输具有转向时钟的数据,该消息应在DF411(时钟转向指示器)中指示。 如果传输了多个GNSS的数据,并且这些GNSS的时钟之间的差异超过0.25毫秒(模1秒),则不应使用此消息类型。
MSM4 全GNSS伪距和相位距加CNR 169+Nsat*(18+49*Nsig) 3593 for Nsat=16, Nsig=4 大多数GNSS信号的全伪距、相位距和CNR(载波无噪声比)
MSM5 全GNSS伪距、相位范围、相位范围速率和CNR 169+Nsat*(36+64*Nsig) 4841 for Nsat=16, Nsig=4 大多数GNSS信号的全伪距、相位范围、CNR和相位范围速率。建议用于RINEX数据生成。
MSM6 全GNSS伪距和相位距加CNR(高分辨率) 169+Nsat*(18+66*Nsig) 4681 for Nsat=16, Nsig=4 MSM4的孪生体,但具有更高的可观测分辨率
MSM7 全GNSS伪距、相位范围、相位范围速率和CNR(高分辨率) 169+Nsat*(36+81*Nsig) 5929 for Nsat=16, Nsig=4 MSM5的孪生体,但具有更高的可观测分辨率

q

注释:
 在上表中,Nsat是指GNSS卫星的数量;Nsig是指传输消息中包含的不同信号的数量
 该表提供了一个可以称之为"完整"GNSS星座的比特消耗上限。实际吞吐量将较低,特别是在"过渡期"期间,并非所有GNSS卫星都传输所有(Nsig)信号。
 还提供了具体数字作为Nsat=16和Nsig=4情况的参考。
 没有时钟控制的原始数据不得用于不传输"整数毫秒数"的消息。
 当GNSS的时钟差超过0.25毫秒(模1秒)时,MSM1、MSM2和MSM3不得用于每个GNSS。在这些情况下,应使用MSM4、MSM5、MSM6或MSM7。
 下表概述了MSM消息类型在消息紧凑性和数据可用性方面的差异


注释:
 不同的MSM只是打包相同数据的不同方法,前提是这些消息的时钟转向指示器是相同的。这特别不要求RoughRange相同,但意味着对于给定历元上的给定卫星信号,重建的伪距和相位距将是相同的,而不管使用哪个特定的MSM来编码这些可观测值。
 仅当MSM4-7未应用时钟控制时,MSM1-3和MSM4-7中打包的数据可能不同。
 具有相同的时钟控制状态,重建的伪距、相位距和CNR与标准精度消息(MSM1-5)和高精度消息(MSMQ6-7)之间的差异仅在分辨率上不同。
 与标准精度消息(MSM2-5)中的相同指示器相比,高精度消息(MS06和MSM7)中的GNSS相位锁定时间指示器具有更高的分辨率和更宽的范围。
 初始化时应用于相位范围的模糊整数在所有MSM消息中应相同,无论是否使用转向时钟。
 给定卫星的每个信号(i)的完整伪距、相位距和相位距速率可以按如下方式恢复:
对于标准精度消息:
伪距(i)=c/1000×(Nms+粗糙度范围/1024+2-24×精细伪距(i)),米,
相位范围(i)=c/1000×(Nms+粗糙度范围/1024+2-29×精细相位范围(i)),米,
相位范围速率(i)=粗糙度_相位范围速率+0.0001精细度_相位距离速率(ii),米/秒,
对于高精度消息:
伪距(i)=c/1000×(Nms+粗糙度范围/1024+2-29×精细伪距(i)),米,
相位范围(i)=c/1000×(Nms+粗糙度范围/1024+2-31×精细相位范围(i)),米,
相位范围速率(i)=粗糙度_相位范围速率+0.0001
精细度_相位变化速率(ii),米/秒,
其中c是光速(米/秒)。

相关推荐
deepin_sir1 分钟前
06 Chroma_持久化与生产环境部署实战
python
炽烈小老头22 分钟前
【每天学习一点算法 2026/05/25】矩阵中的最长递增路径
学习·算法·矩阵
wuxinyan1231 小时前
工业级大模型学习之路021:LangChain零基础入门教程(第四篇):文档加载与文本分块技术
人工智能·python·学习·langchain
叁散1 小时前
实验报告:5G 仿真环境与基本链路模拟
算法
biter down1 小时前
12:参数化测试,一套用例批量跑 N 组数据
运维·python
qq_589568101 小时前
现代 Linux 系统(如 Ubuntu 24.04、Debian 12+) pip 安装第三方包报错解决
python·ubuntu
从负无穷开始的三次元代码生活2 小时前
算法零碎灵感点分享
算法
染指11102 小时前
9.LangChain框架(实现RAG)
数据库·人工智能·算法·机器学习·ai·大模型
大数据三康2 小时前
在spyder进行的遗传算法练习
开发语言·python·算法
Gene_20222 小时前
轮式底盘的微分平坦
算法