2. 机器人通信基础

机器人安全通信测试与验证的第一步,不是直接去抓包或写测试用例,而是先建立一张“通信地图”:数据从哪个传感器产生,经过哪条总线或网络,最终到达哪个控制器或云端,中间又经过哪些协议转换与安全边界。只有把系统架构、通信介质和协议栈看清楚,后续的时延、抖动、丢包、完整性与功能安全测试才有明确的观测点。

一、机器人系统架构:分层与通信域

典型机器人系统可以按“感知—决策—执行—交互”划分为四层,每层对应不同的通信需求。感知层包含激光雷达、深度相机、编码器、力矩传感器和IMU,数据量大、周期性强;决策层由工控机、运动规划器和安全PLC组成,强调确定性与实时性;执行层包括伺服驱动器、关节电机、夹爪和液压阀,要求微秒到毫秒级的同步;交互层则涵盖HMI、示教器、MES/WMS以及云端运维平台,更关注互操作性与远程可观测性。

从通信视角看,这四层天然形成多个“通信域”:实时控制域、传感数据域、人机交互域和外部信息域。安全通信测试必须区分这些域,因为不同域的失效后果不同——控制域丢一帧可能导致急停失效,而交互域短暂断连通常只影响监控显示。

核心判断:先确定被测对象属于哪个通信域,再选择对应的总线、协议与测试指标,避免用IT网络的测试方法去评价实时控制网络。

二、通信总线:从现场总线到实时串行链路

机器人内部大量使用现场总线与实时串行链路。CAN/CANopen成本低、抗干扰强,常见于移动机器人底盘和电池管理系统;EtherCAT以“飞读飞写”方式实现高同步,广泛用于多轴伺服;PROFINET IRT和POWERLINK提供等时同步实时能力;RS-485/Modbus RTU则多用于简单传感器与执行器。它们共同的特点是:周期通信、主从或生产者-消费者模型、对抖动敏感。

测试这类总线时,关键参数包括周期时间、抖动、同步偏差、总线负载率和错误帧计数。例如EtherCAT的分布式时钟同步偏差通常要求小于1微秒,而CAN总线负载率超过70%后错误帧概率会显著上升。

# EtherCAT 主站周期与同步检查示例(伪代码)
cycle_time      = 1000 us
dc_sync_window  = 1 us
bus_load        = 42 %
working_counter  = 0x0000  # 正常
# 若 working_counter 异常,优先检查从站供电与拓扑

三、工业以太网与无线通信:有线确定性与无线灵活性

工业以太网在机器人中承担“骨干”角色。标准TCP/IP适合非实时数据,如日志、配置和视觉图像;TSN通过时间感知调度和帧抢占,把以太网推向确定性传输;EtherCAT、PROFINET等则直接在以太网物理层上构建实时协议。测试时要区分“协议实时”与“物理层实时”,因为交换机排队、网卡中断合并和CPU调度都会引入额外抖动。

无线通信为移动机器人、AGV和远程操控提供了灵活性,但代价是链路质量波动。Wi-Fi 6在低时延和并发方面有改进,5G URLLC面向工业低时延场景,蓝牙和ZigBee多用于低带宽传感。无线测试必须关注RSSI、信噪比、重传率、漫游切换时间和信道干扰,而不能只看平均吞吐量。

通信方式典型周期/时延确定性典型机器人场景
CAN/CANopen1–10 ms中底盘、BMS、低轴数控制
EtherCAT0.1–1 ms高多轴伺服、分布式IO
PROFINET IRT0.25–1 ms高产线机器人、安全PLC
标准以太网/TCP1–100 ms低视觉图像、日志、配置
Wi-Fi 65–50 ms低–中AGV、远程监控
5G URLLC1–10 ms中–高远程操控、云化控制

四、主流协议概览与安全通信关注点

机器人通信协议可分为三类:实时控制协议(EtherCAT、PROFINET、POWERLINK、CANopen)、消息中间件(ROS 2 DDS、MQTT、OPC UA)和安全协议(CIP Safety、PROFIsafe、FSoE)。ROS 2基于DDS,提供发布/订阅与QoS策略,适合研究与非硬实时场景;OPC UA over TSN正在成为工业互操作与安全传输的重要方向;MQTT轻量,适合云端遥测,但默认不保证实时与强安全。

安全通信测试的核心关注点包括:完整性(帧是否被篡改)、新鲜性(是否重放)、真实性(身份是否可信)、时效性(是否超时)以及降级行为(链路断开后是否进入安全状态)。例如FSoE在EtherCAT上传输安全数据时,使用看门狗和连接ID来检测超时与错连。

常见误区:把“通信正常”等同于“安全通信正常”。普通Ping通或MQTT收到消息,只能说明链路可达,不能证明安全功能在超时、丢包、重放和乱序条件下仍然有效。

五、案例场景:AGV通信链路排查

某AGV在产线运行中偶发急停,日志显示安全PLC与驱动器之间的EtherCAT从站短暂失联。排查发现,无线AP切换导致上层调度指令延迟,进而使安全PLC看门狗超时。复盘结论是:安全通信测试不能只测有线段,必须把无线漫游、上层调度和安全看门狗纳入同一条时间线。测试时应记录从“无线切换开始”到“安全状态触发”的完整时序,并验证切换时间是否小于安全超时阈值。

机器人通信分层架构与协议映射 感知层 激光雷达 / 相机 / IMU 编码器 / 力矩传感器 决策层 工控机 / 运动规划 安全PLC / 控制器 执行层 伺服驱动器 / 电机 夹爪 / 液压阀 交互层 HMI / 示教器 MES / 云端 通信域:实时控制域(强确定性) | 传感数据域(高带宽) | 人机交互域(互操作) | 外部信息域(远程/云) 实时控制协议 EtherCAT / PROFINET IRT POWERLINK / CANopen 周期:0.1–10 ms 关注:抖动、同步、负载率 消息中间件与互操作 ROS 2 DDS / OPC UA MQTT / REST / gRPC QoS:可靠 / 尽力 / 实时 关注:发现、序列化、安全 安全通信协议 FSoE / PROFIsafe CIP Safety / openSAFETY 看门狗 / 连接ID / CRC 关注:完整性、新鲜性、时效 有线链路 工业以太网 / TSN / 现场总线 优势:确定性、抗干扰、低抖动 测试:周期、同步偏差、错误帧 无线链路 Wi-Fi 6 / 5G URLLC / 蓝牙 优势:灵活、移动、易部署 测试:RSSI、重传、漫游切换 安全通信测试主线:完整性 → 新鲜性 → 真实性 → 时效性 → 降级行为

把这张图作为测试设计的起点:先定位被测通信所在的层与域,再确认它使用的协议族,最后针对该协议的安全机制设计异常注入与边界测试。这样,后续的时延测试、丢包测试、重放测试和故障注入才不会变成零散的操作,而是围绕同一张通信地图展开的系统验证。