Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
ROSRobot Operating System                  Dr. Radu Bogdan Rusu                  Research Scientist, Willow Garage
What is ROS?●   Meta operating system for robotics●   Obtain, build, write, and run code across    multiple computers, and...
ROS ConceptsI. computational graph  •   how programs run: master, node, topic, message,      service, parameterII. file sy...
(I) Architecture Overview●   distributed processes called nodes●   synchronous services●   asynchronous topics●   data is ...
(I) Nodes●   principal programming entities in ROS●   they connect to each other and pass data    via topics●   the discov...
(I) ROS Messages●     defined in package-name/msg/.msg files,      sent over topics●     basic data types: int{8,16,32,64}...
(I) ROS Messages: example#This message holds a collection of nD points, as a binary blob.Header header# 2D structure of th...
(I) master, roscore●   Master    ●   Name service for ROS         ●   Nodes register topics and services with Master      ...
(I) ROS parameters●   have unique names●   can represent primitive data types:    ●   integers    ●   floats    ●   boolea...
(II) Packages & Stacks●   Packages = directories with a certain structure,    can contain anything: nodes, messages, tools...
(III) Repositories• collection of packages and stacks, hosted online• many repositories (>20): Stanford, CMU, TUM, etc•
Upcoming SlideShare
Loading in …5
×

Cvpr2010 open source vision software, intro and training part vi robot operating system - rusu - unknown - 2010

1,551 views

Published on

Published in: Technology
  • I have done a couple of papers through ⇒⇒⇒WRITE-MY-PAPER.net ⇐⇐⇐ they have always been great! They are always in touch with you to let you know the status of paper and always meet the deadline!
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • Writing good research paper is quite easy and very difficult simultaneously. It depends on the individual skill set also. You can get help from research paper writing. Check out, please ⇒ www.HelpWriting.net ⇐
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • You can hardly find a student who enjoys writing a college papers. Among all the other tasks they get assigned in college, writing essays is one of the most difficult assignments. Fortunately for students, there are many offers nowadays which help to make this process easier. The best service which can help you is ⇒ www.WritePaper.info ⇐
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here

Cvpr2010 open source vision software, intro and training part vi robot operating system - rusu - unknown - 2010

  1. 1. ROSRobot Operating System Dr. Radu Bogdan Rusu Research Scientist, Willow Garage
  2. 2. What is ROS?● Meta operating system for robotics● Obtain, build, write, and run code across multiple computers, and multiple robots Hello, I am Texai418 Hi, Im a PR2 Beta
  3. 3. ROS ConceptsI. computational graph • how programs run: master, node, topic, message, service, parameterII. file system • how programs are organized and built: packages, stacks, msg, srvIII. repositories • how files are distributed online: ros-pkg, wg-ros-pkg, tum-ros-pkg, sail-ros-pkg, ...
  4. 4. (I) Architecture Overview● distributed processes called nodes● synchronous services● asynchronous topics● data is passed via ROS messages message Talker Listener * service request Node1 Node2 service reply
  5. 5. (I) Nodes● principal programming entities in ROS● they connect to each other and pass data via topics● the discovery of who publishes on what topic is done via a ROS master (0. I am publishing on /chatter) 1. who publishes on /chatter? ROS master 2. node Talker 3. connect to Talker Talker Listener 4. start sending messages
  6. 6. (I) ROS Messages● defined in package-name/msg/.msg files, sent over topics● basic data types: int{8,16,32,64}, float{32,64}, string, time, duration, array[]Point.msgfloat64 xfloat64 yfloat64 z● used in ROS services, defined in package- name/srv/*.srvService = Request msg + Response msg
  7. 7. (I) ROS Messages: example#This message holds a collection of nD points, as a binary blob.Header header# 2D structure of the point cloud. If the cloud is unordered,# height is 1 and width is the length of the point cloud.uint32 heightuint32 width# Describes the channels and their layout in the binary data blob.PointField[] fieldsbool is_bigendian # Is this data bigendian?uint32 point_step # Length of a point in bytesuint32 row_step # Length of a row in bytesuint8[] data # Actual point data, size is (row_step*height)bool is_dense # True if there are no invalid points
  8. 8. (I) master, roscore● Master ● Name service for ROS ● Nodes register topics and services with Master ● Nodes find each other using Master ● XML-RPC based● roscore ● Master ● parameter server ● rosout: logs /rosout topic for debugging
  9. 9. (I) ROS parameters● have unique names● can represent primitive data types: ● integers ● floats ● boolean ● dictionaries ● maps, etc● can be set and remapped at runtime● stored on the parameter server
  10. 10. (II) Packages & Stacks● Packages = directories with a certain structure, can contain anything: nodes, messages, tools● in their most basic form:package_name/package_name/Makefilepackage_name/CMakeLists.txtpackage_name/manifest.xml● ROS core = small, but ROS world = many packages !!!● Stacks = collection of packages● in their most basic form:stack_name/stack_name/package_name_1stack_name/package_name_Nstack_name/stack.xml
  11. 11. (III) Repositories• collection of packages and stacks, hosted online• many repositories (>20): Stanford, CMU, TUM, etc•

×