ROS2与Fast-RTPSROS2与Fast-RTPS
http://www.brixbot.com/ros2/fast_rtps-01-introduce_dds/
对ROS 2有所了解的人都知道,ROS 2相对于ROS 1最主要的一个变化就是DDS的引入。ROS 2的官方wiki上已经给出了引入DDS的原因和动机,总结起来有以下几点:
- 使用第三方成熟的DDS作为ROS底层通讯和相关核心功能的框架可以极大减轻ROS 2的开发工作量。简单来说就是可以偷懒了。
- DDS也是采用发布/订阅机制进行网络通讯,这样就和ROS 1的通讯机制一样了。可以维持通讯架构不发生大的变化
- ROS 1有个老祖宗roscore,这玩意管理着整个ROS网络的节点。但这老家伙时不时就抽风,导致ROS不稳定
- 基于DDS的发布订/阅机制,新的节点可以被同一个DDS网络中的其它节点发现。也就是去中心化。
- 然后就是DDS的一些特性可以自己拿来用比如高实时性、序列化支持、QoS等等
eProsima Fast RTPS官网
DDS and ROS middleware implementations
ROS on DDS