ros kd

14
ROS: an open-source Robot Operating System Morgan Quigley Computer Science Department, Stanford University. Willow Garage, Menlo Park, CA Computer Science Department, University of Southern California 1 Presented By:- Ubaidullah Alias Kashif MSCS-III Sukkur IBA

Upload: kashif-dayo

Post on 26-May-2015

255 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: Ros Kd

1

ROS: an open-source Robot Operating System

Morgan QuigleyComputer Science Department,

Stanford University.Willow Garage, Menlo Park, CAComputer Science Department,

University of Southern California

Presented By:-Ubaidullah Alias Kashif

MSCS-IIISukkur IBA

Page 2: Ros Kd

Robot Operating SystemINTRODUCTIONDESIGN GOALSNOMENCLATUREUSE CASES

Page 3: Ros Kd

USE CASESDebugging a single nodeLogging and playbackPackaged subsystemsCollaborative DevelopmentVisualization and MonitoringComposition of functionalityTransformationsConclusion

Page 4: Ros Kd

Debugging a single nodeA node is the well defined limited area of the system

where planning, reasoning, perception or control is performed.

To get a robotic system up and running for experiments, larger software ecosystem must exist.

This adds a significant amount of difficulty to integrative robotics research.

ROS modular structure minimize the difficulty of debugging in settings

Nods connect to each other at run timeThe ease of inserting and removing nodes from a

running ROS based system is one of its most powerful and fundamental features.

Page 5: Ros Kd

Logging and playbackROS supports generic logging and playback

functionality. Can be performed via command line and requires no modification in source code.

following network graph could be quickly set up to collect a dataset for visual-odometry

research:To facilitate logging and monitoring , the rosconsole library builds upon the Apache project’s

log4cxx system to provide a convenient and elegant logging interface.

Page 6: Ros Kd

Packaged subsystemsROS leverages the algorithms implemented

in the Player project to provide a navigation system, producing this graph:

To allow for “packaged” functionality such as a navigation system, ROS provides a tool called roslaunch, which reads an XML description of a graph and instantiates the graph on the cluster.

Page 7: Ros Kd

Collaborative DevelopmentTo support collaborative development,the ROS software system is organized into packages.A ROS package is simply a directory which contains an

XML file describing the package and stating any dependencies.

For example, one ROS repository has root directories including “nav,” “vision,” and “motion planning,” each of which contains many packages as subdirectories.

ROS provides a utility called rospack to query and inspect the code tree, search dependencies, find packages by name, etc

Page 8: Ros Kd

Visualization and MonitoringWhile designing and debugging robotics software, it often

becomes necessary to observe some state while the system is running.

Printf technique can be difficult to extend to large-scale distributed systems, and can become unwieldy for general-purpose monitoring.

Instead, ROS can exploit the dynamic nature of the connectivity graph to “tap into” any message stream on the system.

rviz program, which is distributed with ROS. Visualization panels can be dynamically instantiated to view a large variety of data types, point clouds, geometric primitives (such as object

recognition results), render robot poses and trajectories, etc.

Page 9: Ros Kd

Composition of functionalityIn ROS, a “stack” of software is a cluster of

nodes that does something useful.The previous graph was automatically

generated by the rxgraph tool, which can inspect and monitor any ROS graph at runtime. Its output renders nodes as ovals, topics as squares, and connectivity as arcs.

Page 10: Ros Kd

Hierarchical multi-robot control system constructed by simply instantiating multiple navigation stacks, each in their own namespace:

Page 11: Ros Kd

TransformationsRobotic systems often need to track spatial

relationships for a variety of reasons: between a mobile robot and some fixed frame of reference for localization.

The tf system constructs a dynamic transformation tree which relates all frames of reference in the system.

For example, the tf system can be used to easily generate point clouds in a stationary “map” frame from laser scans received by a tilting laser scanner on a moving robot

Page 12: Ros Kd

ROS robot software distributionsROS Fuerte (April, 2012)ROS Electric (August, 2011)ROS Diamondback (March, 2011)ROS C Turtle (August, 2010)ROS Box Turtle (March, 2010)

Page 13: Ros Kd

Robots Using ROS (Ongoing Series)From small differential-drive robots to mobile manipulators

to autonomous cars, robots of every size and shape are using ROS to do interesting research and applications development. Groups around the world are also releasing free, open-source software to get you started on your own robot.

Part 6: Helicopters Using ROSPart 5: Meka, Qbo, Mini-PR2, Lego NXTPart 4: Shadow Dextrous Hand, Robotino, Penn Quadrotors,

Washington University's B21r and Videre ERRATICsPart 3: TUM-Rosie, Marvin, HERB, CKBotsPart 2: Care-O-bot 3, BOSCH RTC, EL-E and Cody, Kawada

HRP2-VPart 1: STAIR 1, Aldebaran Nao, JuniorApp Sprints

Page 14: Ros Kd

THANKS

http://www.ros.org http://www.willowgarage.com/pages/software/ros-platform http://www.ros.org/wiki/rviz https://www.developers.google.com/chart/image/docs/gallery/

graphviz http://answers.ros.org/question/35884/rviz-camera-display-

camera_info-problem/