한이음/GPS 좌표 트래킹을 통한 자율주행 로봇

ROS 설치

MZ 아이종 2022. 1. 19. 03:51

로봇 동작에 널리 사용되는 OS로, 현재 활발히 사용되고 코드들이 공유되고 있다.

다양한 ROS 버전 중에서 Melodic 버전을 설치해 보도록 하자.

 

사용버전. 노트북

˙ samsung Ultrabook i7

˙ Ubuntu 18.04.6 LTS

˙ Ros Melodic

 

단계

1. 저장소 등록

2. 인증키 다운

3. ROS Melodic 설치

4. 의존성 빌드 패키지 다운

5. ROS 환경설정

 

1. 저장소 등록

 

$ sudo apt update 
$ sudo apt upgrade

 

먼저 y를 눌러 upgrade를 진행한다.

사진의 경우처럼 Use 'sudo apt autoremove' to remove them. 문구가 있는경우 아래의 명령어를 실행한다.

$ sudo apt autoremove

 

이후 http://packages.ros.org 에 접근할 수 있도록 source.list.d에 저장소를 추가한다. 저장소는 보통 Repository 라고 한다.

$ sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list'

catkin_init_workspace

 

다른위치 -> 컴퓨터 -> etc -> apt -> source.list.d 에 ros-latest.list 가 생성됨을 확인할 수 있다.

 

또는

$ cat '/etc/apt/sources.list.d/ros-latest.list'

를 입력할 경우 deb http://packages.ros.org/ros/ubuntu bionic main 가 출력되면 성공적으로 완료한 것이다.

 

 

2. 인증키 다운

 

위에서 출력된 페이지의 저장소에서 패키지를 다운받기 위해서는 인증키가 필요하고, 아래 명령어를 통해 인증키를 받아온다.

$ sudo apt-key adv --keyserver 'hkp://keyserver.ubuntu.com:80' --recv-key C1CF6E31E6BADE8868B172B4F42ED6FBAB17C654

 

아래의 메세지가 출력되면 인증키를 받아오는 데 성공한 것이다.

gpg: Total number processed: 1
gpg:                imported:1

 

 

3. ROS Melodic 설치

 

정말 기본만 설치하는 Desktop ver.과 Full ver.이 있어 원하는 버전을 설치하면 된다.

Full ver.의 경우 Rviz, Gazebo 와 같은 ROS 도구들을 같이 설치해 준다.

Window 설치 시 Window만 다운받을건지 Powerpoint, Excel 등을 같이 설치할것인지 차이라고 생각하면 된다.

 

$ sudo apt install ros-melodic-desktop #Desktop ver.
$ sudo apt install ros-melodic-desktop-full #Full ver.

 

원하는 버전을 다운받은 후 아래의 명령어를 순서대로 입력해 준다.

$ sudo apt-get install python-pip
$ sudo pip install -U rosdep
$ sudo rosdep init

 

만약 아래와 같은 오류가 발생한다면 해당 파일을 지워준다. 

$ sudo rm /etc/ros/rosdep/sources.list.d/20-default.list

위 명령어를 통해 해당 파일을 지워주고, 다시 명령어를 실행시킨다.

 

 

정상적으로 rosdep update 라는 문구가 출력되면 아래와 같이 명령어를 입력해 준다.

$ rosdep update
$ echo "source /opt/ros/melodic/setup.bash" >> ~/.bashrc
$ source ~/.bashrc

 

이후 사용하는 편집기에 맞추어 명령어를 입력하여 입력이 제대로 되었는지 확인한다.

$ sudo gedit ~/.bashrc
$ source ~/.bashrc

위와같은 파일이 열리면 제대로 입력한 것이다.

gedit 편집기를 사용하였지만, 해당 자리에 nano, vim 등을 입력하여 본인이 사용하는 편집기를 통해 확인할 수 있다.

 

 

4. 의존성 빌드 패키지 다운

 

각각의 버전에 맞게 명령어를 입력해 준다.

$ sudo apt-get install cmake python-catkin-pkg python-empy python-nose python-setuptools libgtest-dev python-rosinstall build-essential git python-rosinstall-generator python-wstool #Desktop ver.
$ sudo apt-get install python-rosinstall python-rosinstall-generator python-wstool #Full ver.

 

이후 아래의 명령어들을 순서대로 입력해 준다.

$ mkdir -p ~/catkin_ws/src
$ cd ~/catkin_ws/src
$ catkin_init_workspace
$ cd ..
$ catkin_make

 

catkin_init_workspace 명령어를 입력했을 때 오류가 발생할 수도 있다.

 

위의 상황에서는 아래의 명령어를 입력해 오류를 해결한다.

$ sudo apt install catkin

 

 

 하지만 이 경우에도 의존성 오류가 발생할 수 있다.

 아래와 같이 차례로 명령어를 입력하여 해결한다.

# 1st solution
$ sudo apt-get install -f catkin

# 2nd solution
$ sudo apt-get install aptitude
$ sudo aptitude install catkin
$ sudo apt-get install -f catkin

 

아래와 같은 오류가 발생한 경우 명령어를 입력하여 파일을 열어준다.

$ gedit $HOME/.bashrc

이후 파일의 맨 아래 부분에서 source /opt/ros/melodic/setup.bash 부분을 지워주고 저장한다.

 

$ source ~/.bashrc

저장한 다음 위 명령어를 입력해 준다.

 

이후 make가 완료되면 아래와 같은 출력화면이 나타난다.

-- Configuring done
-- Generating done 
-- Build files have been written to: /home/catkin_ws/build

 

위와같이  home -> catkin_ws 폴더에 생성됨을 확인할 수 있다.

 

아래 명령어를 입력하여 업데이트 해준다.

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

 

 

5. ROS 환경설정

make를 자주하게되면 명령어가 길 경우 불편하고 작업능률도 떨어지므로, 단축 명령어를 지정해 준다.

 

명령어를 통해 bash 파일을 열어주고  맨 마지막 부분에 아래의 명령어를 입력해 준다.

$ sudo gedit ~/.bashrc
# SET ROS MELODIC
source /opt/ros/melodic/setup.bash
source ~/catkin_ws/devel/setup.bash

# SET ROS NETWORK
export ROS_HOSTNAME=192.168.0.134 #=의 경우 띄우지 않는다. 본인의 IP를 입력한다.
export ROS_MASTER_URI=http://${ROS_HOSTNAME}:11311 #=의 경우 띄우지 않는다.

#SET ROS alias command
alias cw='cd ~/catkin_ws'
alias cs='cd ~/catkin_ws/src'
alias cm='cd ~/catkin_ws && catkin_make'

HOSTNAME의 ip주소는 ifconfig 명령어를 통해 알 수 있다.

 

Ctrl + s 를 통해 저장해 준다.

 

이후 source ~/.bashrc를 통해 설정을 변경하고 cm을 입력하면, make가 됨을 확인할 수 있다.

source ~/.bashrc에서 오류가 발생하면, source /opt/ros/melodic/setpup.bash부분을 다시 지워준다.

'한이음 > GPS 좌표 트래킹을 통한 자율주행 로봇' 카테고리의 다른 글

ROS package 생성  (2) 2022.02.01
Chrome 다운  (0) 2022.01.19
Arduino 설치  (0) 2022.01.19
Slack 설치  (0) 2022.01.19
Ubuntu 설치  (1) 2021.12.31