首页/文章/ 详情

二维悬臂梁的形状优化

21天前浏览966

前面给大家介绍了拓扑优化,形貌优化,尺寸优化,自由尺寸优化,现在为大家介绍另外一个优化——形状优化。 


形状优化是一种在给定载荷和约束条件下,通过改变结构的形状来达到优化目标的方法。它不改变结构的拓扑结构,即不增加或删除材料,而是通过调整结构的形状来改善其性能,如提高刚度、减少应力集中或改善疲劳寿命等。

形状优化的应用场景非常广泛,它可以用于提高机械零件的性能,如齿轮、轴承座、连杆等;也可以用于提高结构的稳定性,如桥梁、建筑和航空航天结构;还可以用于改善产品的流体动力学性能,如飞机机翼、汽车外壳等。
以悬臂梁的形象优化为例,悬臂梁是一种常见的结构形式,一端固定,另一端自由。在受到载荷作用时,梁的自由端会产生位移和应力集中。通过形状优化,我们可以改变梁的形状,比如在梁的受力区域增加凸起或凹槽,以减少应力集中和增加梁的刚度。这样的优化不仅可以提高梁的承载能力,还可以减少材料的使用,实现轻量化设计。
在本教程中,您将对使用壳单元建模的悬臂梁执行形状优化。
在开始之前,请将本教程中使用的文件复 制到您的工作目录。
http://majorv.help.altair.com/minorv/simulation/tutorials/hwsolvers/optistruct/OS-T-5000/beamshape.zip
您将使用具有载荷和约束的结构模型。右下角的挠度应限制在3毫米以内。最佳设计将使用尽可能少的材料。
图1.悬臂梁- 结构模型
结构模型被加载到HyperMesh中,用于生成和运行悬臂梁的形状优化。shape扰动向量是使用HyperMorph生成的,HyperMorph可通过HyperMesh接口访问。OptiStruct软件确定最佳shape。然后在HyperView中查看结果。
本教程的优化问题表述为:
Objective:最小化体积。
Constraints:给定梁末端的最大节点位移< 3.0 mm。
Designvariables:使用HyperMorph定义的shape变量。

一、启动HyperMesh并设置OptiStruct用户配置文件

1.启动HyperMesh。
此时将打开User Profile对话框。
2.选择OptiStruct,然后单击OK
这将加载用户配置文件。它包括相应的模板、宏菜单和导入阅读器,将HyperMesh的功能缩减为与生成OptiStruct模型相关的功能。

二、打开模型

1.单击File>Open>Model
2.选择保存到工作目录的beamshape.hm文件。
3.单击Open    
 beamshape.hm数据库将加载到当前HyperMesh会话中,替换任何现有数据。

三、设置优化

