2. 制造时序数据源与采集层设计

制造现场的时序数据并非来自单一系统,而是由设备控制层、过程监控层、业务管理层和边缘接入层共同产生。设计采集层时,首先要区分“数据在哪里产生、以什么协议暴露、由谁负责转发”,再决定接入方式和采集频率。若把 PLC、SCADA、传感器、MES 和边缘网关混为一谈,后续会出现重复采集、时间戳错乱、频率不匹配和网络拥塞等问题。

一、五类数据源的定位与接入方式

PLC(可编程逻辑控制器)是设备控制的核心,数据以寄存器、线圈、数据块等形式存在。常见接入方式有三种:一是通过 Modbus TCP/RTU 直接读取保持寄存器;二是通过 OPC UA 客户端订阅变量节点;三是通过厂商专用协议(如西门子 S7、三菱 MC、欧姆龙 FINS)经驱动网关转换。PLC 数据的特点是变化快、点位固定、语义依赖地址表,因此接入前必须建立“地址—测点—单位—量程”的映射表。

SCADA(数据采集与监控系统)通常已经汇聚了 PLC 和仪表数据,并提供 OPC UA、OPC DA、数据库接口或 REST API。从 SCADA 取数的优势是语义较完整、点位已组态;劣势是 SCADA 的扫描周期和 Historian 归档周期可能成为频率上限。若 SCADA 归档周期为 1 秒,而业务需要 100 毫秒级振动数据,就不能依赖 SCADA,而应回到 PLC 或专用采集器。

传感器分为模拟量、数字量和智能传感器。模拟量(4–20 mA、0–10 V)需经 ADC 或远程 IO 采集;数字量(脉冲、开关)适合计数器模块;智能传感器(振动、温度、电流)常通过 IO-Link、RS-485/Modbus、BLE 或 MQTT 输出。传感器接入的关键是采样定理:若关注 1 kHz 以内的振动特征,采样率至少应达到 2.5 kHz,工程上常取 2–5 倍。

MES(制造执行系统)提供的是工单、批次、物料、人员、质量结果等业务事件数据,时间粒度通常是秒到分钟级。MES 数据适合通过数据库 CDC、消息队列(Kafka/RabbitMQ)或 REST 接口接入,用于给时序数据打上“批次号、工单号、产品型号”等上下文标签。MES 不产生高频波形,但它是时序数据能否被业务解释的关键。

边缘网关是采集层的执行者,负责协议转换、数据缓存、时间戳对齐、断点续传和边缘计算。网关向下连接 PLC、传感器和 SCADA,向上通过 MQTT、Kafka 或 HTTPS 将数据送入平台。网关选型要关注:支持的协议数量、并发连接数、本地缓存时长、是否支持边缘规则引擎、时间同步方式(NTP/PTP)。

制造时序数据源接入与采集频率规划示意 数据源层 PLC 寄存器/线圈/数据块 10–100 ms SCADA OPC UA / Historian 500 ms–5 s 传感器 4–20mA / IO-Link 1 ms–1 s MES 工单/批次/质量 1 s–1 min 边缘网关 协议转换/缓存/续传 接入方式 Modbus TCP/RTU 轮询读取寄存器 适合PLC/仪表 OPC UA 订阅 节点变化通知 适合PLC/SCADA MQTT / Kafka 发布订阅、异步 适合网关/传感器 REST / CDC 接口拉取或日志捕获 适合MES IO-Link / 4–20mA 适合现场传感器 采集频率规划与平台接入 高频通道(1–100 ms) 振动、电流波形、位置脉冲 边缘缓存 → Kafka → 时序库 中频通道(0.5–5 s) 温度、压力、转速、节拍 网关聚合 → MQTT → 时序库 低频通道(10 s–1 min) 工单状态、批次、OEE MES接口 → 消息队列 → 平台 时间戳与对齐要求 统一NTP/PTP,精度≤10 ms 网关打采集时间戳,平台打入库时间戳 乱序数据按事件时间窗口聚合 注:频率区间为工程参考值,实际需结合设备能力、网络带宽与业务分析需求确定

二、采集频率规划:按用途分层,而不是一刀切

采集频率不是越高越好。频率过高会带来网络带宽、存储成本和平台写入压力;频率过低则可能丢失关键特征。合理的做法是按数据用途分层规划:

  • 高频通道(1–100 ms):用于振动分析、电流波形、位置脉冲、故障录波。这类数据通常不直接全量入库,而是在边缘做特征提取(如 RMS、峰值、FFT 主频),只上传特征值和异常片段。
  • 中频通道(0.5–5 s):用于温度、压力、流量、转速、节拍等过程量。这是制造时序平台的主力数据,直接写入时序数据库,支撑趋势分析和实时看板。
  • 低频通道(10 s–1 min):用于工单状态、批次切换、OEE 统计、质量结果。这类数据变化慢,但需要与高频数据通过时间戳和批次号关联。

