3. 生产数据对象建模

在PCS 7中,工艺对象、设备模块、参数与状态量原本服务于过程控制与监视,而运营系统(如MES、LIMS、能源管理或数据平台)需要的是可寻址、可订阅、可追溯的数据标签。两者之间的桥梁就是生产数据对象建模:把PCS 7工程中的层级结构、功能块实例和过程值,映射为一套命名稳定、语义清晰、方向明确的数据标签体系。若跳过这一步,直接按PLC地址或画面变量采集,后期一旦设备增删或程序优化,运营侧就会出现大量断链、错位和重复定义。

一、从PCS 7对象层级到标签命名空间

PCS 7的工程视角天然是层级化的:项目(Project)→ 工厂层级(Plant Hierarchy,PH)→ 单元(Unit)→ 设备模块(Equipment Module)→ 控制模块(Control Module,CM)→ 功能块实例与I/O。运营系统需要的标签,应当继承这条层级路径,而不是另起一套命名。推荐采用“区域.单元.设备.功能.参数”的点分命名空间,例如:

AR1.LINE2.REACTOR01.TIC101.PV      // 反应器温度过程值
AR1.LINE2.REACTOR01.TIC101.SP      // 反应器温度设定值
AR1.LINE2.REACTOR01.PUMP01.RUN     // 泵运行状态
AR1.LINE2.REACTOR01.PUMP01.FLT     // 泵故障状态
AR1.LINE2.REACTOR01.BATCH01.PHASE  // 批次当前阶段

这种命名与PCS 7的PH路径一一对应,既保留了工程语义,又便于运营系统按区域、产线、设备维度做聚合查询。命名中应避免使用中文、空格和特殊符号,统一用大写字母、数字和下划线,长度控制在64字符以内,以兼容主流历史库和消息中间件。

二、工艺对象、设备模块与参数状态量的映射规则

PCS 7中的工艺对象通常对应一个Unit或Equipment Module,其内部由若干Control Module组成。映射时,需要区分三类数据:

  • 过程参数(PV/SP/OP):来自模拟量输入、PID等功能块,映射为浮点型标签,需带工程单位、量程和死区。
  • 状态量(RUN/FLT/OPEN/CLOSE):来自电机、阀门等设备模块的状态输出,映射为布尔型标签,需明确0/1对应的物理含义。
  • 批次与配方信息:来自Batch或配方管理,映射为字符串或枚举型标签,用于批次追溯。

映射的核心原则是:一个运营标签只对应一个PCS 7过程值,不允许多个标签指向同一地址,也不允许一个标签混合多个语义。对于设备模块,建议按“状态+参数”成组映射,例如泵对象映射为RUN、FLT、MODE、CURRENT四个标签,而不是把整个设备压成一个字符串。

对于模拟量,建议在标签属性中记录量程下限、量程上限、工程单位和采集周期。运营系统可据此自动完成量程校验和单位换算,避免在采集端硬编码。

三、数据方向与集成接口的对应关系

标签不仅有“读”的方向,也有“写”的方向。PCS 7到运营系统的数据流通常是单向采集,而运营系统下发的配方切换、设定值调整、批次指令则属于反向写入。建模时必须为每个标签标注方向:

  • 只读(R):过程值、状态、报警、批次阶段,由PCS 7发布,运营系统订阅。
  • 只写(W):配方号、批次指令、设定值,由运营系统下发,PCS 7接收。
  • 读写(RW):少数需要双向确认的参数,如模式切换,需带写确认和超时回读。

方向标注直接决定了集成接口的配置。例如采用OPC UA时,只读标签放入Server的AddressSpace供订阅,只写标签通过Method或Write服务暴露;采用SIMATIC IT或开放接口时,则需在接口表中明确每个标签的读写权限和刷新周期。

PCS 7对象 → 数据标签 → 运营系统集成映射 PCS 7 工程对象 Plant Hierarchy AR1 / LINE2 / REACTOR01 Equipment Module PUMP01 / VALVE03 / TIC101 Control Module PID / MOTOR / VALVE 功能块 过程值与状态 PV / SP / OP / RUN / FLT 批次与配方 BATCH01 / RECIPE_A 报警与事件 ALM_HI / ALM_LO / MSG 可集成数据标签 命名空间 AR1.LINE2.REACTOR01.TIC101.PV 数据类型 Float / Bool / String / Enum 工程属性 单位 / 量程 / 死区 / 周期 数据方向 R / W / RW + 写确认 语义描述 中文名 / 设备类型 / 工序 质量码 Good / Bad / Uncertain 运营系统消费 MES / 批次追溯 批次号 / 阶段 / 配方 能源管理 电耗 / 气耗 / 单耗 LIMS / 质量 化验结果 / 放行状态 历史数据库 趋势 / 归档 / 报表 报警管理 报警确认 / 抑制 / 统计 数据平台 / 看板 OEE / KPI / 实时监控 反向写入:配方/设定值/指令

四、标签属性与质量码的建模

一个可集成的标签,除了名称和地址,还应携带足够的元数据。建议每个标签至少包含以下属性:标签名、中文描述、数据类型、工程单位、量程下限、量程上限、采集周期、数据方向、所属设备、所属工序、质量码规则。其中质量码是运营系统判断数据可用性的关键:PCS 7侧的过程值可能因通道故障、模块失效或通信中断而变为无效,标签必须能传递Good、Bad、Uncertain三种状态,而不是简单地把无效值当0处理。

例如,当TIC101的PV通道断线时,标签值应保持上一次有效值或置为NaN,同时质量码置为Bad,运营系统据此在报表中标记该时段数据不可用,而不是把0℃当作真实温度参与能耗计算。

五、建模成果示例:反应器单元标签清单

以下给出一份可直接参考的标签建模清单示例,覆盖反应器单元的温度、泵、阀门和批次信息。参数为教学示例,实际工程中应按设备手册和工艺要求填写。

标签名 中文描述 类型 单位 量程 方向 周期
AR1.LINE2.REACTOR01.TIC101.PV反应器温度过程值Float℃0~200R1s
AR1.LINE2.REACTOR01.TIC101.SP反应器温度设定值Float℃0~200RW1s
AR1.LINE2.REACTOR01.PUMP01.RUN进料泵运行状态Bool-0/1R500ms
AR1.LINE2.REACTOR01.PUMP01.FLT进料泵故障状态Bool-0/1R500ms
AR1.LINE2.REACTOR01.VALVE03.OPEN出料阀开到位Bool-0/1R500ms
AR1.LINE2.REACTOR01.BATCH01.PHASE批次当前阶段String-枚举R事件
AR1.LINE2.REACTOR01.BATCH01.RECIPE当前配方号String--W事件
标签命名一旦投入运营,修改成本很高。建议在建模阶段就建立命名规范评审,确认区域代码、设备位号、参数后缀的写法,并冻结版本。后续新增设备按同一规则扩展,避免出现“PUMP1”和“PUMP01”混用的情况。

完成上述映射后,PCS 7中的工艺对象就不再是孤立的控制逻辑,而是运营系统可理解、可查询、可追溯的数据资产。标签清单本身也成为工程与运营之间的接口契约:工程侧按清单发布数据,运营侧按清单订阅和消费,双方对数据含义、方向和质量判断保持一致,后续的接口配置、数据校验和故障排查才有共同依据。