基于SolidWorks-MATLAB-ANSYS集成框架的结构设计优化

2020-03-13 10:55
计算机应用与软件 2020年3期
关键词:调用长方体机身

李 珺 杨 扬

1(湖北工业大学工业设计学院 湖北 武汉 430068)2(华中农业大学工学院农业部长江中下游农业装备重点实验室 湖北 武汉 430070)

0 引 言

基于仿真的结构设计优化已成为产品设计常用的手段,ANSYS软件是最为流行的计算机辅助工程(CAE)软件,在结构有限元分析领域有广泛应用。尽管ANSYS也能进行几何建模和优化计算,但其几何建模能力弱,且其提供的优化方法难以收敛到最优解[1]。SolidWorks软件几何建模功能强大、操作简捷,是使用最为广泛的三维几何建模软件之一。MATLAB软件能够进行高性能数值计算,其提供了许多内置优化工具箱,也能采用MATLAB语言对高效的优化算法进行编程。通常,这些软件是相互独立的系统,有效集成不同功能的软件是综合利用这些优点进行设计优化的关键。

在利用各种软件优点进行设计优化方面已有研究。宋宏伟等[2]利用MATLAB与ANSYS进行数据传递,实现了平面钢框架结构设计优化。方芳等[3]利用MATLAB数据计算处理能力生成数据点,导入SolidWorks生成连续凸轮曲线,由此得到平面凸轮模型。常凯[4]通过编程实现MATLAB和ANSYS程序之间的相互调用,建立了渐开线圆柱齿轮有限元分析软件平台,有效地提高了齿轮副啮合特性分析的效率。马东辉等[5]提出了一种分部优化的设计方法,利用ANSYS进行结构静力分析,建立优化设计的数学模型,再采用MATLAB优化工具箱对模型进行求解。郑帅等[6]在SolidWorks中建立钢管输送机构关键部件的三维模型,将三维模型导入到Ansys Workbench中进行优化,实现了关键部件的轻量化设计。

这些研究工作均为简单利用两种软件的优点,尚未实现同时集成几何建模软件/仿真分析软件/优化计算软件进行设计优化。此外,在产品设计优化中,需要进行多次(几十次甚至上千次)几何建模和有限元分析,且这些几何建模和有限元分析通常不是一次性完成,而是需要在每次优化迭代后进行新的建模和分析,这需要耗费设计人员大量的时间和精力。

本文提出了一种SolidWorks-MATLAB-ANSYS集成框架,能够有效集成这三种软件的优点,实现了参数化建模、仿真和优化计算的一体化,避免了设计人员在设计优化过程中重复的建模和仿真分析工作,对提高设计效率具有重要意义。将该方法与多目标遗传算法相结合,应用于一种微型飞行器机身结构设计优化中,结果表明,本文方法能有效解决类似的结构设计优化问题。

1 SolidWorks-MATLAB-ANSYS集成框架

本文以MATLAB作为主程序,将设计变量传入SolidWorks进行参数化几何建模,并调用ANSYS进行仿真分析。整个优化过程在MATLAB环境下编程实现。优化时,程序利用脚本驱动SolidWorks软件更新几何模型,并传递到ANSYS中进行仿真分析,通过APDL命令流自动提取应力等计算结果并通过MATLAB读取。SolidWorks-MATLAB-ANSYS集成框架如图1所示。通过该框架,能够集成三种软件的优点进行产品的结构设计优化。

图1 SolidWorks-MATLAB-ANSYS集成框架

1.1 MATLAB调用SolidWorks

实现MATLAB与SolidWorks交互的目的是改变设计变量来驱动SolidWorks更新几何模型。如图1所示,采用Microsoft Visual Studio 2013的C#模板编译SolidWorks的动态链接库*.dll文件,通过MATLAB调用该*.dll文件,可对零件图进行特征的建立、修改及保存等操作。以长方体几何模型为例,创建动态链接库,编译生成*.dll文件。主要相关代码如表1所示。

表1 创建SolidWorks动态链接库主要代码

由此,通过修改长方体特征尺寸长宽高可以驱动SolidWorks更新几何模型。MATLAB驱动*.dll文件调用SolidWorks的主要代码如表2所示。

表2 MATLAB中设计变量驱动SolidWorks 更新几何模型代码

长方体几何模型的更新过程如图2所示,(a)为初始长方体几何模型,(b)为更新后的长方体几何模型。

(b) 更新后的几何模型图图2 长方体几何模型的更新过程

1.2 ANSYS调用SolidWorks模型

通过ANSYS参数化设计语言(ANSYS Parametric Design Language,APDL)可以读取SolidWorks几何模型,在此基础上,实现网格划分、施加载荷和有限元求解。读取SolidWorks几何模型实际上是读取*.x_t文件,代码如表3所示。

表3 APDL语言读读取SolidWorks几何模型代码

1.3 MATLAB与ANSYS交互

MATLAB与ANSYS的交互主要包括两部分:(1) MATLAB调用ANSYS,利用ANSYS编写好的APDL代码和批处理功能进行有限元分析计算[2];(2) ANSYS将仿真分析结果写入一个文本文件*.txt,供MATLAB读取。MATLAB调用ANSYS进行仿真分析和读取ANSYS仿真结果数据的主要代码如表4所示,ANSYS将仿真结果写入文本文件*.txt的代码如表5所示(以输出仿真模型的最大应力为例)。表4中,ANSYS程序所在的目录为作者实际使用的目录,其他文件所在的目录为当前工作目录。

