【问题标题】:what algorithm does DeviceMotion adopted to calculate attitude from accelerometer and gyro?DeviceMotion 采用什么算法从加速度计和陀螺仪计算姿态?
【发布时间】:2012-05-18 04:00:24
【问题描述】:

根据参考, deviceMotion 属性仅在同时具有加速度计和陀螺仪的设备上可用。这是因为它的子属性是传感器融合算法的结果,即两个信号一起评估以减少估计误差。

Emm,我的问题是 CMMotionManager 用来进行计算的内部实现或算法在哪里。我想要一些关于这个所谓的“传感器融合算法”的细节

流行的融合算法是例如卡尔曼滤波器和导数,但我猜 CMMotionManager 的内部实现是基于更简单且因此更快的算法。我希望对来自加速度计和陀螺仪的传感器数据进行一些简单但足够好的数学计算,以最终计算滚动、偏航和俯仰

【问题讨论】:

    标签: algorithm accelerometer gyroscope core-motion kalman-filter


    【解决方案1】:

    不清楚what is actually implemented in Core Motion

    至于卡尔曼滤波器以外的滤波器:我已经基于这个manuscriptShimmer 2 设备实现了传感器融合。

    您可能会在Complementrary Filters 上找到这个答案也很有帮助,尤其是filter.pdf

    我不会使用 roll、pitch 和 yaw 有两个原因:(1) it messes up the stability of your app 和 (2) you cannot use it for interpolation

    【讨论】:

    • emm,我最终使用了 quatenian 矩阵并将其转移到另一个坐标中的偏航、滚动和俯仰,让一切更加稳定
    • @user1386058 - 你能帮帮我吗,我也想出一个稳定的姿态计算,你能不能给我一些参考或代码,以便我学习! :)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-05-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-11-10
    相关资源
    最近更新 更多