Odometry with wrong direction robot_pose_ekf

asked 2017-04-28 19:10:18 -0500

sirsomething gravatar image

updated 2017-04-28 19:43:07 -0500


I'm trying to use robot_pose_ekf to fuse IMU and Odometry data. Everything works well except the resulting odometry which has an oposite direction from what it should have. It has the correct robot path but it's turned 180º and I've no idea why.

Odometry topic: /diff_drive_controller/odom
IMU topic: /imu_data

robot_pose_ekf launch info:

<node pkg="robot_pose_ekf" type="robot_pose_ekf" name="robot_pose_ekf">
      <param name="output_frame" value="odom"/>
      <param name="freq" value="30.0"/>
      <param name="sensor_timeout" value="1.0"/>
      <param name="odom_used" value="true"/>
      <param name="imu_used" value="true"/>
      <param name="vo_used" value="false"/>
      <param name="debug" value="false"/>
      <param name="self_diagnose" value="false"/>
      <remap from="/odom" to="/diff_drive_controller/odom" />
      <!-- <remap from="/imu_data" to="/imu" /> -->
      <!-- <remap from="base_footprint" to="base_link"/> -->

This is the only node providing the tf between odom and base_footprint and that's why I don't understand why the direction is wrong since I'm not publishing 2 tf's.

I mean if I subscribe the /diff_drive_controller/odom topic it shows the related result but the slam_gmapping map is much better with this inverted odometry even tho it does not follow the robot path.

edit retag flag offensive close merge delete