【翻译】20180508利用 SSR信息在RTKLIB 中进行PPP解算

摘要:
原作者是rtklib explorer,写于2018年,并非最新文章。原始地址:用rtklib对ppp解决方案进行ssr校正。如果您一直在关注精密GNSS的最新通知,您可能已经听到了很多关于S的信息

原文作者为rtklibexplorer,写作时间为2018年,非最近更新文章。原文地址: using-ssr-corrections-with-rtklib-for-ppp-solutions这里只是做翻译,方便自己查看记录。

If you have been following recent announcements in precision GNSS, you may have been hearing a lot about SSR (State Space Representation).  SwiftNav recently announced their Skylark corrections service, and u-blox announced a partnership with Sapcorda to provide correction service for their upcoming F9 receivers.  Both of these services are based on SSR corrections.

如果您最近一直在关注精密 GNSS 方面的公告的话,您可能已经听到了很多关于 状态空间域SSR (State Space Representation)的消息。SwiftNav 最近宣布了他们的 Skylark 校正服务,u-blox 宣布与 Sapcorda 合作,为他们即将推出的 F9接收机系列提供校正服务。这两项服务都是基于安全部门改正。

So, what is SSR?  Very briefly, it refers to the form of the corrections.  In traditional RTK with physical base stations or virtual reference stations (VRS), the corrections come in the form of observations in which all of the different error source are lumped together as part of the observation.  This is referred to as OSR (Observation Space Representation).  In SSR corrections, the different error source (satellite clocks,  satellite orbits, satellite signal biases, ionospheric delay, and tropospheric delay) are modeled and distributed separately.  There are many advantages to this form but what seems to be driving industry towards it now is that it allows the current VRS model where each user requires a unique data stream with observations tailored for their location to be replaced with a single universal stream that can be used by all observers.  This is a requirement if the technology is going to be adopted for the mass-market automotive industry for self-driving cars, since it is not practical to provide every car with it’s own data stream.

那么,什么是SSR呢?简而言之,它指的是一种校正服务形式。在传统的基于物理基站或虚拟参考站的 RTK 中,校正是以观测值的形式出现,其中所有不同的误差源集中在一起作为观测值的一部分。这被称为 观测空间域 (Observation Space Representation,OSR)。在 SSR 修正中,对不同的误差源(卫星时钟、卫星轨道、卫星信号偏差、电离层延迟和对流层延迟)分别建模。这种形式有很多优点,但是现在推动行业发展的是,在当前的 VRS 模型中,每个使用VRS的用户会根据自身的位置获取一个独特的数据流,而未来,这将被一个可供所有用户使用的单一通用流所取代。由于SSR服务不需要为每辆车提供特定的数据流,所有汽车都可以使用一样数据流,所以在不久的将来,这项技术将可能被拥有广大市场的自动驾驶汽车行业所采用。

For more detailed information on SSR, Geo++ has a one page summary here and IGS has an 18 minute video presentation on the topic here.  Both are excellent.

要了解更多关于 SSR 的详细信息,Geo + + 在这里有一页总结 ,IGS 在这里有一个18分钟的主题视频演示.。两者都很精彩。

Below is an image I borrowed from the IGS presentation which shows the flexibility of the SSR format.  It is intended to show how the same SSR data stream can be used globally for PPP quality corrections and also regionally for RTK quality corrections but it is also a good visual for understanding the message details I describe below.

下面是我从 IGS 演讲中借来的一张图片,它展示了 SSR 格式的灵活性。它旨在说明如何在全球范围内使用相同的SSR数据流进行PPP改正,以及在区域范围内进行 RTK 校正,同时它也能很直观的帮助我们理解我接下来将要描述的内容。

【翻译】20180508利用 SSR信息在RTKLIB 中进行PPP解算第1张

The RTCM standards committee is still in the process of finalizing the messages used to send the different correction components.  They have split the work into three phases.  Phase 1 includes the satellite clock, orbit, and code biases.  Phase 2 includes satellite phase biases and vertical ionosphere corrections, and phase 3 includes ionospheric slant corrections and tropospheric corrections.

