e-works数字化企业网  »  文章频道  »  产品创新数字化(PLM)  »  PDM/PLM

基于消息驱动的制造业信息化集成平台

2006/3/8        作者:江艳芬  张芬      
关键字:集成平台  消息驱动  星型架构  多层部署  信息化  制造业  
提出一套面向制造业信息化整体解决方案的集成平台模型与实现体系。针对企业要求平台具有架构灵活、快速部署、低成本和高性能通信的需求,平台采用了基于消息驱动的星状结构集成模式;支持客户端/远程服务器/集群服务器的三级集成部署;采用COM和TCP/IP混合分布通信的方式。并用实例说明通过信息集成平台实现的基于3D的特征工艺设计流程。

    0 引言

    制造业信息化发展到21世纪,"集成"和"协同"成为其主旋律。根据Meta Group的统计,一家典型的大型企业平均拥有49个应用系统,33%的预算是花费在传统集成上,通过零星的"端对端"连接方式将众多的"信息孤岛"联系起来,以便让不同的系统之间交换信息[1]。根据摩根斯坦利公司对大企业CIO的调查,在主管企业信息化人士所关心的问题中,如何将众多的企业应用集成起来,是他们最为关注的热点。制造业信息化集成平台在异构分布环境下(操作系统、数据库、制造设备),提供各类标准化和规范化系统集成及资源共享服务,使得所有接入制造网络系统的用户能够实现跨地域的、透明的、一致的信息以及资源访问与交互,支持特定领域的软件系统及各种制造资源的共享与集成[2] ,实现数据、功能、流程三个层面的集成需求。制造业信息化集成平台的研究与应用涉及到体系结构、运行模式、实施方式以及企业的流程重组等众多问题。本文研究并探讨一套架构灵活、部署快速、易实施、低成本的集成模式和集成框架,开发实现现有应用软件(CAD/CAPP/ PDM/BOM等)无缝接入的集成平台。

    1 基于消息驱动的应用集成模式

    制造业企业信息化集成平台的集成模式主要包括拓扑结构和信息交换方式两个方面。由于制造业企业涉及的应用场景和应用软件种类繁多,各种应用软件的开发工具、开发语言、数据结构等差异性大,因此要求平台构建成一个既分布又集成的系统,表现为:平台需要具有统一的架构,以提高复用性,降低信息化的成本;平台要提供"简单灵活"的特性,包括简单的开发、简单灵活的部署和简单的管理;在企业的基础硬件上建立的架构是可扩展的、标准的、开放的。

    目前应用系统集成的拓扑结构主要包括:①"端到端接口"的集成结构。如果在一个子系统中有从另一个子系统获取信息的需求,则开发并开放一个从这子系统到另一个子系统的接口。单一的一条通道的建立快速而且费用较少,可以作为集成需求产生的初期的应急解决方案。但是,随着集成需求的增加,接口数量剧增且复杂,相应地增加了维护与支持工作量,缺乏可重用性。②星型(Hub/Spoke)架构。它是将所有需要集成的应用都连接到一个中间的数据/转换接口服务器上,通过中间服务器来完成应用之间的交互。这样系统的连接结构就从一个网状转到星状结构。在信息交换方式方面,目前主要包括三种方式:①基于文件或数据库的交换。它是非实时的,一般用于软件系统的数据集成之中,无法使用这种方式进行功能或流程集成。②过程调用的方式。它是进行功能集成时常用的手段之一,但它使得系统间耦合性很强,降低了系统的灵活性[3]。③基于消息驱动的交换方式。应用之间的功能调用和信息交换都以消息的发送/传递/解析/响应的方式进行。

图1  平台逻辑结构

    为了使得平台能够快速实施、快速部署、简单管理以及实现透明化、智能化集成、本文采用基于消息驱动的星型(Hub/Spoke)集成模式(平台逻辑结构如图1所示)。将对象、功能调用以及需要交换的信息以消息的形式发送给平台的Hub逻辑总线,中心平台实现消息路由与解析,定位到目标应用资源,目标应用响应消息以完成与源应用的集成交互。为了屏蔽不同应用之间的差异,设计了不同的代理(Agent)、制定相应的规则,使得平台与应用之间可以进行标准的通信。此外,对系统内的相同或相似应用,建立并采用相同或相似的消息格式,以提高集成架构的重用性。基于消息驱动的星型(Hub/Spoke)集成模式改变以应用为中心的观点,实现集成逻辑控制。

    2 系统部署与通信框架

    2.1 多层次集成部署

    在制造业信息化系统集成中,从应用系统的物理位置来看,有一部分集成是在本机进行的,如CAD系统与PDM的界面集成,有一部分是跨机器进行的,如PDM和CAD的远程功能集成。而常见的应用集成平台产品一般没有考虑集成系统的物理位置这一因素,统一按照跨机器集成的需求设计实现平台架构。这样带来如下两个缺点:(1)集成的效率不高。即使两个应用系统在同一台机器上,仍然通过远程的集成平台交换数据。一方面加重了集成平台的负载,导致集成平台瓶颈。另一方面,由于经过网络传输,使得数据交换的速度下降。(2)部署不够灵活。即使只需要进行本地的应用集成,也需要在服务器端部署平台。如果服务器出现故障,就无法进行集成。

    为了避免上述的缺点,在集成平台的设计中,考虑了应用系统物理位置这一因素。使用本地服务器/远程服务器的多级服务器模式,同时支持本地/远程两种集成方式。而且可以通过配置文件或平台应用接口中的相关接口选择需要的集成方式。如果集成的双方都在同一台机器上,可以使用本地服务器实现应用间的本地集成;否则,使用远程集成服务器完成集成。值得注意的是,即使集成的双方都在同一台机器上,仍然可以正常使用远程集成服务器完成集成,但是从集成效率和稳定性考虑,应该优先选用本地集成模式。这样一方面增加框架的灵活性,即使远程集成服务器无法工作,在本机也可以进行集成、协同。另一方面可以有效的减少集成服务器的负载。集成平台的部署如图2所示,主要部署的功能模块如下:

