4. PI接口与数据采集验收

PI 系统的数据可信度,最终取决于采集入口是否可靠。PI Interface 与 PI Connector 是两类最常见的采集组件:前者多用于传统 DCS、PLC、OPC DA/UA、Modbus 等场景,通常以 Windows 服务方式运行,依赖 PI Buffer Subsystem 做本地缓存;后者面向 IT/OT 融合场景,如 OPC UA、MQTT、REST、Kafka、数据库等,采用现代化配置与容器化部署。验收时不能只看“服务在跑、点有数”,而要核查配置、验证完整性、检查时间戳与质量码,并实测断点续传与缓冲能力。

一、配置核查:从“能连上”到“配置可追溯”

配置核查的核心是确认采集链路与设计文档一致,且关键参数可复现。对 PI Interface,重点检查:接口实例名与 PI Data Archive 的映射关系、扫描类(Scan Class)周期、点位映射文件(.bat/.ini 或 PI ICU 中的 tag 配置)、接口健康标签(如 PI_INTERFACE_STATUS、PI_INTERFACE_HEARTBEAT)、缓冲子系统是否启用。对 PI Connector,重点检查:数据源端点、采集频率、标签命名规则、目标 PI Data Archive/AF 服务器、证书与凭据、容器或服务的运行状态。

建议在验收前导出一份配置快照,例如 PI ICU 的 *.ini 与 *.bat,或 Connector 的 JSON 配置。核查时逐项对照设计清单,确认无“临时改过但未记录”的参数。一个常见问题是扫描周期被临时调大以降低负载,验收后未恢复,导致数据分辨率不达标。

二、数据完整性验证:用统计与对账说话

完整性验证不能凭感觉。推荐用 PI DataLink、PI Web API 或 PI SQL 查询,对关键点位做三类检查:

  • 点数对账:在指定时间窗内,比较源系统记录数与 PI 中归档值数量,偏差应小于约定阈值(例如 0.1%)。
  • 时间覆盖:检查是否存在超过扫描周期 3 倍以上的数据空洞。
  • 值域合理性:对模拟量检查是否长期卡在量程上下限,对数字量检查状态翻转频率是否异常。

例如,某温度点扫描周期为 5 秒,验收窗口 1 小时,理论点数约 720 个。若实际归档 715 个,偏差约 0.7%,需结合源端日志判断是正常抖动还是采集丢失。若出现连续 30 分钟无数据,则必须定位为接口中断、网络闪断或缓冲未回补。

三、时间戳与质量码检查

时间戳检查要区分“源时间戳”与“PI 接收时间戳”。PI Interface 通常保留源系统时间戳,若源端时钟与 PI 服务器偏差过大,会导致数据在趋势上错位。验收时应抽查若干点,比较源系统时间与 PI 中 Timestamp 的差值,一般要求控制在秒级以内。对 Connector,需确认是否启用时间戳转换与 UTC 偏移处理。

质量码是 PI 数据可信度的直接标志。常见质量码包括 Good、Bad、Questionable、Substituted 等。验收时要统计关键点位的质量码分布:若 Bad 占比超过 1%,需排查源端通信、点位映射或权限问题;若大量出现 Substituted,说明数据被人工替换,不能作为正式验收依据。

PI 接口与数据采集验收:配置核查 → 完整性 → 时间戳/质量码 → 断点续传 源系统 DCS / PLC / OPC UA MQTT / REST / 数据库 源时间戳 + 原始值 PI Interface / Connector 扫描周期 / 点位映射 时间戳转换 / 质量码赋值 健康标签 / 心跳 Buffer Subsystem PI Data Archive 归档值 + 时间戳 质量码 AF 元素引用 采集 写入 断点续传:Buffer 回补 验收检查项与判定依据 配置核查 实例名 / 扫描周期 点位映射 / 健康标签 Buffer 是否启用 配置快照可追溯 数据完整性 点数对账偏差 ≤ 0.1% 无超 3 倍周期空洞 值域合理性检查 源端日志交叉验证 时间戳与质量码 源时间戳偏差 ≤ 秒级 Bad 占比 < 1% Substituted 需说明 UTC 偏移处理正确 断点续传与缓冲 断网 5 分钟不丢数 恢复后自动回补 Buffer 队列深度足够 回补后时间戳连续

四、断点续传与缓冲测试:主动制造故障

断点续传能力是 PI 采集验收中最容易被忽略、却最影响长期可靠性的环节。测试方法不是“等它出问题”,而是主动制造可控中断。以 PI Interface 为例,典型测试步骤:

  1. 确认 PI Buffer Subsystem 已启用,且缓冲区大小满足预期中断时长。例如扫描周期 1 秒、1000 个点,5 分钟中断约产生 30 万个事件,需确认队列容量与磁盘空间。
  2. 在接口运行状态下,断开与源系统的网络连接或停止源端服务,持续 5 分钟。
  3. 观察接口健康标签与 Buffer 队列计数,确认数据进入本地缓冲而非直接丢弃。
  4. 恢复网络,观察数据是否自动回补到 PI Data Archive,并检查回补数据的时间戳是否保持源时间戳。
  5. 用 PI DataLink 查询中断窗口内的数据,确认无空洞、无重复、质量码正常。

对 PI Connector,测试方式类似,但需关注其内部队列与重试机制。部分 Connector 支持持久化队列,容器重启后仍可续传;若未启用持久化,重启即丢数。验收时应明确该配置项并实测。

注意:断点续传测试必须记录中断起止时间、恢复时间、回补数据量。若回补后出现时间戳错乱或质量码异常,应视为不通过,不能以“数据最终到了”为由放行。

五、验收记录与判定

建议将上述检查整理为一张验收记录表,至少包含:检查项、检查方法、预期结果、实际结果、判定。例如:

检查项检查方法预期结果判定
扫描周期一致性对比配置快照与设计文档偏差为 0通过/不通过
点数对账PI DataLink 统计 1 小时归档数偏差 ≤ 0.1%通过/不通过
时间戳偏差抽查 10 个点源时间与 PI 时间≤ 2 秒通过/不通过
质量码分布统计 Bad/Questionable 占比Bad < 1%通过/不通过
断点续传断网 5 分钟后恢复无丢数、无重复通过/不通过

只有配置可追溯、完整性有数据支撑、时间戳与质量码可解释、断点续传经过实测,PI 接口与数据采集环节才算真正通过验收。这些证据也将成为后续运维和故障排查的基线。