Introduction

ROS

Gazebo

DARPA Urban Challenge

DARPA Robotics Challenge

CloudSim

The Robot Operating System ecosystem...
Introduction

ROS

Gazebo

DARPA Urban Challenge

Introduction
ROS
Gazebo
DARPA Urban Challenge
DARPA Robotics Challenge
C...
Introduction

ROS

Gazebo

DARPA Urban Challenge

DARPA Robotics Challenge

Introduction

How it all started

CloudSim

Qu...
Introduction

ROS

Gazebo

DARPA Urban Challenge

DARPA Robotics Challenge

Willow Garage

CloudSim

Questions
Introduction

ROS

Gazebo

DARPA Urban Challenge

PR2

DARPA Robotics Challenge

CloudSim

Questions
Introduction

ROS

Gazebo

DARPA Urban Challenge

DARPA Robotics Challenge

PR2: features

• Two arms with 7 degrees of fr...
Introduction

ROS

Gazebo

DARPA Urban Challenge

DARPA Robotics Challenge

CloudSim

Questions
Introduction

ROS

Gazebo

DARPA Urban Challenge

DARPA Robotics Challenge

ROS: robots

CloudSim

Questions
Introduction

ROS

Gazebo

DARPA Urban Challenge

DARPA Robotics Challenge

CloudSim

Questions

ROS: features

