본문 바로가기

공부/ROS2

Ubuntu 22.04에서 ROS2 Humble 설치

Ubuntu 22.04에서 ROS2 Humble 설치

 

본 포스팅에서는 ROS2 공식 문서를 참조하여 Ubuntu 22.04 환경에서 ROS2 Humble을 설치하는 과정을 간단히 정리하였습니다.

 


 

1. Locale 설정

ROS2는 내부 문자열 처리에 UTF-8 Locale을 전제로 설계되어 있습니다.

한글·특수문자가 깨지지 않도록, 시스템 Locale을 UTF-8로 맞춥니다.

 

먼저 현재 환경의 Locale 설정을 확인합니다.

locale

 

 

아래 명령어를 통해 시스템 Locale을 UTF-8로 맞춥니다.

sudo apt update
sudo apt install locales

sudo locale-gen en_US en_US.UTF-8
sudo update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8
export LANG=en_US.UTF-8

 

 

설정이 제대로 되었는지 확인합니다.

locale

 

 

2. Source 설정

ROS2 공식 패키지를 받아오기 위해 필요한 저장소와 도구를 활성화합니다.

sudo apt install software-properties-common

sudo add-apt-repository universe

 

sudo apt update && sudo apt install curl -y

export ROS_APT_SOURCE_VERSION=$(curl -s https://api.github.com/repos/ros-infrastructure/ros-apt-source/releases/latest | grep -F "tag_name" | awk -F\" '{print $4}')

curl -L -o /tmp/ros2-apt-source.deb "https://github.com/ros-infrastructure/ros-apt-source/releases/download/${ROS_APT_SOURCE_VERSION}/ros2-apt-source_${ROS_APT_SOURCE_VERSION}.$(. /etc/os-release && echo $VERSION_CODENAME)_all.deb" # If using Ubuntu derivates use $UBUNTU_CODENAME

sudo dpkg -i /tmp/ros2-apt-source.deb

 

 

3. ROS2 패키지 설치

설정한 저장소를 업데이트합니다.

sudo apt update
sudo apt upgrade

 

 

아래 두 명령어 중에 선택적으로 설치하면 됩니다.

저장 공간이 많이 있으면 그냥 첫 번째 명령어로 설치합니다.

# 데스크톱(권장): ROS, RViz, 데모, 튜토리얼 포함
sudo apt install ros-humble-desktop

# ROS-Base: 통신 라이브러리, 메시지, CLI 도구만 포함
sudo apt install ros-humble-ros-base

 

 

4. 개발 도구 설치

ROS 패키지를 빌드하기 위한 컴파일러 및 기타 도구를 설치합니다.

sudo apt install ros-dev-tools

 

 

5. Colcon 설치

colcon은 ROS2 패키지 빌드 툴입니다.

sudo apt install python3-colcon-common-extensions

 

 

6. 환경 설정

터미널에서 ROS2 명령어를 사용하려면 setup 스크립트를 불러와야 합니다.

source /opt/ros/humble/setup.bash

 

 

아래 명령어를 통해 터미널을 켤 때마다 자동으로 setup 스크립트를 불러오도록 설정합니다.

echo "source /opt/ros/humble/setup.bash" >> ~/.bashrc
source ~/.bashrc

 

 

7. 예제 

환경 설정을 마치고 ROS2 Humble이 정상적으로 설치되었는지 확인합니다.

먼저 터미널을 열어서 아래 명령어를 실행합니다.

ros2 run demo_nodes_cpp talker

 

 

그리고 터미널을 하나 더 열어서 아래 명령어를 실행합니다.

ros2 run demo_nodes_py listener

 

 

그럼 아래와 같이 1번 터미널(Talker)에서는 메시지를 발행하고,

2번 터미널(Listener)에서는 해당 메시지를 수신합니다.

ROS2 Humble 예제

 


 

REFERENCES

 

Ubuntu (deb packages) — ROS 2 Documentation: Humble documentation

You're reading the documentation for an older, but still supported, version of ROS 2. For information on the latest version, please have a look at Kilted. Ubuntu (deb packages) Table of Contents Deb packages for ROS 2 Humble Hawksbill are currently availab

docs.ros.org