Ask Your Question

Custom Recovery Behavior

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

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 -0600

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 -0600 )edit

Your Answer

Please start posting anonymously - your entry will be published after you log in or create a new account.

Add Answer

Question Tools

1 follower


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

Seen: 658 times

Last updated: Dec 31 '19