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

How to use the DWB local planner

asked 2019-01-11 09:26:05 -0600

Mobile_robot gravatar image

Dear all,

I was wondering if you can help me to find out how to use the DWB_local_planner in move_base.

I have already installed all the packages in the This.

You can find the part of the launcher where I call the move_base.

<!--- Run move_base -->
<node respawn="false" pkg="move_base" type="move_base" name="move_base" output="screen">
    <rosparam file="$(find dsi_airbus_manager)/conf/move_base/common_costmap_params.yaml" command="load" ns="global_costmap" />
    <rosparam file="$(find dsi_airbus_manager)/conf/move_base/common_costmap_params.yaml" command="load" ns="local_costmap" />
    <rosparam file="$(find dsi_airbus_manager)/conf/move_base/local_costmap_params.yaml" command="load" />
    <rosparam file="$(find dsi_airbus_manager)/conf/move_base/global_costmap_params.yaml" command="load" />
    <rosparam file="$(find dsi_airbus_manager)/conf/move_base/base_local_planner_params.yaml" command="load" />
    <param name="base_local_planner" value="teb_local_planner/TebLocalPlannerROS" />
    <param name="controller_frequency" value="10.0" />
    <param name="base_global_planner" value="global_planner/GlobalPlanner"/>
    <param name="recovery_behavior_enabled" value="false"/>>
    <param name="planner_patience" value="5.0"/>
    <param name="controller_patience" value="15.0"/>
    <param name="shutdown_costmaps" value="false"/>
    <param name="oscillation_timeout" value="30.0"/>
    <param name="oscillation_distance" value="0.4"/>
    <param name="planner_frequency" value="0.5"/>
    <param name="max_planning_retries" value="15"/>

At the moment I use the TEB_local_planner. But I have no idea how I can call the DWB_local_planner in the launch file.


edit retag flag offensive close merge delete

1 Answer

Sort by ยป oldest newest most voted

answered 2019-01-11 10:09:40 -0600

David Lu gravatar image

To use DWB in move_base, you need to use the nav_core_adapter (documentation behind that link)

In your case, I would replace the line <param name="base_local_planner" value="teb_local_planner/TebLocalPlannerROS" /> with the following

<param name="base_local_planner" value="nav_core_adapter::LocalPlannerAdapter" />
<param name="LocalPlannerAdapter/planner_name" value="dwb_local_planner::DWBLocalPlanner" />

Then you would need to edit the parameters in local_costmap_params.yaml at the very least to have them loaded in the DWBLocalPlanner namespace.

edit flag offensive delete link more


Thanks a lot David..

Is it possible to provide a WIKI page for the DWB_local_planner]( in order to avoid these questions?

Mobile_robot gravatar image Mobile_robot  ( 2019-01-11 17:46:00 -0600 )edit

Documentation to this effect does exist (below).

stevemacenski gravatar image stevemacenski  ( 2019-01-23 13:14:32 -0600 )edit

Hi, could you please extend how to modify local_costmap_params.yaml. Is not clear for me which namespace should be used to load the costmap in DWBLocalPlanner, since the costmap_adapter should also be used. Thanks in advance.

Sgm gravatar image Sgm  ( 2020-01-07 07:48:29 -0600 )edit

@Sgm please open your own question.

David Lu gravatar image David Lu  ( 2020-01-10 15:29:17 -0600 )edit

Sorry, I thought it was highly related. Here you go :)

Sgm gravatar image Sgm  ( 2020-01-23 03:25:43 -0600 )edit

Question Tools


Asked: 2019-01-11 09:26:05 -0600

Seen: 1,951 times

Last updated: Jan 11 '19