Skip to main content

Software

ALICE M1의 소프트웨어 아키텍처와 제어 시스템을 설명합니다.

개요

ALICE M1은 ROS 2(Robot Operating System 2)를 기반으로 하는 모바일 매니퓰레이션 시스템입니다.

자율 주행, 조작, 인식이 통합된 소프트웨어 플랫폼으로 제조 현장의 다양한 작업을 수행합니다.

소프트웨어 스택

  • 운영체제: Ubuntu 22.04 LTS (또는 24.04 LTS)
  • ROS 버전: ROS 2 Humble/Jazzy
  • 네비게이션: Nav2 (Navigation2) (옵션)
  • 조작 제어: VR, Endpoint Control
  • 인식: OpenCV, Depth Camera
  • AI 프레임워크: PyTorch, TensorFlow (옵션)

시스템 아키텍처

아래 이미지는 ALICE M1의 시스템 아키텍처를 나타냅니다.

소프트웨어 아키텍처
  • NVIDIA AGX Orin은 VR, Mobile 제어 및 데이터 관리를 처리하고 AFE-R360은 로봇의 상체(몸통, 팔, 손) 제어를 담당합니다.

  • VR 장치는 작업자의 팔과 머리 움직임을 실시간으로 인식하여 teleoperation 모듈로 전달합니다.

  • teleoperation 모듈은 VR 장치로부터 받은 데이터를 로봇에 맞는 형태로 변환한 뒤 wholebody controller 모듈로 전달합니다.

  • 조이스틱 입력은 명령에 따라 서로 다른 제어 모듈로 전달됩니다.

    • 모바일 이동 명령 -> mux 모듈
    • 상체 제어, 정지 등의 명령 -> wholebody controller 모듈
  • wholebody controller, mux 모듈은 입력 명령을 처리하여 framework 모듈로 전달합니다.

  • framework 모듈은 상위 명령을 모터 제어 명령으로 변환하여 실제 하드웨어에 전달하고 현재 관절 상태를 다른 시스템에서 모니터링 할 수 있도록 /joint_states 로 발행합니다.

  • data manager 모듈은 카메라 이미지와 로봇 모션 데이터를 저장합니다.


디버깅 및 모니터링

  • 조이스틱 UI를 통해 관절 상태, 시스템 로그 등을 실시간으로 확인할 수 있습니다.   모니터링 화면

안전 시스템

  • 모든 관절 명령은 정의된 동작 범위 내에서 실행되도록 제한(clamp) 됩니다.
  • 조이스틱에서 E-Stop 시 로봇의 현재 움직임을 빠르게 감쇠 시켜, 진동이나 출렁임 없이 안정된 상태로 수렴시킵니다.