Map Server / Saver
Source code on Github.
The Map Server implements the server for handling the map load requests for the stack and host a map topic. It also implements a map saver server which will run in the background and save maps based on service requests. There exists a map saver CLI similar to ROS 1 as well for a single map save.
Map Saver Parameters
- save_map_timeout
Type
Default
int
2.0
- Description
Timeout to attempt saving the map (seconds).
- free_thresh_default
Type
Default
double
0.25
- Description
Free space maximum probability threshold value for occupancy grid.
- occupied_thresh_default
Type
Default
double
0.65
- Description
Occupied space minimum probability threshold value for occupancy grid.
Map Server Parameters
- yaml_filename
Type
Default
string
N/A
- Description
Path to map yaml file. Note from Rolling + Iron-Turtle forward: This parameter can set either from the yaml file or using the launch configuration parameter
map
. If we set it on launch commandline / launch configuration default, we override the yaml default. If you would like the specify your map file in yaml, remove the launch default so it is not overridden in Nav2’s default launch files. Before Iron:yaml_filename
must be set in the yaml (even if a bogus value) so that our launch scripts can overwrite it with launch values.
- topic_name
Type
Default
string
“map”
- Description
Topic to publish loaded map to.
- frame_id
Type
Default
string
“map”
- Description
Frame to publish loaded map in.
Costmap Filter Info Server Parameters
- type
Type
Default
int
0
- Description
Type of costmap filter used. This is an enum for the type of filter this should be interpreted as. We provide the following pre-defined types:
0: keepout zones / preferred lanes filter
1: speed filter, speed limit is specified in % of maximum speed
2: speed filter, speed limit is specified in absolute value (m/s)
3: binary filter
- filter_info_topic
Type
Default
string
“costmap_filter_info”
- Description
Topic to publish costmap filter information to.
- mask_topic
Type
Default
string
“filter_mask”
- Description
Topic to publish filter mask to. The value of this parameter should be in accordance with
topic_name
parameter of Map Server tuned to filter mask publishing.
- base
Type
Default
double
0.0
- Description
Base of
OccupancyGrid
mask value -> filter space value linear conversion which is being proceeded as:filter_space_value = base + multiplier * mask_value
- multiplier
Type
Default
double
1.0
- Description
Multiplier of
OccupancyGrid
mask value -> filter space value linear conversion which is being proceeded as:filter_space_value = base + multiplier * mask_value
- bond_heartbeat_period
Type
Default
double
0.1
- Description
The lifecycle node bond mechanism publishing period (on the /bond topic). Disabled if inferior or equal to 0.0.
Example
map_server:
ros__parameters:
yaml_filename: "turtlebot3_world.yaml"
topic_name: "map"
frame_id: "map"
map_saver:
ros__parameters:
save_map_timeout: 5.0
free_thresh_default: 0.25
occupied_thresh_default: 0.65
costmap_filter_info_server:
ros__parameters:
type: 1
filter_info_topic: "costmap_filter_info"
mask_topic: "filter_mask"
base: 0.0
multiplier: 0.25