文章目录

  • 航迹仿真
  • 组合导航仿真

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误差

组合导航状态量

整体感觉,严老师的手册非常清晰,代码可读性也还比较好,可以很快上手试验。非常感谢严老师无私地开放自己的心血,供所有导航爱好者学习,也希望自己之后有时间能把感兴趣的模块好好阅读学习一下。

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

  1. java代码初体验_第一次Java 8体验

    java代码初体验 像世界其他地方一样,我深深地爱上了Slack. 为什么? 原因很多,但主要的原因是它提供了一种围绕通讯而非工具真正构建SDLC流程的新方法. 您认为这些天哪个更常见,杂乱无章的机智 ...

  2. R3LIVE开源代码全体验及测试

    作者丨颍川滞@知乎 来源丨https://zhuanlan.zhihu.com/p/453038352 编辑丨3D视觉工坊 前言: Hello,大家好,我是清华自动化的小郭,前两个月我开始做SLAM研 ...

  3. Vue3通透教程【三】Vue3代码初体验找不同

    文章目录

  4. VLFeat开源库初体验

    由于一门课的课后大作业发现了vlfeat这个库,也遇到了一点小问题,所以记录下来. 1.下载VLFeat库文件 直接官网就有 http://www.vlfeat.org/download/vlfeat ...

  5. 使用ROS开源代码和激光雷达进行小车的定位导航

    前面的话 之前我做了一个使用激光雷达进行定位的项目,开始了一段时间对ROS.激光雷达的slam等应用的研究.以下我只是记录下我学习的历程以及一些结论,供大家参考.下面主要分为以下四个部分分别进行介绍. ...

  6. mpu6500-gnss组合导航代码分析

    文章目录 前言 代码分析 调参 P矩阵 陀螺仪偏置P矩阵 加速度计偏置P矩阵 前言 导航数据为如下链接,数据集使用了低成本Mems器件MPU6500和GNSS做组合导航.代码运行需要严老师psins2 ...

  7. MTI-G-710/GNSS组合导航代码分析

    这里写自定义目录标题 前言 代码分析 主函数 sinsgps核心函数 IMU参数辨识 结果分析 1.原始数据分析 2.陀螺仪零偏估计 3.加速度计零偏估计 4.自适应卡尔曼滤波 5.组合导航下的方位角 ...

  8. 大疆TT无人机编程初体验,教你对拥抱开源的无人机为所欲为!

    先放个项目演示视频镇帖: 可能是大疆TT无人机的第一款DIY遥控器!大疆TT无人机编程试飞初体验! 认识我的朋友,大概都知道,我是一个"运气爆棚"的人,经常能"捡&quo ...

  9. ganymed ssh-2 for java,SSH客户端开发开源组件Ganymed SSH-2 for Java初体验,ganymedssh-2

    SSH客户端开发开源组件Ganymed SSH-2 for Java初体验,ganymedssh-2 1.Ganymed SSH-2 for Java Ganymed SSH-2 for Java是一 ...

最新文章

  1. 依赖包 全局_composer 更新指定的依赖包
  2. 最全干货:从写简历,到面试、谈薪酬的那些技巧和防坑指南
  3. 北方股份无人驾驶矿卡_踏歌智行携手北方股份10台无人驾驶新车批量投产 | 合创投资...
  4. tsf php,TSF:腾讯推出的 PHP 协程方案
  5. 北大组织“富豪俱乐部”,有何不可?
  6. MySQL之alter和upate
  7. svm预测结果为同一个值_实战:用SVM算法进行乳腺癌预测
  8. js 获取java_js中获取当前时间
  9. Python生成器实现及yield关键字
  10. meshgrid 的使用方法
  11. Shell练习(十一)
  12. TDSQL 在微众银行的大规模实践之路
  13. linux yum安装python3_linux下yum安装python3
  14. CORS - 引入预检请求的动机是什么?
  15. python 闭包,装饰器,random,os,sys,shutil,shelve,ConfigParser,hashlib模块
  16. [BZOJ4487] [JSOI2015]染色问题
  17. 拼音搜索 -- 自动解析拼音汉子组合(包含多音字,拼音缩写)
  18. 黑客 骚扰欺诈 呼死你之外还假冒给好友打电话
  19. 反向代理和正向代理的区别
  20. c语言陶陶摘苹果数组,关于新手数组:样题:陶陶摘苹果

热门文章

  1. 解决Required XXX parameter ‘XXX‘ is not present问题
  2. 北大c语言百度云资源,北大C语言讲义.pdf
  3. CSS进阶(3)- 布局
  4. linux远程date命令,linux之date命令详解
  5. 约瑟夫环(51nod)
  6. 云台山上初见雪,聆听冬的心语
  7. qt 判断文件是否存在
  8. 基于MinIO/Deleta Lake/Dremio和Superset或Metabase搭建简单的数据湖
  9. 【打卡】21天学习挑战赛—RK3399平台开发入门到精通-day9
  10. 商城口碑颜值双高蓝牙耳机推荐,双11蓝牙耳机选购品牌排行榜