Beta 2 (r2b2)

支持的平台

我们在三个平台上支持 ROS 2 Beta 2:Ubuntu 16.04 (Xenial)、macOS 10.12 (Sierra) 和 Windows 10。

我们为所有 3 个平台提供二进制包和如何从源代码编译的说明(请参阅“安装说明 <../../Installation>”以及“文档 <https://docs.ros2.org/beta2/>”__)。

功能

自 Beta 1 发布以来的改进

  • DDS_Security 支持(又名 SROS2,请参阅 sros2

  • 适用于 Ubuntu Xenial 的 Debian 软件包

  • Typesupport 已重新设计,因此您只需构建一个可执行文件,并可以通过设置环境变量来选择可用的 RMW 实现之一(请参阅 documentation)。

  • 节点和主题的命名空间支持(请参阅 design article,请参阅下面的已知问题)。

  • 一组使用可扩展 ros2 命令的命令行工具(参见 概念文章)。

  • 一组用于在 C/C++ 中记录消息的宏(参见 rcutils 的 API 文档)。

新的演示应用程序

先前 Alpha/Beta 版本中的精选功能

有关完整列表,请参阅“早期版本说明 <../index>”。

  • ROS 2 客户端库的 C++ 和 Python 实现,包括以下 API:

  • 发布和订阅 ROS 主题

  • 请求和回复 ROS 服务(同步(仅限 C++)和异步)

  • 获取和设置 ROS 参数(仅限 C++、同步和异步)

  • 计时器回调

  • 支持多个 DDS/RTPS 实现之间的互操作性

  • eProsima Fast RTPS 是我们的默认实现,包含在二进制包中

  • 支持 RTI Connext:从源代码构建以试用

  • 我们最初支持 PrismTech OpenSplice,但目前暂停对它的支持

  • 网络事件的图形 API

  • 分布式发现

  • 使用兼容 DDS 实现发布和订阅的实时安全代码路径(目前只有 Connext)

  • 支持自定义分配器

  • ROS 1 <-> ROS 2 动态桥节点

  • 执行器线程模型(仅限 C++)

  • 用于组合节点的组件模型编译 / 链接 / 运行时

  • 使用标准生命周期管理组件

  • 扩展 .msg 格式并添加新功能:

  • 有界数组

  • 默认值

已知问题

  • 我们正在跟踪各种存储库中的问题,但主要入口点是 ros2/ros2 问题跟踪器

  • 我们想强调一个 已知问题,我们正在调查该问题,该问题不允许两个具有相同基本名称但不同命名空间的主题在使用 rmw_connext_cpp 时具有不同的类型。

  • 具有长响应的服务无法与 Fast-RTPS 配合使用。此修复程序虽然不是 beta2 的一部分,但可在上游获得,因此您可以使用 Fast-RTPS 主分支从源代码构建来解决此问题。