智慧电厂 · 整体数据架构全链路说明
速览 :控制指令不下行、生产数据只上行;I 区自闭环 → II 区汇聚计算 → 网闸单向摆渡 → III 区应用与分析。
适用场景:架构汇报、技术方案、等保分区答疑、数据底座设计对齐。
一图看懂:三区 + 全链路
┌─────────────────────────────────────────────────────────────────────────────────────────┐
│ 智慧电厂数据架构 · 三区两闸 · 一图总览 │
└─────────────────────────────────────────────────────────────────────────────────────────┘
安全 I 区(控制区) 安全 II 区(非控制生产区) 跨区 安全 III 区(管理信息区)
┌──────────────────┐ ┌──────────────────┐ ┌─────┐ ┌──────────────────────────┐
│ 传感器/执行机构 │ │ OPC Client │ │ │ │ III 区镜像库(统一底座) │
│ ↓ ↓ ↓ │ OPC │ 采集·清洗·校验 │ 网闸 │ 单向 │ │ ↓ │
│ DCS SIS PLC │ ─────→ │ II 区实时库(主) │ ─────→ │ 摆渡 │ ─────→ │ 多源融合 + 应用 + 数仓 │
│ ↓ │ 防火墙│ ↓ │ II→III│ only│ │ SIS画面 / 大屏 / 数据湖 │
│ OPC Server │ │ SIS 计算服务 │ │ │ │ IoT网关 → 企业/云端平台 │
│ 协议转换·发布 │ │ (指标回写主库) │ │ │ └──────────────────────────┘
└──────────────────┘ └──────────────────┘ └─────┘
🔒 最高安全 · 硬件自闭环 📊 生产数据中枢 · 无操作界面 ⚠️ 物理隔离 📈 展示 · 分析 · 上云
❌ 禁止 MQTT/HTTP 入区 ✅ 原始测点 + 计算指标主存储 ❌ 禁止反向 ✅ MQTT 仅管理类数据
| 维度 | 安全 I 区 | 安全 II 区 | 跨区 | 安全 III 区 |
|---|---|---|---|---|
| 定位 | 机组核心控制 | 生产数据中枢 | 单向边界 | 应用·分析·决策 |
| 核心设备 | DCS / SIS / PLC / OPC Server | OPC Client / 实时库 / 计算服务 | 防火墙 + 网闸 | 镜像库 / 数据湖 / IoT 网关 |
| 数据方向 | 采集 + 自闭环控制 | 汇聚 + 二次计算 | 仅 II→III | 展示 + 入湖 + 对外 |
| 持久化 | OPC 内存缓存 | 全厂主存储 | --- | 镜像副本 + 数仓 |
| 典型协议 | OPC DA / OPC UA | OPC(内网) | 硬件摆渡 | MQTT / HTTP(管理类) |
1. 整体架构总览(全链路全景图)
1.1 全局数据流向拓扑图
#mermaid-svg-kFHTlTD2SZS4ZEVi{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}@keyframes edge-animation-frame{from{stroke-dashoffset:0;}}@keyframes dash{to{stroke-dashoffset:0;}}#mermaid-svg-kFHTlTD2SZS4ZEVi .edge-animation-slow{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 50s linear infinite;stroke-linecap:round;}#mermaid-svg-kFHTlTD2SZS4ZEVi .edge-animation-fast{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 20s linear infinite;stroke-linecap:round;}#mermaid-svg-kFHTlTD2SZS4ZEVi .error-icon{fill:#552222;}#mermaid-svg-kFHTlTD2SZS4ZEVi .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-kFHTlTD2SZS4ZEVi .edge-thickness-normal{stroke-width:1px;}#mermaid-svg-kFHTlTD2SZS4ZEVi .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-kFHTlTD2SZS4ZEVi .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-kFHTlTD2SZS4ZEVi .edge-thickness-invisible{stroke-width:0;fill:none;}#mermaid-svg-kFHTlTD2SZS4ZEVi .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-kFHTlTD2SZS4ZEVi .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-kFHTlTD2SZS4ZEVi .marker{fill:#333333;stroke:#333333;}#mermaid-svg-kFHTlTD2SZS4ZEVi .marker.cross{stroke:#333333;}#mermaid-svg-kFHTlTD2SZS4ZEVi svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-kFHTlTD2SZS4ZEVi p{margin:0;}#mermaid-svg-kFHTlTD2SZS4ZEVi .label{font-family:"trebuchet ms",verdana,arial,sans-serif;color:#333;}#mermaid-svg-kFHTlTD2SZS4ZEVi .cluster-label text{fill:#333;}#mermaid-svg-kFHTlTD2SZS4ZEVi .cluster-label span{color:#333;}#mermaid-svg-kFHTlTD2SZS4ZEVi .cluster-label span p{background-color:transparent;}#mermaid-svg-kFHTlTD2SZS4ZEVi .label text,#mermaid-svg-kFHTlTD2SZS4ZEVi span{fill:#333;color:#333;}#mermaid-svg-kFHTlTD2SZS4ZEVi .node rect,#mermaid-svg-kFHTlTD2SZS4ZEVi .node circle,#mermaid-svg-kFHTlTD2SZS4ZEVi .node ellipse,#mermaid-svg-kFHTlTD2SZS4ZEVi .node polygon,#mermaid-svg-kFHTlTD2SZS4ZEVi .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-kFHTlTD2SZS4ZEVi .rough-node .label text,#mermaid-svg-kFHTlTD2SZS4ZEVi .node .label text,#mermaid-svg-kFHTlTD2SZS4ZEVi .image-shape .label,#mermaid-svg-kFHTlTD2SZS4ZEVi .icon-shape .label{text-anchor:middle;}#mermaid-svg-kFHTlTD2SZS4ZEVi .node .katex path{fill:#000;stroke:#000;stroke-width:1px;}#mermaid-svg-kFHTlTD2SZS4ZEVi .rough-node .label,#mermaid-svg-kFHTlTD2SZS4ZEVi .node .label,#mermaid-svg-kFHTlTD2SZS4ZEVi .image-shape .label,#mermaid-svg-kFHTlTD2SZS4ZEVi .icon-shape .label{text-align:center;}#mermaid-svg-kFHTlTD2SZS4ZEVi .node.clickable{cursor:pointer;}#mermaid-svg-kFHTlTD2SZS4ZEVi .root .anchor path{fill:#333333!important;stroke-width:0;stroke:#333333;}#mermaid-svg-kFHTlTD2SZS4ZEVi .arrowheadPath{fill:#333333;}#mermaid-svg-kFHTlTD2SZS4ZEVi .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-kFHTlTD2SZS4ZEVi .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-kFHTlTD2SZS4ZEVi .edgeLabel{background-color:rgba(232,232,232, 0.8);text-align:center;}#mermaid-svg-kFHTlTD2SZS4ZEVi .edgeLabel p{background-color:rgba(232,232,232, 0.8);}#mermaid-svg-kFHTlTD2SZS4ZEVi .edgeLabel rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#mermaid-svg-kFHTlTD2SZS4ZEVi .labelBkg{background-color:rgba(232, 232, 232, 0.5);}#mermaid-svg-kFHTlTD2SZS4ZEVi .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-kFHTlTD2SZS4ZEVi .cluster text{fill:#333;}#mermaid-svg-kFHTlTD2SZS4ZEVi .cluster span{color:#333;}#mermaid-svg-kFHTlTD2SZS4ZEVi div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-svg-kFHTlTD2SZS4ZEVi .flowchartTitleText{text-anchor:middle;font-size:18px;fill:#333;}#mermaid-svg-kFHTlTD2SZS4ZEVi rect.text{fill:none;stroke-width:0;}#mermaid-svg-kFHTlTD2SZS4ZEVi .icon-shape,#mermaid-svg-kFHTlTD2SZS4ZEVi .image-shape{background-color:rgba(232,232,232, 0.8);text-align:center;}#mermaid-svg-kFHTlTD2SZS4ZEVi .icon-shape p,#mermaid-svg-kFHTlTD2SZS4ZEVi .image-shape p{background-color:rgba(232,232,232, 0.8);padding:2px;}#mermaid-svg-kFHTlTD2SZS4ZEVi .icon-shape .label rect,#mermaid-svg-kFHTlTD2SZS4ZEVi .image-shape .label rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#mermaid-svg-kFHTlTD2SZS4ZEVi .label-icon{display:inline-block;height:1em;overflow:visible;vertical-align:-0.125em;}#mermaid-svg-kFHTlTD2SZS4ZEVi .node .label-icon path{fill:currentColor;stroke:revert;stroke-width:revert;}#mermaid-svg-kFHTlTD2SZS4ZEVi :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;}#mermaid-svg-kFHTlTD2SZS4ZEVi .zone1>*{fill:#4a1c1c!important;stroke:#ff6b6b!important;color:#fff!important;}#mermaid-svg-kFHTlTD2SZS4ZEVi .zone1 span{fill:#4a1c1c!important;stroke:#ff6b6b!important;color:#fff!important;}#mermaid-svg-kFHTlTD2SZS4ZEVi .zone1 tspan{fill:#fff!important;}#mermaid-svg-kFHTlTD2SZS4ZEVi .zone2>*{fill:#4a3a1c!important;stroke:#ffa94d!important;color:#fff!important;}#mermaid-svg-kFHTlTD2SZS4ZEVi .zone2 span{fill:#4a3a1c!important;stroke:#ffa94d!important;color:#fff!important;}#mermaid-svg-kFHTlTD2SZS4ZEVi .zone2 tspan{fill:#fff!important;}#mermaid-svg-kFHTlTD2SZS4ZEVi .zone3>*{fill:#1c3a4a!important;stroke:#4dabf7!important;color:#fff!important;}#mermaid-svg-kFHTlTD2SZS4ZEVi .zone3 span{fill:#1c3a4a!important;stroke:#4dabf7!important;color:#fff!important;}#mermaid-svg-kFHTlTD2SZS4ZEVi .zone3 tspan{fill:#fff!important;}#mermaid-svg-kFHTlTD2SZS4ZEVi .gate>*{fill:#2d2d2d!important;stroke:#ffd43b!important;color:#fff!important;}#mermaid-svg-kFHTlTD2SZS4ZEVi .gate span{fill:#2d2d2d!important;stroke:#ffd43b!important;color:#fff!important;}#mermaid-svg-kFHTlTD2SZS4ZEVi .gate tspan{fill:#fff!important;} 🔵 安全 III 区 · 管理信息区(应用 · 分析 · 大数据)
🟠 安全 II 区 · 非控制生产区(生产数据中枢)
🔴 安全 I 区 · 控制区(最高安全等级)
结果回写
现场传感器 / 执行机构
DCS 控制器 + IO 卡件
流程调节 · 负荷控制
SIS 安全控制器 + IO 卡件
安全联锁 · 紧急跳闸
硬件自闭环
就地 PLC / 电气综保 / 智能仪表
辅控 · 电气采集
OPC Server
协议转换 · 数据发布
🛡️ 防火墙
I/II 区边界访问控制
OPC Client / 边缘采集节点
订阅 · 清洗 · 校验
II 区实时数据库(主库)
原始测点 + 计算指标
SIS 计算服务
能耗 / 效率 / 报警统计
二次指标运算
🔒 正向物理隔离装置(网闸)
II → III 单向摆渡
禁止反向通信
III 区镜像数据库
全量数据副本
多源数据融合
视频 / 门禁 / 环境 / 巡检
SIS 可视化应用
流程画面 · 曲线 · 报警 · 报表
全厂综合监控大屏
指挥中心展示
数据湖 + 分层数仓
ODS / DWD / DWS / ADS
实时数仓 ClickHouse
秒级查询 · 趋势分析
离线数仓 Hive
统计 · 报表建模
工业 IoT 网关
MQTT 协议
企业 IoT 平台 / 云端系统
1.2 架构核心说明(四条铁律)
| # | 原则 | 说明 |
|---|---|---|
| 1 | 分区原则 | 严格划分 安全 I 区(控制) 、安全 II 区(非控制生产) 、安全 III 区(管理信息) |
| 2 | 数据规则 | 控制指令不下行、生产数据只上行;I 区控制系统物理自闭环,上层无权干预设备运行 |
| 3 | 传输规则 | I ↔ II 走工业内网 + OPC ;II → III 强制 正向物理隔离网闸,单向摆渡 |
| 4 | 分层逻辑 | 工控采集 → 实时汇聚 → 指标计算 → 跨区同步 → 可视化 + 大数据入湖 |
2. 分区域详细解析
2.1 安全 I 区 · 控制区
定位 :机组核心控制层,保障设备安全稳定运行;最高安全等级;禁止外网、禁止反向控制。
2.1.1 核心硬件设备
| 设备 | 核心功能 | 数据类型 | 特点 |
|---|---|---|---|
| SIS 安全控制器 + IO | 采集炉膛压力、汽机转速、轴温、油压等;执行联锁、MFT、紧急停机 | 模拟量、开关量、联锁事件、故障报警 | 与 DCS 物理/逻辑独立;强制冗余;链路中断仍自闭环 |
| DCS 控制器 + IO | 锅炉/汽机/发电机流程调节、负荷分配、辅机控制 | 主蒸汽温压、给水流量、阀门开度、电机状态 | 常规运行控制 |
| PLC / 综保 / 智能仪表 | 化水、除灰、输煤、脱硫脱硝、厂用电、电气系统 | 电量、工况、设备状态 | 辅控与电气采集 |
2.1.2 核心软件:OPC Server
DCS/SIS/PLC ──(私有协议/Modbus/Profibus)──→ OPC Server ──(OPC DA/UA)──→ 北向订阅
│
内存缓存 · 不持久化
毫秒级 · 多客户端并发
| 项 | 说明 |
|---|---|
| 部署 | I 区工控机 / DCS 网关机(裸金属),可与控制系统网关机集成 |
| 南向 | 工控驱动,对接 DCS/SIS/PLC 私有协议、Modbus、Profibus 等 |
| 北向 | 统一发布 Tag、数值、高精度时间戳、数据质量码 |
| 特性 | 仅内存临时缓存;不做持久化;毫秒级实时性 |
2.1.3 I 区通信协议
| 层级 | 协议 |
|---|---|
| 底层网络 | 工业以太网 TCP/IP |
| 应用层(对外) | OPC DA (存量)、OPC UA(新建国产化) |
| ❌ 禁止 | MQTT、HTTP 等 IoT 协议接入控制区 |
2.2 安全 II 区 · 非控制生产区
定位 :全厂生产数据中枢;承接 I 区原始数据、存储、指标计算;纯后台服务层,无业务操作界面。
组件关系(简图)
OPC Server(I区) ──防火墙──→ OPC Client ──→ 实时数据库(主库) ←── SIS计算服务
│ ↑ │
│ └──── 指标回写 ──────┘
└── 原始测点落地 + 计算指标统一存储
2.2.1 采集节点:OPC Client / 边缘采集网关
- 部署:II 区专用采集服务器 / 边缘网关
- 功能:订阅 I 区 OPC Server;接收、格式校验、异常过滤
- 通信 :工业内网直连,沿用 OPC,不做协议替换
2.2.2 核心存储:II 区实时数据库(生产主库)
| 项 | 说明 |
|---|---|
| 定位 | I/II 区唯一生产数据主存储,电力 SIS 标配 |
| 产品示例 | OSIsoft PI、iHistorian、国产工业实时库 |
| 存储内容 | I 区原始测点 + SIS 计算服务二次指标 |
标准数据格式示例
| 测点 Tag | 测点名称 | 数值 | 时间戳 | 数据类型 | 质量状态 |
|---|---|---|---|---|---|
UNIT1.TEMP.SH |
1# 炉过热蒸汽温度 | 542.3 | 2026-06-15 17:00:05.123 | 模拟量 | 正常 |
FAN1.RUN.STA |
1# 引风机运行状态 | 1 | 2026-06-15 17:00:05.456 | 开关量 | 正常 |
UNIT1.COAL_RATE |
机组发电煤耗 | 302.6 | 2026-06-15 17:00:05.789 | 计算指标 | 正常 |
2.2.3 业务服务:SIS 计算服务
| 项 | 说明 |
|---|---|
| 数据来源 | 仅读 II 区实时库;严禁直连 I 区控制器 |
| 性能类 | 锅炉效率、汽机热耗、机组综合效率 |
| 能耗类 | 发电煤耗、厂用电率、辅机单耗 |
| 统计类 | 越限统计、故障时长、报警分类、深度调峰分析 |
| 落地 | 计算结果回写 II 区实时库,与原始数据统一管理 |
| 界面 | II 区无业务界面,仅运维排查服务状态 |
2.2.4 I/II 区边界:防火墙
- 访问策略、端口过滤、异常报文拦截
- 仅放行 OPC 通信端口,加固控制大区安全
2.3 跨区安全设备:正向物理隔离装置(网闸)
II 区实时库 ════════════════════════════════════════╗
│ ║ 硬件级单向
│ 全量数据(原始 + 计算指标) ║ 禁止反向
└──────────────────────────────────────────→ ║ 写入/控制
║
III 区镜像库 ←════════════════════════════════════╝
| 项 | 说明 |
|---|---|
| 部署 | II 与 III 区之间唯一物理边界 |
| 能力 | 硬件级单向摆渡;仅 II→III;阻断反向写入与控制指令 |
| 内容 | II 区实时库全量(原始测点 + 二次指标) |
| 合规 | 电力监控等保、安全防护必配;不可用普通防火墙替代 |
2.4 安全 III 区 · 管理信息区
定位:业务应用、可视化、大数据分析、IoT 对接;面向管理、运维、决策人员。
III 区应用分支(一览)
┌─→ SIS 可视化(流程图/曲线/报警/报表)
III 区镜像库 ─────┼─→ 综合监控大屏(指挥中心)
├─→ 数据湖 ODS→DWD→DWS→ADS
│ ├─ 实时数仓 ClickHouse/Doris
│ └─ 离线数仓 Hive
└─→ IoT 网关(MQTT) → 企业/云端平台
多源融合并行接入:视频 · 门禁 · 环境 · 巡检 · 两票 等
2.4.1 基础存储:III 区镜像数据库
- 完整同步 II 区实时库全部数据,作为三区统一数据底座
- 仅副本,不直接采集 I 区原始控制数据
2.4.2 多源数据融合
在生产数据基础上接入非控制类数据:
- 视频监控流
- 人员门禁记录
- 厂区环境监测(温湿度、粉尘、气体)
- 智能巡检数据
- 两票管理数据
2.4.3 前端可视化应用(实时展示)
| 应用 | 能力 |
|---|---|
| SIS 可视化 | 机组流程图、历史曲线、报警弹窗、事故溯源、日/月/班组报表 |
| 综合监控大屏 | 指挥中心集中展示负荷、能耗、设备状态、运行工况 |
2.4.4 大数据平台:数据湖 + 分层数仓
| 层级 | 名称 | 作用 |
|---|---|---|
| ODS | 贴源层 | 原样同步镜像库,不做清洗 |
| DWD | 明细层 | 清洗、去重、标准化、数据治理 |
| DWS | 汇总层 | 多维度聚合、时段统计、机组/设备维度汇总 |
| ADS | 应用层 | 面向业务的最终指标;分析报表、AI 预警、电力交易分析 |
数仓存储选型
| 类型 | 产品示例 | 场景 |
|---|---|---|
| 实时数仓 | ClickHouse / Doris | 大屏秒级查询、实时曲线 |
| 离线数仓 | Hive | 日/月/年统计、批量报表、建模分析 |
2.4.5 IoT 对外对接(上云 / 第三方)
| 项 | 说明 |
|---|---|
| 设备 | 工业 IoT 网关 |
| 协议 | MQTT、HTTP |
| 用途 | 三区汇总数据转发至企业 IoT、集团云端 |
| 边界 | 仅管理类数据 走 MQTT;控制类数据不直接上云 |
3. 关键组件边界与选型(高频答疑)
3.1 OPC Server/Client vs 工业网关
| 链路 | 选型 | 原因 |
|---|---|---|
| I 区 ↔ II 区(生产控制) | 必须 OPC Server + OPC Client | DCS/SIS 私有协议、毫秒级实时、等保规范、质量码/时间戳模型;通用网关无法替代 |
| III 区对外(IoT/上云) | 工业网关 + MQTT | 部署简单、适配云端平台 |
3.2 SIS 系统全层级分工
┌─────────────┐ ┌─────────────┐ ┌─────────────┐
│ I 区 硬件 │ │ II 区 软件 │ │ III 区 界面 │
│ SIS安全控制器│ │ SIS计算服务 │ │ SIS可视化 │
├─────────────┤ ├─────────────┤ ├─────────────┤
│ 安全联锁 │ │ 指标运算 │ │ 人机交互 │
│ 紧急保护 │ │ 数据加工 │ │ 查询展示报表 │
│ 硬件自闭环 │ │ 读本地实时库 │ │ 读镜像库 │
└─────────────┘ └─────────────┘ └─────────────┘
控制 计算 展示
← 三层分离 · 各司其职 →
3.3 全链路数据存储分工
| 组件 | 是否持久化 | 角色 |
|---|---|---|
| OPC Server | ❌ 内存缓存 | 协议转换与实时发布 |
| II 区实时库 | ✅ 主存储 | 原始测点 + 计算指标 |
| III 区镜像库 | ✅ 副本 | 供应用与大数据使用 |
| 数据湖 / 数仓 | ✅ 长期 | 分析、挖掘、AI 建模 |
4. 全链路极简流程(速记版)
现场传感器
↓
I 区 DCS / SIS / PLC 控制器 ── 自闭环控制,上层不可干预
↓
I 区 OPC Server ── 协议转换发布(内存,不持久化)
↓
防火墙(仅放行 OPC)
↓
II 区 OPC Client ── 采集 · 清洗 · 校验
↓
II 区 实时数据库 ── ★ 全厂生产数据主存储(原始测点)
↓
SIS 计算服务 ── 二次指标运算 → 结果回写实时库
↓
正向物理隔离网闸 ── ★ 仅 II→III 单向摆渡
↓
III 区 镜像数据库 ── 全量副本,统一数据底座
├─→ SIS 画面 / 监控大屏 / 生产报表 (实时应用)
├─→ 数据湖 + ODS/DWD/DWS/ADS (大数据分析 · AI 建模)
└─→ IoT 网关 + MQTT (企业云平台,管理类数据)
5. 附录:汇报用「三句话版本」
- I 区管安全运行:DCS/SIS/PLC 自闭环控制,OPC 只往外发数据,外面管不了设备。
- II 区管数据真源 :采集入库 + 指标计算,实时库是全厂生产数据的唯一主库。
- III 区管看数和用数 :网闸单向同步后,做画面、大屏、数仓和 IoT 上云,控制指令永远下不去。