【运动传感器】Madgwick算法(下)

本文详细介绍了Madgwick算法如何融合角速度计、加速度计和磁力计数据进行姿态估计,处理传感器误差,并进行系统标定。通过对角速度计误差的分析和标定实验,提升传感器在三维空间中的姿态计算准确性。
摘要由CSDN通过智能技术生成

上篇中,讲解了分别从角速度计、加速度计、磁力计估计姿态的方法。本篇文章讲解他们的融合,对误差的处理,以及标定实验。

融合

这一部分在文章中称为filter。
在上一篇文章中,我们能够通过角速度计的读数 ω \omega ω,加速度计或磁力计的读数 d S d_S dS在每个采样间隔更新姿态四元数 q q q
q t + 1 = q t + 1 2 q t × ω t Δ t q_{t+1} = q_{t} + \frac{1}{2}q_t \times \omega_t \Delta t qt+1=qt+21qt×ωtΔt

q t + 1 = q t − μ ∇ f ∣ ∣ ∇ f ∣ ∣ q_{t+1}=q_t - \mu \frac{\nabla f}{||\nabla f||} qt+1=qtμff

其中 f f f是姿态拟合误差,可以通过当前姿态 q q q和读数 d S d_S dS计算得到。
两者融合有:

q t + 1 = q t + 1 2 q t × ω t Δ t − β ∇ f ∣ ∣ ∇ f ∣ ∣ Δ t q_{t+1} = q_{t} + \frac{1}{2}q_t \times \omega_t \Delta t - \beta \frac{\nabla f}{||\nabla f||}\Delta_t qt+1=qt+21qt×ωtΔtβffΔt

增量由两部分构成:

第一部分 1 2 q t × ω t \frac{1}{2}q_t \times \omega_t 21qt×ωt为通过角速度计获取的结果。
如果角速度计是完美的,则只需这部分即可。

第二部分 ∇ f ∣ ∣ ∇ f ∣ ∣ \frac{\nabla f}{||\nabla f||} ff为通过加速度计/磁力计获取的结果。其权重 β \beta β表示角速度计的误差。
如果误差为0,则不需要此项;否则,因为角速度计不完美,当前姿态 q q q有误差,导致拟合误差 f f f没有达到极小, ∇ f \nabla f

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值