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

Custom Recovery Behavior

asked 2019-12-31 03:26:23 -0500

Murat gravatar image

Hi, I am using a diff drive robot for navigation and exploration in the environment. And i don't wanna using recovery_behavior that in the navigation package. My aim is using my custom recovery behavior. How can i add my custom behavior to the navigation stack? Thanks all.

edit retag flag offensive close merge delete

1 Answer

Sort by ยป oldest newest most voted

answered 2019-12-31 04:34:54 -0500

Alrevan gravatar image

For just using custom recovery behaviors it is really simple, you just have to define them in the configuration of move_base :

   - name: 'conservative_reset1'
     type: 'clear_costmap_recovery/ClearCostmapRecovery'

For the name you chose whatever you want but the type is the package where the recovery behavior is defined.

However if you want to write custom recovery behaviors you will need to make them implement the nav_core::RecoveryBehavior interface and create the dedicated ros package.

I suggest you emulate what is done for the rotate recovery behavior that can be found in the navigation package: rotate

If you use catkin you can easily create the package structure with: catkin_create_pkg my_recovery roscpp nav_core

edit flag offensive delete link more


Thank you so much!

Murat gravatar image Murat  ( 2019-12-31 04:44:38 -0500 )edit

Question Tools

1 follower


Asked: 2019-12-31 03:26:23 -0500

Seen: 1,497 times

Last updated: Dec 31 '19