ROS 2
The Robot Operating System (ROS) is a set of software libraries and tools that help you build robot applications. From drivers to state-of-the-art algorithms, and with powerful developer tools, ROS has what you need for your next robotics project. And it's all open source.
Here you will find documentation on how to install and use software from ROS 2, which is a new version of ROS that is under heavy development. See below for more information on ROS 2.
If you're looking for information on ROS 1 (i.e., ROS as it has existed for several years and what you might be using right now), check the ROS website or the documentation wiki.
Before you proceed here, please read the [[features page|Features]] to get an idea of what is in the current ROS 2 release.
Installation
Tutorials and Features
ROS 2 is under heavy development. You can check out the [[tutorials page|Tutorials]] to see a range of examples of what the system can do in its current state, if it fits your project today depending on the exact requirement. For details of the current features, see Features.
What's ahead
ROS 2 is currently planning to release new versions every six month (which is twice as often as ROS 1) to give the community members an opportunity to provide early feedback on the evolving system. See the Roadmap for details on the planned upcoming features for ROS 2.
Contributing
See the contributing page and the developer guide for details on how to contribute to ROS 2 developments.
Reporting problems and asking questions
See the contact page.
About ROS 2
Since ROS was started in 2007, a lot has changed in the robotics and ROS community. The goal of the ROS 2 project is to adapt to these changes, leveraging what is great about ROS 1 and improving what isn’t. There's a full article on the motivation of ROS 2 here.
Where to find more information
There are various articles on the design of ROS 2 at design.ros2.org, such as: Why ROS 2.0?, ROS on DDS, and Changes between ROS 1 and ROS 2.
The code for ROS 2 is open source and broken into various repositories. You can find the code for most of the repositories on the ros2 github organization.
docs.ros2.org contains current details about ROS 2 internal design and organization.
awesome-ros2 is a "cheat sheet" style quick reference for ROS 2 packages and resources which will get (hopefully) listed on the curated list of awesome lists to help GitHub users to get to know ROS 2.
The following ROSCon talks have been given on ROS 2 and provide information about the workings of ROS 2 and various demos:
Title | Type | Links |
---|---|---|
The ROS 2 vision for advancing the future of robotics development | ROSCon 2017 presentation | slides / video |
ROS 2 Update - summary of alpha releases, architectural overview | ROSCon 2016 presentation | slides / video |
Evaluating the resilience of ROS2 communication layer | ROSCon 2016 presentation | slides / video |
State of ROS 2 - demos and the technology behind | ROSCon 2015 presentation | slides / video |
ROS 2 on "small" embedded systems | ROSCon 2015 presentation | slides / video |
Real-time control in ROS and ROS 2.0 | ROSCon 2015 presentation | slides / video |
Why you want to use ROS 2 | ROSCon 2014 presentation | slides / video |
Next-generation ROS: Building on DDS | ROSCon 2014 presentation | slides / video |