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

2023-05-16

惯性导航误差微分方程

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

姿态误差微分方程

n为东北天坐标系 b为机体坐标系 这里求出二者之间的转换关系就可以求出IMU的姿态 这里旋转关系用旋转矩阵C表示 对这个旋转矩阵求导:
在这里插入图片描述
ω n b b \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 ω为地球自转角速度 L L L为纬度值
ε \varepsilon ε为b系下的测量值 需要转到n系下

速度误差微分方程展开

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

位置误差微分方程展开

在这里插入图片描述
过于简单不做解释

整合进状态转移方程中

状态方程一般形式为:
在这里插入图片描述
状态量为:
在这里插入图片描述
其中F矩阵为X状态量各个元素之间的转移关系
在这里插入图片描述
脑补一下 横着是五个状态的元素 竖着也是五个状态的元素
例如 F 23 F_{23} F23为速度误差的导数和姿态误差的关系
在这里插入图片描述
在这里插入图片描述
W为器件的噪声:
在这里插入图片描述
ω g \omega_g ωg为陀螺仪的噪声 ω a \omega_a ωa为加速度计的噪声
在这里插入图片描述
这一部分是F中的后半部分 也是可以求导获得的 因为噪声是和bias以同样的方式输入进来的

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

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

随机推荐

  • json 笔记

    JSON简介 之前一直以为JSON只是一种文件格式 xff0c 了解了才发现并不是 JSON JavaScript Object Notation JavaScript 对象表示法 JSON 是存储和交换文本信息的语法 类似 XML JSO
  • Zookeeper启动成功后拒绝连接的解决方案

    zookeeper启动成功后zkServer sh status出错 一 问题出现情形 运行zookeeperd后显示启动成功 xff1a JMX enabled by default span class token keyword Us
  • STM32实战-高级定时器带死区的互补PWM输出

    前言 xff1a 平时我们设计点击驱动电路时 xff0c 一般会采用npn和pnp三极管 xff0c 来控制电机的导通和关闭 xff0c 但是三级管内部自带电容 xff0c 断电后不会立马断掉 xff0c 会经过很小的一段时间才会放电完毕
  • ldmia和stmia的用法

    ldmia r0 r3 r10 将基址寄存器r0开始的连续8个地址单元的值分别赋给r3 r4 r5 r6 r7 r8 r9 r10 注意的是r0指定的地址每次赋一次r0会加1 ld代表load 指向下一个地址单元 stmia r1 r3 r
  • Mysql中插入语句value和values的区别

    Mysql中插入语句 xff0c 官方文档中VALUE和VALUES都是正确的 xff0c 经过实际的操作也证实了两者也都是可以使用的 本文主要对二者插入语句数量的效率稍微的进行探究 INSERT具体使用可查看 xff1a insert官方
  • 使用VSCode配置Anaconda(3.7)-python3.6(yolov3)环境

    最近因为毕设需要用到目标检测的功能 xff0c 所以在完全小白的前提下学习了下YOLOv3 xff08 Windows10 43 Keras 43 VSCode 43 Tensorflow xff09 xff0c 在使用VSCode时遇到了
  • 深度学习Ubuntu20.04+CUDA+Pytorch环境配置+无显示器远程控制(2)

    Win10远程无显示器Ubuntu20 04系统 对于深度学习 xff0c 很多同学用的也是台式的工作站 xff0c 而不是集群服务器 但是 xff01 xff01 xff01 xff01 xff01 工作站的噪声很大 xff0c 所以我们
  • github合并分支~

    合并分支只需6个点击 1 点击这里 2 点击这里会看到有更新的分支 3 可以选择需要合并的分支 xff0c 关系是把1合并到2上 4 点击进行创建合并 5 看到对勾就是没有冲突可以合并 xff0c 点击按钮合并 6 点击confirm按钮提
  • 大华SDK+JAVA+4g网络摄像头进行二次开发

    前言 监控 xff0c 相信大家都不陌生 现在的监控技术发展迅速 xff0c 国内以海康威视为首的智能视频监控提供商也层出不穷 现在 xff0c 这些提供商都已经提供了相应的SDK以及API接口 xff0c 能够很好的支撑我们进行摄像机的二
  • 运用docker到ros2工程

    此方法制作的镜像可以直接在docker容器的伪终端对ros2工程进行命令行操作 xff0c 从而运行工程 基础知识 xff1a 登陆镜像仓库 sudo docker login 退出镜像仓库 sudo docker logout 查看镜像
  • FreeRTOS

    FreeRTOS概述 FreeRTOS目录结构 主要涉及2个目录 xff1a Demo Demo目录下是工程文件 xff0c 以 34 芯片和编译器 34 组合成一个名字 比如 xff1a CORTEX STM32F103 Keil Sou
  • Octave实现一元线性回归详解及错误分析(吴恩达老师作业)

    注意事项 建议使用CLI xff0c 简洁明了 如果函数在定义期间输入错误 xff0c 而运行期间才发现的话 xff0c 通过修改函数名 xff0c 再执行新函数 代码如下 首先要cd到txt文件保存的路径下才可读取txt文件 xff0c
  • 大半夜记录一个小知识点——matlab中omitnan未定义的问题

    之前做了老师留的一个实验 如何用matlab清除实验数据中的 脏数据 xff0c 或者说是滤波器 其中有这样一组代码 xff1a a span class token operator 61 span span class token fu
  • 【机器学习小白必备】Scikit-learn(Sklearn)最常用的函数这里都帮您总结好了~速速来取!持续更新!

    Scikit learn Sklearn 常用函数详解大全 在这篇文章中 xff0c 总结了sklearn模块常用的函数 xff0c 建议收藏 xff01 因为会持续更新 xff01 文章目录 Scikit learn Sklearn 常用
  • 【总结好文】【新手避坑指南】Ubuntu18.04 轻松愉快的安装ROS并带你仿真个无人机飞行

    Ubuntu18 04 ROS无人机PX4仿真环境搭建 引用文章 环境搭建总流程 indoor1 launch is neither a launch file 的解决办法 xff08 在最后 xff09 Gazebo模型大全下载方式无人机
  • Linux下CMake链接googletest【CMake编写】

    源码下载 git clone https github com google benchmark git git clone https github com google googletest git benchmark googlete
  • Google Colab的详细使用教程—YOLOv3为例

    一 先哔哔几句热下身 相信疫情隔离在家而且还要使用深度学习的小伙伴们或多或少都会面临么的钱买高性能显卡又么的钱租服务器的窘境 下面我就来给小伙伴们介绍以下如何使用Google Colab免费服务器的故事吧 xff08 至于怎么上Google
  • 【一文足以系列】ORB SLAM2完整详细算法流程

    目录 算法目的算法应用场景算法优点相关概念点内涵算法算法实现tracking线程步骤单目相机初始化成功条件单目相机初始化器初始化后续 初始位姿估计跟踪局部地图关键帧的创建参考关键帧 局部建图线程构建地图步骤好的地图点标准创建新地图点地图点融
  • IMU数学模型推导

    旋转运动学 质量块在body坐标系下的坐标为 xff1a body坐标系为imu坐标系 惯性系为世界坐标系 只考虑旋转 旋转到惯性系下 xff1a 对时间求导 如下 xff1a 其中 对 R R R 的求导 有如下推导 xff1a 其中
  • 【IMU】【卡尔曼滤波】惯性导航误差微分方程与状态转移方程

    惯性导航误差微分方程 在IMU惯性导航误差分析建模中 一共有三个微分方程 分别对应姿态误差微分方程 速度误差微分方程和位置误差微分方程 姿态误差微分方程 n为东北天坐标系 b为机体坐标系 这里求出二者之间的转换关系就可以求出IMU的姿态 这