본문 바로가기

FOSCAR-(Autonomous Driving)/ROS 스터디

[2025 ROS 스터디] 한상민 #1주차 - ROS 소개 및 설치

반응형

ROS Chapter1. 로봇 소프트웨어 플렛폼

  • 하드웨어 모듈 + 운영체제 + 앱(서비스) + 유저 = 생태계(대중화된 상품)

소프트웨어 플랫폼

  • 하드웨어 인터페이스 통합
  • 하드웨어 추상화, 규격화, 모듈화 -> 가격 절약, 성능 향상
  • 하드웨어 • 운영체제 • 애플리케이션 분리 -> 사용자 수요에 맞는 서비스에 집중 가능(ex. 과거 휴대폰 -> 전화만 목적, 현재 휴대폰-> 게임, 카톡, 영상 등 여러가지 사용자가 원하는 서비스 제공 가능) -> 사용자 증가 -> 구매와 피드백-> 새로운 생태계 선환 구조 형성

로봇분야

  • 현재 다양한 로봇 운영체제 개발( 주요 로봇 운영체제: OPROS, NAOqi, ROS)  -> 가장 많이 사용되는 것은 ROS
  • 우리나라도 자체 운영체제 개발 시도 -> 대외적인 운영체제 개발 어려움 -> 주어진 운영체제에서 좋은 플레이어가 되자!

로봇 소프트웨어 플랫폼이 가져올 변화

  • 하드웨어 플랫폼과 소프트웨어 플랫폼간의 인터페이스 확립
  • 모듈형 하드웨어 플랫폼 확산
  • 하드웨어에 대한 지식없이 응용 프로그램 작성 가능
  • 더많은 소프트웨어 인력들이 로보틱스 분야로 진입 -> 유저에게 제공할 서비스에 집중 가능 -> 유저계층 형성 및 피드백 -> 로봇 개발 급속 발전 가능

pc의 발전이 pesonal phone까지 적용된 걸 보면 personal robot 도 같은 길을 갈 수 있다.

 

ROS Chapter2. 로봇 운영체제 ROS

ROS란?

  • 오픈 소스 기반이며 로봇을 위한 메타 운영체제
  • 로봇 프로그래밍을 위한 많은 라이브러리를 제공해주는 플렛폼(소프트웨어 프레임워크)
  • 노드간 메시지 교환 방법으로 복잡한 프로그램을 잘게 나눠 공동 개발 가능
  • 로보틱스에서 많이 사용되는 모델링, 센싱, 인식, 내비게이션, 매니퓰레이션 기능 지원
  • 로보틱스 생태계 생성

ROS의 목적

  • 로보틱스 소프트웨어 개발을 전세계 레벨에서 공동 작업이 가능하도록 생태계를 구축하는 것

ROS는 새로운 운영체제?

  • 운영체제(OS) : Operating System  VS  ROS: Robot Operating System
  • ROS는 메타운영체제( Meta-Operating System) -> 일반적인 운영체제와는 다르다!

메타운영체제(Meta-Operation System)란?

  • 어플리케이션과 분산 컴퓨팅 자원간에 가상화 레이어로 분산 컴퓨팅 자원을 활용하여 스케쥴링 및 로드, 감시 에러 처리등 을 실행하는 시스템
  • 윈도우, 리눅스, 안드로이드와 같은 전통적은 운영체제X -> 기존 운영체제 활용하여 로봇 응용 소프트웨어 개발을 위한 다양한 도구 제공하는 툴 박스 제공
  • 다른 기종 디바이스 간의 통신 지원

ROS를 사용 가능한 운영체제

  • Ubuntu, OS X, Windows, Fedora, Gentoo, OpenSUSE 등 기존 전통적인 운영체제는 사용 가능하나 기능 제한사항 있있을 수 있음.
  • 기본적으로는 Ubuntu, OS X에서 구동하는 것을 추천

ROS 구성

 

ROS 생태계

 

ROS 특징

 

1. 통신 인프라

  • 노드 간 데이터 통신을 제공
  • 통상적 미들웨어로 지칭되는 메시지 전달 인터페이스 지원(메시지 파싱, 메시지의 기록 및 재생, 메시지 사용으로 다양한 프로그래밍 언어 사용가능, 분산 매개 변수 시스템)

2. 로봇 관련 다양한 기능

  • 로봇에 대한 표준 메시지 정의(카메라, IMU, 레이저 등 센서, 오도메트리, 경로 및 지도 등의 내비게이션 데이터 표준 미시지 정의-> 모듈화, 협업 작업 유도, 효율성 향상)
  • 로봇 기하학 라이브러리, 로봇 기술 언어, 진단 시스템, 센싱/인식, 내비게이션, 매니퓰레이션등 다양한 기능 제공

3. 다양한 개발 도구

  • 로봇 개발에 필요한 다양하 개발 도구 제공 -> 로봇 개발의 효율성 향상
  • Command- Line Tools, RViz, RQT, Gazebo 등

ROS Chapter3. 개발환경 구축

ROS 수동 설치

https://wiki.ros.org/noetic/Installation/Ubuntu

 

noetic/Installation/Ubuntu - ROS Wiki

If you rely on these packages, please support OSRF. These packages are built and hosted on infrastructure maintained and paid for by the Open Source Robotics Foundation, a 501(c)(3) non-profit organization. If OSRF were to receive one penny for each downlo

wiki.ros.org

설치 완료

반응형