摘要:HyperWorks软件提供了二次开发的接口,可以基于TCL语言和其它工具来开发专用的辅助程序,提高CAE分析工作的效率和规范性。在乘用车CAE分析工作中,某些分析项目的前处理具有重复操作多、占用时间多且容易出错的问题,如顶盖抗凹分析。为了解决这个问题,利用HyperWorks软件的二次开发功能,开发了顶盖抗凹分析的流程自动化专用辅助程序,提高了工作效率并固化了流程。
关键词:HyperWorks,TCL,二次开发,顶盖抗凹分析
1、概述
乘用车的顶盖刚度是一个重要指标,不仅影响着客户的主观评价,同时也与安全性、乘坐舒适性密切相关,在设计过程中对顶盖进行抗凹分析是预防顶盖刚度缺陷的重要环节。
顶盖抗凹分析作为一项常规分析项目,工作中往往需要不断地建立局部坐标系、创建压头模型、建立接触对、逐个的读取计算结果文件编写报告,在一个顶盖的抗凹分析过程中,该过程少则重复5~10次,多则重复十几次,简单的重复劳动不仅耽误大量的时间,同时劳动强度高,令人感到厌烦、苦恼。
HyperWorks软件的二次开发接口,可供用户进行个性化的二次开发,完成特定的功能,起到提高工作效率、定制流程的作用。
2、HyperWorks二次开发
2.1、程序语言
HyperWorks软件提供了TCL/TK语言二次开发接口。TCL/TK是一种简明、高效、可移植性好的脚本语言,它支持和C/C++类似的循环、控制结构,如if循环控制、for循环控制等,并支持过程的定义和调用。同时,它能与HyperWorks平台实现无缝连接。
Altair HyperMesh模块会自动记录各种操作命令,并将其保存在对应的command.cmf文件中,用户可以修改这些命令来形成自己的程序代码。
模板设计
HyperWorks提供了二次开发模板设计工具Process Studio,利用它可以完成每个模块的模板界面设计,如图1所示。 (图片) 2.3 对象层级
与HyperMesh前处理部分不同,后处理部分HyperView、HyperGraph及Office的命令均为面向对象风格的语法,基本语法如:
{ object_name } { command } { command parameter(s) }
操作一个对象之前,需要逐层访问各级对象,因此必须先了解数据结构的对象层级,其中HyperView数据结构的对象层级如图2所示。(图片)
图2 HyperView数据结构对象层级图 2.4 程序流程设计
以顶盖抗凹分析为例,程序的流程图如图3所示。按流程的设计,程序先后完成了截取模型、选抗凹点、创建压头及接触、施加约束、施加载荷、输出求解模型、提交计算、输出PPT报告等操作。其中,用户仅需选择首个抗凹点(或人工选择所有抗凹点)、在报告自动生成环节输入报告名称相关信息,其它均由程序自动完成。(图片)
图3 顶盖抗凹分析流程图 3 应用实例——顶盖抗凹分析模板
图4为顶盖抗凹分析流程中的选择抗凹点步骤,该步骤可以通过按钮Get Nodes设置左前角第一个抗凹点然后程序自动计算获得其它抗凹点的方式,或通过按钮Edit人工逐个选择所有抗凹点的方式完成。抗凹点分布的矩阵形式(5×5),可在预处理步骤自由设置。(图片)
图4 选择抗凹点界面 图5为顶盖抗凹分析流程中的输出求解文件及提交计算步骤,该步骤可以通过按钮Export将所有抗凹点的求解输入文件输出到指定的目录下,通过按钮Solve调用求解软件对一个或多个求解输入文件进行排队计算。(图片)
图5 输出及提交计算界面 如图6所示,输出报告步骤利用HyperView及HyperGraph读出的结果文件中的相关信息,自动生成PPT格式的分析报告文件。(图片)
图6 输出物PPT报告 4 应用效果
模板的应用,在前处理环节节省了大量时间。通过对比,人工制作一个点的抗凹求解输入文件至少需要13分钟,而应用模板方式则仅需要2分钟。而且,输出25个点的抗凹求解输入文件时模板耗时几乎无增长(不到3分钟),优势显著。
在输出报告环节,应用模板同样获得了惊人的省时效果。不到2分钟,模板便能自动生成了PPT报告,这样的速度对于人工操作是难以想象的。
模板的应用,使顶盖抗凹分析工作由一件令人烦恼的事变成了一件令人快乐的工作。
同时,经过验证,模板的应用使每次分析操作都可以重复实现,只要分析对象相同(BIW、抗凹节点),不同操作者可以获得完全相同的计算结果。
此外,当采用人工设置抗凹点的模式时,该模板可以直接应用到其它外敷件(车门、引擎盖、行李箱盖、侧围)的抗凹分析工作中,完成繁杂的前处理工作,提高工作效率,减轻劳动强度。
5 结语
实践表明,HyperWorks软件二次开发可以通过程序控制,实现操作的批量处理,提高工作效率,降低工程师的劳动强度。此外,通过对分析流程的模板定制,也降低了分析过程中的人工干预程度,保证了不同操作者的分析结果的一致性。
6 参考文献
[1] HyperWorks Help Documents
[2] 屈晓峰,基于TCL语言的HyperMesh平台二次开发范例,Altair中国区2010 HyperWorks技术大会论文集
[3] 王昌胜,叶远林,徐有忠,HyperMesh二次开发在车门抗凹和下垂分析中的应用,Altair中国区2010 HyperWorks技术大会论文集
[4] 《乘用车车身覆盖件指压试验方法》,东风汽车公司内部资料
[5] 《乘用车外覆件抗凹有限元分析方法》,东风汽车公司内部资料
12/30/2013
|