Smoother Server¶
Source code on Github.
The Smoother Server implements the server for handling smooth path requests and hosting a vector of plugins implementing various C++ smoothers. The server exposes an action interface for smoothing with multiple smoothers that share resources such as costmaps and TF buffers.
Smoother Server Parameters¶
- costmap_topic
Type
Default
string
“global_costmap/costmap_raw”
- Description
Raw costmap topic for collision checking.
- footprint_topic
Type
Default
string
“global_costmap/published_footprint”
- Description
Topic for footprint in the costmap frame.
- transform_tolerance
Type
Default
double
0.1
- Description
TF transform tolerance.
- robot_base_frame
Type
Default
string
“base_link”
- Description
Robot base frame.
- smoother_plugins
Type
Default
vector<string>
{“nav2_smoother::SimpleSmoother”}
- Description
List of plugin names to use, also matches action server names.
- Note
Each plugin namespace defined in this list needs to have a
plugin
parameter defining the type of plugin to be loaded in the namespace.Example:
smoother_server: ros__parameters: smoother_plugins: ["simple_smoother", "curvature_smoother"] curvature_smoother: plugin: "nav2_ceres_costaware_smoother/CeresCostawareSmoother" simple_smoother: plugin: "nav2_smoother::SimpleSmoother"
Example¶
smoother_server:
ros__parameters:
costmap_topic: global_costmap/costmap_raw
footprint_topic: global_costmap/published_footprint
robot_base_frame: base_link
transform_timeout: 0.1
smoother_plugins: ["simple_smoother"]
simple_smoother:
plugin: "nav2_smoother::SimpleSmoother"
tolerance: 1.0e-10
do_refinement: True