MES 详解:细胞治疗数字化产线的制造执行系统
本系列第一篇。MES / LIMS / ELN / EDC / BI / PMS,一个系统一篇。
一句话定位
ERP 管”钱和计划”,SCADA/PLC 管”设备动作”,中间那层——管”这批货现在做到哪一步、谁做的、用了什么料、出了什么问题”的,是 MES。
按 ISA-95 的分层,MES 处在 L3:向下对接控制系统,向上承接 ERP 的生产订单。它是一座翻译桥,把财务语言(订单、成本)翻译成车间语言(工单、工序、批次)。
CGT 行业的 MES 有什么不一样
传统制造业的 MES 成熟了几十年,但细胞治疗(CGT)把它推向了极端:
- 传统制造:大批量、同质 SKU,一个批次是”一箱货”
- 自体细胞治疗:一个患者一个批次,一个批次是”一条命”
由此派生出全链路的特殊性:
采集 → 接收 → 分离 → 洗涤 → 冻存 → 检疫 → 放行
→ 领料 → 复苏 → 激活 → 培养 → 收获 → 灌装 → QC → 放行 → 回输
链条横跨数周、多个站点(采集医院、中心实验室、回输医院)、多次冻存转运。任何一次混淆(mix-up)都是不可接受的事故——A 患者的细胞输给 B 患者,这不是报废一批货的事。
所以 CGT MES 的第一设计原则不是效率,是防混淆、防错、全程可追溯。
核心领域模型
| 概念 | 说明 |
|---|---|
| Lot 批次 | 主角。有父子谱系:采集单 → 中间品 → 冻存子批 → 回输产品批 |
| 状态机 | 每个批次在每个阶段有合法状态集,流转全部留痕 |
| 工单/工序 | 一批货在一个站点要做的事,拆成一道道带引导的工序 |
| 物料/试剂 | 条码、批号、效期、COA,领用即核验 |
| 人员资质 | 谁有资格操作哪个工序,资质过期即拦截 |
| EBR 电子批记录 | 工序数据自动+人工汇集,代替纸质批记录 |
| 偏差/CAPA | 异常的记录、调查与纠正预防 |
| 放行 | QA 依据批记录与 QC 结果做出的最终判定 |
批次谱系是一棵树:
采集单 DONO-2026-001
├── 冻存子批 FZ-2026-0101
│ └── 回输产品批 DP-2026-0301 ──→ 患者 P-88
└── 冻存子批 FZ-2026-0102(备用)
关键模块
- 批次与谱系管理 —— 批次档案、父子关系、全链路追溯查询
- 生产执行 —— 工单派发、工序引导(SOP 步骤化)、关键步骤双人复核
- 物料管理 —— 扫码领料、效期与批号核验、用量回写
- 电子批记录(EBR) —— 自动采集(设备、环境)+ 人工填写 + 电子签名
- 偏差与放行 —— 偏差流程管理、QA 放行检查单
- 产线看板 —— 实时批次状态、站点积压、异常告警
技术挑战(架构师视角)
一:状态机设计。 最值得花时间的地方。要点:
- 迁移规则配置化(状态 × 事件 → 目标状态 + 守卫条件),杜绝散落的 if-else
- 非法迁移在领域层拒绝,不是靠前端按钮置灰
- 每次迁移是一条事件记录——天生事件溯源,回溯”这批货为什么跳过了质检”就是查事件流
二:谱系追溯查询。 递归 CTE 能解,但层级深、批次多时慢。实践:路径表预物化(物化路径或闭包表),一次五层回溯压到 100ms 以内。
三:双人复核的并发控制。 操作人提交、复核人确认之间,数据不能被第三方改动。乐观锁 + 复核任务队列,冲突时明确提示而不是静默覆盖。
四:防混淆的强制交互。 系统层面”扫对了才能做”:操作前强制扫批次码 + 试剂码,匹配才放行工序。牺牲一点录入速度,换的是零混淆。这是产品层面的价值排序。
五:实时性。 产线事件 WebSocket 推送到看板;事件总线解耦”发生”与”消费”。
合规
- 21 CFR Part 11 / Annex 11:电子记录、电子签名、审计追踪(who / when / what old→new / why)
- 数据完整性 ALCOA+:所有记录可归属、同步、原始、准确
- CSV 计算机化系统验证:IQ/OQ/PQ,需求-测试双向追溯矩阵
MES 的合规改造是”后补”不动的——审计追踪必须是架构第一天就有的能力。
与其他系统的集成
- ERP:生产订单下行、物料主数据同步
- LIMS:QC 检验请求下发、检验结果回流参与放行判定
- ELN:工艺方法的权威来源,版本化下发到产线
- 设备/冷链:培养箱温度、转运温度曲线,自动挂到批次档案
- 医院端:采集预约与回输确认
几点体会
- MES 项目一半是软件,一半是流程再造——绕开客户的 SOP 谈功能都是空中楼阁
- 状态机值得画三层图再动手写代码
- “让操作工多扫一次码”是所有 bug 报告的源头,但也是安全底线——防混淆与效率的平衡,是这个行业 MES 的永恒命题