I have IMU sensor that gives me the raw data such as orientation, Angular and Linear acceleration. Im using ROS and doing some Gazebo UUV simulation. Furthermore, I want to get linear velocity from the raw IMU data.

So the naive integration method is as follow: The simplest method for IMU state estimation is the naive integration of the measured data. We estimate the attitude by integrating 3D angular velocity data obtained by the IMU. Assuming that the time step Δ𝑡 is small, the attitude at each time step can be incrementally calculated.

If I do integration over time there will be accumulated error and will not be accurate with the time when for example the robot makes turns. So Im looking for some methods ( ROS packages or outside ROS framework) or code that can correct that error.

Any help?

  • $\begingroup$ Consider fusing this data with magdwick or kalman first…inu data is beyond noisy for just straight up integration $\endgroup$ Commented Sep 26, 2021 at 14:41
  • $\begingroup$ I think you should clarify the title and question. Because you will be integrating the IMU's accelerometer (which is a linear acceleration sensor) to get linear velocity. I don't think you can get linear velocity out of a gyro (which is an angular velocity sensor). $\endgroup$
    – Ben
    Commented Sep 29, 2021 at 13:51


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Browse other questions tagged or ask your own question.