ROS O N T H E R O C K S January 2014 ROS ROS O N T H E - - PowerPoint PPT Presentation

ros
SMART_READER_LITE
LIVE PREVIEW

ROS O N T H E R O C K S January 2014 ROS ROS O N T H E - - PowerPoint PPT Presentation

ROS O N T H E R O C K S January 2014 ROS ROS O N T H E R O C K S O N T H E R O C K S January 2014 RoadNarrows Robotics Designing Robotics and Intelligent Systems RoadNarrows Robotics Designing Robotics and Intelligent


slide-1
SLIDE 1

January 2014

O N T H E R O C K S

ROS

slide-2
SLIDE 2

January 2014

O N T H E R O C K S

ROS

O N T H E R O C K S

ROS

slide-3
SLIDE 3

RoadNarrows Robotics

Designing Robotics and Intelligent Systems

slide-4
SLIDE 4

RoadNarrows Robotics

Designing Robotics and Intelligent Systems Presenting: A Practical Introduction to ROS

Featuring: the Hekateros Manipulator Daniel Packard - January 2014

slide-5
SLIDE 5

What is ROS?

ROS on the Rocks! - Jan 2014 5

slide-6
SLIDE 6

What is ROS?

ROS is the: Robot Operating System

ROS on the Rocks! - Jan 2014 6

slide-7
SLIDE 7

What is ROS?

ROS is the: Robot Operating System

ROS on the Rocks! - Jan 2014

…but not really an operating system.

7

slide-8
SLIDE 8

What is ROS?

ROS is the: Robot Operating System

ROS on the Rocks! - Jan 2014

ROS is a software framework for developing advanced robotic systems.

…but not really an operating system.

8

slide-9
SLIDE 9

Anatomy of a Robot

ROS on the Rocks! - Jan 2014 9

slide-10
SLIDE 10

Anatomy of a Robot

ROS on the Rocks! - Jan 2014 Sensors Actuators Processors 10

slide-11
SLIDE 11

Anatomy of a Robot

ROS on the Rocks! - Jan 2014 Sensors Actuators Processors Abstract Software Components (perception, cognition, planners) 11

slide-12
SLIDE 12

Anatomy of a Robot

ROS on the Rocks! - Jan 2014 Sensors Actuators Processors Abstract Software Components (cognition, perception, planners) 12

slide-13
SLIDE 13

Anatomy of a Robot

ROS on the Rocks! - Jan 2014 Sensors Actuators Processors Abstract Software Components (cognition, perception, planners) 13

slide-14
SLIDE 14

Sensors Actuators Processors

Anatomy of a Robot

ROS on the Rocks! - Jan 2014 Abstract Software Components (cognition, perception, planners) 14

slide-15
SLIDE 15

Sensors Actuators Processors

Anatomy of a Robot

ROS on the Rocks! - Jan 2014 Abstract Software Components (cognition, perception, planners) 15

slide-16
SLIDE 16

Anatomy of a Robot

ROS on the Rocks! - Jan 2014 Abstract Software Components (cognition, perception, planners) 16

slide-17
SLIDE 17

Anatomy of a Robot

ROS on the Rocks! - Jan 2014 Abstract Software Components (perception, cognition, planners) 17

slide-18
SLIDE 18

Enter ROS

ROS on the Rocks! - Jan 2014

ROS helps you structure your robotics applications.

18

slide-19
SLIDE 19

Enter ROS

ROS on the Rocks! - Jan 2014

The basic unit of a ROS application is a ROS node…

19

slide-20
SLIDE 20

Enter ROS

ROS on the Rocks! - Jan 2014

The basic unit of a ROS application is a ROS node…

Node 20

slide-21
SLIDE 21

Enter ROS

ROS on the Rocks! - Jan 2014

The basic unit of a ROS application is a ROS node…

Node 21

slide-22
SLIDE 22

Enter ROS

ROS on the Rocks! - Jan 2014

The basic unit of a ROS application is a ROS node…

Node 22

slide-23
SLIDE 23

Enter ROS

ROS on the Rocks! - Jan 2014

The basic unit of a ROS application is a ROS node… … ROS is the communication framework that ties multiple ROS nodes together

Node 23

slide-24
SLIDE 24

Communicating Nodes

ROS on the Rocks! - Jan 2014 NODE 1 NODE 2 Request Response Topic 1 Subscribe P u b l i s h NODE 3 Subscribe

Compose your complex robotic system out of independent, but communicating “ROS Nodes”.

24

slide-25
SLIDE 25

Communicating Nodes

ROS on the Rocks! - Jan 2014 NODE 1 NODE 2

Request Response

Topic 1

Subscribe Publish

NODE 3

Subscribe

Services

Compose your complex robotic system out of independent, but communicating “ROS Nodes”.

25

slide-26
SLIDE 26

Communicating Nodes

ROS on the Rocks! - Jan 2014 NODE 1 NODE 2 Request Response

Topic 1 S u b s c r i b e Publish

NODE 3

S u b s c r i b e

Publish & Subscribe

Compose your complex robotic system out of independent, but communicating “ROS Nodes”.

26

slide-27
SLIDE 27

Communicating Nodes

ROS on the Rocks! - Jan 2014 NODE 1 NODE 2 Request Response Topic 1 Subscribe P u b l i s h NODE 3 Subscribe

Action Servers