图2  系统部署

    (1) 代理 安装在客户端,以动态连接库(DLL)的形式存在,提供给客户(CAD/CAPP/PDM/BOM等)调用集成平台功能的接口。代理在使用时,加载进入客户程序进程,代表客户程序与本地服务器进行通信,并接收、过滤、分发传递给客户程序的集成和协同消息。对平台或者客户端程序而言,彼此的内部结构是不可见的,仅需要同代理交互,就可完成集成和协同。这为集成平台的功能扩充和内部结构的变化提供了便捷。完成部署后,集成平台可以独立的升级、变化,而无需改变客户端程序。

    (2)本地服务器  第一级通信服务器,位于每台使用平台的客户端机器上,以COM服务器的形式存在(EXE),主要的功能:①与本地所有的代理通信,提供本地集成和协同的功能;②与远程服务器通信,作为远程集成和协同的中转和网关服务器。同时进行用户认证,加密传送的信息,提供安全服务。本地服务器在每台机器上只有一个实例,以保证每台平台客户端机器与远程服务器只有一个TCP/IP连接。本地服务器的启动和关闭由代理控制。在某一代理需要和本地服务器通信时,本地服务器被创建并启动,然后其它代理可以连接上本地服务器。本地服务器的生命周期由引用计数控制,当引用计数为零时,其自动关闭。本地服务器对外提供应用开发接口,利用该接口,可以扩充集成平台的功能。

     (3) 远程服务器  第二级通信服务器,安装在主服务器端,主要功能:①远程集成和协同的处理。②接收集群服务器的注册、注销,根据注册信息以应用资源池的形式管理所有应用程序资源;同时为请求分发器提供服务,动态查找空闲资源,并更新应用资源所处的状态;③进行用户认证,加密传送的信息,提供安全服务。远程服务器对外提供界面开发接口和应用开发接口。可利用界面开发接口开发服务器管理、配置、控制界面。此处的应用开发接口和本地服务器端的应用开发接口完全一致,所以符合应用接口开发规范的集成模块可以方便地在本地服务器和远程服务器间进行移植。

    (4) 集群服务器  安装在子服务器上。它是应用资源发布工具,随系统一起启动,启动时根据配置文件向远程服务器注册相关应用资源信息。成功注册后,可接收远程服务器转发的请求,并根据请求调用适当应用适配器,处理应用功能调用请求。

    (5) 应用适配器   在进行功能集成时使用,企业各种应用资源(如CATIA、UG、PRO/E、KMCAD等)以动态连接库(DLL)的形式发布。对该应用的调用请求最终通过应用适配器的接口传递到动态连接库内部,然后再根据请求的详细内容调用应用的接口,完成用户请求,并向上返回处理结果。例如客户端CAPP程序需要从UG文件中提取工艺特征信息,在这个过程中需要调用UG的一些功能,但是不想为每个CAPP客户端安装UG程序,可以采用平台解决这个问题。首先在服务器端安装UG,编写UG的应用适配器,部署到平台中。然后在CAPP中通过代理生成并发送调用请求,实现远程功能调用。这样在所有CAPP/PDM/BOM/用户的机器上,即使不安装CATIA、UG、PRO/E、KMCAD这些软件也可以使用CAD的造型功能从而降低了企业中各种CAD 3D应用系统的装机数量,减少了企业的软件运行成本, 并且节省了客户端大量宝贵的硬件和CPU资源。

    (6) 界面集成、协同应用模块 位于通信框架之上,集中处理集成和协同中的应用逻辑,以动态链接库(DLL)的形式存在,被平台以插件的方式加载和卸载。功能包括应用间数据格式转换、应用协同时消息路由、应用流程重组等。平台的功能扩充主要指的就是增加集成协同应用模块。在开发集成协同应用模块时,不需要考虑数据和消息的接收和发送细节,只需要专注于集成或协同的逻辑开发。

责任编辑:张飞
e-works
官方微信
掌上
信息化
编辑推荐
新闻推荐
博客推荐
视频推荐