Robot Operating System/Tutorial 따라하기

[Dashing][CLI Tools] 1. Configuring your ROS 2 environment

jstar0525 2021. 5. 3. 19:16
반응형

이 글은 아래의 자료를 참고로 만들어졌습니다.

 

docs.ros.org/en/dashing/Tutorials/Configuring-ROS2-Environment.html

 

Configuring your ROS 2 environment — ROS 2 Documentation: Dashing documentation

Sourcing ROS 2 setup files will set several environment variables necessary for operating ROS 2. If you ever have problems finding or using your ROS 2 packages, make sure that your environment is properly setup using the following command: Check that varia

docs.ros.org


 

Configuring your ROS 2 environment

Goal: This tutorial will show you how to prepare your ROS 2 environment.

 

Tutorial level: Beginner

 

Background

ROS 2는 쉘 환경을 이용하여 Workspace를 결합하는 개념입니다.

"Workspace"는 ROS 2를 개발하는 시스템의 위치를 나타내는 용어입니다.

 

Core ROS 2 workspace를 underlay라고 하고

Local workspace를 overlays라고 부릅니다.

 

ROS 2를 개발할 때, 일반적으로 여러 workspace가 동시에 활성화됩니다.
workspace들을 결합하면 다양한 ROS 2 버전과 package들에 대한 개발이 쉬워집니다.

 

또한, 동일한 컴퓨터에 여러 ROS 2 배포판들(예를 들어 Dashing과 Eloquent)을 설치하고

둘 사이를 전환할 수 있습니다.

 

이를 위해,

새로운 terminal을 열 때마다 설정 파일을 소싱하거나

쉘 스크립트에 source 명령어를 한 번 넣어주면 됩니다.

 

만약 설정 파일을 소싱하지 않으면,

ROS 2 명령어에 엑세스하거나 ROS 2 패키지를 찾을 수 없습니다.

달리 말하면, ROS 2를 사용할 수 없습니다.

 

Prerequisites

이 튜토리얼은 Linux에서 Debian Packages를 이용하여 바이너리 설치를 했다고 가정합니다.

 

만약 source를 이용하여 설치를 하였다면

setup files의 경로가 다를 수 있습니다.

또한, 아래와 같은 명령을 사용할 수 없습니다.

$ sudo apt install ros-<distro>-<package>

 

만약 Unix계열의 명령어에 대해 익숙하지 않다면

아래의 링크를 참고하세요.

 

www.ee.surrey.ac.uk/Teaching/Unix/

 

UNIX / Linux Tutorial for Beginners

UNIX Tutorial for Beginners A beginners guide to the Unix and Linux operating system. Eight simple tutorials which cover the basics of UNIX / Linux commands. What is UNIX? Files and processes The Directory Structure Starting an UNIX terminal Listing files

www.ee.surrey.ac.uk

 

Tasks

1 Source the setup files

새로운 terminal을 열 때마다 아래의 명령을 실행해야합니다.

$ source /opt/ros/dashing/setup.bash

Source를 이용하여 설치하였을 경우

정확한 명령어는 ROS 2를 어디에 설치했는지에 따라 달라집니다.

 

<추가> source란?

$ source [환경 설정 파일명]

리눅스 환경 설정 파일들은 수정하면 바로 적용되지 않습니다.

수정된 새로운 환경 설정 내용을 즉시 적용하기 위해 위의 명령어가 사용됩니다.

 

www.leafcats.com/249

 

리눅스 환경설정 파일 정리, 리눅스 source 명렁어

/etc/profile : 시스템 전역 쉘 변수 user가 쉘에 로그인 하게 되면 가장 먼저 /etc/profile파일을 읽는다. /etc/profile 파일에는 USER, LOGNAME, HOSTNAME 등의 쉘 변수들이 선언되어 있다. /etc/profile 파일을..

www.leafcats.com

 

2 Add sourcing to your shell startup script

만약 새로운 terminal을 열 때마다 위 명령어를 실행하기 귀찮다면,

위 명령어를 실행하지 않고, 아래의 명령어로 설정을 해줍니다.

 

이 후 새로운 terminal을 열고 바로 ROS 2를 사용할 수 있습니다.

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

 

만약 이 실행을 취소하고 싶다면,

아래의 명령어를 이용하여

위 명령어(source /opt/ros/dashing/setup.bash)를 지우고 저장합니다.

# ~/.bashrc 수정
$ nano ~/.bashrc

# source 명령어를 이용하여 ~/.bashrc 업데이트
$ source ~/.bahsrc

 

<추가> ~/.bashrc 파일이란?

별칭(alias)과 bash가 수행될 때 실행되는 함수를 제어하는 지역적인 시스템 설정 관련 파일입니다.

( '~'는 리눅스에서 홈디렉토리를 뜻합니다.)

오직 해당 사용자에만 한정되며, 그 이외의 다른 사용자에게는 영향을 미치지 않습니다.

 

3 Check environment variables

만약 ROS 2를 사용하다가 패키지를 사용하거나 찾는데 문제가 생긴다면,

환경을 확인하는 것이 좋습니다.

 

ROS 2 환경을 확인하는 방법은 다음과 같습니다.

$ printenv | grep -i ROS

 

위 명령을 통해 ROS_VERSION이나 ROS_DISTRO와 같은 변수를 확인할 수 있습니다.

ROS_VERSION=2
ROS_PYTHON_VERSION=3
ROS_DISTRO=dashing
반응형