eclipse-zenoh/zenoh-plugin-ros2dds
A Zenoh plug-in for ROS2 with a DDS RMW. See https://discourse.ros.org/t/ros-2-alternative-middleware-report/ for the advantages of using this plugin over other DDS RMW implementations.
解决的问题
此项目提供一个桥接器,让 ROS 2(机器人操作系统)的通信可以通过 Zenoh 路由。它解决了标准 ROS 2 DDS(数据分发服务)中间件中常见的问题,例如无线连接问题、带宽限制,以及跨不同网络的集成困难。
工作原理
此桥接器作为 ROS 2 DDS 协议与 Zenoh 协议之间的转换层。它可以部署为 Zenoh 路由器的动态库(插件),或作为独立可执行文件。它通过 UDP 多播(使用 CycloneDDS)发现 ROS 2 节点、主题、服务和动作,并将它们映射到 Zenoh 资源。
主要机制包括:
- 命名空间映射:它可以在桥接器级别为 ROS 2 名称添加特定命名空间前缀,避免在管理多个机器人时发生冲突,而无需配置每个单独的 ROS 节点。
- 连接模式:它支持路由器和点对点模式,用于管理桥接器在网络中的连接方式。
- 管理空间:它通过 Zenoh 管理空间公开内部状态(例如发现的节点和路由),以供监控。
适用对象
使用 ROS 2 的机器人开发人员和操作人员,需要在不稳定的无线链路上传输机器人数据,或将多个机器人集成到单一监控系统中。
亮点
- ROS 2 集成:完整支持 ROS 主题、服务和动作,确保与标准 ROS 2 工具(如
ros2CLI 和rviz2)兼容。 - 灵活部署:可作为独立桥接器或 Zenoh 路由器插件使用。
- 简化的多机器人管理:桥接器级别的命名空间配置简化了多个机器人数据的隔离。
- 高效发现:与标准 DDS 桥接器相比,发现信息的交换更为紧凑。
相关
- 项目
- 项目
- 项目
- 项目