2. Hexagon制造数据集成对象与数据源梳理

在Hexagon智能工厂制造数据集成项目中,第一步不是急着连数据库或写接口,而是把“要集成什么、数据从哪来、边界在哪、接口长什么样”梳理清楚。这一步决定了后续数据模型、采集频率、映射规则和异常处理策略。制造现场常见的数据源可以按“控制层—执行层—管理层”三层来理解:PLC和SCADA属于控制层,MES、QMS、WMS属于执行层,ERP属于管理层。Hexagon平台通常位于执行层与管理层之间,承担数据汇聚、语义统一和向数字孪生/分析应用供数的角色。

一、各系统数据边界与典型数据对象

PLC(可编程逻辑控制器)是最底层的数据源,直接连接设备I/O、传感器和执行机构。它提供的是高频、原始、点位级数据,例如电机启停状态、气缸位置、温度模拟量、报警位、节拍计数。PLC数据的特点是:实时性强(毫秒到百毫秒级)、语义弱(只有地址和值,没有业务含义)、单点粒度。集成时通常不直接让Hexagon读PLC,而是通过SCADA或OPC UA服务器中转。

SCADA(数据采集与监控系统)位于PLC之上,负责集中监控、报警管理和历史存储。SCADA的数据边界是“设备与产线级”的实时状态和报警事件,典型对象包括:设备运行/停机/故障状态、产线产量计数、工艺参数趋势、报警记录。SCADA通常提供OPC UA、Modbus TCP或专有API接口,是Hexagon获取实时设备数据的主要入口。

MES(制造执行系统)管理“工单—工序—物料—人员—设备”的执行过程。它的数据边界是生产执行层的事务数据,典型对象包括:工单号、产品型号、工序序列、报工记录、在制品数量、设备OEE、批次追溯信息。MES通常提供REST API、数据库视图或消息队列接口。Hexagon需要从MES获取“当前在产工单”和“工序完成事件”,用于把实时设备数据绑定到具体产品和批次上。

QMS(质量管理系统)管理检验、缺陷、SPC和合格判定。典型数据对象包括:检验批号、抽样结果、缺陷代码、SPC控制图数据、不合格品处置记录。QMS的数据边界是“质量判定与追溯”,接口形态多为REST API或数据库表。集成时需注意:QMS的检验结果往往与MES的工单/批次关联,必须建立统一的批次主键。

WMS(仓储管理系统)管理原材料、半成品和成品的库存与出入库。典型对象包括:物料编码、库位、批次、入库时间、出库时间、库存数量。WMS接口通常为REST API或中间表。Hexagon集成WMS的目的是实现“物料—工单—产品”的正向和反向追溯。

ERP(企业资源计划)位于管理层,管理订单、采购、财务、主数据。典型对象包括:销售订单、生产订单、物料主数据、BOM、供应商信息。ERP接口形态包括IDoc、RFC、REST API或中间数据库。Hexagon从ERP获取的是“计划层”数据,用于与MES的实际执行数据做对比分析。

制造数据源分层与Hexagon集成边界 管理层 计划 / 主数据 执行层 事务 / 质量 / 库存 控制层 实时 / 点位 / 报警 ERP 订单 / BOM / 物料主数据 接口:RFC / REST / IDoc 频率:分钟~小时级 MES 工单 / 报工 / 在制品 / OEE 接口:REST / DB View / MQ QMS 检验批 / 缺陷 / SPC / 判定 接口:REST / DB Table WMS 物料 / 库位 / 批次 / 出入库 接口:REST / 中间表 SCADA 设备状态 / 报警 / 产量 / 趋势 PLC I/O / 传感器 / 执行机构 Hexagon 制造数据集成平台 数据接入层:OPC UA / REST / MQ / DB 语义映射:工单↔设备↔批次↔物料 时序存储:设备状态 / 工艺参数 主数据对齐:物料 / 设备 / 人员编码 事件总线:工单开始 / 完成 / 报警 对外服务:数字孪生 / 分析 / 追溯 统一数据模型与API网关 REST/IDoc REST/MQ REST/DB REST/表 OPC UA OPC UA/Modbus

二、接口形态与集成方式选择

