omo_r1mini 패키지 설치

본 페이지는 ROS melodic 버전 용으로 만들어진 omo_r1mini 패키지를 PC와 Jetson Nano에 설치하는 법을 다룹니다.

본 페이지의 내용은 여러분이 어디에 omo_r1mini 패키지를 설치할 것인지 유의해서 따라해야 합니다.

Github 주소 #

PC에 OMO R1mini 패키지 설치 #

PC에 ROS 설치 #

  • R1mini를 원격에서 구동하더라도 HOST PC에는 로봇과 동일한 omo_r1mini 패키지가 설치되어있어야 합니다.
  • 혹시 자신의 PC의 아직 ROS가 설치되지 않은 분들은 우분투 18.04를 설치한 후 ROS melodic 버전을 설치하시기 바랍니다.
PC에 ROS Melodic 설치하는 법

R1mini ROS melodic 패키지 github에서 받기 #

  • 워크스페이스 안의 src 폴더로 이동하여 git clone 명령으로 omo_r1mini 소스코드를 받아옵니다.
cd ~/castkin_ws/src
git clone https://github.com/omorobot/omo_r1mini
  • 추후 소스 코드가 업데이트 되면 git pull 명령으로 업데이트 된 소스 코드를 받을 수 있습니다.

Dependency 설치 #

다음 명령을 입력하여 omo-r1mini 패키지를 구동하기 위한 의존성 패키지들을 설치합니다.

sudo apt-get install ros-melodic-tf ros-melodic-joy \
ros-melodic-teleop-twist-joy \
ros-melodic-teleop-twist-keyboard \
ros-melodic-laser-proc ros-melodic-rgbd-launch \
ros-melodic-depthimage-to-laserscan \
ros-melodic-rosserial-arduino ros-melodic-rosserial-python \
ros-melodic-rosserial-server ros-melodic-rosserial-client \
ros-melodic-rosserial-msgs ros-melodic-amcl \
ros-melodic-map-server ros-melodic-move-base \
ros-melodic-urdf ros-melodic-xacro ros-melodic-usb-cam \
ros-melodic-compressed-image-transport \
ros-melodic-rqt-image-view ros-melodic-gmapping \
ros-melodic-navigation ros-melodic-interactive-markers \
ros-melodic-ar-track-alvar ros-melodic-ar-track-alvar-msgs \
ros-melodic-cartographer-ros

build #

  • 워크스페이스로 이동하여 catkin build 명령으로 패키지를 빌드합니다.

Jetson nano에 설치 #

OMO R1mini는 주행용 로봇이므로 내 PC와 로봇 모두 ROS와 OMO R1mini의 ROS 패키지가 설치되어야 합니다. 로봇(R1mini)은 유저에 따라 Jetson nano일 수도 있고, Raspberry Pi일 수도 있습니다.

자세한 설치 방법은 다음 문서를 참조하십시오.

위 과정을 통해 SD카드 이미지를 구우면 다음 설치 과정을 건너뛸 수 있습니다.

Jetson nano에 ROS 설치 #

Jetson nano에는 현재 기준 Jetpack 4.5 버전을 설치할 수 있습니다.

Jetpack 4.5를 설치하면 Ubuntu 18.04와 CUDA 관련 드라이버가 모두 설치되어 편리합니다.

여러분은 Jetpack 4.5를 설치한 후 아래 동영상처럼 ROS를 설치하면 됩니다

  • 만약 YOLOv3를 기동한다면, 아래 동영상처럼 Jetpack 4.5를 설치한 후 OpenCV 4버전을 제거하고 OpenCV 3.4를 설치한 후에 ROS melodic을 설치해야 합니다.

UDEV 설정 #

ROS는 다수의 USB 장치와 연결될 수 있는데 이때 장비 연결의 혼선을 막기 위해 UDEV 설정을 하게 됩니다.
R1mini도 설정을 할 수 있도록 설정 파일을 제공합니다.

바로 omo_r1mini_bringup 패키지의 scripts 폴더에 udev 설정을 위한 sh 파일이 있습니다.

해당 파일은 sudo 명령으로 실행합니다.

$ sudo ./create_udev_rules.sh

그리고 아 두 명령을 실행합니다. 중간에 암호를 입력하는 곳이 있으니 조심해야 합니다.

systemctl stop nvgetty
systemctl disable nvgetty

마지막으로 다음 명령을 실행한 후 재부팅을 하면 됩니다.

udevadm trigger

재부팅 후 ls /dev/tty* 명령으로 연결된 장치 목록을 보면 ttyLiDAR라는 포트가 생성된 것을 확인할 수 있습니다.

ttyUSB 접근 권한 문제 해결 #

경우에따라 ttyUSB 장치에 접근권한이 없어서 실행되지 않는 경우가 있습니다.

현재 로그인된 사용자를 dialout 이라는 사용자 그룹에 등록되어있지 않아서 생기는 문제이므로 터미널에 다음과 같이 입력하여 해당 사용자 이름<user_name>을 등록하고 재부팅합니다.

$ sudo adduser <user_name> dialout