卡尔曼滤波算法_GPS定位笔记3 (卡尔曼滤波定位算法)

之前的笔记介绍了传统的最小二乘解法和DOP的概念,这一节介绍卡尔曼滤波的定位解法。需要的先修基础知识: 卡尔曼滤波原理,尤其是拓展卡尔曼滤波(EKF)


卡尔曼滤波回顾与复习

6f0a0993a2aa00bafb4f01b61f118b44.png
标准线性卡尔曼滤波

一个线性卡尔曼滤波的例子

考虑以下一个系统模型

对照卡尔曼滤波模型,这里A=1, B=0和 C=1。 假定系统状态初始估计值

的均方误差
等于4, 过程噪声
和测量噪声
的方差分别为常数Q与R,那么Q=0.5, R=1时,试求状态均方差值
在各个时刻的卡尔曼递推计算中的变化情况,然后再重复计算当Q=0.1和R=1时候的
值变化情况。

由于只需要计算状态均方误差值,所以在每一个历元(比如第k个)的卡尔曼滤波递推过程中只涉及一下三个公式:

b6e1c6b8ed774b2b265f255ff2eb71f0.png

的值一起带入以上各式,就可以得到各个历元的先验均方误差
和后验均方差

。而下图虚线与实线分别描述了均方差在上述两组Q,R值下的变化情况。

a6d0cb3bac16f380db282604ec2f32cd.png

GPS定位的卡尔曼滤波算法

这一节运用卡尔曼滤波算法来求解GPS位置,速度和时间(PVT).

卡尔曼滤波和之前介绍的最小二乘法的主要区别在于:前者利用状态方程将不同时刻的状态联系起来,而后者却是孤立的求解每一个不同时刻的系统状态。除此之外,GPS的卡尔曼滤波测量方程与最小二乘法中的GPS定位,定速方程事实上没有区别。

接收机时钟模型

接收机时钟偏差是用于GPS定位的各个卫星伪距测量值的公共误差部分,而接收机时钟频飘移是用GPS定速的各个卫星多普勒频移测量值的公共误差部分。因为接收机的钟差与频飘之间是一个简单的积分关系,所以他们两者经常一起作为卡尔曼滤波的系统状态量。

下图所示为一种相当自然的接收机时钟模型,它的两个状态变量为接收机种差

和频飘
,而
  • 0
    点赞
  • 33
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
卡尔曼滤波算法是一种用于估计系统状态的优化算法。其原理基于"状态空间模型",通过观测数据和系统动态方程进行状态预测和状态修正,从而提高状态估计的准确性。 具体而言,卡尔曼滤波算法的实现分为两个步骤:预测和修正。首先,根据系统的状态转移方程预测当前时刻的状态,并预测系统的噪声影响。然后,利用观测值与预测值之间的残差,结合预测的协方差矩阵和观测噪声的协方差矩阵,进行状态修正,得到更准确的状态估计。 卡尔曼滤波算法C语言实现可以通过矩阵运算库实现,例如使用线性代数库进行矩阵的运算,或使用高级编程语言提供的矩阵操作函数。在实现过程中,需要根据具体的问题设定系统的状态转移方程和观测方程,并设置系统噪声和观测噪声的协方差矩阵。 卡尔曼滤波算法广泛应用于各个领域,如航天、导航、自动驾驶等。例如,在导航系统中,卡尔曼滤波算法可用于估计汽车的位置和速度,通过融合各种传感器(如GPS、陀螺仪、加速度计等)的测量数据,提供更准确的位置和速度信息。在自动驾驶领域,卡尔曼滤波算法能够提供对目标车辆的危险预警和位置估计,实现精确的决策和避障。 总之,卡尔曼滤波算法通过状态预测和修正的方式,能够提高系统状态的估计准确性,并在多个领域中得到广泛应用。在具体实现时,需要根据问题设定系统的动态方程和观测方程,并适配相应的编程语言和矩阵运算库。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值