모두가 함께하는ros 워크숍

Post on 15-Apr-2017

643 Views

Category:

Education

2 Downloads

Preview:

Click to see full reader

TRANSCRIPT

모두가 함께하는Workshop광운대학교 로빛 박수한

SESSION 1. ROS 가 무엇이지 ?낯선 이름의 Robot Operating System. 전문적인 내용보다 모두가 알아갈 수 있도록 !

OS (Operating System) 이란 ? 컴퓨터에 설치되어있는 Windows, Ubuntu, Linux

등은 모두 운영체제 컴퓨터를 작동시킬 수 있도록 해 주는 프로그램이 똘똘

뭉친 커다란 프로그램

그런데 !!!!

운영체제 위에 운영체제를 또 설치한다 ????? ROS 는 특별한 운영체제 (Meta-Operating System) 로봇을 작동시킬 수 있도록 해 주는 프로그램이 똘똘

뭉친 추가적인 프로그램들의 모음집 ! ( 프레임워크 )

Robot Operating Sys-tem?

현 ROS 의 주요 대상 로봇 컴퓨터가 장착된 복잡한 로봇

컴퓨터라고 하는 것은 Raspberry pi 등 Linux 컴퓨터

이러한 복잡한 로봇을 만들 때에는 장치 드라이버 , 소프트웨어 구조 등 다양한 설계를 진행해야 함 .

ROS 는 그 단계를 제공해 주어 더욱 고급진 개발을 가능하게 만들어줌 !

가장 기본적인 ROS 의 기능

통신을 추상적으로 이용할 수 있도록 제공 TCP/IP 통신을 귀찮은 소켓 , server, client 설정

필요 없이 추상적인 개념으로 사용 가능 ! 하드웨어 드라이버 패키지 제공 (Camera driver,

Dynamixel, etc…) 다양한 라이브러리 포함 (OpenCV 등… ) rqt, rostopic 등… ( 모니터링 도구 )

ROS 의 추상적인 통신 개념 ? Talker, Listener 라는 개념을 적용 Talker 는 말하는 사람 . Listener 는 듣는 사람 . Topic 은 주제 , Message 는 말 기존 TCP 통신 방식

소켓생성 주소할당 요청대기 연결 허용 데이터 교환 연결 종료 (Server)

소켓생성 연결 데이터송수신 연결종료 (Client) ROS 의 통신 방식

Talker 가 Topic 을 정함 Listener 가 듣고 싶은 Topic 을 선택 Talker 가 Topic 에 관한 말을 할 때마다 Listener 는 Talker 가 말하는 데이터 수신

추상적 통신 구성 관리자 : roscore (ROS Master)

잠깐 ! 용어 설명 들어갑니다~ Talker: 말하는 것 Listener: 듣는 것 Topic: 주제 Message: 말 Node( 노드 ): 프로그램 (Talker 와 Listener 를

포함할 수 있음 ) Package( 패키지 ): 여러 가지 노드를 포함하는

프로젝트

통신 그림

통신을 로봇에 사용해야 하는 이유

로봇은 하드웨어에 많은 연관이 있음 한 번 만든 하드웨어에게 다른 곳으로 이식할 수 있는

driver( 소프트웨어 ) 를 만들어 생산성 증대 != 모듈화된 하드웨어 플랫폼 사용

각각의 모듈화된 소프트웨어들이 통신하며 원하는 것 만 가져다 사용

모듈화된 구조로써 추후에 개발시간을 단축하고 , 새로운 부분을 적용하기 쉬움 !

외부 컴퓨터로의 연결 및 모니터링도 자유로움

궁극적인 목표 >>> 로봇 생태계 구축 ( 나눠서 일해요 ~)

2015 mini-DRC

경기 동영상

이 로봇에 사용된 ROS

간편한 데이터 교환을 위해 ROS 통신 구조 이용 별다른 설정 없이 손쉽게 원격 컴퓨터와 통신이 가능

RobotPilot

대회를 준비하며 사용했던 Node Map

RobotPilotXtion 카메라

후방 카메라 조종 GUI

Virtual Arm

로봇 시스템

다이나믹셀 제어

Raspberry pi GPIO

제어 및 IMU 노드

HIDDEN SESSIONYUJIN ROBOTTURTLEBOT2 시연유진로봇 김민수님

SESSION 2. ROS 써보기이론만 들어서는 뭐가 좋은지 잘 모르겠다 !해보면서 배우자

ROS 통신이 얼마나 간편하죠 ?

오늘 해볼 것 ( 목표… )

1. 문자열 교환 ( 채팅 ) 2. Message 교환 ( 데이터 전송 ) 3. 압축 영상 교환 ( 원격 영상 관찰 )

SESSION 3. 자유 토론내가 아는 것이 네가 아는 것이 맞는가

Q&A자유로운 질문 부탁 드립니다 .

SESSION 3. 자유 토론

감사합니다 .

top related