制造执行系统MES(Manufacturing Execution System)作为联系计划层和控制层之间的纽带,越来越受到企业的重视。在设计和开发MES时,软件开发者有时重复研究、开发相同或相似的MES系统。开发人员不能把精力集中到业务和流程等主要方面。因此把软件复用技术应用到MES系统的设计和开发上,提高软件生产效率。使得软件设计和开发人员能够更专注于业务的优化与流程重组。显得尤为重要。
软件复用技术包括代码、设计以及分析复用,以框架为代表的较高层次的软件复用能够带来更大的经济效益。框架是整个或部分系统的可复用设计,表现为一组抽象构件及构件实例间交互的方法;另一种定义认为,框架是可被应用开发者定制的应用骨架。前者是从应用方面而后者是从目的方面给出的定义。框架方法在很大程度上借鉴了硬件技术发展的成就。它是构件技术、软件体系结构研究和应用软件开发三者发展结合的产物。框架为实现特定领域的软件复用提供了很好的技术支持,它不仅实现了代码的复用。而且使设计和分析也能复用。
1. 框架的领域分析
与传统类库相比,框架与领域密切相关,它定义了特定领域应用系统的公共结构。而类的复用并没有领域相关的限制。类是一种小粒度的可复用资源。而框架则提供了系统级的可复用性。支持系统的、全面的软件复用,是一种大粒度的可复用资源。
框架总是面向特定领域的,是对特定领域中一组应用系统的共性进行的抽象表达。开发人员只有掌握相关领域的知识。对该领域的具体应用系统进行全方位的了解,才能开发出针对该领域的框架。框架的开发需要得到领域知识,而领域知识的获取离不开领域工程技术。框架的设计需要提炼出构件并提供集成机制。实现后的框架又反作用于相应的领域。为该领域系统软件的开发提供支持。
MES从生产计划下达到生产排产、组织、执行、控制,直至生产出合格的产品。它贯穿生产管理全过程。MES以生产计划为主线,以调度为核心,通过合理的组织和安排,调动各种生产资源,达到企业生产成本最小化、效益最大化的目的。通过将各种资源进行合理配置与管理,通过产品需求与企业资源有机地结合,既满足用户及市场要求,又使企业资源得到充分合理的利用。
MES在企业系统的三层结构中起着承上启下,填补计划层和控制层之间的空白的作用。MES本身也是各种生产管理的功能软件集合,包括:工序详细调度、资源分配和状态管理、生产单元分配、过程管理、人力资源管理、维护管理、质量管理、文档控制、产品跟踪和产品清单管理、性能分析和数据采集等十一个功能模块。
由此可见,MES系统有很多的子系统、子模块,各个系统之间关系错综复杂。因此建立多层次信息处理平台、深层次实现各相关部门的信息交换并为相关部门和领导决策层提供高效、准确的辅助决策支持平台。这不仅有助于加强生产活动的综合管理,深化经营理念,也有助于大大提升公司系统的生产管理工作和绩效水平。MES系统具有普通MIS系统的特点。其主要任务是完成行业日常结构信息处理任务,包括对基础数据进行严格管理;确定信息处理过程标准化;同一数据和报表标准格式;对数据进行加工和处理;支持信息管理和决策工作等。概括起来,MES系统具有以下几个特点:①MES系统是一种分布式应用系统,表现为系统资源的分布性和客户的分布性;②MES系统是一种有较高安全要求的应用系统。由于系统涉及的使用人员和维护人员级别不一,系统应杜绝未经授权的任何操作;③MES系统中许多子系统都涵盖、对应多种数据类型的大数据量的数据,要求考虑数据获取、处理、分析等复杂性;④MES系统需要与车间层操作控制系统SFC(Shop Floor Control)之间进行通讯,涉及到从实时系统读取数据,这就要求通信的实时性。以及将实时数据按一定的要求进行采集、实时准确的转存到相应的系统数据库中;⑤由于MES系统在制造企业信息化体系中起到一个集线器的作用,与ERP等系统集成对MES系统具有重要的意义,所以设计时要充分考虑到系统的可集成性;⑥由于企业的需求会有变动,所以设计系统时要充分考虑到系统的通用性和扩展性,以满足企业的不同需求。因此,系统要在设计时充分考虑到系统的可扩展性、可集成性要求。并且尽量采用符合开放式标准,健壮的平台。
2. 共性模块
经过框架的领域分析。抽象出的共性模块有:
(1)数据操作通用模块。MES系统通常采用面向对象技术进行程序开发,而关系型数据库是持久化数据存储的成熟解决方案。开发MES时通常同时使用这两种技术。在面向对象的分析设计中使用实体(Entity)来表示系统的抽象概念。分析模型中的实体在设计中需要考虑存储,常常又被称之为数据对象(Data Object)。但关系数据库并非Object-Oriented(至少目前来说,对象数据库OODBMS还未成为商用系统的主流),因此常常需要考虑如何在设计中应用面向对象的设计思想来处理数据的持久化问题。数据操作通用模块采用目前流行的O/R映射框架(帆Mapping Framework)技术来让开发者减少编写增加、修改、删除、和查询数据库代码的工作量。O/R框架顾名恩义就是进行Object(对象)到Rational(关系型数据存储)的映射。O/R框架通过某种方式定义实体,属性到数据表,字段的映射。框架给开发人员提供对象访问接口来操作对象的增加、修改、删除、和查询,而不是使用SQL。对于底层数据的访问将由O/R映射框架来完成。
(2)实时数据通信模块。MES可以采集设备、仪表的状态数据,以实时监控底层设备的运行状态,再经过分析、计算、处理,从而方便、可靠地将控制系统、信息系统整合在一起。并将生产状况及时反馈给计划层。同时,MES还可以将计划层的指令传递给底层控制系统。没有MES则存在着管理、控制的断层,就会使现场的一个个自控系统各自为政。导致自动化孤岛的存在。车间的实时信息的掌握、反馈是制造执行系统对上层计划系统正常运行的保证。车间的生产管理是制造执行系统的根本任务,而对底层控制的支持则是制造执行系统的特色。因此实时数据通信具有重要的意义。
(3)缓存服务模块。在面向对象应用中,开发人员创建对象作为业务实体模型:通过创建和使用这些业务对象,来完成应用的一项服务。创建太多的对象会消耗额外的计算资源。很多情况下。创建一个对象并不仅仅是使用一条new语句这样简单。为了创建业务对象开发人员经常需要获得很多附加参数。而获得这些参数和创建对象本身是完全不同的过程。要求消耗另外的计算资源。为了消除重新创建对象的开销。进而也消除相关的附属开销。一种办法是只创建对象一次,并把它放在“某处”。这里的“某处”代表很多不同的含义,它可以是私有字段、数据库或者Web服务端点。应用可以在从该处取出这个对象。并在任何需要它的时候访问该对象的服务。这种技术被称为缓存技术。它可以减少业务对象的创建次数从而起到提高系统效率,节省资源的作用。
3. 结束语
本文提出的MES系统框架,已经在实际实践中取得了较好效果。使用结果表明利用框架技术能大大提高MES系统的开发效率,缩短开发时间,并能减少开发中的错误。
CIO之家 www.ciozj.com 公众号:imciow