并行工程中关于SOA的有限元封装技术研究
导读:基于SOA网格技术的大型复杂产品机车行走部的并行协同设计平台的研究分析,由本站硕士论文中心整理。
第一章绪论
1.1研究背景
复杂产品的概念于20世纪90年代中期提出,是指客户需求复杂、产品技术复杂、产品组成复杂、制造过程复杂和项目管理复杂的一类产品[[I]。当前,复杂产品设计过程中知识资源和智力资源常常异地分布,学科领域广泛交叉,产品设计活动日益趋向于在不同地域间分布,设计过程中所有的参与者需要不断地、实时地访问最新的相关产品信息。复杂产品设计成功与否的关键在于设计者能否与包括产品制造商、供应商、最终用户以及其他设计者在内的智力资源与知识资源充分的协作与交互。设计资源之间良好的沟通与互操作将起到缩短设计周期,提高设计质量,降低产品成本的作用[Z]。面对上述情况,传统的有限元分析方法仅仅依靠电子邮件等手段传递结果进行交流显然不能很好地沟通和互操作,而且不能实时地了解访问有限元分析的最新信息,从而降低了设计效率、提高了设计成本、延长了设计周期。
对于生命周期长或者复杂的产品,通常新产品的设计过程相当复杂,包括若干子设计过程,需要多种学科的技术支持,系统之间的集成更为重要。过去传统的产品设计理念已不能适用于现代复杂产品的设计,并行设计、协同设计、多学科设计优化等设计方法相继出现。以计算机集成制造系统信息集成技术为基础,美国国防分析研究院(IDA)于1988年提出了并行工程(Concurrent Engineering-CE)在企业这一层次上解决了制造业中如CNC, FMS, CAD/ CAPP/ CAM, MRPII,PDM等“自动化孤岛”中的信息集成问题[3]。
由于并行工程平台是建立在Extranet或Intranet顶层的分布式应用程序,鉴于网络固有的动态性质,并行工程平台需要考虑可靠性和柔性。在并行工程平台中,系统架构决定计算的软件资源如何联系,例如通过什么手段,他们可以相互调用。Remote Procedural Call(RPC)是构建分布式应用程序的基本手段之一。目前,有多种不同类型的”C,例如Microsoft DCOM, CORBA[4}, Java RMI, and Web/OGSAservices[等。根据这些RPC技术,在市场上有许多并行工程支持平台,在学术领域还有一些更原型的系统。基于客户机/服务器基础架构,或静态的SOA基础架构的这些并行工程系统,面对动态的网络环境,由于没有充分考虑网络动态不断变化的特质,将缺乏扩展性,柔性和可靠性。
本论文课题来源于北京交通大学科技基金项目(2006XZ001):面向高速机车的分布式智力资源并行协同设计平台的研究与开发。该项目旨在开发建立基于SOA网格技术的大型复杂产品机车行走部的并行协同设计平台,构建在分布式智力资源环境中,机车行走部大型复杂产品的设计理论、方法和技术的初步框架结构和体系,提出该类产品设计的建模、求解和评价的方法和技术,及其集成化、智能化和协同处理的策略;制定支持大型复杂产品设计、接轨世界、适合国情、具有分布智力资源和并行协同设计特征的软件平台的总体解决方案。
针对以上提出的情况,本课题在吸收借鉴校科技基金项目工作成果及经验的基础上,基于当前国际上先进的面向服务体系结构SOA (ServiceOrientedArchitecture),采用ANSYS作为有限元分析软件,将有限元分析封装成SOA中的服务,运用ANSYS参数化设计语言APDL ( ANSYS Parametric Design Language )通过SOA体系架构与ANSYS软件的封装整合,来支持并行工程中复杂产品的异地分布式有限元分析。
并行工程中基于SOA的有限元分析服务采用面向服务架构(SOA)作为底层开发技术,SOA具有广泛通用性和架构先进性的基本特点,其面向服务的架构可以根据需求通过网络对松散祸合的粗粒度应用组件进行分布式部署、组合和使用,种类众多的服务可以部署在不同区域,并且同一类服务可以有多个服务部署在不同的地方,如图1-1所示,便于服务跨平台、跨区域,使服务不受地域限制,随时随地进行,是实现设计资源良好沟通和互操作的有效手段。
1.2并行工程协同计算平台
并行工程是集成地、并行地设计产品及其相关过程(包括制造过程和支持过程)的系统方法[fgl。在协同设计中存在许多项的任务,这些任务可能由许多不同的开发者借助大量的软件工具来执行,彼此相互影响,并可能根据其他任务的反馈和分解来反复执行。此外,开发人员和参与设计的协作软件工具,甚至可能分布在不同的地理位置。因此,要实现一个分布式协同设计,需要引进并行平台来方便的交流沟通、促进各项任务及软件工具的合作和协调并行工程产品开发过程中的团队成员。其实,很多研究和开发工作在这一领域己经完成,并有一些在网络上支持并行工程的商业平台在市场上推出,但由于网络本身就是一个动态的环境,没有充分考虑内在不断变化的网络性质,并行工程平台将缺乏扩展性,柔性和可靠性。另一方面,近年来,面向服务架构SOA的研究工作进展平稳,从静态SOA到动态的SOA的新成果已在这方面完成。SOA可以提供一个动态灵活的网格计算的基础架构,例如SORCER (Service ORiented Computing EnviRonment)系统定义了一个动态的面向服务的元计算基础架构[[9],通过结合SOA和并行工程的发展现状,开发了灵活的并行工程平台:基于SORCER的面向服务的协同设计平台。有了这个平台,各种软件工具和实用程序可以很容易地整合为松散祸合的服务,在一个具体的设计过程中根据要求形成动态服务联盟。面向服务的协同设计平台提供的重用性、扩展性、可靠性和高效率,可以通过面向服务的编程和相关的动态SOA架构来实现。
在并行工程中,通常存在相互联系,密切相关的多项任务。例如,机械产品开发,可能由一个团队负责该产品的机械零件设计。设计工作可能包括多个任务:几何模型设计,静应力分析和动应力分析。静应力分析的任务又可以进一步分解为3个任务:网格生成,有限元分析(FEA)计算和专家的决策。在这个团队工作中,经过机械建模工程师完成零件的几何造型,有限元分析专家将为其生成计算网格,然后执行关于静应力分析的有限元分析计算。之后,有限元分析专家将访问和分析有限元分析计算结果,并就零件是否满足静应力分析要求和是否修改零件相关参数作出判断。如果需要修改设计,机械建模工程师将相应的修改零件的几何模型,之后对模型再次进行网格生成,有限元分析计算和有限元分析的专家决策,如图1-2所示。这种迭代过程将继续重复,直至零件满足静应力分析和专家设计的要求。但是,这还远远没有结束,因为零件的设计需要进一步进行动应力分析,可能应进一步修改几何模型参数直到动应力分析的结果令人满意。如果根据其动应力分析结果需要改变部分几何模型,那么零件必须再经过静应力分析并确保满足静应力分析要求。现实中,在设计时,有相关的优化软件包来支持任务优化。如果工程分析需要更多分析类型,如热力学分析等,则整个设计过程将会非常复杂。正如我们想象的那样,如果没有并行工程产品开发的支持环境,协同产品设计将会是一个非常耗时的过程。因此,并行工程平台需要将反复执行、短频繁循环为主的任务同各种工程设计软件工具结合起来,并尽可能的消除较长的回路,该并行工程平台应提供一个网络上的灵活的和用户友好的环境来进行团队工作。
美国NIST研究所从1999年起5年内投资2150万美元,进行了产品智能开发环境(FIPER: Federated Intelligent Product Environment)的研究,该协同工作环境是一个以SOA为基础架构的网格支持平台,它以各种设计资源为服务提供者,为复杂产品设计提供网格支持环境[yob。美国GE公司成功应用了FIPER进行了美国关键武器装备的开发。在FIPER基础之上,以Texas Tech University的Michael Sobolewski教授为负责人的团队进一步成功开发了SORCER(Service-ORiented Computing EnviRonment) }"},本文的开发工作就是在SORCER基础上进行的。
采用SORCER作为底层技术平台,通过有限元分析封装实现有限元分析服务的工作是并行工程的一部分,将FEA工具~ANSYS封装起来,形成并行工程的一个服务工具,在SORCER架构下,具有SOA的优点,能够支持并行工程的业务流程。基于SOA的有限元分析服务是并行工程协同计算平台的一个单项技术、关键技术、一个重要组成部分,是实现并行工程协同设计多个环节中的一个重要环节。以机械产品开发为例,如前面所述,并行工程应用开发环境主要有以下工作环节:方案设计、详细设计Pro/E造型、HyperMesh网格划分、Ansys有限元分析、专家分析,这几个环节构成一个循环,直到产品满足各项设计要求。如图1-3所示,有限元分析服务在此并行工程应用环境中起着“承上启下”的关键作用,一方面接收Pro/E造型、HyperMesh网格划分的数据信息进行有限元分析计算;另一方面将有限元分析计算的结果递交到人工专家系统或返回到用户进行结果分析,如果结果不满足要求,则修改相关参数,再次进行工作环节的循环,直至满足各项设计要求和令用户满意。由此可见基于SOA的有限元分析服务是并行工程产品开发支持环境,是实现并行工程协同设计的关键技术之一,基于SOA的有限元分析服务能提供灵活的、友好的协同工作环境,是实现并行工程协同设计的一个重要环节。
1.3基本概念与理论介绍
1.3.1 SOA概述
1. SOA定义
SOA ( Service-Oriented Architecture),面向服务的架构,是一个软件架构。在SOA中包含着三个概念:架构、服务、面向服务的架构[[12]0
架构:架构是用来描述一个软件系统的总体结构(overall structure )、逻辑组件以及这些组件之间的关系。所以架构可以描述一个软件系统、提供必要的指导性的信息来创建、维护该系统[13]0
服务:从业务角度来看,一个服务是用来满足某个特定业务功能的一系列动作;从技术角度来看,一个服务就是一系列技术资源比如数据库程序设备等通过公开其接口互相交互协作的综合表现[[14]0
面向服务的架构(SOA ):SOA是一种架构风格,一组互相交互的服务的集合,这些服务是自包含的,即他们不依赖于其他服务的上下文关系或者其他服务的状态,这些服务可能不在同一个处理环境中工作,但是他们是属于同一个分布式架构中的。
2. SOA组成
SOA由以下三个元素组成:服务、消息、动态目录服务,参加SOA的角色包含三种:服务请求者(Service Requestor )、服务提供者(Service Provider)、服务注册中心,下面我们将对提出的六个概念进行简单的说明[’“}。
服务:上面己经给出了服务的定义,这里从技术角度再加以限制,服务是一个在网络上的可以被调用的程序。一个服务向外公开自己的接口,该接口定义了该服务的行为以及它能够接收和返还的消息;
消息:服务的请求者即客户通过消息来使用服务,消息一般通过比较独立的标准的格式来描述;
动态目录服务:服务的接口通常是公开发布在公共的目录或者注册中心处的,在那里,服务按照服务类型进行分类。服务的请求者即客户可以在服务的注册中心动态的根据不同的服务分类细节来查询服务,这个过程就是动态发现服务。
服务请求者:服务请求者在注册中心处查询服务并使用所需要的服务,这里的请求者一般可以是最终用户,也可以是其他应用系统或者其他服务提供者;
服务提供者:服务提供者在注册中心处按照分类注册自己提供的服务,向服务请求者提供服务;即服务提供者通过在服务注册中心提供符合协议规范的服务,将它们发布到服务代理,并对使用自身服务的请求进行响应。同时必须保证修改该服务不会影响到客户。
服务注册中心:又叫服务代理者,注册中心是联系服务请求者和服务提供者的纽带,相当于一个服务信息的数据库,为服务请求者和服务提供者提供一个平台,使两者可以各取所需,同时中心有一个通用的标准,使服务提供者提供的服务符合这个标准,服务请求者使用的服务才可以跨越不同的服务提供者。
服务提供者是服务的创建者,通过服务注册中心发布服务接口信息,以便服务请求者发现服务。服务请求者通过查询服务注册中心的服务信息,找到自己感兴趣的服务,向服务提供者发送服务请求,服务提供者将服务与传输协议进行绑定,以便服务请求者调用。
服务请求者、服务提供者以及服务注册中心(服务代理者),通过3种基本操作相互作用[18]:
发布服务提供者向服务代理者发布服务,包括注册自己的功能和访问接口。
查找服务请求者通过服务代理者查找所需的服务,并绑定到这些服务上。
绑定服务提供者和服务请求者之间可以交互,并使服务请求者能够真正使
用服务提供者提供的功能。
服务提供者、服务请求者和服务注册中心(服务代理者)三者的运作模式
3. SOA的优势[19,20]
(1).模块化服务
把业务功能分解并打包成模块化服务,该服务具有自包含和自描述的特征。服务可以根据需要进行混合和匹配来创建新的组合服务,也可以由其他模块化服务组成。
(2).服务封装
将SOA服务的内容和其具有自描述特征的接口进行分离。封装公开了服务的功能,但隐藏了服务内部的实现和复杂性,以便服务使用者发现和访问。
(3).联合控制
SOA组件、服务甚至服务域,可以根据特定的策略和协议彼此进行交互。契约和服务水平协议可促进流程一致性。SOA设计将跨越计算机系统,甚至还可能跨越企业边界,其具有更广泛的应用范围。
(4).松祸合
应用程序间的依赖关系得到最小化或完全消除,具有应变敏捷性。松散祸合,可保护SOA服务不受其与之交互的系统和服务内更改的影响,从而能够跨域和企业边界发现和调用服务。
(S).分离关联点
在SOA中,复杂业务操作分解成多个功能。这些功能封装成多个离散服务,这些服务可以彼此独立地进行操作和管理。关联点分离减少了复杂性,提高了企业系统的适应能力和可伸缩性。
(6).共享服务
SOA服务具有模块化、封装和松散祸合的特性,因此可以由多个用户(和服务)从多个位置和多个上下文中进行访问。在新组合服务的构造过程中,服务可以作为构建块共享甚至重用。
(7).遗留程序的重用性
SOA中提供了集成遗留程序的适配器,屏蔽了许多专用性API的复杂性和晦涩性,大大有利于遗留程序的重用。
(g).标准开放
开放的标准如Web服务标准:XML, SOAP, WSDL以及其他标准。
1.3.2 APDL简介
1. APDL概述
APDL的全称是ANSYS Parametric Design Language,是一种参数化设计语言。可用来完成一些通用性强的任务,也可以用于建立模型,不仅是优化设计和自适应网格划分等ANSYS经典特性的实现基础,也为日常分析提供了便利。有限元分析的标准过程包括:定义模型及其载荷、求解和解释结果,假如求解结果表明有必要修改设计,那么就必须改变模型的几何结构或载荷并重复上述步骤。特别是当模型较复杂或修改较多时,这个过程可能很昂贵和浪费时间[2']o APDL用建立智能分析的手段为用户自动完成上述循环的功能,也就是说,程序的输入可设定为根据指定的函数、变量及选出的分析标准作决定。它允许复杂的数据输入,使用户对任何设计或分析属性有控制权,例如,几何尺寸、材料、边界条件和网格密度等,扩展了传统有限元分析范围以外的能力,并扩充了更高级运算包括灵敏度研究、零件参数化建模、设计修改及设计优化。为用户控制任何复杂计算的过程提供了极大的方便。它实质上由类似于FORTRAN77的程序设计语言部分和1000多条ANSYS命令组成。其中,程序设计语言部分与其它编程语言一样,具有参数、数组表达式、函数、流程控制(循环与分支)、重复执行命令、缩写、宏以及用户程序等。标准的ANSYS程序运行是由1000多条命令驱动的,这些命令可以写进程序设计语言编写的程序,命令的参数可以赋确定值,也可以通过表达式的结果或参数的方式进行赋值。从ANSYS命令的功能上讲,它们分别对应ANSYS分析过程中的定义几何模型、划分单元网格、材料定义、添加载荷和边界条件、控制和执行求解和后处理计算结果等指令[[2z].
APDL具有下列功能,对这些功能用户可根据需要组合使用或单独使用[[23].
标量参数
数组参数
表达式和参数
分支和循环
重复功能和缩写
宏
用户程序
所有这些全局控制特性,允许用户按需要改变程序以满足特定的建模和分析需要。通过精心计划,用户能够创建一个高度完善的分析方案,它能在特定的应用范围内使程序发挥更大的效率。
2. APDL的优点
APDL提供一般程序语言的功能,另外还提供简单界面定制功能,实现参数交互输入、消息机制、界面驱动和运行应用程序等。APDL扩展了传统有限元分析的范围,并开发了更高级运算包括灵敏度研究、零件库参数化建模、设计修改和设计优化等。其优点如下[[24] .
(1)减少大量的重复工作,特别适用于经少量修改后需要多次重复计算的场合,可为设计人员节省大量的时间;
(2)文件数据量小,便于保存和携带,其数据量仅为GUI数据文件的千分之一,无论交流还是应用都很方便;
(3)不受ANSYS软件的版本和系统操作平台的限制,用户编辑时即可在Windows平台进行交流运行,也可在UNIX或其它的操作平台上运行;
(4)不受ANSYS软件的版本限制,一般情况,AYSYS软件以GUI方式生成的数据文件只能向上兼容一个版本,也就是ANSYS7.0版本的软件只能直接调出ANSYS6.1
版本的数据文件,而不能直接调用ANSYS5.7及以前的数据文件。而APDL文件则不存在这种限制;
(5)利用APDL可以编写一些常用命令的集合即宏命令;
(6)可以利用APDL从事二次开发。
1.3.3 SORCER介绍
在FIPER基础之上,以德克萨斯技术大学Texas Tech University的Michael Sobolewski教授为负责人的SORCER实验室团队进一步成功开发了SORCER( Service-ORiented Computing EnviRonment)系统,SORCER是FIPER系统的进一步抽象,剔除了设计领域相关内容,单纯的提供了一个以SOA为基础的基本技术和操作环境,是一个联盟型S2S元计算环境。在SORCER中,不仅服务提供者的位置是动态的,通信协议是中立的,而且服务注册库的位置也是动态的,SORCER中的服务还能根据服务请求者的需求动态地结成联盟以完成面向服务的编程。 SORCER的基础设施是基于Jini租约、分布式事件、事务和发现/加入协议的编程模式。Jini关注网络环境中的服务管理,SORCER则关注面向服务的编程和执行环
参考文献
[1]李伯虎,柴旭东,朱文海.复杂产品集成制造系统技术[[J].航空制造技术,2002, (12):17-20.
[2]张瑞红,李楠,查建中,等.基于SOA的工程协同设计环境.河北工业大学学报,2008, 37( 4): 40-44.
[3]于加晴,查建中,徐文胜,等.面向复杂产品的分布式协同设计系统.中南大学学报, 2008, (12): 22-25.
[4] W.A. Ruh, T. Hen on, P. Klinker: IIOP Complete: Understanding CORBA and Middleware Interoperability, Addison-Wesley (1999).
[5] Information on
[6] Information o
[7] Wensheng Xu, Jianzhong Cha,Michael Sobolewski. Service-oriented Collaborative Design Platform for Concurrent Engineering. Materials and ProductTechnologies一Proceedings of 2008 International Conference on Advances in Product Development and Reliability, 2008,(44-46):717-724. (EI, ISTP).
[8] W.I. Winner, IDA Report R-338. AD-A203/615 (1988).
[9] M. Sobolewski, in: Proceedings of the 2007 IMCSIT Conference, PTI Press (2007).
[10]李海军,邓家提,韩明红.FIPER项目介绍.航空制造技术,2004, (2): 78-80.
[11]于加晴,查建中,陆一平,等.基于SOA的分布式并行协同设计架构.北京交通大学学报,2009, (33): 31-35.
[12]江涛.基于SOA优化CRM系统.合作经济与科技,2008, (.340): 76-77.
[13]王晓东.基于SOA的数字化校园解决方案研究.价值工程,2008, (.)5: 88-90.
[14]冯健文.基于SOA的校园信息系统集成研究.电脑知识与技术,2008, (1): 208-210.
[15]周全明,吴延凤.基于SOA集成高校信息系统.福建电脑,2007, (9): 144-146.
[16]季飞.基于SOA实现树的双亲表示.电脑知识与技术,2008, (1): 1-4.
[ 17]罗佳.基于SOA的分布式服务器性能监控系统实现.广东轻工职业技术学院学报,2008, 17(1): 1-3.
致谢 5-6
中文摘要 6-7
ABSTRACT 7
第一章 绪论 11-27
1.1 研究背景 11-12
1.2 并行工程协同计算平台 12-15
1.3 基本概念与理论介绍 15-21
1.3.1 SOA概述 15-18
1.3.2 APDL简介 18-19
1.3.3 SORCER介绍 19-21
1.4 面向服务体系架构SOA及ANSYS封装技术的国内外发展现状 21-24
1.4.1 面向服务体系架构SOA的国内外发展现状 21-23
.......................................................
第二章 基于SOA的有限元分析服务封装总.................. 27-35
2.1 基于SOA的有限元分析服务封装基本思路 27-28
2.2 基于SOA的有限元分析服务封装基本过程 28
2.3 基于SOA的有限元分析服务封装结构组成 28-30
2.4 基于SOA的有限元分析服务功能层次 30-31
2.5 基于SOA的有限元分析服务基本工作流程 31-34
2.6 基于SOA的有限元分析服务主要特征 34
2.7 本章小结 34-35
第三章 基于SOA的有限元分析服...................... 35-63
3.1 角色组成及其基本操作功能实现 35-38
3.1.1 角色组成及其基本操作功能分析研究 35-37
................................................................................
3.2.1 引言 38-39
3.2.2 定义及关系 39-40
3.2.3 相关分析 40-41
3.2.4 Exertion接口实现 41-42
3.3 数据信息处理 42-52
3.3.1 XML对象参数模型设计与实现 42-45
3.3.2 context模版分析 45-47
3.3.3 webster文件服务器分析 47
3.3.4 数据持久性设计与实现 47-52
3.4 参数自动化设计与实现 52-53
3.5 基于SOA的有限元分析服务封装主要接口及主要实现程序 53-57
3.5.1 主要接口实现 53-54
3.5.2 主要实现程序 54-57
............................................................................
您可能有工程硕士学位论文方面的购买需求,请到工程论文硕士论文频道选取: