基于PSINS工具箱的EKF和UKF滤波与结果对比

基于PSINS工具箱,自定义三维的运动轨迹,并由轨迹换算出来的SINS数据、GNSS数据进行扩展卡尔曼滤波EKF和无迹卡尔曼滤波UKF的结果展示与效果对比。

注意

文件只有一个m文件,但是必须搭配工具箱,如果遇到我的私有函数,在github链接https://github.com/evandworld/psins240101上面下载。

如果不安装工具箱是无法正常运行的!!

部分代码

轨迹设置:

%% 轨迹设置
avp0 = [[0;0;0]; [0;0;0]; [0;0;0]]; % init avp
% trajectory segment setting
traj_ = [];
seg = trjsegment(traj_, 'init',         0);
seg = trjsegment(seg, 'uniform',      100);
seg = trjsegment(seg, 'accelerate',   10, traj_, 1);
seg = trjsegment(seg, 'uniform',      100);
seg = trjsegment(seg, 'coturnleft',   45, 2, traj_, 4);
seg = trjsegment(seg, 'climb',        10, 2, traj_, 50);
seg = trjsegment(seg, 'uniform',      100);
seg = trjsegment(seg, 'descent',      10, 2, traj_, 50);
seg = trjsegment(seg, 'uniform',      100);
seg = trjsegment(seg, 'coturnleft',   45, 2, traj_, 4);
seg = trjsegment(seg, 'uniform',      100);
seg = trjsegment(seg, 'deaccelerate', 5,  traj_, 2); %2
seg = trjsegment(seg, 'uniform',      100);

原创的3D轨迹图绘制程序:

figure;
plot3(trj.avp(:,7),trj.avp(:,8),trj.avp(:,9));
hold on
plot3(trj.avp(1,7),trj.avp(1,8),trj.avp(1,9),'*');
plot3(avp_ekf(:,7),avp_ekf(:,8),avp_ekf(:,9));
plot3(avp_ukf(:,7),avp_ukf(:,8),avp_ukf(:,9));
title('原创——3D轨迹图');
legend('真实值','起点','EKF滤波值','UKF滤波值');

在这里插入图片描述

下载地址

https://download.csdn.net/download/callmeup/88863883

  • 12
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
EKF/UKF工具箱是一种用于估计非线性系统的滤波算法工具。EKF代表扩展卡尔曼滤波器,UKF代表无迹卡尔曼滤波器。 EKF是基于卡尔曼滤波器的一种扩展,用于处理非线性系统。它通过线性化动态系统和观测方程的非线性函数,将非线性系统转化为线性系统,然后应用卡尔曼滤波器来实现估计。EKF的主要优点是可以处理非线性系统,但它的缺点是对线性化结果的准确性要求较高,可能会导致估计结果不准确。 UKF是一种改进的非线性估计算法,相较于EKF具有更好的性能。与EKF不同的是,UKF通过使用一个由一组称为“无迹变换”的点来代表概率分布的方法,来更准确地估计非线性系统。这些点在系统的均值和协方差附近进行选择,以保持概率分布的一致性,并保证滤波结果的准确性。与EKF相比,UKF在估计非线性系统时更具有鲁棒性和准确性。 EKF/UKF工具箱为研究者和工程师提供了一种方便的方式来实现EKFUKF算法。它通常包含计算EKFUKF所需的基本函数和工具,以及一些可视化和数据处理功能。通过使用这些工具箱,用户可以更快地实现EKFUKF算法,并在实际应用中进行参数估计和状态估计。同时,用户还可以根据自己的需求进行自定义和扩展,以满足特定问题的要求。 总而言之,EKF/UKF工具箱是一种用于估计非线性系统的滤波算法工具,通过提供EKFUKF算法的实现和功能,为用户提供了一种方便的方式来实现参数估计和状态估计。使用这些工具箱,用户可以更好地处理非线性系统,并获得更准确的估计结果。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

MATLAB卡尔曼

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值