
本文给出基于PSINS工具箱的单独GNSS导航、单独INS导航、两者结合组合导航(153EKF)的程序。并提供三者的轨迹对比、误差对比。
代码介绍
简介
本代码实现了基于 P S I N S PSINS PSINS工具箱的惯性测量单元 ( I M U IMU IMU) 数据生成与全球定位系统 ( G P S GPS GPS) 组合导航,通过扩展卡尔曼滤波 ( E K F EKF EKF) 对导航结果进行优化和对比。代码的主要功能包括:
- 轨迹生成:通过定义多个运动片段(如匀速、加速、转弯等),生成模拟的导航轨迹数据。
- IMU 数据处理:对生成的 IMU 数据添加噪声,以模拟真实环境中的传感器数据。
- GNSS 数据生成:在真实轨迹基础上生成 G P S GPS GPS定位数据,并引入随机噪声。
- 滤波过程:使用 E K F EKF EKF对 I M U IMU IMU和 G P S GPS GPS数据进行融合,输出滤波后的状态估计。
- 纯 INS 解算:独立进行 I M U IMU IMU数据的处理,计算和输出纯 I N S INS INS解算的结果。
- 误差统计:对滤波后的结果与真实轨迹进行比较,计算并输出误差特性
主要模块
- 轨迹设置:定义车辆的运动轨迹,通过不同的运动模式组合生成模拟轨迹。
- 初始化设置:设置 IMU 和 GPS 的初始误差参数,并初始化导航状态。
- GNSS 定位数据生成:在真实轨迹上加噪声,模拟 GPS 定位数据。
- 滤波程序:实现 EKF 算法,融合 IMU 数据和 GNSS 数据,输出滤波后的导航状态。
- 绘图部分:可视化真实轨迹、滤波结果和 GNSS 数据,帮助分析导航精度。
- 误差统计:计算并输出滤波后的定位误差,为评估滤波效果提供依据。
运行结果
三轴轨迹图:

各轴误差曲线:

命令行窗口的结果输出:

MATLAB代码
完整代码:https://download.youkuaiyun.com/download/callmeup/92282389
或:
如需帮助,或有导航、定位滤波相关的代码定制需求,请点击下方卡片联系作者
550

被折叠的 条评论
为什么被折叠?



