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

Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphNeo4j
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Paola De la Torre
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksSoftradix Technologies
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersThousandEyes
 
Azure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAzure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAndikSusilo4
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxOnBoard
 

Recently uploaded (20)

Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other Frameworks
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food Manufacturing
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
 
Azure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAzure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & Application
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptx
 

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