功能状态

以下列出的功能在当前的ROS 2版本中可用。除非另有说明,这些功能适用于所有支持的平台(Ubuntu 22.04(Jammy),Windows 10)、DDS实现(eProsima Fast DDS、RTI Connext DDS和Eclipse Cyclone DDS)以及编程语言客户端库(C++和Python)。有关计划中的未来开发,请参阅 Roadmap

功能性

链接

详细信息

通过DDS进行发现、传输和序列化

文章

支持在运行时选择的 多个DDS实现

概念操作指南

目前完全支持 Eclipse Cyclone DDS、eProsima Fast DDS 和 RTI Connext DDS。

通用核心客户端库,由语言特定的库封装

详情

通过主题进行发布/订阅

示例代码文章

客户端和服务

示例代码

设置/获取参数

示例代码

ROS 1 - ROS 2 通信桥

教程

可用于主题和服务,尚不支持操作。

用于处理非理想网络的服务质量设置

演示

使用相同的 API 进行进程间和进程内通信

演示

目前仅支持 C++。

编译、链接、加载或运行时的节点组件的组合

演示

目前仅支持 C++。

同一节点中的多个执行器(在回调组级别)

演示

仅适用于C++。

支持具有受控生命周期的节点

演示

目前仅支持 C++。

DDS-Security支持

演示

使用可扩展框架的命令行内省工具

概念

用于协调多个节点的启动系统

教程

节点和话题的命名空间支持

文章

ROS名称的静态重映射

如何指南

一个全ROS 2移动机器人的演示

演示

实时代码的初步支持

演示, 演示

仅适用于Linux。Fast RTPS不可用。

对“裸机”微控制器提供初步支持

Wiki

内容过滤订阅

演示

目前仅支持 C++。

除了平台的核心功能之外,ROS的最大影响来自其可用的软件包。以下是一些在最新版本中可用的知名软件包: