责任编辑:
沐小月
时间:2021-01-28
来源:ANSYS仿真与开发 小田老师
责任编辑:
沐小月
时间:2021-01-28
来源:ANSYS仿真与开发 小田老师
说到ANSYS中结构仿真自动化,大家首先想到就是APDL参数化语言,但是由于难入门、复杂难懂,相比ABAQUS中的Python开发,对于新手来说学习成本高、周期长。
那么能否在ANSYS中使用Python实现结构仿真全流程的自动化吗?当然是可以的!并且相比APDL更容易上手。
今天的文章中,我们就以ABAQUS的脚本文档中悬臂梁模型(如图1所示)为例,演示在ANSYS中如何通过使用Python脚本实现高效的结构仿真。
图1 悬臂梁模型
在15.0以后版本中,ANSYS 提供了ACT二次开发平台,在Mechanical中提供了Python脚本的支持,并且随着版本的迭代更新,接口越来越开放,功能也越来越强大,从材料属性定义、网格划分、接触设置、载荷加载、自定义载荷、自定义后处理等,都可以通过ACT Python脚本去实现自动化和定制开发。
全流程的结构仿真分析需要在Workbench中搭建:便于创建、整合及管理仿真流程和处理各流程间的数据传递。通过Workbench的脚本录制功能,也便于记录包括分析系统创建、材料属性定义、各模块打开退出操作和DX优化设置过程。
几何建模需在SCDM中完成,网格划分、载荷加载及求解后处理在Mechanical中完成,这两个模块中的操作,Workbench是无法录制操作的,需要我们在对应模块中开发脚本。
图2 分析流程及框架
在开始之前,我们需要了解Workbench、SCDM和Mechanical脚本开发相关的知识,如下:
- SCDM脚本开发
- Mechanical脚本开发
- Workbench脚本开发
- Workbench仿真流程集成
了解ANSYS脚本开发的基础知识后,接下来就可以按照以下几个步骤来开发全流程自动化脚本:
1、创建分析流程
打开Workbench界面,通过点击File-->Scripting-->Record Journal,开始录制脚本;
创建Static Structural分析系统,系统中包含结构分析中的所有流程,简化后代码如下:
2、定义材料属性
点击Engineering Data创建Steel材料,密度:7500kg/m3,杨氏模:209.0E3,泊松比:0.3。
上述操作的脚本可以被记录下来,通过对原始脚本代码修改,可以得到如下代码:
图3 材料创建代码
3、SCDM脚本建模
Workbench中双击Geometry,打开SCDM软件,按照图1中尺寸参数进行脚本建模,并对相应的压力和约束加载面创建边界命名,后续用于Mechanical中载荷加载。
图4 几何建模代码
建模完成后,关闭SCDM软件,Workbench只会记录打开和关闭的操作,需要通过SendCommand命令传递脚本建模代码,如下:
4、Mechanical前处理
指定材料属性、设置网格尺寸,通过Named Selections的名称来指定固定约束和压力载荷加载的位置,对应的代码和注释如下:
图5 Mechanical设置代码
5、Mechanical后处理
添加Mises等效应力后处理,然后调整视角,输出后处理云图,代码如下:
图6 Mechanical后处理代码
后处理完成后,关闭Mechanical软件,然后保存项目;Workbench只会记录打开和关闭的操作,需要通过SendCommand命令传递执行代码,如下:
按照以上几个步骤操作,最后将上述代码整合到一起,我们就完成了结构仿真全流程自动化脚本开发。基于自动化脚本,后续我们更改脚本中相应参数,就能快速重复仿真流程,实现高效的结构仿真自动化。
后记:基于开发自动化脚本,能很方便通过ACT插件或者仿真模板方式,对整个仿真流程进行封装固化,形成专业定制化的仿真工具,提升仿真工作的效率。
案例源代码下载:
链接: https://pan.baidu.com/s/1oa7md77tb7fnKVI3t7Fz8w
提取码: qgr9