2. 工业数据基础

工业数据管道的第一公里,决定了后续时序数据库能承载多少价值。与互联网埋点、日志或金融行情不同,工业数据来自物理世界,它由传感器、PLC、SCADA/DCS 等层层汇聚,带有明确的设备语义、时间语义和质量语义。理解这些来源与链路,是设计采集、存储与计算方案的前提。

一、工业数据的四类来源

从数据产生的物理位置看,工业数据大致可分为四层:

  • 现场设备层:传感器、变送器、执行器、变频器、仪表,直接测量温度、压力、流量、振动、电流等物理量,输出 4–20mA、0–10V、脉冲或数字信号。
  • 控制层:PLC、DCS 控制器、运动控制器、安全控制器,负责逻辑运算、闭环调节与联锁保护,产生过程值、设定值、报警、状态字。
  • 监控层:SCADA、HMI、DCS 操作站,汇聚多台控制器数据,提供画面、报警、趋势、报表,是运维人员直接面对的数据视图。
  • 信息层:MES、EMS、 historians、工业互联网平台、时序数据库,用于跨产线、跨工厂的分析与优化。

这四层并非简单堆叠,而是通过工业协议逐级汇聚。越靠近现场,数据频率越高、语义越原始;越靠近信息层,数据越聚合、语义越丰富,但原始细节可能已被压缩。

二、传感器与 PLC 数据:从物理量到标签

传感器输出的是连续或离散的物理信号,PLC 通过模拟量输入模块、数字量输入模块将其转换为工程值。例如一个 4–20mA 压力变送器,量程 0–1.6MPa,PLC 的 AI 模块分辨率为 12 位,则原始码值 0–4095 对应 4–20mA,再线性映射为 0–1.6MPa。这个过程涉及量程、零点、满度、滤波、单位等参数,任何一个配置错误都会导致“数据看起来正常但物理意义错误”。

PLC 内部的数据通常以标签(Tag)形式组织,标签名如 Line1_Reactor_Temp_PV,包含过程值 PV、设定值 SP、输出值 OP、报警状态 ALM、手自动模式 MAN/AUTO。采集系统需要读取的不仅是数值,还包括时间戳、质量码和标签元数据。

在工业场景中,一个“温度”往往对应多个标签:PV 是测量值,SP 是目标值,OP 是控制器输出,还有报警上下限、量程上下限、单位、描述。只采集 PV 会丢失大量上下文。

三、SCADA/DCS 系统:汇聚与语义层

SCADA 通常面向分散的远程设备,如泵站、管网、电力配电;DCS 则面向连续过程工业,如化工、炼油、发电,强调高可靠、冗余和闭环控制。两者在数据采集上的共同点是:都维护一个实时数据库(RTDB),以标签为单位缓存最新值、时间戳和质量码,并向上层提供 OPC、Modbus、IEC 104 等接口。

对时序数据库而言,SCADA/DCS 是“已经整理过一遍”的数据源。它的优势是标签语义清晰、质量码规范、时间戳统一;风险是采集频率可能被限制在秒级甚至分钟级,且历史数据可能被压缩或抽稀。若上层分析需要毫秒级原始波形,必须绕过 SCADA,直接从 PLC 或专用采集卡获取。

四、采集频率与精度:两个容易混淆的维度

采集频率指单位时间内采样次数,常见有 1ms、10ms、100ms、1s、1min。精度则包含三层含义:测量精度(传感器误差)、表示精度(浮点位宽、工程值小数位)、时间精度(时间戳分辨率与同步误差)。三者相互独立,不能互相替代。

场景 典型频率 时间精度要求 常见误区
振动监测 10kHz–50kHz 微秒级同步 用秒级 SCADA 数据做频谱分析
闭环控制 1ms–100ms 毫秒级、确定性 把采集频率当成控制周期
过程趋势 1s–10s 秒级 忽略质量码,把坏值当有效值
能耗计量 1min–15min 分钟级 用瞬时值累加代替积分电量

