首页/文章/ 详情

扭转工况下的形貌优化-OS-T:3000

14小时前浏览28
现在我们来开启新的篇章,形貌优化。
扭转工况是什么,以汽车举例,扭转工况是指在车辆行驶过程中,由于路面不平或者悬挂系统传递给车架的不平衡力矩等原因,使得车辆的前后轮或左右轮之间产生扭矩差异,导致整个车辆发生扭转变形的情况。这种变形会对车辆的操控性、稳定性和安全性产生重要影响(在没有专业设备的前提下,判断扭转刚度最直接的方式是,当车辆处于交叉桥,或单侧车轮开上斜坡的时候,尾门能否正常关闭)。
形貌优化是一种形状最佳化的方法,它在板型结构中寻找最优的加强筋分布,用于设计薄壁结构的加强筋结构,从而提高结构的刚度和频率,特别适用于模型边界固定的情况,只能通过局部加强特征来优化。在汽车车架设计中,形貌优化可以用于改善车架在扭转工况下的性能。通过优化车架的结构,比如增加或调整加强筋的位置和尺寸,可以提高车架的扭转刚度,减少在扭转工况下的变形,从而提升车辆的操控性能和安全性。
结合扭转工况和形貌优化,可以在保持车架轻量化的同时,提高其在扭转工况下的刚度和模态性能。这种优化方法不仅提高了车架的扭转刚度,还提升了车架的模态性能,刚度与模态的性能关系不在赘述。
在本教程中,您将对受扭转力的平板执行形貌优化。
在开始之前,请将本教程中使用的文件复 制到您的工作目录。
http://majorv.help.altair.com/minorv/simulation/tutorials/hwsolvers/optistruct/OS-T-3000/torsion_plate.zip
在这个教程中,您将使用一个有限元模型来处理具有特定载荷和约束的设计问题。该零件计划通过冲压工艺进行成型。我们的目标是最小化在正Z方向上受力的节点的位移,而为了实现这一目标,我们只能通过改变板的形状来进行优化,不能改变其厚度。
图1.具有载荷和约束的设计空间的有限元模型
在这个过程中,我们将有限元模型导入HyperMesh软件中。在模型中,已经定义了约束、载荷、材料属性以及SUBCASE。接下来,我们需要设定形貌设计变量和优化参数。通过使用OptiStruct软件,我们可以确定最佳的起筋设计。优化结果将通过设计空间形状变化的云图动画来展示。最后,我们将展示如何利用模式重复的方法,根据OptiStruct建议的形状变化,选择合适的模式以便于制造。
本教程的优化问题表述为:
Objective:最小化施加载荷的节点位移。
Design variables:在与Element法向对齐的可设计空间上自动生成的形状变量。

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

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

二、打开模型

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

三、验证component的厚度

1.在Model Browser的Properties文件夹中,点击design
design属性将在Entity Editor中打开,其中显示有关PSHELL卡上的壳厚度的信息。
2.验证厚度T是否设置为1.0

四、设置优化

1           
2           
3           
4           
4.1定义形貌设计变量
对于形貌优化,需要定义设计空间和定义起筋。
1.在Analysis页面中,单击optimization面板。
2.单击topography面板。
3.创建形貌优化设计空间定义。
a)选择create子面板。
b)在desvar= 字段中,输入topo
c)使用props选择器,选择design
d)单击create
已创建形貌优化设计空间topo。通过organization 将design Component中的所有Element现在都包含在设计空间中。
4.为设计空间形貌创建定义起筋。
a)选择bead params子面板。
b)验证desvar=字段是否设置为topo,这是新创建的设计空间的名称。
c)在minimum width= 字段中,输入5.0
此参数控制模型中起筋的宽度。建议的值介于平均单元宽度的1.5 到2.5 倍之间。
d)在draw angle= 字段中,输入60.0(这是默认值)。
此参数控制起筋侧面的角度。建议的值介于60 到75 度之间。    
e)在绘制height=中,输入4.0
此参数设置要的是起筋的最大高度。
f)选择buffer zone
此参数在设计域中的Element和设计域外的Element之间建立缓冲区。
g)将拔模方向切换为normal切换为elements
此参数定义形状变量的创建方向。
h)将边界修改为loadspc
这会告诉OptiStruct将应用载荷或约束的节点保留在设计空间之外。
i)单击update
已为设计空间topo,创建定义起筋信息。根据这些信息,OptiStruct将在整个设计空间中自动生成起筋的变量定义。
5.更新Design variables的边界。
a)选择bounds子面板。
b)验证desvar = 字段是否设置为topo,这是设计空间的名称。
c)在Upper Bound= 字段中,输入1.0
控制网格移动的变量的上限(Real > LB,默认值= 1.0)。这会将网格移动的上限设置为UB*HGT。
d)在Lower Bound= 字段中,输入0.0
e)单击update
上限将网格移动的上限设置为等于UB*HGT,下限将网格移动的下限设置为等于LB*HGT。
6.单击return转到优化面板。
4.2创建优化响应
1.在Analysis页面中,单击optimization
2.单击Responses
3.创建displacement响应。
a)在response= 字段中,输入displace
b)在响应类型下方,选择static displacement
c)单击nodes>by id,然后在id= 字段中输入2500。
d)将置换类型设置为dof3。
dof1、dof2、dof3
在X、Y和Z方向上平移。    
dof4、dof5、dof6
绕X、Y和Z轴旋转。
total disp
x、y和z方向的平移位移的合力。
total Rotate
x、y和z方向的旋转位移的结果。
e)单击create
4.单击return返回Optimization面板。
4.3定义目标函数
1.单击objective面板。
2.验证是否选择了min。
3.单击response并选择displace
4.使用loadsteps选择器,选择torsion
5.单击create
6.单击return两次以退出Optimization面板。

