万字长文讲透MES,小白入门必看!

一、背景概述

1.业务先行的制造系统

制造系统并不是一个简单的IT产品,本质上它是业务的最佳实践。现代工厂制度从产业革命时期开始发展,距今大概两百多年时间。此过程,经过无数学者、工程师和工厂经理人的持续迭代,才逐渐形成今天这样一个复杂的跨学科体系,这些各个门类的知识主要是通过一份份操作规范落到工业场景去指导人们工作。

随着管理逐渐精细化,规范就越来越多,工程师和作业员出错概率就越来越大,因此需要系统来加以辅助。

服务于工厂业务的软件,大概包括三大类:设计开发类、商业支撑类、生产运作类。分别应用在研发场景、企业运营场景和生产制造场景。MES系统是应用在生产制造过程的软件。

2.MES和它的朋友们

制造系统的门类划分最规整的是半导体行业,其次是离散制造,大体上可以包括以下一些核心系统:

MES系统:俗称制造系统的大脑,整个车间的业务逻辑都要经过它的控制和记录,比如:工艺顺序、过程流追踪等,生产流程中90%以上的Raw Data都会首先存在MES。工厂里面80%+的人每天都要用到系统,其中80%+的人每天都要用到MES。

EAP系统:设备自动化控制,主要负责给机台下指令和采集机台上的参数,分两类:一类是工艺特性参数,比如工件厚度和宽度等;一类是加工特性参数,比如功率、电流、角速度等。

PS:

a.并不是所有的参数都可以自动化采集,不能自动化采集的就在MES提供界面,手Key或者扫描进系统;

b.EAP系统要给上位系统喂数据,比如MES、RMS和FDC。

RMS:菜单/配方管理系统,主要用于卡控工艺特性参数,比如上料确认机台内的菜单设置是否在SOP规范内,超出就不允许Run 货。

FDC:故障侦测系统,主要用于卡控加工特性参数,比如工件和靶材距离持续变大,到一定值时候,就要更换靶材。

APC:先进制程控制,主要用于跨工序之间的参数调优,比如原材料厚度不一样,加工时候,抛光时磨头的压力和转速就要进行相应调整。具体怎样调整,就是在APC设置规则。

SPC:统计过程控制,通过对工艺特性参数的统计学分析,来识别工艺能力,计算一些关键特性的CP和CPK值,量化评价过程能力。还有很多Chart图做可视化展示,以及判异规则自动Alarm。

RTD:实时派工系统,和天车以及AGV搭配使用,派工规则在这个系统设定。

YMS:良率管理系统,半导体行业才这样叫。检测类机台对接,获取器件特性参数和defect结果数据,做Map叠图分析等。

QMS:质量管理系统,会集成SPC和YMS的大部分功能,离散制造叫一般用QMS称呼。

WMS:仓储管理系统,对仓库实物进行管理控制,比如上下货架,移库,出入库,IQC等。

这些系统都负责管理工厂的某一块或某几块业务,它们之间彼此互联互通共同支撑制造提质、增效、降本、减存理念的落地。其中MES系统需要和所有系统集成。

二、关于入门MES

学习的常规路径是先学理论构建出一套范畴体系,再去实践,然后再在实践过程去反思和完善理论,进而形成自己的理解框架。

MES是工厂管理系统,具有明显的行业属性和专业特征,软件的经验积累主要集中在各个公司内部,很少对外开放,资料比较少。网上所谓的“解决方案”,主要是堆砌技术名词,没什么营养。

比如一个系统可以接入扫描仪和传感器就叫物联网平台,设置一些基础数据就叫数据建模平台,捞一些数据搞几张漂亮报表就叫数据驱动,用了CCD就叫人工智能,做一些防呆控制和统计分析就叫大数据分析,整体以面向老板的宣传为主,对于具体实现方式和应用场景解构很少,就是有,也不全。这些资料,显然不是入门的首选。

三、MES的范畴体系

如果我们想要学习MES,并希望以此为职业的话,首先就是要构建起一套MES的范畴体系,也就是一系列与之相关的概念以及这些概念之间的相互联系。

1.MES是什么?

MES是一个舶来品,20世纪80年代末,由美国先进制造研究机构(AMR)首先提出此概念,其英文单词为“Manufacturing Execution System"。取首字母缩写为MES,翻译过来就是生产执行系统的意思。顾名思义,MES是应用在生产执行层的工业管理软件。

生产执行是啥意思。可能我们要了解一下工厂。工厂是产品制造的组织形式,按照订单或者预测,以工单为依据,输入原材料,产出成品。计划和执行是目前工厂分工管理的两个最常规活动,其中,计划工作大部分发生在办公室,主要是产出各种表单、规则、制度和排程。而具体落实这些办公室产出物的主要场所就是在车间。所谓生产执行,就是发生在制造车间的为实现计划的有目的活动。

工厂是重资产投资,好多设备一台都是几十上百万,执行要消耗这些设备资源,不能乱搞,要按办公室里制定的规则去干,否则容易成本太高。所以,需要对其进行有效的管理。

计划一般是制式表单,比如关于领料生产的制式表单就是生产计划表,生产计划表的一个实际例子大概可以总结成这样:某时某地某人要消耗某资源干某事。具体实例:x年x月x日CNC制程的全体人员和设备要加工出1000片物料。

时间一到,CNC车间就要按计划开始做相应的事情,比如:领料,收料,加工,打包,入库等,这里面的每一个事务细化一下都有很多事情要处理,单纯人工干容易出错。单就本案例而言,至少涉及几个面向:料不能领错,机台加工方法和参数不能出错,加工员工要符合资格,加工完成之后要确保结果正确,并按打包标准进行包装等。

这些MES都可以解决,比如针对料不能领错这个小需求,可以给每个料配一个条码,绑定不允许出错的信息,然后领料投产时申请一张单据,单据上面也记录相关信息,扫描一下条码,系统自动匹配过滤掉异常的物料。如果是立体仓库的话,自动下发单据到仓储系统,机器人自动去对应储位领料,就更方便了。这里的场景一定要和WMS集成才可以实现,也可能可能还要和天车与ERP对接。

MES就是对诸如以上的一系列事件及其细节进行辅助管理的软件,以确保计划内的事情发生和防止或减少计划外的不可控因素。

大体上理解了什么是MES之后,就会有一个感觉:MES貌似和生产业务紧密相关。但是,MES毕竟还是信息系统,除了业务维度,也要考虑技术维度。

2.关于技术和业务的权衡

单纯从业务出发,从单一场景入手,一个一个场景去实现系统化,最后落地MES,显然是可行的方式之一,事实上,很多工厂的自研MES就是这样逐步发展起来的。但是,这样孤立地设计和开发出来的系统,健壮性会比较差,很容易就掉入所谓的信息化陷阱。

毕竟生产系统本来就是一个相互紧密联系的体系,职能之间和场景之间都存在非常多的输入输出关系。想到一个就搞一个,虽然可以解决小场景的问题,但是对于整个制造运营的绩效提升并不一定就有效益。随着信息化程度推进,就会发生信息孤岛、数据混乱、逻辑复杂、维护成本高等一系列问题。

比如:要采集一台设备的参数,MES拿来SDK直接集成是可以的,但是这种方式就不好推广。毕竟设备厂商太多,数据结构也不一样,改来改去会很麻烦,所以采取分层方案,MES提供接口,现场设备控制的单独搞一套边缘系统,把差异性限制在车间现场就会相对好一点。

业务角度思考信息化和技术角度思考并不相同,业务角度侧重的是用户、问题解决和价值视角,技术角度侧重的是实现、功能复用和架构视角。

工厂业务复杂,需求繁多,为设计出一套柔性且又健壮的MES系统,避免越到后面整合难度越大,问题越多,我们需要结合二者进行考虑。

业务框架和业务数据决定了系统的技术框架和数据建模,所以有时候为了方便技术实现,业务上也要做一些妥协。比如,为了保证冗余数据模型的及时清理,业务上就可能要设置专门岗位从事数据治理工作的人员,进行无效数据的定期排查。有时候为了让用户操作更便捷,技术侧也会不得不做一些强耦合的设计或一些冗余方案。

3.信息化建设的生命周期

MES的建设是一个长期的过程,他会随着工厂运营的调整而调整,在不同阶段会有不同的工作重点。

工厂信息化建设的演进流程大致可以概括为:

流程化:业务上一定要有流程,比如领料,就要有领料流程,没有工单,仓库不能发料给生产,不允许说生产没料就发,而是要快去开一张工单。

标准化:所有操作都要形成文字规范,存储下来,成为执行标准,起到固化最佳实践的作用。

信息化:制度的执行需要靠信息系统来辅助,标准化的东西变成系统就是信息化。

