ROS pkg install
ROS 설치
ROS 설치는 ROS의 위키페이지에 잘 나타나 있지만, 혹시 이 글을 읽는 분들이 ROS의 설치 부터 시작해야 한다면 ROS Melodic 설치를 안내하고 있는 페이지에서 부터 시작하기를 권합니다.
ROS 버전은 Ubuntu 18.04에서 설치된 ROS Melodic 버전을 기준으로 하고, 빌더는 크게 관계는 없지만, catkin-tools를 사용하고 있다고 가정하겠습니다. catkin-tools를 포함하여 설치를 안내하고 있는 페이지는 방금 언급한 ROS Melodic 설치를 안내하고 있는 페이지 입니다.
다음 과정은 catkin_ws 폴더가 사용자의 home폴더 안에 설치된 것을 기준으로 작성하였습니다.
ROS-melodic 버전에서 테스트되었습니다.
Dependency Install
위에 설치해야할 모듈들이 저희 omo_r1 pkg를 구동하는데 필요한 모듈들입니다. 이 중에는 이미 여러분들이 설치를 진행했을 수도 있는 모듈도 포함하고 있습니다.
Package Install
소스코드 받기
omo_r1 ROS 패키지는 아래 github 페이지에서 다운로드할 수 있습니다.
앞서 설치한 ROS catkin_ws 폴더에서 다음과 같이 입력하시면 됩니다.
omo_r1 pkg는 ydlidar를 탑재하고 있는데 해당 패키지를 포함하여 omo_r1 패키지는 github에서 받을 수 있습니다.
먼저 워크스페이스를 catkin_ws라고 한다면 catkin_ws안에 src 폴더로 이동해서 git clone 명령으로 omo_r1과 ydlidar를 받습니다.
소스 코드 빌드
소스 코드를 모두 받은 후에 워크스페이스(catkin_ws)로 이동해서 위 그림과 명령에 나타난 것 처럼 catkin build 명령으로 빌드를 수행합니다.
USB 시리얼 장치 설치
R1로봇은 PC와 USB-to-Serial(USB시리얼) 포트를 통해 연결됩니다. Ubuntu 리눅스에서 USB시리얼 장치는 /dev/ttyUSB0, /dev/ttyUSB1 따위로 등록되는데, 로봇 구동명령을 실행할때 이 경로를 매번 설정해주어야하는 번거로움이 있습니다. 다음과정을 통해 USB시리얼 장치를 등록하면 자동으로 /dev/ttyMotor 로 설정됩니다.
cd ~/catkin_ws/src/omo_r1/omo_r1_bringup/scripts/ 로 이동하여 create_udev_rules.sh 스크립트를 실행합니다.
이렇게 하면 /dev/ttyMotor 가 확인됩니다.
USB 시리얼 문제 해결
여기서 ID 이후에 나오는 1a86이 vendor ID이고 다음 7523이 product ID 입니다. 만약 이 값이 아닌 다른 값으로 검색되는 경우 해당 ID를 수정해주어야합니다. 터미널에 다음을 입력하여 98-omo-r1.rules 파일을 엽니다.
여기서 idVendor와 idProduct를 위에 lsusb 명령으로 확인한 값으로 변경합니다.
SUBSYSTEM=="tty", ATTRS{idVendor}=="1a86", ATTRS{idProduct}=="7523"....
Ctrl-X키를 눌러 빠져나온 다음 다음을 입력하여 udev를 다시 적용합니다.
이제 다시한번 /dev/ttyMotor 가 보이는지 확인합니다.
만약 이렇게 해도 검색이 안된다면 USB장치의 문제가 있는것일 수 있으므로 다른 장비를 사용하거나 PC를 재부팅해보시기 바랍니다.
Last updated