2009-10-15 09:03:07 来源:万方数据
0 引 言
制造执行系统(Manufacturing Execution System,MES)作为连接位于企业计划管理层(MRPⅡ/ERP)和车间操作控制系统执行层之间的桥梁,是实现企业信息集成的关键。现有的MES并不像ERP系统那样能用于通用的制造环境,MES的解决方案不能很好地支持敏捷企业的需要。在通用对象请求代理结构(Commom Object Request Broker Architecture,CORBA)的基础上,通过设计可重用的体系框架和构件库,实现制造执行系统在分布异构环境下的可重用、可重构性。同时引入多代理机制,各种构件通过代理实现语义上的互联,才能使重用的层次从代码上升到知识的层次,有效增强系统的可移植性和可扩展性,才能使开发可重构MES成为可能。
本文提出了适合离散制造行业的可重构制造执行系统的软件体系结构。基于CORBA软构件技术实现了可重构MES构件的设计,指出了构件设计过程中的关键问题,并给出了解决方法。在MES的体系结构中采用多代理技术,实现了制造执行系统的各功能模块之间的互操作。
1 可重构制造执行系统的软件体系结构
制造执行系统重构不但要求能够应用可重用的构件快速开发出所需要的系统,而且体系框架本身应能根据需要进行快速地重组。从设计模式的角度看,体系框架是一个给定应用领域中的完全的软件系统模式,是大粒度的可重用构件。开发可重构的体系框架是开发可重构敏捷MES的重要的一方面。
本文提出的制造执行系统的体系结构分为三层(见图1):基础架构层、基于构件的MES框架层和应用层。

图1 可重构MES软件体系结构
(1)基础架构层:基础架构层是软件体系结构的基础,为应用提供分布式的计算环境(如:CORBA和DCOM等)。它包括网络通讯、分布式数据库、网络操作系统、各种服务器和用户接口等。CORBA是整个结构的支柱,CORBA的核心是ORB(Odject Request Broker,对象请求代理),它作为转发消息的中间件,提供了一个可以无缝连接和即插即用的软总线,实现了对象间的无缝集成和互操作,提高了软件的安全性和可重用性。
(2)MES框架层:MES框架层包含了MES领域的一些公用构件,这些构件是从MES领域中的相同功能实体中抽取出来的。如:生产调度管理构件、资源管理构件等。MES框架层不仅提供了定义一个软件的基本构件模块,也定义了MES软件的构件及其之间的关系,同时也定义了设置具体功能时更改的插件位置。此框架提供了一种使MES得到统一的解决方案。它的最终目的是能动态地组装构件,实现软件的即插即用。
(3)MES应用层:通过将上层各种功能构件向功能代理的映射,具体实现某一项车间生产业务。该层的各个应用软件组合成各种实时运行的功能对象,有效地对生产进行控制、管理和调度等。该层的其他应用软件还包括与车间设备的接口、ERP的接口等。在MES应用层中设置了与上述构件对应的功能代理,包括生产调度代理、资源代理、数据接口代理等。在应用与代理之间、代理与代理之间均以一定的方式连接,实现MES的各功能模块之间的互操作。
2 可重构MES的实现技术和方法
2.1 可重用的MES框架
面向对象的应用程序相对基于过程的应用程序虽然用细颗粒的对象取代了粗颗粒的过程,且用方法调用取代了过程调用,从而实现了重用功能,但是重用的量是很小的。软件框架是一内嵌有控制结构的抽象软件,是一个等待实例化的完整的系统。软件框架不仅仅重用了代码,而且重用了分析与设计,从而使得软件框架的重用率远远高于其他方式的软件重用。在某机械加工企业我们提出了在总装车间和普通加工车间同时实施车间生产管理与控制系统(见图2)。总装车间实施的车间生产管理与控制系统一方面与原有的企业资源计划系统ERP集成,并与本车间的加工设备的控制系统连接,另一方面为普通加工车间提供生产计划指令。在实施时将MES软件框架用Java编译成对应的软件所组成的包,通过import来重用软件框架。

