关于转换glonass电文

文章来源于 Converting GLONASS RTCM MSM messages to RINEX with RTKLIB

最近一段时间,在使用rtklib把最新的glonass MSM电文转换成rinex文件时遇到了一些问题,我想这些倒是一个很好的素材来写一期博客。

在大多数情况下,RTKLIB支持所有不同形式的MSM消息,但有一个例外。要将GLONASS相位观测结果转换为RINEX格式,需要知道每个卫星信号的频率。对于其他星座,这可以直接获得,因为这些星座中的所有卫星都使用相同的频率。但是,每颗GLONASS卫星都使用单独的频率。在旧版GLONASS消息和GLONASS星历消息中包含这些信息(指频率),但不是所有的MSM消息中都包含这些信息。具体来说,MSM5和MSM7只包含 GLONASS消息的一部分。

直到最近,RTKLIB仍无法从任何MSM消息中提取频率信息,并且如果不存在GLONASS星历消息的话,则将无法转换得到任何MSM类型的(1-7)的GLONASS相位观测值。去年,我从b33a版本开始向demo5代码添加了一项功能,该功能解决了MSM5和MSM7消息的此问题,但其他MSM类型仍然无法在RINEX文件中产生相位观测值。另外,目前,官方RTKLIB代码不支持任何MSM类型的GLONASS相位观测,除非还存在星历。

这里有几种方法可以解决这种限制。

(1)如果您使用的是MSM7消息和官方RTKLIB代码,则切换到demo5代码将解决此问题。

(2)如果您使用的是MSM4或任何其他不包含扩展卫星信息的MSM类型电文,则将接收器配置为输出MSM7格式的消息或较旧的1012 RTCM类型,或者启用GLONASS 1020星历消息将解决此问题。

(3)如果您无法重新配置接收器,那么解决此问题将更加困难。

一位读者通过将下载的星历消息附加到原始RTCM观察文件中成功转换出来了glonass观测者文件。由于RTKLIB在文件名输入中接受通配符,因此实际上不需要合并文件,只需使用通配符指定文件名即可,这将包括两个文件。请注意,星历文件不需要是最新的,但只有当这份星历文件包含了待转换的观测值中的所有glonass卫星,而且当这份星历还没过时到包含的卫星被不同频率的卫星替代时才可以。这种情况并不经常发生,因此只需偶尔更新下星历文件即可。

原文地址:https://www.cnblogs.com/guoxianwei/p/14014525.html