1. 우선 lidar 하드웨어를 연결한다.
ls /dev/ttyUSB*

2. 포트 권한 설정
sudo chmod 666 /dev/ttyUSB0
# 또는 dialout 그룹 추가 (로그아웃/로그인 필요)
sudo usermod -aG dialout $USER

3. 패키지 클론 및 빌드
mkdir rplidar
cd rplidar
mkdir src
cd src
git clone -b ros2 https://github.com/Slamtec/rplidar_ros.git
cd ~/rplidar
colcon build
source install/setup.bash
4. 실행
ros2 launch rplidar_ros rplidar_a3_launch.py serial_port:=/dev/ttyUSB0 serial_baudrate:=256000
ros2 launch rplidar_ros rplidar_a3_launch.py serial_port:=/dev/ttyUSB0 serial_baudrate:=256000 scan_mode:=Standard publish_frequency:=10.0

5. 현재의 tf
ros2 run tf2_tools view_frames

6. odom --> base_link --> laser가 되게 tf를 구성
ros2 run tf2_ros static_transform_publisher 0 0 0 0 0 0 odom base_link
ros2 run tf2_ros static_transform_publisher 0 0 0 0 0 0 base_link laser

7. yaml파일
slam_toolbox:
ros__parameters:
odom_frame: odom
base_frame: base_link
scan_topic: /scan
use_odom: false
use_scan_matching: true
use_scan_barycenter: true
minimum_travel_distance: 0.0
minimum_travel_heading: 0.0
scan_buffer_size: 10
scan_queue_size: 50
max_laser_range: 16.0
min_laser_range: 0.2
solver_plugin: solver_plugins::CeresSolver
ceres_linear_solver: SPARSE_NORMAL_CHOLESKY
ceres_preconditioner: SCHUR_JACOBI
ceres_trust_strategy: LEVENBERG_MARQUARDT
ceres_dogleg_type: TRADITIONAL_DOGLEG
ceres_loss_function: None
mode: mapping
8. 시작
ros2 launch slam_toolbox online_sync_launch.py \
slam_params_file:=./my_mapper_params.yaml \
use_sim_time:=false'ROS 2' 카테고리의 다른 글
| ros2 realsense camera image저장 (0) | 2025.11.10 |
|---|---|
| Q-RRT* F-RRT* 비교대상으로 정리한것 (0) | 2025.08.14 |
| [ROS2_Humble][pkg] depthimage_to_laserscan (0) | 2025.06.02 |
| BT Navigator , Planner Server , Controller Server (0) | 2025.03.24 |
| ros2 lifecycle이란? (0) | 2025.03.24 |