4. 工业数据采集与接口配置
设备状态监测平台能否成立,首先取决于数据能不能稳定、准确地进入 PI System。PI System 本身并不直接“读懂”PLC、变频器或智能仪表,它依赖采集接口把现场协议转换为 PI 点位(PI Point)上的时间序列。本节围绕四类常见接入方式——PI Interface、OPC UA/DA、Modbus、MQTT——说明它们各自适合什么对象、如何配置、点位如何映射,以及采集调试时看什么、怎么判断成功。
一、先分清四类接入方式的定位
这四种方式不是互相替代关系,而是处在数据链的不同位置。PI Interface 是 PI 官方或第三方提供的专用采集程序,直接与设备或数据源通信,把值写入 PI Data Archive,典型如 PI Interface for OPC DA、PI Interface for Modbus TCP、PI UFL 等。OPC UA/DA 是工业通信标准:DA 基于 COM,多用于老式上位机与 Windows 环境;UA 跨平台、带信息模型和安全通道,适合新设备与跨网段场景。Modbus 是寄存器级协议,简单通用,适合电表、温控器、变频器这类以寄存器暴露数据的设备。MQTT 是发布/订阅消息协议,适合无线传感器、边缘网关和远程站点,通过 Broker 转发主题消息。
选择原则可以概括为:设备原生支持 OPC UA 就优先用 UA;只有 Modbus 寄存器就用 Modbus 接口;现场已有 MQTT 网关或无线传感网络就用 MQTT;而 PI Interface 往往是承载上述协议、完成写入 PI 的“落地程序”。
二、点位映射:把设备地址翻译成 PI Point
点位映射是采集配置的核心。设备侧的数据通常以寄存器地址、节点路径或主题名存在,而 PI System 需要的是具有唯一标签、类型、量程和来源的 PI Point。映射要回答四个问题:源地址是什么、PI 标签叫什么、数据类型怎么转换、量程与压缩怎么设。
以一台电机温度为例。设备侧是 Modbus 保持寄存器 40001,原始值为 UInt16,实际温度 = raw × 0.1 ℃。在 PI Interface for Modbus 的点位配置文件中,可以写成:
L1_M1_TEMP, 1, 40001, UInt16, 0.1, 0, 150, MODBUS, ℃
; 标签名, 站号, 寄存器地址, 数据类型, 缩放系数, 下限, 上限, 来源, 工程单位
对应在 PI Data Archive 中创建 PI Point 时,PointSource 设为 MODBUS,PointType 设为 Float32,Zero 为 0、Span 为 150,并设置 CompDev(压缩偏差)为 0.5 ℃、CompMax(最大压缩时间)为 60 秒。这样既保留有效变化,又不会让存储量无意义膨胀。若同一设备还有振动、电流、运行状态,应统一命名规则,例如 L1_M1_VIB、L1_M1_CUR、L1_M1_RUN,便于后续在 PI AF 中按设备层级组织。
三、OPC UA/DA 接入要点
OPC DA 依赖 DCOM 配置,常见问题是权限与防火墙导致连接失败。配置时先在 OPC Server 端确认匿名或指定账户可读,再在 PI Interface for OPC DA 的接口实例中填写 ProgID、主机名和扫描组。OPC UA 则更现代:需要填写 Endpoint URL(如 opc.tcp://192.168.10.20:4840),选择安全策略(None 或 Basic256Sha256)和用户凭证,然后浏览地址空间,把需要的 NodeId 加入采集列表。UA 的优势是自带时间戳和质量码,接口可直接把质量码映射为 PI 的异常值标记。
四、MQTT 接入与主题规划
MQTT 适合无线传感器和分布式站点。典型链路是:传感器 → 边缘网关 → MQTT Broker → PI 接口或 MQTT 网关 → PI Data Archive。主题设计建议采用层级结构,例如 plant/line1/motor1/temp、plant/line1/motor1/vib。接口订阅这些主题后,把 payload 中的 JSON 字段解析为 PI 点位。需要注意 QoS 选择(一般 1 即可)、断线重连、时间戳来源(设备时间还是网关接收时间),以及 payload 格式是否稳定。
五、采集调试:看什么、怎么判断
配置完成后不要直接进入展示环节,应先做采集调试。常用工具包括 PI SMT 的 Interface Status、PI System Explorer 的 Point 预览、以及接口自身的日志文件。调试时重点观察:
- 接口是否运行:在 PI SMT 中查看接口实例状态,确认没有停止或反复重启。
- 点位是否有值:用 PI System Explorer 打开目标 PI Point,查看当前值和时间戳是否持续更新。
- 质量码是否正常:若长期为 Bad 或 Questionable,检查源地址、权限、网络和数据类型。
- 数值是否合理:对比设备本地显示值,确认缩放系数、量程和单位没有配错。
- 时间戳是否一致:确认设备时间与 PI 服务器时间偏差在可接受范围内,必要时启用时间同步。
采集调试通过后,点位数据才真正成为可用的时间序列。下一步是在 PI AF 中建立设备层级与属性映射,把散落的 PI Point 组织成“产线—设备—部件—测点”的结构,为状态监测、报警和可视化打好基础。