SlideShare a Scribd company logo
1 of 26
Download to read offline
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
Introduction

ROS

Gazebo

DARPA Urban Challenge

Introduction
ROS
Gazebo
DARPA Urban Challenge
DARPA Robotics Challenge
CloudSim
Questions

DARPA Robotics Challenge

CloudSim

Questions
Introduction

ROS

Gazebo

DARPA Urban Challenge

DARPA Robotics Challenge

Introduction

How it all started

CloudSim

Questions
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 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
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 (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
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
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
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()
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))
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
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

• 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
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
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
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
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
Introduction

ROS

Gazebo

DARPA Urban Challenge

DARPA Robotics Challenge

CloudSim

Questions
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
Introduction

ROS

Gazebo

DARPA Urban Challenge

DARPA Robotics Challenge

CloudSim: use cases

• Educational robotics
• Simulator in the browser
• Robotics competitions

CloudSim

Questions
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
Introduction

ROS

Gazebo

DARPA Urban Challenge

DARPA Robotics Challenge

Questions

Thanks for your attention
esteve@osrfoundation.org
esteve@apache.org
Twitter: @esteve

CloudSim

Questions

More Related Content

What's hot

Ros with docker 20151107
Ros with docker  20151107Ros with docker  20151107
Ros with docker 20151107Sejin Park
 
Cockatrice: A Hardware Design Environment with Elixir
Cockatrice: A Hardware Design Environment with ElixirCockatrice: A Hardware Design Environment with Elixir
Cockatrice: A Hardware Design Environment with ElixirHideki Takase
 
cReComp : Automated Design Tool for ROS-Compliant FPGA Component
cReComp : Automated Design Tool  for ROS-Compliant FPGA Component cReComp : Automated Design Tool  for ROS-Compliant FPGA Component
cReComp : Automated Design Tool for ROS-Compliant FPGA Component Kazushi Yamashina
 
自律移動ロボット向けハード・ソフト協調のためのコンポーネント設計支援ツール
自律移動ロボット向けハード・ソフト協調のためのコンポーネント設計支援ツール自律移動ロボット向けハード・ソフト協調のためのコンポーネント設計支援ツール
自律移動ロボット向けハード・ソフト協調のためのコンポーネント設計支援ツールKazushi Yamashina
 
FPGAの処理をソフトウェアコンポーネント化する設計ツールcReCompの高機能化の検討
FPGAの処理をソフトウェアコンポーネント化する設計ツールcReCompの高機能化の検討FPGAの処理をソフトウェアコンポーネント化する設計ツールcReCompの高機能化の検討
FPGAの処理をソフトウェアコンポーネント化する設計ツールcReCompの高機能化の検討Kazushi Yamashina
 
FPGA処理をROSコンポーネント化する自動設計環境
FPGA処理をROSコンポーネント化する自動設計環境FPGA処理をROSコンポーネント化する自動設計環境
FPGA処理をROSコンポーネント化する自動設計環境Kazushi Yamashina
 
FPGAを用いた処理のロボット向けコンポーネントの設計生産性評価
FPGAを用いた処理のロボット向けコンポーネントの設計生産性評価FPGAを用いた処理のロボット向けコンポーネントの設計生産性評価
FPGAを用いた処理のロボット向けコンポーネントの設計生産性評価Kazushi Yamashina
 
Enjoy Ruby Programming in IDE and TypeProf
Enjoy Ruby Programming in IDE and TypeProfEnjoy Ruby Programming in IDE and TypeProf
Enjoy Ruby Programming in IDE and TypeProfmametter
 
Robot operating systems (ros) overview &
Robot operating systems (ros) overview &Robot operating systems (ros) overview &
Robot operating systems (ros) overview &Piyush Chand
 
Rclex: A Library for Robotics meet Elixir
Rclex: A Library for Robotics meet ElixirRclex: A Library for Robotics meet Elixir
Rclex: A Library for Robotics meet ElixirHideki Takase
 
Cookpad Hackarade #04: Create Your Own Interpreter
Cookpad Hackarade #04: Create Your Own InterpreterCookpad Hackarade #04: Create Your Own Interpreter
Cookpad Hackarade #04: Create Your Own Interpretermametter
 
Autoware vs. Computer Performance @ ROS Japan UG #43 組み込み勉強会
Autoware vs. Computer Performance @ ROS Japan UG #43 組み込み勉強会Autoware vs. Computer Performance @ ROS Japan UG #43 組み込み勉強会
Autoware vs. Computer Performance @ ROS Japan UG #43 組み込み勉強会kfunaoka
 
Why is Python slow? Python Nordeste 2013
Why is Python slow? Python Nordeste 2013Why is Python slow? Python Nordeste 2013
Why is Python slow? Python Nordeste 2013Daker Fernandes
 

