본문으로 바로가기

Cartographer 컴파일 및 설치 : ROS Melodic #1

category 소프트웨어/ROS 2021. 12. 30. 18:59
728x90
반응형

1. Cartographer ROS를 설치하기 위해서는 wstool, rosdep, Ninja를 먼저 설치해야 합니다.

 

먼저 업데이트를 실행합니다.

sudo apt-get update

 

 

2. 다음으로 아래의 명령어를 실행하여 필요한 툴을 먼저 설치합니다.

sudo apt-get install -y python-wstool python-rosdep ninja-build stow

 

3. ROS가 이미 설치된 상태에서 작업한 것입니다. 따라서 catkin_ws 폴더가 존재하며 그 위치로 이동합니다. 그리고 wstool의 초기 위치를 src로 지정합니다.

mkdir noncatkin_ws
cd noncatkin_ws
wstool init src
ls

 

4. wstool을 이용하여 Cartographer 소스를 다운로드 받을 위치를 지정합니다.

wstool merge -t src https://raw.githubusercontent.com/cartographer-project/cartographer_ros/master/cartographer_ros.rosinstall

 

5. 아래의 명령어를 실행하여 src 폴더에 소스를 다운로드 받습니다.

wstool update -t src

 

6. cartographer_ros의 의존성 패키지를 설치해야 합니다. 먼저 rosdep 명령어를 사용하여 필요한 패키지를 설치합니다. 만약 ROS가 설치되어 있으면 아래와 같은 에러가 발생합니다. 이 경우에는 에러를 무시해도 됩니다.

sudo rosdep init

 

7. rosdep의 업데이트를 실행합니다.

rosdep update

 

8. 아래의 명령어를 실행하여 의존성 패키지를 설치합니다.

rosdep install --from-paths src --ignore-src --rosdistro=${ROS_DISTRO} -y

 

9. Cartographer는 abseil-cpp를 사용합니다. 따라서 아래의 명려어를 실행하여 수동으로 설치해 줍니다.

src/cartographer/scripts/install_abseil.sh

 

10. 버전간 충돌을 피하기 위해 ROS abseil-cpp는 언인스톨해야 합니다.

sudo apt-get remove ros-${ROS_DISTRO}-abseil-cpp

 

11. 마지막으로 빌드하고 설치를 진행합니다.

catkin_make_isolated --install --use-ninja

 

12. 설정 내용을 적용하기 위해 아래의 명령을 실행합니다.

source /home/zetabank/noncatkin_ws/install_isolated/setup.bash

 

13. 설치한 Cartographer의 정상 동작을 확인하기 위해 데모용 backpack 파일을 다운로드 합니다.

wget -P ~/Downloads https://storage.googleapis.com/cartographer-public-data/bags/backpack_2d/cartographer_paper_deutsches_museum.bag

 

14. 다운로드 받은 backpack 파일을 실행하기 위해  패키지를 데모 백팩 패키지를 사용합니다.

roslaunch cartographer_ros demo_backpack_2d.launch bag_filename:=${HOME}/Downloads/cartographer_paper_deutsches_museum.bag

 

15. 아래의 그림은 RVIZ 실행 결과를 나타내는 그림들입니다. 시간이 지남에 따라 맵이 생성되는 것을 확인할 수 있습니다. Gridmap에 비해 외곽선이 간결하고 비교적 깨끗한 맵이 작성됨을 확인할 수 있습니다.

 

15. catkin_ws로 이동하여 catkin_make_isolated 명령을 실행하여 컴파일을 진행합니다.

cd catkin_make
catkin_make_isolated

 

16. cartogrpher의 설치 내용을 터미널 실행시 적용하기 위해서는 .bashrc 파일에 setup.bash 실행 내용을 추가해야 합니다.

cd ~/
gedit .bashrc

 

 

gedit를 선택하시고 작성된 내용의 맨 아래로 이동하셔서 아래의 내용을 추가하시기 바랍니다.

source ~/catkin_ws/install_isolated/setup.bash

 

내용 수정이 완료되었으면 저장을 하고 종료합니다. 터미널을 새롭게 실행하고 정상적인 동작여부를 확인합니다.

728x90
반응형