Compose your complex robotic system out of independent, but communicating “ROS Nodes”.

27

slide-28
SLIDE 28

What is ROS?

ROS on the Rocks! - Jan 2014

ROS is a framework for developing complex robotics applications through the composition of simple, communicating software components called nodes.

28

slide-29
SLIDE 29

Why do we love ROS?

ROS on the Rocks! - Jan 2014

  • Encourages code reuse
  • Promotes the use of standards
  • Free and Open Source
  • Builds community!!!

29

slide-30
SLIDE 30

Node Examples!

ROS on the Rocks! - Jan 2014

hello_publisher /hello

“Hello ROS!”

Simple publisher

30

slide-31
SLIDE 31

Node Examples!

ROS on the Rocks! - Jan 2014

hello_publisher /hello

“Hello ROS!” Node

Simple publisher

31

slide-32
SLIDE 32

Node Examples!

ROS on the Rocks! - Jan 2014

hello_publisher /hello

“Hello ROS!” Node Message

Simple publisher

32

slide-33
SLIDE 33

Node Examples!

ROS on the Rocks! - Jan 2014

hello_publisher /hello

“Hello ROS!” Node Message Topic

Simple publisher

33

slide-34
SLIDE 34

Node Examples!

ROS on the Rocks! - Jan 2014

hello_publisher /hello

“Hello ROS!” Node Message Topic

Simple publisher

rostopic pub /hello std_msgs/String “Hello ROS!” -r1 34

slide-35
SLIDE 35

Node Examples!

ROS on the Rocks! - Jan 2014 Node Topic

Simple subscriber

rostopic echo /hello

hello_subscriber /hello

35

slide-36
SLIDE 36

Node Examples!

ROS on the Rocks! - Jan 2014

pub/sub /hello pub sub

36

slide-37
SLIDE 37

Node Examples!

ROS on the Rocks! - Jan 2014

pub/sub /hello curly shemp moe larry

37

slide-38
SLIDE 38

Node Examples!

ROS on the Rocks! - Jan 2014

pub/sub /hello curly shemp1 moe larry shemp2

38

slide-39
SLIDE 39

Real Examples!

ROS on the Rocks! - Jan 2014 39

slide-40
SLIDE 40

Real Examples!

ROS on the Rocks! - Jan 2014 40

slide-41
SLIDE 41

Real Examples!

ROS on the Rocks! - Jan 2014 41

slide-42
SLIDE 42

Real Examples!

ROS on the Rocks! - Jan 2014

/state

42

slide-43
SLIDE 43

Real Examples!

ROS on the Rocks! - Jan 2014

/state

set_led ping set_rumble 43

slide-44
SLIDE 44

Real Examples!

ROS on the Rocks! - Jan 2014

/state

/rumble_cmd

set_led ping set_rumble 44

slide-45
SLIDE 45

Real Examples!

ROS on the Rocks! - Jan 2014

/state

/moves

start_game make_move resign_game 45

slide-46
SLIDE 46

Real Examples!

ROS on the Rocks! - Jan 2014

/state

/trajectory

calibrate make_move resign_game

/speed /brake

/status

46

slide-47
SLIDE 47

The big take-aways

ROS on the Rocks! - Jan 2014 NODE 1 NODE 2 Request Response Topic 1 Subscribe P u b l i s h NODE 3 Subscribe

Compose your complex robotic system out of independent, but communicating “ROS Nodes”.

47

slide-48
SLIDE 48

The big take-aways

ROS on the Rocks! - Jan 2014 NODE 1 NODE 2 Request Response Topic 1 Subscribe P u b l i s h NODE 3 Subscribe

Compose your complex robotic system out of independent, but communicating “ROS Nodes”.

  • code reuse
  • standards
  • open source
  • community!

48

slide-49
SLIDE 49

The big take-aways

ROS on the Rocks! - Jan 2014

http://ros.org http://github.com/roadnarrows-robotics http://github.com/pack3754

49

slide-50
SLIDE 50

Bonus material: ROS Bridge

ROS on the Rocks! - Jan 2014

Ok - but what about integrating my ROS application with external resources?

50

slide-51
SLIDE 51

Bonus material: ROS Bridge

ROS on the Rocks! - Jan 2014

Ok - but what about integrating my ROS application with external resources? ROS

51

slide-52
SLIDE 52

Bonus material: ROS Bridge

ROS on the Rocks! - Jan 2014

Ok - but what about integrating my ROS application with external resources?

Web Browsers Wolfram Engine OpenCog Simulink

ROS

52

slide-53
SLIDE 53

Bonus material: ROS Bridge

ROS on the Rocks! - Jan 2014

Ok - but what about integrating my ROS application with external resources?

Web Browsers Wolfram Engine OpenCog Simulink

ROS

53

slide-54
SLIDE 54

Bonus material: ROS Bridge

ROS on the Rocks! - Jan 2014

Ok - but what about integrating my ROS application with external resources?

Web Browsers Wolfram Engine OpenCog Simulink

ROS ROS Bridge

54

slide-55
SLIDE 55

Bonus material: ROS Bridge

ROS on the Rocks! - Jan 2014

Ok - but what about integrating my ROS application with external resources?

Web Browsers Wolfram Engine OpenCog Simulink

ROS ROS Bridge

ROS Bridge provides a json RPC interface for communicating with arbitrary port-based applications. 55