Global planner / global map does not inflate static obstacles at all.
I am using "global_planner/GlobalPlanner" to compute global plans on a static map I publish from a png height map using map_server. My ros version in melodic.
My global planner config file looks like:
planners: - name: 'global_planner' type: 'global_planner/GlobalPlanner' planner_patience: 10.0 global_planner: allow_unknown: false default_tolerance: 0.0 visualize_potential: true use_dijkstra: true use_quadratic: true use_grid_path: false old_navfn_behaviour: false lethal_cost: 253 neutral_cost: 66 cost_factor: 0.55
My global planner config file looks like:
global_costmap: global_frame: map robot_base_frame: base_link update_frequency: 10.0 publish_frequency: 2.0 static_map: true rolling_window: false width: 65.0 height: 65.0 resolution: 0.15 plugins: - name: static_layer type: costmap_2d::StaticLayer - name: inflator type: costmap_2d::InflationLayer static_layer: map_topic: "map" subscribe_to_updates: false inflator: inflation_radius: 1 lethal_cost_threshold: 200
But the path generated does not respect inflation parameter specification. The global path always gets too close to the static obstacles. I couldn't upload an image of the generated plan due to lack of karma points. Hope someone can help me understand how to configure global planner and global cost map to inflate the static obstacles.
Asked by Arul Selvam on 2019-12-04 12:32:49 UTC
Answers
I fixed this issue by setting cost_scaling_factor
to a smaller value (negative exponential of a small value results in higher cost as described here)
Asked by Arul Selvam on 2019-12-17 06:21:08 UTC
Comments
What was the original cost_scaling_factor that you used. In the yaml you posted, you haven't specified any value so I'm assuming it was using the default value of 10 which is good enough to inflate static obstacles. So it must be some other reason that prevented from correctly computing the inflation costs.
Asked by Namal Senarathne on 2020-01-09 22:15:38 UTC
Comments