Introduction
Overview
ROS (Robot Operating System)는 복잡한 로봇 시스템 개발을 가능하게 하는 소프트웨어 프레임워크입니다. ROS2는 원래의 로봇 운영 시스템(ROS)의 성공을 기반으로 모듈성, 확장성 및 상호 운용성을 향상시켰습니다. 다양한 프로그래밍 언어와 플랫폼을 지원하도록 설계되었으며, 개발자와 사용자의 대규모 활발한 커뮤니티에 의해 지원됩니다.
Neuromeka에서 제공하는 ROS2 패키지는 [DCP3]를 통해 MobyFramework 와 통신합니다.
본 문서의 Moby ROS2 패키지는 ROS2 Humble에서 테스트되었습니다. ROS2 Humble 버전에 대한 자세한 내용은 ROS2 releases를 참조하십시오.
ROS 및 Neuromeka 패키지 설치
Moby ROS2는 Moby의 기본 구성에 포함되어있는 Navifra PC를 비활성화 또는 제거한 후 별도의 리눅스 환경 PC를 결합하여 사용해야 합니다.
Moby ROS2와 Navicore는 동시에 사용할 수 없습니다.
Neuromeka 패키지 설치
Moby ROS2에는 Neuromeka 패키지가 사용됩니다. Neuromeka 공식 Github 저장소에서 다운로드하거나, 아래의 명령어를 통해 설치할 수 있습니다.:
ROS 패키지 설치
이 설치 매뉴얼은 Ubuntu 20.04를 기준으로 작성되었습니다. PC에 ROS2 Humble 버전을 설치하려면 다음 URL을 참조하세요 ROS2 Humble Installation
sudo apt install -y ros-humble-perception-pcl \
ros-humble-cartographer* \
ros-humble-xacro \
ros-humble-ros2-control \
ros-humble-ros2-controllers \
ros-humble-controller-manager \
ros-humble-joint-state-broadcaster \
ros-humble-joint-state-publisher-gui \
ros-humble-navigation2 \
ros-humble-nav2* \
ros-humble-geographic-msgs \
ros-humble-robot-localization \
ros-humble-joy-linux \
ros-humble-libg2o \
ros-humble-slam-toolbox \
ros-humble-ros-ign \
ros-humble-ros-ign-gazebo \
ros-humble-ign-ros2-control \
ros-humble-ros-ign-interfaces \
ros-humble-gazebo-ros-pkgs \
ros-humble-tf-transformations \
ros-humble-teleop-twist-keyboard \
ros-humble-rtabmap-ros \
ros-humble-octomap-ros \
ros-humble-octomap-rviz-plugins \
ros-humble-nav2-map-server \
ros-humble-sick-scan-xd \
ros-humble-librealsense2* \
ros-humble-realsense2-camera \
ros-humble-realsense2-description
&& sudo apt install -y python3-colcon-common-extensions \
&& sudo apt install python3-rosdep -y \
&& sudo apt install python3-rosdep2 -y \
&& sudo rosdep init
ROS 환경설정
Moby 패키지 다운로드 및 컴파일
-
워크스페이스 생성
-
소스코드 빌드
-
Setup 파일 소스 적용
Moby 패키지 목록
├── moby-ros
├── src
├── moby_bringup
├── moby_description
├── moby_gazebo
├── moby_mapping
├── moby_navigation
└── ...
- moby_bringup: ROS와 Moby간의 통신을 제공합니다.
- moby_description: Moby의 모델(moby_rp, moby_rp_v3)을 제공합니다.
- moby_gazebo: Moby의 Gazebo 시뮬레이션을 제공합니다.
- moby_mapping: Moby의 맵핑 기능을 제공합니다.
- moby_navigation: Moby의 주행 기능을 제공합니다.