五、运行优化

1.在Analysis页面中,单击OptiStruct
2.单击save as
3.Save As对话框中,指定写入OptiStruct模型文件的位置,并在文件名中输入torsion_plate
对于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还会报告错误消息。可以在文本编辑器中打开文件torsion_plate.out以查找有关任何错误的详细信息。此文件将写入与.fem文件相同的目录。    
9.单击Close
写入run目录的默认文件包括:
torsion_plate.hgdata
HyperGraph文件,包含目标函数的数据、百分比约束冲突和每次迭代的约束。
torsion_plate.hist
包含目标函数和冲突最严重约束的迭代历程的OptiStruct迭代历程文件。可用于迭代历程的xy图。
torsion_plate.html
HTML优化报告,给出问题表述和最终迭代结果的摘要。
torsion_plate.us
OSSmooth文件,默认密度阈值为0.3。您可以编辑文件中的参数以获得所需的结果。
torsion_plate.out
OptiStruct输出文件包含有关文件设置、优化问题设置、运行所需RAM和磁盘空间量的估计值、所有优化迭代的信息以及计算时间信息的特定信息。查看此文件,了解在处理torsion_plate.fem文件时标记的警告和错误。
torsion_plate.sh
Shape文件进行最终迭代。它包含分析中每个单元的材料密度、空隙尺寸参数和空心方向角。此文件可用于重新启动运行。
torsion_plate.stat
包含有关用于完整运行的CPU时间的信息,以及用于读取输入模型、装配、分析、收敛等的CPU时间的分解。
torsion_plate_des.h3d
包含优化结果的HyperView二进制文件。
torsion_plate_s#.h3d
包含线性static分析的HyperView二进制结果文件,依此类推。
torsion_plate.grid
一个OptiStruct文件,其中写入扰动网格数据。

六、查看结果

