Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Get position from accelerometer

I am working in a monocular 3D Mapping project, and I need every time both position and rotation (angle).

To filter Gyroscope Data, I decided to use the "compass" and set 0 value to the angle if it's north.

But to get the position, I will need to double integrate the accelerometer value with a small sampling step (1ms) and 7 values mean filter.

I think this will make position more accurate. But does someone have an idea about the error range ? for example, in 10 meters, How much the error will be. And does anyone have a better idea?

The sensors are from STM32F3 Discovery Board

Thanks

like image 835
geniant Avatar asked Jan 28 '26 02:01

geniant


1 Answers

The STM32F3 has two sensors you'd be using:

  • LSM303DLHC accelerometer and magnetometer
  • L3GD20 3-axis digital gyroscope.

The sensor accuracy should appear somewhere in the datasheet. Since you'll be using several sensors, you'll have to calculate the total error over the time your measuring. Note, the error won't be a single number like 10 meters because it will accumulate over time. If you had a GPS or some other way of determining your position you'd be able to limit your accumulated error.

What you're doing sounds like an Inertial Measurement Unit. If you haven't already, I'd recommend reading up on that and also Dead Reckoning.

like image 118
Doug Richardson Avatar answered Jan 29 '26 15:01

Doug Richardson



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!