iphone accelerometer speed and distance

后端 未结 1 765
無奈伤痛
無奈伤痛 2020-12-05 03:30

I want to find distance traveled and velocity from accelerometer events. Like iphone\'s gMeter application is doing.

Any suggestion

相关标签:
1条回答
  • 2020-12-05 04:27

    You can use the acceleration values from the accelerometer to measure the velocity and distance. There is really good paper (Implementing Positioning Algorithms Using Accelerometers) which explains the errors you get from the accelerometer and the techniques to get the velocity and position from the acceleration values.

    Some pseudo code:

    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 is the time between acceleration/velocity[i] and acceleration/velocity[i-1] which is related to the update frequency of the accelerometer.

    To increase accuracy you have to filter the acceleration values in the forehand. I've implemented such an algorithm on an iPhone 3GS and it worked pretty good. The accelerometer let's you measure distances of 30 cm with an error of approximately 1 cm. I didn't tested longer distances yet.

    0 讨论(0)
提交回复
热议问题