ROS2 (python)

BK SYSTEM DEV PART (www.bk123.co.kr)



[ Rco ROS2 programming ]


1. 교육과정 개요

본 교육 과정은 NVIDIA Jetson Orin Nano Super**를 활용하여 **ROS2 (Robot Operating System 2) 기반의 로보틱스 개발을 심층적으로 학습할 수 있도록 설계되었습니다.

ROS2는 차세대 로봇 개발을 위한 오픈소스 미들웨어로, 실시간성, 분산 시스템, AI 연동을 지원하여 자율주행, 드론, 산업용 로봇, 스마트 팩토리 등의 다양한 분야에서 활용됩니다.

본 과정에서는 **Jetson Orin Nano**를 중심으로 **ROS2 환경 설정, 패키지 개발, 노드 간 통신, 센서 인터페이스, AI 연동 및 시뮬레이션**까지 폭넓게 다루며, **실습 위주의 교육**을 통해 **ROS2 기반 로봇 개발 역량**을 단기간에 습득할 수 있도록 합니다.

Jetson Orin Nano는 **강력한 GPU 성능과 AI 가속 기능**을 제공하여, ROS2와의 결합을 통해 **자율 로봇, 비전 기반 제어 시스템, AI 연동 로봇 애플리케이션 개발**에 최적화된 플랫폼을 제공합니다.

본 교육을 통해 **ROS2와 Jetson Orin Nano의 통합 개발 역량을 배양**하고, **실제 로봇 개발 프로젝트를 수행**할 수 있는 실무 경험을 제공합니다.


2. 주요 교육 과정

1) 개발 툴 및 요구 사항

  • Ubuntu 기반의 ROS2 개발 환경 구축
  • Jetson Orin Nano를 위한 필수 패키지 및 툴 설치
  • 기본적인 리눅스 명령어 및 개발 환경 이해

2) ROS2 개요 및 기본 개념

  • ROS2 구조 및 핵심 개념 (노드, 토픽, 서비스, 액션, 파라미터)
  • DDS (Data Distribution Service) 및 통신 방식 이해
  • ROS1과 ROS2의 차이점 및 최신 기술 트렌드

3) Jetson Orin Nano에서 ROS2 환경 설정

  • ROS2 Foxy/Humble 설치 및 환경 설정
  • Jetson Orin Nano의 하드웨어 최적화 및 성능 튜닝
  • Jetson에서의 ROS2 실행 및 디버깅 방법

4) ROS2 패키지 개발 및 노드 구현

  • ROS2 패키지 구조 및 빌드 시스템 (Colcon)
  • Python 및 C++ 기반 ROS2 노드 개발
  • ROS2 Launch 파일 작성 및 실행 자동화

5) 센서 및 액추에이터 연동

  • LiDAR, 카메라, IMU, 모터 드라이버 연동
  • GPIO, I2C, SPI, UART를 활용한 센서 제어
  • ROS2에서 센서 데이터를 활용하는 방법

6) AI 및 컴퓨터 비전 연동

  • ROS2에서 Jetson Orin Nano의 GPU 및 딥러닝 가속 활용
  • OpenCV 및 YOLO를 활용한 객체 탐지 및 추적
  • ROS2를 활용한 AI 기반 자율 로봇 개발

7) ROS2 네트워크 및 분산 시스템

  • 다중 노드 및 원격 통신 설정
  • ROS2 네트워크 설정 및 QoS (Quality of Service) 튜닝
  • Docker 및 컨테이너 환경에서의 ROS2 실행

8) ROS2 기반 프로젝트 진행 및 마무리

  • ROS2를 활용한 실전 프로젝트 기획 및 구현
  • 시뮬레이션 (Gazebo, RViz) 활용 및 실험
  • 프로젝트 발표 및 피드백 세션