accelerometerimu

Car speed measurement using 3-axis accelerometer


Description of the situation

I want to use the BOSCH BMI160 sensor to check the speed of the vehicle on the go. GPS is not available in the current situation.

Question

  1. What is the formula for getting velocity from a 3-axis acceleration sensor?
  2. Is there an error of more than 10% when an error occurs in an uneven area of the hill or the ground?

Resources

BOSCH BMI160 DataSheet : https://ae-bst.resource.bosch.com/media/_tech/media/datasheets/BST-BMI160-DS000.pdf

Thank you


Solution

  • What you want to do is called "inertial navigation", which is an error prone technique, by nature.

    The operation you need is 3 axis accelerometer integration and 3 rotation integration, to get the heading and speed of your system. Moreover you need your initial state (speed and orientation) from which your integration should start. It is not at all a simple operation, and errors accumulate with time, and depend from many factors (starting from the accuracy of the sensor).

    If you don't need the heading and you just care about linear speed in the direction of the car, you can reduce to single axis integration in the car direction, which is simpler, and may work well for a short period of time. Due to gravitational acceleration, you could have problems when going up-or-down-hill, because you will have to get rid of the average acceleration