跳到主要内容

Emerson DeltaV (DCS) 驱动

概述

DeltaV 是 Emerson Process Management 的 DCS(Distributed Control System,分布式控制系统)。 广泛应用于炼油/化工/发电/制药等连续工艺,其内部控制网络(ACN,Area Control Network) 采用 专有协议 构建。外部系统若要与 DeltaV 交换数据,只能使用 Emerson 官方提供的集成接口(OPC Server、REST API 等)。

项目
opc_typeDELTAV
实现类plantpulse.driver.protocol.deltav.DeltaV_Driver
(无 — stub)
read⛔ stub (返回 "")
write⛔ stub
安全按站点而定(遵循 Emerson 推荐指南)
禁止尝试与 DeltaV 直接通信

对 DeltaV ACN 内部协议进行逆向工程或使用非官方库接入,可能导致 Emerson 许可证/支持合同失效。同时会直接影响控制系统的安全性, 因此除官方集成路径(OPC UA / OPC DA / REST)之外,切勿使用其他方式。

当前状态:stub 驱动

DELTAV 仅存在 stub。实际的 DeltaV 数据采集请使用下列 官方集成路径 之一。


为什么没有 native 实现计划

原因详情
ProprietaryDeltaV ACN 协议规范不公开
许可证非官方接入违反 Emerson 支持合同
安全/法规影响工艺安全系统。涉及 SIL/FDA 21 CFR Part 11 等审计影响
标准替代路径Emerson 自身已官方提供 OPC / REST 接口,无需 native

PlantPulse 长期推荐经由 OPC UA 集成


官方集成路径

选项 1. DeltaV OPC Server → PlantPulse OPC UA 驱动

可在 ProfessionalPLUSApplication station 上启用的官方 OPC server。 以往仅支持 OPC DA (COM),但从较新版本(DeltaV v14+)起同时提供 OPC UA Server

使用的 PlantPulse 驱动页面
OPCUAOPC-UA

选项 2. OPC DA → OPC UA 网关(旧版本 DeltaV)

DeltaV v13 及以下系统通常只有 OPC DA (COM)。 此时可在 DeltaV 侧部署 Kepware KEPServerEX、Matrikon OPC UA Tunneller、Softing dataFEED 等网关, 由 PlantPulse 连接到网关的 OPC UA Server。

使用的 PlantPulse 驱动页面
OPCUAOPC-UA

选项 3. DeltaV Live REST API(最新版本)

DeltaV Live(v14+ HTML5 操作员界面)会通过 REST 暴露部分数据。 可作为运行监视用的辅助通道。

使用的 PlantPulse 驱动页面
HTTPHTTP

应该选择哪条路径

DeltaV 版本推荐路径
v14 及以上DeltaV 内置 OPC UA Server → OPCUA 驱动
v12 ~ v13KEPServerEX 等 OPC DA→UA 网关 → OPCUA 驱动
DeltaV Live 操作画面数据DeltaV Live REST → HTTP 驱动
其他建议咨询 Emerson Local Business Partner

安全/运维检查清单

  • 确认在 DeltaV 侧 ProfessionalPLUS 控制台上启用 OPC UA Server 的权限
  • 将 PlantPulse 主机 IP 加入 DeltaV Application Station 的 firewall whitelist
  • 注册并互信 OPC UA 证书(X.509)(双方)
  • 用户账号仅授予 read-only 权限(绝不授予 write)
  • 遵循 DeltaV 侧变更管理(MOC)流程 — 所有集成作业须事先审批
  • 监视通信流量 — 事先评估对工艺网络负载的影响

后续 native 实现计划

无。 根据 Emerson 的政策,经由 OPC UA / REST 的集成是长期推荐路径, PlantPulse 没有添加 native DeltaV ACN 驱动的计划。


stub 注册(仅用于测试)

curl -X POST http://<edge-host>/api/v1/opc \
-H "Content-Type: application/json" \
-d '{
"opc_id": "OPC_DELTAV_STUB",
"opc_type": "DELTAV",
"opc_name": "DeltaV stub",
"opc_agent_ip": "192.168.0.0",
"opc_agent_port": "0",
"site_id": "SITE_00001",
"auto_collect": false,
"timecycle": 5000,
"tag_list": []
}'