远程计算或协同CAE是计算机辅助工程领域近些年的一个研究热点,该模式可在某种协作方式下通过设计协作、分析协作和管理协作等手段进行设计与仿真;同时,最近几年云计算在CAE领域的研究也很活跃,它把基础设施、IT资源、数据、应用等作为服务通过网络提供给用户。
如果对以上两个研究领域进行比较,可以发现它们都是为用户提供某种服务。其中远程计算或协同CAE更偏重于应用,其内涵在于研究相关技术或系统(CAD、CAE、PDM、ERP等)如何通过设计协作、分析协作和管理协作等手段进行相应活动(如外型设计、有限元分析等)并最终完成工程计算任务;而云计算更注重基础性,其本质在于通过网络以按需、易扩展的方式提供服务,且提供的服务领域更为宽泛,包括将基础设施作为服务(lnfrastructure as a service,IaaS),将平台作为服务(Platform as a service,PaaS),或是将软件作为服务(Software as a service,SaaS)等。
显然,远程计算或协同CAE不能简单贴上云计算的标签,反之亦然。但如果以前者为理论基础,建立一个实用的“CAE服务系统”,将基于网络的CAE资源统一管理和调度,构成一个CAE服务资源池,为用户提供高附加值和低成本的CAE资源按需服务,以实现“仿真即服务”,可视为云计算思想在制造业仿真领域的体现和发展。
此类系统可为制造业信息化设计、仿真及数据服务提供崭新的理念和模式,特别是矿山机械装备企业,可以有效解决其技术需求和软件需求。首先,矿山机械装备企业多年来没有特别重视基于先进技术的科技研究,但随着市场竞争的加剧,企业自身为了提高设计效率,推进创新设计,对先进技术和研发工具的需求逐步提高;同时,由于资金和其他因素的困扰,矿山机械装备企业技术人才获得和研发工具资金投入上存在严重不足。因此,面向矿山机械装备企业特别是中小企业,建立一个实用的“CAE服务系统”,有效解决其技术需求和软件需求,显得尤为必要。通过该类平台系统,可以为矿山机械装备企业提供软件调用、软件租用、软件共享、技术支持等设计与仿真服务。
计算机及仿真领域的学者们针对该类系统的关键技术、设计模式、实现方法、体系结构、运行机制等进行了大量理论研究,本文着重从实际应用角度出发,以矿山机械装备为工程背景。研究如何建立一个实用的“矿山机械装备云仿真CAE服务系统”,讨论其集成环境、物理结构、体系结构和功能结构,并通过实例研究,讨论如何快速、高效地集成现有成熟的CAD/CAE技术、方法与工具,构建一个有效的矿山机械装备云仿真CAE服务系统,为矿山机械行业、企业和产品提供远程CAE资源服务、计算服务、软件服务与仿真服务等。
1 系统环境
1.1集成环境
“系统”集成环境应包括工具集成和数据集成(图1)。工具集成主要表现于CAD/CAE软件的集成。在协同仿真环境中,通过封装、接口等技术手段,主流CAD/CAE软件高度集成,可双向传递设计参数,与产品开发设计紧密相关,可随时校验设计并发现问题,以缩短设计周期。工具集成可为设计工程师提供集成于协同仿真环境下的、客户化的CAD/CAE应用程序,为分析人员提供功能强大的分析工具,为管理人员提供浏览器界面的CAE模型和结果检查程序。
数据集成主要表现于数据及信息处理系统与CAD/CAE的数据集成。要实现数据处理系统与CAD/CAE的数据集成,需要在数据处理系统各子系统之间构建集成接口,通过集成接口实现系统间数据的交换和通信。集成接口包括CAD/CAE端向数据处理系统端的集成和数据处理系统端向CAD/CAE端的集成。
1.2 物理结构
从物理结构与地理区域角度来讨论,低层次CAE是面向多任务CAE的单机协作,中等层次的是局域网内CAE仿真,高层次仿真是面向不同地域的单任务和多任务快速协同CAE服务,其物理结构为基于云计算的的协同网络结构,由不同地域分布的计算结点(工作站、服务器、大型机、机群等)构成,为异地用户提供CAE计算、分析与数据服务;其逻辑结构为多学科任务在不同物理地域计算结点上并行执行,地位平等,同时不同物理地域的用户平等的使用其提供的CAE服务,且计算结点与用户对于协同环境也是平等的,彼此没有控制关系与从属关系。同时,它们通过协同环境相互联系并与协同环境存在交互关系,如图2所示。2 体系结构
建立一个易用的“矿山机械装备云仿真CAE服务系统”,可以以成熟的浏览器/服务器(Browser/server,B/S)模式为基础,以具体的应用模块实现协同环境下的协同功能,并完成有效的数据与模型的管理。可使用图3所示体系结构。第一层为用户层,通过WWW技术,应用HTML、ASP.Net等Web页面,VB、VC、VB.Net等程序语言以及CAD/CAE软件的二次开发语言相结合,为用户提供图形化用户接口,通过接口,客户端用户完成对CAD/CAE模型和数据的操作、显示,实现与功能层和服务层之间的交互。
第二层是功能层或应用服务器层,主要是服务器端的各功能模块,以实现对CAD/CAE模型、设计知识、数据的存取与检索等应用逻辑,它是“系统”的核心,包含CAD系统、CAE系统、评价系统和管理系统等,以实现设计、分析、优化和数据管理等功能。
第三层是数据库服务层,提供远程CAE分析与服务过程中的模型、实例、资源、知识等数据资源。
3 功能结构
一个功能较完整的“矿山机械装备云仿真CAE服务系统”,其核心功能应能够完成协同或远程CAE服务。从功能结构上,核心功能应能够既包含不同CAD/CAE软件的工具交互,又包含各不同专业领域的计算、分析、数据和资源的交互;既包含多学科领域的单机协作,又包含单领域的异地协作,以及多领域多地域的协作与交互。即可从工具协同、任务协同与异地系统等三个层次支持CAE服务,如图4所示。3.1 工具协同
主要表现于CAD-CAD、CAE-CAE以及CAD-CAE之间的数据整合、共享与交换。
(1)CAD软件(NX、Pro/E、SolidWK等)和模型数据的整合。通过CAD工具软件的协同整合不同设计人员所建立的CAD零件模型,并实现统一环境的任意模型装配和CAE仿真,得到CAD模型库,并通过集成技术实现与CAD软件之间的共享。当任何CAD和CAE人员对设计进行改变,都能立即反映到对方软件环境中,从而实现设计-仿真的同步协同(图4)。
(2)CAE软件(ANSYS、Nastran、MSC等)和模型数据的整合。CAE工具软件进行集成后,可解读并转换各种CAE软件的模型数据,并转换成分析人员所擅长的CAE软件模型数据。如解读MSC的有限元模型(包括其中所有单元信息和相关参数),转换成ANSYS的模型数据,或反之。即通过CAE工具的整合、共享、接口和交换技术,实现对已有分析资源的转换和共享(图4)。
(3)CAD/CAE数据共享与交换。CAD/CAE工具软件以接口、封装或集成的方式共享模型数据,实现协同环境下双向参数互动。CAD人员修改CAD软件中的几何设计参数则立即刷新CAE软件中的分析模型,CAE人员修改CAE软件中的分析模型参数则立即刷新CAD软件中的几何模型(图4)。
3.2 任务协同
一项矿山机械装备设计任务,可能涉及机械、电子、力学、材料、控制、液压、软件和结构等单领域;或者在某一领域,如矿山机械装备CAE,可能涉及强度分析、刚度分析、屈曲分析、振动分析、接触分析、热分析与耦合分析等。这些不同领域或不同任务之间可能存在着不可忽略的耦合关系,要对这些复杂产品(或系统)进行完整、准确地仿真分析,很显然采用传统的CAE计算,单靠某一个领域的单机单任务仿真是远远不够的。要对其整体系统性能进行评价,必须对其进行多学科或多任务的协同仿真与研究。
3.3 异地协同
异地协同可基于成熟的B/S模式与技术,针对不同地域的计算结点,利用跨越平台和提供远距离服务的底层结构如WWW进行协作,实现广域网内不同用户的计算协作与数据共享,部分事务逻辑在前端实现,主要事务逻辑在服务器端实现。
异地协同一方面可支持多种类型的协作,集成众多协作功能,可提高系统的通用性;另一方面可增强系统的开放性、扩充能力和可伸缩性,便于集成现有计算结点,数据应用并可开发新的应用,满足用户的特殊需求,以有效解决CAE服务系统的通用性和用户特殊需求之间的矛盾。
3.4 功能结构分析
从结构上讲,“矿山机械装备云仿真CAE服务系统”应是一种由各种应用技术、底层技术以及数据管理维护平台与标准组成的支持矿山机械装备CAD/CAE设计知识、设计、建模、仿真的集成技术:从功能上来讲,“矿山机械装备云仿真CAE服务系统”能够以一体化多学科多任务耦合协同设计与仿真为核心,以并行设计思想为指导,将不同领域的开发模型相结合,从外形、功能与行为上对真实矿山机械产品进行模拟。
将工具协同、任务协同与异地协同三个层次的CAE服务应用于矿山机械装备设计领域,可充分体现CAE服务的手段、结构、功能与目标。其中各种应用技术与底层支撑包括ANSYS、NX、Pro/E等CAE/CAD工具软件、ASP.Net、VB.Net、APDL等开发平台、开发语言以及其他相关应用程序或标准(如STEP、IGES等);实现手段与应用目标为通过异地协同与工具协同,以知识资源、数据服务、选型服务、强度与刚度分析、参数优化设计、接触分析、模态分析、谱分析和屈曲分析等CAE服务为基础,进行多任务耦合协同环境CAE仿真,实现设计目标,如图3所示。
工具协同、任务协同与异地协同并非各自孤立支持CAE服务,它们之间互相联系、互相渗透并具备相对层次关系。其中,任务协同是“矿山机械装备云仿真CAE服务系统”的核心、关键与目标。处于最高层次;工具协同支持建立的几何模型与有限元模型对具体CAD/CAE对象提供模型与工具支持;以硬件设备和应用技术封装建立的异地协同环境,对工具协同与任务协同提供底层支撑与信息交互平台,处于最底层,如图1、4所示。
4 应用实例
基于上文“矿山机械装备云仿真CAE服务系统”的集成环境、物理结构、体系结构与功能结构分析,建立了“矿山机械CAE技术公共服务平台。在技术上,“平台”基于软件资源虚拟化技术,封装各类仿真模型、计算资源与数据资源,通过高性能计算结点提供快速设计、仿真与数据服务。用户在系统上注册后,可自动提出问题,系统自动构成用户所需要的仿真模型,并实现异构的应用软件之间的协同运行,满足用户的各类设计、仿真与数据等需求。
在功能上,“平台”主要面向矿山机械装备企业采煤机、刮板输送机、掘进机、提升机、电除尘器等矿山机械装备,提供基于网络的远程CAE服务,包括以下几点。
(1)矿山机械CAE技术公共服务平台网上合作技术知识资源。该部分主要面向矿山机械装备提供设计资源服务,包括:计算资源、数据资源与服务资源等。
(2)基于Web的矿山机械装备关键零部件CAE分析系统。该部分主要面向矿山机械装备提供CAE分析服务,包括:采煤机、刮板输送机、掘进机、矿井提升机、电除尘器等,可提供的远程CAE分析服务包括:静态分析、无预应力模态分析、有预应力模态分析、谐响应分析、瞬态分析等。
(3)基于Web的矿山机械装备关键零部件远程参数化建模系统。该部分主要面向矿山机械装备提供远程参数化设计与变型设计服务,包括:采煤机、刮板输送机、掘进机、矿井提升机等。
(4)基于网络的矿山机械选型设计服务系统。该部分主要面向矿山机械装备提供远程选型设计服务,包括:采煤机、矿井提升设备、排水设备、通风设备、刮板输送机、压气设备、电机车、供电系统与胶带输送机等。
(5)基于网络的矿山机械设备运行服务系统。该部分主要面向矿山机械装备提供远程运行服务,包括:设计数据库服务、技术测定与分析服务、故障诊断服务和管理系统服务等。
目前该系统还在不断完善和扩充中,本例以第(2)部分“基于Web的矿山机械装备关键零部件CAE分析系统”-“基于Web的采煤机关键零部件CAE分析系统”-“采煤机内牵引部关键零部件”无预应力模态分析为例,对“矿山机械装备云仿真CAE服务系统”用于矿山机械装备的远程CAE计算服务进行简要说明。
4.1 设计原理
对于远程快速CAE仿真,一般来讲有三种典型形式:①远程软件包共享;②远程操作开发独立的跨平台环境,实现远程操作;③通过网络技术来扩展传统的可交互的软件,对软件进行异地调用。
本例采用第3种方法,应用B/S结构模式,通过数据库技术、ASP.Net技术、VB.Net技术等实现远程CAE计算应用服务。底层CAE软件采用通用大型有限元分析软件ANSYS,系统将用户在ANSYS环境下所进行的操作封装为宏,供用户进行远程调用,以实现远程CAE应用。
首先,CAE分析服务中心接收到用户提交的产品分析任务包,注册此任务后,以友好的图形界面引导用户输入或选择分析所用到的参数,用户不需要了解命令文件的产生过程。从模型的建立,到网格的划分,以及约束和载荷的施加,系统自动生成可以执行的命令文件。系统采用完全的功能封装方式,将用户在ANSYS环境下所要用到的所有功能进行封装,在客户端用户按照设计步骤填入参数,系统自动编制成分析命令批处理脚本文件,将生成的命令文件提交给分析求解器,求解器自动执行命令文件,完成有限元分析。后处理过程也采用批处理命令流方式,一次性提取用户关心的所有分析结果,如表格、数据、图形、动画等,最后由CAE分析服务中心返回给用户。
设计原理如图5所示,主页面如图6所示。4.2 底层工具
(1)ASP.Net。ASP.Net是微软在ASP之后推出的全新一代动态网页实现系统,是.Net开发平台的重要组成部分,基于微软.Net平台架构,在服务器后端为用户提供建立强大的企业级Web应用服务的编程框架。
ASP.Net与现存的ASP保持语法兼容,但是并不是ASP的简单升级。其与ASP的主要区别表现于以下几个方面:①开发语言不同:ASP仅局限于使用脚本语言来开发;ASP.Net允许用户选择并使用功能完善的编程语言,也允许使用潜力巨大的.Net framework;②运行机制不同:ASP是解释运行的编程框架:ASP.Net是编译执行,效率更高:③开发方式不同:ASP把界面设计和程序设计混在一起;ASP.Net把界面设计和程序设计以不同的文件分离开,复用性和维护性得到了提高。
(2)VB.Net。Visual Basic.Net(VB.Net)是基于微软.Net framework之上的面向对象的中间解释性语言,可以看做是Visual Basic6.0在.Net framework平台上的升级版本,增强了对面向对象的支持,是.Net框架的支柱,同时更是语言演变过程中的又一个进步。
与VB相比,VB.Net不但具备了任何面向对象编程语言所具有的抽象性、封装性、多态性,而且在继承性上完全支持继承VB版本。引入完全继承后,VB.Net是真正的面向对象语言,在保证功能强大的前提下可大大提高开发速度。
(3)APDL。ANSYS参数化设计语言(ANSYS parametric design language,APDL)是一个功能强大的专用描述性、解释性语言,类似于FORTRAN,它可以实现模型的参数化,可以获取ANSYS数据库信息,可以进行数学运算(包括矢量及矩阵运算),可以定义经常使用的命令或宏的缩写(快捷键),可以用if-then-else分支结构和do循环及用户指令生成执行一系列任务的宏。简言之,APDL可以实现有限元分析的参数化建模、加载、求解和后处理,可以定制人机数据和信息交互界面,可以用其开发特殊分析功能的有限元专用分析系统,是实现远程CAE分析服务的有效手段。
4.3 功能模块
(1)前处理。人机交互模块采用Microsoft公司推出的Web应用程序开发技术——ASP.Net技术,实现客户端与服务器的信息交互。它的主要功能是实现几何模型(参数)调入,输入模型实际工作时的各种载荷数值、约束条件(加载位置与约束位置在APDL中已预先定义)与有限元模型网格大小等。服务器端即可获得用户输入的几何信息和有限元模型信息。
(2)求解。由人机交互前处理页面输入的参数存放到一个文本文件中。利用VB.Net文本处理函数以文本追加的方式将界面输入的参数读入到进行分析所必需的APDL文本文件中,实现为APDL参数宏文件中的宏参变量赋值。从而组合成供VB.Net调用的ANSYS命令流文件。具体实现过程如下。
1)在人机交互前处理页面输入分析所需参数,并保存到文本文件中。
2)将该文本文件追加写入到APDL文件中,为文件中的宏参变量赋值,作为ANSYS自动读入的分析文件。
3)通过VB.Net中Process组件的Start方法,以后台运行的方式实现VB.Net对ANSYS的调用,自动读入分析文件,进行求解。
(3)后处理。求解完成后,用户可根据需要索取节点自由度结果及位移云图等,通过客户端浏览和下载。用户可对结果进行判断,确定结构是否满足设计与分析要求。若不符,则可通过参数页面修改参数值重新生成分析模型并进行设计和计算。
5 结论
(1)为解决矿山机械装备企业技术力量弱、资金不足但需求旺盛的矛盾,建立“矿山机械装备云仿真CAE服务系统”,为其提供软件调用、租用、共享和技术支持的重要驱动。
(2)“矿山机械装备云仿真CAE服务系统”功能结构可从工具协同、任务协同与异地协同等三个层次支持矿山机械装备CAE设计、计算与数据服务。
(3)“矿山机械装备云仿真CAE服务系统”基于软件资源虚拟化技术,封装各类数据资源、工具软件与仿真模型,通过高性能计算结点提供快速设计与仿真服务。用户在系统上注册后,可自动提出问题,系统自动构成用户所需要的仿真模型,并实现异构的应用软件之间的协同运行,解决用户的各类设计与仿真需求,为矿山机械装备制造企业提供远程CAE资源服务、计算服务、软件服务和仿真服务等。