What's hot (14)

Ros with docker 20151107
Ros with docker  20151107Ros with docker  20151107
Ros with docker 20151107
 
Erlang os
Erlang osErlang os
Erlang os
 
Cockatrice: A Hardware Design Environment with Elixir
Cockatrice: A Hardware Design Environment with ElixirCockatrice: A Hardware Design Environment with Elixir
Cockatrice: A Hardware Design Environment with Elixir
 
cReComp : Automated Design Tool for ROS-Compliant FPGA Component
cReComp : Automated Design Tool  for ROS-Compliant FPGA Component cReComp : Automated Design Tool  for ROS-Compliant FPGA Component
cReComp : Automated Design Tool for ROS-Compliant FPGA Component
 
自律移動ロボット向けハード・ソフト協調のためのコンポーネント設計支援ツール
自律移動ロボット向けハード・ソフト協調のためのコンポーネント設計支援ツール自律移動ロボット向けハード・ソフト協調のためのコンポーネント設計支援ツール
自律移動ロボット向けハード・ソフト協調のためのコンポーネント設計支援ツール
 
FPGAの処理をソフトウェアコンポーネント化する設計ツールcReCompの高機能化の検討
FPGAの処理をソフトウェアコンポーネント化する設計ツールcReCompの高機能化の検討FPGAの処理をソフトウェアコンポーネント化する設計ツールcReCompの高機能化の検討
FPGAの処理をソフトウェアコンポーネント化する設計ツールcReCompの高機能化の検討
 
FPGA処理をROSコンポーネント化する自動設計環境
FPGA処理をROSコンポーネント化する自動設計環境FPGA処理をROSコンポーネント化する自動設計環境
FPGA処理をROSコンポーネント化する自動設計環境
 
FPGAを用いた処理のロボット向けコンポーネントの設計生産性評価
FPGAを用いた処理のロボット向けコンポーネントの設計生産性評価FPGAを用いた処理のロボット向けコンポーネントの設計生産性評価
FPGAを用いた処理のロボット向けコンポーネントの設計生産性評価
 
Enjoy Ruby Programming in IDE and TypeProf
Enjoy Ruby Programming in IDE and TypeProfEnjoy Ruby Programming in IDE and TypeProf
Enjoy Ruby Programming in IDE and TypeProf
 
Robot operating systems (ros) overview &
Robot operating systems (ros) overview &Robot operating systems (ros) overview &
Robot operating systems (ros) overview &
 
Rclex: A Library for Robotics meet Elixir
Rclex: A Library for Robotics meet ElixirRclex: A Library for Robotics meet Elixir
Rclex: A Library for Robotics meet Elixir
 
Cookpad Hackarade #04: Create Your Own Interpreter
Cookpad Hackarade #04: Create Your Own InterpreterCookpad Hackarade #04: Create Your Own Interpreter
Cookpad Hackarade #04: Create Your Own Interpreter
 
Autoware vs. Computer Performance @ ROS Japan UG #43 組み込み勉強会
Autoware vs. Computer Performance @ ROS Japan UG #43 組み込み勉強会Autoware vs. Computer Performance @ ROS Japan UG #43 組み込み勉強会
Autoware vs. Computer Performance @ ROS Japan UG #43 組み込み勉強会
 
Why is Python slow? Python Nordeste 2013
Why is Python slow? Python Nordeste 2013Why is Python slow? Python Nordeste 2013
Why is Python slow? Python Nordeste 2013
 

Similar to ROS Gazebo DARPA Robotics Challenge CloudSim Robot Operating System

Shestakov Illia "The Sandbox Theory"
Shestakov Illia "The Sandbox Theory"Shestakov Illia "The Sandbox Theory"
Shestakov Illia "The Sandbox Theory"LogeekNightUkraine
 
Cannibalising The Google App Engine
Cannibalising The  Google  App  EngineCannibalising The  Google  App  Engine
Cannibalising The Google App Enginecatherinewall
 
My way to clean android - Android day salamanca edition
My way to clean android - Android day salamanca editionMy way to clean android - Android day salamanca edition
My way to clean android - Android day salamanca editionChristian Panadero
 
Docker and containers - For Boston Docker Meetup Workshop in March 2015
Docker and containers - For Boston Docker Meetup Workshop in March 2015Docker and containers - For Boston Docker Meetup Workshop in March 2015
Docker and containers - For Boston Docker Meetup Workshop in March 2015Jonas Rosland
 
Docker and Containers overview - Docker Workshop
Docker and Containers overview - Docker WorkshopDocker and Containers overview - Docker Workshop
Docker and Containers overview - Docker WorkshopJonas Rosland
 
Docker Training - June 2015
Docker Training - June 2015Docker Training - June 2015
Docker Training - June 2015{code}
 
