加速度计,磁力计与姿态角的关系。(网上很多资料都是错的,请看我的!)



请读者自行把公式(3-1)计算出来,然后得到两个列向量,如下图:


注意,网上关于俯仰角给出了不少公式,但是都是来自这两个向量的对应关系。我写出的应该是最简形式了。上图论文中的形式当然也可以,甚至写成

俯仰角=arctan(ax/sqrt(ay*ay+az*az))

也没毛病,都是等价的。

下面是磁力计与姿态角的关系——


这张图公式可以直接用,我已经验算过了,没毛病。得到的值是相对于磁北的航向角。

  • 17
    点赞
  • 162
    收藏
    觉得还不错? 一键收藏
  • 27
    评论
九轴融合算法一般包括以下步骤: 1. 加速度计和陀螺仪的数据预处理 加速度计和陀螺仪的数据通常需要进行预处理,包括去除偏移量、校准和滤波等操作。去除偏移量可以通过采集一段时间的静态数据并求平均值来实现。校准可以根据厂家提供的校准方法进行。滤波可以采用低通滤波器进行。 2. 计算姿态 通过加速度计和陀螺仪的数据,可以计算出当前的姿态,包括俯仰、横滚和偏航。其中俯仰和横滚可以根据加速度计的数据计算,偏航可以根据陀螺仪的数据计算。 3. 磁力计数据的处理 磁力计数据需要进行校准和滤波,同样可以采用厂家提供的校准方法和低通滤波器。 4. 磁力计姿态的计算 通过磁力计的数据可以计算出当前的偏航。不过磁力计的数据容易受到外部磁场的干扰,因此需要进行磁场校准。 5. 九轴融合算法 九轴融合算法通常采用卡尔曼滤波算法实现。该算法可以将加速度计、陀螺仪和磁力计的数据进行融合,得到更加准确的姿态。具体实现可以参考相关资料或者开源代码。 在STM32上实现九轴融合算法需要采集传感器数据,并进行预处理、姿态计算和融合算法实现。可以采用STM32的ADC模块采集传感器数据,使用定时器实现时间计数,并使用数学库实现姿态计算和卡尔曼滤波算法。同时需要注意调试和校准过程中的精度和稳定性。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值