4. 生产数据采集需求分析
在西门子PLC与MES集成的项目中,需求分析阶段最容易出现的偏差不是“采不到数据”,而是“采了不该采的、漏了必须采的、频率定错了”。一旦采集清单和数据字典确定,后续的PLC变量规划、DB块设计、OPC UA/Profinet通信配置、MES侧接口开发都会围绕它展开。因此,本节的核心任务是把MES对生产现场的数据需求,翻译成一份可落地、可校验、可交付的采集清单与数据字典。
一、五个维度决定采集边界
生产数据采集需求通常从五个维度展开,每个维度对应不同的数据来源和采集特征:
- 工单维度:当前执行的工单号、产品型号、计划数量、批次号、工艺配方版本。这类数据多由MES下发或操作员在HMI确认,PLC侧通常以字符串或整型数组形式缓存,采集频率低(换型或开工时触发)。
- 产量维度:累计产量、合格数、不合格数、当前班次产量。由PLC计数器或高速计数模块产生,属于过程量,需要按节拍或按件采集。
- 节拍维度:单件加工时间、设备循环时间、理论节拍与实际节拍偏差。通常由PLC定时器或时间戳差值计算,采集频率与生产节拍同步。
- 设备状态维度:运行、待机、故障、换型、停机等状态字,以及故障代码、报警号。状态变化是事件型数据,适合变化触发采集。
- 质量结果维度:检测结果(OK/NG)、测量值、缺陷代码、返修标记。来自PLC逻辑判断或在线检测设备,通常按件采集。
这五个维度不是孤立存在的,它们通过“工单—产品—时间”三个主键关联。例如,一条产量记录必须能追溯到具体工单和产品批次,否则MES无法做OEE分析和质量追溯。
二、采集清单的梳理方法
梳理采集清单时,建议采用“从MES报表倒推”的方式:先明确MES需要生成哪些报表和看板,再反推需要哪些原始数据。例如,要生成设备OEE报表,至少需要:设备运行时间、计划停机时间、故障停机时间、合格品数、总产量。这些数据分别来自设备状态字、时间戳、计数器和质量结果。
在PLC侧,每个采集项需要明确以下属性:数据名称、数据类型、PLC地址(如DB100.DBD0)、单位、量程、采集触发方式、采集频率、数据来源(PLC内部计算/MES下发/操作员输入)。这些属性汇总后就是数据字典的雏形。
三、数据字典的字段设计
数据字典是采集清单的规范化表达,它把每个采集项的定义固定下来,供PLC工程师、MES工程师和电气人员共同确认。一个可落地的数据字典至少包含以下字段:
| 字段名 | 说明 | 示例 |
|---|---|---|
| 数据项名称 | 唯一标识,建议用英文缩写 | WorkOrderNo |
| 中文描述 | 业务含义 | 当前工单号 |
| 数据类型 | PLC与MES双方约定 | String[20] |
| PLC地址 | DB块绝对地址 | DB100.DBB0~19 |
| 单位/量程 | 物理量单位与范围 | — / 0~999999 |
| 采集触发 | 事件/周期/按件 | 换型触发 |
| 采集频率 | 最大允许间隔 | ≤1s |
| 数据来源 | PLC计算/MES下发/操作员 | MES下发 |
| 关联主键 | 用于MES关联 | 工单号+批次号 |
以“累计产量”为例,数据字典中应明确:数据类型为DInt(32位有符号整数),PLC地址为DB101.DBD4,单位为“件”,采集触发为“按件上升沿”,采集频率为“每件一次且不低于100ms”,数据来源为“PLC计数器”,关联主键为“工单号+批次号”。这样MES侧收到数据后,可以直接按工单聚合,不需要再做二次匹配。
四、采集频率的确定原则
采集频率不是越高越好。频率过高会占用PLC通信资源、增加MES数据库写入压力;频率过低则可能丢失关键状态变化。确定频率时遵循三条原则:
- 状态变化类数据用事件触发:设备状态字、故障代码、工单切换等,只在变化时上报一次,并在数据字典中标注“变化触发+心跳周期”。心跳周期用于确认通信链路正常,通常设为30s或60s。
- 按件产生的数据与生产节拍同步:产量计数、质量结果、单件节拍等,每完成一件采集一次。如果节拍为8s,则采集频率不低于每8s一次;实际实现时可在PLC中做上升沿检测,MES侧按件接收。
- 过程量数据用周期采集:温度、压力、速度等模拟量,根据工艺要求设定周期,常见为100ms~1s。对于仅用于趋势展示的数据,可放宽到5s或10s。
五、从需求到可执行清单的检查要点
完成采集清单和数据字典后,建议做一次交叉检查:每个MES报表字段是否都能在数据字典中找到对应数据项;每个数据项的采集频率是否满足报表刷新要求;每个数据项的PLC地址是否已分配且不冲突;事件触发类数据是否都有心跳机制。检查通过后,这份清单就可以作为PLC变量规划、DB块设计和MES接口开发的输入依据。
实际项目中,建议把数据字典维护为Excel或CSV文件,并纳入版本管理。每次工单类型或产品型号变更时,同步更新数据字典中的工单维度字段,确保采集清单与生产实际始终一致。