Deploying Web Apps with PaaS and Docker Tools
Deploying Web Apps with PaaS and Docker ToolsDeploying Web Apps with PaaS and Docker Tools
Deploying Web Apps with PaaS and Docker ToolsEddie Lau
 
Building Your Robot using AWS Robomaker
Building Your Robot using AWS RobomakerBuilding Your Robot using AWS Robomaker
Building Your Robot using AWS RobomakerAlex Barbosa Coqueiro
 
Intro to node and mongodb 1
Intro to node and mongodb   1Intro to node and mongodb   1
Intro to node and mongodb 1Mohammad Qureshi
 
Google App Engine Java, Groovy and Gaelyk
Google App Engine Java, Groovy and GaelykGoogle App Engine Java, Groovy and Gaelyk
Google App Engine Java, Groovy and GaelykGuillaume Laforge
 
StrongLoop Overview
StrongLoop OverviewStrongLoop Overview
StrongLoop OverviewShubhra Kar
 
JRuby, Ruby, Rails and You on the Cloud
JRuby, Ruby, Rails and You on the CloudJRuby, Ruby, Rails and You on the Cloud
JRuby, Ruby, Rails and You on the CloudHiro Asari
 
Why Nodejs Guilin Shanghai
Why Nodejs Guilin ShanghaiWhy Nodejs Guilin Shanghai
Why Nodejs Guilin ShanghaiJackson Tian
 
Why Node.js
Why Node.jsWhy Node.js
Why Node.jsguileen
 
My way to clean android (EN) - Android day salamanca edition
My way to clean android (EN) - Android day salamanca editionMy way to clean android (EN) - Android day salamanca edition
My way to clean android (EN) - Android day salamanca editionChristian Panadero
 
Building Robotics Application at Scale using OpenSource from Zero to Hero
Building Robotics Application at Scale using OpenSource from Zero to HeroBuilding Robotics Application at Scale using OpenSource from Zero to Hero
Building Robotics Application at Scale using OpenSource from Zero to HeroAlex Barbosa Coqueiro
 
Future of Development and Deployment using Docker
Future of Development and Deployment using DockerFuture of Development and Deployment using Docker
Future of Development and Deployment using DockerTamer Abdul-Radi
 
Breaking a monolith: In-place refactoring with service-oriented architecture ...
Breaking a monolith: In-place refactoring with service-oriented architecture ...Breaking a monolith: In-place refactoring with service-oriented architecture ...
Breaking a monolith: In-place refactoring with service-oriented architecture ...Ryan M Harrison
 

Similar to ROS Gazebo DARPA Robotics Challenge CloudSim Robot Operating System (20)

Shestakov Illia "The Sandbox Theory"
Shestakov Illia "The Sandbox Theory"Shestakov Illia "The Sandbox Theory"
Shestakov Illia "The Sandbox Theory"
 
Cannibalising The Google App Engine
Cannibalising The  Google  App  EngineCannibalising The  Google  App  Engine
Cannibalising The Google App Engine
 
My way to clean android - Android day salamanca edition
My way to clean android - Android day salamanca editionMy way to clean android - Android day salamanca edition
My way to clean android - Android day salamanca edition
 
Rack
RackRack
Rack
 
Docker and containers - For Boston Docker Meetup Workshop in March 2015
Docker and containers - For Boston Docker Meetup Workshop in March 2015Docker and containers - For Boston Docker Meetup Workshop in March 2015
Docker and containers - For Boston Docker Meetup Workshop in March 2015
 
Docker and Containers overview - Docker Workshop
Docker and Containers overview - Docker WorkshopDocker and Containers overview - Docker Workshop
Docker and Containers overview - Docker Workshop
 
Docker Training - June 2015
Docker Training - June 2015Docker Training - June 2015
Docker Training - June 2015
 
Deploying Web Apps with PaaS and Docker Tools
Deploying Web Apps with PaaS and Docker ToolsDeploying Web Apps with PaaS and Docker Tools
Deploying Web Apps with PaaS and Docker Tools
 
Building Your Robot using AWS Robomaker
Building Your Robot using AWS RobomakerBuilding Your Robot using AWS Robomaker
Building Your Robot using AWS Robomaker
 
Node azure
Node azureNode azure
Node azure
 
Intro to node and mongodb 1
Intro to node and mongodb   1Intro to node and mongodb   1
Intro to node and mongodb 1
 
Google App Engine Java, Groovy and Gaelyk
Google App Engine Java, Groovy and GaelykGoogle App Engine Java, Groovy and Gaelyk
Google App Engine Java, Groovy and Gaelyk
 
StrongLoop Overview
StrongLoop OverviewStrongLoop Overview
StrongLoop Overview
 
JRuby, Ruby, Rails and You on the Cloud
JRuby, Ruby, Rails and You on the CloudJRuby, Ruby, Rails and You on the Cloud
JRuby, Ruby, Rails and You on the Cloud
 
