I hope someone can help me to figure out the best way to solve my problem I'm trying to drive a Cuboid on V-rep simulator with velocities What I'm receiving is accelerations from an IMU (MPU9250 acc+gyr+mag) After calibrating the accelerometer and compensate it in gravity (using quaternions), i'm integrating to have velocities. As you all can imagine, noise from accelerometer and drift from integration is giving me back unuseful velocities outputs

i have tried to filter with low pass filters, band pass filters, using thresholds and so on it didn't work out

looking online i understood maybe a kalman filter it can help me, but i can't find any proper code to apply on my C++ file, i just have a library to use (examples from the library didn't help much).

Anyone that can suggest where to look or that has a code to 'almost' plug and play ?

thanks a lot for your help


  • $\begingroup$ Just an IMU alone -- even with a magnetometer, unless you provide an environment with a heavily structured magnetic field -- cannot tell you where you are, or even how fast you are going. There simply isn't enough information. You need something from either your system model or from the outside (i.e., some sort of absolute position measurement, however noisy) to augment the IMU data. $\endgroup$ – TimWescott Apr 27 '20 at 15:04

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.