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

rolling window global costmap borders are marked as obstacles

asked 2021-02-11 07:03:29 -0600

updated 2023-04-01 10:29:13 -0600

lucasw gravatar image

Hi,

i am trying to get a rolling window global costmap. I know that this is highly uncommon, but in my usecase it would be extremely beneficial if the global costmap wouldn't keep anything for ever. (This is for a robot on Street Loop with potential obstacles). As you can see in the picture the border of the global costmap gets marked as an obstacle and isn't removed by the next update. https://imgur.com/g2p3106 It gets only partly removed once cost values of the local map are close to the previous borders of the global one.

I tried setting allways send full cost map to true but that didn't change anything

I would be extremely grateful for any help or tips, thanks in advance Tristan

The config file of the global costmap is as follows:

global_costmap:
   map_type: costmap
   global_frame: map

   robot_base_frame: base_footprint
   update_frequency: 5.0
   publish_frequency: 5.0

   static_map: false
   rolling_window: true
   always_send_full_costmap: true

   width: 10.0
   height: 10.0

      - {name: obstacle_layer,    type: "costmap_2d::ObstacleLayer"}
      - {name: inflation_layer, type: "costmap_2d::InflationLayer"}
edit retag flag offensive close merge delete

1 Answer

Sort by ยป oldest newest most voted
0

answered 2021-02-11 07:57:36 -0600

updated 2021-02-12 07:29:12 -0600

I just was able to solve this myself.

For future readers:

This behaviour isn't caused by the costmaps themselves, but by the global_planner of the navigation stack. To fix this you'll need to set its parameter outline_map to false which is by default set to true. This isn't included in the parameter @ http://wiki.ros.org/global_planner#Pa... and i am unsure if you can set it directly from the launch file.

I changed the default value in the planner_core.cpp file located at navigation/global_planner/src/planner_core.cpp at line 149, which definitely isn't the cleanest way possible.

If you configured this you'll be able to use a rolling window for global maps aswell.

This Parameter has been added by the following PR see the following commit for details:

https://github.com/ros-planning/navig...

EDIT:

If someone can change it in the ros wiki please do

EDIT:

i just added i to the wiki. Unfortunately i can't accept this answer myself

edit flag offensive delete link more

Question Tools

1 follower

Stats

Asked: 2021-02-11 07:03:29 -0600

Seen: 436 times

Last updated: Apr 01 '23