PSINS开源代码初体验——航迹仿真与组合导航

PSINS是西北工业大学严恭敏教授开发的高精度捷联惯性系统及其组合导航系统开源软件(matlab, C++),软件及其他参考资料下载可以参见www.psins.org.cn。

PSINS和PX4 EKF在组合上比较大的区别,在于状态量的选择。PSINS使用误差量作为状态量,如失准角、速度误差、位置误差等;而PX4直接将要求的量作为状态量,如姿态四元数、速度、位置等。个人感觉PSINS中有很多仿真算法,配合严老师的手册以及论文,非常适合科研研究学习,PX4 EKF则更加偏向实际应用,适合工程实践。

本文只是一个对PSINS的初步尝试体验,主要参考《PSINS工具箱入门与详解》材料,仿真生成轨迹并进行组合导航。

航迹仿真

关于航迹仿真算法可以在readme.doc的章节10.8 Trajectory Profile & SIMU Sensor Simulation中找到。如果需要自己仿真航迹,可以参照该章节和demo\test_SINS_trj.m文件进行更改。

主要步骤:

  1. 按照说明,首先运行PSINS根目录下的psinsinit.m文件运行,完成工具箱的安装初始化。
  2. 打开demo\test_SINS_trj.m文件,运行仿真生成轨迹,并生成轨迹数据文件trj10ms.mat

IMU(陀螺、加速度计)数据
在这里插入图片描述
AVP(姿态、速度、位置)数据
在这里插入图片描述

组合导航仿真

主要步骤:

  1. 打开demo\test_SINS_GPS_153.m
  2. 设置惯性器件误差
  3. 设置AVP初值误差
  4. 设置卡尔曼滤波参数
  5. 运行进行SINS/GPS组合导航仿真

对于test_SINS_GPS_153.m,该demo中状态量为15维(包括失准角3维、速度误差3维、位置误差3维、陀螺常值误差3维、加速度计常值误差3维),量测量为3维(GPS位置)。使用该demo中默认设置,结果如下。

陀螺误差设置imuerr = imuerrset(0.03, 100, 0.001, 5),从默认设置仿真结果可以看到,有一个方向的陀螺在最后跟踪上了设置的陀螺误差,如果仿真时间再长一点,应该可以收敛在0.03deg/h附近。加速度计的三个方向都跟踪收敛到了所设置的100ug常值偏差。

组合导航AVP误差
在这里插入图片描述
组合导航状态量
在这里插入图片描述
整体感觉,严老师的手册非常清晰,代码可读性也还比较好,可以很快上手试验。非常感谢严老师无私地开放自己的心血,供所有导航爱好者学习,也希望自己之后有时间能把感兴趣的模块好好阅读学习一下。

  • 12
    点赞
  • 49
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值