환경 구성

평범한컴공생·2022년 8월 1일
0

[ROS2]

목록 보기
2/19
post-thumbnail

기본 배경

ROS 2는 셸 환경을 이용한 작업 공간의 결합에 의존한다. ROS 2에서의 작업 공간은 개발 중인 시스템의 위치를 의미한다. 핵심 ROS 2의 작업 공간을 underlay라 하고, 후속 로컬 작업 공간을 overlay라 한다. ROS 2로 개발하는 경우에는 다양한 작업 공간이 활성화된다. 작업 공간의 결합은 ROS 2의 다양한 환경에서나, 다양한 패키지로부터의 개발을 더 쉽게 해준다. 또한 같은 컴퓨터에 여러 배포판의 ROS 2를 설치/전환할 수 있게 한다. 이는 셸을 열 때마다 설치 파일을 소싱하거나, 시작 스크립트에 source 명령을 추가함으로써 수행된다.

작업

  1. Setup 파일 소싱
    ROS 2에 접근하기 위해서는 다음의 명령이 먼저 필요하다.

    # Replace ".bash" with your shell if you're not using bash
    # Possible values are: setup.bash, setup.sh, setup.zsh
    source /opt/ros/foxy/setup.bash

    ROS 2의 설치 위치에 따라 명령어가 다르므로, 파일 경로를 확인하자.

  2. 셸 시작 스크립트에 소싱
    셸을 열 때마다 위의 명령을 수행시키는 것을 원치 않는다면, 시작 스크립트에 다음 명령을 추가한다.

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

    시작 스크립트를 찾아 추가된 명령을 제거하면 이를 취소할 수 있다.

  3. 환경 변수 확인
    ROS 2의 Setup 파일을 소싱하면 ROS 2 구동을 위한 몇 가지 환경변수가 설정되는데, 다음 명령을 통해 환경 변수가 올바르게 설정되었는지 확인할 수 있다.

    printenv | grep -i ROS

    ROS_DISTROROS_VERSION을 확인해보자. Foxy를 사용한다면, 다음과 같을 것이다.

    ROS_VERSION=2
    ROS_PYTHON_VERSION=3
    ROS_DISTRO=foxy

    만약 다르게 나온다면, ROS 2 패키지를 재설치해보자.

    1. ROS_DOMAIN
      ROS 2 에이전트의 고유한 수를 결정했다면, 다음 명령을 통해 환경 변수를 설정할 수 있다.

      export ROS_DOMAIN_ID=<your_domain_id>

      시작 스크립트에도 추가할 수 있다.

      echo "export ROS_DOMAIN_ID=<your_domain_id>" >> ~/.bashrc

참고

ROS 2 Documentation: Foxy

profile
학부 연구생(220627~)

0개의 댓글