中间件的MES与ERP系统信息集成技术

日期: 2009-08-20 来源:TechTarget中国 英文

  1 引 言

  随着我国计算机信息技术的高速发展、计算机软件应用技术的不断普及、企业信息化建设经验的不断积累和计算机信息管理系统应用水平的提高,企业深刻地认识到走信息集成化道路的重要性。为此,摒弃“信息孤岛”,消除“应用峡谷”,实施信息集成化技术,实现MES与ERP系统集成,已成为企业信息化建设发展的一种必然选择。过去实现MES与ERP集成均为专用接口集成,整合的时间过长、成本过高,且不能适应变化的企业需求。现在主流的集成技术为基于中间件的系统集成,即通过通用中间件的桥梁作用把各种ERP和MES系统连接起来,实现信息在两者之间的交互与共享。因此本文提出采用BizTalk server作为中间件的集成方法,并说明了此中间件引擎采用的技术和实现的标准。

  2 基于中间件的集成平台的体系结构和工作原理

  2.1 系统各模块功能说明

  ·MES事件:生产车间现场的实时事件,包括“装配站组装开始消息,组装结束报完工消息,中间立库各种物料消耗及剩余信息,质量异常或AGV工装异常”等;

  ·订阅/发布:XML信息交换适配器创建订阅以指示其接收MES发布的事件消息;

  ·支持ISA95 XML标准的信息交换适配器:由“接收适配器”和“接受管道”,两部分组成,在生产过程中,“接收适配器”随时接收MES的消息事件,“接受管道”严格按照企业信息集成的国际标准S95封装为标准XML格式文档,文档一经生成,即被传输到XML DOM解析器进行解析;

  ·MES数据库:使用Microsoft SQL Server 2000实现,用于存储生产现场中的各种生产数据;

  ·Message Box数据库:使用Microsoft SQL Server 2000实现,内部存储由企业事先定义的各个业务流程生成的XML架构文档,即XMI Schema文件,通过XML DOM解析器用以验证XML适配器所生成的XML文档是否符合某个业务流程定义的文档架构;

  ·XML DOM解析器:该模块对照存储在Message Box数据库中的指定架构或架构组验证XML适配器生成的XML文档,如果文档与任一架构不符,则返回原文档,不预处理;

  ·ERP系统适配器:接收Message Box数据库的XML消息,并将其转换成ERP应用程序支持的文档格式供ERP处理;其内部结构同ISA95 XML信息交换适配器,由发送适配器和发送管道两部分组成。

  2.2 系统流程概述

  1.生产现场有生产事件发生时,MES通过消息的订阅/发布机制,有选择的将事件消息传送到XML适配器中进行封装处理,XML适配器处理好的标准XML格式文档经XML DOM解析器解析,如果其结果符合企业事先定义好的某个业务流程的XML文档架构,则该文档会传输至Message Box数据库,然后被发送到其目标业务流程,后者将执行业务流程要求的所有操作。每个业务流程都创建订阅以指示其接收的消息类型。经过此处理,得到由业务流程创建的另一消息并将其保存在Message Box数据库中。消息通过ERP适配器发送出去,此过程中拆装XML格式文档为ERP应用程序可接收的消息格式。ERP接收到消息请求及时做出响应,从而实现企业各个生产经营环节的信息贯通和共享。

  2.系统通过动态对ME5数据库的检索查询,发现需要由ERP做出新的动作(例如下达新的总装或分装生产计划)或对MES层发出新的指令(如某总装工位的料架补料指令或分装工位的中间产品调度指令)时,发布新的消息请求到XMI、适配器,然后消息处理流程同上一段中所示。

  3 中间件引擎的关键技术和实现标准

  3.1 信息集成的内容遵循S95标准

  S95企业控制集成标准的产生是来源于实际应用集成的需要。2000年以来由ISA(美国仪表、系统和自动化学会)制定和发布了“企业与控制系统集成标准”,即S95标准CS95标准定义了各企业系统与控制系统集成的模型,提供了企业活动和控制活动的统一接口和数据结构。

  S95为信息交换提供了标准,减少了MES-ERP集成的费用,与产品的生命周期管理协同工作,提供生产能力和状态,提高了生产制造的灵活性,提供了一套信息集成的架构和标准模型,定义了ERP和MES的界限和信息流,定义了生产过程中需要在标准所定义层级之间共享和交互的3种信息流,需要交互与共享的信息主要分为三类:生产能力信息、产品定义信息、生产信息。

  S95标准以对象模型的形式定义信息,用各个对象的属性描述具体信息。图四所涉及的三类信息在标准中均定义了相应的对象模型及其组成子模型,模型和子模型的属性及示例值也均有严格定义。后面要实现的具体示例中要集成的具体信息为对应物料模型的物料子批次类的属性。

  3.2 消息封装格式应用XML技术

  XML可扩展标记语言(extensible Markup Language)以其规范性、自描述性、数据表达的灵活性等特点很好地适应企业信息集成的要求。随着XMl相关技术和应用的发展,XML不仅成为了各种应用程序间交换数据的一种标准,也是互联网中重要的信息交换标准和表示的技术之一。

  一个XML文档由XML事例文件和架构描述文件两部分组成,事例文件主要描述XML文档的具体内容,而架构描述文件则使用架构描述语言定义事例文件中的标记及标记之间的关系。架构描述语言主要包括DTD和XML-Schema,而在2001年5月2日XML-Schema成为W3C组织指定的代替DTD的XML架构语言标准。XSD(XML Schema Definition,XML Schema定义)是W3C提出的XSD Schema定义(XSD Schema Definition)标准的通用名称。XSD优点如下:

  ·XSD Schema也是XML文档,采用与XML相同的语法

  ·可以为元素或属性指定XSD Schema中的数据类型

  ·允许自定义数据类型,或使用44种预定义数据类型之一

  ·提供了在数据元素上定义键值的功能,从而实现了唯一性

  ·支持面向对象类型的继承,即一个Schema可以继承另一个Schema

  ·允许定义可以相互替代的元素

  通过XSD Schema能够定义一份XML文档的格式内容和数据。当一份引用了XSD Schema的文档被支持XSD的解析器进行验证时,它要确定该文档是否符合Schema中所定义的标准。

  3.3 企业应用集成平台采用BizTalk server

  BizTalk Server是微软开发的一款分布式集成服务器产品,它以Message HUB模式提供EAI解决方案,以SQL SERVER 2000为后台数据库管理系统,以VS.net为宿主来设计开发具体的应用集成解决方案。企业内部所有应用程序整合都可由BizTalk Server引擎内部处理,在此平台下需要开发设计特定的适配器(接收、发送适配器)和相应的接收发送管道,并设计定义相关的业务流程来完成企业应用的集成。

  4 利用中间件引擎买现ERP与MES集成示例

  方案实施结合西安法士特齿轮厂MES项目进行说明,MES软件平台为GE-Fanuc的Plant Application软件系统Proficy,ERP系统为SAP,这里SAP的接口适配器设计为可以处理平面文档,此文档中包含了从相应的XML文档中分离提取出的有用信息。

  4.1 方案应用案例

  在变速箱壳体装配过程中,随着各种零部件的消耗,分别为总装配站和分装配站料架提供物料的MES中间立库会定期发布物料补充请求,请求中包括立库中储存的各种物料的消耗和剩余信息;当某一种物料的剩余数量接近于deadline时,就需要通知ERP补充物料了。应用案例拟定为实现MES中间立库物料补充这一业务流程。业务流程设计为当MES中间立库上的特定ID号的某零件剩余数量第一次少于100时就必须由MES通知ERP从库存准备物料了。而当此种零件剩余数量大于100时则会由通过BizTalk映射器生成“拒绝请求”返回给立库应用程序。

  4.2 开发平台和工具

  本文选用如下.NET开发工具和服务器来实现此物料补充过程的业务流程:

  开发平台:BizTalk Server 2006

  开发工具:Visual Studio.NET 2005

  编程语言:C#.net

  操作系统:Windows2003 Server

  后台数据库:SQL Server 2000

  4.3 方案实现步骤

  4.3.1 创建XML架构以定义数据和物料补充请求的结构

  S95标准严格定义了企业中ERY与ME5系统集成的信息内容,遵循此标准,MES中间立库发布的物料补充请求消息格式应与S95标准中物料模型的物料子批次类的属性一一对应,而在中间件引擎中我们用BizTalk编辑器编码生成的用来验证补充请求架构的XML Schema更是与S95标准保持一致,即标准中对象模型类的属性对应Schema中的元素,而属性值对应Schema中的元素属性值。这样MES中间立库发出的物料补充请求消息经XML适配器封装生成标准XML格式文档发送至DOM解析器,验证其XSD符合“物料补充业务流程”文档架构,然后由后面设计生成的订阅该文档架构的业务流程进一步处理。

  下面的图表列出了S95物料模型的物料子批次类的属性表,以及对应的用BizTalk编辑器定义的XML架构(侮个属性相对于schema中的每个字段元素)。

  4.3.2 修改“请求”架构的属性

  在BizTalk架构编辑器中,使用“升级属性”将架构中的Quantity字段定义为可分辨字段,并将Quantity字段元素的数据类型定义为unsigned int,以便业务程序计算其值大于还是小于100。之后,每个请求实例都可以访问该字段,可分辨字段是具有特殊作用的消息数据,主要用于决策或处理业务流程中的数据。修改“架构编辑器扩展”属性,选择要与“请求”架构关联的平面文件扩展。平面文件扩展通过添加可将数据保留在架构中的批注,提供对平面文件的支持。

  4.3.3 创建业务流程

  在决策形状中构造布尔型表达式以计算要请求的数量,以便路由相应的消息。本方案所用代码表达式为:
  
  RequestInstance.Item.Quantity>100

  (Quantity即为图五所示的Schema中的子元素)

  4.3.4 “Quantity>=100”的处理-BizTalk映射器

  创建XML架构以定义“请求被拒绝”消息的结构,如果物料补充请求因Quantity超过100而被拒绝,则“补充请求”架构中的数据需要映射到或转换为所创建的“请求被拒绝”架构。将传入消息中的字段链接到为传出消息定义的字段,因为这两种消息的架构结构不同,因此必须做文档格式的映射和转换处理经过此步实现,“请求”文档将会被映射生成为“请求拒绝”文档返回给立库。

  4.3.5 “Quantity<100”的处理-使用ERP系统适配器
  
  ERP系统适配器在本方案中可以等价为在BizTalk Server集成平台下用户自定义的管道设计器,提供对传入和传出的XMI消息执行正规的数据标准化的功能。在本方案中,需要将储存信息实体的平面文件发送到ERP系统,因此需要创建自定义发送管道,并使用可将XML转换为等价的平面文件格式的平面文件组装器组件配置该管道。该管道使用平面文件组装器组件将“请求”架构序列化为平面文件格式,然后将其发送到ERP系统。此过程的具体实现为编写“XML-Flat File”文档转换代码添加到“BizTalk管道组件”工具箱中的“平面文件组装器框架”,使XML格式的请求消息中的数据信息全部转换并保存在新生成的平面文件中。

  ERP通过处理此项请求,通知库存系统供货,使MES中间立库上的对应零件得到即时补充,实现了MES与ERP的信息的交互与共享,保证了生产的正常进行。

  5 小 结

  该文提出了一种基于中间件的MES与ERP系统的集成平台,实现了生产信息从MES系统到应用中间件、经过格式验证、映射、转换处理后,发送到ERP并由ERP回馈消息的全过程。在系统集成的过程中第一次使用了BizTalk Server作为集成平台核心中间件引擎,并在此平台下成功的实现了一个MES与ERP系统之间关于物料补充请求的信息集成的示例,实际应用表明该集成平台性能稳定、可靠性高。因此本文提出的以BizTalk Server作为MES与ERP系统集成的中间件引擎等关键技术对促进企业集成服务平台的构建、完成已有系统间的信息交互与共享等方面具有重要的现实意义。

  本文创新点:1.本文第一次把W3C组织的XSD文档规范与ISA95标准第一和第二部分关于ERP与MES系统集成的信息内容对应起来,建立起XSD文档规范中所定义的根元素子元素及其元素属性与ISA95标准中所定义的需要集成的信息内容的映射关系,即XSD文档元素对应LSA95标准中的对象模型属性,而元素值或元素属性值对应标准中的对象模型属性值,这样为在BizTalk中建立起需要集成的信息的模板奠定了基础。

  2.在集成领域内第一次建立起以BizTalk Server作为核心中间件引擎的信息集成平台,并在BizTalk Server中成功的融合了W3C组织的XSD文档规范和ISA95标准的对象模型属性,在其数据结构统一的基础上建立起两者的映射关系,以此为基础在中间件中实现了ERP与MES系统中集成的信自、内容的模板规范,真正统一了两类系统中需要集成和共享的信息内容及格式。

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

相关推荐