RTKLIB学习(二)–1、PPP方程和扩展卡尔曼滤波等算法详解
学习rtklib的PPP模块,先对重要的算法进行原理性阐述
更加详细的算法可以前往:
PPP算法-CSDN博客
一、PPP原理
精密单点定位采用双频伪距观测值、
和载波相位观测值
、
获得测点的三维位置。在基本观测方程的基础上,通常有三种模型,分别是传统的无电离层组合观测模型、UofC模型(半和模型)、以及非差非组合模型。
基本观测方程:
假定接收机i在时刻接收到卫星j于
时刻发送的卫星信号,则对于载波相位观测值
、
和P码伪距观测值
、
,可建立观测方程:
式中,为卫星到接收机的几何距离,c为真空中的光速,
为卫星j在信号发射时刻
相对于GPS时间的钟差,
为接收机i在信号接收时刻
相对于GPS时间的钟差,Ion为电离层延迟参数,
为对流层延迟改正,
为L1载波整周模糊度,
为L2载波整周模糊度,
为其他必须顾及的改正,如天线相位中心改正、天线相位缠绕、地球固体潮改正、大洋负荷改正、引力延迟改正、相对论效应改正等。
1、传统无电离层组合模型
卫星信号所收到的电离层延迟影响与频率的平方成反比,利用这一性质,可将伪距观测值、
和载波相位观测值
、
组合成合适的组合观测值,消除电离层影响:
式中,和
分别为无电离层组合观测值的波长及模糊度,此时模糊度参数不再具有整周特性,即
2、UofC模型(半和模型)
半和模型除了采用传统的无电离层载波相位组合观测值,还包括、
频率上的P码/载波组合观测值,利用电离层影响在测码伪距方程和相位方程中的大小相等,互为相反数的性质。表达式如下:
3、非差非组合模型
消电离层的组合观测方程不仅会造成一些有用信息的丢失,还会放大观测噪声,因此基于原始观测值的非差非组合模型显得尤为重要,rklib中一般采用非差非组合模型和消电离层模型。
4、周跳探测
M-W组合法
式中为MW组合观测值,MW组合消除了卫星与接收机之间的几何距离、对流层延迟、电离层延迟、卫星钟差、和接收机钟差的影响。上式两边同除宽巷模糊度波长
可得:
为宽巷模糊度。实际应用中,首先用历史数据计算宽巷模糊度的平均值
将当前历元的与历史平均值做差,判断该历元是否发生周跳或者粗差。
参考:《GNSS精密单点定位及非差模糊度快速确定研究方法》李星星
《GNSS数据处理》蒋卫平
二、扩展卡尔曼滤波原理
推荐文章:
卡尔曼滤波系列——(二)扩展卡尔曼滤波-CSDN博客
【精选】扩展卡尔曼滤波_菜鸟知识搬运工的博客-CSDN博客
卡尔曼滤波(Kalman Filter)原理浅析-数学理论推导-2_爱听歌的周童鞋的博客-CSDN博客
扩展卡尔曼滤波相比卡尔曼滤波多了泰勒级数线性化的内容,解算步骤还是一样的。rtklib中用到的就是扩展卡尔曼滤波EKF
状态方程:
观测方程:
进行如下步骤:
1、计算状态转移矩阵
,有的也用
;
状态转移矩阵定义了状态向量随时间变化的规律。
2、计算系统噪声协方差矩阵
;
该矩阵定义了在卡尔曼滤波模型噪声源的影响下,状态估计的不确定度随时间增长的规律。
3、状态向量先验估计值的传播,从
到
4、误差协方差矩阵的传播(预测),从
到
;
5、计算观测矩阵
有的也用
;
6、计算观测噪声协方差矩阵
;
7、计算卡尔曼增益矩阵
;
8、构建观测向量
9、状态向量后验估计值的更新
到
10、误差协方差矩阵的
更新(估计),从
到
三、代码分析
在RTKLIB架构下的详细代码分析 可以前往:
RTKLIB学习(二)–2、PPP代码分析-CSDN博客
本文来自网络,不代表协通编程立场,如若转载,请注明出处:https://www.net2asp.com/06faac1c01.html
