clober_slam package from clober repoclober clober_bringup clober_description clober_navigation clober_serial clober_simulation clober_slam clober_teleop clober_tools |
|
Package Summary
Tags | No category tags. |
Version | 1.0.4 |
License | Apache License 2.0 |
Build type | CATKIN |
Use | RECOMMENDED |
Repository Summary
Checkout URI | https://github.com/CLOBOT-Co-Ltd/clober.git |
VCS Type | git |
VCS Version | noetic-devel |
Last Updated | 2021-10-06 |
Dev Status | DEVELOPED |
CI status | Continuous Integration |
Released | UNRELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (0)
Good First Issues (0) Pull Requests to Review (0) |
Package Description
Additional Links
Maintainers
- clobot-git
Authors
Clober SLAM
Clober may move & rotate for navigation. Make sure you are operating in a safe environment
The SLAM (Simultaneous Localization and Mapping) is a technique to draw a map by estimating current location in an arbitrary space. The SLAM is a well-known feature of Clober from its predecessors.
1. Run SLAM Nodes
1.1 Bringup Robot
- Run a
Bringup
for the Clober.
roslaunch clober_bringup base.launch
- This can be substituted by running a simulation node
roslaunch clober_simulation logo_world.launch
1.2 Launch SLAM Node
On a new terminal run a SLAM node. Gmapping SLAM is used by default.
roslaunch clober_slam clober_slam.launch slam_methods:=gmapping
1.3 Run Teleoperation Node
On a new terminal run a teleoperation node to explore and map the world.
rosrun teleop_twist_keyboard teleop_twist_keyboard.py
1.4 Save Map
After successful SLAM and map creation, open a new terminal to save the map.
rosrun map_server map_saver -f ~/map
If you’ve saved your map successfully it should look like the following. The map uses two-dimensional Occupancy Grid Map (OGM), which is commonly used in ROS and Navigation.
White area is collision free area while black area is occupied and inaccessible, and gray area represents the unknown area.
2. Tuning Guide
Gmapping has many parameters to change performances for different environments. You can get an information about whole parameters in ROS WiKi. This tuning guide provides tips when configuring gmapping parameters. If you want to optimize SLAM performances for your environments, this section might be helpful.
Parameters below are defined in clober_slam/config/gmapping_params.yaml file.
2.1 maxUrange
-
This parameter is set the maximum usable range of the lidar sensor.
default :
maxUrange: 3.0
2.2 map_update_interval
-
This parameter defines time between updating the map. The smaller the value, the more frequent the map is updated. However, setting this too small will be require more processing power for the map calculation. Set this parameter depending on the map environment.
default :
map_update_interval: 2.0
2.3 minimumScore
-
This parameter sets the minimum score value that determines the success or failure of the sensor’s scan data matching test. This can reduce errors in the expected position of the robot in a large area.
default :
minimumScore: 50
If the parameter is set properly, you will see information similar to one shown below.
Average Scan Matching Score=278.965
neff= 100
Registering Scans:Done
update frame 6
update ld=2.95935e-05 ad=0.000302522
Laser Pose= -0.0320253 -5.36882e-06 -3.14142
If set too high, you might see below warnings.
Scan Matching Failed, using odometry. Likelihood=0
lp:-0.0306155 5.75314e-06 -3.14151
op:-0.0306156 5.90277e-06 -3.14151
2.4 linearUpdate
-
When the robot translates longer distance than this value, it will run the scan process.
default :
linearUpdate: 1.0
2.5 angularUpdate
-
When the robot rotates more than this value, it will run the scan process. It is recommended to set this value less than linearUpdate.
default :
angularUpdate: 0.2
Changelog for package clober_slam
1.0.4 (2021-09-03)
- odom mode 0 check
- Contributors: dev
1.0.3 (2021-08-11)
1.0.2 (2021-08-11)
- Merge pull request #7 from clobot-git/noetic-devel Noetic devel
- modify clober_slam CMakeLists.txt
- Contributors: CLOBOT, clobot-git
1.0.1 (2021-07-12)
1.0.0 (2021-07-12)
- Initial Clober package
Wiki Tutorials
Package Dependencies
Deps | Name |
---|---|
catkin | |
map_server | |
gmapping |
System Dependencies
Dependant Packages
Name | Deps |
---|---|
clober |
Launch files
- launch/clober_slam.launch
-
- model [default: clober]
- slam_methods [default: gmapping] — slam type [gmapping, cartographer, hector, karto, frontier_exploration]
- launch/clober_gmapping.launch
-
- model [default: clober]
- set_base_frame [default: base_link]
- set_odom_frame [default: odom]
- set_map_frame [default: map]