惯性导航误差微分方程

在IMU惯性导航误差分析建模中 一共有三个微分方程 分别对应姿态误差微分方程 速度误差微分方程和位置误差微分方程

姿态误差微分方程

n为东北天坐标系 b为机体坐标系 这里求出二者之间的转换关系就可以求出IMU的姿态 这里旋转关系用旋转矩阵C表示 对这个旋转矩阵求导:

ωnbb\omega^b_{nb}ωnbb​为从n系转到b系 并且这个旋转在b系下的表示 这个不容易进行测量 所以将这个角速度进行拆分 最后得到:

上面的方程中有三个变量 这三个变量均含有误差 下面对这三个带有误差的变量进行逐一分析

旋转向量

头上带波浪线的表示这个变量包含了误差
我们要求的就是n系和b系之间的旋转矩阵 但是这个旋转矩阵包含噪声 现在我们做以下认为:

我们认为这个旋转矩阵的误差在n系上 带误差的 旋转矩阵将b系旋转到了n’ 系而不是n系 所以需要一个n系和n’ 系的旋转矩阵
从n系到n’ 系 我们用旋转矢量ϕ\phiϕ来表示 旋转矢量的方向为绕着轴旋转轴的方向 大小或者模长为旋转的角度
旋转矢量其实包含三个元素 称为失准角 在后面状态转移方程中要用到
有罗德里格斯公式:

因为旋转矢量趋近于0 所以最后结果为

角速度 i 到 b


后面的误差项其实就是IMU内参的误差 展开为:

其中ε\varepsilonε为陀螺仪的bias

角速度 i到 n


不是做导弹这种惯性导航的话 这两项误差太小 不作考虑

化简结果

中间化简过程就省略了 难度不是很大 展示最后化简结果:

速度误差微分方程

带误差的微分方程:

f为加速度
上面的公式中四个变量均有误差 下面进行分解:

最后一顿带 得到最后结果:

位置误差微分方程

这个就比较简单了 直接给出结果了:

状态转移方程

这里的状态转移方程可以理解为卡尔曼滤波中的状态转移方程
首先我们将上面三个误差微分方程做进一步展开
首先是位姿误差微分方程展开

位姿误差微分方程展开

误差微分方程为

展开:

这里的ϕ\phiϕ是我们之前提到过的旋转矢量 它包括三个方向的失准角
ω\omegaω为地球自转角速度 LLL为纬度值
ε\varepsilonε为b系下的测量值 需要转到n系下

速度误差微分方程展开


道理跟上面位姿误差微分方程展开差不多 这里不做过多解释
其中∇\nabla∇为加速度计的bias

位置误差微分方程展开


过于简单不做解释

整合进状态转移方程中

状态方程一般形式为:

状态量为:

其中F矩阵为X状态量各个元素之间的转移关系

脑补一下 横着是五个状态的元素 竖着也是五个状态的元素
例如F23F_{23}F23​为速度误差的导数和姿态误差的关系


W为器件的噪声:

ωg\omega_gωg​为陀螺仪的噪声 ωa\omega_aωa​为加速度计的噪声

这一部分是F中的后半部分 也是可以求导获得的 因为噪声是和bias以同样的方式输入进来的

