基于卡尔曼滤波的惯性/GPS组合导航系统仿真平台
项目介绍
本项目是一个用于惯性导航系统(INS)与全球定位系统(GPS)组合导航的集成仿真平台。它通过软件仿真的方式,完整模拟了从载体轨迹生成、传感器数据仿真到多源信息融合滤波的整个流程。平台核心采用卡尔曼滤波系列算法(EKF/UKF),旨在为组合导航算法的研究、验证与性能评估提供一个灵活、可配置的测试环境。
功能特性
- 高自由度轨迹生成:支持自定义初始状态(位置、速度、姿态)和多种运动模式(如匀速、匀加速、圆周运动),亦可导入外部轨迹数据进行仿真。
- 逼真的传感器仿真:可配置的IMU(陀螺仪、加速度计)模型,能够模拟传感器零偏、高斯白噪声等典型误差;GPS仿真模块包含伪距噪声、时钟误差以及信号遮挡模拟。
- 先进的滤波算法:集成扩展卡尔曼滤波(EKF)与无迹卡尔曼滤波(UKF),提供稳定、高精度的状态估计。
- 完整的导航解算:基于惯性导航机械编排算法,实时输出载体的位置、速度与姿态信息。
- 全面的性能评估:提供多种可视化工具,用于对比真实轨迹与估计轨迹,分析位置、速度、姿态误差,并监控滤波器收敛状态。
使用方法
- 参数配置:在运行主脚本前,根据仿真需求设置相关参数。主要包括:
*
初始参数:初始经纬高、速度、横滚/俯仰/航向角。
*
传感器参数:IMU的零偏与噪声密度、GPS的误差参数。
*
轨迹参数:选择预设轨迹类型或指定外部轨迹文件。
*
滤波器参数:设置过程噪声矩阵Q、观测噪声矩阵R以及状态向量初值。
- 执行仿真:运行主程序文件。程序将按以下流程自动执行:
* 生成理想载体运动轨迹。
* 模拟IMU和GPS传感器的测量数据并叠加噪声。
* 执行组合导航卡尔曼滤波算法,融合IMU和GPS数据。
* 进行导航解算,得到最优估计结果。
- 结果分析:仿真结束后,平台将自动生成并显示:
*
数据图表:二维或三维轨迹对比图。
*
误差分析:各导航参数(位置、速度、姿态)的误差曲线与统计信息。
*
原始数据:生成的仿真数据与滤波结果可保存供进一步分析。
系统要求
- 操作系统:Windows / Linux / macOS
- 软件环境:MATLAB R2018b 或更高版本
- 必要工具包:MATLAB 基础安装即可运行,部分高级绘图功能可能需要 Statistics and Machine Learning Toolbox。
文件说明
主程序文件作为整个仿真平台的调度与控制核心,其功能涵盖了从初始化、仿真执行到结果呈现的全过程。具体而言,它负责读取用户设定的各项参数,依次调用轨迹生成、传感器数据仿真、组合滤波解算等核心模块,并最终对导航结果进行误差计算与可视化展示,从而完成一次完整的组合导航系统闭环仿真。