整理自《PROTOCOL ANALYSIS FOR SHORT-RANGE TRANSCEIVERS》,由Antouan Anguelov, Roumen Trifonov, 和 Ognian Nakov撰写,发表在《Computer and communications engineering》期刊的2021年第15卷第1期上。论文主要关注多机器人系统(MRS)中的局部通信协议,并探讨了在光和声音介质上基于短程无线收发器的混合通信协议。
- 多机器人系统(MRS):在群体应用中,移动机器人之间的通信是必要的,有时甚至是关键的。
- 群体(Swarm):由对等网络代理组成的系统,形成去中心化和分布式的计算和存储群组。
- 通信基础设施:可能在某些时候受损或中断,要求移动机器人形成自组织网络。
3.4 应用层(APPLICATION LAYER)
实时通信的重要性
- 机器人应用,如远程控制机器人,需要实时响应和分布式容错网络,以确保在关键应用中的正常运行。
- 通信延迟可能导致不良后果,尤其是在涉及重型或快速移动机器人的情况下。
协议对比
-
MAVLink
- 轻量级通信协议,用于无人机之间的通信以及无人机组件之间的串行接口通信。
- 适用于点对点(PtP)通信。
-
XRCE-DDS (Micro XRCE-DDS)
- 针对资源受限设备和XRCE代理(服务器)之间的客户端-服务器协议。
- 允许具有睡眠/唤醒周期的资源协作机器人通过有限带宽网络访问DDS全局数据空间。
- 使用状态端点以尽可能减小消息大小,违反了幂等性原则。
-
RTPS (Real-Time Publish-Subscribe)
- OMG的DDS标准的底层协议,旨在使用发布/订阅模式实现可扩展、实时、可靠、高性能和互操作的数据通信。
- Fast RTPS是RTPS协议的最新版本和最小DDS API的轻量级跨平台实现。
-
MQTT-SN (MQ Telemetry Transport for Sensor Nodes)
- 为物联网设备设计的轻量级通信协议,适用于机器对机器通信。
- 支持通过消息总线(如发布/订阅机制)和主题注册控制消息分发。
- 提供三种服务质量(QoS)级别:
- 至多一次(QoS 0):不使用重传。
- 至少一次(QoS 1):使用消息标识符进行确认,未收到确认时重传。
- 精确一次(QoS 2):需要两次消息交换,确保消息可靠传递但引入了一些开销。
-
MQTT
- 为物联网设计的轻量级消息协议,适用于机器对机器通信。
- MQTT-SN是MQTT的变种,专为受限传感器网络设计,增加了错误状态等改进。
协议特性
- 基础设施:MAVLink适用于点对点通信,而DDS和XRCE适用于点对点和多点通信。
- 传感器/通信:所有协议都支持板载和非板载传感器/通信。
- 网络角色:MAVLink和Ros serial可以作为中央/地面控制站(GCS)的角色,而DDS和XRCE作为代理/客户端。
- 平台:所有协议都支持多平台。
- 类型:MAVLink使用UDP/TCP/串行,Ros serial使用串行/TCP,DDS使用UDP/TCP/串行或共享内存(SHM)。
- 长距离/无线:MAVLink支持长距离/无线通信,而其他协议未明确说明。
- 服务质量(QoS):MAVLink和DDS支持QoS,而其他协议未明确说明。
- 领域:MAVLink适用于无人机/GCS领域,DDS适用于多领域。
- 协议方言:MAVLink和XRCE支持方言,而其他协议未明确说明。
- 编程语言:所有协议都支持多种编程语言。
- 安全性:MAVLink和XRCE支持安全性,而其他协议未明确说明。
- 最大系统数量:MAVLink支持最多255个系统,其他协议未明确说明。
结论
论文提出,尽管存在一些限制,如R2R通信尚处于发展阶段,雾计算和基于雾的通信刚刚兴起,但这项研究为进一步的实验和实现提供了新的思路。论文强调了对这一领域进一步研究的迫切需求,并指出了当前研究中的一些局限性,例如大多数网络协议仅在节点数量较少时才有效,以及短程数据传输协议领域尚未成为当前研究的焦点。
通过这一节的分析,我们可以看到,不同的通信协议在多机器人系统中有着不同的应用场景和优势,选择合适的协议对于实现高效、可靠的通信至关重要。