可视化:信息化到达一定程度就可以打造可视化,把一些关键指标做成目视化视图,用以监督现场。

可视化的目的是用指标牵引行为,因为车间有抗扰动特性,如果KPI一直都可以达成的话,人们很容易形成对现状捍卫的共识,从而抵触变革。把可视化的数据输入到工厂管理层,由他们下达新的指示。相当于为车间引入扰动因子,打破旧平衡,让其在更高维度形成新的平衡。

数据化:信息化到了一定程度,就要对数据做整合,对一些数据结构进行调整,并通过算法让他进入到业务流程里去,去驱动业务流转,此过程,需要对重复数据进行合并,对无效数据做清理。

可以搭一个数据平台,把其他系统的数据全部采集过来,在这里来实现业务需求。比如,我要知道下单到客人收到货要多久,在这里一查就知道结果,比如最长多久,最短多久,通常多久,或者还有其他各种情况对应的时间。总之,你不能还跑到erp,wms,mes,crm,物流系统去查一堆样本,然后做各种可能性预估,再计算一下,然后加一加,才得到结论。

智能化:实现数据化之后,引导职能部门去应用数据,并搭配工厂里面的自动化设备,实现工厂业务的自决策的过程。

工厂的最终目标是智能工厂,作为一名合格的制造IT从业者,在进行不同阶段的系统建设,都要牢记这个使命,围绕顶层设计,为后续的扩展打好基础,不能只顾眼前场景的实现,而图一时方便。而是要结合起来看。

PS:所谓顶层设计是一种宏观的面向长期的设计思路。我们思考一个对象,通常有两种方式:一是往大了去思考,也就是把这个“对象”放在一个更宏观的系统里面,当成其中一个组成部分去思考。另一种是对其构成进行拆解分析。这两种思考立场,得出结论是不一样的。我们要结合起来应用,做到既胸怀千万里,又心思细如丝。

宏观方面可以参考分层模型。

4.分层模型

工厂信息化模型,大概是五层:

第0层:是业务,包括车间活动,比如检验;

第1层:就是采集业务数据的数据采集点的硬件,比如传感器,扫描仪,RFID射频这些硬件,这是现实工厂和虚拟工厂的界面;

第2层:就是服务于采集硬件的软件,面向每个数据采集工站提供支持,这更多是工站级别和车间级(或生产段级)的,比如plc,dcs,scada,sfc;第3层:就是执行层,它是对数据采集点采集的数据进行关联处理,然后形成对跨车间级生产实际执行过程的镜像模拟,mes,wms,物流系统。

第4层:就是计划层,主要是面向企业的运作,执行层只要把最终结果同步过来就行,不需要知道细节。比如产能排布,深圳多少产能,长沙多少产能,杭州多少产能,资源不够跨市怎么调度。库存维持多少,wip维持多少,各个地方整体直通率多少,能吃多少订单,产能不足是人不够还是机器不够,人要什么策略,机器要什么策略。这些大的都是在这一层,erp,mrp,crm等。

MES如果从分层模型来看,它属于执行层,上面有计划层下面有采集层,它只是其中一部分,起到承上启下的作用。也就是,它一定要包含有集成的设计方案,主要是两类接口,一是对计划层的接口,二是有对采集层的接口。对下,MES需要把采集来的信息进行预处理和计算,对上,要把数据再同步给其它上层软件。这些同步的数据里面,有些是直接数据,大部分是处理后的间接数据。这就是把MES当作模型的一部分要思考的地方。

另一方面,则是mes本层的一些任务需要在自身实现闭环。也就是微观自洽的部分。

比如这样一个场景:物料带治具,治具带RFIDtag标签,一起投入自动化机台,机台的CCD拍照获取物料连续十个尺寸值,计算后工站cnc加工的补偿值,然后将此补偿值写入物料的RFID标签内。物料进机台加工时,读取补偿值写入某个宏变量,由宏程序调用进行加工,过程参数上传mes。

这是一个获取个性化参数进行加工的需求,包含是两个由多组硬件组合在一起的数据采集点,包括光电开关、RFID读写器、天线、工控机、CCD、CCD控制器、自动化控制器等。其中,光电开关用于识别物料是否进料口,其他硬件也分别有各自的需求满足。在这个场景里,只要任何一个方面出现问题,机台就会无法运作。

比如光电开关坏了咋办?标签识别通过天线和reader实现解析,如果终端没有返回数据要怎么处理?到底是天线问题、标签问题、Reader问题,还是通信问题?如何快速判别?这些细节都应该包含在前期的解决方案设计过程中。如果一开始,就按照默认硬件都不会坏的方式去设计接口而不考虑这些业务上的具体问题,到时候现场直接停线的可能性就很大。所以延时处理和一些可靠性验证逻辑就要纳入一起规划,达到在这个具体环节的闭环。

上面的例子可以看出,除了考虑技术的架构和数据处理方案之外,对于许多细部业务闭环的思考也非常关键。

这里就要深入到对MES的构成进行思考,去厘清其内在结构以及各结构之间的逻辑关系。

5.MES业务模块的组成

根据前人总结,MES大概会包括这些功能:

a.数据采集

这很好理解,系统是电子世界的事情,现场执行事务要转换成数据才可以处理,比如:你要分析某个制程一个月产出了多少数量的物料,那就实时或者按照一定频率记录一下周期内生产的物料数,然后把它存下来。

b.履历与历史

数据被记录了,那就可以倒查历史履历,比如:一个车窗带一个二维码,从冲压到喷涂到总装,做一站扫一下二维码,某一天的漆有问题,直接就可以锁定到这一整批产品了。

c.工作流指派

产品从头到尾的工艺可以很长也可以很短,像手机各部件加起来工艺随随便便几百道,怎样做才能良品率和效率高,单件成本低,都靠流程在限制,这一部分也要固化在系统里面,因此就需要工作流管理功能。比如,某一批产品染色失败,要重工,那肯定要先去退镀,然后才能重工,你可以扫一下码,系统自动就呼叫物流车给你拉到指定退镀区域。具体怎样上料,清洗,先过什么槽后过什么槽,这些组合在一起就是一个个工作流。

d.过程管理

规定好的工作流,总是可能失效,失效就要报警,还有就是一些明显错误的东西系统要予以阻止,比如自动化装配,提前根据产品要求规定好各个部件的规格和型号,现场装配之前扫一下部件码,不匹配就不让装。这就是过程防呆。针对已经明确的一定发生,但不知道何时发生的异常进行阻止,和对一些发生之后就会可能导致某些异常的事件进行预警,这是制造现场经常会用到的过程管理手段。

e.生产调度

比如车轮和底盘,各自加工,最后要到总装车间进行装配,最好是要一起到,不能一个先到再等另一个,这就需要调度来完成。调度需要依靠算法来完成。

f.过程执行分析

针对一些业务指标,就要捞数据来分析,比如效率怎么样,就要抓一下机台的单位时间产出,算一下。比如直通率怎样就要抓每个工艺的良率来乘一下算出一个结果。(制造管理有一套指标体系在,这些可以由系统协助来得出实时结论,以评估现场的执行绩效)质量管理通常也算执行过程的一部分,但是由于质量范畴和体系化比较完整,也可以单独拿出来变成一个模块来分析。

g.资源管理

生产过程是一个资源消耗的过程,哪些资源被占用,哪些资源空闲中,哪些资源当机了待维护,针对这些状态系统都要进行识别和记录。

h.维修管理

维修总是会有一些经验传承,需要被记录,针对一些大型设备一旦发生停机就会有大问题,要有一个整体的检修计划和预防性点检。

i.人力资源管理

现场工位要配人力,某些特定岗位对人有特定的技能要求,未受过相应培训不允许上岗,另外还有对人员进行考核和管理的需求。

j.文档管理

现场文件更新和标准更新以及历史版本的记录,比如电子sop/sip/点检表/通知单等等。

k.计划管理

以上都准备好之后,就要对整个投入产出进行满足能以及进度的指标追踪(比如物料到哪个制程多少数量,良品多少,不良品多少,入库多少,重工多少之类),结果通常要回写给计划层。

上面的十一个方面就是MES的主要功能组成。到这里,对于MES是什么的了解就从服务对象深入到模块了。

可是,还不够。因为上面的任何一个方面都可以继续深入和细化。比如,一张计划工单,它进度落后了,到底是什么原因导致?

直接原因是料没做下去,可是又是什么导致料没做下去呢?拆解完,发现可能是设备当机,也可能是物料问题,还可能是文件没更新按照旧标准投的料等等。所以,为了更好定位这个原因,就需要跨模块集成。

以上只是其中一个业务,其他业务也是同样道理,这样多模块多业务的相互交错和集成,导致跨模块数据交互变得非常频繁,形成一张网。比如像这样:

