You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
List of mapped plugin names for parameter namespaces and names
clearable_layers
["obstacle_layer"]
Layers that may be cleared using the clearing service
NOTE: When plugins parameter is overridden, each plugin namespace defined in the list needs to have a plugin parameter defining the type of plugin to be loaded in the namespace.
When plugins parameter is not overridden, the following default plugins are loaded:
Namespace
Plugin
"static_layer"
"nav2_costmap_2d::StaticLayer"
"obstacle_layer"
"nav2_costmap_2d::ObstacleLayer"
"inflation_layer"
"nav2_costmap_2d::InflationLayer"
static_layer plugin
<static layer>: Name corresponding to the nav2_costmap_2d::StaticLayer plugin. This name gets defined in plugin_names, default value is static_layer
Parameter
Default
Description
<static layer>.enabled
true
Whether it is enabled
<static layer>.subscribe_to_updates
false
Subscribe to static map updates after receiving first
<static layer>.map_subscribe_transient_local
true
QoS settings for map topic
<static layer>.transform_tolerance
0.0
TF tolerance
<static layer>.map_topic
""
Name of the map topic to subscribe to (empty means use the map_topic defined by costmap_2d_ros)
inflation_layer plugin
<inflation layer>: Name corresponding to the nav2_costmap_2d::InflationLayer plugin. This name gets defined in plugin_names, default value is inflation_layer
Parameter
Default
Description
<inflation layer>.enabled
true
Whether it is enabled
<inflation layer>.inflation_radius
0.55
Radius to inflate costmap around lethal obstacles
<inflation layer>.cost_scaling_factor
10.0
Exponential decay factor across inflation radius
<inflation layer>.inflate_unknown
false
Whether to inflate unknown cells as if lethal
<inflation layer>.inflate_around_unknown
false
Whether to inflate unknown cells
obstacle_layer plugin
<obstacle layer>: Name corresponding to the nav2_costmap_2d::ObstacleLayer plugin. This name gets defined in plugin_names, default value is obstacle_layer
<data source>: Name of a source provided in ``.observation_sources
Parameter
Default
Description
<obstacle layer>.enabled
true
Whether it is enabled
<obstacle layer>.footprint_clearing_enabled
true
Clear any occupied cells under robot footprint
<obstacle layer>.max_obstacle_height
2.0
Maximum height to add return to occupancy grid
<obstacle layer>.combination_method
1
Enum for method to add data to master costmap, default to maximum
<obstacle layer>.observation_sources
""
namespace of sources of data
<data source>.topic
""
Topic of data
<data source>.sensor_frame
""
frame of sensor, to use if not provided by message
<data source>.observation_persistence
0.0
How long to store messages in a buffer to add to costmap before removing them (s)
<data source>.expected_update_rate
0.0
Expected rate to get new data from sensor
<data source>.data_type
"LaserScan"
Data type of input, LaserScan or PointCloud2
<data source>.min_obstacle_height
0.0
Minimum height to add return to occupancy grid
<data source>.max_obstacle_height
0.0
Maximum height to add return to occupancy grid for this source
<data source>.inf_is_valid
false
Are infinite returns from laser scanners valid measurements
<data source>.marking
true
Whether source should mark in costmap
<data source>.clearing
false
Whether source should raytrace clear in costmap
<data source>.obstacle_range
2.5
Maximum range to mark obstacles in costmap
<data source>.raytrace_range
3.0
Maximum range to raytrace clear obstacles from costmap
range_sensor_layer plugin
<range layer>: Name corresponding to the nav2_costmap_2d::RangeSensorLayer plugin. This name gets defined in plugin_names.
Parameter
Default
Description
<range layer>.enabled
true
Whether it is enabled
<range layer>.topics
[""]
Range topics to subscribe to
<range layer>.phi
1.2
Phi value
<range layer>.inflate_cone
1.0
Inflate the triangular area covered by the sensor (percentage)
<range layer>.no_readings_timeout
0.0
No Readings Timeout
<range layer>.clear_threshold
0.2
Probability below which cells are marked as free
<range layer>.mark_threshold
0.8
Probability above which cells are marked as occupied
<range layer>.clear_on_max_reading
false
Clear on max reading
<range layer>.input_sensor_type
ALL
Input sensor type either ALL (automatic selection), VARIABLE (min range != max range), or FIXED (min range == max range)
voxel_layer plugin
<voxel layer>: Name corresponding to the nav2_costmap_2d::VoxelLayer plugin. This name gets defined in plugin_names
<data source>: Name of a source provided in <voxel layer>.observation_sources`
Note: These parameters will only get declared if a <voxel layer> name such as voxel_layer is appended to plugin_names parameter and "nav2_costmap_2d::VoxelLayer" is appended to plugin_types parameter.
Parameter
Default
Description
<voxel layer>.enabled
true
Whether it is enabled
<voxel layer>.footprint_clearing_enabled
true
Clear any occupied cells under robot footprint
<voxel layer>.max_obstacle_height
2.0
Maximum height to add return to occupancy grid
<voxel layer>.z_voxels
10
Number of voxels high to mark, maximum 16
<voxel layer>.origin_z
0.0
Where to start marking voxels (m)
<voxel layer>.z_resolution
0.2
Resolution of voxels in height (m)
<voxel layer>.unknown_threshold
15
Minimum number of empty voxels in a column to mark as unknown in 2D occupancy grid
<voxel layer>.mark_threshold
0
Minimum number of voxels in a column to mark as occupied in 2D occupancy grid
<voxel layer>.combination_method
1
Enum for method to add data to master costmap, default to maximum
<voxel layer>.publish_voxel_map
false
Whether to publish 3D voxel grid, computationally expensive
<voxel layer>.observation_sources
""
namespace of sources of data
<data source>.topic
""
Topic of data
<data source>.sensor_frame
""
frame of sensor, to use if not provided by message
<data source>.observation_persistence
0.0
How long to store messages in a buffer to add to costmap before removing them (s)
<data source>.expected_update_rate
0.0
Expected rate to get new data from sensor
<data source>.data_type
"LaserScan"
Data type of input, LaserScan or PointCloud2
<data source>.min_obstacle_height
0.0
Minimum height to add return to occupancy grid
<data source>.max_obstacle_height
0.0
Maximum height to add return to occupancy grid for this source
<data source>.inf_is_valid
false
Are infinite returns from laser scanners valid measurements
<data source>.marking
true
Whether source should mark in costmap
<data source>.clearing
false
Whether source should raytrace clear in costmap
<data source>.obstacle_range
2.5
Maximum range to mark obstacles in costmap
<data source>.raytrace_range
3.0
Maximum range to raytrace clear obstacles from costmap
controller_server
Parameter
Default
Description
controller_frequency
20.0
Frequency to run controller
progress_checker_plugin
"progress_checker"
Plugin used by the controller to check whether the robot has at least covered a set distance/displacement in a set amount of time, thus checking the progress of the robot.
<progress_checker_plugin>.plugin
"nav2_controller::SimpleProgressChecker"
Default plugin
goal_checker_plugin
"goal_checker"
Check if the goal has been reached
<goal_checker_plugin>.plugin
"nav2_controller::SimpleGoalChecker"
Default plugin
controller_plugins
["FollowPath"]
List of mapped names for controller plugins for processing requests and parameters
<controller_plugins>.plugin
"dwb_core::DWBLocalPlanner"
Default plugin
min_x_velocity_threshold
0.0001
Minimum X velocity to use (m/s)
min_y_velocity_threshold
0.0001
Minimum Y velocity to use (m/s)
min_theta_velocity_threshold
0.0001
Minimum angular velocity to use (rad/s)
NOTE: When controller_plugins parameter is overridden, each plugin namespace defined in the list needs to have a plugin parameter defining the type of plugin to be loaded in the namespace.
<name>: goal_align critic name defined in <dwb plugin>.critics
Parameter
Default
Description
<dwb plugin>.<name>.forward_point_distance
0.325
Point in front of robot to look ahead to compute angular change from
<dwb plugin>.<name>.scale
1.0
Weight scale
<dwb plugin>.<name>.aggregation_type
"last"
last, sum, or product combination methods
map_grid TrajectoryCritic
<name>: map_grid critic name defined in <dwb plugin>.critics
Parameter
Default
Description
<dwb plugin>.<name>.aggregation_type
"last"
last, sum, or product combination methods
<dwb plugin>.<name>.scale
1.0
Weight scale
path_dist TrajectoryCritic
<name>: path_dist critic name defined in <dwb plugin>.critics
Parameter
Default
Description
<dwb plugin>.<name>.aggregation_type
"last"
last, sum, or product combination methods
<dwb plugin>.<name>.scale
1.0
Weight scale
path_align TrajectoryCritic
<name>: path_align critic name defined in <dwb plugin>.critics
Parameter
Default
Description
<dwb plugin>.<name>.forward_point_distance
0.325
Point in front of robot to look ahead to compute angular change from
<dwb plugin>.<name>.scale
1.0
Weight scale
<dwb plugin>.<name>.aggregation_type
"last"
last, sum, or product combination methods
rotate_to_goal TrajectoryCritic
<name>: rotate_to_goal critic name defined in <dwb plugin>.critics
Parameter
Default
Description
<dwb plugin>.xy_goal_tolerance
0.25
Tolerance to meet goal completion criteria (m)
<dwb plugin>.trans_stopped_velocity
0.25
Velocity below is considered to be stopped at tolerance met (rad/s)
<dwb plugin>.slowing_factor
5.0
Factor to slow robot motion by while rotating to goal
<dwb plugin>.lookahead_time
-1
If > 0, amount of time to look forward for a collision for.
<dwb plugin>.<name>.scale
1.0
Weight scale
standard_traj_generator plugin
Parameter
Default
Description
<dwb plugin>.sim_time
1.7
Time to simulate ahead by (s)
<dwb plugin>.discretize_by_time
false
If true, forward simulate by time. If False, forward simulate by linear and angular granularity
<dwb plugin>.time_granularity
0.5
Time ahead to project
<dwb plugin>.linear_granularity
0.5
Linear distance forward to project
<dwb plugin>.angular_granularity
0.025
Angular distance to project
<dwb plugin>.include_last_point
true
Whether to include the last pose in the trajectory
limited_accel_generator plugin
Parameter
Default
Description
<dwb plugin>.sim_time
N/A
Time to simulate ahead by (s)
lifecycle_manager
Parameter
Default
Description
node_names
N/A
Ordered list of node names to bringup through lifecycle transition
autostart
false
Whether to transition nodes to active state on startup
map_server
map_server
Parameter
Default
Description
save_map_timeout
2000
Timeout to attempt to save map with (ms)
free_thresh_default
0.25
Free space maximum threshold for occupancy grid
occupied_thresh_default
0.65
Occupied space minimum threshhold for occupancy grid
map_server
Parameter
Default
Description
yaml_filename
N/A
Path to map yaml file
topic_name
"map"
topic to publish loaded map to
frame_id
"map"
Frame to publish loaded map in
planner_server
Parameter
Default
Description
planner_plugins
["GridBased"]
List of Mapped plugin names for parameters and processing requests
expected_planner_frequency
20.0
Expected planner frequency. If the current frequency is less than the expected frequency, display the warning message
NOTE: When planner_plugins parameter is overridden, each plugin namespace defined in the list needs to have a plugin parameter defining the type of plugin to be loaded in the namespace.
When planner_plugins parameter is not overridden, the following default plugins are loaded:
Namespace
Plugin
"GridBased"
"nav2_navfn_planner/NavfnPlanner"
navfn_planner
<name>: Corresponding planner plugin ID for this type
Parameter
Default
Description
<name>.tolerance
0.5
Tolerance in meters between requested goal pose and end of path
<name>.use_astar
false
Whether to use A*, if false, uses Dijstra's expansion
<name>.allow_unknown
true
Whether to allow planning in unknown space
smac_planner
<name>: Corresponding planner plugin ID for this type
Parameter
Default
Description
<name>.tolerance
0.5
Tolerance in meters between requested goal pose and end of path
<name>.downsample_costmap
false
Whether to downsample costmap
<name>.downsampling_factor
1
Factor to downsample costmap by
<name>.allow_unknown
true
whether to allow traversing in unknown space
<name>.max_iterations
-1
Number of iterations before failing, disabled by -1
<name>.max_on_approach_iterations
1000
Iterations after within threshold before returning approximate path with best heuristic
<name>.max_planning_time_ms
5000
Maximum planning time in ms
<name>.smooth_path
false
Whether to smooth path with CG smoother
<name>.motion_model_for_search
DUBIN
Motion model to search with. Options for SE2: DUBIN, REEDS_SHEPP. 2D: MOORE, VON_NEUMANN
<name>.angle_quantization_bins
1
Number of angle quantization bins for SE2 node
<name>.minimum_turning_radius
0.20
Minimum turning radius in m of vehicle or desired path
<name>.reverse_penalty
2.0
Penalty to apply to SE2 node if in reverse direction
<name>.change_penalty
0.5
Penalty to apply to SE2 node if changing direction
<name>.non_straight_penalty
1.1
Penalty to apply to SE2 node if non-straight direction
<name>.cost_penalty
1.2
Penalty to apply to SE2 node for cost at pose
<name>.analytic_expansion_ratio
2.0
For SE2 nodes the planner will attempt an analytic path expansion every N iterations, where N = closest_distance_to_goal / analytic_expansion_ratio. Higher ratios result in more frequent expansions
<name>.smoother.smoother.w_curve
1.5
Smoother weight on curvature of path
<name>.smoother.smoother.w_dist
0.0
Smoother weight on distance from original path
<name>.smoother.smoother.w_smooth
15000
Smoother weight on distance between nodes
<name>.smoother.smoother.w_cost
1.5
Smoother weight on costmap cost
<name>.smoother.smoother.cost_scaling_factor
10.0
Inflation layer's scale factor
<name>.smoother.optimizer.max_time
0.10
Maximum time to spend smoothing, in seconds
<name>.smoother.optimizer.max_iterations
500
Maximum number of iterations to spend smoothing
<name>.smoother.optimizer.debug_optimizer
false
Whether to print debug info from Ceres
<name>.smoother.optimizer.gradient_tol
1e-10
Minimum change in gradient to terminate smoothing
<name>.smoother.optimizer.fn_tol
1e-7
Minimum change in function to terminate smoothing
<name>.smoother.optimizer.param_tol
1e-15
Minimum change in parameter block to terminate smoothing
| <name>.smoother.optimizer.advanced.min_line_search_step_size | 1e-20 | Terminate smoothing iteration if change in parameter block less than this |
| <name>.smoother.optimizer.advanced.max_num_line_search_step_size_iterations | 50 | Maximum iterations for line search |
| <name>.smoother.optimizer.advanced.line_search_sufficient_function_decrease | 1e-20 | Function decrease amount to terminate current line search iteration |
| <name>.smoother.optimizer.advanced.max_num_line_search_direction_restarts | 10 | Maximum umber of restarts of line search when over-estimating |
| <name>.smoother.optimizer.advanced.max_line_search_step_expansion | 50 | Step size multiplier at each iteration of line search |
waypoint_follower
Parameter
Default
Description
stop_on_failure
true
Whether to fail action task if a single waypoint fails. If false, will continue to next waypoint.
loop_rate
20
Rate to check for results from current navigation task
recoveries
recovery_server
Parameter
Default
Description
costmap_topic
"local_costmap/costmap_raw"
Raw costmap topic for collision checking
footprint_topic
"local_costmap/published_footprint"
Topic for footprint in the costmap frame
cycle_frequency
10.0
Frequency to run recovery plugins
transform_tolerance
0.1
TF transform tolerance
global_frame
"odom"
Reference frame
robot_base_frame
"base_link"
Robot base frame
recovery_plugins
{"spin", "backup", "wait"}
List of plugin names to use, also matches action server names
NOTE: When recovery_plugins parameter is overridden, each plugin namespace defined in the list needs to have a plugin parameter defining the type of plugin to be loaded in the namespace.
When recovery_plugins parameter is not overridden, the following default plugins are loaded:
Namespace
Plugin
"spin"
"nav2_recoveries/Spin"
"backup"
"nav2_recoveries/BackUp"
"wait"
"nav2_recoveries/Wait"
spin plugin
Parameter
Default
Description
simulate_ahead_time
2.0
Time to look ahead for collisions (s)
max_rotational_vel
1.0
Maximum rotational velocity (rad/s)
min_rotational_vel
0.4
Minimum rotational velocity (rad/s)
rotational_acc_lim
3.2
maximum rotational acceleration (rad/s^2)
backup plugin
Parameter
Default
Description
simulate_ahead_time
2.0
Time to look ahead for collisions (s)
AMCL
Parameter
Default
Description
alpha1
0.2
Expected process noise in odometry's rotation estimate from rotation
alpha2
0.2
Expected process noise in odometry's rotation estimate from translation
alpha3
0.2
Expected process noise in odometry's translation estimate from translation
alpha4
0.2
Expected process noise in odometry's translation estimate from rotation
alpha5
0.2
For Omni models only: translation noise
base_frame_id
"base_footprint"
Base frame
beam_skip_distance
0.5
Ignore beams that most particles disagree with in Likelihood field model. Maximum distance to consider skipping for (m)
beam_skip_error_threshold
0.9
Percentage of beams after not matching map to force full update due to bad convergance
beam_skip_threshold
0.3
Percentage of beams required to skip
do_beamskip
false
Whether to do beam skipping in Likelihood field model.
global_frame_id
"map"
The name of the coordinate frame published by the localization system
lambda_short
0.1
Exponential decay parameter for z_short part of model
laser_likelihood_max_dist
2.0
Maximum distance to do obstacle inflation on map, for use in likelihood_field model
laser_max_range
100.0
Maximum scan range to be considered, -1.0 will cause the laser's reported maximum range to be used
laser_min_range
-1
Minimum scan range to be considered, -1.0 will cause the laser's reported minimum range to be used
laser_model_type
"likelihood_field"
Which model to use, either beam, likelihood_field, or likelihood_field_prob. Same as likelihood_field but incorporates the beamskip feature, if enabled
set_initial_pose
false
Causes AMCL to set initial pose from the initial_pose* parameters instead of waiting for the initial_pose message
initial_pose.x
0.0
X coordinate of the initial robot pose in the map frame
initial_pose.y
0.0
Y coordinate of the initial robot pose in the map frame
initial_pose.z
0.0
Z coordinate of the initial robot pose in the map frame
initial_pose.yaw
0.0
Yaw of the initial robot pose in the map frame
max_beams
60
How many evenly-spaced beams in each scan to be used when updating the filter
max_particles
2000
Maximum allowed number of particles
min_particles
500
Minimum allowed number of particles
odom_frame_id
"odom"
Which frame to use for odometry
pf_err
0.05
Particle Filter population error
pf_z
0.99
Particle filter population density
recovery_alpha_fast
0.0
Exponential decay rate for the slow average weight filter, used in deciding when to recover by adding random poses. A good value might be 0.001
resample_interval
1
Number of filter updates required before resampling
robot_model_type
"differential"
save_pose_rate
0.5
Maximum rate (Hz) at which to store the last estimated pose and covariance to the parameter server, in the variables ~initial_pose_* and ~initial_cov_*. This saved pose will be used on subsequent runs to initialize the filter (-1.0 to disable)
sigma_hit
0.2
Standard deviation for Gaussian model used in z_hit part of the model.
tf_broadcast
true
Set this to false to prevent amcl from publishing the transform between the global frame and the odometry frame
transform_tolerance
1.0
Time with which to post-date the transform that is published, to indicate that this transform is valid into the future
update_min_a
0.2
Rotational movement required before performing a filter update
update_min_d
0.25
Translational movement required before performing a filter update
z_hit
0.5
Mixture weight for z_hit part of model, sum of all used z weight must be 1. Beam uses all 4, likelihood model uses z_hit and z_rand.
z_max
0.05
Mixture weight for z_max part of model, sum of all used z weight must be 1. Beam uses all 4, likelihood model uses z_hit and z_rand.
z_rand
0.5
Mixture weight for z_rand part of model, sum of all used z weight must be 1. Beam uses all 4, likelihood model uses z_hit and z_rand.
z_short
0.05
Mixture weight for z_short part of model, sum of all used z weight must be 1. Beam uses all 4, likelihood model uses z_hit and z_rand.
always_reset_initial_pose
false
Requires that AMCL is provided an initial pose either via topic or initial_pose* parameter (with parameter set_initial_pose: true) when reset. Otherwise, by default AMCL will use the last known pose to initialize
scan_topic
scan
Topic to subscribe to in order to receive the laser scan for localization
map_topic
map
Topic to subscribe to in order to receive the map for localization
Behavior Tree Nodes
Actions
BT Node BackUp
Input Port
Default
Description
backup_dist
-0.15
Total distance to backup
backup_speed
0.025
Backup speed
server_name
N/A
Action server name
server_timeout
10
Action server timeout (ms)
BT Node ClearEntireCostmap
Input Port
Default
Description
service_name
N/A
Server name
server_timeout
10
Action server timeout (ms)
BT Node ComputePathToPose
Input Port
Default
Description
goal
N/A
Goal pose
planner_id
N/A
Mapped name to the planner plugin type to use, e.g. GridBased
server_name
N/A
Action server name
server_timeout
10
Action server timeout (ms)
Output Port
Default
Description
path
N/A
Path created by action server
BT Node FollowPath
Input Port
Default
Description
path
N/A
Path to follow
controller_id
N/A
Mapped name of the controller plugin type to use, e.g. FollowPath
server_name
N/A
Action server name
server_timeout
10
Action server timeout (ms)
BT Node NavigateToPose
Input Port
Default
Description
position
N/A
Position
orientation
N/A
Orientation
server_name
N/A
Action server name
server_timeout
10
Action server timeout (ms)
BT Node ReinitializeGlobalLocalization
Input Port
Default
Description
service_name
N/A
Server name
server_timeout
10
Action server timeout (ms)
BT Node Spin
Input Port
Default
Description
spin_dist
1.57
Spin distance (radians)
server_name
N/A
Action server name
server_timeout
10
Action server timeout (ms)
BT Node Wait
Input Port
Default
Description
wait_duration
1
Wait time (s)
server_name
N/A
Action server name
server_timeout
10
Action server timeout (ms)
BT Node TruncatePath
Input Port
Default
Description
input_path
N/A
Path to be truncated
output_path
N/A
Path truncated
distance
1.0
Distance (m) to cut from last pose
Conditions
BT Node DistanceTraveled
Input Port
Default
Description
distance
1.0
Distance in meters after which the node should return success
global_frame
"map"
Reference frame
robot_base_frame
"base_link"
Robot base frame
BT Node GoalReached
Input Port
Default
Description
goal
N/A
Destination to check
global_frame
"map"
Reference frame
robot_base_frame
"base_link"
Robot base frame
BT Node IsBatteryLow
Input Port
Default
Description
min_battery
N/A
Minimum battery percentage/voltage
battery_topic
"/battery_status"
Battery topic
is_voltage
false
If true voltage will be used to check for low battery
BT Node TimeExpired
Input Port
Default
Description
seconds
1.0
Number of seconds after which node returns success
BT Node TransformAvailable
Input Port
Default
Description
child
""
Child frame for transform
parent
""
parent frame for transform
Controls
BT Node RecoveryNode
Input Port
Default
Description
number_of_retries
1
Number of retries
Decorators
BT Node DistanceController
Input Port
Default
Description
distance
1.0
Distance (m)
global_frame
"map"
Reference frame
robot_base_frame
"base_link"
Robot base frame
BT Node RateController
Input Port
Default
Description
hz
10.0
Rate to throttle
BT Node SpeedController
Input Port
Default
Description
min_rate
0.1
Minimum rate (hz)
max_rate
1.0
Maximum rate (hz)
min_speed
0.0
Minimum speed (m/s)
max_speed
0.5
Maximum speed (m/s)
filter_duration
0.3
Duration (secs) for velocity smoothing filter
BT Node GoalUpdater
Input Port
Default
Description
input_goal
N/A
The reference goal
output_goal
N/A
The reference goal, or a newer goal received by subscription