Go Down

Topic: Guide to gyro and accelerometer with Arduino including Kalman filtering (Read 313 times) previous topic - next topic


Hi Lauszus,

Like the many others, I got my IMU working by studying at lot of your hard work, just wanted you to know that I really appreciate it!
I have a question, with the project I'm working on - I need to filter out the accel data that is affecting the
Kalman output such as when the IMU is under accel in any of the 3 axis. For example while placing the IMU
on a rotating platform, the addition of of the X or Y accel vectors start to affect the roll
and pitch angles. What do you recommend to eliminate these bias errors for when the IMU is not stationary and under accel/decel?



That's the whole purpose of the Kalman filter. If you are not satisfied with the performance as it is right now, then you have to tune the values.
See my blog for more information: http://blog.tkjelectronics.dk/2012/09/a-practical-approach-to-kalman-filter-and-how-to-implement-it/


Jan 15, 2013, 11:53 am Last Edit: Jan 15, 2013, 01:48 pm by triplenox Reason: 1
Hi Lauszus,

I'm working with the Quaternion Values getting from the DMP of the MPU6050. i've some problems to get a full 360° Range.
Maybe you have a hint to convert the DMP Quaternion Values to Degrees. Normally the calculation is based on the Sensitivity Scale Factor for both Gyro and Accel. I'm correct?
But i'm getting one fusion Value of the Gyro and Accel. So i don't now how to convert this to a 360° Range ....

Why do you not use the DMP Values like Quaternion?
Is it better to work with raw Vaules and Kalman Filter?

With atan2 i should get the 360°:
mpu.dmpGetQuaternion(&q, fifoBuffer);

but if i move the MPU6050 90° i get on the Serial only 70°

many Thanks!


I have never used the DMP on the MPU-6050 before as I thought it were a bit overkill as I usually only need the angle in one of the axis.

You can't use atan2 or anything like that on Quaternions!

To use Quaternions see the following recourses:


hello , i'm working on the same subject , and it's my first time i use the ARDUINO uno AND the IMU 6050s ,
i'm a beginner, now i try to finish the mechanical par ,
it'is possible to give my the full code, because it's a subject that i must give to the school , and the mechanical part it took a lot of time to built,
please i wayit for somewone to help my.
and thank you four your solidarity

Go Up