形状云图信息从OptiStruct输出所有迭代。此外,默认情况下,将输出第一次和最后一次迭代的Displacement和Stress结果。本节介绍如何使用HyperView查看这些结果。
5           
6           
6.1查看形状云图的static图    
1.在OptiStruct面板中,单击HyperView
HyperView在HyperMesh Desktop中启动,并加载torsion_plate_des.h3dtorsion_plate_s1.h3d文件,以读取模型和优化结果。
2.在Results工具栏上,单击 以打开Contour面板。
3.将Result type设置为Shape Change (v)Mag。
图2.
4.在Animation工具栏上,单击 以从Simulation列表中选择最后一个迭代。
出现优化后的板。
5.单击Apply
max= 字段是否显示4.0e + 00?
在这种情况下,它是。如果不是,则您的优化进展不够。减小OBJTOL参数(在优化面板上的opti控制面板中设置)。该值4.0e+00 来自前面定义的拔模高度。   图3.显示迭代时的起筋模式(收敛解)
6.2查看形状云图更改的瞬态动画
云图形状的瞬态动画将很好地了解不同迭代过程中发生的形状变化。
1.在Animation工具栏中,将Animation mode设置为 。
图4.
2.单击 以启动动画。
3.单击 以打开Animation Controls面板。
4.在动画运行的情况下,使用Max Frame Rate下方的滑块调整动画的速度。
5.单击 可暂停动画。
6.3查看变形的结构
第一次和最后一次迭代的位移和应力结果(默认)在torsion_plate_s1.h3d文件中给出。
1.在应用程序的顶部右侧,单击 以转到下一页。
此页面包含来自torsion_plate_s1.h3d文件的SUBCASE信息。
2.在Animation工具栏上,将动画模式设置为Linear Static
Tip:为了更好地了解这个模型发生了什么,请打开网格线并绘制结果的云图。
3.在Results工具栏上,单击 以打开Deformed面板。
4.将Result type设置为Displacement(v)
5.在Results Browser中,选择第一次迭代(Iteration 0)。
图5.    
6.在Animation工具栏上,将动画模式设置为。
7.单击 以启动动画。
8.单击 以转到Animation Controls面板。
9.在动画运行的情况下,使用Max Frame Rate下方的滑块调整动画的速度。
将显示原始模型的变形动画。
变形的形状对于您应用于网格的边界条件来说看起来是否正确?
10.单击 可停止动画。
11.在Page Controls工具栏上,单击 以删除HyperView页面。

七、添加模式组约束

模式组将添加为可制造性的约束。
在前面的示例中获得的配置(参见显示第17 次迭代时钢筋模式的云图)可能难以制造。它确实给出了哪些类型的模式可能会优化结构(在本例中- 最小化所选节点的位移)。
上一个练习中获得的静态云图建议的一种可能的模式是使用平行于对角线的起筋。在此示例中,您将选择从施加载荷的节点中出现的对角线。
1.在HyperMesh中,单击return退出OptiStruct面板。
2.在Analysis页面中,单击optimization面板。
3.单击topography面板。
4.选择pattern grouping子面板。
5.单击desvar =并选择topo
6.将模式类型设置为linear
7.将子类型设置为basic。
8.选择节点。
a)使用锚点节点选择器,选择应用载荷的角落处的节点。
HyperMesh会自动围绕第一个节点移动蓝色光晕。
b)使用第一个节点选择器,选择对角的节点。 
图6.模式分组节点位置
9.单击update
10.单击return两次以转到主菜单。

八、运行优化

1.在Analysis页面中,单击OptiStruct
2.单击save as
3.Save As对话框中,指定写入OptiStruct模型文件的位置,并在filename中输入torsion_pattern
对于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还会报告错误消息。可以在文本编辑器中打开torsion_pattern.out文件,以查找有关任何错误的详细信息。此文件将写入与.fem文件相同的目录。
9.单击Close    
像以前一样查看新结果。此外,请检查.out文件中第0 次和最后一次迭代的目标值。目标的最终值与使用'none' 选项进行模式分组获得的最终值相比如何?

九、查看形状云图的static图

重复前面步骤中的步骤,查看形状变化的云图。
图7.显示起筋阵列的云图。在最后一次迭代中使用pattern grouping constraint。
              


来源:TodayCAEer
OptiStructHyperMeshHyperViewDeformSTEPS动网格汽车材料控制数控装配
著作权归作者所有,欢迎分享,未经许可,不得转载
首次发布时间:2024-11-29
最近编辑:14小时前
TodayCAEer
本科 签名征集中
获赞 18粉丝 30文章 252课程 0
点赞
收藏
作者推荐

使用等效静载荷法进行拓扑优化-OS-T:2098

