1 背景
随着汽车行业的发展,消费者对汽车的噪声要求越来越高。薄壁件振动是噪声的来源之一,为了降低噪声,需要对薄壁件进行面刚度计算。然而面刚度计算中前后处理工作流程繁琐,尤其是测点较多时,人工处理将耗费大量时间和精力。借助 ABAQUS 的二次开发平台,可以对固定前后处理流程进行二次开发,以协助工程师准确高效地完成各类仿真工作。因此,基于 ABAQUS 的二次开发广泛应用于各类仿真开发中。
本文主要介绍了 ABAQUS 二次开发在面刚度仿真中的应用,详细介绍了前后处理界面设置,以及具体实现的逻辑流程。
2 Abaqus 二次开发原理
Abaqus 是目前国际公认的大型通用有限元软件之一,具有清晰友好的用户界面以及开放的开发平台[1]。Python 语言是一种动态解释型编程语言,简单易学,可移植性强,支持面向对象编程,也是 Abaqus 软件的标准设计语言。Abaqus 为用户提供了基于 Python 语言的脚本接口。Abaqus 继承并增加了 500 多个新的 Python 类模型,新增的类模型总体上分为三类,分别为 Session 类、Mdb 类以及 Odb 类,分别对应视图、模型数据库和计算结果数据库三类对象。通过调用类模型可以绕过 Abaqus/CAE 界面,直接操纵 Abaqus 的内核程序。
Abaqus 脚本接口可以通过以下多种方式与 Abaqus/CAE 内核程序进行交互(如图 1 所示)。图形用户界面、主窗口下部命令交互界面(commandline interface,即 CLI)、执行脚本文件(script)。
图 1 命令流与 Abaqus/CAE 内核关系图
实现二次开发主要有两种途径:创建插件程序或者自定义 GUI 应用程序。插件程序是Abaqus 图形界面程序开发中较为简单的一类,适用于界面简单、功能单一的程序开发。自定义 GUI 应用程序适用于复杂系统开发。本文涉及的参数比较少,采用插件程序开发足以满足前后处理需求,故采用插件程序开发
3 Abaqus 二次开发在面刚度仿真中的应用
3.1 面刚度前后处理中主要工作
进行面刚度计算,第一步先进行模态计算,然后进行面刚度计算。具体每个面刚度分析步的建立流程如下:1.建立 modal dynamic 分析步;2.在对象点上建立局部坐标,局部坐标的 Z 向为平面的法向;3.在对象点上加载单位载荷,方向为 z 向;4.设置对象点的 history 输出;5.对象点关联到局部坐标系。在后处理中,需要将每个对象点的 history 计算结果从结果文件中输出,进行处理计算,并绘制刚度曲线。面刚度计算前后处理过程设置繁琐,如果需要计算刚度的点较多时,前后处理工作将花费大量时间,如图 2 所示。
图 2 局部坐标系示意图
3.2 插件程序实现
面刚度自动化化设计插件程序包括 3 个 Python 文件:(1)注册文件:facestiff_Plugin.py;(2)图形界面文件:facestiff DB.py;(3)内核文件:facestiff.py。注册文件包含了关键字和功能组件注册,以及数据的合法性检查及警告[6]。图形界面文件作用是定义图形界面的框架、各类控件,并关联控件的执行目标、执行动作等。面刚度插件程序图形界面对话框如图 3 所示。
图 3 面刚度插件程序图形界面对话框
内核文件是参数化插件程序开发的核心文件。用户在 Abaqus 界面内的所有操作都将转化为内核指令,通过这些指令完成前后处理工作。编写内核程序的作用是替代一系列复杂的前后处理操作,提高效率。前处理主要使用 Mdb 模型数据库对象,通过它实现面刚度前处理中载荷的施加、输出定义等有限元建模工作。后处理主要使用 Odb 结果数据库对象,进行后处理中数据导出工作。
3.2.1 前处理功能程序脚本实现
在自动化流程前,我们先要做好模型的预处理,包括网格划分、连接建立、边界约束等。将需要进行面刚度计算的节点建立节点集 set-C。
前处理首先读入节点集 set-C,然后调用 For…in…循环遍历节点集,对每一个节点建立分析步、建立局部坐标、基于局部坐标加载单位载荷并设置输出。详细流程如图 4 所示。
图 4 前处理流程图
其中建立分析步、加载单位载荷以及输出设置等步骤,可以在界面直接实现,因此可以通过先在 Abaqus 界面手动操作,其 Abaqus.rpy 文件有建模过程留下的内核程序记录,然后复制,最后作出一定改动的方式实现。
但由于建立局部坐标系,需要手动随机选择表面上不在同一直线上的三点生成,因此无法直接通过上述修改内核程序方式完成代码。设计查找算法如下:查找目标节点邻近的elementFace(体网格的表面网格),根据查找到的 elementFace 查找关联的网格,由于表面的elementFace仅关联一个网格,所以关联网格数量为1的elementFace即为表面elementFace。查找表面 elementFace 的关联节点,即为目标节点的表面邻近节点。从中筛选处不共线的 3点,即可建立局部坐标系。具体流程如图 5 所示。
图 5 建立局部坐标系流程图
图 6 前处理输出
3.2.2 后处理功能程序脚本实现
计算完成后,读取 odb 结果,读取节点集 set-C,然后调用 For…in…循环遍历节点集,每个节点读取位移计算结果,并计算刚度并输出计算结果,以上步骤通过代码在 abaqus 中实现。由于 abaqus 自带 python 无绘图???,因此绘图功能通过普通的 python 绘图包构建,并打包成 exe 执行文件。通过在流程中调用绘图的 exe 文件,实现绘图功能。后处理流程如图 7 所示。
图 7 后处理流程图
图 8 后处理输出
4 进气歧管面刚度优化计算
4.1 进气歧管模态计算
首先进行进气歧管模态计算。进气歧管和支架网格采用 3mm 二阶四面体网格,在螺栓孔位置使用 rbe2 单元连接,歧管上中下片之间摩擦焊位置使用 tie 方式连接,和缸体固定连接的螺栓孔位置全约束。节气门处使用简化实体模型,节气门分成 4 块赋材料属性,通过调节各块的密度数据,调整其质量质心位置与实际一致,进气歧管模型如图 9 所示。歧管材料为 PA66-GF30,节气门为,支架为,具体参数见表 1。
图 9 进气歧管模态仿真模型
表 1 进气歧管材料参数
图 10 进气歧管 1300Hz 附近模态振型
4.2 进气歧管面刚度计算
在模态计算的基础上进行面刚度计算,根据进气歧管模态的振型结果,和进气歧管结构特点,选择了稳压腔内部平面测点 1-3,和歧管表面测点 4-7,如图 11 所示。
图 11 进气歧管面刚度测点示意图
考虑模型主体材料为塑料,模型整体阻尼使用 0.15。面刚度计算结果如所示。稳压腔平面测点在 1300Hz 附近有明显的刚度谷值,需要加强。歧管表面测点在计算范围内并无明显谷值,但刚度水平明显低于其他测点,也建议加强。
图 12 进气歧管面刚度曲线图
4.3 优化方案结果说明
4.3.1 优化方案说明
针对进气歧管稳压腔平面和歧管位置刚度不足的问题,对原进气歧管进行了优化。稳压
腔位置增加和歧管外表面增加加强筋,如图 13 所示。
图 13 进气歧管优化方案说明
4.3.2 优化方案模态结果展示
从优化方案的模态计算结果来看,在 1300Hz 附近,稳压腔内的平面刚度有了明显改善,平面模态得到较好的优化。如图 14 所示。
图 14 进气歧管优化方案 1300Hz 附近模态振型
4.3.3 优化方案面刚度结果对比
将面刚度的结果输出,并绘制刚度曲线。在稳压腔测点位置,优化方案相对于原方案刚度水平有了明显提高;波谷位置由 1300Hz 转移为 220Hz 附近(220Hz 是歧管一阶整体模态),这是因为随着刚度增加,稳压腔平面的局部模态消失,其模态为歧管整体模态。歧管表面测点的动刚度也有了明显提升。如图 15 所示。
图 15 进气歧管面刚度曲线对比
4.4 台架试验验证
优化后的进气歧管在台架上进行噪声测试,测试结果可以明显看到发动机进气侧和顶面两处的测点位置 1300Hz 的噪声明显下降,优化方案有效。
优化前 优化后 优化前 优化后
(a)进气侧 (b)顶面
图 16 优化前后噪声对比
5 总结
1. 本文研究了 Abaqus/Python 二次开发技术在面刚度仿真前后处理中的应用,利用 Abaqus提供的脚本接口,将面刚度前处理和后处理流程以程序的方式替代,并在此基础上开发了 GUI 界面,方便快捷地输入需要关键的参数,程序便会自动生成面刚度分析步,导出模型,求解计算,并导出计算结果绘制曲线。利用二次开发的 Abaqus 进行面刚度仿真及优化工作时,可以减少重复操作,节约大量时间;
2. 本文针对某汽油机进气歧管面刚度进行了优化,优化后进气歧管稳压腔位置局部模态得到基本消失,稳压腔和歧管外壁面面刚度得到明显提升,台架试验中 1300Hz 附近的噪声得到明显改善。
资料来源:达索官方
[ABAQUS] Abaqus网格划分需要节点一一对应吗?这样的利弊是什么
2025-04-30
[ABAQUS] Abaqus能解决冷热冲压的问题吗?仿真流程
2025-04-30
[ABAQUS] abaqus摩尔库伦不收敛?一文读懂摩尔库伦理论
2025-04-30
[有限元知识] 基于Adams-Isight的刚柔耦合汽车前盖四连杆铰链多
2025-04-29
[有限元知识] 基于ANSYS-SIMPACK车-线-桥耦合系统动力学模型
2025-04-29
[ABAQUS] 有限元分析软件Abaqus如何应对很薄的零件
2025-04-28
[CST] 设计一个天线并仿真需要用什么软件?CST电磁仿真必备技巧
2025-04-28
[行业资讯] 多领域物理系统建模与仿真的利器CATIA Dymola
2025-04-28
[ABAQUS] SIMULIA Simpack赋能通用汽车,焕发悬架系统全
2025-04-28
2025-04-27
2023-08-24
2023-08-29
[ABAQUS] ABAQUS如何建模?ABAQUS有限元分析教程
2023-07-07
[ABAQUS] 有限元分析软件abaqus单位在哪设置?【操作教程】
2023-09-05
[ABAQUS] Abaqus单位对应关系及参数介绍-Abaqus软件
2023-11-20
[ABAQUS] abaqus里面s11、s12和u1、u2是什么意思?s和
2023-08-30
[ABAQUS] Abaqus怎么撤回上一步操作?Abauqs教程
2024-05-01
[ABAQUS] ABAQUS软件教程|场变量输出历史变量输出
2023-07-18
[ABAQUS] 如何准确的评估真实行驶工况条件下的空气动力学性能
2020-11-19
[有限元知识] 基于Adams-Isight的刚柔耦合汽车前盖四连杆铰链多
2025-04-29
[有限元知识] 基于ANSYS-SIMPACK车-线-桥耦合系统动力学模型
2025-04-29
[行业资讯] 多领域物理系统建模与仿真的利器CATIA Dymola
2025-04-28
2025-04-25
[有限元知识] 基于Simpack的风力发电机组偏航系统动态特性分析
2025-04-25
[有限元知识] SIMPACK在变速箱敲击和啸叫分析中的应用
2025-04-25
2025-04-24
[有限元知识] 基于XFLOW的高速列车明线交会气动数值模拟
2025-04-23
[有限元知识] 合理运用有限元分析技术的关键要点,达索正版仿真软件
2025-04-17
[行业资讯] 各类仿真软件大盘点,总有一款适合你_ABAQUS软件_CS
2025-04-17