Asan
Asan

Reputation: 357

Obtaining gravity vector on an IMU (Gyro, Accelerometer, Magnetometer) under external acceleration

I would like to extract the gravity vector to obtain the angle with the accelerometer of the IMU. Since the IMU is placed at the shank, it experiences very high external accelerations when walking. This distorts the measurement of the Kalman Filter I use (I input the gyro and accelerometer values).

My hypothesis is that I assume a constant variance for the sensor (accelerometer) and therefore once external acceleration appears, the sensor fusion algorithm is totally off. For this reason, I intend to extract the gravity vector and try to remove the external acceleration from the input accelerometer signal in the kalman filter.

I havn't found a simple way to do this, but I think that combining it with the magnetometer could work.

Upvotes: 1

Views: 1003

Answers (1)

SerialSensor
SerialSensor

Reputation: 311

Supposing your accelerometer measures in 3 axes, easiest you can do is change the variance of the angle you estimated from the accelerometer readings with the difference between gravity and the current length of your acceleration vector. So when there is no external acceleration the difference will be close to zero, therefore your variance for the acceleration based angle should become lower in comparison to the case where there is a noticeably difference.

Upvotes: 0

Related Questions