0 引言
制造执行管理系统(Manufacturing Execution Systerm,MES)是企业信息系统中十分重要的环节,它是位于上层的计划管理系统与底层的工业控制系统之间的纽带,是实施企业敏捷制造战略和实现车间生产敏捷化的基本技术手段。目前MES系统主要应用于流程工业和大型离散制造企业,在中小型离散制造企业中应用比较缺乏和不成熟,其中MES系统的可配置性差、可复用和可重构性不强是原因之一。而中小型离散制造企业普遍存在制造实力弱、资金不足、管理制度不完善、基础落后、技术不强等不足。因此,中小型离散制造企业迫切需要一个能依据企业本身需求而自由配置所需功能的MES系统来提高企业的信息化程度和综合竞争力。
为此,本文根据某企业的车间制造流程的实际需求,在基于.NET中的反射机制以及组件复用技术的理论基础上,提出了可供中小型离散制造企业自由配置的MES配置系统的概念,给出了MES配置系统实现的理论基础、功能模型、实现流程和数据库映射图等关键技术。
1 理论基础
本配置系统主要由.NET的反射机制和组件复用技术来作为技术支撑。
1.1 反射机制
Reflection(反射)是.NET中获取运行时类型信息的方式,.NET的应用程序由几个部分:Assembly(程序集)、Module(模块)、class(类型)组成,而反射提供i一种编程的方式,让程序员可以在程序运行期获得这几个组成部分的相关信息。通过反射,可以在运行时获得.NET中每一个类型(包括类、结构、委托、接口和枚举等)的成员,包括方法、属性、事件,以及构造函数等。还可以获得每个成员的名称、限定符和参数等。有了反射,就能对每一个类型了如指掌。如果获得了构造函数的信息,就能直接创建对象,即使这个对象的类型在编译时还不知道。反射可以动态地创建类型的实例,将类型绑定到现有对象,或从现有对象中获取类型。它作为一个强大的工具,使开发者能够更加灵活地创建代码,为突破已有的设计模式、实现工厂类和服务端解耦、构建复用程度更好的系统提供了一个契机。本文则利用反射机制来构建软件框架。
1.2 基于组件的软件复用技术
组件是指可复用的软件单元,可以被用来构造其他软件,它可以是被封装的对象类、功能模块、软件框架、软件系统模型、软件的文档等。组件具有平台和语言无关性,支持即插即用,是支持软件复用的核心技术。软件复用是指在两次或者多次不同的软件开发过程中重复使用相同或者相似元素的过程。软件复用包括两个相关的过程:可复用组件的开发和基于可复用组件的应用系统构造。目前较流行的比较适用于复用的组件开发模型有CORBA、Java Bean、COM以及.NET模型。经过对这些组件模型的研究与对比,本文最终选定以.NET中Windows Forms作为本系统的组件模型。Windows Forms是Microsoft的.NET开发框架的图形用户界面部分,这个组件通过将现有的Windows API(Win32 API)封装为托管代码,提供了对Windows native组件的访问方式。使用.NETFramework的公共语言运行时(CLR),组件都建立在一个共同的底层基础上,不再需要复杂的管道接口,对象可以直接交互访问,这样非常有利于组件的自由配置。
2 功能模型
本文选取某企业的车间制造流程作为配置系统的功能模型,主要包括基础数据管理、车间计划管理、工段作业管理、车间人事管理、车间成本管理、车间物料管理、车间质量管理、制造资源管理、能力平衡管理、现场数据采集和辅助分析这些功能模块。由于本文研究的重点是配置功能的实现,所以仅选取其中的车间人事管理、车间物料管理以及制作资源管理来作为可复用组件设计的模型来建立可复用组件库,具体情况如图1所示。
图1 可复用组件库的建立
3 软件设计
本系统主要由登陆界面、可复用组件选择界面、主窗口以及重置功能组成。登陆界面用来分配用户的管理权限;可复用组件选择界面供用户根据自己的实际需求来选择相应的功能模块,如果组件库中不包含用户所需组件,用户也可以提出定制要求,按客户要求设计好的组件都会放入组件库中,随着组件库日益扩大,这种无法满足客户要求的情况将会越来越少地出现;主界面则是把所选择的功能模块利用反射机制动态生成一个UI菜单,供客户使用;重置功能是为了满足同一客户在不同阶段的不同要求而专门设计的,也是此配置系统的精髓所在。可复用组件选择好之后有保持机制,只要用户不使用重置功能,在本软件以后的使用过程中均无需再繁琐地选择功能模块。软件实现的流程如图2所示。
4 数据库设计
本文采用SQL数据库来管理和配置已经设计好的可复用组件,通过反射机制将配置信息结合起来生成一套动态的UI菜单来完成整个MES的配置过程。主数据库的设计包括主Menu设计以及下拉Menu设计。
图2 软件流程
4.1 主Menu设计
主Menu的主要功能是为了配置管理诸如车间人事管理、车间物料管理和制造资源管理这些粒度较大的功能模块。其关系模式为Menu(ID,Name,Display,Order),其中ID为标识,也是下拉Menu配置的参考内容之一,Name是一个唯一标识,Display是菜单显示名称,Order是排序依据,按照由小到大的顺序自左至右排列。
4.2 下拉Menu设计
下拉Menu的主要功能是为了配置和管理诸如人员管理、去向管理、仓库管理、出入库管理等这些粒度较小的功能模块。其关系模式为Feature(ID,Name,Display,Assembly,MenuID,0rder,SubFeatureID),其中ID、Name、Display和Order与主Menu类似,Assembly为对应的可复用组件的dll或者exe的名字;Type Name则是Windows Form的名字,主要用来简单地描述组件内部结构;Menu ID是主Menu前面的ID,ID为多少,可复用组件就会被配置到对应的主Menu之中;SubFeaturelD任意指定两个组件的ID,在他们之间建立通信。
4.3 数据映射关系
SQL的数据库映射关系如图3所示。
图3 数据库映射关系
5 结语
本系统以三层架构为基准进行总体的架构设计,以,NET框架中的Windows Forms为组件模型来设计可复用组件库,结合SQL数据库完成对组件的管理与配置,最后利用.NET中的反射机制来抓取SQL数据库中的可复用组件信息使其实例化后生成一组动态的UI菜单,完成了中小型离散制造企业MES系统的配置,解决中小型离散企业所面临的困境。整套系统经过一段时间的测试后,得出验证结果:整套系统性能稳定、界面简洁、可扩展性好、可配置性强、简单实用、成本较低、使用灵巧,可以推动中小型离散制造企业的制造信息化发展,提高自身的竞争力。
核心关注:拓步ERP系统平台是覆盖了众多的业务领域、行业应用,蕴涵了丰富的ERP管理思想,集成了ERP软件业务管理理念,功能涉及供应链、成本、制造、CRM、HR等众多业务领域的管理,全面涵盖了企业关注ERP管理系统的核心领域,是众多中小企业信息化建设首选的ERP管理软件信赖品牌。
转载请注明出处:拓步ERP资讯网http://www.toberp.com/
本文标题:基于.NET反射机制和组件复用的中小型离散制造企业MES/ERP配置系统研究
本文网址:http://www.toberp.com/html/consultation/1082057700.html