ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [우분투20.04] ROS1 + ROS2 세팅
    ROS 2024. 3. 5. 14:29
    728x90

    ROS1과 ROS2를 모두 사용하기 위해서 20.04에 Noetic과 Foxy를 설치하려고한다. (개인소장)

     

    1. ROS1 Noetic 설치

     

    noetic/Installation/Ubuntu - ROS Wiki

    If you rely on these packages, please support OSRF. These packages are built and hosted on infrastructure maintained and paid for by the Open Source Robotics Foundation, a 501(c)(3) non-profit organization. If OSRF were to receive one penny for each downlo

    wiki.ros.org

     위 사이트에서 순서대로 따라해서 설치하면 쉽게 설치가 가능하다. 하지만 ROS1만 설치하는 것이 아니라 ROS2까지 해야해서

    세팅을 바꿔야한다. 

    #Setup your sources.list ($(lsb_release -sc) => focal 변경)
    sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu focal main" > /etc/apt/sources.list.d/ros-latest.list'
    
    #Set up your keys
    sudo apt install curl # if you haven't already installed curl
    curl -s https://raw.githubusercontent.com/ros/rosdistro/master/ros.asc | sudo apt-key add -

     

    1.1 Installation

    sudo apt update
    sudo apt install ros-noetic-desktop-full
    
    #설치 완료 후 
    gedit ~/.bashrc
    
    #맨 아래 줄에 추가
    function ros1_setup {
        source /opt/ros/noetic/setup.bash
        echo 'Noetic is Activated!'
        alias cs="cd ~/catkin_ws/src" 
        alias cw="cd ~/catkin_ws/"
        alias cm="cw && catkin build"
        alias sb="source devel/setup.bash"
    }
    
    #저장 후
    source ~/.bashrc

    앞서 말했듯이 ROS1과 ROS2 모두 사용할 것이기에 상시 소싱을 진행하면 서로 충돌이 나서 사용할 수가 없다.

    때문에 앞으로 'ros1_setup'이란 명령어를 통해서 ros1 빌드를 진행 할 것이다.

     

    #추가 패키지

    sudo apt install ros-noetic-joy ros-noetic-teleop-twist-joy 
    sudo apt install ros-noetic-teleop-twist-keyboard ros-noetic-laser-proc &&
    sudo apt install ros-noetic-rgbd-launch ros-noetic-rosserial-arduino &&
    sudo apt install ros-noetic-rosserial-python ros-noetic-rosserial-client &&
    sudo apt install ros-noetic-rosserial-msgs ros-noetic-amcl ros-noetic-map-server &&
    sudo apt install ros-noetic-move-base ros-noetic-urdf ros-noetic-xacro &&
    sudo apt install ros-noetic-compressed-image-transport ros-noetic-rqt ros-noetic-rviz && 
    sudo apt install ros-noetic-gmapping ros-noetic-navigation ros-noetic-interactive-markers

     

    2. ROS2 Foxy 설치

     

    Ubuntu (Debian) — ROS 2 Documentation: Foxy documentation

    You're reading the documentation for a version of ROS 2 that has reached its EOL (end-of-life), and is no longer officially supported. If you want up-to-date information, please have a look at Iron. Ubuntu (Debian) Table of Contents Debian packages for ROS

    docs.ros.org

    똑같이 공식 홈페이지를 참고하여 설치를 해도 된다.

    locale  # check for UTF-8
    
    sudo apt update && sudo apt install locales
    sudo locale-gen en_US en_US.UTF-8
    sudo update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8
    export LANG=en_US.UTF-8
    
    locale  # verify settings

     

    sudo apt install software-properties-common
    sudo add-apt-repository universe

     

    sudo apt update && sudo apt install curl -y
    sudo curl -sSL https://raw.githubusercontent.com/ros/rosdistro/master/ros.key -o /usr/share/keyrings/ros-archive-keyring.gpg
    
    echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/ros-archive-keyring.gpg] http://packages.ros.org/ros2/ubuntu $(. /etc/os-release && echo $UBUNTU_CODENAME) main" | sudo tee /etc/apt/sources.list.d/ros2.list > /dev/null

     

    sudo apt update
    sudo apt upgrade
    
    #둘 중 아무거나
    #1.ROS, RViz, demos, tutorials.
    sudo apt install ros-foxy-desktop python3-argcomplete
    #2. 블로그에서 흔히 보이는 기본 설치 명령어
    sudo apt install ros-foxy-desktop

     

    Foxy 설치 이후 colcon이나 다른 패키지들이 포함되어있지 않아서 다음을 설치해준다

    sudo apt update
    sudo apt install -y build-essential 
    sudo apt install -y cmake 
    sudo apt install -y git 
    sudo apt install -y libbullet-dev 
    sudo apt install -y python3-colcon-common-extensions 
    sudo apt install -y python3-flake8 
    sudo apt install -y python3-pip 
    sudo apt install -y python3-pytest-cov 
    sudo apt install -y python3-rosdep 
    sudo apt install -y python3-setuptools 
    sudo apt install -y python3-vcstool 
    sudo apt install -y wget
    
    # install some pip packages needed for testing
    python3 -m pip install -U pip
    python3 -m pip install -U argcomplete 
    python3 -m pip install -U flake8-blind-except 
    python3 -m pip install -U flake8-builtins 
    python3 -m pip install -U flake8-class-newline 
    python3 -m pip install -U flake8-comprehensions 
    python3 -m pip install -U flake8-deprecated 
    python3 -m pip install -U flake8-docstrings 
    python3 -m pip install -U flake8-import-order 
    python3 -m pip install -U flake8-quotes 
    python3 -m pip install -U pytest-repeat 
    python3 -m pip install -U pytest-rerunfailures 
    python3 -m pip install -U pytest
    
    # install Fast-RTPS dependencies
    sudo apt install --no-install-recommends -y 
    sudo apt install --no-install-recommends -y libasio-dev 
    sudo apt install --no-install-recommends -y libtinyxml2-dev
    
    # install Cyclone DDS dependencies
    sudo apt install --no-install-recommends -y libcunit1-dev

     

    #설치 완료 후 
    gedit ~/.bashrc
    
    #맨 아래 줄에 추가
    function ros2_setup {
        source /opt/ros/foxy/setup.bash
        echo \'Foxy is Activated!\'
        alias cs='cd ~/ros2_ws/src'
        alias cw='cd ~/ros2_ws/'
        alias cm='cw && colcon build'
    }
    
    #저장 후
    source ~/.bashrc

    똑같이 "ros2_setup" 명령어를 통해서 Foxy를 빌드한다.

     

    완!!

    728x90

    'ROS' 카테고리의 다른 글

    [ROS2] OMO_R1mini gazebo  (0) 2024.05.23
    [ROS2] launch 파일 작성법  (0) 2024.03.08
    [ROS2] 3. Work Space 만들기  (0) 2024.02.03
    [ROS2] 2. ROS2 Humble 설치  (0) 2024.02.01
    [ROS2] 1. 우분투(Ubuntu) 22.04 설치  (0) 2024.02.01
Designed by Tistory.