3.1使用HyperMorph创建shape
在此步骤中,您将使用HyperMorph创建shape。
1.在Analysis页面中,单击optimization面板。
2.单击HyperMorph面板。
3.创建域句柄。
a)单击domains面板。
b)选择create子面板。
c)从全局域切换到auto functions并保留默认设置。
d)单击generate
e)单击return返回到HyperMorph面板。
创建了许多域和手柄,这将使我们能够变形梁的shape。
有两种类型的手柄:全局手柄,由较大的红球表示;和局部手柄,由较小的黄球表示。本教程将仅介绍局部句柄。
4.移动手柄。
a)选择morph面板。
b)选择move handles子面板。
c)将interactive切换到move to node
d)使用句柄选择器,选择右上角的局部手柄(施加力的位置)。
图2.
e)使用节点选择器,选择梁右侧中间的节点。
光束将更改shape,以便您选择的手柄移动到所选节点的位置。请注意网格如何适应shape的这种变化。
图3.变形shape 1    
5.保存shape。
a)选择save shape子面板。
b)在shape= 字段中,输入shape1
c)单击颜色按钮为shape矢量选择新颜色。
d)在shape= 下,将切换设置为as node perturbations
e)单击save
f)单击Yes
此shape已保存,以后可以与设计变量关联。
6.单击undo all
模型将返回到原始shape。
7.单击return返回到HyperMorph面板。
8.创建手柄。
a)选择handles面板。
b)选择create子面板。
c)name = 字段中,输入aux1
d)使用域选择器,选择顶部边缘域。
Tip:要确保你选择了顶部边缘域,请按住鼠标左键并将鼠标移动到光束的顶部边缘上,直到边缘高亮(白色),然后松开鼠标按钮。
e)将切换设置为by nodes
f)使用节点选择器,选择位于梁顶部边缘中心的节点。
g)单击create
h)单击return返回到HyperMorph面板。
将在梁顶部边缘的中心创建一个新手柄'aux1'。
图4.
9.移动手柄。
a)单击morph面板。
b)选择move handles子面板。
c)从move to nodes切换到interactive
d)使用手柄选择器,选择您刚刚创建的黄色手柄。    
将在选定控制柄上创建操纵器轴。
e)在操纵器轴上单击鼠标左键并按住鼠标按钮,指向X轴的正方向。在按住鼠标按钮的同时,沿X轴的正方向拉动所选轴。向下拉大约直到光束的中心,然后松开鼠标按钮。
Note:网格随着手柄沿轴移动而交互式地变形。
10.
11.图5.变形shape 2
12.设置biasing。
a)选择set biasing子面板。
b)使用手柄选择器,选择aux1
c)选择makeretroactive
d)将bias切换到screen edit
数字1.000 出现在手柄'aux1' 旁边。
e)单击数字并按住鼠标按钮,直到值显示为1.500。
Tip:如果你向上移动鼠标,数字会增加,如果你向下移动鼠标,数字就会减少。
f)单击update
顶部边缘的曲率已更改。
图6.变形shape 3
13.保存shape。
a)选择save shape子面板。    
b)在shape= 字段中,输入shape2
c)单击颜色按钮为shape矢量选择新颜色。
d)在shape= 下,将切换设置为as node perturbations
e)单击save
f)如果您想在全局和变形体积手柄处保存节点的扰动,请单击Yes。
此shape现在已保存,以后可以将其关联到设计变量。
14.单击undo all
模型将返回到其原始shape。
15.单击return两次以返回到Optimization面板。
3.2创建shape设计变量
1.单击shape面板。
2.选择desvar子面板。
3.将设计变量选项从single desvar切换到multiple desvars
4.使用shape选择器,选择shape1shape2
5.单击create
6.单击return返回Optimization面板。
使用之前保存的shape创建两个shape设计变量。
3.3创建优化响应
1.在Analysis页面中,单击optimization
2.单击Responses
3.创建体积响应,它定义设计空间的体积分数。
a)在responses= 字段中,输入vol
b)在响应类型下方,选择volume
c)将regional selection设置为totalno regionid
d)单击create
4.创建displacement响应。
a)在response= 字段中,输入disp
b)在响应类型下方,选择static displacement
c)单击nodes>by id,然后在id= 字段中输入1115。
d)将置换类型设置为dof1。
dof1, dof2, dof3:在X、Y和Z方向上平移。
dof4, dof5, dof6:绕X、Y和Z轴旋转。
total disp:x、y和z方向的平移位移的合力。    
total Rotate:x、y和z方向的旋转位移的结果。
e)单击create
5.单击return返回Optimization面板。
3.4创建设计约束
1.单击dconstraints面板。
2.constraint= 字段中,输入constr
3.单击response =并选择disp
4.选中upper bound旁边的框,然后输入3.0
5.使用loadsteps选择器,选择Load
6.单击create
7.单击return返回Optimization面板。
3.5定义目标函数
1.单击objective面板。
2.验证是否选择了min。
3.单击response并选择vol
4.单击create
5.单击return两次以退出Optimization面板。
3.6定义SHAPE卡
默认情况下,_s#.h3d文件中仅提供位移和应力结果。要在HyperView中应用于模型的shape更改之上获得分析结果(位移/应力/温度),需要定义SHAPE卡。
1.在Analysis页面中,单击control cards面板。
2.Card Image对话框中,单击SHAPE
3.将FORMAT设置为H3D
4.将TYPE设置为ALL
5.将OPTION设置为ALL
6.单击return两次返回主菜单。

四、运行优化

1.在Analysis页面中,单击OptiStruct
2.单击save as
3.Save As对话框中,指定写入OptiStruct模型文件的位置,并在文件名中输入beamshape
对于OptiStruct求解器模型,建议使用.fem扩展名。
4.单击Save    
input file字段显示在Save As对话框中指定的文件名和位置。
5.将导出选项切换设置为all
6.将run options切换设置为optimization
7.将内存选项切换设置为memory default
8.单击OptiStruct运行优化。
作业完成时,窗口中会显示以下消息:
OPTIMIZATION HAS CONVERGED.
FEASIBLE DESIGN (ALL CONSTRAINTS SATISFIED).
如果存在错误消息,OptiStruct还会报告错误消息。文件beamshape.out可以在文本编辑器中打开,以查找有关任何错误的详细信息。此文件将写入与.fem文件相同的目录。
9.单击Close

五、查看结果

4               
5               
5.1查看shape结果
1.在OptiStruct面板中,单击HyperView
HyperView在HyperMesh Desktop中启动,并在第1 页上加载beamshape_des.h3d,在第2 页上打开beamshape_s2.h3d。
2.使用导航按钮导航到第1 页上的Design History。
图7.
3.在Results Browser中,选择迭代。
图8.
4.在Results工具栏上,单击 以打开Contour面板。
5.将Result type: 设置为Shape change (v)Mag    
6.单击Apply
形状优化结果将应用于模型。
图9.
5.2查看位移的云图
1.在应用程序的顶部和右侧,使用导航按钮移动到第2 页。
2.在Results Browser中,选择最后一次迭代。
图10.
3.在Results工具栏上,打开Deformed面板。
4.将Result type: 设置为Shape Change (v)
5.单击Apply
将显示光束的优化shape。
6.在Results工具栏上,单击 以打开Contour面板。
7.将Result type: 设置为Displacement (v)Mag
8.单击Apply
9.在Annotations工具栏上,单击 以打开Measures面板。    
10.选择Static MinMax Result
节点1115 的位移在约束值范围内。
图11.
 


来源:TodayCAEer
ACTOptiStructHyperMeshHyperViewDeform疲劳形状优化拓扑优化航空航天汽车建筑材料控制
著作权归作者所有,欢迎分享,未经许可,不得转载
首次发布时间:2025-04-10
最近编辑:21天前
TodayCAEer
本科 签名征集中
获赞 25粉丝 94文章 334课程 1
点赞
收藏
作者推荐
未登录
还没有评论
课程
培训
服务
行家
VIP会员 学习计划 福利任务
下载APP
联系我们
帮助与反馈