Robotic
Click to edit Master title style
Operating
System (ROS)
1
Click to edit Master title style
❑ INTRODUCTION TO ROS INDEX
❑ WHAT IS ROS?
❑ HISTORY OF ROS
❑ ARCHITECTURE OF ROS
❑ ADVANTAGES OF ROS
❑ VERSION OF ROS
❑ TOOL IN ROS
❑ APPLICATIONS OF ROS
❑ ROS IN AUTONOMOS VEHICLES
❑ EXAMPLES OF ROS
❑ FUTURE OF ROS
2 2
Introduction
Click to edit Master title style to ROS
Robotic Operating System (ROS) is an open-source, meta-operating
system
ROS is important in the field of robotics
Modularity and Reusability: ROS provides a modular and reusable
framework for robotics software development. This makes it easier to
develop, test, and deploy new robotic applications .
Hardware : ROS provides a hardware abstraction layer that allows
developers to write code that can run on different hardware platforms .
Distributed Processing: ROS supports distributed processing, which
allows developers to write code that can run on multiple machines.
Visualization and Debugging: ROS provides tools for visualization and
debugging, which helps developers to visualize the behavior of their
robotic systems and debug any issues that may arise during
development.
3 3
What is ROS?
Click to edit Master title style
Robotic Operating system designed to provide a common
framework for robotics software development.
ROS provides a collection of tools, libraries that simplify the
development of complex robotic systems. It is widely used in
the robotics industry and research community.
ROS is not an operating system in the traditional sense, but
rather a middleware layer that runs on top of a Linux
operating system.
ROS is designed to be modular and flexible, allowing
developers to create and share software components that can
be easily used into larger systems.
ROS is primarily written in the programming language C++,
but it also supports Python and other programming languages.
It is licensed under the Apache 2.0 license, which allows for
free use, modification, and distribution of the software.
4 4
Click to edit Master title style
History of ROS
In 2007, the Stanford Artificial Intelligence Laboratory released the
first version of ROS, which was originally developed for use with the
PR2 robot developed by Willow Garage, a robotics research lab in
Menlo Park, California.
Over the years, ROS has grown in popularity and become widely used
in the robotics industry and research community. , with the most
recent version being ROS 2 in 2017.
One of the key factors contributing to the success of ROS has been its
open-source nature, which has allowed developers around the world to
contribute to its development and use it in a wide range of robotics
applications.
Today, ROS is used in a variety of industries, including manufacturing,
healthcare, agriculture, and transportation.
5 5
Click to edit Master
Architecture of ROS title style
The architecture of ROS can be broken down into
several key components:
Services: Services are named functions that nodes can
Nodes: Nodes are the basic building blocks of ROS provide or call. A node that provides a service defines the
software. Each node is a self-contained software input and output message types of the service. Other
module that performs a specific task, such as sensor
data processing, robot control, or path planning. Nodes nodes can call the service by sending a request message to
communicate with each other using messages that are the node that provides the service. The node that provides
transmitted over the ROS Communication the service responds with a reply message.
Infrastructure.
Actions: Actions are similar to services, but they allow for
Messages: Messages are the data structures that nodes
more complex interactions between nodes. Actions are
use to communicate with each other. ROS provides a
standard message format that can be used to define typically used for long-running tasks, such as robot
the structure and content of messages. Messages can navigation or manipulation. An action is defined by a
contain data of various types, such as integers, floats, sequence of goals, feedback, and results that are
strings, and arrays. exchanged between the action client and server nodes.
Topics: Topics are named channels that nodes use to
communicate with each other. Nodes can publish Parameters: Parameters are used to store and retrieve
messages on a topic or subscribe to a topic to receive configuration data for nodes. Parameters can be set and
messages. Topics are implemented using a publish- accessed using the ROS Parameter Server, which
subscribe model, where nodes can publish messages to provides a centralized repository for parameter data.
a topic without knowing which other nodes are 6 6
subscribed to that topic.
Click to edit of
Advantages Master
ROS title style
1.Open-source: ROS is an open-source software framework, which means that it is freely available for anyone
to use, modify, and distribute. This has led to a large and active community of developers who contribute to its
development and share their code with others.
2.Modularity: ROS is designed to be modular, which means that developers can write software modules
(nodes) that perform specific tasks and then combine them to create complex robotics systems. This
modularity makes it easier to develop, test, and debug robotics software.
3.Standardization: ROS provides a standardized way for nodes to communicate with each other using
messages, topics, services, and actions. This standardization makes it easier to integrate different software
modules and hardware components into a single robotics system.
4.Flexibility: ROS is designed to be hardware-agnostic, which means that it can run on a wide range of
hardware platforms. This makes it easier to develop software that can be deployed on different robots or other
robotics systems.
5.Large ecosystem: ROS has a large and growing ecosystem of third-party software libraries and tools that can
be used to extend its functionality. This ecosystem includes libraries for computer vision, machine learning,
path planning, and more.
6.Testing and simulation: ROS provides tools for testing and simulating robotics systems, which makes it easier
to develop and test software without needing access to physical robots.
7 7
Click to edit
Versions Master title style
of ROS
ROS 1: ROS 1 was the first version of the Robotic Operating System,
released in 2007 by the Stanford Artificial Intelligence Laboratory. ROS 1
is still widely used today and is considered to be stable and mature. ROS
1 includes a wide range of tools and libraries for robotics software
development, including drivers for sensors and actuators, navigation
algorithms, and simulation tools.
ROS 2: ROS 2 is a newer version of the Robotic Operating System that
was released in 2017. ROS 2 includes many improvements over ROS 1,
including better support for real-time systems, improved security
features, and a more modular architecture. ROS 2 is designed to be more
scalable and reliable than ROS 1, making it suitable for use in more
complex and demanding robotics applications.
ROS-Industrial: ROS-Industrial is a version of the Robotic Operating
System that is specifically tailored for industrial robotics applications.
ROS-Industrial includes a range of tools and libraries for industrial robot
control, such as robot arm motion planning, vision-based object
detection, and real-time communication.
ROS for Windows: ROS for Windows is a version of the Robotic Operating
System that is designed to run on the Microsoft Windows operating
system. ROS for Windows is compatible with the ROS 1 ecosystem,
allowing developers to use the same tools and libraries on both Windows
and Linux. 8 8
Click
Tools to
in edit
ROS Master title style
1.RViz: RViz is a 3D visualization tool that allows users to display
and interact with sensor data, robot models, and other
visualizations in real-time. It is often used for debugging and testing
robotics software.
2.Gazebo: Gazebo is a 3D robot simulation tool that allows users to
simulate robot models and environments. It is often used for testing
and development of robotics software before deploying it on real
robots.
3.MoveIt!: MoveIt! is a motion planning and control library for
robotic manipulators. It provides tools for tasks such as path
planning, collision detection, and trajectory execution, and is often
used for tasks such as pick-and-place operations.
4.ROS Navigation Stack: The ROS Navigation Stack is a collection of
libraries and tools for robot navigation. It provides tools for tasks
such as mapping, localization, and path planning, and is often used
9 9
for autonomous navigation of mobile robots.
Click to edit Master
Applications of ROS title style
1.Autonomous vehicles: ROS is used extensively in the development
of autonomous vehicles, including self-driving cars and unmanned
aerial vehicles (UAVs). ROS provides tools for tasks such as sensor
fusion, localization, mapping, and path planning.
2.Industrial automation: ROS-Industrial is a version of ROS that is
specifically tailored for industrial robotics applications. It provides
tools for tasks such as robot arm motion planning, vision-based
object detection, and real-time communication.
3.Healthcare robotics: ROS is used in healthcare robotics applications,
such as surgical robots and exoskeletons for rehabilitation. ROS
provides tools for tasks such as robot control, motion planning, and
sensing.
4.Service robotics: ROS is used in service robotics applications, such
as cleaning robots and delivery robots. ROS provides tools for tasks
such as mapping, localization, and navigatio
10
10
Click
ROS intoautonomous
edit Master title style
vehicles
The Robotic Operating System (ROS) is widely used in the development of
autonomous driving systems, and Tesla is one company that has leveraged
ROS in their vehicles.
Tesla's Autopilot system, which is designed to provide semi-autonomous
driving capabilities, uses ROS for tasks such as localization, and path
planning.
In particular, ROS is used in Tesla's Autopilot for tasks such as:
1.Sensor fusion: ROS provides tools for combining data from multiple sensors,
such as cameras & radar combine them into a single perception model. This
helps to better understand its surroundings and make more informed
decisions.
2.Localization: ROS provides tool for estimating the vehicle's position.
3.Surrounding: This is important for accurate navigation and path planning.
4.Path planning: ROS provides tools for generating safe and efficient paths for
the vehicle to follow, taking into account factors such as traffic, road 11
11
conditions, and other vehicles.
Click to editOF
EXAMPLES ROS title style
Master
Autonomous Vehicles: Autonomous vehicles such as self-driving cars and delivery robots
use ROS for tasks such as perception, localization, and path planning.
Clear path Robotics: Clear path Robotics produces a range of mobile robots for industrial
and research applications. Their robots use ROS for tasks such as localization, mapping,
and obstacle avoidance.
12
12
Future of ROS
Click to edit Master title style
• Expansion of ROS-I: ROS-I is a version of ROS that is
designed for industrial robotics applications. As interest in
robotics continues to grow, we can expect to see increased
development and adoption of ROS-I.
• Integration with AI and machine learning: As AI and machine
learning become increasingly important in robotics, we will see
deeper integration between ROS and these technologies.
• Increased use in service robotics: As the market for service
robotics continues to grow, we can expect to see increased
adoption of ROS in this area. ROS provides a powerful platform
for developing and testing service robotics applications, and its
flexibility and modularity.
• Expansion of the ROS community: The ROS community is
already large and active, but we can expect to see continued
growth and diversification in the future. This may include new
initiatives to promote ROS adoption and development in
emerging markets and industries. 13
13
Click to edit Master title style
OVERVIEW
• Robotic Operating System (ROS) is an open-source,
meta-operating system
• Over the years, ROS has grown in popularity and
become widely used in the robotics industry and
research community. , with the most recent version
being ROS 2 in 2017.
• Structure of ros is made up of nodes , messages ,
topics, services , actions and parameters
• Ros is used in autonomous vehicle, industrial
automation and health care robotics.
• The Robotic Operating System (ROS) is widely used in
the development of autonomous driving systems,
and Tesla is one company that has leveraged ROS in
their vehicles.
14
14
Click to edit Master title style
Thank You
Presentation made by
1.Omkar Gokhale
2.Devang Adke
3.Kirtan Chauhan
15