加速度计的速度

Posted

技术标签:

【中文标题】加速度计的速度【英文标题】:Velocity from Accelerometer 【发布时间】:2017-08-25 03:39:31 【问题描述】:

我得出的结论是,在安卓设备中给定加速度计,不可能确定速度。假设我的初始速度为零,用于获得速度的积分模式将是

v_ib_b = old_v_ib_b + f_ib_b * dt ,

其中 v_ib_b 是惯性体框架中沿体轴解析的速度,f_ib_b 是加速度计测得的力。 如果我想计算智能手机在本地导航框架 ENU 中的速度,可以使用以下公式(简化 Bortz 方程,忽略科里奥利/双桨和运输速率):

v_eb_n = old_v_eb_n + (C_b_n * (f_ib_b + 0.5 * cross(omega_ib_b, f_ib_b)) - g) * dt

其中 C_b_n 是 ENU 的旋转矩阵体。 我尝试使用Sensor.TYPE_ROTATION_VECTOR、MadgwickAHRS 和我自己的传感器融合来分别获得 ENU 框架中的方向和旋转矩阵。无论使用哪一个,这都是在骑自行车时在几分钟内积分速度的输出(智能手机安装在面向天空的车把上):

这是集成的原始数据:

我假设加速度计的性能很差,噪音很大,并且随着时间的推移会抵消任何测量结果,因此无法获得速度。有什么想法吗?

【问题讨论】:

【参考方案1】:

加速度的相对非常小的变化会混入噪声中。是否有什么东西阻碍了 GPS 数据的使用?另一个方向是将陀螺仪数据与加速度计数据相结合,以更好地降噪,创建一个完整的 IMU。

【讨论】:

陀螺仪和加速度计相结合是什么意思?如果您说的是传感器融合,我已经这样做了以获得方向。

以上是关于加速度计的速度的主要内容,如果未能解决你的问题,请参考以下文章

iphone加速度计速度和距离

Android:使用加速度计的速度计算不正确

加速度计在恒定加速度和静止状态下

已知3维空间里刚体上3个点的加速度,如何求刚体上任意点的加速度。最好有公式推导。

如何从可变加速度计获得速度(在简单的线性运动中)?

加速度传感器是怎么检测震动的