Eclipse Cyclone DDS

Eclipse Cyclone DDS是一个非常高效和稳健的开源DDS实现。Cyclone DDS是作为Eclipse IoT项目完全公开开发的。另请参阅:https://projects.eclipse.org/projects/iot.cyclonedds

先决条件

已安装 rosdep

安装软件包

最简单的方式是从ROS 2的apt仓库安装。

sudo apt install ros-humble-rmw-cyclonedds-cpp

从源代码构建

从源代码构建也是安装的另一种方式。

首先,在ROS 2工作空间源目录中克隆Cyclone DDS和rmw_cyclonedds。

cd ros2_ws/src
git clone https://github.com/ros2/rmw_cyclonedds ros2/rmw_cyclonedds -b humble
git clone https://github.com/eclipse-cyclonedds/cyclonedds eclipse-cyclonedds/cyclonedds

然后,安装Cyclone DDS所需的包。

cd ..
rosdep install --from src -i

最后,运行colcon build。

colcon build --symlink-install

切换到rmw_cyclonedds。

通过指定环境变量,从其他rmw切换到rmw_cyclonedds。

export RMW_IMPLEMENTATION=rmw_cyclonedds_cpp

参见:使用多个RMW实现

运行发布者和订阅者

现在运行 talkerlistener 来测试Cyclone DDS。

ros2 run demo_nodes_cpp talker
ros2 run demo_nodes_cpp listener