-
Notifications
You must be signed in to change notification settings - Fork 14
Phenorob 2021 Activities
- Hector SLAM [2D lidar]: (http://wiki.ros.org/hector_mapping)
Kohlbrecher, S., Von Stryk, O., Meyer, J. and Klingauf, U., 2011, November. A flexible and scalable SLAM system with full 3D motion estimation. In 2011 IEEE international symposium on safety, security, and rescue robotics (pp. 155-160). IEEE.
- LIO-SAM [3D lidar]: (https://github.com/TixiaoShan/LIO-SAM)
Shan, T., Englot, B., Meyers, D., Wang, W., Ratti, C. and Rus, D., 2020, October. Lio-sam: Tightly-coupled lidar inertial odometry via smoothing and mapping. In 2020 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS) (pp. 5135-5142). IEEE.
- RTAB-SLAM [RGB-D]: (http://wiki.ros.org/rtabmap_ros)
Labbé, M. and Michaud, F., 2019. RTAB‐Map as an open‐source lidar and visual simultaneous localization and mapping library for large‐scale and long‐term online operation. Journal of Field Robotics, 36(2), pp.416-446.
roslaunch bacchus_slam hector_slam.launch
Hector SLAM parameters can be changed in ~/ros_ws/src/bacchus_lcas/bacchus_slam/launc/hector_slam.launch
Parameters to tune:
- a) laser_min_dist [Default: 0.4]: The minimum distance [m] for laser scan endpoints to be used by the system. Scan endpoints closer than this value are ignored.
- b) laser_max_dist [Default: 30.0]: The maximum distance [m] for laser scan endpoints to be used by the system. Scan endpoints farther away than this value are ignored.
- c) laser_z_min_value [Default: -1.0]: The minimum height [m] relative to the laser scanner frame for laser scan endpoints to be used by the system. Scan endpoints lower than this value are ignored.
- d) laser_z_max_value [Default: 1.0]: The maximum height [m] relative to the laser scanner frame for laser scan endpoints to be used by the system. Scan endpoints higher than this value are ignored.
Saving the map
In order to save the 2d occupancy map created, we can call the following command in a new terminal:
rosrun map_server map_saver -f <map_file_name>
NOTE: the map will be saved in the location where the command is run (unless the path is specified in the <map_file_name>)
roslaunch bacchus_slam lio_slam.launch
LIO-SAM parameters could be found in <catkin_ws>/src/liosam/config/params.yaml
Parameters to tune are the loop closure params:
- a) loopClosureEnableFlag [Default: true]
- b) loopClosureFrequency [Default: 1.0, Hz]
- c) surroundingKeyframeSize [Default: 50]
- d) historyKeyframeSearchRadius [Default: 15.0, meters]
- e) historyKeyframeSearchTimeDiff [Default: 30.0, seconds]
- f) historyKeyframeSearchNum [Default: 25]
- g) historyKeyframeFitnessScore [Default: 0.3]
roslaunch bacchus_slam rtabmap_slam.launch
RTAB-MAP has around 460 params that could be tuned, the full list could be found here. However, due to time brevity, we will be experimenting with the following parameters:
- a) Reg/Strategy [Default: 1, Loop closure transformation: 0=Visual, 1=ICP, 2=Visual+ICP]
- b) Reg/Force3DoF [Default: true, Force 3 degrees-of-freedom transform (3Dof: x,y and yaw). Parameters z, roll and pitch will be set to 0.]
- c) GridGlobal/MinSize [Default: 20, Minimum map size (m).]
- a) AMCL:
roslaunch bacchus_slam amcl_localization.launch
- b) RTAB-SLAM:
roslaunch bacchus_slam rtabmap_slam.launch localization:=true
sdwfasdfasdf
-
mapping with all the SLAM system and tuning them with the parameters specified in the previous section.
-
2 worlds where the plants are the same but the terrain is different (1 flat, 1 bumpy): to show the difference between indoor-like environment vs going outdoors where the terrain is more difficult and we cannot rely on the wheel odometry.
-
mapping and then localisation with RTAB/hector between two different plant stages: to show the consequences of temporal changes in the structure of the environment.
regarding navigation, we can make the robot move with teleoperation as the activity will be more engaging in that way.
Since we have the move_base ready, we can also give the possibiliy to make the robot move autonomusly between a set of predefined poses.