【发布时间】:2010-07-05 04:16:38
【问题描述】:
我想从 加速计 事件中找到行进距离和速度。就像 iphone 的 gMeter 应用程序正在做的那样。
有什么建议,我应该使用哪个值或公式?
提前致谢。
【问题讨论】:
标签: iphone accelerometer distance
我想从 加速计 事件中找到行进距离和速度。就像 iphone 的 gMeter 应用程序正在做的那样。
有什么建议,我应该使用哪个值或公式?
提前致谢。
【问题讨论】:
标签: iphone accelerometer distance
您可以使用加速度计的加速度值来测量速度和距离。有一篇非常好的论文 (Implementing Positioning Algorithms Using Accelerometers) 解释了您从加速度计获得的误差以及从加速度值中获得速度和位置的技术。
一些伪代码:
velocity[i] = (acceleration[i] + acceleration[i-1])/2 * interval + velocity[i-1]
distance[i] = (velocity[i] + velocity[i-1])/2 * interval + distance[i-1]
interval是acceleration/velocity[i]和acceleration/velocity[i-1]之间的时间,与加速度计的更新频率有关。
为了提高准确性,您必须过滤正手的加速度值。我已经在 iPhone 3GS 上实现了这样的算法,效果非常好。加速度计可让您测量 30 厘米的距离,误差约为 1 厘米。我还没有测试更长的距离。
【讨论】: