1 螺栓连接前处理概述
HyperMesh作为一款强大的前处理软件,其支持利用Tcl/Tk语言进行二次开发,用户可以通过自己所要实现的功能编写相应的Tcl/Tk代码,在HyperMesh中运行即可。Tcl/Tk简单易学且功能强大,经常被用于快速原型开发、脚本编程、GUI和测试等方面。用户可以利用hwtk创建特定界面来满足多样化需求,而且可以根据自己的需求在短时间内开发出大量的应用程序。对于整车安全碰撞分析而言,工程师处理起来任务量过大。利用Tcl/Tk语言进行针对性的二次开发来提高效率,减轻工程师的负担显得非常必要。
在整车安全碰撞模型中,螺栓连接在子系统内和不同子系统间实现的连接方式不同。如果连接零部件属于同一Include文件则实现RgdBody单元连接,如果连接零部件属于不同Include文件则实现ConsRigidRbody连接,图1是螺栓连接前处理流程。
图1 螺栓连接前处理流程
2 整车螺栓连接快速有限元模型的实现
2.1 模块流程
整车螺栓连接快速有限元建模模块分为4个部分:通过点击按钮来遍历螺栓以及螺栓连接的零部件、通过输入螺栓实体ID号快速显示螺栓以及螺栓连接的零部件、通过CheckModel自动搜索有问题的螺栓连接(如螺栓周围无任何零部件、螺栓只穿过一个零部件、零部件未开孔、零部件没有做washer等)、实现螺栓自动连接功能。模块界面如图2所示:
图2 模块的界面
2.2 模块关键技术
2.2.1 自动识别螺栓连接板件
在整车有限元建模时,需要一一识别螺栓所要连接的钣金件,通过快速提取螺栓的空间位置,利用螺栓的空间位置确定与其相连接的零部件以及相连接零部件孔的位置等信息,通过识别这些信息来实现螺栓的自动化连接。
2.2.2 零部件命名以及ID号修改
程序自动识别螺栓连接是子系统内还是子系统间的链接,这样计算机才能确认属于哪种连接方式,如果属于子系统内的链接方式,则自动识别washer孔处的节点以及第二排节点进行RgdBody单元抓取,如果属于子系统间的链接方式,那么提取washer单元,创建一个新零部件,按照建模规范进行命名并修改其ID号。如某处螺栓连接为500_BIW_******.key与110_PT_MT_D_*******.key之间连接,那么属于500_BIW_******.key的washer零部件命名为Patch_500_110_01,ID号为9501101,属于110_PT_MT_D_*******.key的零部件命名为Patch_110_500_01,ID号为9115001,并在interfaces界面下利用ConsRigidRbody关键字进行主从刚片连接。
2.3 模型问题查找
当我们导入整车key文件以及整车螺栓实体时,由于人工划分网格的原因,模型中总会有不可避免的问题,那么如何快速查找问题就显得尤为重要,通过创建特定界面来实现模型检查。
通过手动选取螺栓来实现零部件的全部检查,功能代码实现所选螺栓依次遍历,可以进行前后遍历,每遍历一个螺栓都会将螺栓实体和与其相连的零部件显示到桌面上,这样我们可以很快通过人工识别此处是否有问题并进行相应的调整。
通过CheckModel功能来实现全部零部件的自动检查,功能代码实现遍历全部螺栓,系统会自动识别有问题的螺栓,并将有问题的螺栓信息输出到界面上来,包括螺栓实体ID信息、include文件信息、与其关联的零部件信息,错误信息类型,这样我们就可以很直观的查找到哪些螺栓的链接信息有问题,并进行相应修改,在实现螺栓连接的同时,可以将有问题的螺栓进行剔除,只实现没有问题的螺栓,也可以实现全部螺栓的链接,当然这样会出现某些问题。