ROS 입문

YUZ·2020년 9월 9일
0

ROS

목록 보기
1/2

1. ROS 란?

ROS(Robot Operating System)는 로봇 소프트웨어를 개발하기 위한 소프트웨어 프레임워크

  • 여러 개의 독립형 노드로 구성
  • 최소한의 실행 단위로 프로그램을 나누어 작업
  • 각 노드는 Publish/Subscribe 메시징 모델을 이용해 다른 노드와 통신

2. ROS 개념

기본적인 개념

  • publish / subscribe : 통신 방법
  • topic : publish / subscribe 을 어떤식으로 할 지 구체화
    즉, topic을 통해 message를 보냄.

일반적인 개념

ROS는 ROS 마스터에서 시작
ROS 마스터 노드는 모든 ROS 노드들과 연결

즉, 마스터는 다른 모든 ROS 노드들이 서로를 찾아 대화할 수 있도록 도와준다.

3. ROS 용어 정리

  • Node
    하나의 실행 가능한 프로그램
    각 Node는 메시지 통신을 이용해 데이터를 주고 받는다.

  • Package

  • Message
    메세지 통신을 통해서 각 노드들이 데이터를 주고 받는다.
    int, float, boolean 같은 변수 타입 형태
    메시지 안에 메시지를 담고 있는 데이터 구조 및 메시지 배열과 같은 구조

4. 노드간의 메시지 통신

  1. master 구동
  2. subscriber과 publisher를 구동
  3. subscriber는 master로부터 받은 subscriber의 정보를 TCPROS를 통해 접속 요청
  4. subscriber 노드에 접속 응답
  5. publisher 노드는 subscriber 노드에게 메시지 전송
    topic 형식은 접속 후에 시스템이 종료되기 전까지 지속적으로 메시지를 전송 (연속성)

0개의 댓글