RTCM 标准委员会最近仍努力就发送不同的改正信息达成一致。他们把这项工作分成三个阶段。第一阶段包括卫星时钟、轨道和伪距偏差。第2阶段包括卫星相位偏差和天顶电离层改正,第3阶段包括电离层倾斜校正和对流层改正。

There are several real-time SSR streams accessible for free today.  Unlike the paid services, they do not contain enough detailed regional atmospheric corrections to use as a replacement for a VRS base but they can easily be used for static PPP solutions.

现在有几个实时的 SSR 数据流可以免费访问。与付费服务不同的是,它们没有包含足够详细的区域大气校正,无法用作 VRS 基地的替代品,但可以很容易地用于静态 PPP 解算。

I used the CLK93 stream from CNES for an experiment to test how well RTKLIB handled the SSR corrections.  It includes the Phase 1 and Phase 2 RTCM messages but not the Phase 3 messages.  Here is the format of the the messages in the CLK93 data stream:

我使用来自 CNES 的 CLK93数据流进行了一个实验以测试 RTKLIB 如何处理 SSR 改正信息。它包括第1阶段和第2阶段 的RTCM 消息,但不包括第3阶段消息。下图是 CLK93数据流中消息的格式:

【翻译】20180508利用 SSR信息在RTKLIB 中进行PPP解算第2张

You can register for free access to the CLK93 (and other) streams from any of these locations:

你可从以下任何一个地点免费登记使用 CLK93(及其他)资数据流:

Unfortunately, RTKLIB currently only supports the Phase 1 RTCM messages and even this is not complete in the release version.  I have gone through the code and made a few changes to make the Phase 1 SSR functional and have checked those changes into the demo5 Github repository.  I also added some code to handle the mixed L2 and L2C observations from the ComNav and Tersus receivers.  After a little more testing I plan to release this code into the demo5 executables, hopefully in the next week or two.

不幸的是,RTKLIB 目前只支持第1Phase 的 RTCM 消息,即使在发行版中也不完整。我检查了代码并做了一些修改,使得第1帧的 SSR 信息能正常使用,并将这些修改的代码同步到了 demo5 Github 存储库中。我还添加了一些代码来处理来自 ComNav 和 Tersus 接收器的混合 L2和 L2C 观测值。经过一些更多的测试后,我计划将这段代码发布到 demo5可执行文件中,希望在未来一两周内完成。

With only phase 1 measurements, the RTKLIB PPP solutions will work much better with dual frequency receivers than with single frequency receivers.  This is because single frequency receivers require ionospheric corrections for longer baselines.  For this reason, I did not bother with collecting any single frequency data.  Instead, I collected both L1/L2C data with a Swiftnav Piksi Multi receiver and L1/L2/L2C data with a ComNav K708 receiver and a Tersus BX306 receiver.

仅使用第一帧的观测值信息,RTKLIB的双频 PPP 解会好于单频PPP解。因为对于单频接收机来说,处理长一点的基线数据时需要店电离层改正信息(翻译注:而双频通过无电离层组合可以比较方便的削弱电离层的影响)。出于这个原因,我没有费心去收集任何单一频率的数据。相反,我用 Swiftnav Piksi Multi接收器收集 L1/L2C 数据,用 ComNav K708接收器和 Tersus BX306接收器收集 L1/L2/L2C 数据。

RTKLIB is usually used to calculate PPP solutions without SSR corrections but this requires downloading multiple correction files for orbital errors, clock errors, and code bias errors and it is usually done with post-processing rather than real-time, after the corrections are available.  With SSR, the process is simpler because the solution can be done real-time and there is no need to download any additional files.  It does, however, require access to the internet to receive the real-time SSR data stream from an NTRIP caster.  The solution can be calculated real-time or the SSR corrections and receiver observation streams can be recorded and the solution post-processed.

