ROS is the common language roboticists use to build robots. It's an open source and modular set of software libraries and tools that help you build robot applications. It provides a message-passing system between software components, drivers for robot hardware, state-of-the-art robotic algorithms, and powerful developer tools to test, debug and visualize your robot.
Robots are networks of networks, with sensors capturing data, passing to compute technologies, and then on to actuators and back again in a deterministic manner. These networks can be understood as the nervous system of the robot, passing across compute Nodes, that represent neurons. Like the human nervous systems, real-time information across all these computational Nodes is fundamental for the robot to behave coherently.
"Robot brains" are built with this same philosophy. Behaviors take the form of computational graphs, with data flowing between Nodes, across physical networks (communication buses) and while mapping to underlying sensors, compute technologies and actuators. ROS enables you to build these computational graphs and create robot behaviors by providing libraries, a communication infrastructure, drivers and tools to put it all together.
ROS 2 provides the robotics tools, libraries, and capabilities needed to develop applications, allowing to gain time and put it into business. Open source based, ROS 2 provides flexibility to decide where and how to use these tools, as well as the freedom to customize them for any need.
ROS 2 was built from the ground up to be industry-grade and used in production, including high reliability and safety critical systems. Design choices, development practices, and project governance for ROS 2 are based on requirements from industry stakeholders.
ROS 2 has first class support for Linux, Windows, and macOS, allowing seamless development and deployment of on-robot autonomy, back-end management, and user interfaces. The tiered support model allows for ports to new platforms, such as real-time and embedded OSs.
Like ROS before it, ROS 2 is ready for use across a wide array of robotics applications, from indoor to outdoor, home to automotive, underwater to space, and consumer to industrial.
The ROS 2 middleware layer embodies key abstractions required for a distributed system based on publish-subscribe semantics. Below, there are multiple implementations of the communications code. Above, core libraries and user applications are portable.
The default communications method in ROS 2 uses the industry standards DDS and RTPS, which are already widely deployed in a variety of industrial applications, from factories to aerospace.
ROS 2 code is licensed under Apache 2.0 License, with ported ROS 1 code under the 3-clause (or "new") BSD License. Both licenses allow permissive use of the software, without implications on the user's intellectual property.
Over 10+ years, the ROS project has produced a vast ecosystem of software for robotics by nurturing a global community of hundreds of thousands of developers and users who contribute to and improve that software. ROS 2 is developed by and for that community.
Industry support for ROS 2 is strong. Companies large and small from around the world are committing their resources to making open source contributions to ROS 2, in addition to developing products on top.
We are amongst the top experts globally on ROS and ROS 2. Our consulting services focus on helping our clients streamline various robotic processes using ROS and Gazebo, so that you don't spend time reinventing the wheel and re-developing what already works.Let's talk Our ROS expertise