Doosan ROS2 package 설치
Overview
Doosan robotics ROS2 package
Doosan robotics ROS2 패키지는 ROS2 상에서 두산 협동로봇을 구동하기 위한 메타 패키지로 URDF 모델을 제공하고 Rviz, Gazebo 를 통하여 시뮬레이션이 가능하며, moveIt 이나 다양한 예제를 통하여 실제 로봇을 구동 시킬 수 있습니다.
제약 사항
System
사용자 PC는 X86 시스템이어야 합니다.
원할한 시뮬레이션을 위해서는 워크스테이션급 PC를 권장합니다.
OS 및 ROS2 version
Ubuntu 22.04(32/64bit) + ROS2 humble-devel
설치
소스 설치
Doosan robotics Github 에서 소스를 다운 받아서 빌드 합니다
Github : https://github.com/doosan-robotics/doosan-robot2
설치 방법
Line 49, 53에는 ROS2 version과 사용자이름을 입력합니다.
ex> rosdep install -r --from-paths . --ignore-src --rosdistro humble -y
##################### ROS2 Installation #####################
### Set UTF-8 locale
$ sudo apt update && sudo apt install -y locales
$ sudo locale-gen en_US.UTF-8
$ sudo update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8
$ export LANG=en_US.UTF-8
### Install ROS2 repository and dependencies
$ sudo apt install -y software-properties-common curl
$ sudo add-apt-repository universe -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 -y
$ sudo apt install -y ros-humble-desktop ros-humble-ros-base ros-dev-tools
##################### Docker Installation #####################
$ sudo apt-get update
$ sudo apt-get install -y ca-certificates curl
$ sudo install -m 0755 -d /etc/apt/keyrings
$ sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
$ sudo chmod a+r /etc/apt/keyrings/docker.asc
$ echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu $(. /etc/os-release && echo "$VERSION_CODENAME") stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
$ sudo apt-get update
$ sudo apt-get install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
$ sudo docker run hello-world
##################### Doosan ROS2 Package Installation#####################
### Prerequisite installation elements before package installation
$ sudo apt-get update
$ sudo apt-get install -y libpoco-dev libyaml-cpp-dev wget
$ sudo apt-get install -y ros-humble-control-msgs ros-humble-realtime-tools ros-humble-xacro ros-humble-joint-state-publisher-gui ros-humble-ros2-control ros-humble-ros2-controllers ros-humble-gazebo-msgs ros-humble-moveit-msgs dbus-x11 ros-humble-moveit-configs-utils ros-humble-moveit-ros-move-group
$ sudo apt install ros-humble-moveit* -y
### install gazebo sim
$ echo "deb http://packages.osrfoundation.org/gazebo/ubuntu-stable $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/gazebo-stable.list
$ wget http://packages.osrfoundation.org/gazebo.key -O - | sudo apt-key add -
$ sudo apt-get update
$ sudo apt-get install -y libignition-gazebo6-dev ros-humble-gazebo-ros-pkgs ros-humble-moveit-msgs ros-humble-ros-gz-sim ros-humble-ros-gz-image ros-humble-tf-transformations
### We recommand the /home/<user_home>/ros2_ws/src
$ cd ~/ros2_ws/src
$ git clone -b humble-devel https://github.com/doosan-robotics/doosan-robot2.git
$ git clone -b humble https://github.com/ros-controls/gz_ros2_control
$ sudo rosdep init
$ rosdep update
$ rosdep install -r --from-paths . --ignore-src --rosdistro $ROS_DISTRO -y
### Install Doosan Robot Emulator
$ cd ~/ros2_ws/src/doosan-robot2
$ sudo usermod -aG docker $USER
$ sudo ./install_emulator.sh
### Build settings
$ cd ~/ros2_ws
$ source /opt/ros/humble/setup.bash
$ colcon build
$ . install/setup.bash