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。采集系统需要读取的不仅是数值,还包括时间戳、质量码和标签元数据。
三、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,并在时序库中按标签记录采样周期与质量码。
综上,工业数据基础的核心不是“把数据读上来”,而是理解数据从物理量到标签、从现场到平台的全链路语义。只有把来源、频率、精度、协议和质量码统一纳入管道设计,时序数据库才能真正支撑工业分析与优化。