Electronic – How to determine relative position using accelerometer and gyro data


I am designing a robot, and need to track the distance and direction of the robot motion, Nothing in 3D, I only need x,y and angle in x y plane.

My question :

  1. Is it possible to use gyro and accelerometer with kalman filtering or any other methods to
    track this? (I do not have motor encoders)

My constraints : I do not have space to include a gps (due to power requirements)
or motor encoders (due to motor support)

Best Answer

You can integrate acceleration to obtain velocity data, and you can further integrate velocity to get position. Integration is just the process where you just cumulatively add something up. For example, if you get a new acceleration reading every 0.1 second, you assume the acceleration was constant over the last 0.1 second; you then find the change in velocity over that same time interval by adding 0.1 seconds * acceleration to the current velocity estimate, and repeat this every time a new acceleration reading comes in.

This is what's known as 'dead reckoning', and it has some down sides. Most important is that because you basically are just adding up measurements across time, any errors (e.g., noise) in that data also accumulates, so your approximation of where you are, where you're headed, and how fast you're going all degrade over time.