Skip to content

시작하기

Moby-RP 특징 및 사양

Moby-RP (Research Platform)는 모바일 매니퓰레이터로서 자율 이동 로봇 Moby, 협동로봇 Indy, 로봇 비전 솔루션인 IndyEye가 통합된 연구용 로봇 플랫폼입니다. 이동성이 없는 협동 로봇에 이동성을 부여하여 제조, 물류, 배송, 순찰, 방역, 안내 등 다양한 용도로 사용할 수 있습니다. 뿐만 아니라 리프트나 서빙 트레이와 같이 다양한 장비와 결합하여 농업용이나 서비스용 로봇으로서도 활용할 수 있습니다.

Moby-RP는 라이다(LiDAR)를 이용한 주변 환경 감지와 RGB-D 센서를 이용한 3D 물체 인식, ToF 방식의 IR 센서를 이용한 가까운 장애물 인식으로 SLAM (Simultaneous Localization and Mapping)과 주행 (Navigation) 알고리즘을 통해 장애물을 회피하며 자율 주행이 가능합니다. 또한, 센서 플레이트의 변경을 통해 다양한 센서들을 탑재할 수 있습니다.

Moby는 스워브드라이브 (Swerve drivetrain) 방식으로 구동이 가능한데, 하나의 바퀴 모듈이 조향(무한 회전)과 전후진 구동이 가능한 2자유도 스티어링 휠로 구성되어 있습니다. 각 바퀴 모듈은 조향 모터와 구동 모터로 구성되어 총 8개의 구동기로 주행됩니다. 스워브드라이브는 구동력의 편차를 최소화함으로써 직진 제어성이 탁월하며 전 방향 주행이 가능합니다. 스워브드라이의 8축 구동기와 Indy7의 6개 관절 (또는 IndyRP2의 7개 관절), I/O 보드, 로봇앤드툴은 총 16개 (IndyRP2의 경우 17개)의 EtherCAT 슬레이브이며, 각각은 EtherCAT 마스터인 STEP3에 의해 동기제어됩니다.

Moby-RP의 하드웨어 구성은 아래와 같습니다.


Moby configuration

구분 명칭 구분 명칭
1 RGB-D 센서 (4개) 8 배터리 잔량 표시기
2 라이다 센서 (2개) 9 비상정지 버튼 (2개)
3 IMU 센서 10 프론트 휠
4 ToF IR 센서 11 리어 휠
5 USB 포트 12 스피커
6 비상전원 포트 13 LED indicator
7 충전 포트 14 전원 버튼

Moby 좌표계 구성

Moby의 좌표계는 아래와 같이 표현됩니다.


Moby의 차체 (Chassis) 좌표는 (x, y, \omega)로 표현이 되며 참조좌표계 기준으로 Moby위 위치는 (P_x, P_y, P_\omega), 속도는 (V_x, V_y, V_\omega)로 표기됩니다. 회전 반향은 반시계 방향이 + 방향으로 정의되며, 각 바퀴모듈의 조향 각도는 시계방향 회전이 + 방향으로 정의됩니다.

Moby SW Framework 구성

Moby-RP는 두 가지 제어 PC에 의해 동작됩니다.

  • STEP3: 모터드라이브, IO보드, 앤드툴보드에 대한 실시간 제어, IMU 센서, IR 센서 신호처리, IndyEye 영상처리
  • NUC: 3D 카메라 영상 처리, 라이다를 이용한 SLAM / Navigation

통신 계통도

STEP3 및 NUC은 아래의 형태로 연결되어 상호간의 데이터를 주고받도록 구성되어 있습니다.


Moby 접속하기

Moby의 IP 주소와 포트 정보는 Moby의 라우터를 통해 외부 PC에게 제공되며, 이를 이용하여 외부 PC에서 Moby에 접속할 수 있습니다. STEP3와 NUC는 고정 IP로 설정되어 있으며, 납품 시 제공되는 정보를 통해 이를 확인할 수 있습니다. 이후, STEP3 및 NUC을 이용하여 Moby를 제어하고 모니터링할 수 있습니다.

  • STEP IP: 192.168.214.20
  • NUC IP: 192.168.214.21

Moby API 사용하기

다음은 neuromeka 파이썬 패키지를 사용한 API를 안내합니다. 로봇의 기본적인 설정 및 구동 API를 확인할 수 있습니다. 다른 주행 시스템이 활성화되어있다면 로봇의 이동에 관한 API는 사용할 수 없습니다.

  • Moby API은 모바일로봇의 구동제어에 대한 프로토콜을 제공합니다.

다음은 Navicore에 대한 내용입니다. Navicore는 Moby에 기본 제공되는 Navifra PC에 설치되어있는 주행 소프트웨어로 웹 UI를 통하여 맵핑, 주행 경로 설정, 주행 테스트가 가능합니다. 설정 후 제공되는 ROS Topic을 API처럼 사용하여 간단한 ROS Node를 만들거나 다른 패키지와 함께 사용하는 것으로 주행명령을 내리고 데이터를 읽을 수 있습니다. 별도의 PC로 ROS Master인 Navifra PC에 접속 또는 Navifra PC 내부에서 사용 가능합니다. 기존에 설치되어있는 시스템으로 초기 셋업이 간단하고, Web UI를 사용해 쉽게 주행 설정이 가능하여 주행 알고리즘에 익숙하지 않는 사용자에게 권장드립니다.

  • Navicore는 모바일로봇 Moby의 기본 주행시스템 Navicore를 사용하기 위한 ROS topic을 제공합니다.

다음은 Moby ROS에 대한 내용입니다. Moby ROS는 기본 제공되는 Navicore를 사용하지 않고 Moby를 ROS 환경에서 사용하기 위한 방법입니다. ROS 환경에 익숙한 사용자가 사용하는 것을 권장드립니다. Navicore가 설치되어있는 기존 Navifra PC를 비활성화 또는 제거한 후 별도의 리눅스 환경 PC를 결합하여 사용할 수 있습니다. 대부분 범용 ROS 패키지를 사용하도록 이루어져 있어, 원하는 패키지를 추가 및 교체하는 것으로 자유롭게 활용할 수 있습니다.

  • ROS1 for Moby은 가상 및 실물 모바일 로봇 Moby의 제어에 대한 ROS1 기반 노드를 제공합니다.
  • ROS2 for Moby은 가상 및 실물 모바일 로봇 Moby의 제어에 대한 ROS2 기반 노드를 제공합니다.