卡尔曼滤波

1、假设你有两个传感器,测的是同一个信号。可是它们每次的读数都不太一样,怎么办?

取平均。

2、再假设你知道其中贵的那个传感器应该准一些,便宜的那个应该差一些。那有比取平均更好的办法吗?加权平均。怎么加权?

假设两个传感器的误差都符合正态分布,假设你知道这两个正态分布的方差,用这两个方差值,(此处省略若干数学公式),你可以得到一个“最优”的权重。接下来,重点来了:3、假设你只有一个传感器,但是你还有一个数学模型。模型可以帮你算出一个值,但也不是那么准。怎么办?把模型算出来的值,和传感器测出的值,(就像两个传感器那样),取加权平均。

最后一点说明:你的模型其实只是一个步长的,也就是说,知道x(k),我可以求x(k+1)。问题是x(k)是多少呢?答案:x(k)就是你上一步卡尔曼滤波得到的、所谓加权平均之后的那个、对x在k时刻的最佳估计值。于是迭代也有了。这就是卡尔曼滤波。



链接:https://www.zhihu.com/question/36808822/answer/80175392

如果是四旋翼,那么你的系统实际上假定了几个前提,而这些前提也是你能使用加速度计来测量姿态的原因。

1,你的飞行器在n系下三轴的加速度不大,加减速时间短。
2,你的飞行器大部分时间是保持水平,或说姿态机动幅度小时间短。

在这两个前提下,你可以用加速度计来测量n系下的重力矢量Gn[0 0 9.8]'在b系下的输出Gb,而且他们有关系Gb=Cn_b*Gn,Cn_b代表n系到b系的旋转矩阵。对磁罗盘而言也是同理。

如果你使用卡尔曼滤波来融合陀螺仪,加计,磁罗盘,实际上你是将陀螺仪的输出做为系统的增量预测,而姿态的增量方程即为卡尔曼的状态方程(其实就是四元数微分方程),之后再观测重力矢量和磁矢量做为测量方程。这样就得到了融合。

卡尔曼的优势在于,对于线性系统中的高斯噪声而言,卡尔曼滤波器是最优而且无偏的。但要达到最优无偏,你必须保证系统线性,而且只有高斯噪声,没有其它有色噪声,意味着你的系统模型必须尽可能准确(与线性冲突),把系统中的各个有色噪声都在状态方程中体现出来。同时,你还要尽可能准确地估计状态与测量噪声的能量(方差)。

如果以上条件不满足,卡尔曼并非是最好的选择。这也是目前绝大多数航模级遥控四旋翼不需要使用卡尔曼的原因——它们的传感器各种有色噪声太多且难以估计,而互补滤波足够简单且性能优良


  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值