Costmap plan error using frontier_exploration with DWA planner

asked 2016-06-03 09:01:04 -0500

rowanborder gravatar image

updated 2016-06-03 09:38:50 -0500

I am attempting to use the frontier_exploration package to have a turtlebot explore a map in simulation. I have a launch file which starts a map_server, gazebo, move_base for the turtlebot and RViz. This works fine and I can successfully explore the map by tele-operating the turtlebot. However when I attempt to use the frontier_exploration package to explore the map the node crashes with errors :-

[ERROR] [1464960560.742352772, 20146.057000000]: None of the 0 first of 0 (0) points of the global plan were in the local costmap and free
[ WARN] [1464960567.150855773, 20152.467000000]: Clearing costmap to unstuck robot (3.000000m).
[ WARN] [1464960567.551669761, 20152.867000000]: Rotate recovery behavior started.
[ WARN] [1464960567.951526869, 20153.267000000]: Clearing costmap to unstuck robot (1.840000m).
[ WARN] [1464960568.351349369, 20153.667000000]: Rotate recovery behavior started.
[ERROR] [1464960568.751476620, 20154.067000000]: Aborting because a valid plan could not be found. Even after executing all recovery behaviors
[ERROR] [1464960568.751631322, 20154.067000000]: Failed to move

Looking at the Local Map->Cost Cloud for the DWA Planner in RViz it looks as if this is being populated incorrectly (see the multicoloured square around the turtlebot). Could this be the source of the problem causing the frontier_exploration node to crash?

image description

frontier_agent.launch

<launch>
  <arg name="map_file" value="$(env TURTLEBOT_GAZEBO_MAP_FILE)"/>

  <node name="map_server" pkg="map_server" type="map_server" args="$(arg map_file)" />
  <node name="map_to_ground_truth" pkg="tf" type="static_transform_publisher" args="0 0 0 0 0 0 1 map ground_truth 100"/>

  <include file="$(find turtlebot_gazebo)/launch/turtlebot_world.launch"/>
  <include file="$(find openni_launch)/launch/openni.launch">
    <arg name="load_driver"                     value="false"/>
    <arg name="depth_registration"              value="true"/>
    <arg name="publish_tf"                      value="false" />
    <arg name="rgb_processing"                  value="true"/>
    <arg name="depth_processing"                value="true"/>
    <arg name="depth_registered_processing"     value="true"/>
    <arg name="sw_registered_processing"        value="true" />
    <arg name="ir_processing"                   value="false"/>
    <arg name="disparity_processing"            value="false"/>
    <arg name="disparity_registered_processing" value="false"/>
    <arg name="hw_registered_processing"        value="false" />
  </include>
  <include file="$(find ar_track_alvar)/launch/pr2_indiv.launch">
    <arg name="marker_size" value="50.0" />
    <arg name="max_new_marker_error" default="0.00001" />
    <arg name="max_track_error" default="0.00001" />
    <arg name="cam_image_topic" value="/camera/depth_registered/points" />
    <arg name="cam_info_topic" value="/camera/rgb/camera_info" />
    <arg name="output_frame" value="/map" />
  </include>

  <node name="ground_truth" pkg="turtlebot_rl_agent" type="ground_truth"/>
  <node name="ground_truth_tf" pkg="turtlebot_rl_agent" type="ground_truth_tf"/>

  <include file="$(find turtlebot_navigation)/launch/includes/move_base.launch.xml">
    <arg name="odom_frame_id"   value="ground_truth"/>
    <arg name="base_frame_id"   value="base_footprint"/>
    <arg name="global_frame_id" value="map"/>
    <arg name="odom_topic" value="ground_truth" />
    <arg name="laser_topic" value="scan" />
  </include>
  <include file="$(find turtlebot_rviz_launchers)/launch/view_navigation.launch"/>

  <node name="frontier_node" pkg="turtlebot_rl_agent" type="frontier_node" output="screen"/>
  <include file="$(find frontier_exploration)/launch/global_map.launch"/>
  <node name="rl_eval_node" pkg="turtlebot_rl_agent" type="rl_eval_node" output="screen"/>
</launch>

global_map.launch

<launch>

    <arg name="sensor_range" default="5.0"/>

    <node pkg="frontier_exploration" type="explore_server" name="explore_server" output="screen" >

        <param name="frequency" type="double" value="0.0"/>
        <param name="goal_aliasing" type="double" value="$(arg sensor_range)"/>

        #All standard costmap_2d parameters as in move_base, other than BoundedExploreLayer
        <rosparam ns="explore_costmap" subst_value="true">
            robot_radius: 0.20
            footprint: [[0.2, 0.0], [0.0, 0.2], [0.0 ...
(more)
edit retag flag offensive close merge delete

Comments

I've fixed the formatting (launch files should be formatted using the Preformatted Text button), and your image is not visible (you cannot link to .php pages, it needs to be a direct link to an image). I've given you the karma to upload images, so that would also be an option.

gvdhoorn gravatar imagegvdhoorn ( 2016-06-03 09:35:37 -0500 )edit

thanks, done

rowanborder gravatar imagerowanborder ( 2016-06-03 09:39:32 -0500 )edit