Speed Filter Parameters
Speed Filter - is a Costmap Filter that restricting maximum velocity of robot. The areas where robot should slow down and values of maximum allowed velocities are encoded at filter mask. Filter mask published by Map Server, goes in a pair with filter info topic published by Costmap Filter Info Server. Speed Filter itself publishes a speed restricting messages which are targeted for a Controller in order to make the robot to not exceed the required velocity.
<filter name>: is the corresponding plugin name selected for this type.
<filter name>
.enabled:Type
Default
bool
True
- Description
Whether it is enabled.
<filter name>
.filter_info_topic:Type
Default
string
N/A
- Description
Name of the incoming CostmapFilterInfo topic having filter-related information. Published by Costmap Filter Info Server along with filter mask topic. For more details about Map and Costmap Filter Info servers configuration please refer to the Map Server / Saver configuration page.
<filter name>
.speed_limit_topic:Type
Default
string
“speed_limit”
- Description
Topic to publish speed limit to. The messages have the following fields’ meaning:
percentage
: speed limit is expressed in percentage iftrue
or in absolute values infalse
case. This parameter is set depending ontype
field ofCostmapFilterInfo
message.speed_limit
: non-zero values show maximum allowed speed expressed in a percent of maximum robot speed or in absolute value depending onpercentage
value. Zero value means no speed restriction (independently onpercentage
).speed_limit
is being linearly converted fromOccupancyGrid
filter mask value as:speed_limit = base + multiplier * mask_value
, wherebase
andmultiplier
coefficients are taken fromCostmapFilterInfo
message.- Note
speed_limit
expressed in a percent should belong to(0.0 .. 100.0]
range.
This topic will be used by a Controller Server. Please refer to Controller Server configuration page to set it appropriately.
<filter name>
.transform_tolerance:Type
Default
double
0.1
- Description
Time with which to post-date the transform that is published, to indicate that this transform is valid into the future. Used when filter mask and current costmap layer are in different frames.
Example
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