Upgrade to Pro — share decks privately, control downloads, hide ads and more …

ros-on-the-rocks-wednesday-jan-29

 ros-on-the-rocks-wednesday-jan-29

Provides a high-level introduction to the Robot Operating System (ROS), and its role in developing advanced robotics applications.

Daniel Packard

January 28, 2014

Transcript

55 slides
  1. January 2014 O N T H E R O C

    K S ROS O N T H E R O C K S ROS
  2. RoadNarrows Robotics Designing Robotics and Intelligent Systems Presenting: A Practical

    Introduction to ROS Featuring: the Hekateros Manipulator Daniel Packard - January 2014
  3. What is ROS? ROS is the: Robot Operating System ROS

    on the Rocks! - Jan 2014 …but not really an operating system. 7
  4. 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
  5. Anatomy of a Robot ROS on the Rocks! - Jan

    2014 Sensors Actuators Processors 10
  6. Anatomy of a Robot ROS on the Rocks! - Jan

    2014 Sensors Actuators Processors Abstract Software Components (perception, cognition, planners) 11
  7. Anatomy of a Robot ROS on the Rocks! - Jan

    2014 Sensors Actuators Processors Abstract Software Components (cognition, perception, planners) 12
  8. Anatomy of a Robot ROS on the Rocks! - Jan

    2014 Sensors Actuators Processors Abstract Software Components (cognition, perception, planners) 13
  9. Sensors Actuators Processors Anatomy of a Robot ROS on the

    Rocks! - Jan 2014 Abstract Software Components (cognition, perception, planners) 14
  10. Sensors Actuators Processors Anatomy of a Robot ROS on the

    Rocks! - Jan 2014 Abstract Software Components (cognition, perception, planners) 15
  11. Anatomy of a Robot ROS on the Rocks! - Jan

    2014 Abstract Software Components (cognition, perception, planners) 16
  12. Anatomy of a Robot ROS on the Rocks! - Jan

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

    helps you structure your robotics applications. 18
  14. Enter ROS ROS on the Rocks! - Jan 2014 The

    basic unit of a ROS application is a ROS node… 19
  15. Enter ROS ROS on the Rocks! - Jan 2014 The

    basic unit of a ROS application is a ROS node… Node 20
  16. Enter ROS ROS on the Rocks! - Jan 2014 The

    basic unit of a ROS application is a ROS node… Node 21
  17. Enter ROS ROS on the Rocks! - Jan 2014 The

    basic unit of a ROS application is a ROS node… Node 22
  18. 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
  19. Communicating Nodes ROS on the Rocks! - Jan 2014 NODE

    1 NODE 2 Request Response Topic 1 Subscribe Publish NODE 3 Subscribe Compose your complex robotic system out of independent, but communicating “ROS Nodes”. 24
  20. 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
  21. Communicating Nodes ROS on the Rocks! - Jan 2014 NODE

    1 NODE 2 Request Response Topic 1 Subscribe Publish NODE 3 Subscribe Publish & Subscribe Compose your complex robotic system out of independent, but communicating “ROS Nodes”. 26
  22. Communicating Nodes ROS on the Rocks! - Jan 2014 NODE

    1 NODE 2 Request Response Topic 1 Subscribe Publish NODE 3 Subscribe Action Servers Compose your complex robotic system out of independent, but communicating “ROS Nodes”. 27
  23. 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
  24. 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
  25. Node Examples! ROS on the Rocks! - Jan 2014 hello_publisher

    /hello “Hello ROS!” Simple publisher 30
  26. Node Examples! ROS on the Rocks! - Jan 2014 hello_publisher

    /hello “Hello ROS!” Node Simple publisher 31
  27. Node Examples! ROS on the Rocks! - Jan 2014 hello_publisher

    /hello “Hello ROS!” Node Message Simple publisher 32
  28. Node Examples! ROS on the Rocks! - Jan 2014 hello_publisher

    /hello “Hello ROS!” Node Message Topic Simple publisher 33
  29. 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
  30. Node Examples! ROS on the Rocks! - Jan 2014 Node

    Topic Simple subscriber rostopic echo /hello hello_subscriber /hello 35
  31. Node Examples! ROS on the Rocks! - Jan 2014 pub/sub

    /hello curly shemp moe larry 37
  32. Node Examples! ROS on the Rocks! - Jan 2014 pub/sub

    /hello curly shemp1 moe larry shemp2 38
  33. Real Examples! ROS on the Rocks! - Jan 2014 /state

    /rumble_cmd set_led ping set_rumble 44
  34. Real Examples! ROS on the Rocks! - Jan 2014 /state

    /moves start_game make_move resign_game 45
  35. Real Examples! ROS on the Rocks! - Jan 2014 /state

    /trajectory calibrate make_move resign_game /speed /brake /status 46
  36. The big take-aways ROS on the Rocks! - Jan 2014

    NODE 1 NODE 2 Request Response Topic 1 Subscribe Publish NODE 3 Subscribe Compose your complex robotic system out of independent, but communicating “ROS Nodes”. 47
  37. The big take-aways ROS on the Rocks! - Jan 2014

    NODE 1 NODE 2 Request Response Topic 1 Subscribe Publish NODE 3 Subscribe Compose your complex robotic system out of independent, but communicating “ROS Nodes”. • code reuse • standards • open source • community! 48
  38. The big take-aways ROS on the Rocks! - Jan 2014

    http://ros.org http://github.com/roadnarrows-robotics http://github.com/pack3754 49
  39. Bonus material: ROS Bridge ROS on the Rocks! - Jan

    2014 Ok - but what about integrating my ROS application with external resources? 50
  40. Bonus material: ROS Bridge ROS on the Rocks! - Jan

    2014 Ok - but what about integrating my ROS application with external resources? ROS 51
  41. 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
  42. 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
  43. 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
  44. 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

More Decks by Daniel Packard

Other Decks in Technology