等效静载荷法(EquivalentStaticLoadMethod,简称ESL)是OptiStruct中用于处理动态载荷优化的一种技术。适用于在动态载荷下进行设计优化的情况。ESL方法能够将动态/非线性分析的响应在静态分析中模拟出来,通过计算等效的静态载荷,使得可以在概念设计阶段和设计微调阶段使用拓扑、自由尺寸、拓扑形状、尺寸、形状和自由形状优化等技术。(是整车开发项目中对于碰撞性能的指标,通常选择转化为线性分析的指标,这对于计算效率能够有大幅度提升)在ESL优化过程中,每个时间步的动态/非线性分析响应都会被计算出一个对应的等效静态载荷。这些等效静态载荷被视为单独的载荷工况,并在后续的线性响应优化循环中使用。优化循环中的更新设计会被反馈到分析中进行验证和整体收敛性检查。根据这次验证的结果,解决方案会收敛,或者为更新的几何形状计算一组新的等效静态载荷,然后重复整个过程直到收敛。ESL方法在OptiStruct中是完全自动化的,并且对于瞬态、动态和非线性解决方案的响应优化非常有效。它提供了以下好处:可以在概念设计阶段和设计微调阶段应用。由于优化过程中的设计更新,设计会针对更新的载荷进行优化。对于多体动力学(MBD)问题,ESL方法已经实现,包括柔性体的优化。可以应用尺寸、形状、自由形状、拓扑、拓扑形状、自由尺寸和材料优化到柔性体上。响应包括质量、体积、质心、惯性矩、应力、应变、柔度(应变能量)和柔性体的位移。位移响应是考虑了定义在柔性体上的局部边界条件。在进行结构优化时,必须为每个柔性体指定边界条件。在动态分析中,柔性体和刚体通过各种关节连接形成多体系统。在对柔性体执行ESL方法时,这些关节不包括在这个基于静态子案例的结构优化中。这意味着每个柔性体将有6个刚体模态。必须移除每个柔性体的6个刚体模态以进行结构分析。必须固定每个灵活体的确切6个自由度(DOF)以移除6个刚体模式。如果在柔性体中固定了超过6个DOF,额外固定的DOF将成为柔性体的约束,这可能不会得到最优解,并且可能会增加所需的ESL外部循环次数。此外,ESL方法还扩展到支持非线性响应优化,包括显式动态分析等。在本教程中,您将使用等效静载荷法(ESL)设置MBD系统的优化问题。在开始之前,请将本教程中使用的文件复制到您的工作目录。http://majorv.help.altair.com/minorv/simulation/tutorials/hwsolvers/optistruct/OS-T-2098/Excavator_MBD.zip您将在HyperMesh中设置模型,并使用OptiStruct运行拓扑优化作业。优化的目标是最大化挖掘机模型下臂的刚度,同时将质量保持在允许值以下。模型单位为kg、N、m和s。图1.挖掘机的造型本教程的优化问题表述为:Objective:在等效静态载荷步中最小化最大柔度。Constraints:体积分数上限。Designvariables:下臂(柔性体)component中的单元密度。一、启动HyperMesh并设置OptiStruct用户配置文件1启动HyperMesh。此时将打开UserProfile对话框。2选择OptiStruct,然后单击OK。这将加载用户配置文件。它包括相应的模板、宏菜单和导入阅读器,将HyperMesh的功能缩减为与生成OptiStruct模型相关的功能。二、打开模型1单击File>Open>Model。2选择保存到工作目录的Excavator_MBD.hm文件。3单击Open。Excavator_MBD.hm数据库被加载到当前的HyperMesh会话中,替换任何现有数据。三、提交作业该模型已经设置了挖掘机MBD分析,所有物体都定义为刚体。1在Analysis页面中,单击OptiStruct面板。图2.访问OptiStruct面板2单击saveas。3在SaveAs对话框中,指定写入OptiStruct模型文件的位置,并在文件名中输入excavator_MBD_analysis。对于OptiStruct求解器模型,建议使用.fem扩展名。4单击Save。inputfile字段显示在SaveAs对话框中指定的文件名和位置。5将导出选项切换设置为all。6将runoptions切换设置为analysis。7将内存选项切换设置为memorydefault。8清除options字段。9单击OptiStruct启动OptiStruct作业。如果作业成功,则新的结果文件应位于写入excavator_MBD_analysis.fem的目录中。excavator_MBD_analysis.out文件是查找错误消息的好地方,如果存在任何错误,这些错误消息可以帮助调试输入模型。四、查看结果1当对话框中收到消息ANALYSISCOMPLETED时,关闭对话框。2在OptiStruct面板中,单击HyperView。当前运行的结果会自动加载到HyperView中。3在Animation工具栏中,单击以启动动画并查看MBD模型。4在PageControls工具栏上,单击以删除页面,关闭HyperView,然后返回到HyperMesh。五、设置优化4.1将刚体更改为柔性体在此步骤中,您将定义body的拓扑优化Lower_Arm。它最初被建模为刚体,需要转换为柔性体以进行优化。1.在Analysis页面中,单击bodies面板。2.选择update子面板。3.双击body=并选择Lower_Arm。4.单击review。下臂component将突出显示。体类型PRBODY显示为type=,表示下臂被建模为刚体。您将此刚体更新为柔性体类型,并在此主体上定义拓扑优化。5.单击type=并选择PFBODY。6.在nmodes=字段中,输入20。这会将CMS方法中包含的模态数增加到20种。图3.更新Lower_Arm的BodyType7.单击update。左下角会显示一条消息,显示已更新为新的类型。8.单击return。4.2创建TopologyDesignvariables1.在Analysis页面中,单击optimization。2.单击topology。3.选择create子面板。4.在desvar=字段中,输入L_Arm_Topology。5.将type:设置为PSOLID。6.使用props选择器,选择lowerarm。7.单击create。8.更新设计变量的参数。a)选择parameters子面板。b)将minmemb关闭为mindim=,然后输入0.05。c)单击update。9.单击return。4.3创建优化响应1.在Analysis页面中,单击optimization。2.单击Responses。3.创建体积分数响应。a)在responses=字段中,输入Volfrac。b)在响应类型下方,选择volumefrac。c)将区域选择设置为byentity和noregionid。d)使用props选择器,选择lowerarm。e)单击create。4.创建柔度响应。a)在response=字段中,输入Comp。b)在响应类型下方,选择compliance。c)将regionalselection设置为total和noregionid。d)单击create。2.单击return返回Optimization面板。4.4创建设计约束1.单击dconstraints面板。2.在constraint=字段中,输入Vol_Constr。3.单击response=并选择Volfrac。4.选中upperbound旁边的框,然后输入0.5。5.单击create。6.单击return返回Optimization面板。在响应Volfrac上定义约束。该约束将强制设计空间中使用的体积分数小于0.5。4.5定义目标引用1.在Analysis页面的Optimization面板中,单击objreference面板。2.在dobjref=字段中,输入MAX_Compin。3.选择posreference,然后输入1.0。4.选择negreference,然后输入-1.0。5.单击response并选择Comp。6.将loadsteps选择选项设置为all。这可确保设计目标参考包括通过ESL方法计算的所有LoadStep的柔度。7.单击create。8.单击return返回Optimization面板。4.6定义目标函数1.单击objective面板。2.验证是否选择了minmax。3.单击dobjrefs并选择MAX_Comp。4.单击create。5.单击return两次以退出Optimization面板。六、保存数据库1.在菜单栏中,单击File>SaveAs>Model。2.在SaveAs对话框中,输入excavator_MBD_Topology.hm作为文件名,并将其保存到您的工作目录中。七、运行优化1.在Analysis页面中,单击OptiStruct。2.单击saveas。3.在SaveAs对话框中,指定写入OptiStruct模型文件的位置,并在文件名中输入excavator_MBD_Topology。对于OptiStruct求解器模型,建议使用.fem扩展名。4.单击Save。inputfile字段显示在SaveAs对话框中指定的文件名和位置。5.将导出选项切换设置为all。6.将runoptions切换设置为optimization。7.将内存选项切换设置为memorydefault。8.单击OptiStruct运行优化。作业完成时,窗口中会显示以下消息:OPTIMIZATIONHASCONVERGED.FEASIBLEDESIGN(ALLCONSTRAINTSSATISFIED).如果存在错误消息,OptiStruct还会报告错误消息。可以在文本编辑器中打开excavator_MBD_Topology.out文件,以查找有关任何错误的详细信息。此文件将写入与.fem文件相同的目录。9.单击Close。八、查看结果1.在命令窗口中收到消息OPTIMIZATIONHASCONVERGED时,关闭DOS窗口。2.在OptiStruct面板中,单击HyperView。结果将加载到HyperView中。3.在ResultsBrowser中,选择最终的Outerloop迭代以加载优化的拓扑结果。图4.4.在Results工具栏中,单击以打开ISOValue面板。5.将Resulttype设置为Elementdensitysities(s)。6.单击Apply。仅显示Element密度高于Currentvalue字段中显示的Element。图5.7.更改密度阈值。a)在Currentvalue字段中,输入0.5。b)在Currentvalue下,移动滑块。8.将Showvalues设置为Above。9.在ModelBrowser的component文件夹中,右键单击Lower_Arm,然后从上下文菜单中选择Isolate。10.在IsoValue面板的Clippedgeometry下,选择Features以可视化完整的设计空间。图6.来源:TodayCAEer

未登录
还没有评论
课程
培训
服务
行家
VIP会员 学习 福利任务 兑换礼品
下载APP
联系我们
帮助与反馈