ROS 기초 개별 미션

목표

  • ROS 작업 공간 생성

  • ROS 패키지 구성

  • Python 및 C++을 사용한 publisher/subscriber 구현

  • Python 및 C++을 사용한 service/client 구현

과제 설명

  1. 작업 공간 생성

자신만의 새로운 작업 공간을 생성하고 초기화합니다.

  1. 패키지 생성

자신만의 패키지를 생성합니다.

  1. Publisher/Subscriber 구현

  • Python: 간단한 publisher와 subscriber를 Python으로 구현합니다.

  • C++: 동일한 publisher와 subscriber를 C++로 구현합니다.

  1. Service and Client 구현

  • Python: 서비스와 클라이언트를 Python으로 구현하여 요청/응답 기반의 통신을 실습합니다.

  • C++: 서비스와 클라이언트를 C++로 구현합니다.

PPT 형식

  • 학생들은 자신의 작업 공간 설정, 패키지 생성, Publisher/Subscriber 및 Service/Client 구현 과정과 결과를 포함하는 PowerPoint(PPT) 프레젠테이션을 준비해야 합니다.

아래는 분배 예시입니다.

  • 총 페이지 수: 최소 15페이지

  1. 프로젝트 소개 (2페이지)

    • 제목, 팀 이름, 날짜

    • 과제의 목표 및 개요

  2. 작업 공간 및 패키지 설정 (3페이지)

    • 작업 공간 생성 과정

    • 패키지 구성 및 메타데이터 설정

    • 필요한 의존성 및 구성요소 설명

  3. 구현 과정 (6페이지)

    • Python으로 구현한 Publisher/Subscriber 설명 및 코드 스니펫

    • Python으로 구현한 Service/Client 설명 및 코드 스니펫

    • C++로 구현한 Publisher/Subscriber 설명 및 코드 스니펫

    • C++로 구현한 Service/Client 설명 및 코드 스니펫

  4. 실행 결과 (3페이지)

    • Python 구현의 실행 결과 및 분석

    • C++ 구현의 실행 결과 및 분석

  5. 결론 및 피드백 (1페이지)

    • 프로젝트를 통해 배운 점, 겪었던 어려움, 향후 개선 방향

평가 기준

평가는 프레젠테이션 내용의 완성도, 이해도, 발표 능력을 기준으로 이루어집니다:

  1. 내용의 완성도 (40점)

  • 요구 사항 충족 (20점): 프레젠테이션은 프로젝트의 모든 요구 사항을 명확하게 충족해야 합니다. 이는 작업 공간과 패키지 설정, Publisher/Subscriber 및 Service/Client의 구현과정을 포함합니다.

  • 문서화 및 설명의 명확성 (20점): 구현 과정과 결과는 상세하게 문서화되어 있어야 하며, 사용된 기술과 메커니즘에 대한 설명이 명확해야 합니다. 코드 스니펫과 실행 결과의 스크린샷을 포함하는 것이 좋습니다.

  1. 이해도 및 분석 (30점)

  • 작동 원리의 이해 (15점): 발표자는 구현한 프로그램의 작동 원리를 정확하게 이해하고 있어야 하며, 이를 청중에게 명확히 설명할 수 있어야 합니다.

  • 로봇 시스템에 미치는 영향 분석 (15점): 구현한 프로그램이 로봇 시스템의 전반적인 기능과 행동에 어떻게 기여하는지에 대한 분석을 제시해야 합니다. 이는 특정 구성 요소의 역할과 중요성을 강조할 수 있는 좋은 기회입니다.

  1. 발표 능력 및 시각적 표현 (30점)

  • 프레젠테이션 구성의 논리성 (10점): 프레젠테이션의 전반적인 구성이 논리적이고 일관되어야 하며, 각 섹션이 체계적으로 연결되어야 합니다.

  • 효과적인 정보 전달 (10점): 발표자는 자신의 프로젝트를 효과적으로 전달할 수 있어야 하며, 복잡한 개념을 명확하게 설명할 수 있어야 합니다.

  • 시각적 자료의 활용 (10점): 프레젠테이션에 포함된 시각적 자료(그래프, 다이어그램, 코드 스니펫, 실행 결과 스크린샷 등)가 정보 전달을 효과적으로 지원해야 합니다. 시각적 자료는 전달하고자 하는 메시지를 강화하고, 이해를 돕기 위해 명확하고 전문적으로 제작되어야 합니다.

총점: 100점

  • 발표 시간은 각 개인별로 10분으로 제한합니다. 발표 후에는 질의응답 시간을 가질 예정입니다.

결론

이 과제를 통해 학생들은 ROS의 기본적인 개발 과정을 실습하고, 다양한 통신 메커니즘을 구현하는 데 필요한 기술적 능력을 개발할 수 있습니다.