ROS-melodic

본 페이지를 포함한 하위 페이지는 Ubuntu 18.04와 ROS1의 Melodic 버전에서 동작하는 OMO R1mini의 ROS 패키지 사용법을 다룹니다.

일러두기 #

이 설명서를 읽기 전에 다음 내용을 숙지하시기 바랍니다.

  • 터미널에 입력하는 명령어나 코드는 CODE BOX 안에 표시합니다.
  • $‘ 기호는 터미널에 입력하는 명령어 임을 나타내며 이 후의 내용을 입력합니다.
  • $기호 앞에 나오는 글자는 해당 명령어가 어디에서 실행되는지를 나타냅니다.
    hostpc:~: 사용자의 PC
    r1mini:~: 로봇에 연결된 Jetson nano
  • ubuntu 의 기본적인 명령어
    ls: 파일 보기
    cp: 파일 복사
    sudo: 관리자 권한으로 실행 (퍼미션 문제가 있는 경우, udev 설정, apt 설치 등은 모두 앞에 sudo를 붙여서 실행해야합니다.)
    git: 깃허브 패키지 관련 명령어
    chmod: 파일의 권한 변경
    make: 소스코드 컴파일 실행 명령어

구동환경 #

로봇과 원격 PC #

로봇과 원격 PC

주행 로봇은 PC와 직접 연결되기 어렵습니다.

본 매뉴얼은 유저의 PC와 로봇이 원격으로 연결되어 있다고 가정하고 있습니다.

그래서 유저는 내 PC와 로봇 모두에 Ubuntu 18.04와 ROS1 melodic를 설치해야 합니다.

Windows에서 사용하는 가상 환경에서는 ROS의 GUI 툴들이 정상 동작을 하지 않는 경우가 많으므로 권장하지 않습니다.

우분투 18.04 설치하기 #

ROS-melodic 버전은 공식적으로 우분투 18.04에서 지원합니다.
공식적인 지원의 의미는 Ubuntu의 APT 패키지 관리 소프트웨어를 통해 바이너리 패키지를 설치할 수 있다는 의미이며 기본 탑재되어 있음을 의미하지는 않습니다.

R1mini의 기본 패키지는 ROS-melodic 버전에서 테스트되었으며 ROS2 지원을 위해 ROS-foxy 버전에서 테스트되었습니다.
ROS2를 사용하기 위해서는 Ubuntu 20.04 버전을 설치하여야합니다.

Ubuntu 18.04 는 LTS(Long Term Service)버전으로 2023년까지 지원되며 현재 최신 LTS버전은 20.04 입니다.

(유의!) 설치는 되도록 하드디스크의 별도 파티션을 지정하여 Windows와 듀얼 부팅으로 설치하는 것이 권장됩니다.(VMware등을 통한 가상환경 설치의 경우 네트워크 설정에서 오류가 발생할 확률이 높습니다.)

설치 이미지 다운로드 #

Ubuntu image는 아래 링크에서 다운로드 가능합니다.

https://releases.ubuntu.com/18.04/

ROS-melodic 설치하기 #

melodic은 ROS의 한 버전입니다. ROS의 각 버전은 별도로 설치되어야하며 버전간의 호환성을 보장하지 않습니다. 따라서 현재 가장 널리 사용되는 버전을 정하여 사용하는것이 유리합니다.

ROS 설치는 크게 ROS를 구동하기 위한 환경을 설치하는 것과 개별적인 패키지를 구동하기 위한 workspace를 설치하는 과정으로 진행됩니다.

ROS 기본 환경 설치 #

ROS를 설치하는 가장 기본적은 방법은 ROS 공식 위키를 참조하는 것입니다. (오래된 튜토리얼을 보는것보다는 가장 최신의 문서를 확인하는 것이 좋습니다.)
설치시에는 ros-melodic-desktop-full 버전으로 설치합니다.

http://wiki.ros.org/melodic/Installation/Ubuntu

ROS Workspace 설치 #

ROS기본 환경이 설치되었다면 사용자의 HOME 폴더(~/)에 ROS패키지를 설치할 작업공간(Workspace)를 설치해야합니다.
이후에 진행할 과정에서는 이 작업공간이 ~/catkin_ws 라는 폴더에 만들어져있다고 가정합니다.

http://wiki.ros.org/catkin/Tutorials/create_a_workspace

설치 후 해야할 일들 #

ros의 binary 패키지의 구동을 위해서는 /opt/ros/melodic/setup.bash
그리고 catkin_ws/src 에 설치된 패키지를 구동하기 위해서는 catkin_ws/devel/setup.bash 가 각각 ~/.bashrc 파일에 등록되어있어야합니다. 등록하는 방법은 다음과 같습니다.

$ echo "source /opt/ros/melodic/setup.bash" >> ~/.bashrc
$ echo "source ~/catkin_ws/devel/setup.bash" >> ~/.bashrc

ROS 설치 동영상 #

다음은 부산대학교 학생들과 함께 진행한 ROS-melodic 및 R1mini 패키지 설치 과정을 정리한 동영상입니다.
2021년11월 현재 최신 버전 패키지 설치 과정입니다.

아래는 Pinkwink님이 진행하신 과정 중 ROS 설치 부분을 발췌한 동영상입니다.
일부 현재 패키지 버전과 다른 부분이 있으므로 참고하시기 바랍니다.

도움이 되는 자료 #

다음은 Ubuntu에 익숙해지기 위해 참고할만한 자료입니다.

아래의 자료는 이 후 매뉴얼에서 언급하는 자료이지만, 현 지점에서 한 번에 정리해 둡니다.

R1mini ROS Melodic Version GITHUB #

OMO R1mini를 구동하기 위한 ROS 기초 및 R1mini 패키지 사용법 #

위 동영상은 재생 목록으로 다수의 동영상이 함께 포함되어 있습니다.

해당 목록은 2021년 1월, 2월경에 국민대학교에서 R1mini를 대상으로 진행한 원격 수업 영상입니다.

이 동영상들에는 ROS의 기초와 R1mini를 세팅하는 방법과 슬램과 네비게이션을 사용하는 방법을 다루고 있습니다.
현재 로봇과 완전히 일치하지는 않지만 참조 용으로 학습하기에는 괜찮습니다.
위 영상을 클릭하시면 재생 목록이 나타납니다.
혹시 재생 목록이 나타나지 않는 분들은 아래 링크를 다시 확인해 주세요.

문제해결 #

패키지 업데이트 문제 #

$ sudo apt update 도중 아래와 같은 에러 메세지가 뜨는 경우

Err:18 http://packages.ros.org/ros/ubuntu bionic InRelease The following signatures were invalid: EXPKEYSIG F42ED6FBAB17C654 Open Robotics info@osrfoundation.org Fetched 4,680 B in 3s (1,702 B/s) Reading package lists... Done W: An error occurred during the signature verification. The repository is not updated and the previous index files will be used. GPG error: http://packages.ros.org/ros/ubuntu bionic InRelease: The following signatures were invalid: EXPKEYSIG F42ED6FBAB17C654 Open Robotics info@osrfoundation.org

https://answers.ros.org/question/379190/apt-update-signatures-were-invalid-f42ed6fbab17c654/ 문서를 따라 다음을 수행합니다.

ROS1 버전에서 터미널에 다음을 입력합니다.

$ curl -s https://raw.githubusercontent.com/ros/rosdistro/master/ros.asc | sudo apt-key add -