识别数据边界之后,下一步是确定接口形态。制造现场常见的接口形态有六类:OPC UA(适合PLC/SCADA实时数据,支持订阅和浏览地址空间)、REST API(适合MES/QMS/WMS/ERP的业务数据,请求-响应模式)、消息队列(适合事件驱动场景,如工单开始、报警触发)、数据库直连/视图(适合批量抽取,但耦合度高,需谨慎)、文件/中间表(适合ERP等老系统,定时交换)、专有协议(如Modbus TCP、Profinet,通常经网关转换)。

选择接口形态时,核心判断依据是三个维度:实时性要求、数据量级、系统耦合容忍度。例如,设备状态需要秒级更新,优先选OPC UA订阅;工单完成事件需要可靠不丢,优先选消息队列;ERP物料主数据每天同步一次即可,用REST批量拉取或中间表更稳妥。需要特别注意的是,不要为了“统一”而强行让所有系统都走同一种接口——PLC走REST既不现实也不经济,ERP走OPC UA同样不合理。

三、实操:数据源梳理清单与边界确认

在实际项目中,建议用一张“数据源梳理表”来固化边界和接口信息。以下是一个可直接参考的示例(参数为教学假设,非实测值):

系统 数据对象 接口形态 采集频率 主键/关联键 边界说明
PLC 设备I/O、报警位、节拍计数 OPC UA(经SCADA) 100ms~1s 设备编号+点位地址 不直接接入Hexagon,由SCADA汇聚
SCADA 设备状态、报警、产量、趋势 OPC UA / Modbus TCP 1s~5s 设备编号 提供实时状态和报警事件
MES 工单、报工、在制品、OEE REST API / MQ 事件触发+分钟级轮询 工单号+工序号 提供执行事务数据,绑定产品与批次
QMS 检验批、缺陷、SPC、判定 REST API / DB视图 分钟级~小时级 检验批号+工单号 提供质量判定与追溯数据
WMS 物料、库位、批次、出入库 REST API / 中间表 分钟级 物料编码+批次号 提供物料追溯与库存状态
ERP 订单、BOM、物料主数据 RFC / REST / IDoc 小时级~天级 订单号+物料编码 提供计划层与主数据,不参与实时控制

填写这张表时,最容易出问题的地方是关联键不统一。例如MES用“工单号”标识生产任务,QMS用“检验批号”标识检验任务,WMS用“批次号”标识物料批次,三者之间如果没有映射关系,Hexagon就无法把设备实时数据、质量结果和物料消耗串成一条完整的追溯链。因此,在梳理阶段必须明确:哪个系统是主数据权威源(通常是ERP的物料主数据和MES的工单主数据),其他系统通过关联键向它对齐。

边界确认的三个关键问题:
  • 这个数据对象由哪个系统“产生”和“负责维护”?——确定权威源,避免多源冲突。
  • Hexagon需要的是原始值还是加工后的值?——例如OEE由MES计算,Hexagon直接取结果,不重复计算。
  • 接口不可用时,业务能容忍多久的数据延迟?——决定是否需要本地缓存或断点续传。

四、常见边界模糊场景与处理建议

实际项目中,有几类边界容易模糊。第一,设备状态:PLC有原始点位,SCADA有聚合状态,MES有设备OEE。Hexagon应取SCADA的聚合状态作为“设备实时状态”,取MES的OEE作为“绩效指标”,两者用途不同,不应混用。第二,产量计数:PLC的节拍计数是原始脉冲,SCADA的产量是班次累计,MES的报工产量是确认后的结果。集成时应以MES报工产量为业务口径,SCADA产量用于实时看板,PLC计数仅用于设备监控。第三,批次追溯:WMS管物料批次,MES管生产批次,QMS管检验批次,三者通过“工单号+物料编码”建立关联,Hexagon需要维护一张批次映射表。

完成数据源梳理后,建议输出一份《数据源与接口清单》作为后续集成设计的输入。清单中至少应包含:系统名称、数据对象、接口类型、接口地址/端点、认证方式、采集频率、字段映射关系、关联键、异常处理策略。这份清单不需要一次完美,但必须在集成开发前完成第一版,并在联调过程中持续修正。只有边界清晰、接口明确,Hexagon平台才能真正成为制造数据的“单一可信来源”,而不是又一个数据孤岛。