以某注塑机为例:合模位置采用 10 ms 采集,用于分析合模曲线;料筒温度采用 2 s 采集,用于监控加热稳定性;工单号从 MES 通过 Kafka 在换单时推送一次。三类数据进入平台后,通过设备 ID 和时间窗口关联,才能回答“哪一批产品在哪个温度区间出现了位置偏差”这类问题。

三、时间戳与数据质量

采集层最容易出问题的地方是时间戳。PLC 扫描周期、网关缓存、网络传输和平台入库各有一个时间,若不统一,后续关联分析会错位。工程上要求:现场设备与网关通过 NTP 或 PTP 同步,精度控制在 10 ms 以内;网关在采集瞬间打上事件时间戳;平台入库时再打一个接收时间戳,两者都保留。对于乱序到达的数据,按事件时间开窗聚合,而不是按到达时间。

采集频率规划建议先做一次“数据用途盘点”:每个测点问三个问题——用来做什么分析?变化有多快?丢失多久的数据可以接受?答案会直接决定采集周期、缓存策略和上传方式。

四、接入方式选择与网关配置要点

选择接入方式时,优先考虑数据源已经暴露的接口。PLC 若支持 OPC UA,优先用 OPC UA 订阅,减少轮询开销;若只支持 Modbus,则用网关轮询,但要注意轮询周期与 PLC 扫描周期的关系,避免网关请求频率高于 PLC 刷新频率。SCADA 适合取已组态的过程量,但不适合取高频原始波形。MES 数据通过接口或 CDC 接入,重点保证工单和批次信息的完整性。边缘网关的本地缓存建议至少保留 24–72 小时,以应对网络中断。

一个可参考的网关配置片段如下,用于定义采集组和上传策略:

{
  "gatewayId": "GW-LINE-A-01",
  "northbound": {
    "protocol": "MQTT",
    "broker": "mqtt://ts-platform:1883",
    "qos": 1,
    "batchSize": 500,
    "flushIntervalMs": 1000
  },
  "southbound": [
    {
      "name": "PLC-Injection-01",
      "protocol": "opcua",
      "endpoint": "opc.tcp://192.168.10.21:4840",
      "subscription": { "publishingIntervalMs": 100 },
      "tags": [
        { "nodeId": "ns=2;s=ClampPosition", "name": "clamp_pos", "unit": "mm", "deadband": 0.05 },
        { "nodeId": "ns=2;s=InjectionPressure", "name": "inj_press", "unit": "bar", "deadband": 0.2 }
      ]
    },
    {
      "name": "TempModule-01",
      "protocol": "modbus-tcp",
      "endpoint": "192.168.10.35:502",
      "pollIntervalMs": 2000,
      "tags": [
        { "address": "40001", "name": "barrel_temp_1", "unit": "C", "scale": 0.1 }
      ]
    }
  ],
  "buffer": { "maxHours": 72, "storage": "local-disk" },
  "timeSync": { "mode": "ntp", "server": "ntp.factory.local", "maxOffsetMs": 10 }
}

配置完成后,判断采集是否正常,可以观察三个指标:一是网关的采集成功率,正常应高于 99.5%;二是端到端延迟,从设备变化到平台可查,中频数据通常应在 2 秒以内;三是时间戳偏差,网关与平台的时间差应稳定在 10 ms 以内。若成功率下降,优先检查网络和 PLC 连接数;若延迟增大,检查批量上传参数和消息队列积压;若时间戳漂移,检查 NTP 服务是否可达。

五、常见问题与处理方向

现场常见的问题包括:PLC 地址表与采集配置不一致,导致读到的值与实际测点错位;SCADA 归档周期长于业务需求,导致高频特征丢失;传感器信号受变频器干扰,采集值跳变;MES 工单切换与设备数据时间不同步,导致批次归属错误。处理方向分别是:建立地址映射校验流程;对高频需求改用 PLC 或专用采集器;增加信号滤波和屏蔽接地;在网关或平台侧按事件时间做批次对齐。

采集层设计的目标不是把所有数据都采上来,而是让每一类数据在合适的频率、合适的时间精度和合适的语义下进入平台。PLC、SCADA、传感器、MES 和边缘网关各自承担不同角色,只有明确接入方式和频率边界,后续的存储、计算和分析才有可靠基础。