tree888 发表于 2011-12-27 16:01:58

ADIS16405在进行卡尔曼滤波时,bias参数怎么设置?

初步设想是用加速度计和地磁传感器的测量值计算后作为测量值在卡尔曼滤波中体现,陀螺仪的测量值经四元数算法求出三个姿态角作为估计值.
但是看好多卡尔曼滤波中都把陀螺仪的bias值作为了一个状态变量,使X成为X_k=[φ_k,b_k],这个怎么处理啊?

tree888 发表于 2012-1-27 19:39:08

这么冷清,有用过的高人指点下呗……

plgxgl 发表于 2012-4-19 17:04:00

tree888 发表于 2012-1-27 19:39 static/image/common/back.gif
这么冷清,有用过的高人指点下呗……

我也在跟着前人用16405实现导航,不过我做的稍慢一些,可以相互交流

tree666 发表于 2012-11-16 16:39:35

plgxgl 发表于 2012-4-19 17:04 static/image/common/back.gif
我也在跟着前人用16405实现导航,不过我做的稍慢一些,可以相互交流

做的怎么样啦?

怎么联系?

徐浩文 发表于 2013-2-26 19:15:27

我们也是在做这个,你怎么样了啊

monkeynav 发表于 2013-2-27 08:39:24

在起飞时,先把导航仪摆正,保持静止,然后上电。
这时候,坐标不变,速度为0,加速度为-g*姿态矩阵,角速度为地球自转角速度*姿态矩阵,以这些数据作为观测量。
状态量误差项初始值为上次关机时的值,过程噪声填datasheet的零漂变化范围(initial bias)。
状态量姿态项用重力进行估计,过程噪声:俯仰滚转大约0.5度(根据你的器件性能),偏航大约2-3度(如果地磁校正ok)。
直到初始对准完毕之前,连续用这个配置进行解算,这样就能估计出每个轴的零漂。
然后把过程噪声全部换成in-run bias instability,就可以稳定工作。

折中方法2:
位置不变,速度为0,但载具可以围绕中心旋转。此时思路类似。

折中方法3:
如果必须上电后立刻进入导航,则bias设置为上次关机值,过程噪声设置为手册的in-run bias instability再加大一些。
如果卡尔曼算法是强跟踪卡尔曼(STEKF或者STUKF),打开强跟踪,令状态矢量快速接近真实值。

什么数据都没有的情况下,用0作为初始值,或者是简单校正陀螺仪零点(需要让被校正的轴向与地面保持一定角度,以扣除地球自转角速度,还要反过来180度以消除重力影响)。

原理:
某项参数如果没有起飞时校正,就用initial bias(任何时候,启动时的bias都在这个范围内,不管校正与否)
如果已经被校准过,用in-run bias instability(自从校正过并且在数据寄存器中扣除bias后,以后一定时间的bias在此范围内)
一般来说,如果你已经把校正值写入传感器的零漂寄存器,或者已经把采样数据减掉了误差,那么这算是in-run。没做过校正等于是initial

梦中花雨 发表于 2014-7-11 20:51:48

monkeynav 发表于 2013-2-27 08:39
在起飞时,先把导航仪摆正,保持静止,然后上电。
这时候,坐标不变,速度为0,加速度为-g*姿态矩阵,角速 ...

你好,请问下你这边有卡尔曼滤波的算法例程和mimu传感器数据融合算法程序的历程没啊,看的其他的例子没看怎么明白,求大哥指导下,谢谢。

jordangao 发表于 2014-10-8 10:29:13

plgxgl 发表于 2012-4-19 17:04
我也在跟着前人用16405实现导航,不过我做的稍慢一些,可以相互交流

你好,可以留个你的联系方式么,请请教你一些问题,谢谢!
页: [1]
查看完整版本: ADIS16405在进行卡尔曼滤波时,bias参数怎么设置?