生产执行中心 MES 实施方案

生产执行中心 MES 实施方案

一、现状分析

已有能力

  • SCSAI 客户端: 双写模式(本地优先+异步PLM),已验证 QP_JG_PRODUCE_TASK 读写
  • 质量体系: NCR/CAPA/SPC/检验闭环已实现,quality-inspection.js 可直接对接
  • 库存体系: inventory.js 有 SCSAI 库存主数据+出入库事务
  • 变更管理: ECR/ECO/ECN 全生命周期
  • 数字员工: 8 个生产相关员工已定义(YAML),但未接入真实业务
  • 事件总线: event-bus.js 支持事件触发+订阅
  • LLM 大脑: llm-brain.js 支持任务分解

当前问题

  • 工单只是"一张表",没有工序、没有 BOM 展开、没有排产
  • 报工是整单报一个数,不是工序级
  • 设备是 5 条硬编码种子数据
  • 前端是静态展示,没有实时数据

二、MES 最小可用集(MVP)

核心原则

  1. 工序驱动 — 一个工单 = 多个工序,每个工序独立报工
  2. BOM 展开 — 创建工单时自动展开物料需求
  3. 设备绑定 — 工序绑定设备,设备状态影响排产
  4. 质量内嵌 — 工序间检验,不合格品自动触发 NCR
  5. 异常联动 — 设备故障/质量异常自动通知数字员工

数据模型(新增表)

prod_operations          -- 工序(工单拆分为工序)
  id, work_order_id, operation_name, sequence, 
  work_center, equipment_id, planned_time, actual_time,
  status (pending/in_progress/completed/skipped),
  operator, standard_qty_per_hour

prod_material_requirements -- 物料需求(BOM展开)
  id, work_order_id, part_id, part_name, required_qty,
  issued_qty, unit, status (pending/partial/issued/short)

prod_operation_reports   -- 工序级报工(替代原来的整单报工)
  id, operation_id, work_order_id, operator,
  complete_qty, reject_qty, scrap_qty, work_hours,
  defect_code, note, created_at

prod_quality_checks      -- 工序间质量检验
  id, operation_id, work_order_id, check_type,
  characteristic, spec_min, spec_max, measured_value,
  result (pass/fail), ncr_id, inspector, created_at

prod_downtime_records    -- 设备停机记录
  id, equipment_id, start_time, end_time, duration_min,
  reason_type (breakdown/maintenance/changeover/idle),
  reason_desc, work_order_id

prod_shifts              -- 班次
  id, shift_name, start_time, end_time, date

API 端点(新增/改造)

| 端点 | 方法 | 功能 |

|------|------|------|

| POST /work-orders | 改造 | 创建工单时自动展开 BOM + 生成工序 |

| GET /work-orders/:id/operations | 新增 | 查工单的工序列表 |

| POST /operations/:id/start | 新增 | 开始工序(绑定操作工+设备) |

| POST /operations/:id/report | 新增 | 工序级报工 |

| POST /operations/:id/complete | 新增 | 完工(触发下道工序或关闭工单) |

| POST /operations/:id/quality-check | 新增 | 工序间质量检验 |

| GET /material-requirements/:workOrderId | 新增 | 查工单物料需求 |

| POST /material-requirements/:id/issue | 新增 | 发料 |

| GET /equipment/:id/status | 新增 | 设备实时状态 |

| POST /equipment/:id/downtime | 新增 | 记录停机 |

| GET /schedule | 新增 | 排产视图(按日期/产线) |

| POST /schedule/dispatch | 新增 | 派工(分配工序到设备+操作工) |

| GET /dashboard/realtime | 新增 | 实时看板数据 |

工单生命周期

Created → Planned → Released → In Progress → Completed → Closed
                ↓              ↓               ↓
           BOM检查         工序开始         质量检验
           物料齐套         设备绑定         NCR触发
                           报工累计         完工入库

工序生命周期

Pending → Ready → In Progress → Completed → [Quality Check] → Passed/Failed
                                              ↓
                                         NCR → Rework/Scrap

数字员工联动

| 事件 | 触发 | 动作 |

|------|------|------|

| 设备故障 | downtime 记录 | DS-EQUIP-001 通知维修 |

| 工序不合格 | quality_check fail | DS-QUAL-001 创建 NCR |

| 物料短缺 | material requirement short | DS-KITTER-001 补料 |

| 工单超期 | schedule 过期 | DS-PROD-001 告警 |

| 产量达标 | operation completed | DS-LINELEADER-001 统计 |

三、实施步骤

Phase 1: 数据模型 + 工序引擎(本次实施)

  • 建表:operations/material_requirements/operation_reports/quality_checks/downtime_records
  • 实现工序 CRUD + 生命周期状态机
  • 实现 BOM 展开(从 Part BOM 自动算物料需求)
  • 实现工序级报工
  • 前端改造:工单详情展示工序列表+报工

Phase 2: 排产 + 物料 + 设备(后续)

  • 有限产能排产算法
  • 物料齐套检查+发料
  • 设备 OEE 计算
  • 班次管理

Phase 3: 实时 + 智能(后续)

  • WebSocket 实时推送
  • 数字员工自动调度
  • AI 排产优化
  • SPC 实时监控

四、验证标准

端到端跑通一个完整场景:

  1. 创建工单 → 自动展开 BOM → 生成 3 道工序
  2. 派工 → 操作工开始第 1 道工序
  3. 报工 → 完成 80% → 触发工序间检验
  4. 检验不合格 → 自动创建 NCR → 触发数字员工
  5. 返工完成 → 第 2 道工序开始
  6. 全部工序完成 → 工单关闭 → 统计更新
  7. 实时看板显示进度
← 返回案例列表
分享:
🤖 Try Now →
🤖
🎁