ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question

Revision history [back]

click to hide/show revision 1
initial version

I had a look at your bag file and I think the problem is related to your tf setup. Here's what I think is happening:

  • The madgwick filter publishes a tf from base_link to imu (because you set the publish_tf param to be true)
  • When r_l receives the imu measurement, it will attempt to transform it from imu to base_link so that it fuses the orientation properly
  • Because the madgwick filter is constantly updating the tf between base_link and imu, when the imu measurements are transformed to base_link, it is resulting in a measurement with unit quaternion orientation.

I ran your bag data (only /imu/data and /tf_static) with your r_l launch file configuration and the ekf odometry orientation matches the /imu/data orientation. So I think the only thing you'll need to do is remove the set the publish_tf param to false and you should be okay. Give that a try and see what happens.

I had a look at your bag file and I think the problem is related to your tf setup. Here's what I think is happening:

  • The madgwick filter publishes a tf from base_link to imu (because you set the publish_tf param to be true)
  • When r_l receives the imu measurement, it will attempt to transform it from imu to base_link so that it fuses the orientation properly
  • Because the madgwick filter is constantly updating the tf between base_link and imu, when the imu measurements are transformed to base_link, it is resulting in a measurement with unit quaternion orientation.

I ran your bag data (only /imu/data and /tf_static) with your r_l launch file configuration and the ekf odometry orientation matches the /imu/data orientation. So I think the only thing you'll need to do is remove the set the publish_tf param to false and you should be okay. Give that a try and see what happens.