李猛,于存贵,齐贤伟,崔二巍
(南京理工大学,江苏 南京 210094)
ABAQU 是目前先进的非线性有限元分析软件,在汽车、材料科学、航空航天、兵器等行业得到了广泛的应用。ABAQUS 给用户提供了多种开发方式,通过二次开发接口用户可以实现扩展单元类型库、材料类型库以及改善ABAQUS 前后处理等功能。
由于ABAQUS 强大的计算能力,该软件在汽车领域的应用日趋广泛。在设计阶段,工程人员需要研究多个尺寸参数下的结构动态特性。如果在每次改变参数时都需要重新建立有限元模型,就会影响工作效率、增加计算代价。通过ABAQUS 自带的应用程序接口,用户可以使用Python 语言编写新的用户图形界面和前、后处理内核脚本,实现快速的建模、计算等。
ABAQUS 具有多种二次开发功能,比如:使用用户子程序可以实现创建新的单元类型、自定义接触条件、自定义材料特性等功能;通过编写内核脚本可实现前处理参数化建模和后处理分析等功能;使用编写GUI 脚本可创建新的图形用户界面。
复杂模型的建模,通常会包含繁琐并且重复的鼠标操作,耗费了工程人员大量精力。因此,利用二次开发接口编写可执行应用程序,可以创建友好的图形用户界面、设计人机交互机制和建模内核脚本,最终实现快捷的参数化建模。
ABAQUS 程序语言是对Python 编程语言的继承和扩展。Python 语言可用于编写自定义用户图形界面和编写实现仿真过程的各种命令。在自定义图形用户界面中调用Python 编写的各类命令,并将这些命令发送到ABAQUS/CAE 内核中执行,实现脚本命令与内核的交换运作。ABAQUS 中各类命令与内核的交互方式如图1所示。
图1 ABAQUS 命令与ABAQUS/CAE 内核交互运作方式
在车辆的有限元分析中,通过进行模态分析,进而研究车辆的振动特性,已经成为仿真的重要内容。其中驾驶室、车架总成的模态分析对指导车辆的动态性能匹配具有重大指导意义。
车架模态分析二次开发需要的文件类型主要有三类:以bat 为后缀的批处理文件、以py 为后缀的Python 文件和png 格式图片文件,如图2 所示。
图2 二次开发所需文件类型
双击批处理文件,就可调用已编写的GUI 脚本,开启Abaqus 软件并进入自定义的GUI,如图3 所示。在该GUI中通过下列语句可以建立新的模态分析模块。
AFXMainWindow.__init__(self,app,windowTitle)
self.registerModule('模态分析','jianpaoModuleGui')
在本模块中添加驾驶室和车架的图标,隐藏其他按钮,保持了界面的简洁。
图3 自定义GUI
“模态分析”模块用于实现车架及驾驶室的参数化模态分析。图3 中左侧的车架、驾驶室图标分别用于触发两总成的分析过程。其中用于建立触发按钮的语句格式为:AFXToolButton(group,'Label',icon,Form,AFXMode.ID_ACTIVATE)。点击车架图标进入车架建模界面,通过修改“车架建模参数”区域的参数可以实现参数化建模,比如横梁间的距离。用于建立模型的kernel command 由以下几部分组成:
object+method +arguments(keywords),即“对象+方法+参数”。比如建立三维实体的语句为:
mdb.models['Model-1'].Part(name=‘ban',dimensionality=THREE_D,type=DEFORMABLE_BODY),其中“mdb.models['Model-1']”为对象,“Part”为方法,“name,dimensionality,type”为参数。
点击车架图标,就进入车架建模参数定义界面界面,如图4。图4 的右侧显示了可以修改的几何参数以及材料类型。
图4 车架建模参数定义
模型尺寸参数以及材料参数修改完毕后,点击“确定”完成建模过程并弹出模态分析参数定义对话框,如图5。通过该对话框选择需要进行分析的部件,以及需要进行分析的阶次,就可进行模态分析。对于其他的分析设置,在内核中已进行了默认处理。分析完毕后,系统自动弹出自定义的后处理界面。在该界面中可以通过点击模态阶次列表选择需要显示的阶次图像,图6 中,为车架一阶模态分析结果,左侧为列出了各阶的固有频率值,方便工程人员直接读取。
图5 模态分析参数定义
图6 模态分析结果显示
用自定义的GUI 及车架参数化建模的脚本文件对车架进行了模态分析,本文方法实现了模态分析的自动化和参数化。为整个有限元仿真过程除去了大量重复操作,提高了仿真的效率。
[1]曹金凤,王旭春,孔亮.Python 语言在Abaqus 中的应用[M].北京:机械工业出版社,2011.
[2]谢俊,杨越,高伟.Python 参考手册[M].北京:人民邮电出版社,2011.
[3]黄霖.Abaqus/CAE 二次开发功能与应用实例[J].计算机辅助工,2011,20(4):96-100.
[4]石亦平,周玉蓉.ABAQUS 有限元分析实例详解[M].北京:机械工业出版社,2010.