系统架构
MES、ERP与SCADA边界:按对象主责而不是部门划线
划分MES、ERP与SCADA边界的直接答案,是逐个业务对象确认“谁创建、谁修改、谁执行、谁留存、谁对账”:ERP通常负责企业资源与经营计划,MES负责车间执行与过程协同,SCADA负责设备过程监视、报警和历史,PLC及安全相关控制则保留在经确认的控制系统中。边界不是按软件名称猜功能,而是按对象、状态、时间和责任设计。

三层系统各自回答不同问题
ERP关心生产什么、需要哪些资源以及经营结果如何入账;MES关心工单如何在具体产线和工位执行、当前进展与异常如何协同;SCADA关心设备现在处于什么状态、过程量如何变化、报警与历史怎样回放。
这些职责会交叉,但交叉不等于重复保存同一状态。一个工单可以在ERP拥有计划主责,在MES拥有执行分解与现场状态,在SCADA只呈现与设备相关的任务上下文;各自保存的字段和状态必须明确,不应对同一字段任意双向改写。
| 层级 | 典型主责 | 不宜默认承担 | 关键时间尺度 |
|---|---|---|---|
| ERP等企业系统 | 计划、订单、物料与财务相关主数据 | 毫秒级设备控制与原始过程采集 | 订单、班次、日及业务期间 |
| MES车间执行 | 工单执行、过站、防错、追溯与现场协同 | 取代全部经营计划或底层安全控制 | 工单、批次、工位与事件 |
| SCADA过程监控 | 实时状态、过程趋势、报警与操作画面 | 企业成本核算和全部执行流程 | 实时信号、过程事件与历史趋势 |
| PLC及设备控制 | 设备逻辑、运动与经确认的控制联锁 | 企业主数据和跨车间业务协同 | 控制周期与即时联锁 |
用对象主责矩阵消除“大家都管”
主责矩阵应至少覆盖工单、物料、产品或批次、工艺版本、设备、质量结果和计划日历。每个对象列出创建者、唯一标识、允许修改的状态、下游订阅者以及删除或作废规则。
例如物料编码可由ERP维护,MES保存执行所需的快照和批次消耗,SCADA只使用必要的设备上下文。若现场允许临时物料替代,必须由明确的业务流程批准并回传,不能让操作员在任意一层直接改主数据。
| 业务对象 | 常见主责示例 | 下游使用方式 | 必须约定的异常 |
|---|---|---|---|
| 工单 | ERP创建,MES执行分解 | SCADA获取当前任务上下文 | 撤销、插单、数量变更与完工回传失败 |
| 物料与批次 | 企业主数据与仓储主责按现状确定 | MES记录防错、领用和批次关系 | 替代、退料、拆分合并与身份缺失 |
| 工艺版本 | 工艺主责系统或受控流程 | MES校验执行版本,设备接收批准参数 | 版本生效、回退和现场临时调整 |
| 产品质量 | 质量判定主责按流程确定 | MES关联产生过程与处置 | 返工、复检、让步和结果撤销 |
| 设备状态 | SCADA或采集层记录原始事实 | OEE与MES使用映射后的业务状态 | 断线、时钟偏差、人工修订与状态冲突 |
APS、WMS与QMS不应被默认塞进MES
APS侧重约束计划与排程,WMS侧重库存、库位和仓储作业,QMS侧重质量策划、检验与质量流程。它们可以与MES紧密协同,但是否独立建设取决于既有系统、业务复杂度和责任边界,并非MES天然包含全部能力。
上海橙轩智能可围绕项目开展生产排程算法、WMS接口与质量追溯等集成或定制工作,但不据此暗示已有成熟独立APS、WMS或QMS产品。方案中应逐项写明由客户既有系统、第三方系统或本项目定制范围承担,避免使用“一体化”掩盖空白。
- 计划边界:谁考虑产能与物料约束,谁批准计划,谁处理现场插单。
- 仓储边界:谁管理库位与库存账,谁执行叫料、配送和退料。
- 质量边界:谁维护检验规范,谁作判定与放行,谁记录产生过程。
- 维护边界:谁管理保养与维修主流程,安灯和OEE只提供必要事件。
- 分析边界:谁保留原始过程,谁计算业务指标,谁负责口径版本。
接口设计要有契约、补偿和对账
一个接口不只是字段表。它需要定义触发时机、消息或调用唯一标识、幂等规则、超时、重试、顺序、权限、错误码和人工补偿入口。工单下发与完工回传尤其要防止重复执行或状态丢失。
对账是接口闭环的一部分。系统应能比较双方关键对象的数量、状态和版本,并显示差异;断网期间允许哪一侧继续工作、恢复后按什么顺序补传,也必须由业务和控制风险共同决定。
| 契约项 | 需要明确 | 失败时的正确处理 |
|---|---|---|
| 触发与幂等 | 何时发送、如何避免重复 | 使用唯一业务键查询或安全重试 |
| 状态与顺序 | 哪些状态可迁移、消息是否有序 | 拒绝非法迁移并保留待处理队列 |
| 超时与重试 | 多久判失败、重试几次由项目定 | 区分未知结果与确定失败,避免盲目重复 |
| 版本与生效 | 主数据和工艺版本何时可用 | 阻止使用未生效或已撤销版本 |
| 对账与补偿 | 谁发现差异、谁有权限处理 | 保留差异记录、审批与完整审计 |
从一条端到端业务链验证边界
不要先画完全部架构图再寻找用途。选择一条有代表性的业务链,例如工单下发、物料核对、设备执行、质量判定与完工回传,逐步标注对象主责、状态变化和异常处理,便能看到真正的边界。
测试除正常路径外,还应覆盖接口超时、重复消息、主数据撤销、现场返工、设备断线和人工补录。只有异常路径也有责任与恢复方法,系统边界才算落地。
- 建立现状清单:已有系统、版本、接口、数据所有者和运行限制。
- 绘制对象矩阵:逐项确认主责,不用部门名称替代系统责任。
- 定义最小接口:优先支撑选定业务链,避免一次性同步全部数据。
- 演练异常路径:验证重试、补偿、对账、断网和人工授权。
- 形成运行契约:将监控、值班、变更和版本管理纳入验收与运维。
避免一体化、实时化和双向同步的误区
“一体化平台”不等于所有功能都由同一系统承担,“实时同步”也不等于所有数据都要毫秒级传输。经营订单、批次执行与快速过程信号有不同时间尺度和一致性要求,混用会造成不必要的复杂度。
双向同步不是默认最优。对同一对象允许多侧随意修改,容易形成循环更新与责任不明。更安全的方式是明确主责、单向发布和受控回写,并为每个例外保留审批和审计。
- 不用软件名称代替职责说明。
- 不用字段数量衡量接口完整性。
- 不让SCADA直接承担未经评估的企业业务事务。
- 不让MES绕过既有控制与安全边界直接下发高风险动作。
- 不把未确定的APS、WMS、QMS或TPM功能写成标准既有产品。
边界清楚,集成才有可维护性
ERP、MES和SCADA的合理边界来自对象主责与状态责任,而不是软件市场名称。先明确谁创建、谁修改、谁执行和谁对账,再决定页面和接口,能够减少重复建设与相互覆盖。
实施时以一条端到端业务链验证正常与异常路径,把APS、WMS、QMS等相邻能力逐项标明承担方。这样形成的多系统协同,比笼统的一体化承诺更容易验收、运行和持续演进。
常见问题
MES和ERP都保存工单,是否属于重复建设?
不一定。ERP可保存计划与经营视图,MES保存执行分解、工位进度和现场状态。关键是明确各自字段、状态和同步方向,而不是允许两侧无规则修改同一对象。
SCADA能否直接替代MES?
通常不能简单替代。SCADA擅长设备过程监视和历史,MES擅长工单、过站、防错、批次与业务协同。小型场景可组合部分功能,但仍需明确执行事务和数据一致性责任。
ERP是否也需要接收所有实时设备数据?
通常没有必要。ERP需要的是经业务定义确认的完工、消耗或状态结果,原始高速过程数据可留在采集或历史层,通过MES或数据服务提供必要汇总。
既有WMS或QMS是否必须替换为MES模块?
不应默认替换。先评估既有系统是否满足主责与接口要求,能通过稳定接口协同就无需为形式统一重建。任何替换都需单独评估迁移、流程与运行风险。
