인트로
Personal Phone (smartphone)과 PersonalCcomputer의 공통점:
- 대중화
- 하드웨어 모듈화
- 운영 체제 + 앱
생태계란 (ecosystem) = 하드웨어 모듈 + 운영체제 + 앱 + 유저
Personal Computer도 Personal Phone도 처음에는 모든 것을 한 회사에서 만들었다. 하드웨어 모듈화도 되지 않았고 운영체제도 없었지만 대중화되면서 ecosystem의 4가지 요소를 가지게 되었다. 로봇도 똑같이 지금은 한 회사에서 모든 것을 만들고 있지만 시간이 지나면 모듈화 될 거고 personal robot이 될 것이다.
로봇 소프트웨어 플랫폼이 가져올 미래
- 하드웨어 플랫폼과 소프트웨어 플랫폼간의 인터페이스 확립
- 모듈형 하드웨어 플랫폼 확산
- 하드웨어에 대한 지식이 없어도 응용 프로그램 작성 가능
- 더 많은 소프트웨어 인력들이 로보틱스 분야로 진입, 로봇 제품에 참여 가능
- 유저에게 제공 할 서비스에 집중
- 실수요가 있는 서비스 제공으로 유저 계층 형성 및 피드백
- 로봇 개발이 급속도로 발전 할 수 있는 계기
Personal Computer과 Personal Phone의 운영체제처럼 personal robot을 위한 운영체제 여러 가지 있다. 그중에 제일 많이 쓰이는 것은 ROS이다.
ROS 소개
ROS (Robot Operating System)는 로봇을 위한 메타운영체제(Meta-Operating System)이다. (smartphone: android, iOS, pc: windows, linux etc, robot: ROS)
ROS는 전통적인 운영체저가 아니라 그 운영체제를 이용하는 메다운영체제다.
ROS는 로봇 운영을 위한 다양한 도구를 제공하고 있다.
다양한 프로그래밍 언어 사용 가능 → 원래 쓰던 언어를 쓰면 된다.
ROS의 특징:
통신 인프라
- 메세지 파싱 기능
- 메세지의 기록 및 재생
- 메세지 사용으로 인한 다양한 프로그래밍 언어 사용 가능
- 분산 매개 변수 시스템
로봇 관련 다양한 기능
- 로봇에 대한 표준 메세지 정의
- 로봇 기하학 라이브러리
- 로봇 기술 언어
- 진단 시스템
- 센싱/인식
- 내비게이션
- 매니퓰레이션
다양한 개발 도구
- command line tools (GUI 없이 ROS에서 제공되는 명령어로만 거의 모든 ROS 기능 소화)
- RViz (3D 시각화툴 제공)
- RQT (그래픽 인터페이스 개발을 위한 QT 기반 프레임 워크 제공)
- Gazebo (물리 엔진을 탑재, 3차원 시뮬레이터)
ROS 설치
https://wiki.ros.org/noetic/Installation/Ubuntu 에 나와 있는 설명대로 ROS를 설치한다.
ROS 테스트
1. 터미널에서 roscore 명령을 친다
2. 다른 터미널 창에 roserun turtlesim turtlesim_node 명령어를 치면 TurtleSim 창이 생긴다
3. 다른 터미널 창에 roserun turtle turtle_teleop_key 명령어를 치면 방향 키로 거북이를 움직일 수 있다.
'FOSCAR-(Autonomous Driving) > ROS 스터디' 카테고리의 다른 글
[2024 ROS 스터디] 김기태 #1주차 - ROS 소개 및 설치하기 (0) | 2024.07.07 |
---|---|
[2024 ROS 스터디] 반제호 #1주차 - ROS를 왜 사용할까? (0) | 2024.07.06 |
[2024 ROS 스터디] 곽우인 #1주차 - ROS 소개 및 설치하기 (0) | 2024.07.02 |
[2024 ROS 스터디] 민경서 #4주차 - SLAM과 NAVIGATION (0) | 2024.02.20 |
[2024 ROS 스터디]이준호 #4주차 - SLAM + 네비게이션 (0) | 2024.02.20 |