Ask Your Question
2

costmap not cleared after executing all recovery behaviors

asked 2016-04-21 11:01:55 -0500

tobi93 gravatar image

Hi everyone,

i have a problem with clearing my costmap. First the robot is seeing an obstacle (for example a door, which will be closed infront of him) and then the robot is driving out of distance of the obstacle, but if the robot wants to reenter the room with the closed door opened again it can't plan a new way. Even after executing all recovery behaviors.

Here is a screenshot of my problem: image description

thank you in advance for your help.

edit retag flag offensive close merge delete

2 Answers

Sort by ยป oldest newest most voted
1

answered 2016-04-21 16:39:42 -0500

jorge gravatar image

I guess you are using the default move_base configuration, that only calls conservative clear costmap that cleans costmaps only further than 3 meter from your robot. You can also include the aggressive version, that clears costmaps from 0 meters (so full costmaps). Add something like this to your move_base.yaml:

recovery_behaviors:
  - name: 'conservative_reset'
    type: 'clear_costmap_recovery/ClearCostmapRecovery'
  - name: 'aggressive_reset'
    type: 'clear_costmap_recovery/ClearCostmapRecovery'

conservative_reset:
  reset_distance: 3.0

aggressive_reset:
  reset_distance: 0.0

But I don't think this will work neither, because the lower door is farther than 3 meters from the robot and still not cleared!

What will surely work is to call clear_costmaps move_base's service, that will reset both local and global costmaps.

edit flag offensive delete link more

Comments

hey, i tried the aggressive_reset, but it's like you said. It doesn't cleared the obstacle.

After calling the clear_costmap service every obstacle is now cleared from the costmap. The problem is, that the robot plans now a new trajectories through walls, because the walls will be cleared, too.

tobi93 gravatar image tobi93  ( 2016-04-22 08:38:18 -0500 )edit

yes... I also noticed that! I think is a regression on costmap code. A simple workaround is to set first_map_only as true on costmap configuration.

jorge gravatar image jorge  ( 2016-04-22 11:23:24 -0500 )edit
1

answered 2018-02-25 13:18:01 -0500

harshal gravatar image

This is quite an old question, but just in case....

I found the recovery behaviors to not clear the costmaps as well with same config for the yaml file.

The answer to this question solves the same issue by modifying the configuration as shown in Option 2, by additionally specifying ( layer_names: ["obstacle_layer"] ) alongwith the reset distance. This clears the costmaps sufficiently for me at least.

edit flag offensive delete link more

Your Answer

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

Add Answer

Question Tools

2 followers

Stats

Asked: 2016-04-21 11:01:55 -0500

Seen: 1,748 times

Last updated: Feb 25 '18