본문 바로가기

FOSCAR-(Autonomous Driving)/ROS 스터디

[2025 ROS 스터디] 신채영 #1주차 - ROS 개요 및 설치

반응형

ROS란?

1. 로봇 소프트웨어를 개발하기 위한 소프트웨어 프레임워크

  1) 노드 간에 메세지 교환 방식을 통해 프로그램 공동 개발이 가능하다.

  2) 명령어 도구, 시각화 도구(Rviz), GUI 도구(rqt), 3차원 시뮬레이터(Gazebo)를 지원한다.

  3) 로보틱스에서 많이 사용되는 모델링, 센싱, 인식, 네비게이션, 매니플레이션 기능을 지원한다.

  4) 로보틱스 생테계를 생성한다.

 

2. Open-source 기반의 meta-operating system

  전통적인 운영체제는 아니다. 기존의 운영체제에 더해 로봇 응용 소프트웨어 개발을 위한 필수 기능들을 라이브러리 형태로 제공하고 있다.

 

3. 이기종 디바이스 간의 통신을 지원

  ROS의 최대 장점이다. 하드웨어가 달라도 ROS를 통해 상호작용이 가능하다.

 


ROS의 특징

1. 통신 기능

  1) 노드 간 데이터 통신을 제공한다.

  2) 메세지 전달 인터페이스를 지원한다.

  3) 메세지 파싱 기능

  4) 노드를 서로 다른 언어로 작성하는 것이 가능하다.

  5) 메세지를 저장하고 재사용이 가능하다.

  6) 분산 매개 변수 시스템

 

2. 로봇 관련 다양한 기능

  1) 로봇에 대한 표준 메세지 정의

  2) 로봇 기하학 라이브러리

  3) 로봇 기술 언어

  4) 진단시스템

 

3. 다양한 개발 도구

  1) Command-Line Tools

  2) Rviz

    - 3차원 시각화 툴을 제공한다.

    - 각종 센서 데이터를 시각화 한다.

    - 로봇 외형과 계획된 동작을 표현한다.

  3) RQT

    - 그래픽 인터페이스 개발을 위한 Qt 기반 프레임 워크 제공

  4) Gazebo

    - 물리 엔진을 탑재한 3차원 시뮬레이터

 


ROS 개발환경 구축

ubuntu 20.04 설치, ROS noetic 설치 후 turtlesim을 실행해보았다.

 

반응형