时间同步是工业数据质量的隐形基础。现场常用 NTP 对时,精度在毫秒级;对相位敏感的场景需要 PTP(IEEE 1588),可达微秒级。若各 PLC 时钟不一致,后续按时间对齐、关联分析都会出现“数据错位”。

五、工业协议概览:从现场总线到 OPC UA

工业协议种类繁多,可按层次和用途分类:

  • 现场总线/实时以太网:Modbus RTU/TCP、Profibus、Profinet、EtherCAT、CANopen、CC-Link IE,面向控制器与 I/O 设备,强调实时性与确定性。
  • 过程自动化协议:HART、Foundation Fieldbus、Profibus PA,常用于变送器与 DCS 之间。
  • 电力与公用事业:IEC 60870-5-104、DNP3、IEC 61850,用于变电站、配电、水务。
  • 上层互操作:OPC DA、OPC UA、MQTT、REST、Kafka,用于 SCADA 到信息层、边缘到云。

其中 OPC UA 兼具信息模型与传输能力,支持订阅、历史访问、方法调用和安全通道,已成为工业数据管道的主流入口。MQTT 则更适合边缘到云的轻量发布/订阅,常与 Sparkplug B 规范配合,携带标签名、时间戳和质量码。

# 典型 OPC UA 采集配置片段(示意)
endpoint: opc.tcp://192.168.10.21:4840
securityPolicy: Basic256Sha256
subscription:
  publishingInterval: 1000ms
  samplingInterval: 500ms
  queueSize: 10
nodes:
  - ns=3;s=Line1.Reactor.Temp.PV
  - ns=3;s=Line1.Reactor.Press.PV
  - ns=3;s=Line1.Motor.Current.PV

六、案例与复盘:一个温度数据为何“跳变”

某化工厂反映反应釜温度在时序库中频繁跳变,幅度达 ±8℃。排查发现:PLC 侧温度标签采样周期为 200ms,SCADA 以 1s 轮询并做了一阶滤波,而采集程序又通过 OPC DA 以 500ms 读取 SCADA 缓存。三层频率不一致,加上 SCADA 滤波与 OPC 缓存刷新不同步,导致上层看到的是“被多次重采样后的混叠信号”。最终方案是:对温度趋势保留 SCADA 1s 数据,对跳变分析直接从 PLC 以 200ms 采集原始 PV,并在时序库中按标签记录采样周期与质量码。

工业数据管道中,频率、精度、时间戳、质量码必须作为一等公民随数据一起存储。只存数值不存语义,后续任何分析都可能得出错误结论。
工业数据来源与采集链路 现场设备层 温度/压力/流量传感器 4–20mA / 0–10V / 脉冲 执行器 / 变频器 / 仪表 控制层 PLC / DCS 控制器 PV / SP / OP / 报警 1ms–100ms 控制周期 监控层 SCADA / DCS 操作站 实时库 / 报警 / 趋势 1s–10s 汇聚 信息层 时序数据库 MES / 平台 分析 / 优化 4–20mA Modbus/Profinet OPC UA/MQTT 采集参数与数据质量要素 采集频率 1ms / 100ms / 1s 测量精度 量程 / 零点 / 误差 时间精度 NTP / PTP 同步 质量码 Good / Bad / Uncertain 标签语义 PV/SP/OP/单位 典型协议与适用位置 Modbus / Profinet 现场设备 ↔ PLC IEC 104 / DNP3 电力 / 公用事业 OPC UA / DA SCADA ↔ 信息层 MQTT / Sparkplug B 边缘 ↔ 云平台

综上,工业数据基础的核心不是“把数据读上来”,而是理解数据从物理量到标签、从现场到平台的全链路语义。只有把来源、频率、精度、协议和质量码统一纳入管道设计,时序数据库才能真正支撑工业分析与优化。