purue参考模型

复杂的业务关系造就了复杂的系统逻辑。可是,愿望上我们还是要追求一套简洁的信息系统的。这就迫使我们不得不去寻找模块的最佳耦合,通过前期的顶层设计,让它实现解耦,做到交互多但是却很清晰(从长远角度看,这其实才是MES系统的竞争点)。显然,这个单纯从IT角度显然很难找到答案,因此我们必须把目光转向业务,厘清业务之后再回过头来搞技术方案。

6.回到制造本身

A.业务模型的通用性和客制化。

制造系统管理的对象是制造,它的架构应该是贴近制造业务的架构,所以,如果我们能够对制造过程进行抽象,并形成一套体系的话,那么借助这个体系就有可能构建出一套制造管理系统的有效业务框架。

产品的制造过程伴随着产品形态的改变,针对每一个形态有都一个标识,这个标识就是料号。从一个料号变到另一个料号,说明被加工过了,加工需要消耗资源,比如场地、设备、水电气等等;加工不是胡乱加工,需要按照操作标准流程进行加工,这个操作流程通常叫SOP。SOP也就是标准操作规范。人或者机器人按照规范消耗资源,将物料从一个料号变成另一个料号的过程就是加工过程,而资源的价值透过这个过程也一并被记录到这个被新的料号标识的产品里。

工厂因其生产的产品不同,有不同类型,大体上,可以分为流程型、离散型、单件生产,虽然跨类型的工厂差异非常大,但是基本活动是一致的,就是:搬运、加工、储存、检查这四个,如果再加上不得不的对物料状态的区分,还可以加上“收料”和“发货”,基本上是这六大类事务。此外就是一些预处理的辅助活动。这些生产活动某种程度看是通用的,与行业无关。离散制造介于流程制造和单件制造之间,兼具二者的的许多特性,可以以其为学习对象深入研究。

制造主要活动可以被定义为搬运、加工、存储和检查这四个,其中最复杂的是加工,抛开工艺差异性,可以概括为是料号的跳转,它的特异性体现在对某个特意。

针对工站和辅助活动的再细分才和具体行业以及工序息息相关。所以,理论上,MES在某个粒度界限之上实现通用,似乎是可行的,只是,如果再要细化时就要进行客制化开发了。

其中,所谓细化的部分,其实还是和具体场景有关,举例来说,加工,它包括人工使用工具加工,人工使用设备加工,人工使用工具和设备加工,设备使用工具和设备加工,多工站连线加工。当我们从加工的视角去看,它似乎没有行业别限制,无论是流程型制造、离散型制造,还是单件制造,无非也就是以上几种情况之一。

而进一步向下去分。以“人工使用工具和设备加工”为例。它们彼此之间的组合关系,和以下变量有关:设备固定或移动、工具随物料移动或固定,工具和物料关系是一对一还是一对多,工具是否循环使用。(比如清洗机这个工艺,设备是固定,清洗框会随物料一起循环使用,一个清洗框可以装N个物料(N=包规)。焊接这个工艺,设备是固定,治具随物料移动循环使用,一对一或一对二关系。)到这里,工站和设备、工具以及资材挂钩,通用依然有可能,但是再往下去探究他们之间的属性,才是客制化需求。

所以,为了服务于业务,我们在设计MES模型的时候,就需要将模型和属性分开来设计。比如,设备模型方案,大概就可以这样:

模型定义字段包括:设备大类、设备名称、设备编号,设备能力组(这是一个能力集合)。

设备业务属性:为了设备管理的属性,可以增加供应商、采购时间,点检规范集(备件部件的检点清单等);为了设备加工的参数采集的属性:所属工站、物理位置(楼层车间线别工位)、加工程序来源、程序名、参数组等。

也就是先要有一个通用的模型的主表,然后再根据业务需求设置关联分表。这样,业务需求不同,我们就要针对业务设计系统方案。这是因为系统本质上就是对实际业务进行数字化镜像映射。如果我们能够对制造的运营场景模型有一个全面的认识,那么系统设计方案就会相对变得简单。

B.制造运营的难点

