4. 数据采集与接口配置
过程历史数据库(PHD)的价值,取决于它能否稳定、连续、按需地把现场数据“搬”进历史库。数据采集与接口配置就是这条数据链路的入口。入口配置不当,后续的趋势分析、批次追溯、报警统计都会失真。本节围绕接口类型选择、采集频率与死区、冗余与故障切换三个层面展开,并给出可参考的配置示例。
一、四类接口的定位与选择
PHD 常见的采集接口有四类,它们并非互相替代,而是按数据源特性分工。
OPC DA 基于 COM/DCOM,适合与 Windows 平台上的 DCS、PLC、SCADA 通信。它的特点是数据项(Item)按“标签+属性”寻址,支持订阅式回调,实时性好。但 DCOM 配置对防火墙和域环境敏感,跨网段部署容易出问题,且它只传当前值,不携带时间戳语义的强约束。
OPC UA 是面向服务的架构,内置安全通道、证书认证和地址空间模型,支持订阅与历史访问(HA)。它跨平台、可穿透防火墙,适合新建系统或需要与 MES、云平台对接的场景。UA 的节点 ID 比 DA 的 Item 更规范,但配置时要注意发布间隔(Publishing Interval)与采样间隔(Sampling Interval)是两个独立参数。
Modbus(RTU/TCP)是轻量级主从协议,适合电表、流量计、变频器等单机设备。它按寄存器地址寻址,需要人工维护“寄存器地址—工程值”的映射表。Modbus 没有时间戳,采集器只能以轮询时刻作为数据时间,因此对时序精度要求高的场合要谨慎。
DCS 专用接口(如横河 CENTUM 的 Exaopc、OPC 网关或直接 API)通常由 DCS 厂商提供,能访问 DCS 内部的趋势、报警和操作记录,数据质量标记(Quality)最完整,是 PHD 采集 DCS 数据的首选。它的代价是依赖厂商授权和版本匹配。
二、采集频率与死区设置
采集频率决定数据密度,死区决定数据“是否值得记”。两者配合,才能在存储成本和趋势保真之间取得平衡。
采集频率通常分三档:快速(1 s 以内)用于联锁、脉动流量、振动监测;常规(1~10 s)用于温度、压力、液位等过程量;慢速(30 s~5 min)用于能耗累计、环境参数。频率不是越高越好——1 s 采集 1000 个点,一天就是 8640 万条记录,会显著增加历史库负担。
死区(Deadband)是“变化超过阈值才记录”的过滤机制。以模拟量为例,若量程 0~100 ℃、死区设为 0.5%,则只有变化超过 0.5 ℃ 才写入新值。死区太小,噪声被大量记录;死区太大,缓慢趋势被抹平。工程上常按量程的 0.1%~1% 取值,并配合“最大静默时间”(如 5 min 强制存一次)防止长期无变化导致曲线断点。
下面这张图展示了从现场设备到 PHD 的采集链路,以及频率、死区、冗余在链路中的位置。
三、冗余与故障切换
接口冗余的目标是:单点故障不中断数据采集。常见做法是配置一主一备两个采集实例,指向同一数据源或互为备份的通道。
心跳检测是切换的依据。主接口每隔固定周期(如 3 s)向采集引擎发送心跳,连续 3 次未收到即判定故障,备接口在 10 s 内接管。切换过程中,采集引擎会记录一个“数据缺口”标记,便于后续追溯时识别。若数据源本身支持双网口或双控制器,冗余接口可分别接入不同通道,避免共用交换机成为新的单点。
需要特别注意的是:冗余切换只保证“采集不中断”,不保证“数据不重复”。主备同时在线时,可能对同一标签产生两条时间戳接近的记录。PHD 通常按时间戳去重,配置时应确认去重策略,避免趋势出现毛刺。
四、配置示例:一个温度回路的采集参数
以某反应釜温度 TI-101 为例,量程 0~200 ℃,DCS 专用接口采集,要求趋势能反映 0.5 ℃ 的缓慢变化,同时避免噪声刷屏。
标签名:TI-101
数据源:DCS 专用接口(Exaopc)
采集频率:5 s
死区类型:绝对值
死区值:0.5 ℃(量程的 0.25%)
最大静默时间:300 s
质量戳:Good / Bad / Uncertain 三态
冗余:主接口 Node-A,备接口 Node-B
心跳周期:3 s
故障判定:连续 3 次心跳超时
切换时间目标:< 10 s
配置完成后,可通过以下方式验证:在 DCS 侧手动改变温度设定值,观察 PHD 趋势是否在 5 s 内出现台阶;将主接口网线拔除,观察备接口是否在 10 s 内接管,趋势是否出现断点;检查历史库中同一时间窗内是否存在重复记录。若趋势出现密集锯齿,说明死区偏小;若缓慢升温被记录成阶梯状,说明死区偏大或最大静默时间过长。
接口配置不是一次性的工作。装置改造、网络调整、DCS 版本升级都可能影响采集链路。建议将接口参数、冗余策略、切换记录纳入变更管理,并在每次变更后执行一次“拔线测试”,确认故障切换仍然有效。