Hector Slam 패키지를 이용하여 지역을 mapping하는 작업을 해보겠다. 패키지 설명은 아래에서 볼 수 있다.
이제 패키지를 설치하고 테스트를 돌려본다. 온라인에 많은 가이드들은 RPi Lidar나 YDLidar X4 모델을 기반으로 하나 본인은 앞서 사용한 YDLidar G4 모델을 이용한다.
# YDLidar package 있는 ros workspace에서
git clone <https://github.com/tu-darmstadt-ros-pkg/hector_slam.git>
패키지를 빌드하기 전 일부 설정을 수정해주어야 한다.
mapping_default launch file 수정
cd ~/ydlidar_ws/src/hector_slam/hector_mapping/launch sudo nano mapping_default.launch
아래 두 줄을
# line no 5,6 <arg name="base_frame" default="base_footprint"/> <arg name="odom_frame" default="nav"/> #line 55 <!--<node pkg="tf" type="static_transform_publisher" name="map_nav_broadcaster" args="0 0 0 0 0 0 map nav 100"/>-->
이렇게 수정해준다.
# line no 5,6 <arg name="base_frame" default="base_link"/> <arg name="odom_frame" default="base_link"/> #line 55 <node pkg="tf" type="static_transform_publisher" name="base_to_laser_broadcaster" args="0 0 0 0 0 0 base_link laser 100"/>
저장하고 파일 하나만 더 수정한다.
tutorial.launch 수정
cd ~/ydlidar_ws/src/hector_slam/hector_slam_launch/launch sudo nano tutorial.launch
위처럼 아래 줄을 수정해준다.
# line 7 이걸 <param name="/use_sim_time" value="true"/> # 이렇게 <param name="/use_sim_time" value="false"/>
이제 돌아가서 make 해준다.
cd
cd ~/ydlidar_ws
catkin_make
성공하길 기도한다. 실패라면 열심히 에러메시지를 구글링하면서 해결하기 바란다. 본인은 바로 성공해서 추가적인 에러 로그를 정리하지 않을 예정이다.
이제 mapping을 시도한다. 이전에 빌드해둔 lidar launch file과 mapping tutorial launch file을 구동할 것이다. 미리 터미널 3개 띄워둔다.
각 터미널에 입력할 준비한다.
roscore #1
roslaunch ydlidar_ros_driver lidar.launch #2
roslaunch hector_slam_launch tutorial.launch #3
오류가 안나길 기도한다. 여기까지 너무 수월해서 불안하다.
아니나 다를까 오류가 난다. 오류 해결은 Troubleshooing에서 다룬다. 문제 해결 후 돌아와서 본 글을 수정하도록 하겠다...ㅠ
반응형
'ROBOTICS > RPi SLAM' 카테고리의 다른 글
Mapping with hector_slam : Troubleshooting (1) | 2022.10.04 |
---|---|
RaspberryPi4 + G4 LiDAR Setting (2) | 2022.08.30 |
댓글