制造运营分为三大业务块:在库、在制、在途。这里面最难得是在制,在制变量最多。当每一片物料在车间里面散出去加工之后,它的自变量就是全生产要素,同时还受自己影响,比如来料不良成品就质量就受到影响。而且,这些自变量不是孤立的,也不是链式的,而是螺旋上升式的。车间里面的一点点风吹草动,一旦没有被有效控制,它首先会传导到某个工站,然后透过物料传导到其他工站,最后搞乱整个车间。因此,所有生产管理者都致力于将车间扰动控制在一定幅度界限之内,以尽可能维持产出的稳定性。

以pcs在制业务又可细分为:品质管理、工艺管理、生产管理(交期)、资源维持几个方面。

除了生产活动之外,还有就是静态资源,比如:厂房、设备、模治具,以及人员、规范这些。

mes要做的事情就是对生产环境进行全息建模,然后针对生产现场的执行情况进行动态模拟,当实现了工厂上线之后,就可以借助it手段进行实时监控、问题分析,问题防止,问题解决等等。

比如掌握定单进度这件事情,如果实现了系统建模之后,那么生产业务问题就可以转换成算法问题,这些是it工程师擅长的方面。

mes系统的核心在于对生产业务的建模,反应现场实时情况,进而警示哪些计划中的事情没有发生,以及发生了哪些计划之外的情况,而不是什么提升效率,降低成本,提升oee,这些事情mes是办不到的,它最终还是要工厂管理者和工程师去搞。至于对工艺管理,品质管理,设备管理这些职能的辅助,则都是建模实现之后的结果,而不是说这些就是mes的功能,这样讲给人感觉是它们好像一个一个是割裂开一样,并不是工厂事实。单独去做这些,对于提升产品的整体效率和质量未必有效,甚至有时候还会额外增加生产负担。

四、MES入门的路径

如果认同以上观点,那么入门mes的路径就会变得相对清晰。

1.静态和动态建模

要掌握工厂的静态元素和动态元素,以及它们如何衔接。比如,车间,流水线,工站,设备,工具这些如何建模,然后业务上有什么勾连逻辑,比如车间里面有流水线,流水线上面有工站,工站有设备和工装,人要按照一定的sop规范在某个或某几个工站去操作设备进行产品加工。流水线上面的工站有些是有顺序关系,有些是没有的,针对没有顺序关系,就有调度需求,怎样确保oee最高。另外就是产品建模,系统里面要定义好产品,比如大类,属性,走什么工艺。实际上现场在走的时候要设立数据录入点,实现线下线上同步。等等。这样就相当于在程序世界搭建起来了一座工厂,物料ID在这座线上工厂运作就相当于在实际工厂加工。如果数据点设置得当,并且每个数据点操作也得当,那么mes才可能成功。

有了线上工厂之后,我们才可以去考虑什么品质管理,进度追踪,生产履历,工艺管理,设备管理这些。而这些各种各样的管理,他们之间如何切分边界,逻辑上如何勾连,显然是建模之外另一个最重要的方面。也就是对静态模型的动态业务处理。

2.业务方面

基本上,在工厂,最重要的是出货,然后是质量,再是产能,追溯,设备管理。而它们之间其实是高度相关的,比如出货出不赢,可能是产能受影响,质量出问题,质量ng,可能是设备出故障,刀具磨损,人工不行等等。如果生产过程中这些都有做好存储的话,分析明显就会快很多。

这里面业务非常多,而且也是比较复杂的。举一个例子,关于投入产出这个业务。

投入我们定义为原材料,产出定义为成品,原材料和成品中间的状态定义为wip。首先一个生产单元,它的wip应该是相对固定的,如果是连续生产的话,它是时时固定,也就是每时每刻你去看,它都应该是那么多,比如某个车间wip是80k,那么它就应该围绕80k上下微浮波动(同类产品相同资源时)。其次,产出的不良也是相对固定,而不良有些是可以重新循环回去主流程,比如重工,这个重工品成本的话是一次良品的n+1倍,n是重工次数。如果你要做好进度追踪,并且要追细的话,对这些状态以及状态之间的跳转就要做好区分,赋予不同属性。

还有就是对于80k产能的维护涉及到多个类,比如设备大类类,设备类,设备能力特性和它们的值,人员大类类,人员类,人员能力值,以及物料的一些数据结构和处理方法等。这些彼此都是勾连在一起的。如果模型建不好,做出来的追踪看板就不可能准确了。

如果都准确的话,对于生产监控就会有很大意义。因为,只要一旦本该稳定的数据,开始不稳定了,那就一定是人机料法环某一个方面出了问题,系统可以自动调用不同模型来进行处理。

