三亩地 三亩地SAN MU DI · CODE DIARY
ARTICLE DETAIL

日记详情

真实记录编程学习的某一天,欢迎挑你感兴趣的翻一翻。

MES系统实战:从需求到上线,我踩过的那些坑

MES系统实战:从需求到上线,我踩过的那些坑

做了3年MES项目,从需求调研到系统上线,全程参与。今天把实战经验分享出来。

一、MES是什么?为什么需要MES?

1.1 没有MES的日子

我们厂上MES之前,生产管理全靠Excel和纸质表单。每天早上,操作员要把昨天的生产数据手动录入Excel。一个班8小时,光录入数据就要花1-2小时。更可怕的是,数据经常录错。有一次,操作员把1200片录成了12000片。老板看到数据高兴坏了,结果发现是录错了。

1.2 MES能做什么

MES = Manufacturing Execution System = 制造执行系统。简单说,就是管生产的。

核心功能:

- 工单管理:什么产品、做多少、什么时候交

- 在制品追踪:每片晶圆在哪个工序、什么状态

- 设备管控:设备状态、参数采集

- 良率管理:实时良率、异常报警

- 报表分析:日报周报月报自动生成

二、项目启动:需求调研

2.1 需求调研的坑

坑1:只听领导的需求

领导说“我要一个能看实时数据的仪表盘。”但操作员需要的是“我要一个能快速报工的界面。”如果只听领导的,做出来的系统操作员不用,数据录不进去,仪表盘就是个摆设。

建议:从一线操作员到管理层,每个角色都要调研。

坑2:需求没有优先级

用MoSCoW法则分类:Must have(必须有)、Should have(应该有)、Could have(可以有)、Won't have(暂不考虑)

2.2 需求文档怎么写

好的需求文档应包含业务场景描述:

当前流程 vs 期望流程 vs 预期收益。用具体数字说话。

三、系统设计

3.1 技术选型

我们最终选了:后端ThinkPHP 6、前端Vue3+TypeScript、数据库MySQL 5.7、移动端UniApp。

选型建议:别追新技术选团队最熟的、别忽视运维成本选社区好的、别忘了移动端工厂里手机比PC方便。

3.2 数据库设计的坑

坑1:没有统一编码规则。不同人用不同批次号格式,数据完全没法关联。

坑2:没有数据字典。同一个产品类型三个模块三种写法,查询就废了。

3.3 接口设计的坑

MES要跟ERP、EAP、SPC、WMS对接。接口设计原则:统一RESTful风格、统一JSON格式、统一Token认证、版本管理、Swagger文档。

四、开发阶段

敏捷开发,2周一个迭代:

Sprint 1:用户管理+权限系统

Sprint 2:工单管理+报工功能

Sprint 3:设备对接+数据采集

Sprint 4:SPC集成+异常报警

Sprint 5:报表系统+仪表盘

Sprint 6:移动端+优化

开发踩坑:

- 没有写单元测试:改一个Bug出来三个新的。核心模块覆盖率>70%

- 没有代码评审:风格不统一后期维护痛苦。每周一次代码评审

- 没有考虑并发:100人同时报工系统卡死。加索引、连接池、关键操作加锁

五、测试阶段

坑1:只用干净数据测试。上线后发现操作员输入格式五花八门。用真实数据测试!

坑2:没有压力测试。5人没问题,50人同时用就崩了。上线前必须压力测试!

UAT关键:让真正操作员测试、真实环境测试、准备验收清单逐项确认

六、上线阶段

分阶段上线:

第一阶段(1周):1条产线试点

第二阶段(2周):3条产线推广

第三阶段(1周):全面上线

上线踩坑:

- 没有培训就上线:操作员不会用还是用Excel。培训至少3次,考核通过才能上岗

- 旧系统一刀切:新系统出Bug旧系统已关,生产停了。新旧并行至少2周

- 没有应急预案:准备系统宕机切纸质表单、网络故障本地缓存、数据库故障读备份

七、运维

监控系统部署Zabbix/Prometheus异常告警。

数据备份:每日全量+每小时增量+异地备份。

持续优化:性能(慢查询缓存)、功能(用户反馈迭代)、体验(界面流程)、数据(报表分析可视化)

八、总结

关键成功因素:需求调研全面、技术选型务实、开发规范、测试充分、上线稳妥、运维到位。

项目参考:小型1条线3个月3人30万、中型5条线6个月6人100万、大型全厂12个月12人300万+

如果你也在做MES项目,评论区聊聊你的经验。

觉得有用就点赞+收藏!关注我,分享更多智能制造实战!

← 返回列表