1.2协同设计中的信息同步控制
首先由项目负责人对模具设计过程进行定义,将模具设计分解为若干子任务,根据了任务间的关联关系,建立模具产品装配讨。然后,根据任务的知识特性,将之分配给不同的设计人员进行详细设计(这些上程师来自不同知识领域和层次,具有不同权限的信息操作能力),直趸完成整副模具没汁。
在设计过程中,项目管理人员将不同的任务分给不同的设计人员,不同的设计人员即在不同的装配节点下进行各自的工作,对该节点下的几何模型拥有完全控制的能力,但对其他节点下的几何模型,只有浏览的权限。由于设计人员的设计模型保存在不同的装配节点下,并不会因为保存各自的设计结果而产生并发冲突。因而也就实现了模型信息的同步,并达到了冲突避免的目的。这样,任务与模具产品的结合,为设计过程的协同控制提供了渠道,而设计人员与模具产品的结合,为设计人员的协同管理提供了渠道。如此,很好地实现了模具协同设计过程中的模型同步控制。以级进模为例,在模具设计开始前,根据客户的需求和模具的特点定义,模具产品的装配树结构。
2 基于SOA的模具设计业务流程管理
2.1基于SOA思想设计系统
SOA的核心思想就是让应用不受限于技术,让企业轻松应对商业服务变化和发展的需要。通过将注意力放在服务上,应用程序能够集中起来提供更加丰富、目的性更强的商业流程。其结果就是,基于SOA的企业应用系统通常会更加真实地反映与业务模型的结合。
2.2用Web服务实现系统功能
从表面上看,Web服务就是一个应用程序,它向外界暴露一个能够通过Web进行调用的API。即其他用户能够用编程的方法通过Web调用束实现某个功能的应用程序,Web服务便是基于网络的、分布式的模块化组什,它执行特定的任务,遵守具体的技术规范,这些规范使得Web服务能与其他兼容的组件进行互操作。它可以使用标准的瓦联网协议,Web服务是目前实现SOA最重要的标准。
2.3WS-BPEL支持的业务流程管理
业务流程是一系列相互衔接、自动进行的业务活动或任务。一个业务流程包括一组任务以及它们之间的相互顺序关系,还包括流程及任务的启动和终止条件,以及对每个任务的描述。将各个服务组件看成业务流程中的任务,服务组合就转化为一个构建业务流程的过程。
WS-BPEL(Web Services Business Process Execution Lan-guage,服务业务流程执行语占)是为组合Web服务而定制的一项规范,它能够描述由Web服务参与的复杂业务流程,同时又能将Web服务组合而进一步包装成更为高级别的Web服务并发布出去。WS-BPEL定义了用来描述基于流程及其相关方之间互操作的qp务流程行为的模型和语法。WS- BPEL流程定义了这些相关方之间的多重服务互操作是怎样被协调起来达成业务目标的,以及这种协调所需的状态和逻辑。
2.4任务管理系统体系结构
为了实现模具产品异地设汁的高效协同上作,本系统采用业务流程管理技术作为技术支持,使用SOA思想对系统功能模块进行封装,构建了-个模具设计任务自动化管理环境。系统分为3层。
2.4.1用户层
用广I层位于客户端,提供任务分配工具和模具设计工具。任务分配工具是一个在JAVA平台上使用JGraph组件开发出的可视化的业务流程模型设计器,项目管理人员可采用此工具进行任务分配,业务流程模利设计器将任务分配的结果映射为WSBPEL语言存储在XML文件中,同时将该XML文件存入业务流程执行引擎所指定的目录,业务流程执行引擎读取此文件后自动运行业务流。模具设计丁具包括常用的CAD设计软件,如UG等,本系统在。NET平台上,使用 WMI(windows Management Instrumentation)组件开发出远程控制的功能,该功能被封装在服务器端的“任务启动服务”中,该服务能在指定的时间启动指定设计人员机器上的设计软件(如UG)。
2.4.2服务层
服务层位于服务器端,是系统的核心层。系统以Web服务的形式封装了任务管理系统的核心功能,其中包括文件传输服务、用户管理服务、任务列表服务、任务启动服务和消息服务。其中,文件传输服务提供文件的上传和下载功能;用户管理服务提供用户权限管理功能;任务列表服务提供设计人员任务列表管理功能,如一个任务(非原子任务)可能由多个设计人员完成,同时一个设计人员也可能负责多个任务;任务启动服务提供启动设计任务的功能(如前所述的“在指定的时间启动指定设计人员机器上的设计软件”);消息服务提供消息传递的功能。
2.4.3服务支持层
服务支持层也位于服务器端,该层的主要职责是为上层的服务层提供技术支持,其中包括数据库、业务流程执行引擎、FTP服务器、消息队列。如用户管理服务和任务列表服务需要数据库支持、文件传输服务需要FTP服务器的支持等。在此层中,业务流程执行引擎是任务管理系统的核心部分,它负责运行从用户层中传来的 WS-BPEL描述文件(即模具设计流程),以自动执行业务流程。系统中采用开源的ActiveBPEL Engine作为业务流程执行引擎。
3 应用实例
作者在JAVA平台上开发出了一个模具协同设计任务管理系统,该系统现在还处于原型系统阶段。下面还是以级进模设计为例,来说明该系统的运行过程。
图形化的业务流程设计器界面,如图5所示。项目管理人员通过浏览器登录后即可访问此界面。
每-个节点都代表着一个设计子任务。子任务中包含有设计人员、设计任务外始时间、设计工时、CAD模型文件名、模具设计应用程序、消息文本等信息。当项目管理人员将模具设计任务流程设计完成之后,便将其结果传入业务流程执行引擎,业务流程执行引擎即会自动执行此业务流程。同时,设计好的业务流程也可当作模板存入服务器,以便于日后重用。
当设计人员登录后,设计人员可通过调用“任务列表服务”查看自己所承担的所有设计任务,任务列表中同样显示了设计任务的开始时间、合计工时、CAD文件名等信息。当时问将要达到某项任务的开始时间时,系统会调用“消息服务”弹出提示信息来提示设计人员;当达到任务开始时间时,系统会调用“任务启动服务”和 “文件传输服务”,将用户的设计工具在指定的时间自动启动,同时,下载并打开CAD模型。当设计人员的设计工作完成后,可调用“文件传输服务”将设计结果上传到服务器中。
4 结论
根据模具协同设计的特点,提出了基于活动树的模具协同设计任务分解模型,该模型能够有效地保证协同设计过程中的信息同步。在此模型的基础上,将业务流程管理技术与基于SOA思想的Web服务技术相结合,开发出了一个模具协同设计任务管理系统的原型系统。该系统提供了可视化的业务流程设计界面,可以帮助项目管理人员做出科学合理的任务分配计划,并使得任务分配信息能在不同设计人员之间自动传递。该系统可大大提高模具设计管理的自动化程度,具有良好的应用前景。