Bouncy Bolson (bouncy
)
Bouncy Bolson 是 ROS 2 的第二个版本。
支持的平台
此版本的 ROS 2 支持四个平台(有关完整详细信息,请参阅 REP 2000):
Ubuntu 18.04 (Bionic)
适用于 amd64 和 arm64 的 Debian 软件包
Ubuntu 16.04 (Xenial)
没有 Debian 软件包,但支持从源代码构建
Mac macOS 10.12 (Sierra)
带有 Visual Studio 2017 的 Windows 10
提供了二进制软件包以及如何从源代码编译的说明(请参阅 安装说明 以及 `文档<https://docs.ros2.org/bouncy/>`__)。
功能
此 ROS 2 版本中的新功能
新启动系统 具有更强大、更灵活的 Python API。
参数可以作为 命令行参数 传递给 C++ 可执行文件。
通过 命令行参数 进行静态重新映射。
对 Python 客户端库进行各种改进。
支持发布和订阅序列化数据。
这是即将开展的实现原生 rosbag 工作的基础。 * 更多 命令行工具,例如用于处理参数和生命周期状态。 * 二进制包/fat 存档默认支持三种 RMW 实现(无需从源代码构建):
eProsima 的 Fast RTPS(默认)
RTI 的 Connext
ADLINK 的 OpenSplice
有关所有可用功能的概述,包括早期版本的功能,请参阅“功能 <../../The-ROS2-Project/Features>”页面。
自 Ardent 发布以来的变化
自“Ardent Apalone <Release-Ardent-Apalone>”发布以来的变化:
Python 包“launch”已重新设计。
以前的 Python API 已移至子模块“launch.legacy”。 如果不希望过渡到新的 Python API,您可以更新现有的启动文件以继续使用旧版 API。 * 包含命名空间的 ROS 主题名称被映射到 DDS 主题(包括其命名空间)。 DDS 分区不再用于此目的。 * 推荐的构建工具现在是“colcon”,而不是“ament_tools”。 此切换对每个 ROS 2 包中的代码没有“影响<https://design.ros2.org/articles/build_tool.html#implications>”__。 安装说明已更新,“阅读文档页面<https://colcon.readthedocs.io/en/main/migration/ament_tools.html>”__ 描述了如何将现有的“ament_tools”调用映射到“colcon”。 * 此 rclcpp::Node::create_subscription() 签名 的参数顺序已修改。
已知问题
对于某些平台和 RMW 实现的组合,新式启动文件 可能会在关闭时挂起。
当寻址到特定节点时,命名空间的静态重新映射 无法正常工作。
使用“ros2 param”和“ros2 lifecycle”命令行工具时,可能会打印 Opensplice 错误消息<https://github.com/ros2/rmw_opensplice/issues/237>`__。