ROS2: ROS2의 기능과 설치
이 포스팅은 ‘ROS2‘에 대한 내용을 담고 있습니다.
참고 문헌
- 표윤석,임태훈. ROS2로 시작하는 로봇 프로그래밍. 루비 페이퍼. 2021
- https://www.youtube.com/playlist?list=PL0xYz_4oqpvhj4JaPSTeGI2k5GQEE36oi
ROS2의 기능과 설치
ROS는 Robot Operating System의 약자로 로봇 응용 프로그래밍 개발을 위해 사용되는 운영체제와 비슷한 개발 플랫폼 입니다. 기존의 ROS는 로봇 개발 플랫폼으로 널리 사용되었는데, ROS가 만들어질 당시에는 실시간 로봇 제어를 염두에 두지 않았기 때문에 이를 실제 로봇에 적용하기에 어려움이 있었습니다. ROS2는 이러한 문제점들을 해결하고자 만들어지게 되었는데요, ROS와 비교할 때 훨씬 더 나은 통신 기능을 제공합니다. 더해 ROS에 본질적으로 존재하는 보안 취약성을 보완해 다양한 분야의 로봇에 훨씬 더 안전하게 사용될 수 있도록 합니다.
기존의 ROS는 우분투에서만 실행이 가능했습니다. ROS2에서는 윈도우까지 지원하기는 하지만, 대부분의 경우에 우분투에서 실행하기 때문에 이 포스팅에서도 우분투를 기준으로 설명합니다. ROS2는 역시 ROS와 마찬가지로 우분투 버전에 따라서 그에 맞는 버전을 제공합니다. 때문에 컴퓨터에 깔려있는 우분투 버전에 맞는 ROS2 버전을 설치해야 합니다. 제가 사용할 우분투 버전은 22.04 LTS 인데, 이 우분투 버전에서는 ROS2 Humble을 설치해야 합니다.
위의 주소에 들어가서 과정을 따라가면 큰 이슈 없이 ROS2를 설치할 수 있습니다. 그런데 터미널에 ros2
를 치면 명령어를 찾을 수 없다고 나옵니다.
ros2
명령어를 사용하기 위해서는 ROS2를 먼저 실행해야 합니다.
source /opt/ros/humble/setup.bash
위 명령어를 입력하면, ROS2가 실행되고 ros2
명령을 사용할 수 있게 됩니다.
그리고 ROS2가 잘 동작하는지 확인하기 위해서 ros2 run demo_nodes_cpp talker
와 ros2 run demo_nodes_cpp listener
를 실행하면, talker 노드에서 숫자를 차례대로 높여 부르고, listener 노드에서 talker가 뿌리는 정보를 잘 수집하는 것을 확인할 수 있습니다.
댓글남기기