0
$\begingroup$

Rosanswers logo

This is the first time I'm using an IMU (Bosch BNO055) on a mobile base. The IMU provides absolute orientation, angular velocity and angular acceleration. I'm planning to use the robot_localization package to fuse this data with wheel encoder data. Even though I did a bunch of searching and reading, I'm still not clear to which extent the position of the IMU on my mobile base can be accounted for. I know that angular velocity and acceleration will differ from the actual values of the base if the IMU is not aligned with the movement axis of the base. Is there a simple way to calculate the actual values if, for example, I were to place the IMU in the right front corner of my mobile base as opposed to the center?


Originally posted by west2788 on ROS Answers with karma: 3 on 2020-12-13

Post score: 0

$\endgroup$

1 Answer 1

0
$\begingroup$

Rosanswers logo

You can mount it anywhere you want, as long as you accurately describe its pose relative to the frame you want to track (base_link_frame in robot_localization). That pose description will go into your TF tree and can be provided either by running static transforms nodes or, better, via a URDF interpreted by robot_state_publisher.

Now whether or not you can accurately measure the pose in relation to your base_link (or whichever frame you want to use for tracking) is a different story. Ideally this should be calibrated (read: computed from measurements by the sensors itself and ground truth), rather than measured geometrically or derived from a model, since the latter will always have errors.


Originally posted by chfritz with karma: 553 on 2020-12-13

This answer was ACCEPTED on the original site

Post score: 1

$\endgroup$

Your Answer

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