ROS2与Navigation2入门教程-配置地图服务器/保存器(Map Server/Saver)
说明:
- 介绍如何配置地图服务器/保存器(Map Server/Saver)
概述
其源代码位于Github网站上。
地图服务器(Map Server)实现了用于处理导航堆栈地图加载请求的服务器,并托管了一个地图话题。它还实现了一个会在后台运行并根据服务请求保存地图的地图保存服务器。该服务器中有一个类似于 ROS 1的地图保存器CLI(命令行界面),也用于保存单幅地图。
地图保存器(Map Saver)参数
- save_map_timeout参数:
数据类型:int
默认值:2
描述:用于设置尝试保存地图的超时时间(单位为秒)。
- free_thresh_default参数:
数据类型:double
默认值:0.25
描述:用于设置占用情况网格的空闲空间最大概率阈值。
- occupied_thresh_default参数:
数据类型:double
默认值:0.65
描述:用于设置占用情况网格的占用空间最小概率阈值。
地图服务器(Map Server)参数
- yaml_filename参数:
数据类型:string
默认值:N/A
描述:用于设置指向地图yaml文件的路径。
- topic_name参数:
数据类型:string
默认值:“map”
描述:用于设置对已加载地图进行发布的话题名称。
- frame_id参数:
数据类型:string
默认值:“map”
描述:用于设置发布的已加载地图中的坐标系。
成本地图过滤器信息服务器(Costmap Filter Info Server)参数
type参数:
数据类型:int
默认值:0
描述:用于设置使用的成本地图过滤器类型。此参数是过滤器类型的一个枚举。提供以下预定义类型:
·0:禁区/首选车道过滤器
·1:速度过滤器,速度限制以最大速度的百分比指定
·2:速度过滤器,速度限制以绝对值指定(m/s)filter_info_topic参数:
数据类型:string
默认值:“costmap_filter_info”
描述:用于设置要发布成本地图过滤器信息的话题。
- mask_topic参数:
数据类型:string
默认值:‘filter_mask’
描述:用于设置要发布过滤器掩码的话题。此参数的值应该与Map Server中为过滤掩码发布调整过的topic_name参数一致。
- base参数:
数据类型:double
默认值:0.0
描述:用于设置OccupancyGrid掩码值向过滤器空间值进行线性转换时的基数,线性转换方程为:filter_space_value = base + multiplier * mask_value。
- multiplier参数:
数据类型:double
默认值:1.0
描述:用于设置OccupancyGrid掩码值向过滤器空间值进行线性转换时的乘数因子,线性转换方程为:filter_space_value = base + multiplier * mask_value。
示例
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
参考:
- https://navigation.ros.org/configuration/packages/configuring-controller-server.html
获取最新文章: 扫一扫右上角的二维码加入“创客智造”公众号