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.
- action_server_result_timeout
Type
Default
Unit
double
10.0
seconds
- Description
The timeout value (in seconds) for action servers to discard a goal handle if a result has not been produced. This used to default to 15 minutes in rcl but was changed to 10 seconds in this PR #1012, which may be less than some actions in Nav2 take to run. For most applications, this should not need to be adjusted as long as the actions within the server do not exceed this deadline. This issue has been raised with OSRF to find another solution to avoid active goal timeouts for bookkeeping, so this is a semi-temporary workaround
- 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"
- 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
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