图2 双联MES框架
2.2 可重用构件的设计
构件是软件设计的基本单位,基于构件的设计过程包括两个方面的内容:构件的设计;基于构件的软件设计。开发可重构的制造执行系统的关键问题包括构件的获取、构件的设计和构件的管理。在构件的管理当中,重点是构件的描述与检索,为建立构件库管理系统做好准备。在制造执行系统的构件设计中,重点进行以下工作:
2.2.1 构件的获取
为了实现软件的重用,构件必须具有一定的面向特定领域的通用性,即构件所提供的功能可为多个系统使用。由于构件技术是在面向对象技术基础上发展起来的,因此可以借助面向对象的抽象、继承、封装等特性进行构件的抽取。为了保证软件的可重用性和可扩展性,构件一般应采取小而精的结构形式,但考虑到对构件的查找检索和组装方便的需要,设计构件时既不能粒度过小也不能粒度过大。
(1)业务功能对象的分解与合并
依据制造执行系统协会(Manufacturing Execution System Association,MESA)对MES的功能定义,结合企业的实际情况,定义制造执行系统的各个功能模块:生产调度管理、工序详细调度、资源管理、文档控制、过程管理、数据采集等。根据业务流程的要求可进一步分解各功能模块,如可分解成:生产指令单、订单完工状态、废品H 次品、生产分析报告、BOM、条形码等。由此可得到反映不同生产业绩的较小粒度的对象实体。对细分后的业务功能,按照具有相近业务流程的业务进行合并的原则构成构件。通过合并,可以适当增大构件粒度,减少构件数量,以利于存储和检索。
(2)业务功能对象的提取
从业务对象中分离出不变要素与可变要素。不变要素由抽象级构件实现,而可变要素由实现级构件完成。抽象级构件概括性、通用性较强,既可实现具体的业务功能,也可供其他实现级构件继承其接口。由于构件技术是在面向对象技术基础上发展起来的,因此可以借助面向对象的抽象、继承、封装等特性进行构件的抽取(在后面的实例中具体说明构件的抽取方法)。
2.2.2 构件的设计
构件的设计内容主要包括:问题域部分的设计,人机交互界面与应用控制部分设计。我们采用的构件设计方法和面向对象的程序设计类似,在此只作简要说明。问题域部分的设计主要对面向对象分析的结果进行改进和精化,并将其由问题域转化到解域,主要解决构件的属性、方法、关系、对象行为等。对于属性在设计阶段要根据具体的实现平台、编程语言进行数据类型的调整。去掉那些在分析阶段有助于问题的解决但在设计阶段可由其他属性导出的属性。优化调整一些类和对象,去掉冗余的类,增加有用的类。所有的类都确定以后还要明确哪些类的对象会引发新的类。然后进行构件间的消息调用描述,依据行为模型确定对象间消息发送的先后顺序,并设计相应算法,协调对象的行为。人机交互界面与应用控制部分的设计:针对具体实现中的人机界面、数据存储、任务管理等因素补充与现实有关的部分。主要包括:系统界面表示层的设计,交互界面子系统和应用之间接口的设计。应用控制部分的设计是完成应用部分的驱动工作,它们同界面子系统中的对象发生作用,控制系统的运行。
2.2.3 构件的描述与检索
当所开发的构件越来越多时,如何有效地描述构件和准确地检索构件是建设构件库的两个关键问题。构件的描述方法很多,如刻面描述法、框架描述法、基于神经网络的方法等。
根据制造执行系统的特点,本文主要采用集成式框架描述法描述该系统的构件。构件存放在构件库之中。构件应按照实现功能和应用范围的不同进行分类存储。如:按照应用范围的不同,将通用的构件放在通用构件库中,将企业特定要求的构件放在专用构件库中。构件库实际上是一个数据库应用系统,但构件的源代码以及相关分析、设计、测试文档等与具体的数据库存储格式不同,所以不适合直接存储在数据库中。解决的办法是选用具体操作系统的文件系统进行管理。
检索机制是构件库的另一个重要方面,构件库应提供多样化的查询手段以减轻查询者的负担,提高检索效率。本文设计构件库时提供以下检索机制:(1)按刻面查询,即通过选择任意刻面的一个或多个术语迅速限定构件的范畴。(2)提供导航搜索机制和基于Internet的检索服务,以适合分布式环境和协同工作。(3)建立同义词典,统一意思相同或相近的词,提高检索的速度。(4)引入相似程度的概念,根据检索条件可设定一些检索参数在相似程度计算中的权重系数来区别检索过程中的侧重。
3 MES构件抽取过程实例
构件的抽取方法主要有两种形式:一种是从已有的系统中抽取可重用的构件,另一种是开发初期从系统分析入手考虑构件的抽取。在此主要讨论后一种情况。基于UML的构件抽取方法如下:
通过USE CASE映射系统的需求视图,得到系统的功能模型。通过交互图描述用例的流程和所涉及的类。
分析制造执行系统涉及的角色主要有:车间主管、系统管理员、调度员、计划员、物料管理员、检验员、设备维护员、工人、ERP、设备等。对于每一个USE CASE都有一个业务对象来实现。如:生产调度管理对象负责人员、设备、物料等资源的调度,通过基于有限资源能力的作业排序和调度来优化车间性能,保证正常生产,满足生产提前期的要求。资源管理对象包括:设备、人力、物料等业务对象。它的功能是描述资源的类型,负责资源的创建、消除,跟踪资源的状态,预订和分配资源等。在制品管理对象负责对交给车间的各种工件进行管理,提供在制品跟踪查寻,各道工序加工质量检验和核准,并根据一定算法对车间在制品库存进行调配等。
分析USE CASE的交互图得到类图,用来描述系统的静态结构和完成功能的实体,详见图3。通过分析类图,抽象出系统的构件模型,图4为抽取的在制品管理构件。

图3 部分MES构件类图

图4 在制品管理构件
4 结 论
CORBA和软构件技术的结合,为解决制造执行系统的可扩展性、可移植性和可重构问题提供了有效的方案。采用本文提出的可重构制造执行系统的软件体系结构,MES构件的设计技术与方法,可以帮助开发出可重构的制造执行系统,实现企业信息系统的有效集成和重构。
免责声明:本网站(http://www.ciotimes.com/)内容主要来自原创、合作媒体供稿和第三方投稿,凡在本网站出现的信息,均仅供参考。本网站将尽力确保所提供信息的准确性及可靠性,但不保证有关资料的准确性及可靠性,读者在使用前请进一步核实,并对任何自主决定的行为负责。本网站对有关资料所引致的错误、不确或遗漏,概不负任何法律责任。
本网站刊载的所有内容(包括但不仅限文字、图片、LOGO、音频、视频、软件、程序等)版权归原作者所有。任何单位或个人认为本网站中的内容可能涉嫌侵犯其知识产权或存在不实内容时,请及时通知本站,予以删除。
