CAE软件的二次开发指的是在现有的CAE软件基础上,通过编写脚本、插件或定制化开发,对软件功能进行扩展或定制化。这种开发方式可以满足用户特定的需求,提高工作效率,增强软件的功能和灵活性。
具体来说,CAE软件的二次开发可以包括以下内容:
- 功能扩展:通过编写脚本、插件或定制化开发,实现软件功能的扩展。例如,添加新的分析模块、优化算法、后处理功能等,以满足特定的工程需求。
- 自动化操作:通过脚本编程或自定义工具开发,实现软件操作的自动化。例如,批量处理模型、自动化生成报告、自动化进行参数化分析等,提高工作效率。
- 定制化界面:修改软件的界面布局、颜色主题、工具栏按钮等,以提高用户体验和工作效率。
- 数据集成:实现CAE软件与外部数据库、PLM系统、ERP系统等的数据集成,实现数据的共享和同步。
- 报表定制:根据用户需求定制各种报表,如模型清单、分析结果报告、工程图纸等。
下面简单给大家介绍一个基于HyperWorks二次开发在风机塔筒分析中的应用案例,以帮助大家更好地了解和运用HyperWorks的二次开发提升项目的工作效率。
传统的建模方法是先在 CAD 软件中建立塔筒模型,然后输出 stp、igs、stl 等格式文件再导入到 HyperWorks 中进行前处理分析[1] ,然而,在实际结构设计中,为满足设计要求,各焊接段壁厚以及焊段高度经常发生变化,以往每一次结构变化都需要重新划分网格,使得整个研发周期过长,而且容易出现操作失误,不易追溯,延误分析时间。
(a)分析模型
为了高效、快捷地建立风机塔筒有限元模型,笔者对系列机型塔筒模型的结构进行了全面的研究,借用 HyperWorks 自带二次开发接口,通过调用和编译TCL语言,实现批处理建模、自动划分网格及分析文件导出等操作,从而使风机塔筒有限元模型前处理流程自动化,有效地提高工作效率和准确性。
(b)局部网格
HyperMesh 在运行过程中会将用户的操作过程,比如对模型赋予材料属性,施加载荷及边界条件等以代码的形式保存在 command.cmf 文件中,利用这个特性在进行二次开发时很多时候都从 command.cmf 文件开始[2]。然而,对于从 CAD 软件导入进来的模型来说,一个模型只对应一段特定的代码,当模型发生改变,这些代码将不再生效。因此,需要借助TCL 语言对 command.cmf 文件中的代码进行编译,使其具有一定的逻辑性,从而对不同的结构模型,都能自动完成前处理任务,实现操作流程自动化,程序结构如下图所示。
程序结构图
程序系统功能
(1)用户输入焊段个数,程序自动弹出交互界面提示用户输入塔筒关键参数,包括壁厚,
焊段高度,门框厚度及载荷值。
(2)输入参数后,程序自动调用 TCL 代码文件,完成塔筒模型网格划分、材料属性赋予
以及载荷边界条件的施加。
(3)将网格文件自动转换为有限元求解器需要的 inp 文件并导出。
主要子程序设计
为了使门框附近网格满足规范要求,实现沿门框外边缘方向按 0.4t、1t 均匀分布,需要
利用 TCL 条件语句获得门框或门框处塔壁壁厚的最小值,该控制命令如图 3 所示,其中参数 tk_door、tk_tower、dis_mesh 分别表示门框厚度、塔壁厚度、网格便宜距离。
条件控制语句
以 2MW 某型号风机塔筒作为研究对象,进行塔筒极限强度计算分析,采用两种方法进行模型前处理,一种是采用传统方法,即将塔筒 CAD 模型转化为 stp 格式文件再导入到HyperMesh 中划分网格并生成分析文件;另一种方法是采用本文建立的二次开发程序完成
前处理任务,最后比较两种方法的计算结果。为了保证比较结果的合理性,两种方法采用相
同的载荷数据,极限载荷如表 1 所示,并且要保证相同的网格质量,网格质量如表 2 所示。
求解器选用 ABAQUS 软件。
对塔筒门进行极限强度分析时,应力最大位置出现在门框和塔筒壁焊接的拐角处,由于拐角处应力不准确,通常不考虑拐角处的应力[7] 。因此,笔者通过编辑 TCL 语言,加入相关代码,将关心部位的网格放置在一个固定组件中,在计算完成后,只观察这个组件即可。采用传统前处理方法获得的计算结果如图 3(a)所示,运用本文二次开发程序获得的计算结果如图 3(b)所示。
门框应力云图
通过对结果比较分析发现,采用传统前处理方法获得的最大应力值为 240.4MPa,采用本文二次开发程序做前处理获得的结果为 240.3MPa,两种方法获得的结果非常相近,误差不到 1%,可以证明本文二次开发程序是可行的,而且工作效率更高。
[1] 袁带英.风力发电机组塔筒门段静强度有限元分析.邵阳学院学报 (自然科学
版),2010,7(2):46-47.
[2] 王钰栋,金磊,洪清泉,等.HyperMesh & HyperView 应用技巧与高级实例.北京:机械工
业出版社,2012,450.