四元数姿态解算,mpu6050 dmp之后需要卡尔曼滤波吗
来源:整理 编辑:智能门户 2025-01-27 08:54:02
本文目录一览
1,mpu6050 dmp之后需要卡尔曼滤波吗
卡尔曼滤波就好了,新手用起来都差不多的,挑一个便宜的上手就可以了,算法网上不好找,不过买的模块好的话自己写算法也很简单,我做过这个,给好评继续聊
2,关于四元数
首先,虚数单位之间的转换关系是√-1=iln-1=jπ=j/i简单的说就是物体绕世界坐标系的xyz 3个坐标轴的旋转角度。3个参数很好理解 绕x轴旋转二分之派,绕y轴旋转_rotate, 绕z轴旋转二分之派
3,DMP解算问题
MPU-6050模块中DMP解算出的是:"四元数"、各轴的陀螺仪“读数”与各轴的“加速度”、。通过"四元数"可以解算“欧拉角” 下面是DMP的包结构(就是一次读取DMP所获得的信息)。 40-41:我估计是MPU-6050中温度传感器的测量值mpu6050的dmp可直接输出加速度,角速度和各轴的倾斜角度不需要姿态解算了,可直接用
4,四元数姿态解算如何去除加速度计
关于程序这一块我不太懂,但是想解算载体运动姿态只要陀螺和加计是可以实现的。磁力计嘛对环境要求比较高,容易受到外界干扰,精度较差。高精度的陀螺可以自寻北,不需要磁力计来寻磁北的。\r\n希望可以帮到你就是内部的运动引擎,直接输出四元数,可以减轻外围微处理器的工作负担且避免了繁琐的滤波和数据融合,dmp驱动是官方写的一个库,是430的,用来使用内肌单冠竿攉放圭虱氦僵部的dmp。如果您认可我的答案,请。您的,是我答题的动力。
5,四元数计算姿态 为什么会差180度
在n系中,加速度计输出为,经过bCn(用四元数表示的转换矩阵)转换之后到b系中的值为;在b系中,加速度计的测量值为,现在和均表示在b系中的竖直向下的向量,由此,我们来做向量积(叉积),得到误差,利用这个误差来修正bCn矩阵,于是四元数就在这样一个过程中被修正了。但是,由于加速度计无法感知z轴上的旋转运动,所以还需要用地磁计来进一步补偿。加速度计在静止时测量的是重力加速度,是有大小和方向的;同理,地磁计同样测量的是地球磁场的大小和方向,只不过这个方向不再是竖直向下,而是与x轴(或者y轴)呈一个角度,与z轴呈一个角度。记作,假设x轴对准北边,所以by=0,即。倘若知道bx和bz的精确值,那么就可以采用和加速度计一样的修正方法来修正。只不过在加速度计中,在n系中的参考向量是,变成了地磁计的。如果我们知道bx和bz的精确值,那么就可以摆脱掉加速度计的补偿,直接用地磁计和陀螺仪进行姿态解算,但是你看过谁只用陀螺仪和地磁计进行姿态解算吗?没有,因为没人会去测量当地的地磁场相对于东北天坐标的夹角,也就是bx和bz(插曲:关于这个bx和bz的理解:可以对比重力加速度的理解,就像vx vy vz似的,因为在每一处的归一化以后的重力加速度都是0 0 1然后旋转到机体坐标系,而地球每一处的地磁大小都不一样的,不能像重力加速度那样直接旋转得到了,只能用磁力计测量到的数据去强制拟合。)。那么现在怎么办?前面已经讲了,姿态解算就是求解旋转矩阵,这个矩阵的作用就是将b系和n正确的转化直到重合。现在我们假设nCb旋转矩阵是经过加速度计校正后的矩阵,当某个确定的向量(b系中)经过这个矩阵旋转之后(到n系),这两个坐标系在XOY平面上重合(参考DCM IMU:Theory的Drift cancellation部分),只是在z轴旋转上会存在一个偏航角的误差。下图表示的是经过nCb旋转之后的b系和n系的相对关系。可以明显发现加速度计可以把b系通过四元数法从任意角度拉到与n系水平的位置上,此时只剩下一个偏航角误差。这也是为什么加速度计无法修正偏航的原因。
6,姿态解算中为什么加速度计无法感知z轴上的旋转运动
刚好在看姿态解算部分,粗略回答一下,有答的不对的地方欢迎讨论交流。互补滤波有两种方法,加速度计和陀螺仪 加速度计,陀螺仪和磁力计,也就是所谓的IMU和AHRS.IMU方案是用加速度计修正陀螺仪,关于加速度计求解角速度也即是把重力分解到机体系上,通过反三角函数可以求解角速度,对于无法感知z轴上的旋转运动可以这样理解,当机体沿着z轴方向旋转时,分解出来的向量与旋转前并没有变化,也即水平面上没有重力分量,所以加速度计无法感知z轴的旋转,所以如果用这种姿态结算方法时,需要手动将机头对准正北方向,所以偏航的求解是有误差的。在n系中,加速度计输出为,经过bCn(用四元数表示的转换矩阵)转换之后到b系中的值为;在b系中,加速度计的测量值为,现在和均表示在b系中的竖直向下的向量,由此,我们来做向量积(叉积),得到误差,利用这个误差来修正bCn矩阵,于是四元数就在这样一个过程中被修正了。但是,由于加速度计无法感知z轴上的旋转运动,所以还需要用地磁计来进一步补偿。加速度计在静止时测量的是重力加速度,是有大小和方向的;同理,地磁计同样测量的是地球磁场的大小和方向,只不过这个方向不再是竖直向下,而是与x轴(或者y轴)呈一个角度,与z轴呈一个角度。记作,假设x轴对准北边,所以by=0,即。倘若知道bx和bz的精确值,那么就可以采用和加速度计一样的修正方法来修正。只不过在加速度计中,在n系中的参考向量是,变成了地磁计的。如果我们知道bx和bz的精确值,那么就可以摆脱掉加速度计的补偿,直接用地磁计和陀螺仪进行姿态解算,但是你看过谁只用陀螺仪和地磁计进行姿态解算吗?没有,因为没人会去测量当地的地磁场相对于东北天坐标的夹角,也就是bx和bz(插曲:关于这个bx和bz的理解:可以对比重力加速度的理解,就像vx vy vz似的,因为在每一处的归一化以后的重力加速度都是0 0 1然后旋转到机体坐标系,而地球每一处的地磁大小都不一样的,不能像重力加速度那样直接旋转得到了,只能用磁力计测量到的数据去强制拟合。)。那么现在怎么办?前面已经讲了,姿态解算就是求解旋转矩阵,这个矩阵的作用就是将b系和n正确的转化直到重合。现在我们假设nCb旋转矩阵是经过加速度计校正后的矩阵,当某个确定的向量(b系中)经过这个矩阵旋转之后(到n系),这两个坐标系在XOY平面上重合(参考DCM IMU:Theory的Drift cancellation部分),只是在z轴旋转上会存在一个偏航角的误差。下图表示的是经过nCb旋转之后的b系和n系的相对关系。可以明显发现加速度计可以把b系通过四元数法从任意角度拉到与n系水平的位置上,此时只剩下一个偏航角误差。这也是为什么加速度计无法修正偏航的原因。
文章TAG:
四元数 姿态 解算 之后 四元数姿态解算 dmp之后需要卡尔曼滤波吗