• ROS (Rob...
Introduction

ROS

Gazebo

DARPA Urban Challenge

DARPA Robotics Challenge

ROS: example (I)
1

import roslib; roslib.load...
Introduction

ROS

Gazebo

DARPA Urban Challenge

DARPA Robotics Challenge

CloudSim

ROS: example (II)
1

import roslib; ...
Introduction

ROS

Gazebo

DARPA Urban Challenge

DARPA Robotics Challenge

CloudSim

Questions

ROS: example (III)
1

#!/...
Introduction

ROS

Gazebo

DARPA Urban Challenge

DARPA Robotics Challenge

CloudSim

Questions

ROS: example (and IV)
1
2...
Introduction

ROS

Gazebo

DARPA Urban Challenge

DARPA Robotics Challenge

ROS: future

• ROS 2.0 will support more use c...
Introduction

ROS

Gazebo

DARPA Urban Challenge

DARPA Robotics Challenge

CloudSim

Questions
Introduction

ROS

Gazebo

DARPA Urban Challenge

DARPA Robotics Challenge

CloudSim

Questions
Introduction

ROS

Gazebo

DARPA Urban Challenge

DARPA Robotics Challenge

CloudSim

Questions

Gazebo: features

• Apach...
Introduction

ROS

Gazebo

DARPA Urban Challenge

DARPA Robotics Challenge

Gazebo: current state

• Gazebo 2.0 just relea...
Introduction

ROS

Gazebo

DARPA Urban Challenge

DARPA Robotics Challenge

DARPA Urban Challenge

• Competitions in 2004,...
Introduction

ROS

Gazebo

DARPA Urban Challenge

DARPA Robotics Challenge

CloudSim

DARPA Robotics Challenge

• Goal: ad...
Introduction

ROS

Gazebo

DARPA Urban Challenge

DARPA Robotics Challenge

CloudSim

DARPA Robotics Challenge: tasks

• D...
Introduction

ROS

Gazebo

DARPA Urban Challenge

DARPA Robotics Challenge

CloudSim

Questions
Introduction

ROS

Gazebo

DARPA Urban Challenge

DARPA Robotics Challenge

CloudSim

CloudSim: features

• Web applicatio...
Introduction

ROS

Gazebo

DARPA Urban Challenge

DARPA Robotics Challenge

CloudSim: use cases

• Educational robotics
• ...
Introduction

ROS

Gazebo

DARPA Urban Challenge

DARPA Robotics Challenge

CloudSim

More information

• ROS http://ros.o...
Introduction

ROS

Gazebo

DARPA Urban Challenge

DARPA Robotics Challenge

Questions

Thanks for your attention
esteve@os...
Upcoming SlideShare
Loading in …5
×

The Robot Operating System ecosystem and Python

4,364 views

Published on

Published in: Technology, Business

The Robot Operating System ecosystem and Python

  1. 1. Introduction ROS Gazebo DARPA Urban Challenge DARPA Robotics Challenge CloudSim The Robot Operating System ecosystem and Python Esteve Fernandez Open Source Robotics Foundation esteve@apache.org esteve@osrfoundation.org PyBCN, Barcelona, January 16th, 2014 Questions
  2. 2. Introduction ROS Gazebo DARPA Urban Challenge Introduction ROS Gazebo DARPA Urban Challenge DARPA Robotics Challenge CloudSim Questions DARPA Robotics Challenge CloudSim Questions
  3. 3. Introduction ROS Gazebo DARPA Urban Challenge DARPA Robotics Challenge Introduction How it all started CloudSim Questions
  4. 4. Introduction ROS Gazebo DARPA Urban Challenge DARPA Robotics Challenge Willow Garage CloudSim Questions
  5. 5. Introduction ROS Gazebo DARPA Urban Challenge PR2 DARPA Robotics Challenge CloudSim Questions
  6. 6. Introduction ROS Gazebo DARPA Urban Challenge DARPA Robotics Challenge PR2: features • Two arms with 7 degrees of freedom • 5 megapixel camera • Laser range finder • Inertial measurement unit • Two 8-cores processors • 48 Gb of RAM • Free software • Pricetag: $400,000 CloudSim Questions
  7. 7. Introduction ROS Gazebo DARPA Urban Challenge DARPA Robotics Challenge CloudSim Questions
  8. 8. Introduction ROS Gazebo DARPA Urban Challenge DARPA Robotics Challenge ROS: robots CloudSim Questions
  9. 9. Introduction ROS Gazebo DARPA Urban Challenge DARPA Robotics Challenge CloudSim Questions ROS: features • ROS (Robot Operating System) • BSD license • Service-oriented components middleware • Multiple language support: Python, C++, Java, Ruby and many others • Support for a wide range of drivers and robots • Originally developed by Willow Garage • Open Source Robotics Foundation now leads the development of ROS
  10. 10. Introduction ROS Gazebo DARPA Urban Challenge DARPA Robotics Challenge ROS: example (I) 1 import roslib; roslib.load_manifest(’rospy_tutorials’) 2 3 4 import rospy from std_msgs.msg import String 5 6 7 8 9 10 11 12 13 14 def talker(): pub = rospy.Publisher(’chatter’, String) rospy.init_node(’talker’, anonymous=True) r = rospy.Rate(10) # 10hz while not rospy.is_shutdown(): str = "hello world %s"%rospy.get_time() rospy.loginfo(str) pub.publish(str) r.sleep() 15 16 17 18 19 if __name__ == ’__main__’: try: talker() except rospy.ROSInterruptException: pass CloudSim Questions
  11. 11. Introduction ROS Gazebo DARPA Urban Challenge DARPA Robotics Challenge CloudSim ROS: example (II) 1 import roslib; roslib.load_manifest(’rospy_tutorials’) 2 3 4 import rospy from std_msgs.msg import String 5 6 7 def callback(data): rospy.loginfo(rospy.get_caller_id()+"I heard %s",data.data) 8 9 10 def listener(): rospy.init_node(’listener’, anonymous=True) 11 12 rospy.Subscriber("chatter", String, callback) 13 14 rospy.spin() 15 16 17 if __name__ == ’__main__’: listener() Questions
  12. 12. Introduction ROS Gazebo DARPA Urban Challenge DARPA Robotics Challenge CloudSim Questions ROS: example (III) 1 #!/usr/bin/env python 2 3 4 from beginner_tutorials.srv import * import rospy 5 6 7 8 def handle_add_two_ints(req): print "Returning [%s + %s = %s]"%(req.a, req.b, (req.a + req.b)) return AddTwoIntsResponse(req.a + req.b) 9 10 11 12 13 14 def add_two_ints_server(): rospy.init_node(’add_two_ints_server’) s = rospy.Service(’add_two_ints’, AddTwoInts, handle_add_two_ints) print "Ready to add two ints." rospy.spin() 15 16 17 if __name__ == "__main__": add_two_ints_server()
  13. 13. Introduction ROS Gazebo DARPA Urban Challenge DARPA Robotics Challenge CloudSim Questions ROS: example (and IV) 1 2 3 4 5 #!/usr/bin/env python import roslib; roslib.load_manifest(’beginner_tutorials’) import sys import rospy from beginner_tutorials.srv import * 6 7 8 9 10 11 12 13 14 def add_two_ints_client(x, y): rospy.wait_for_service(’add_two_ints’) try: add_two_ints = rospy.ServiceProxy(’add_two_ints’, AddTwoInts) resp1 = add_two_ints(x, y) return resp1.sum except rospy.ServiceException, e: print "Service call failed: %s"%e 15 16 17 18 19 20 if __name__ == "__main__": x = int(sys.argv[1]) y = int(sys.argv[2]) print "Requesting %s+%s"%(x, y) print "%s + %s = %s"%(x, y, add_two_ints_client(x, y))
  14. 14. Introduction ROS Gazebo DARPA Urban Challenge DARPA Robotics Challenge ROS: future • ROS 2.0 will support more use cases • Easier multi-robot architecture • Learn from previous decisions • Unification of the ROS master and nodes protocols • Reduce code maintenance • Better integration with other robotics frameworks • Improve support for embedded devices CloudSim Questions
  15. 15. Introduction ROS Gazebo DARPA Urban Challenge DARPA Robotics Challenge CloudSim Questions
  16. 16. Introduction ROS Gazebo DARPA Urban Challenge DARPA Robotics Challenge CloudSim Questions
  17. 17. Introduction ROS Gazebo DARPA Urban Challenge DARPA Robotics Challenge CloudSim Questions Gazebo: features • Apache 2.0 license • Multi-robot simulator • Included models: PR2, Turtlebot, iRobot Create, etc. • Support for several types of sensors • Pluggable and extendable to add more components and robot models: REEM, Robonaut, etc. • Client-server model • Originally developed by USC and Willow Garage • Open Source Robotics Foundation now leads the development of Gazebo
  18. 18. Introduction ROS Gazebo DARPA Urban Challenge DARPA Robotics Challenge Gazebo: current state • Gazebo 2.0 just released (current version 2.1) • Better integration with ROS • Included improvements made for the DRC CloudSim Questions
  19. 19. Introduction ROS Gazebo DARPA Urban Challenge DARPA Robotics Challenge DARPA Urban Challenge • Competitions in 2004, 2005 and 2007 • Goal: build a self-driving car • Teams built their own car and the software • Winner received $2M CloudSim Questions
  20. 20. Introduction ROS Gazebo DARPA Urban Challenge DARPA Robotics Challenge CloudSim DARPA Robotics Challenge • Goal: advance in the development of rescue robots (fires, earthquakes, floods, etc.) • Teams from all over the world can use a model provided by DARPA (Atlas) or build their own • First phase (Virtual Robotics Challenge, June 2013) completely simulated, 26 qualified for the VRC • The 7 best VRC competitors received a real Atlas robot and additional funding from DARPA • Second phase in Miami (December 2013), with real robots • Winner will receive $2M (December 2014) Questions
  21. 21. Introduction ROS Gazebo DARPA Urban Challenge DARPA Robotics Challenge CloudSim DARPA Robotics Challenge: tasks • Drive a utility vehicle at the site • Travel dismounted across rubble • Remove debris blocking an entryway • Open a door and enter a building • Climb an industrial ladder and traverse an industrial walkway • Use a tool to break through a concrete panel • Locate and close a valve near a leaking pipe • Connect a fire hose to a standpipe and turn on a valve Questions
  22. 22. Introduction ROS Gazebo DARPA Urban Challenge DARPA Robotics Challenge CloudSim Questions
  23. 23. Introduction ROS Gazebo DARPA Urban Challenge DARPA Robotics Challenge CloudSim CloudSim: features • Web application to manage robot simulations in the cloud • Written in Python and Javascript • Apache 2.0 license • Support for several clouds: Amazon Web Services, Softlayer and Openstack • Integrated with ROS and Gazebo • Supports deploying several constellations (simulator + monitor, simulator, etc.) • Developed by Open Source Robotics Foundation Questions
  24. 24. Introduction ROS Gazebo DARPA Urban Challenge DARPA Robotics Challenge CloudSim: use cases • Educational robotics • Simulator in the browser • Robotics competitions CloudSim Questions
  25. 25. Introduction ROS Gazebo DARPA Urban Challenge DARPA Robotics Challenge CloudSim More information • ROS http://ros.org • Gazebo http://gazebosim.org • CloudSim http://gazebosim.org/wiki/CloudSim • DARPA Robotics Challenge http://theroboticschallenge.org • Boston Dynamics http://bostondynamics.com • Open Source Robotics Foundation http://osrfoundation.org • Willow Garage http://willowgarage.com Questions
  26. 26. Introduction ROS Gazebo DARPA Urban Challenge DARPA Robotics Challenge Questions Thanks for your attention esteve@osrfoundation.org esteve@apache.org Twitter: @esteve CloudSim Questions

×