【IMU】【卡尔曼滤波】惯性导航误差微分方程与状态转移方程相关推荐

  1. 【滤波跟踪】基于matlab无迹卡尔曼滤波惯性导航+DVL组合导航【含Matlab源码 2019期】

    ⛄一.自主导航技术简介 1 基于SINS/声学的AUV自主导航 1.1 基于SINS/DVL的AUV自主导航技术 DVL是基于声呐多普勒效应的测速设备, 能提供较高精度的载体速度信息, 且其误差不随时 ...

  2. 运筹学状态转移方程例子_强化学习第4期:H-J-B方程

    在上一篇文章中,我们介绍了一种最简单的MDP--s与a都是有限的MDP的求解方法.其中,我们用到了动态规划的思想,并且推出了"策略迭代"."值迭代"这样的方法. ...

  3. c++ 多重背包状态转移方程_背包问题之零钱兑换

    读完本文,你可以去力扣拿下如下题目: 518.零钱兑换II ----------- 零钱兑换 2 是另一种典型背包问题的变体,我们前文已经讲了 经典动态规划:0-1 背包问题 和 背包问题变体:相等子 ...

  4. c++ 多重背包状态转移方程_动态规划入门——详解经典问题零一背包

    本文始发于个人公众号:TechFlow,原创不易,求个关注 今天是周三算法与数据结构专题的第12篇文章,动态规划之零一背包问题. 在之前的文章当中,我们一起探讨了二分.贪心.排序和搜索算法,今天我们来 ...

  5. 运筹学状态转移方程例子_如何确定动态规划的转移方程

    先观察最后一个状态 比如 LintCode 114 ,题意是从一个二维数组的左上角走到右下角共有多少种不同的路径.且每次只能向下或者向右走一步,最后一个状态就是右下角 2. 观察到达最后一个状态的前面 ...

  6. 运筹学状态转移方程例子_动态规划 Dynamic Programming

    从运筹学和算法的角度综合介绍动态规划 规划论 Mathematical Programming / Mathematical Optimization In mathematics, computer ...

  7. 【C++】动态规划之状态转移方程(单串)

    目录 一.单串 最长递增子序列(依赖O(n)个子问题) 300. 最长递增子序列 673. 最长递增子序列的个数 最大子数组和(依赖O(1)个子问题,可以用滚动数组优化空间复杂度) 53.最大子数组和 ...

  8. 算法设计 - 01背包问题的状态转移方程优化,以及完全背包问题

    01背包问题的一维状态转移方程的推导 前提摘要 前面这篇博客中: 算法设计 - 01背包问题_伏城之外的博客-CSDN博客 我们已经推导出了01背包问题的二维数组dp状态转移方程公式: 假设有N种不同 ...

  9. 100道动态规划——34 UVA 10559 Blocks 状态的定义 状态转移方程

    好吧,我想到的是枚举决策... 居然是个类似于区间DP的感觉.恩..确实是呀,只不过是需要在DP的时候附加上额外的条件 定义状态dp[i][j][k]表示区间i~j且右边附加了k个与j同色的方块的最大 ...

最新文章

  1. 前沿|8种面部表情实时追踪,你的喜怒哀乐全被AI看穿了
  2. 无人驾驶、VR、AR时代即将开启,中国电信2018年将完成5G商用版本
  3. itext库产生word文档示例(.doc)
  4. CA计划6.14亿美元收购安全测试公司Veracode
  5. java就业培训教程 第一章读书笔记
  6. 【学习Android NDK开发】Java通过JNI调用native方法
  7. 企业微信3.0版本发布:客户朋友圈功能正式上线
  8. python中head_Python(Head First)学习笔记:二
  9. java linux driver,JAVA:使用GeckoDriver在Linux上运行Selenium测试:驱动程序不可执行
  10. 【数据结构和算法笔记】遍历生成树
  11. python安装无法直接安装的包
  12. java获取网卡正真的mac_java获取网卡的mac地址
  13. 利用iframe来做无刷新上传
  14. matlab线性拟合
  15. C 通过四个点计算两条直线的交点
  16. 使用setBounds()函数设置Java布局
  17. Java---多线程入门
  18. 09_Python3.6+selenium2.53.6自动化测试_通过class_name定位百度输入框
  19. 【征集反馈】工作中让你印象最深刻、最想吐槽的一件事是什么?
  20. 粒子群优化算法的寻优算法——非线性函数极值寻优Matlab

热门文章

  1. java错位_【LeetCode(Java) - 634】寻找数组的错位排列
  2. 十年前后校园流泪经典语录
  3. ffmpeg将文件夹中的一批图片转成视频
  4. 泉州师范学院计算机科学与技术学费,泉州师范学院
  5. 如何在Teams中实现审批任务
  6. Android学习之-RecyclerView带刺的玫瑰
  7. 开源的语音交互平台简介及对比
  8. 空气过滤网行业专用术语
  9. 微服务架构和SOA架构的区别
  10. CSS之100%和100vh的区别