速度过滤器参数
速度过滤器 - 是一种成本地图过滤器,用于限制机器人的最大速度。机器人需要减速的区域和允许的最大速度值被编码在过滤器掩码中。地图服务器发布的过滤器掩码与成本地图过滤器信息服务器发布的过滤器信息主题配对使用。速度过滤器本身发布限制速度的消息,这些消息针对控制器,以确保机器人不会超过所需速度。
<filter name>:为此类型选择的相应插件名称。
<过滤器名称>
.enabled类型
默认
布尔值
True
- 描述
是否启用。
<过滤器名称>
.filter_info_topic类型
默认
string
N/A
- 描述
传入的 CostmapFilterInfo 主题的名称,其中包含与过滤器相关的信息。由 Costmap Filter Info Server 与过滤器掩码主题一起发布。有关地图和 Costmap Filter Info 服务器配置的详细信息,请参考 地图服务器/保存器 配置页面。
<filter name>
.speed_limit_topic类型
默认
string
"speed_limit"
- 描述
发布速度限制的主题。消息 具有以下字段的含义:
percentage
: 如果true
,则速度限制以百分比表示;如果false
,则以绝对值表示。此参数根据CostmapFilterInfo
消息的type
字段设置。speed_limit
:非零值表示以最大机器人速度的百分比或绝对值表示的最大允许速度。零值表示没有速度限制(与``percentage``无关)。speed_limit``根据``OccupancyGrid``过滤器掩码值进行线性转换,公式为:``speed_limit = base + multiplier * mask_value
,其中``base``和``multiplier``系数来自``CostmapFilterInfo``消息。- 注意
以百分比表示的
speed_limit
应属于(0.0 .. 100.0]
范围内。
此主题将由控制器服务器使用。请参考:ref:`configuring_controller_server`配置页面以适当设置它。
<过滤器名称>
.transform_tolerance类型
默认
双精度
0.1
- 描述
发布的变换的时间,用于表示该变换在未来是有效的。在过滤器掩码和当前 Costmap 层位于不同的帧时使用。
示例
global_costmap:
global_costmap:
ros__parameters:
...
plugins: ["static_layer", "obstacle_layer", "inflation_layer"]
filters: ["speed_filter"]
...
speed_filter:
plugin: "nav2_costmap_2d::SpeedFilter"
enabled: True
filter_info_topic: "/costmap_filter_info"
speed_limit_topic: "/speed_limit"
transform_tolerance: 0.1