RTKLIB 通常使用SSR改正值来获取PPP解,但这需要下载多个修正文件,用于修正轨道误差、钟误差和伪距偏差,而且通常是在拿到改正信息后进行后处理,而不是实时处理。直接使用 SSR信息会让这个过程更简单,因为可以实时获取解算结果,而且不需要下载任何其他文件。当然了,它需要通过互联网从 NTRIP 服务器那里接收实时的 SSR 数据流。可以实时进行解算得到解算结果,也可以将实时的数据流保存到本地文件进行事后处理。

To enable the use of SSR corrections in RTKLIB, you need to set the “Satellite Ephemeris/Clock (pos1-sateph) input parameter to either “Broadcast+SSR APC” or “Broadcast+SSR CoM”.  Note that CoM stands for Center of Mass and APC for Antenna Phase Center.  They refer to the reference point for the corrections.  The CLK93 corrections are based on antenna phase centers.

为了能够在 RTKLIB 使用SSR改正,你需要把** Satellite Ephemeris/Clock (pos1-sateph)**输入参数设定为「Broadcast+SSR APC」或「Broadcast+SSR CoM」。注意 ,这里CoM 表示质心,APC 代表天线相位中心。它们代表不同的修正参考点。CLK93改正是基于天线相位中心的。

To generate my PPP solution I set the solution mode to “PPP-Static”,  ephemeris/clock (pos1-sateph) to “brdc+ssrapc”, ionosphere correction (pos1-ionopt) to “dual-freq”, and troposphere correction (pos1-tropopt) to “est-ztd”.  I also enabled most of the other PPP options including  earth tides,  satellite PCVs, receiver PCVs, phase windup, and eclipse rejection.

为了生成我的 PPP 解决方案,我将解决方案模式设置为“ PPP-static”,ephemeris/clock (pos1-sateph)设置为“ brdc + ssrapc”,ionosphere correction (pos1-ionopt)设置为“ dual-freq”,troposphere correction (pos1-tropopt)设置为“ est-ztd”。我还启用了大多数其他 PPP 选项,包括地球潮汐、卫星 PCVs、接收器 PCVs、相位提升和日食拒绝。

RTKLIB PPP solutions don’t support ambiguity resolution so the ambiguity resolution settings are ignored.  I specified the satellite antenna file as “ngs14.atx” which is the standard antenna correction file and is available as part of the demo5 executable package.  I also needed to include the CLK93 data stream as one of the inputs in addition to the receiver observations (and navigation file if post-processing).

RTKLIB PPP 解不支持模糊度固定,因此模糊度固定的设置项可以忽略掉。我将卫星天线文件指定为“ ngs14.atx”,这是标准的天线校正文件,可作为 demo5可执行包的一部分使用。我还需要将 CLK93数据流作为接收机观测值(如果是后期处理,还需要导航文件)之外的一个输入。

I collected a couple hundred hours of observations with the SwiftNav receiver connected to a ComNav AT-330 antenna on my roof with moderately good sky visibility.  I then ran many four hour static solutions over randomly selected data windows.  I also collected a small amount of raw data from a ComNav K708 receiver and a Tersus BX306 receiver.

我用 SwiftNav 接收机收集了几百个小时的观测数据,这个接收机连接和我屋顶上的 ComNav AT-330天线相连,天空能见度还算不错。然后我在随机选择的数据窗口采集了很多组四个小时的解。同时,我也从 ComNav K708接收机和 Tersus BX306接收机收集了少量的原始数据。

Below is a typical 12 hour static solution for a SwiftNav and a ComNav receiver.  The SwiftNav solution is in green and the ComNav solution is in purple.  Zero in these plots represents an online PPP solution from CSRS from data collected over a month earlier.  In this particular example, the SwiftNav solution is slightly better but this was not always the case.

下图是 SwiftNav 和 ComNav 接收机12小时静态解结果。绿色表示SwiftNav 解,紫色表示ComNav解。图表中的0代表使用一个月前收集的数据通过CSRS在线PPP服务 解算得到的在线 PPP 解。在这个特定的例子中,SwiftNav 解稍微好一些,但是情况并不总是这样。

