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)
Windows 10与Visual Studio 2017
特性
这个ROS 2版本的新功能有:
全新的启动系统 具备更强大和灵活的Python API。
参数可以作为 命令行参数 传递给 C++ 可执行文件。
通过 命令行参数 进行静态重映射。
Python 客户端库进行了各种改进。
支持发布和订阅序列化数据。这是为即将到来的对本机 rosbag 实现的工作奠定的基础。
更多的`命令行工具 <../../Concepts/Basic/About-Command-Line-Tools>`,例如用于处理参数和生命周期状态的工具。
二进制软件包/大型存档默认支持三种 RMW 实现(无需从源代码构建):
eProsima's Fast RTPS(默认)
RTI's Connext
ADLINK's OpenSplice
要查看所有可用功能的概述,包括早期版本的功能,请参阅`功能<../../The-ROS2-Project/Features>`页面。
与Ardent版本发布相比的变化
与`Ardent Apalone <Release-Ardent-Apalone>`版本发布相比的变化:
Python包``launch``已经重新设计。先前的Python API已经移动到一个子模块``launch.legacy``中。如果不希望迁移到新的Python API,您可以更新现有的launch文件以继续使用旧的API。
包含命名空间的ROS话题名称被映射到包括命名空间的DDS话题中。不再使用DDS分区。
推荐的构建工具现在是``colcon``,而不是``ament_tools``。对每个ROS 2包中的代码没有`影响 <https://design.ros2.org/articles/build_tool.html#implications>`__。已更新安装说明,
read-the-docs页面 <https://colcon.readthedocs.io/en/main/migration/ament_tools.html>`__描述了如何将现有的``ament_tools``调用映射到``colcon`
。修改了`此rclcpp::Node::create_subscription()签名的参数顺序 <https://docs.ros2.org/bouncy/api/rclcpp/classrclcpp_1_1_node.html#a283fb006c46470cf43a4ae5ef4a16ccd>`__。
已知问题
新式launch文件在某些平台和RMW实现的组合中`可能在关闭时挂起 <https://github.com/ros2/launch/issues/89>`__。
当针对特定节点进行命名空间的静态重映射时,可能`无法正常工作 <https://github.com/ros2/rcl/issues/262>`__。
使用
ros2 param
和ros2 lifecycle
命令行工具时,可能会打印出 Opensplice 错误信息。