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

Okay, here are a few things which look irregular for your setup (there might be others, but these are obvious ones):

  1. In both of your navsat transform nodes the odometry source you are using is rl/odometry, which is coming from the output of your first EKF (ekf_se_odom). You should be using the output of your second EKF (ekf_se_map) as the input into the navsat transform node, which in your case would be odometry/filtered_map.
  2. In the configuration of your second EKF (ekf_se_map), you have both GPS odometry topics being fused under the same "odom1" heading. One of these needs to be changed to "odom2", otherwise r_l won't know you are using two separate GPS sources.
  3. Again in the configuration of your second EKF (ekf_se_map), you are fusing the output of your first EKF (rl/odometry). This can cause problems - typically what people do is just fuse the raw wheel odemetry & IMU measurements instead of the output from the first EKF.

I think in general it would probably be a good idea to start with a basic setup (i.e., with one instance of r_l, only fusing odometry & IMU data), and then once you're comfortable with the output you can add in more measurement sources. Trying to do everything at once will be a pain to de-bug, there are a lot of things which could be configured incorrectly.