【翻译】20180508利用 SSR信息在RTKLIB 中进行PPP解算第3张

Here is a shorter data set from a Tersus BX306 receiver.  With the relatively small amount of Tersus and ComNav data I collected, I did not notice any differences in convergence rates or final accuracy between any of the three receivers.

下面是来自 Tersus BX306接收机的一个较短的数据集。由于我收集的 Tersus 和 ComNav 数据相对较少,我没有注意到三个接收器之间在收敛速度或最终精度方面的任何差异。

【翻译】20180508利用 SSR信息在RTKLIB 中进行PPP解算第4张

The solutions generally all converged to less than 6 cm of error in each axis after 4 hours with one or two minor exceptions that seemed to involve small anomalies at the day boundary.  Since the RTKLIB PPP solutions don’t include ambiguity resolution they do take longer to converge but the eventual accuracy should be similar.

一般来说,4小时后每组解的每个轴都会收敛到小于6厘米的误差,但涉及到两天交接的地方时会有一两个小的例外。由于 RTKLIB PPP 解不包括模糊度固定,它们确实需要更长的时间收敛,但最终的准确性应该是相似的。

I’ve uploaded some of the raw observation data for the different receivers and the CLK93 data stream as well as the config file that I used for the solution here.

我已经上传了一些不同接收器和 CLK93数据流的原始观测数据,以及我在这里用于解决方案的配置文件。

This seems like a good start and I hope that RTKLIB will support phase 2 and phase 3 corrections in the future.

这似乎是一个良好的开端,我希望 RTKLIB 将在未来支持阶段2和阶段3的修正。

免责声明:文章转载自《【翻译】20180508利用 SSR信息在RTKLIB 中进行PPP解算》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇linux定时任务cron 安装配置信息熵 和 算法时间复杂度下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

随便看看

小米路由器3-R3 刷固件

3-3、大功告成,实测:带机12台,内存占用100MB、CPU使用20%不到满载200M带宽。...

mysql修改字段防止锁表

步骤1:修改大表、addcolumn或dropcolumn的字段,操作完成后将锁定该表。此时,查询ok、insert和update将等待锁定。...

PCL点云分割(2)

点云的分割是我想做的机器人手臂捕捉的一个非常重要的部分,因此首先要了解,如果我使用点云库来处理我用kinect获得的点云数据,这个例程也是由我自己慢慢修改程序并结合官方API的解释来实现的。如果我直接更改源程序,由于数据类型、头文件和其他原因,其中的许多细节可能无法编译,我们将很难找出错误。首先,让我们看看我自己设定的场景。然后我使用Kinect获取数据并观...

JavaScript算法学习:获取字符串最后一位方法及判断是否以指定字符串开始或结尾

Str.substr,其中start是必需的参数,表示坐标的起始位置。正值在正方向计数,负值在反方向计数,长度是可选参数,表示从起始位置开始计数的数字。...

内网esxi磁盘空间不足导致虚拟机宕机

因为一些占用太多空间的虚拟机可能无法启动。我不断拍摄快照以保存测试版本。我跳过了同一网段上的一个虚拟机ssh,并一直看着翻译器学习如何释放虚拟磁盘空间。您只能创建一个新的虚拟机来读取原始磁盘目录,并且只能重新构建一个新Linux机器进行测试。然后上传一个测试文件(最大程度地模拟其他虚拟机环境)。首先,你需要关闭机器。厚配置延迟将整个虚拟机目录文件清零,如下所...

java 服务接口API限流 Rate Limit

服务接口的流量控制策略:分流、降级、流量限制等。2)使用Reids的列表结构,而不是incr命令1FUNCTIONLIMIT_API_CALLL2current=LLEN3IFcurrent˃10THEN4ERROR“toomanyrequestsperssecond”5ELSE6IFEXIST==FALSE7MULTI8RPUSH9EXPIRE10EXEC...