This package was created as part of the Autonomous Navigation tutorial for Leo Rover. It provides configuration for SLAM and autonomous navigation for Leo Rover equipped with IMU and LiDAR sensors.
-
message_filter
Republishes wheel odometry and IMU data published by leo_firmware on message types accepted by the robot_localization package.
-
wheel_odom_with_covariance
(type: geometry_msgs/TwistWithCovarianceStamped) -
imu/data_raw
(type: sensor_msgs/Imu)
-
wheel_odom
(type: geometry_msgs/TwistStamped) -
imu/gyro
(type: geometry_msgs/Vector3Stamped) -
imu/accel
(type: geometry_msgs/Vector3Stamped)
-
~wheel_odom_covariance_diagonal
(double[]
)Diagonal of the covariance matrix for wheel odometry.
-
~imu_angular_velocity_covariance_diagonal
(double[]
)Diagonal of the covariance matrix for IMU angular velocity.
-
~imu_linear_acceleration_covariance_diagonal
(double[]
)Diagonal of the covariance matrix for IMU acceleration.
-
-
odometry.launch
Starts the
message_filter
andekf_localization_node
from robot_localization which publishes the odometry based on Wheel encoders and IMU readings.Arguments:
-
three_d
(default:false
)If set to
true
, also starts imu_filter_madgwick to fuse data from IMU sensor into an orientation and uses it in theekf_localization_node
to provide a 3D odometry.
-
-
gmapping.launch
Starts the
slam_gmapping
node from gmapping package which provides a laser-based SLAM. -
amcl.launch
Starts map_server which publishes static map from a file on a ROS topic and amcl which uses odometry and data from the LiDAR sensor to estimate the localization of the robot on the map.
Arguments:
-
map_file
(required)An absolute path to the map file in the format supported by
map_server
.
-
-
twist_mux.launch
Starts twist_mux node which multiplexes several sources of velocity commands for the robot, giving priority to manual control over autonomous.
Arguments:
-
cmd_vel_out
(default:cmd_vel
)The topic name the multiplexer should publish velocity commands on.
-
-
move_base.launch
Starts move_base node which, given the robot's localization, a map of obstacles, laser scans and a navigation goal, plans a safe path to the goal and tries to execute it, by sending velocity commands to the robot.
-
navigation.launch
Starts
twist_mux.launch
andmove_base.launch
.