基于BOM的可配置制造执行系统研究
2015-04-25李东波
何 非,李东波
HE Fei, LI Dong-bo
(南京理工大学 机械工程学院,南京 210094)
0 引言
制造执行系统是位于上层的计划管理系统与底层控制系统之间的面向车间层的管理控制系统。MES不仅能实现对生产信息的跟踪,而且能对信息加以分析,并对可能发生的事情进行预测[1]。目前,国外的MES的研究和应用已经取得了明显的成效,在国内一些典型企业的应用也已经取得成功。但是,传统的MES存在着一定的不足:1)应用范围窄、通用性差:传统MES一般只解决某个特定的领域问题,如车间质量管理、生产单元分配等;2)缺乏柔性、不易修改和扩充,可配置性差:传统MES是针对特定行业或企业的固定业务流程开发,系统不能随业务过程的变化进行功能配置和动态改变;3)开发周期长,使用成本较高,不利于在中小企业得到推广[2]。
针对上述问题,国内外已经对MES的可集成性、可配置性及可重构性展开研究,特别是工作流技术的引进,为制造执行系统的可配置提供了非常有效的途径。但是由于缺乏有效的理论支持,车间业务流程难以向工作流过程模型进行转换。而一些成熟的商业软件,如Siemens的“Simatic IT”等,其应用对象是以流程行业为主,将其应用到离散行业中则存在一定的缺陷。因此,本文针对这一问题,以装配型生产方式为研究对象,充分利用各种BOM信息,以工作流技术为基础,研究了一种装配流程可配置、业务组件可重构的制造执行系统。
1 基于工作流的MES
工作流是针对日常工作中具有固定程序的活动而提出的一个概念,其提出的目的是通过将工作分解成定义良好的任务、角色,按照一定的规则和过程来执行这些任务并对它们进行监控,以达到提高办事效率、降低生产成本、提高企业生产经营管理水平和企业竞争力的目标。工作流的运行是由工作流管理系统来完成的,工作流管理系统由两部分组成:过程定义和建模阶段及过程执行阶段。在过程定义和建模阶段,工作流管理系统将要建模的业务过程表示成计算机可处理的形式化描述;执行控制模块为工作流过程定义的执行提供一个运行环境,并根据工作流建模的过程定义,引导该过程的自动执行。通过管理系统和执行者的交互,可以有效推动工作流实例的进行,并监控工作流的运行状态[3]。
1.1 基于工作流的MES的体系结构
传统的MES开发需要为每个活动开发相应的用户界面和处理类,这些类既要完成业务过程的处理,还需要维护业务数据和过程数据,如果业务过程发生改动,则需要大量改动源代码,增加开发成本。
利用工作流技术可以在建模时,通过工作流模型完成业务过程,在执行时由工作流引擎控制过程的运行[4]。在基于工作流技术的MES中,通过把处理类中的业务过程处理掉,而只保留其中的业务逻辑,并将其作为独立的组件提供,以提高其可重用性。基于工作流技术的MES软件体系结构如图1所示。其中系统数据库存储了三部分数据:工作流模型数据保存定义好的组织模型和业务过程模型;工作流控制数据是工作流引擎维护的、用于记录过程实例与活动实例的状态信息;工作流业务数据是MES业务逻辑操作处理的数据[5]。
图1 基于工作流技术的MES系统体系结构
由此可见,将工作流引擎作为MES的核心,可以很方便把生产过程、组织结构、物料生产信息、生产运营资金和工作列表有效的结合起来,实现系统的可配置。同时由于业务逻辑和业务过程的分离,可以轻松实现MES的可重构[6,7]。但是,由于实际的生产运作流程是非常复杂的,而且不同的行业其生产方式也不尽相同,实际的生产现场也存在着大量变更与反复,因此如何快速、有效且完整的将实际的生产业务流程以工作流的方式进行建模成为MES可配置化的重要问题。
1.2 BOM与制造过程的工作流建模
制造过程是一个由原材料、毛坯、外购件等逐步变成在制品、半成品、最后变成成品的过程,其本质实际上是一个业务过程,其目标是最终的产品,其子目标则是对组成该过程的零部件的生产。因此,采用工作流的方式对制造过程进行建模,可以完整、有效的描述制造过程中经过的所有步骤,而且通过操作人员与系统间的信息交互,可实现生产任务的分配、协调和监督。
在生产过程的每一个步骤中,都要涉及一定的资源、设备、人员等,另外还要与之相关的基础数据,如设计数据、工艺数据、库存数据、装配数据等。通常,这些数据都包括在BOM中,但是BOM表达的是产品的结构或装配视图,是一种以产品为中心的建模方法。如果仅仅通过结构视图,是无法直接得到各项任务的时间计划的,只有通过过程模型才能确定工作进行的先后顺序,建立最终的任务时间计划。
因此引入基于产品结构的BOM来实现生产过程的工作流建模,为实现现实的生产业务流程在MES中的可配置提供了有效的途径。目前,已有学者对树型BOM的流程化建模展开研究,并取得了一定的理论成果。但是这些研究是以设计BOM为出发点的,其研究缺乏针对性,使得其成果难以在实际中得到应用。本文以装配型生产为研究对象,以装配BOM为基础,构建了一种制造过程的工作流建模方式。
2 基于装配BOM的工作流过程建模
2.1 装配BOM在装配过程建模中的作用
装配BOM主要包含了制造BOM中的部分信息,一是物料的基本信息及管理信息,二是产品在装配过程中所需要的装配信息。装配BOM中所需要的物料信息有:
1) 物料代码;
2) 常规管理有关的信息。如图号、物料名称、版本、物理状态属性等;
3) 同生产管理有关的信息。如库存管理信息(安全库存、分类编码等)、车间制造信息(提前期、物料供应信息等)、采购信息(采购价格、最小订货数量等)、销售信息(发运最小数量、是否可发运等)。
在装配过程中所需要的信息有:
1) 增加的中间件信息;
2) 各零部件之间的装配关系信息,如装配的先后顺序,装配所需的物料及数量等;
3) 零部件个体的工艺信息,如制造/装配时间等。
图2与图3分别展示了某产品A的设计BOM与装配BOM,其中斜线中的数字为所用零部件的数量,图4中的子部件为装配BOM中所有的中间件。
图2 产品A的设计BOM
图3 产品A的装配BOM
由此可见,针对装配型生产,较之设计BOM 与制造BOM,装配BOM能更清晰、更完整的描述产品的装配业务过程。首先利用其装配关系等信息,能够建立一个良好的生产工作流过程模型;其次,装配BOM中的物料信息,又为MES系统中其他各子系统的监控管理提供了非常详尽的依据。
因此选用装配BOM,能有效够构建产品装配的工作流过程模型,为MES中工作流程的建立供了良好的理论依据;同时,由于BOM信息可以直接从PDM中直接获取,便于装配过程工作流建模的自动建立,轻松实现MES的快速可配置。
2.2 基于Petri网的工作流过程模型
Petri网理论目前已广泛应用于制造系统的分析、建模和仿真中。作为一种图形化的建模方法,Petri网和工作流在结构之间存在明确的映射关系,在制造过程的建模和工作流建模方面得到了广泛的应用。Petri网包括三个基本元素,即库所、跃迁和连接。库所表示的是系统在该处的状态,跃迁则描述的是使状态发生改变而发生的事件,库所与跃迁之间的联系由弧连接,因此通过Petri网可以很方便的描述工作流活动之间的关系。工作流所定义的活动有四种结构:1) 顺序结构;2) 并行结构,包括有条件分支、与并;3) 条件结构,包括有条件分支、或并;4) 循环结构。表1显示了如何用Petri网来表示这些结构,其中正方形表示跃迁,用T标记,圆圈表示库所,用P表示[8]。
表1 工作流建模基本变迁结构
2.3 装配BOM向工作流模型的映射
从BOM和Petri网的基本特征可以看出,BOM表达的是产品的结构视图,Petri网表达的是过程视图。因此从产品装配的角度出发,实现产品装配的过程控制,在模型描述意义上就是BOM结构模型向Petri网过程模型的映射[9]。本文从装配BOM出发,结合文献[8]中的方法给出由装配BOM向Petri网映射的步骤。
首先对装配B O M 进行定义: 令BOM=(C,R,F);其中C是根部件,R是装配该根部件所需的子部件或零件,F为部件C和零件R之间的对应关系。Petri网的定义如下:令PN=(P,T,N);其中P是网中库所的集合,T是跃迁的集合,是连接库所与跃迁的有向弧的集合。
值得注意的是,由于本方法是以装配BOM为基础,因此其中PRE(准备)跃迁代表物料的准备与配送过程,而非产品的加工准备流程;ASM(装配)跃迁代表产品的装配过程,而不是产品的制造过程(PRO跃迁)。
具体映射步骤如下:跃迁,合并成一个节点。
图3中的装配BOM通过映射后得到的Petri网模型如图4所示。
图4 Petri网过程视图实例
通过上述方法,可以有效建立装配过程的工作流过程模型,其采用的Petri网建模方法不仅描述了主要的工作流过程关系,而且其中的库所和跃迁还能表示多种含义。库所可以表示任务开始的时间,任务执行单位,任务进行地点等非过程相关特性;而跃迁则表示对象通过该跃迁发生什么样的变化,执行多长时间等过程相关特性,是车间计划的执行、监控及变更的重要依据,为MES的工作流过程模型与各业务组建间的信息交互提供了重要的数据。
3 BOM信息的绑定及在各子系统中的应用
如图1所示,业务逻辑的驱动需要有相关的业务数据及控制数据的支持。因此,装配过程的工作流过程建模只是实现了MES可配置的第一步,要实现各业务模块与工作流模型之间的无缝集成,在其两者之间必须有严格的信息定义及接口方式,以保证各业务模块的顺利运行有足够的信息支持。所以在上述基于BOM的装配过程工作流建模完成后,仍需要在过程模型中绑定相关信息,如质量信息、物料信息及设备信息等,为各子模块提供有效的管理基础信息。
一般来说,这些信息都包括在各类BOM中,如物料的库存管理及配送信息包括在制造BOM中,产品的质量信息包括在质量BOM中,刀具及设备的使用信息包括在工艺BOM中,如果能够将这些BOM信息绑定到各个工作流程中,通过与各子系统之间的信息交互,则可以为MES的运作及管理提供有效的依据,保证了生产现场的有效监控及优化管理。
实际上,在以工作流为基础的MES中,已经具备了将外部信息绑定到各工作流节点上的功能,图5展示的是一般工作流MES业务模型的数据库关系图[5]。
图5 传统工作流MES的业务模型
图6 改进后的业务模型
其中“活动实例信息”记录的是各种任务,包括待处理的和已完成的任务;“业务过程信息”描述了MES工作过程并记录过程活动的功能配置信息,也就是业务工作流模型信息,其中表Process描述车间生产过程的总体信息,表Activity表示生产过程中的每个活动,表Transition描述活动转移路径;“功能配置信息”是将参数数据、用户界面和业务逻辑处理类可供系统配置调用,其中表DataSet记录了活动执行时调用的参数信息,包括参数传递信息、参数类型、参数顺序等,表Form描述操作的界面,表Application描述业务逻辑信息,并接受DataSet传递过来的业务数据。
由此可见,所有和生产过程相关的BOM信息都可以存放在DataSet表中,通过与生产工作流模型的关联实现与各功能模型实现信息交互,为各功能模块的监控与管理提供有效的依据。同时通过对现场数据的采集,可以将这些数据记录到数据库中,通过进一步的分析与处理,能够预测当前车间所处的状态,为进一步的生产计划的定制及生产过程中的物料控制提供了基础。
由于这些BOM都是以设计BOM为基础的,与装配BOM存在着相同的结构与形式,因此能够在工作流模型构建时直接从PDM导入,轻松实现信息的无缝集成。为了实现不同的BOM信息与相关的子系统的信息交互,其功能数据配置信息的数据库结构图如6所示。
下面从各类BOM出发,分别探讨BOM与相关子系统间的信息交互。
1)装配BOM与过程管理、作业计划及调度管理
前文已述,库所可以表示任务开始的时间,任务执行单位,任务进行地点等非过程相关特性;而跃迁则表示对象通过该跃迁发生什么样的变化,执行多长时间等过程相关特性,而这些信息都是包括在装配BOM中的。当任务计划下达后,标准的作业开始时间、结束时间、单件操作时间等信息即绑定到工作流模型中的各个节点上。当任务开始执行时,MES则通过过程管理系统从现场获取实际的产品装配信息,将这些信息与装配BOM中的标准作业信息进行比较,便能够轻松判断车间当前的生产运作情况。如果生产出现异常或实际生产与原有生产计划不符,调度管理系统可根据现场的数据做出生产调整,同时计划管理系统也可做出相关调整。
2)制造BOM与库存及配送管理
制造BOM中包含了各类零件的详细信息,如物料的来源信息、物料的使用数量、物料使用的时间差异等,是MRP不可缺少的基础数据,同时也为MES中的库存准备及物料配送提供了重要数据。由于明确了物料的使用时间、数量、类型和来源,库房可以清晰明了的查看各个工位所需物料的数量及时间,当任务下达后,可根据物料需求计划及时安排物料的采购及调运;同时协同过程管理和产品跟踪系统所提供的数据,能获取现场的物料使用情况及物料的当前需求量,通过这些信息可及时进行物料的准备及配送,并对现有库存余量进行监控,及时调整外协件的供应,确保生产的正常运行。
3)工艺BOM与工具管理及设备管理
工艺BOM中包括了各种装配工艺,自制件的加工工艺及设备、刀具、工装的使用等。通过工艺BOM,并借助底层控制系统,能实时记录并分析设备及刀具的使用情况,如设备的使用时间、故障发生率,刀具的使用时间、使用频率、刀具异常报警等,同时能够快速有效的制定设备的维修、保养、换油计划,刀具的准备计划采购计划等。
4)质量BOM与质量管理
质量BOM中包含了基本的质量规范、产品质量考核标准、产品和零件检测规程和方法、检验设备信息和不合格处理办法等。通过与工作流模型进行绑定,在自动检测点,能够对所采集的数据进行自动判断,实现质量的在线监控;在手工检测点,则能够提供相应的检验流程及方法,而且可以绑定相关的质量表单,方便工人填写实现电子记录。另外,利用这些产品的质量记录信息,可以通过统计分析等方法提取隐藏的潜在的有用信息,挖掘影响的产品质量问题的源头。
4 系统总体构架与实现
通过上述研究,我们已经找出了装配型生产的工作流过程模型的构建方法,并通过将BOM信息绑定到工作流模型中,实现了业务过程数据与业务过程模型的无缝结合。因此,以工作流引擎为核心,能成功实现制造过程的可配置及业务组件的可重构。其系统整体构架如图7所示。
图中工作流引擎由7个处理模块组成,其中任务管理模块是工作流引擎的控制中枢,用于处理在系统执行过程中所要进行的任务;过程访问接口用于解释业务过程模型,主要从PDM中获取装配BOM,将BOM转换为Petri网模型,构建工作流过程模型;组织访问接口用于解释组织模型及角色定义,将使用权限设定到业务流程的各个节点,实现系统的权限管理;数据访问接口则从PDM中获取数据,控制活动状态和过程转移数据,将各类BOM信息绑定业务流程中;组件调用接口调用MES业务逻辑组件,处理任务数据;用户操作接口实现用户界面和工作列表处理程序之间的交互;管理监控接口则通过底层工业控制网络采集生产过程信息,实现管理和监控功能。
图7 系统总体构架
图8 某部件的工作流过程模型界面
本系统应用JAVA技术进行开发,采用B/S的三层体系结构来构建企业的生产业务解决方案。其中表示层采用JSP技术,负责与用户进行交互,接受用户的指令等;业务逻辑层由Servlet和JavaBean等类型程序实现,根据用户的指令和企业业务处理逻辑,对数据信息进行相关处理,并将处理结果返回表示层;数据访问层则由JDBC连接SQL Server数据库,处理系统与数据库系统和其它应用服务的通信。目前该系统已经在某军工企业得到初步实现与应用,图8展示的是某部件级产品由装配BOM转化后得出的工作流过程模型。
5 结束语
本文以装配型生产为研究对象,充分利用各类BOM信息,研究了一种装配流程可配置的制造执行系统。以工作流技术为核心,利用装配BOM构建装配过程的工作流过程模型,并将其他各类BOM信息绑定到该模型中,保证各功能模块间的信息交互,成功实现制造过程的可配置及业务组件的可重构。实践表明,本方法符合装配型企业的实际生产需求,当装配流程发生改变或有新产品装配时,只需直接导入PDM中的数据,并通过一定的调整,能快速实现MES与实际生产流程的匹配。而且该系统无需重新编写程序,具有良好的可扩充性、可配置性及可重构性,大大缩短了系统的开发周期,节约企业信息化成本。
[1] Knill B. Application of Manufacturing Execution Systems [J]. Industry Week,1996,245(9):8-10.
[2] 李波,李辉,陈鹰.可重构制造执行系统的研究[J].机械科学与技术,2006,25(6):721-724.
[3] 范玉顺.工作流管理技术基础[M].北京:清华大学出版社,2001:28-54.
[4] CHIN-YIN HUANG. Distributed manufacturing execution systems: A workflow perspective[J].Journal of Intelligent Manufacturing, 2002,13(6): 485-497.
[5] 俞鹏超,杨建军.工作流在MES中的设计与实现[J].先进制造技术,2005,24(3):34-36.
[6] Zhou ZQ, Li MJ,Liguan SG. Research of Workflow technology for discrete manufacturing oriented MES[A]. 3RD CHINA-JAPAN Conference on Mechatronics 2006 FUZHOU[C].: 353-356,2006.
[7] Hwang HC,Choi BK. Workflow-Based Dynamic Scheduling of Job Shop Operations[J].International Journal of Computer Integrated Manufacturing,2007,20(6):557-566.
[8] 周万坤,朱剑英.面向制造过程的工作流建模[J].机械科学与技术,2004,23(2):230-233.
[9] van der Aalst. The application of Petri Nets to Workflow Management[J].The Journal of Circuits, Systems and Computers 1998,8:21-66.