💥💥💞💞欢迎来到本博客❤️❤️💥💥
🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。
⛳️座右铭:行百里者,半于九十。
📋📋📋本文目录如下:🎁🎁🎁
目录
💥1 概述
全球导航卫星系统(GNSS)和惯性测量单元(IMU)是常用的定位和导航技术。为了提高定位精度和可靠性,研究人员一直在探索将这两种技术融合的方法。
在融合IMU和GNSS数据时,状态卡尔曼滤波器是一种常用的技术。状态卡尔曼滤波器基于状态空间模型,通过对系统状态进行递推和更新,实现对系统的估计和预测。
在状态卡尔曼滤波器中,IMU提供了惯性导航系统的测量值,包括加速度和角速度。GNSS系统则提供了位置和速度的测量值。通过融合这两种数据,可以克服IMU的漂移和GNSS的不稳定性,从而提高导航系统的精度和鲁棒性。
融合IMU和GNSS的状态卡尔曼滤波器需要考虑IMU和GNSS的测量误差以及它们之间的时间同步。此外,还需要根据具体的应用场景和系统要求进行模型设计和参数调整。
通过研究状态卡尔曼滤波器的应用,可以有效提高IMU和GNSS融合导航系统的性能,为定位和导航应用提供更精确、可靠的解决方案。
📚2 运行结果
部分代码:
% mechanise epoch
double_integration;
% predict the imu errors using 15 error state kalman filter
predict;
% detect whether current epoch is zero update
zupt_detect;
% update
if stationary_combined(end) == 1
if zupt_flag == 1
zupt_flag = 0;
% stepwise yaw correction (bias)
%q = quaternProd(q,[0.999991 0 0 -0.00419996]);
end
% this is zero velocity update and imu error compensation with leveling, while foot is stationary
zero_update;
else
if zupt_flag == 2
zupt_flag = 1;
end
% this is double integration while foot is above the ground
update;
end
closed_loop_correction;
% mechanise epoch
double_integration;
% predict the imu errors using 15 error state kalman filter
predict;
% detect whether current epoch is zero update
zupt_detect;
% update
if stationary_combined(end) == 1
if zupt_flag == 1
zupt_flag = 0;
% stepwise yaw correction (bias)
%q = quaternProd(q,[0.999991 0 0 -0.00419996]);
end
% this is zero velocity update and imu error compensation with leveling, while foot is stationary
zero_update;
else
if zupt_flag == 2
zupt_flag = 1;
end
% this is double integration while foot is above the ground
update;
end
closed_loop_correction;
🎉3 参考文献
文章中一些内容引自网络,会注明出处或引用为参考文献,难免有未尽之处,如有不妥,请随时联系删除。
[1]郭承军.GNSS全球导航卫星系统完备性监测体系研究与设计[D].电子科技大学,2011.DOI:10.7666/d.D815054.
[2]张光华.全球导航卫星系统[D].哈尔滨工业大学,2013.DOI:10.7666/d.D419639.
[3]卢丹,赵崴震,钟伦珑.惯性导航系统/测距机系统辅助的机载全球导航卫星系统欺骗式干扰自主检测算法[J].电子与信息学报, 2022, 44(9):8.DOI:10.11999/JEIT210640.