move_base not subscribing to "/odom"
I'm trying to set up move_base, with odometry provided by robot_localization. When I launch, however, move_base does not seem to subscribe to "odom" - the topic is not visible in rqt_graph
and doesn't get listed by rostopic list
.
My understanding of move_base (and the nav stack) was that it should be trying to subscribe to "odom" by default. Would anyone be able to tell me where I've gone wrong?
This is what the rqt_graph
looks like:
And this is what my .launch file looks like (note, I pretty much copied the .yaml configs from http://wiki.ros.org/navigation/Tutori... ):
<node pkg="robot_localization" type="ekf_localization_node" name="ekf_localization_node">
<!-- switch on debug -->
<param name="debug" value="true"/>
<!-- node configuration -->
<param name="frequency" value="30"/>
<param name="sensor_timeout" value="0.1"/>
<param name="two_d_mode" value="false"/>
<!-- may need to change these depending on the frame_ids used by the playback data -->
<param name="map_frame" value="map"/>
<param name="odom_frame" value="odom"/>
<param name="base_link_frame" value="base_link"/>
<param name="world_frame" value="odom"/>
<!-- SUBUSCRIBE to: IMU "/nova_common/IMU" -->
<param name="imu0" value="/nova_common/IMU"/>
<param name="imu0_differential" value="false"/> <!-- set false if with navsat transform -->
<rosparam param="imu0_config">[true,true,true,
true,true,true,
true,true,true,
true,true,true,
true,true,true]</rosparam>
<!-- PUBLISH to: "/odom" -->
<remap from="odometry/filtered" to="/odom"/>
</node>
<node pkg="robot_localization" type="navsat_transform_node" name="navsat_transform_node">
<param name="frequency" value="30"/>
<!-- SUBSCRIBE to: "/nova_common/IMU"; "/nova_common/gps_data"; "/odom" -->
<remap from="imu/data" to="/nova_common/IMU"/>
<remap from="gps/fix" to="/nova_common/gps_data"/>
<remap from="odometry/filtered" to="/odom"/>
<!-- PUBLISH to: "/ekf/gps_data"-->
<param name="publish_filtered_gps" value="true"/>
<remap from="gps/filtered" to="/ekf/gps_data"/>
</node>
<node pkg="move_base" type="move_base" name="move_base" respawn="false">
<rosparam file="costmap_common_params.yaml" command="load" ns="global_costmap"/>
<rosparam file="costmap_common_params.yaml" command="load" ns="local_costmap"/>
<rosparam file="local_costmap_params.yaml" command="load"/>
<rosparam file="global_costmap_params.yaml" command="load"/>
<rosparam file="base_local_planner_params.yaml" command="load"/>
</node>
As I'm pretty sure one of the first questions you'll get will be "please show us a screenshot of
rqt_graph
", I've gone ahead and given you sufficient karma to post such a screenshot.Consequently: please post a screenshot of
rqt_graph
, so we can preempt those questions.Can you please post a screenshot of
rqt_graph
without Dead sinks and Leave topics hidden?Sure, just updated it.
move_base
itself does not subscribe to the/odom
topic, rather the local planner plugins do that (though it will look the same on the outside, as this is just one node, in the end). So, what local planner are you using?Also, did I understand you correctly that
rostopic list
does NOT list/odom
? So it is not even published, is it?Maybe try
rostopic list | grep odom
to see all topics related to odometry androsnode info /move_base
to check where it is subscribing to