HyperMesh二次开发在汽车座椅安全带固定点强度分析中的应用
2019-03-19黄美华高彦超蒋成约
陈 坤,黄美华,张 俊,高彦超,蒋成约
(重庆理工大学, 重庆 400054)
汽车座椅的设计与研发是一项复杂的系统工程,从开始设计到批量生产通常需要24~36个月的时间[1-3]。应用仿真分析指导产品的设计和改进,可以提高产品的设计效率,减少试验次数,降低设计成本[4-5]。通过二次开发,可以将工程师的专业知识转化成企业 CAE 流程并进行固化,实现分析流程标准化和自动化,提高企业 CAE 分析的质量和效率[6]。
本文基于HyperMesh软件的前、后处理平台,运用TCL语言和其自带的功能函数和GUI函数编写了一系列用于创建按钮的脚本程序,点击按钮便可调用程序实现汽车座椅安全带固定点强度分析的前、后处理过程,并自动生成PPT形式的分析报告。
1 汽车座椅安全带固定点强度分析概述
汽车座椅在设计研发阶段,进行的模拟仿真分析主要有汽车座椅安全带固定点强度分析、汽车后排座椅行李箱冲击分析、汽车前排副驾驶座椅下潜分析及鞭打试验分析[7-8]。其中安全带固定点强度是汽车被动安全的一个重要指标,是车辆《公告》试验的强制检查项目[9]。在HyperMesh中,汽车座椅安全带固定点强度分析前处理的步骤通常包括几何数据模型导入,几何清理(删除重复曲面、修补曲面、模型简化),网格划分,导入并准确安装模拟假人(根据座椅大小缩放假人),创建安全带(能够自动预紧、与假人良好贴合),赋予材料属性,定义连接(刚性单元模拟、刚性片模拟、运动副),定义接触,边界载荷设置等[10-11]。图1是汽车座椅安全带固定点强度分析前处理流程。
2 HyperMesh二次开发
HyperMesh二次开发有2种基本形式:一种是直接在其面板上创建功能按钮,另一种是通过Process Manager创建流程树。但是归根结底它们的底层工作模块都是由TCL语言和内置函数命令(功能函数和GUI函数命令)所编写的程序。
图1 汽车座椅安全带固定点强度分析前处理流程
创建功能按钮,按钮可以通过修改userpage.mac文件来创建。TCL脚本是由TCL语言把内置函数命令按一定的逻辑连接起来构成的,需要实现功能的按钮就是将已调试好的脚本文件与按钮通过宏命令联系起来。
流程树的创建是通过Process Studio来实现,由Process Manager来调试和运行的。流程模板文件的扩展名为.pmt,它由Process Studio提供的页(HWPM Page)构成,页上能够布置平台所提供的3种不同类型的控件[6],并且可以添加TCL脚本在控件上来实现特定的功能,页与页之间的转换可以通过The Framework所提供的命令实现,如::hw::pmgr::PmgrGotoTask命令可以实现从当前任务到指定任务的功能。
3 CAE建模流程自动化
3.1 零件重命名、自动化赋予材料和属性
材料的本构是有限元计算中一个重要的参数,只有输入正确的材料参数才能得到准确的结果[12]。建模时component材料和属性的准确赋予是CAE分析的前提[13],但是因零件数目较多、创建和赋予材料属性的操作繁琐,需要频繁切换面板、点击鼠标,导致花费较多时间、误操作率高且纠错难度大。因此非常有必要编写脚本程序自动化实现这个功能。脚本程序逻辑流程如图2所示。
图2 零件命名以及材料赋予程序逻辑流程
此程序逻辑流程对应的脚本程序能实现的功能有:
1) 根据BOM表自动规则化命名所有component;
2) 切取材料信息,并自动与材料库匹配赋予component;
3) 获取几何属性信息,自动创建属性并赋值。
根据所编写的脚本程序运行的结果如图3所示,所有component的自动化重命名及材料属性的赋予由原来的30 min缩短至2 min,工作效率提高93%,也大大地降低了错误率和人工操作强度。
3.2 自动化定义安全带
安全带的建模是此CAE分析项目的重点和难点,其中的主要建模工作为建立卷收器、织带(1D、2D)、滑环(D环)、锁扣等模型,安全带卷收器中还包含预紧器和限力器以及相应传感器的建模[14]。传统建模操作繁多,出错率高,通过程序简化了此操作步骤,提高了建模效率。其二次开发的脚本程序逻辑流程如图4所示。
图3 自动化赋予材料和属性结果对比
图4 自动创建安全带程序逻辑流程
此脚本程序运行之前需提前创建安全带特征位置坐标点和加载曲线的.csv文件,在程序运行时需要选择读入的.csv文件和手动标记一个后续作为传感器检测对象的节点。特征位置节点及单个单元的创建分别采用以下2条命令(它可以返回创建节点、单元的id号):
::hwat::utils::CreateTempNode
::hwat::utils::CreateElement
图5为自动创建安全带的实例。图5(a)为创建前的座椅模型,传统的创建方法需要12步才能全部完成,采用本文开发的脚本只需2步就能快速、高效的创建并定义完安全带,减少了83%的操作步骤,效果如图5(b)所示。
图5 安全带自动创建实例
4 后处理二次开发过程介绍
在结果文件生成后,通过直接在HyperMesh界面中点击按钮运行程序生成批处理文件调用HyperView软件。以下是生成批处理文件的程序以及此文件的调用命令:
set call_hw "call $hw _path-client config hwpost.dat -tcl ";
set file_path[open[file join $dir "batchmode.bat"] w];
puts -nonewline $file_path $call_hw;
puts $file_path $tcl_path;
close $file_path;
#调用程序
exec[eval $file_path];
其中$hw_path为hw.exe文件路径(…HyperMeshhwinwin64hw.exe);$dir为任意文件路径,本程序为脚本程序所在路径;$tcl_path为后处理所需要调用的程序路径。
输出关键零部件的应力云图以及相应零件的应力最值,并将应力云图保存为jpg格式,将应力最值存stressvalue.txt文件中。并在后处理程序中嵌入由VisualBasic for Applications(简称VBA)语言编写的程序代码,在后处理程序运行时,会自动生成的.vbs文件。生成.vbs文件及其调用关键程序如下:
proc CreateVBS { vbs_path str } {
set fp_chan[open $vbs_path w]
puts $fp_chan $str
close $fp_chan
}
CreateVBS[file join $dir "creat_result_ppt.vbs"] $str
exec cmd.exe /K[ file join $dir "creat_result_ppt.vbs" ] &
其中$str中存储着由VBA语言编写的字符串。
通过上面生成的.vbs文件自动调用应力云图以及stressvalue.txt文件和PPT模板生成分析报告,如图6所示。
图6 后处理程序生成的分析报告
5 结束语
本文以某款车型的座椅为例,阐述了HyperMesh二次开发在汽车座椅安全带固定点开发的应用,并着重介绍了零件重命名、材料赋予以及安全带创建的模块以及后处理的二次开发过程。基于HyperMesh 软件平台下的二次开发可以很方便地将操作复杂的步骤化简,不仅减小分析人员的劳动强度,还保证了正确率,并且最终能按照固定的模板生成分析报告,提高了分析效率及计算结果的一致性,有助于缩短开发周期和提升CAE分析质量。