EasyNav Plugins
Loading...
Searching...
No Matches
easynav_navmap_localizer Directory Reference
Directory dependency graph for easynav_navmap_localizer:
localizers/easynav_navmap_localizer

Directories

 
include
 
src
 
tests

Detailed Description

easynav_navmap_localizer

Description

Easy Navigation: nAVmAP Localizer package.

Authors and Maintainers

Supported ROS 2 Distributions

Distribution Status
humble kilted
jazzy kilted
kilted kilted
rolling rolling

Plugin (pluginlib)

  • Plugin Name: easynav_navmap_localizer/AMCLLocalizer
  • Type: easynav::navmap::AMCLLocalizer
  • Base Class: easynav::LocalizerMethodBase
  • Library: easynav_navmap_localizer
  • Description: A default "navmap" implementation for the AMCL localizer.

Parameters

All parameters are declared under the plugin name namespace, i.e., /<node_fqn>/easynav_navmap_localizer/AMCLLocalizer/....

Name Type Default Description
<plugin>.num_particles int 100 Number of AMCL particles.
<plugin>.initial_pose.x double 0.0 Initial X position (m).
<plugin>.initial_pose.y double 0.0 Initial Y position (m).
<plugin>.initial_pose.yaw double 0.0 Initial yaw (rad).
<plugin>.initial_pose.std_dev_xy double 0.5 Std dev used to sample initial X/Y.
<plugin>.initial_pose.std_dev_yaw double 0.5 Std dev used to sample initial yaw.
<plugin>.reseed_freq double 1.0 Reseeding frequency (Hz).
<plugin>.noise_translation double 0.01 Translational noise factor.
<plugin>.noise_rotation double 0.01 Rotational noise factor.
<plugin>.noise_translation_to_rotation double 0.01 Translation-to-rotation noise coupling.
<plugin>.min_noise_xy double 0.05 Minimum XY noise (m).
<plugin>.min_noise_yaw double 0.05 Minimum yaw noise (rad).
<plugin>.compute_odom_from_tf bool false If true, read odometry from TF (odom->base_footprint) instead of /odom topic.
<plugin>.inflation_stddev double 0.05 Std dev used in occupancy inflation (m).
<plugin>.inflation_prob_min double 0.01 Minimum occupancy probability after inflation.
<plugin>.correct_max_points int 1500 Maximum points used per correction step (after downsampling).
<plugin>.weights_tau double 0.7 Exponential decay factor for particle weight smoothing.
<plugin>.top_keep_fraction double 0.2 Fraction of top particles to keep before reseeding.
<plugin>.downsampled_cloud_size double 0.05 Voxel size for point cloud downsampling (m).

Interfaces (Topics and Services)

Subscriptions and Publications

Direction Topic Type Purpose QoS
Subscription /odom nav_msgs/msg/Odometry Used only when <plugin>.compute_odom_from_tf = false SensorDataQoS (reliable)
Publisher <node_fqn>/<plugin>/particles geometry_msgs/msg/PoseArray Publishes the current particle set depth=10
Publisher <node_fqn>/<plugin>/pose geometry_msgs/msg/PoseWithCovarianceStamped Publishes the estimated pose with covariance depth=10

Services

This package does not create service servers or clients.

NavState Keys

Key Type Access Notes
imu IMUPerceptions Read Used to get the latest IMU orientation when available.
points PointPerceptions Read 3D point cloud bundles used in the correction step.
map.navmap ::navmap::NavMap Read Triangle mesh map providing surface geometry and elevation.
map.bonxai Bonxai::ProbabilisticMap Read Probabilistic occupancy map used for scoring.
map.bonxai.inflated Bonxai::ProbabilisticMap Write/Read Inflated map cached on first access for faster scoring.
robot_pose nav_msgs::msg::Odometry Write Estimated robot pose stored at the end of update/predict.

TF Frames

Role Transform Notes
Publishes map -> odom Broadcasts the global transform that aligns the odometry frame with the map frame.
Requires odom -> base_footprint Required only when <plugin>.compute_odom_from_tf = true (read from TF).
Requires base_footprint -> <sensor_frame> Required to transform perception point clouds into the robot base frame during correction.

License

Apache-2.0