比如,某些记录和结果之间显然是有因果关系的,透过工程师分析和系统记录,慢慢的就可以设立一系列防呆规则,只要一触发某个条件,系统就可以自动做出相应处理,比如停机,调整参数,发送短信给某个特定人等等。

这些模型需要工厂长期积累,并逐渐随着系统迭代固化到MES里面,汇聚成工厂里面驱动业务发展的原动力。

3.物理模型举例

主要模型设计包括对类的抽象和对类的定义,抽象就是要总结出表达车间内实体的一些类的组合,定义就是对类组合里面的每一个类的属性和操作进行详细描述。

比如针对设备和人员,首先要有大类(不是软件里面的类,而是类型,比如加工设备,检测设备这样的分类),然后小类型,加工设备可分为点胶设备,焊接设备,冲压设备,成型设备等等,最后是具体某台设备的定义,比如点胶设备001。以上三个结构层次上具有继承关系。

针对上述类的详细属性都要针对性进行定义,比如,大类,要有一个id,大类名称,维护人员,描述,维护ip,维护时间,状态等等。这些属性支持的操作也要有,比如名称可以修改,整条记录可以删除,等等。

一系列诸如此类的模型和其他模型和操作共同构成了整个MES。

具体模型要怎样构建,就需要在工作和实践中去不断总结和完善了。改善永无止境,这是所有历代工程师的信仰。

只有我们抱持对工厂的热爱和对车间工作人员的同理心,持续精进产品,完善软件设计。MES对产线的服务才能越做越好。

合理并且有效地运用企业级低代码开发平台构建MES系统,不仅可以让我们工作高效地运行,还能最大程度保证团队目标的达成。织信Informat低代码平台基于数据模型优先的设计理念,提供大量标准化的组件,还内置了自动化(自研的一套图形化编程)、脚本、工作流引擎(BPMN2.0)、自定义API等功能,能帮助企业构建高度复杂核心的业务系统。如MES、ERP、PLM、SRM、WMS、项目、企业服务等多个应用场景,全面助力企业落地数字化转型战略目标。

但是,不管说得再天花乱坠,都不能代替产品本身。好产品,值得大家切身体验。

  • 11
    点赞
  • 45
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
MySQL多数据源是指在一个应用程序中同时使用多个不同的MySQL数据库来存储和管理数据的技术。它可以帮助开发人员更灵活地处理各种数据库操作,提高程序的性能和可扩展性。下面是一个完整的MySQL多数据源教程。 一、设置数据库连接信息 1. 在应用程序的配置文件中,创建多个数据库连接的配置项。例如,可以为每个数据源创建一个配置项,分别命名为db1、db2等。 2. 在配置项中,设置每个数据源的连接信息,包括数据库地址、用户名、密码等。 二、创建数据源管理器 1. 创建一个数据源管理器类,用于管理多个数据源。该类需要实现数据源的动态切换和获取。 2. 使用Java的线程安全的数据结构,如ConcurrentHashMap来存储数据源信息。将配置文件中的数据库连接信息加载到数据结构中。 3. 实现方法来切换不同的数据源,通过传入数据源的名称来切换到对应的数据库。 三、实现数据源切换 1. 在应用程序中,根据业务需求选择需要使用的数据源。可以通过调用数据源管理器的方法来切换数据源。 2. 在DAO层的代码中,根据当前使用的数据源名称,选择对应的数据源进行数据库操作。 四、使用多数据源进行数据库操作 1. 在DAO层的代码中,区分不同的数据源,并将数据库操作的代码包装在对应的数据源中。 2. 在业务层的代码中,调用DAO层的方法来进行数据库操作。不同的数据源会自动切换。 五、处理事务 1. 如果需要在一个事务中操作多个数据源,可以使用分布式事务的方式来处理。 2. 可以使用开源的分布式事务框架,如Atomikos、Bitronix等来实现多数据源的事务管理。 六、监控和维护 1. 使用监控工具来监控多个数据源的使用情况,包括连接数、查询次数等。 2. 定期对数据库进行维护,包括索引优化、数据清理等工作,以保证数据库的性能和稳定性。 通过以上步骤,我们可以实现MySQL多数据源的配置和使用。使用多数据源可以更好地管理和处理不同的数据库操作,在提高程序性能和可扩展性的同时,也提供了更灵活的数据操作方式。同时,需要注意合理选择和配置数据源,以及监控和维护数据库,以保证系统的运行效率和数据的安全性。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值