
RTKLIB学习系列文章
文章平均质量分 53
十八与她
不断学习,不断进步
展开
-
利用Python自动在CDDIS上下载GNSS数据(观测值、广播星历,电离层格网数据)
我们在做GNSS数据处理和分析的时候,难免会用到很多天甚至几年的GNSS数据,如果一个一个下载的话未免过于麻烦,因此博主利用Python写了一个较为简单的下载数据的程序,简单调试一下就能实现自动下载啦。原创 2022-11-13 15:20:12 · 2680 阅读 · 5 评论 -
Pyhon中利用GM(1,1)和ARIMA模型对卫星DCB值进行预测
对于ARIMA预测方法来说,随着一次预测天数的增加,GPS和Galileo的DCB平均预测精度呈现上升趋势,BDS和GLONASS的DCB平均预测精度和DCB类型有关,精度有升有降,且以上情况平均数值变化均不明显,但是预测的稳定性会显著提高,这与一次预测的数据越多,预测的结果就会越有关联性,从而数值之间更加稳定的原因有关;对于BDS的DCB预测效果来说,DCB精度没有规律性的变化趋势,要具体的DCB类型具体分析,选择出针对该类型来说,最适合的一次预测天数;0.05ns左右,STD在0.04ns附近;原创 2022-11-13 11:13:44 · 1081 阅读 · 0 评论 -
RTKLIB中利用Kalman滤波进行伪距单点定位
之前发布的博客利用Kalman滤波进行伪距单点定位取得了很好的精度提升,有小伙伴也想知道具体如何修改的,现在将我的代码放出,供大家参考。源码中的流程可能比较难懂,因为每个人写代码的思路和风格不一样,大家需谨慎参考,权当给大家提供一个思路吧。我做实验的时候效果还是不错的,但代码可能多多少少存在理论错误,但是最终结果确实合理的。原创 2022-11-13 09:55:08 · 3438 阅读 · 11 评论 -
利用python进行TEQC质量检核结果绘图
我们在做GNSS数据预处理或者是质量检核的时候,需要用到teqc,那怎么将结果用清晰的图呈现出来呢?今天和大家分享一个源代码,博主自己运行过,可以绘制出天空图,高度角图等信息。以下是官方源码,大家也可以参考网站信息。原创 2022-11-13 09:42:37 · 1142 阅读 · 0 评论 -
Python绘制RTKLIB的POS文件中的XYZ误差曲线及计算RMSE
前面博客中有提到过,文中给出了部分代码,在这篇博客里面,给出剩下的代码。原创 2022-11-11 17:22:14 · 1540 阅读 · 2 评论 -
Python绘制RTKLIB导出的信噪比和多路径数值
将RTKLIB计算出来的SNR值导出,运行程序,即可呈现自己绘制的SNR曲线图。原创 2022-11-11 16:41:16 · 1371 阅读 · 0 评论 -
Python实现观测值o文件和精密星历sp3文件读取
博主之前准备利用Python编写精密单点定位程序,奈何写了一半的读取文件代码,觉得太浪费时间,就此作罢,这些时间不如多用来研究现有代码,把这部分放弃的代码拿出来,希望给有想法的小伙伴一些启迪。代码虽未完成,但是有一些小函数,可以参考~原创 2022-11-11 16:32:40 · 1574 阅读 · 2 评论 -
Python实现空间直角坐标转高斯克吕格平面坐标
有时需要将点展开到地图上,需要的是平面坐标,而手中只有三维的空间直角坐标XYZ或者BLH时该怎么办呢?这时候就需要将坐标进行投影转换,本文给出的程序代码是用高斯克吕格投影进行坐标转换。原创 2022-11-11 16:14:13 · 874 阅读 · 0 评论 -
Python实现将坐标点绘制到地图上
有时我们需要直观地看到坐标点位在全球的分布情况,因此有将坐标点绘制到地图上的需求,我们可以用python实现这个功能。原创 2022-11-10 08:48:22 · 4447 阅读 · 2 评论 -
Python绘制RTKLIB结果文件.pos源码
应粉丝需求,现发布较完整版,实用的一套源码,改源码可进行RTKLIB的误差分析,曲线图的绘制,结果图直观易懂。原创 2022-11-10 08:26:56 · 1318 阅读 · 5 评论 -
RTKLIB专题学习(十三)—关于RTKLIB的PPP模式不能有效解算北斗数据原因的探索(一)
RTKLIB专题学习(十三)—关于RTKLIB不能有效解算北斗数据的探索(一)文章目录系统使用发现问题精密星历读取信号类型选取系统使用发现问题从上图的调试结果可以看到,当处理北斗数据时(sat=106是对应的北斗),其计算的接收机到卫星的距离为-1;也就是计算出错,原因是,在geodist函数中,当卫星距离地心的距离小于地球半长轴时,返回值-1。/* geometric distance -------------------------------------------------------原创 2022-05-04 20:37:25 · 3785 阅读 · 6 评论 -
RTKLIB专题学习(十二)—支持的信号ID/观测类型及读取优先级
RTKLIB专题学习(十二)—支持的信号ID/观测类型文章目录基础理论知识观测值类型多信号默认优先级源码读取函数源码简介读取文件头函数读取观测值文件函数基础理论知识观测值类型RTKLIB支持的信号id /观测类型如下表所示。表中还列出了RINEX 2、RINEX 3观测类型、RTCM 3 MSM信号id和BINEX观测代码id。使用RTKCONV和CONVBIN实现RTCM3和RINEX以及RTCM 2到RINEX的转换,当使用STRSVR和STR2STR实现RTCM 2和BINEX到RTCM3的转原创 2022-05-03 20:57:49 · 4157 阅读 · 3 评论 -
RTKLIB专题学习(十一)—GNSS信号量测模型
RTKLIB专题学习(十一)—GNSS信号量测模型今天一起来学习一下,GNSS的基础知识,有关于GNSS信号测量模型的相关内容1.GNSS信号结构GNSS信号典型结构如图所示。GNSS信号一般由载波频率(carrier)、扩频码(code)和导航数据(data)相乘组成。扩频码也称为伪随机噪声码(PRN)。GPS、GLONASS、Galileo、QZSS、北斗和SBAS提供的这些GNSS信号的详细规范见手册的附录F。2.伪距测量模型伪距定义为“从接收机天线到卫星天线的距离,这个距离包括接收机原创 2022-04-22 14:38:33 · 2274 阅读 · 1 评论 -
RTKLIB专题学习(十)—电离层改正
RTKLIB专题学习(十)—电离层改正今天我们一起来学习下,RTKLIB中对电离层延迟改正的方法,并了解源码的相应模块,以便对原理有一定的了解1.电离层延迟改正模型由于存在大量的自由电子和正负离子,当卫星信号穿过电离层时,如同其他电磁波一样,信号的路径会发生弯曲,传播速度也会发生变化,从而使得测量所得到的距离不等于卫星至接收机的几何距离,这种偏差称为电离层折射误差。RTKLIB中源码如下:/* ionospheric model --------------------------------原创 2022-04-13 14:09:56 · 11256 阅读 · 12 评论 -
RTKLIB专题学习(九)—精密单点定位中对流层改正
RTKLIB专题学习(九)—精密单点定位中对流层改正今天我们一起来学习下,RTKLIB中对对流层延迟改正的方法,并了解源码的相应模块,以便对原理有一定的了解1.对流层延迟改正模型首先了解什么是对流层延迟,对流层折射一般泛指非电离层大气对电磁波的折射。非电离大气包括对流层和平流层,是高度为50KM以下的部分。由于80%的折射发生在对流层,所以又称为对流层折射,其产生的误差即对流层折射误差,即对流层延迟。RTKLIB中使用的第一个改正模型为Saastamoinen模型,其公式如下:下面来看一下原创 2022-04-13 10:03:49 · 4594 阅读 · 7 评论 -
RTKLIB专题学习(八)—卫星星历和钟差
RTKLIB专题学习(八)—卫星星历和钟差今天我们来学习一下,RTKLIB中使用的卫星星历和钟差情况1.RTKLIB支持GPS、GLONASS、Galileo、QZSS、北斗和SBAS的广播星历和时钟,对于后处理也支持精密星历和时钟(1)GPS、伽利略和QZSS的广播星历和时钟如上公式可知,使用广播星历中参数解算的的是基于卫星天线相位中心的位置,具体公式如下:详细结算流程如下:2.对于GLONASS来说,广播星历直接给出了其位置信息;北斗广播星历也是给出了相应参数,可通原创 2022-04-12 21:01:05 · 5835 阅读 · 2 评论 -
RTKLIB专题学习(七)—精密单点定位实现初识(四)
RTKLIB专题学习(七)—精密单点定位实现初识(四)本篇我们一起来了解一下RTKLIB中EKF(扩展卡尔曼滤波)的时间更新的有关知识:1.接收机运动的动态定位模式此时状态转移矩阵和过程噪声矩阵分别为:2.接收机非动态的动态定位模式此时状态转移矩阵和过程噪声矩阵分别为:为了避免数值不稳定,在接收机位置的方差中加入无限的过程噪声,在每个时刻,接收机位置状态被充分地重置到初始估计值,在RTKLIB的方差中加入较大的过程噪声(10^4 𝑚^2)。为避免非线性信号测量模型的迭代,采用单点定位的原创 2022-04-11 22:43:38 · 1512 阅读 · 0 评论 -
RTKLIB专题学习(七)---精密单点定位实现初识(三)
RTKLIB专题学习(七)—精密单点定位实现初识(三)上两篇我们介绍了RTKLIB中精密单点定位的大致流程,今天我们对照RTKLIB学习手册,来学习相应改正公式和误差源1.在PPP模式中RTKLIB也使用类似于附录E.7中描述的方案的EKF估计过程。与基线处理的不同,PPP采用ZD(非差)测量方程,就像单点定位模型,而不是双差模型。2.利用E3.2和E3.4,可以推导出非差观测值的无电离层组合模型:组合后的非差观测模型如下:图中为L1和L2载波相位组成的无电离层组合的改正项,包括原创 2022-04-11 17:01:20 · 4834 阅读 · 6 评论 -
RTKLIB专题学习(七)---精密单点定位实现初识(二)
RTKLIB专题学习(七)—精密单点定位实现初识(二)上一节我们讲完了pppos中状态的时间更新函数的内容了,接下来我们往下进行:1.satposs是pppps调用的另一个函数,主要用于计算卫星位置rs和卫星钟差dts/* satellite positions and clocks ----------------------------------------------* compute satellite positions, velocities and clocks* args :原创 2022-04-10 09:57:10 · 3170 阅读 · 0 评论 -
RTKLIB专题学习(七)---精密单点定位实现初识(一)
RTKLIB专题学习(七)前几篇我们主要针对RTKLIB中的单点定位流程、函数调用和具体实现以及定位效果进行了详细介绍和分析,那么接下来的几篇博文,将带大家走进RTKLIB中的精密单点定位的部分,这一块需要好好理解,好好吸收,是重中之重1.类似于estpos在单点定位中的作用,精密单点定位中的pppos可以说是这部分的核心函数了,直接引用了卡尔曼滤波进行参数估计/* precise point positioning ------------------------------------------原创 2022-04-09 20:32:24 · 4208 阅读 · 7 评论 -
RTKLIB专题学习(六)---单点定位应用(二)
RTKLIB专题学习(六)—单点定位应用(二)上一篇RTKLIB专题学习(六)—单点定位应用(一)我们使用最小二乘以及抗差最小二乘对单点定位进行定位效果分析,发现在存在粗差情况下,抗差最小二乘可以获得更加可靠、准确的结果那么,今天这篇博文,我们来看一下,将卡尔曼滤波应用到单点定位中,会是怎样的结果首先为了便于理解,先放上卡尔曼滤波的基本流程:也要说一下卡尔曼滤波在单点定位中相对于最小二乘的优点:我们直接用实测站的单点定位来分析最小二乘和卡尔曼滤波的定位效果:WLS(加权最小二乘)卡原创 2022-04-08 22:32:50 · 1864 阅读 · 10 评论 -
RTKLIB专题学习(六)---单点定位应用(一)
RTKLIB专题学习(六)前几篇已经讲过了有关单点定位源码的相关知识啦,接下来我们就讲一讲单点定位的应用,本次实验用到的数据为IGS站和野外实测的有干扰的数据。IGS和实测站的单点定位结果对比我们在对比时,为了与传统的加权最小二乘进行比较,增加了一种抗差的加权最小二乘算法,下面对各个站点和是实测站的定位结果进行分析IGS站:DYNGWLS(加权最小二乘)RWLS(抗差加权最小二乘)其实从这里就可以看出,由于IGS站点的观测质量本身比较好,不存在粗差,因此,在应用抗差最小二乘时,提升原创 2022-04-08 18:43:51 · 1748 阅读 · 0 评论 -
RTKLIB专题学习(五)---单点定位实现进阶(二)
RTKLIB专题学习(五)—单点定位实现进阶(二)今天我们继续来了解一下,RTKLIB中的单点定位是如何实现的:上一篇RTKLIB专题学习(五)—单点定位实现进阶(一)讲到了得到了最小二乘计算结果之后,需要进行结果有效性检验。那么今天我们一起来看看,在调用完estpos之后,pntpos又做了哪些工作吧!1.当最小二乘结果无效的时候,进行错误的探测与剔除 /* estimate receiver position with pseudorange */ stat=estpos(obs,原创 2022-04-07 17:30:23 · 1061 阅读 · 1 评论 -
RTKLIB专题学习(五)---单点定位实现进阶(一)
RTKLIB专题学习(五)今天我们一起来了解一下,RTKLIB中的单点定位是如何实现的:简单来说,就是最小二乘法,但是呢,RTKLIB里面的最小二乘实际上是加权最小二乘,因为他给出了观测值的权(实际体现出来的是测量误差的方差)1.在估计接收机位置参数的函数estpos里面,有两个比较重要的函数,rescode和lsq/* pseudorange residuals -----------------------------------------------------*/static int原创 2022-04-07 13:44:53 · 4653 阅读 · 0 评论 -
RTKLIB专题学习(四)---单点定位实现初识(二)
RTKLIB专题学习(四)—单点定位实现初识(二)今天我们来继续学习RTKLIB中单点定位的调用情况,上一篇在这里:RTKLIB专题学习(四)—单点定位实现初识(一)1.上篇说到了调用procpos的函数是execses;execses中调用的函数有readtec读取电离层数据文件函数;readerp读取erp数据文件函数;readobsnav读取观测值和导航文件函数;readdcb读取DCB文件函数;setpcv设置天线参数函数;readotl读取海洋潮汐数据文件函数2.然后呢,调用execses函原创 2022-04-07 09:15:24 · 2155 阅读 · 3 评论 -
RTKLIB专题学习(四)---单点定位实现初识(一)
RTKLIB专题学习(四)今天我们来学习RTKLIB中单点定位的调用情况1.单点定位的核心主程序,我觉得其实是这一部分该函数完成了每个历元的接收机位置和钟差参数的解算工作,用到的是RTKLIB专题学习(三)—矩阵应用里面的 加权最小二乘/* estimate receiver position ------------------------------------------------*/static int estpos(const obsd_t* obs, int n, const d原创 2022-04-06 21:20:56 · 3792 阅读 · 1 评论 -
RTKLIB专题学习(三)---矩阵应用
RTKLIB专题学习(三)今天我们来进一步学习RTKLIB中矩阵的各种应用rtkcmn.c : rtklib common functions1.这是最小二乘法m为观测方程数,n为待求参数,这里的A指的是设计矩阵的转置,y指的是观测方程/* least square estimation -----------------------------------------------------* least square estimation by solving normal eq原创 2022-04-06 16:12:58 · 2274 阅读 · 1 评论 -
RTKLIB专题学习(二)---矩阵进阶
RTKLIB专题学习(二)今天我们来进一步学习RTKLIB中矩阵的各种运算rtkcmn.c : rtklib common functions1.这是A、B两矩阵的乘法运算/* multiply matrix -----------------------------------------------------------*/extern void matmul(const char *tr, int n, int k, int m, double alpha,原创 2022-03-05 18:25:06 · 1679 阅读 · 0 评论 -
RTKLIB专题学习(一)---矩阵初级
今天起我们开始学习GNSS定位解算软件RTKLIB,接下来的日子里,我将从最基础为大家逐一剖析RTKLIB的源代码RTKLIB专题学习(一)今天我们先来初步识别RTKLIB中是如何创建各种矩阵的rtkcmn.c : rtklib common functions1.这是创建一个n行m列的新矩阵/* new matrix ------------------------------------------------------------------* allocate memory of.原创 2022-03-03 15:19:54 · 2233 阅读 · 0 评论 -
RTKLIB2.4.3中一些问题的修复---RTKLIB学习系列文章(二)
RTKLIB2.4.3中一些问题的修复 1 RTKPLOT的Map View 和 NTRIP Browser无法正常工作问题详情:地图视图没有响应或在RTKLIB/bin/leaflet/leaflet.js中出现脚本执行错误。在RTKPLOT或NTRIP Browser的地图视图中使用的旧版本WebBrowser组件的行为可能会给leaflet带来麻烦。通过regedit(注册表编辑器)添加以下条目,以在IE11模拟模式下运行WebBrowser组件。(见图1-1)...原创 2021-04-07 23:40:52 · 2460 阅读 · 6 评论 -
RTKLIB 2.4.2(p12)与RTKLIB 2.4.3(b34)功能对比分析---RTKLIB学习系列文章(一)
**声明:**RTKLIB 2.4.1之前的版本,都遵循着通用公共许可(General Public Liense,GPLGPL)发行公约的第三版本,即GPL v3。1 综合1.1 新增北斗卫星信号RTKLIB 2.4.3 b34已经支持了BeiDou 的PRN1-63(C01-C63)卫星,而RTKLIB 2.4.2 p12仅支持PRN1-35(C01-C35)卫星1.2 新增支持的RINEX版本RTKLIB 2.4.3 b34已经能够使用并处理 RINEX 3.04的数据了。(见图1-1 )原创 2021-04-04 23:42:58 · 3382 阅读 · 5 评论