Asan
Asan

Reputation: 357

Kalman Filter implementation to estimate position with IMU under high impacts and acceleration

I am trying to implement a Kalman Filter to estimate the position of my arm moving in the sagittal plane (2d). To do this, I have an IMU which as usually done, I use the gyro as input to my state model and the accelerometer as my observation.

Regarding the bias, I used 0.001 for the variances of my covariance matrix of the state estimation equation and 0.03 for the variance of the accelerometer (measurement).

This filter works really well if I move my arm slowly from 0 to 90º. But if I perform sudden movements, the accelerometer makes my estimation move downward and it is not very precise (i'm off about 15º), once I move slowly it works well again. But the response under high acceleration/sudden movement is not good.

For this reason, I've thought of having a variance switch which tracks the variance of the last 10-20 values of my accelerometer angle measurements and if the variance is above a certain level I would increase the variance of the accelerometer in the covariance matrix.

Would this be an accurate approach in a system with very high accelerations? What would be a more correct way to estimate the angle under sudden movements? As I mentioned, the result I get when the accelerometer has low variance is very good, but not when "shaken fast".

Also, I would assume that due to this behavior, the accelerometer's variance does not behave according to a gaussian distribution, but I would not know how to model this behavior.

Upvotes: 0

Views: 587

Answers (1)

D Dim
D Dim

Reputation: 11

You can run a "Bank of Filters", that is independent filters with different noise levels for the variance, and then compute a weighted average the estimates based on their likelihoodlink to a reference. You can find several references in literature, during my recent work I discovered Y.Bar-Shalom has documented such an approach.

In scientific terms what you are describing is an adaptive-stochastic state estimation problem΄ long story short there exist methods to change the modelled measurement noise on-line depending on performance indications from the filter.

All the best, D.D. Denmark

Upvotes: 0

Related Questions