首页 > 解决方案 > 使用加速度计数据和卡尔曼滤波查找汽车行驶的距离

问题描述

我目前正在使用 GPS、磁力计和车轮脉冲旋转的卡尔曼滤波来估计汽车的位置。我使用磁力计和车轮旋转脉冲(距离我知道每个脉冲覆盖多少距离)来预测下一个位置,并使用 GPS 数据对其进行校正。到目前为止,一切都很好。问题是有些车没有给我车轮旋转脉冲,所以我必须寻找另一个距离来源。我正在使用的设备也有 3 轴加速度计,所以我想知道我是否可以使用加速度计来预测下一个位置。我知道随着时间的推移累积的积分误差,但在这里因为我只对绝对距离而不是累积距离感兴趣,所以积分误差应该不重要吧?

如果这可以实现 - 我有 2 个问题

  1. 由于它的汽车距离估计,我想加速度计的 z 方向不是必需的,所以只使用加速度计数据的 x 参数就足以测量距离?

  2. 另外,我应该使用以下等式来计算距离而不是双积分吗?位移 = u* t + (a t t) 其中 u 是初始速度,a 是加速度,t 是时间

在 c++ 中执行集成的示例代码也将非常有用

标签: physicsaccelerometerkalman-filter

解决方案


如果您在环形交叉路口,“行驶距离”与“位置”不同。

我的卫星导航甚至忽略了在隧道中或在获取 GPS 信息时出现其他问题时的速度变化。但它假设我留在路上。

是的,积分是通过添加一个 (v * dt) 项完成的,最后是通过在 v 中添加 (a * dt) 来完成的。

是的,这既不相关也不arduino c++离题。


推荐阅读