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

DWA planner failed to produce path.

asked 2017-11-13 03:53:12 -0500

Mobile_robot gravatar image

updated 2017-11-13 04:37:40 -0500

Hi everybody,

currently, I'm working on AMCL navigation (from Point A to Point B) and for this reason I'm using DWAL_local_planner. The DWA_local_planner works well but I'm facing an issue when I put an obstacle in its way (the obstacle is put in its global path before it starts to move). As you see in the following picture,

RVIZ view

When the robot recognizes the obstacle, the DWA_local_planner is not able to produce a path as the following error and it stucks.

 [ WARN] [1510564078.318379963, 78.707000000]: DWA planner failed to produce path. 
 [ INFO]  [1510564078.615916578,78.890000000]: Got new plan
 [ WARN] [1510564078.683191056, 78.923000000]: DWA planner failed to produce path.
 [ INFO] [1510564079.038445171, 79.090000000]: Got new plan
 [ WARN] [1510564079.051915033, 79.128000000]: DWA planner failed to produce path.

I have changed the local_planner parameters like path_distance_bias, goal_distance_bias, forward_point_distance, etc. in order to have an other behavior from the DWA_local_planner but I did not achieve.

Do you have any idea why it behaves like this? I would appreciate if you look at this @David Lu. Thanks in advance,

You can find below the navigation parameters

Launch file:

<launch> <master auto="start"/>

<node pkg="topic_tools" type="relay" name="cmd_vel_to_nav_vel_relay" args="/cmd_vel /navigation/velocity" />

<!--- Run move_base -->
<node respawn="false" pkg="move_base" type="move_base" name="move_base" output="screen">
    <rosparam file="$(find mule)/conf/costmap_common_params.yaml" command="load" ns="global_costmap" />
    <rosparam file="$(find mule)/conf/costmap_common_params.yaml" command="load" ns="local_costmap" />

    <rosparam file="$(find mule)/conf/local_costmap_params.yaml" command="load" />
    <rosparam file="$(find mule)/conf/global_costmap_params.yaml" command="load" />
    <rosparam file="$(find mule)/conf/base_local_planner_params_simulation.yaml" command="load" />

    <!--Default local planner -->
    <!--<param name="base_local_planner" value="base_local_planner/TrajectoryPlannerROS" />  -->
    <!--<param name="base_local_planner" value="teb_local_planner/TebLocalPlannerROS" />  -->
    <param name="base_local_planner" value="dwa_local_planner/DWAPlannerROS" /> 
    <!--<param name="base_local_planner" value="eband_local_planner/EBandPlannerROS" /> -->
    <param name="controller_frequency" value="5.0" />
    <!--<param name="base_global_planner" value="karto_global_planner/KartoGlobalPathPlanner"/>-->
    <param name="base_global_planner" value="global_planner/GlobalPlanner"/>
    <!--<param name="base_global_planner" value="sbpl_lattice_planner/SBPLLatticePlanner"/> -->
    <param name="SBPLLatticePlanner/primitive_filename" value="$(find mule)/conf/4mob_16.mprim" />
    <param name="recovery_behavior_enabled" value="false"/>
    <!--<rosparam param="recovery_behaviors"> [ { name: "backup_recovery", type: "backup_recovery_dwa/BackupRecovery" } ] </rosparam> -->
    <!--<param name="recovery_behaviors" value="[]"/>-->
    <param name="planner_patience" value="5.0"/>
    <param name="controller_patience" value="15.0"/>
    <param name="shutdown_costmaps" value="true"/>
    <param name="oscillation_timeout" value="30.0"/>
    <param name="oscillation_distance" value="0.4"/>
    <param name="planner_frequency" value="0.0"/>
    <param name="max_planning_retries" value="-1"/>
</node>

</launch>

global_costmap:

    global_costmap:
          global_frame: map
          robot_base_frame: base_link
          update_frequency: 1.0
          track_unknown_space: true
          static_map: true

          transform_tolerance: 0.5 

          static_layer:
                 track_unknown_space: true
                 enabled:              true
                 map_topic:            "/map"

         inflation_layer:
                enabled:              true
                cost_scaling_factor:  10  
                inflation_radius:     2.0  
                track_unknown_space: true

         plugins:
                - {name: static_layer,        type: "costmap_2d::StaticLayer"}
                - {name: inflation_layer,     type: "costmap_2d::InflationLayer"}

Local_cost_map:

    local_costmap:
         global_frame: map
         robot_base_frame: base_link
         update_frequency: 5.0
         publish_frequency: 1.0
         static_map: false
         rolling_window: true
         width: 4.0
         height: 4.0
         resolution: 0.02
         transform_tolerance: 0.5 #0.5

     obstacle_layer:
         enabled: true
         obstacle_range: 5.0
         raytrace_range: 4.5
         inflation_radius: 0.5
         track_unknown_space: true
         combination_method: 1
         observation_sources: laser_scan_sensor
         laser_scan_sensor: {sensor_frame: laser, data_type: LaserScan, topic: /scan, marking: true, clearing: true, 
         expected_update_rate: 0.25, obstacle_range: 19.0, raytrace_range: 19.0 ...
(more)
edit retag flag offensive close merge delete

Comments

Hello, were you able to fix this?

Garv Sharma gravatar image Garv Sharma  ( 2018-03-21 12:09:32 -0500 )edit

1 Answer

Sort by ยป oldest newest most voted
0

answered 2020-02-21 09:19:09 -0500

mohamed19977 gravatar image

in the local_costmap yaml file you should replace the Global_frame Map with odom

edit flag offensive delete link more

Question Tools

2 followers

Stats

Asked: 2017-11-13 03:53:12 -0500

Seen: 3,572 times

Last updated: Feb 21 '20