First of all, thank you for your package for human_aware_navigation, it helps me a lot in understanding how social costmap collaborates with the Navigation Stack. However, if I wish to adapt your dynamic social costmap plugin to any other platform, what can I do? I wrote my common_params.yaml
for move_base as below:
robot_base_frame: base_link
# obstacle_range: 6.0
# raytrace_range: 6.5
max_obstacle_height: 2.0
min_obstacle_height: -1.0
use_dijkstra: false
# visualize_potential: false
footprint: [[0.50, 0.50], [0.50, -0.50], [-0.50, -0.50], [-0.50, 0.50] ]
# NOTE!! that including obstacles it may happen that in narrow corridors echos from the laser scanner may appear as obstacles!
# Not needed anyway cause using the static map layer
obstacles:
observation_sources: scan
scan:
data_type: LaserScan
topic: /beebot/laser/scan
sensor_frame: /hokuyo_link
marking: true
clearing: true
obstacle_range: 30.0
raytrace_range: 30.0
enabled: true
inflater:
observation_sources: scan
scan:
data_type: LaserScan
topic: /beebot/laser/scan
sensor_frame: /hokuyo_link
marking: true
clearing: true
map_type: costmap
inflation_radius: 1.2
enabled: true
dynamic_social_costmap:
observation_sources: people
people:
data_type: people_msgs/People
topic: /people
marking: true
clearing: true
map_type: costmap
inflation_radius: 1.2
enabled: true
For dynamic_social_costmap, I deduced from the source code that the local costmap node should subscribe to /people topic, so I put it this way. Once dynamic_social_costmap is announced, I hence announce the usage of this layer costmap in global_costmap.yaml
and local_costmap.yaml
. However, I must have missed something because move_base does not initialize as with other layered costmap.
I saw you loaded the costmap plugin as:
<param name="TBPlanner/dynamic_layers_plugin" value="dynamic_social_costmap::SocialLayers" />
into move_base. Thus, what should be the correct way of loading the social costmap in any other yaml file? Thank you so much !