2. 工业现场设备通信需求分析

在工业现场,通信设计的第一步不是选协议,而是把“谁和谁交换什么数据、多久交换一次、允许多大抖动、占多少带宽”梳理清楚。Anybus 网关、嵌入式通信模块或协议转换器的选型,最终都要回到这四类需求:数据流方向与内容、实时性等级、确定性要求、带宽占用。本节以一条典型的“传感器—PLC—驱动器—上位系统”链路为对象,逐层拆解需求分析方法。

一、先画数据流:四类角色与三个方向

工业现场设备按数据角色可分为四类:现场输入设备(传感器、编码器、按钮)、现场输出/执行设备(驱动器、伺服、阀岛)、控制器(PLC、运动控制器)、上位系统(SCADA、MES、数据库、云平台)。它们之间的数据流并非单一方向,而是三条并行的通道:

  • 控制通道(PLC ↔ 驱动器/IO):周期性过程数据,如控制字、速度给定、状态字、实际位置,要求周期短、抖动小。
  • 采集通道(传感器 → PLC):过程量、状态量,周期从 1 ms 到 100 ms 不等,部分为事件触发。
  • 监控通道(PLC → 上位系统):批量数据、报警、趋势、配方,周期通常 100 ms~1 s,允许较大抖动,但数据量可能很大。

这三条通道对通信的要求差异极大,若用同一套参数去设计,往往导致控制通道被监控流量拖累,或监控通道因过度追求实时性而浪费成本。因此需求分析必须分通道进行。

工业现场四类角色与三条数据通道 传感器/编码器 过程量·状态量 驱动器/伺服 控制字·给定·反馈 PLC/运动控制器 周期任务·扫描周期 1 ms ~ 20 ms 上位系统 SCADA/MES/云 100 ms ~ 1 s 采集通道 1~100 ms 控制通道 0.5~4 ms 监控通道 100 ms~1 s 需求维度: 数据方向与内容 实时性等级 确定性(抖动) 带宽占用 三条通道并行,参数差异大,必须分通道设计,避免相互拖累。

二、实时性:不是“越快越好”,而是分级匹配

实时性指数据从产生到被消费的最大允许时间。工业中通常分为三级:

等级典型周期典型对象超时后果
硬实时0.25~4 ms伺服使能、位置环、安全信号设备失控、机械损伤
软实时5~50 msPLC 逻辑 IO、变频器给定产品质量波动、节拍下降
非实时100 ms~数秒趋势、报警、配方、报表仅影响监控体验

以一台 8 轴伺服系统为例:位置环周期 1 ms,若采用 EtherCAT 或 PROFINET IRT,通信周期需 ≤ 1 ms;而同一台设备的状态字上传到 SCADA,周期 200 ms 即可。若把两者放在同一通道且不区分优先级,SCADA 的大报文会挤占控制报文,导致抖动超标。Anybus 网关在此处的价值,正是把不同实时性等级的数据分流到不同协议域,例如控制侧走 PROFINET IRT,监控侧走 Modbus TCP 或 OPC UA。

三、确定性:抖动比平均延迟更关键

确定性指通信延迟的可预测性,通常用抖动(jitter)衡量。一个平均延迟 2 ms、抖动 ±0.1 ms 的链路,比平均延迟 1 ms、抖动 ±3 ms 的链路更适合硬实时控制。原因在于:控制器按固定周期采样,若数据到达时间波动过大,要么等待(降低节拍),要么使用旧数据(降低精度)。

影响确定性的因素包括:交换机排队、非实时流量抢占、协议栈软件调度、无线链路重传。设计时应做到:

  • 控制通道使用支持优先级或时间片调度的机制(如 PROFINET IRT、EtherCAT 分布式时钟、TSN)。
  • 监控通道与配置/诊断流量限速,避免突发大包。
  • 网关内部为控制方向设置独立缓冲与转发优先级,不让上位轮询阻塞过程数据。

四、带宽:先算“有效载荷”,再留余量

带宽需求不能只看应用层数据量,还要计入协议头、周期开销和重传。以一条 PROFINET IO 链路为例,假设 16 个 IO 设备,每个设备每周期交换 32 字节输入 + 32 字节输出,周期 1 ms:

应用层有效载荷 = 16 × (32 + 32) B = 1024 B/周期
每秒有效载荷 = 1024 B × 1000 = 1.024 MB/s ≈ 8.2 Mbit/s
计入以太网帧头、VLAN、RT 头、FCS 及帧间隙(约 30%~50% 开销)
实际线路速率需求 ≈ 11 ~ 12 Mbit/s
百兆链路余量充足,千兆链路可支持更大规模或更短周期

若同一链路上再叠加 200 ms 周期的 SCADA 采集,每周期读取 500 个变量、每变量 8 字节,则额外约 2 KB/200 ms = 10 KB/s ≈ 0.08 Mbit/s,占比很小,但若采用逐点轮询而非批量读取,请求/响应头开销可能放大 5~10 倍,必须按批量方式设计。

带宽估算口诀:先算有效载荷,再乘 1.5~2 倍协议开销,最后留 30% 余量。控制通道按最坏情况(所有设备同时响应)计算,监控通道按平均流量计算。

五、把需求落到一张“通信需求表”

完成上述分析后,建议为每个通信关系填写一行需求记录,作为后续协议选型、网关配置和网络规划的输入。示例:

源目标数据内容方向周期抖动要求有效载荷通道
伺服1PLC状态字+实际位置上行1 ms≤ ±0.1 ms16 B控制
PLC伺服1控制字+位置给定下行1 ms≤ ±0.1 ms16 B控制
温度传感器PLC温度值上行50 ms≤ ±5 ms4 B采集
PLCSCADA趋势+报警上行200 ms≤ ±50 ms2 KB监控

这张表一旦确定,Anybus 网关的协议映射、数据区大小、更新周期和优先级配置就有了明确依据。例如控制通道映射到 PROFINET IRT 的实时通道,采集通道映射到标准 IO,监控通道映射到 OPC UA 或 Modbus TCP 的独立连接。若某行需求无法被所选协议满足,应在设计阶段调整周期或拆分通道,而不是在现场调试时反复试错。

常见误区:把“通信周期”等同于“PLC 扫描周期”。两者相互独立,通信周期应小于等于扫描周期的 1/2~1/3,才能保证每个扫描周期都能拿到新数据。若通信周期大于扫描周期,PLC 会重复读取同一份旧数据,控制精度下降。

综上,工业现场通信需求分析的核心是:按通道分类、按等级定实时性、按抖动定确定性、按载荷算带宽。只有先把这四件事量化,Anybus 多协议通信设计才有可靠的输入,后续的协议选型、网关配置和网络拓扑才不会建立在猜测之上。