阿尔法版本
目录
这是ROS 2的8个阿尔法版本之前分开页面的合并版本。
我们希望您尝试它们,并提供反馈。请访问 这个页面。
ROS 2 alpha8发布(代号为*Hook-and-Loop*;2016年10月)
对支持的DDS供应商进行了更改
ROS 2支持多种中间件实现(更多详细信息请参阅`此页面 <../../Concepts/Intermediate/About-Different-Middleware-Vendors>`)。直到 Alpha 8,ROS 2支持eProsima的Fast RTPS、RTI的Connext和PrismTech的OpenSplice等ROS中间件实现。为了简化我们的工作,从 Alpha 8 开始,将支持 Fast RTPS 和 Connext(静态),其中 Fast RTPS (现在是 Apache 2.0 许可的)将作为默认选项提供。
范围
正如"alpha"限定词所示,这个ROS 2版本还远未完成。您不应期望从ROS 1切换到ROS 2,也不应期望使用ROS 2构建新的机器人控制系统。相反,您应该尝试一些演示,探索代码,也许编写自己的演示。
此版本中包含的改进内容有:
对Fast RTPS及其rmw实现进行了多项改进
Fast RTPS支持大型(图像)消息
Fast RTPS中添加了``wait_for_service``功能
Python和C语言中支持所有ROS 2消息类型
在Python中添加了对服务质量(QoS)设置的支持
修复了上一个 alpha 版本中的各种错误
几乎没有列出的任何内容都不包含在此版本中。下一步在 Roadmap 中有详细说明。
ROS 2 alpha7 发布(代号 Glue Gun; 2016 年 7 月)
目录
需要新版本的 Ubuntu
到 Alpha 6 为止,ROS 2 的目标是 Ubuntu Trusty Tahr(14.04)。从此 Alpha 版本开始,ROS 2 的目标是 Ubuntu Xenial Xerus(16.04),以利用更新的编译器、CMake、Python 等版本。
ROS 2 alpha6 发布(代号 Fastener;2016 年 6 月)
目录
范围
正如"alpha"限定词所示,这个ROS 2版本还远未完成。您不应期望从ROS 1切换到ROS 2,也不应期望使用ROS 2构建新的机器人控制系统。相反,您应该尝试一些演示,探索代码,也许编写自己的演示。
此版本中包含的主要特性有:
图形 API 功能:等待服务
为等待图形变化的节点添加了图形保护条件
添加了``rmw_service_server_is_available``用于验证服务是否可用
重构了``rclcpp``以使用``rcl``
改进了Python中对复杂消息类型的支持
嵌套消息
数组
字符串
几乎没有列出的任何内容都不包含在此版本中。下一步在 Roadmap 中有详细说明。
ROS 2 alpha4 发布(代号 Duct tape;2016年2月)
背景
正如在一篇`设计文章<https://design.ros2.org/articles/why_ros2.html>`__中解释的那样,我们正在开发ROS的一个新的主要版本,称为“ROS 2”。虽然底层概念(例如发布/订阅消息)和目标(例如灵活性和可重用性)与ROS 1相同,但我们借此机会对系统进行了重大更改,包括更改一些核心API。有关这些更改及其理由的更深入的处理,请参阅其他的`ROS 2设计文章<https://design.ros2.org>`__。
状态
在2016年2月17日,我们发布了ROS 2 alpha4,代号为**Duct tape**。我们此次发布的主要目标是增加更多功能,同时解决了之前版本的反馈意见。为此,我们构建了一组`演示示例<../../Tutorials>`,展示了ROS 2的一些关键特性。我们鼓励您尝试这些演示示例,查看实现它们的代码,并提供反馈意见<../../Contact>。我们特别想知道我们在解决对您重要的用例方面表现得如何(好或不好)。
范围
正如"alpha"限定词所示,这个ROS 2版本还远未完成。您不应期望从ROS 1切换到ROS 2,也不应期望使用ROS 2构建新的机器人控制系统。相反,您应该尝试一些演示,探索代码,也许编写自己的演示。
此版本中包含的主要特性有:
改进的类型支持基础设施,包括对C的支持
初步的Python客户端库,仅支持发布者和订阅者。请注意,API可能会发生变化,并且远未完成!
在C API中添加了ROS时间的结构(仍需要C++ API)。
ROS时间的新概念是可扩展的“时间源”,默认的时间源将类似于ROS 1(实现待定)。
几乎没有列出的任何内容都不包含在此版本中。下一步在 Roadmap 中有详细说明。
发布了ROS 2 alpha3版本(代号*Cement*;2015年12月)。
背景
正如在一篇`设计文章<https://design.ros2.org/articles/why_ros2.html>`__中解释的那样,我们正在开发ROS的一个新的主要版本,称为“ROS 2”。虽然底层概念(例如发布/订阅消息)和目标(例如灵活性和可重用性)与ROS 1相同,但我们借此机会对系统进行了重大更改,包括更改一些核心API。有关这些更改及其理由的更深入的处理,请参阅其他的`ROS 2设计文章<https://design.ros2.org>`__。
状态
于2015年12月18日发布了ROS 2 alpha3版本,代号**Cement**。我们在这个版本中的主要目标是添加更多功能,同时解决之前版本收到的反馈。为此,我们构建了一组`演示 <../../Tutorials>`,展示了ROS 2的一些关键功能。我们鼓励您尝试这些演示,查看实现它们的代码,并`提供反馈 <../../Contact>`。我们特别希望了解我们在多大程度上满足了您重要的使用案例。
范围
正如"alpha"限定词所示,这个ROS 2版本还远未完成。您不应期望从ROS 1切换到ROS 2,也不应期望使用ROS 2构建新的机器人控制系统。相反,您应该尝试一些演示,探索代码,也许编写自己的演示。
此版本中包含的主要特性有:
更新了``rcl``接口。
这个接口将被包装,以创建语言绑定,例如
rclpy
。这个接口在文档和测试覆盖方面比我们目前已有的接口有所改进,例如
rmw
和rclcpp
。请参阅 rcl headers。
在 rclcpp 中增加了对使用 TLSF(两级分离适配器)内存分配器的支持,这是一种为嵌入式和实时系统设计的内存分配器。
提高了 MultiThreadedExecutor 的效率,并修复了多线程执行中的许多错误,现在已经在 CI 上进行了测试。
增加了在 spin 中从回调函数内部取消 Executor 的能力。
通过支持接受对自身的引用作为函数参数的定时器回调,添加了定时器自我取消的功能。
添加了禁止多个线程进入Executor::spin的检查。
提高了许多测试的可靠性,这些测试以前会间断性地失败。
添加了使用Fast RTPS的支持(而不是使用OpenSplice或Connext等)。
部分移植了tf2,包括核心库和核心命令行工具。
几乎没有列出的任何内容都不包含在此版本中。下一步在 Roadmap 中有详细说明。
ROS 2 alpha2发布(代号 Baling wire;2015年10月)。
背景
正如在一篇`设计文章<https://design.ros2.org/articles/why_ros2.html>`__中解释的那样,我们正在开发ROS的一个新的主要版本,称为“ROS 2”。虽然底层概念(例如发布/订阅消息)和目标(例如灵活性和可重用性)与ROS 1相同,但我们借此机会对系统进行了重大更改,包括更改一些核心API。有关这些更改及其理由的更深入的处理,请参阅其他的`ROS 2设计文章<https://design.ros2.org>`__。
ROS 2 alpha1版本发布(代号为*Anchor*;2015年8月)
背景
正如在一篇`设计文章<https://design.ros2.org/articles/why_ros2.html>`__中解释的那样,我们正在开发ROS的一个新的主要版本,称为“ROS 2”。虽然底层概念(例如发布/订阅消息)和目标(例如灵活性和可重用性)与ROS 1相同,但我们借此机会对系统进行了重大更改,包括更改一些核心API。有关这些更改及其理由的更深入的处理,请参阅其他的`ROS 2设计文章<https://design.ros2.org>`__。
状态
2015年8月31日,我们发布了ROS 2 alpha1版本,代号为**Anchor**。我们此次发布的主要目标是让您有机会了解ROS 2的工作原理,特别是与ROS 1的区别。为此,我们构建了一组`演示示例 <../../Tutorials>`,展示了ROS 2的一些关键特性。我们鼓励您尝试这些演示示例,查看实现它们的代码,并`提供反馈 <../../Contact>`。我们特别希望了解我们在解决对您重要的用例方面做得如何(好或差)。
范围
正如"alpha"限定词所示,这个ROS 2版本还远未完成。您不应期望从ROS 1切换到ROS 2,也不应期望使用ROS 2构建新的机器人控制系统。相反,您应该尝试一些演示,探索代码,也许编写自己的演示。
此版本中包含的主要特性有:
发现、传输和序列化`使用DDS <https://design.ros2.org/articles/ros_on_dds.html>`__
支持`多个DDS供应商 <https://design.ros2.org/articles/ros_on_dds.html#vendors-and-licensing>`__
支持消息传递原语:主题(发布/订阅)、服务(请求/响应)和参数
支持Linux(Ubuntu Trusty)、OS X(Yosemite)和Windows(8)
`在"裸机"微控制器上运行ROS 2(无操作系统)<https://github.com/ros2/freertps/wiki>`__
`在ROS 1和ROS 2之间进行通信桥接<https://github.com/ros2/ros1_bridge/blob/master/README.md>`__
几乎没有列出的任何内容都不包含在此版本中。下一步在 Roadmap 中有详细说明。