表4 MATLAB调用ANSYS进行仿真计算主要代码

针对1.1节中的长方体实例,通过MATLAB调用ANSYS,对更新后的长方体几何模型划分网格,施加载荷,并进行应力分析,仿真结果如图3所示。

图3 长方体几何模型的仿真结果

2 结构优化算例

将本文提出的方法与多目标遗传算法相结合,应用于微型飞行器(micro-aerial vehicle,MAV)机身结构设计优化中,以验证本文方法的有效性。本文方法与多目标遗传算法相结合的示意图如图4所示。

图4 SolidWorks-MATLAB-ANSYS集成框架与多 目标遗传算法结合示意图

MAV不同于传统概念上的飞机,如图5所示。它具有足够小的尺寸、足够的巡航范围和飞行时间,并且能够传输实时图像、执行其他功能。MAV被认为是未来战场上的重要侦察和攻击武器,能以可接受的成本执行某一有价值的任务。

图5 微型飞行器

为了适应不同条件下的任务需要,MAV的机身和机翼应采用轻质材料制造,使其具有更高的耐受力和起飞、着陆的能力。本节将重点讨论MAV机身的结构设计优化,选用轻型ABS材料进行设计。机身的几何模型如图6所示,其初始几何参数和材料属性如表6所示。图7给出了机身的受力及边界条件。机身总共受到三个力的作用:前部发动机的重量FMotor=5.9 N、尾部的重量FTail=2.7 N以及机身内表面的分布载荷FPayload=0.1 N/mm2。其中,前两个力被简化为作用在各自重心处的集中载荷,在ANSYS中是利用无重量的刚性链接单元将集中载荷传递到机身。机翼的重量很小,可以忽略不计。机身底部的一个小区域是固定的,以模拟机身着陆或坠毁时的接触区域。

图6 MAV机身几何模型

表6 MAV机身的设计变量及其范围

设计变量变量范围/mmA1[46.0,50.0]A2[85.0,95.0]A3[40.0,46.0]D[40.0,50.0]L[250.0,260.0]t[6.0,8.0]

图7 MAV机身的受力及边界条件

本节选取的仿真模型含有73 000个节点,在某一组参数下的仿真模型和仿真结果如图8所示。

(a) 仿真模型

(b) 仿真结果图8 MAV机身的仿真模型和仿真结果

MAV机身设计的目标是最小化体积与z方向上的最大变形,同时保证最大应力不超过40 MPa。该优化问题可以表示为:

minf1=V(A1,A2,A3,D,L,t) minf2=max_uz(A1,A2,A3,D,L,t) s.t.g1=σ≤40 MPa

where 46 mm≤A1≤50 mm;85 mm≤A2≤95 mm;

40 mm≤A3≤46 mm;40 mm≤D≤50 mm;

250 mm≤L≤260 mm;6 mm≤t≤8 mm

以MATLAB为主程序,采用NSGA-II算法[7]进行优化计算,设定种群数量为40,交叉概率为0.9,变异概率为0.1,遗传代数为100代。优化结果如图9所示。

图9 MAV机身多目标设计Pareto解集

由于多目标设计优化的结果为Pareto解集[8],设计人员可以根据实际情况和需求在Pareto解集中选择设计方案[9]。表7列出了图9中标注的三个典型设计点处的设计变量和目标值,点1和点3分别表示注重最小化体积和最小化最大变形,点2代表权衡最小化体积和最小化最大变形。

表7 三个典型设计点处的设计变量和目标值

以本文使用的遗传算法为例,需要几千次的建模和仿真计算才能得到该多目标设计优化问题的Pareto解集。采用本文提出的设计优化框架,设计人员只需要进行一次建模和仿真,其他的重复工作可以全部由计算机通过集成三种软件完成,显然计算机采用参数化的方式进行建模和仿真,比人工进行效率更高。

3 结 语

本文充分利用三种软件的优势,提出一种SolidWorks-MATLAB-ANSYS集成框架,实现了参数化建模/仿真和优化计算,由计算机代替设计人员完成大量的重复建模、仿真工作,有效提高了设计效率。本文的方法被成功应用于一种微型飞行器机身的结构设计优化中。

此外,进化算法(如遗传算法、粒子群算法等)因具有高鲁棒性和广泛适用性,被广泛应用于全局优化中。但其需要大量的函数调用,即便采用参数化建模/仿真和优化计算,也需要大量的时间,尤其对于复杂产品的设计优化,其计算成本难以接受。代理模型技术是解决这一问题的有效手段,下一步工作将研究将代理模型技术与本文提出的SolidWorks-MATLAB-ANSYS集成框架相结合,进一步提高结构设计优化的效率。

猜你喜欢
调用长方体机身
拆拼长方体
远不止DCI色域,轻量级机身中更蕴含强悍的亮度表现 光峰(Appptronics)C800
拆拼长方体
探究组合长方体的最小表面积
系统虚拟化环境下客户机系统调用信息捕获与分析①
抓不变量巧解题
大型水陆两栖飞机AG600机身大部件完成对接开铆
利用RFC技术实现SAP系统接口通信
三星全新LED电视力作 超薄机身&娱乐互联
模型飞机的结构与飞行原理(二)