Why Nodejs Guilin Shanghai
Why Nodejs Guilin ShanghaiWhy Nodejs Guilin Shanghai
Why Nodejs Guilin Shanghai
 
Why Node.js
Why Node.jsWhy Node.js
Why Node.js
 
My way to clean android (EN) - Android day salamanca edition
My way to clean android (EN) - Android day salamanca editionMy way to clean android (EN) - Android day salamanca edition
My way to clean android (EN) - Android day salamanca edition
 
Building Robotics Application at Scale using OpenSource from Zero to Hero
Building Robotics Application at Scale using OpenSource from Zero to HeroBuilding Robotics Application at Scale using OpenSource from Zero to Hero
Building Robotics Application at Scale using OpenSource from Zero to Hero
 
Future of Development and Deployment using Docker
Future of Development and Deployment using DockerFuture of Development and Deployment using Docker
Future of Development and Deployment using Docker
 
Breaking a monolith: In-place refactoring with service-oriented architecture ...
Breaking a monolith: In-place refactoring with service-oriented architecture ...Breaking a monolith: In-place refactoring with service-oriented architecture ...
Breaking a monolith: In-place refactoring with service-oriented architecture ...
 

Recently uploaded

TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsNathaniel Shimoni
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxLoriGlavin3
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxLoriGlavin3
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningLars Bell
 
unit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxunit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxBkGupta21
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxLoriGlavin3
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfMounikaPolabathina
 
Scale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterScale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterMydbops
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxLoriGlavin3
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
What is Artificial Intelligence?????????
What is Artificial Intelligence?????????What is Artificial Intelligence?????????
What is Artificial Intelligence?????????blackmambaettijean
 
Ryan Mahoney - Will Artificial Intelligence Replace Real Estate Agents
Ryan Mahoney - Will Artificial Intelligence Replace Real Estate AgentsRyan Mahoney - Will Artificial Intelligence Replace Real Estate Agents
Ryan Mahoney - Will Artificial Intelligence Replace Real Estate AgentsRyan Mahoney
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Manik S Magar
 
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESSALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESmohitsingh558521
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxLoriGlavin3
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .Alan Dix
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 

Recently uploaded (20)

TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directions
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine Tuning
 
unit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxunit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptx
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdf
 
Scale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterScale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL Router
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
What is Artificial Intelligence?????????
What is Artificial Intelligence?????????What is Artificial Intelligence?????????
What is Artificial Intelligence?????????
 
Ryan Mahoney - Will Artificial Intelligence Replace Real Estate Agents
Ryan Mahoney - Will Artificial Intelligence Replace Real Estate AgentsRyan Mahoney - Will Artificial Intelligence Replace Real Estate Agents
Ryan Mahoney - Will Artificial Intelligence Replace Real Estate Agents
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
 
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESSALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptx
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 

ROS Gazebo DARPA Robotics Challenge CloudSim Robot Operating System

  • 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. Introduction ROS Gazebo DARPA Urban Challenge Introduction ROS Gazebo DARPA Urban Challenge DARPA Robotics Challenge CloudSim Questions DARPA Robotics Challenge CloudSim Questions
  • 3. Introduction ROS Gazebo DARPA Urban Challenge DARPA Robotics Challenge Introduction How it all started CloudSim Questions
  • 4. Introduction ROS Gazebo DARPA Urban Challenge DARPA Robotics Challenge Willow Garage CloudSim Questions
  • 5. Introduction ROS Gazebo DARPA Urban Challenge PR2 DARPA Robotics Challenge CloudSim Questions
  • 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. Introduction ROS Gazebo DARPA Urban Challenge DARPA Robotics Challenge CloudSim Questions
  • 8. Introduction ROS Gazebo DARPA Urban Challenge DARPA Robotics Challenge ROS: robots CloudSim Questions
  • 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. 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. 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. 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. 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. 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. Introduction ROS Gazebo DARPA Urban Challenge DARPA Robotics Challenge CloudSim Questions
  • 16. Introduction ROS Gazebo DARPA Urban Challenge DARPA Robotics Challenge CloudSim Questions
  • 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. 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. 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. 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. 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. Introduction ROS Gazebo DARPA Urban Challenge DARPA Robotics Challenge CloudSim Questions
  • 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. Introduction ROS Gazebo DARPA Urban Challenge DARPA Robotics Challenge CloudSim: use cases • Educational robotics • Simulator in the browser • Robotics competitions CloudSim Questions
  • 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. Introduction ROS Gazebo DARPA Urban Challenge DARPA Robotics Challenge Questions Thanks for your attention esteve@osrfoundation.org esteve@apache.org Twitter: @esteve CloudSim Questions