0
$\begingroup$

Rosanswers logo

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"/>
</node>

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.

Thanks,


Originally posted by Mobile_robot on ROS Answers with karma: 264 on 2019-01-11

Post score: 3

$\endgroup$

1 Answer 1

0
$\begingroup$

Rosanswers logo

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.


Originally posted by David Lu with karma: 10932 on 2019-01-11

This answer was ACCEPTED on the original site

Post score: 3


Original comments

Comment by Mobile_robot on 2019-01-11:
Thanks a lot David..

Is it possible to provide a WIKI page for the DWB_local_planner](https://github.com/locusrobotics/robot_navigation/tree/master/dwb_local_planner) in order to avoid these questions?

Comment by stevemacenski on 2019-01-23:
Documentation to this effect does exist (below).

https://github.com/locusrobotics/robot_navigation/tree/master/nav_core_adapter#parameter-setup

Comment by Sgm on 2020-01-07:
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.

Comment by David Lu on 2020-01-10:
@sgm please open your own question.

Comment by Sgm on 2020-01-23:
Sorry, I thought it was highly related. Here you go :) https://answers.ros.org/question/341513/how-to-configure-local_costmapyaml-to-use-costmapadapter-in-dwb-planner/

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.