高精度IMU粗对准原理和实现

`


前言

imu为什么要进行对准呢?因为imu的数据输出是其自身坐标系的,一般定位为b系,平时导航的是n系,从b系到n系需要进行旋转才能让2个坐标系重合,旋转矩阵定义为Cnb。如何求这个Cnb?

如果imu是高精度的,它的陀螺能感知地球的自转(15°/小时),那么我们可以通过静止时的重力g和地球自转角速率wie来求Cnb。

如果imu是低精度的,不能感知地球自转,那就只能通过其他传感器,例如gnss或者磁力计来辅助求解了。


一、解析粗对准

当载体静止时,我们能得到地球自转角速度g和重力矢量wie在初始坐标系的分量,imu器件中陀螺仪的角速度wib和加速度计的比力值fib也可以求出,且他们之间可以旋转矩阵Cnb进行转换
在这里插入图片描述

虽然可以得到上面2个等式,但还不能求出Cnb,我们通过叉乘(两个向量的叉乘出来的向量,分别垂直于这两个向量)的形式分别构造2个向量
在这里插入图片描述

将上面的公式整合到一起,就可以求出Cnb
在这里插入图片描述式中的陀螺wibb和加计比力数据fibb用的是静止时间段内求的一个均值,目的是降低陀螺高频噪声和高频晃动的影响。

注:只有重力g和地球自转wie不共线时,才能求出上面的逆矩阵,故在地球两极不能用粗对准方法;由于测量误差的存在,姿态矩阵不是正交矩阵。

二、进阶版

在这里插入图片描述

三、代码实现

.链接: https://github.com/shaoudelaochao/ImuAlignment/tree/master/ImuAlignment

代码包含解析粗对准和基于速度误差的kalman精对准2部分。

  • 1
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值