0편 – [robot arm, manipulator 프로젝트][ubuntu 20.04, ros2, gazebo][0] – ros2, gazebo 설치 및 예제 실행
1편 – [robot arm, manipulator 프로젝트][ubuntu 20.04, ros2, gazebo][1] – ros2 publisher subscriber c++, python 구현 및 실행
현재 시점에서 내 환경과 설치사항은 다음과 같다.
- ubuntu 20.04 (dual booting)
- nvidia 4080 -> drivers 535
- ros2 foxy
- anaconda
- vscode
ubuntu 환경은 새롭게 구성할 때가 많은데 이 때마다 위 항목들을 기본적으로 설치하고 공부를 시작하는 편이다.
1. ros2 설치 (foxy)
자세한 설명은 공식 링크에서 확인 가능
locale
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
sudo apt install -y 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
sudo apt install -y ros-foxy-desktop python3-argcomplete
sudo apt install -y ros-foxy-ros-base python3-argcomplete
sudo apt install -y ros-dev-tools
source /opt/ros/foxy/setup.bash
순서대로 위에 코드를 터미널에서 전부 실행시킨다. 중간 중간 나오는 y/n 에서 y 를 입력
참고로 중간에 sudo curl -sSL 로 시작하는 긴 코드 전체가 한줄이다. 한번에 복붙
터미널에 붙여넣기 할 때에는 ctrl+shift+v
2. ros2 예제 실행
source /opt/ros/foxy/setup.bash
ros2 run demo_nodes_cpp talker
새로운 터미널에서
source /opt/ros/foxy/setup.bash
ros2 run demo_nodes_py listener
위 사진과 같이 ros2 가 정상적으로 동작하는 것을 확인 할 수 있다.
3. gazebo 설치
공식 링크에서 자세한 설명 확인 할 수 있다.
sudo apt install -y ros-foxy-gazebo-ros-pkgs
4. gazebo 예제
sudo apt install ros-foxy-ros-core ros-foxy-geometry2
gazebo --verbose /opt/ros/foxy/share/gazebo_plugins/worlds/gazebo_ros_diff_drive_demo.world
새로운 터미널을 열고 (현재: 터미널 2개)
ros2 topic pub /demo/cmd_demo geometry_msgs/Twist '{linear: {x: 1.0}}' -1
위 사진과 같이 로봇이 움직이는 것을 확인 할 수 있다.
0 Comments