首页/文章/ 详情

通过形貌优化提升支架的一阶模态频率案例-OS-T:3010

3天前浏览102
支架的一阶模态频率是指支架在自由振动条件下的最低固有频率,这个频率是支架结构的动力特性之一,不受外力载荷的影响。提升支架的一阶模态频率对于确保结构的稳定性和可靠性至关重要,原因如下:
1、避免共振:如果支架的固有频率与外部激励(如发动机振动、路面不平等因素)的频率接近或重合,就会发生共振现象。共振会导致支架产生过大的振动和噪声,甚至可能引起结构的破坏。通过提升一阶模态频率,可以确保支架的固有频率远离这些激励源的频率范围,从而避免共振的发生。
2、提高结构稳定性:一阶模态频率是支架结构的最低振动频率,提升这个频率可以增加结构的刚度,减少在正常工作条件下的振动幅度,提高结构的稳定性和使用寿命。
3、降低噪声和振动:提升一阶模态频率有助于降低由于振动引起的噪声和不适感,这对于提高乘客的舒适度和设备的可靠性非常重要。
4、设计优化:通过模态分析,可以确定支架的薄弱部位,并进行针对性的加强,以提高支架的整体性能。模态分析结果可以为悬置支架的设计优化提供重要依据,例如,如果发现某个方向上的固有频率过低,可以通过增加支架的刚度、改变结构形状或材料等方式来提高固有频率。
本篇文章通过形貌优化在支架上合理添加加强筋,提升其一阶频率性能,从而提高其结构刚度和强度,优化材料使用,降低成本,并改善制造工艺。
提升一阶模态频率的好处包括:
1、提高安全性:避免共振可以减少由于过大振动引起的结构破坏风险,从而提高整个系统的安全性。
2、延长使用寿命:减少振动和噪声可以降低材料疲劳,延长支架的使用寿命。
3、提升乘坐舒适性:对于汽车等交通工具来说,降低振动和噪声可以提升乘客的乘坐舒适性。
4、满足设计标准:在某些应用中,如汽车发动机悬置支架,一阶固有频率需大于特定的值(如大于600Hz)以满足设计标准。
在本教程中,您将对使用通过集中质量建模的L型支架执行形貌优化。
在开始之前,请将本教程中使用的文件复 制到您的工作目录。
http://majorv.help.altair.com/minorv/simulation/tutorials/hwsolvers/optistruct/OS-T-3010/Lbkttopog.zip
支架使用shell单元进行建模。目标是通过在支架中引入起筋或冲压结构来最大化一阶频率。这可以通过使用形貌优化来实现。孔周围的区域被指定为不可设计,而支架的大部分可用于开发加劲筋。
图1.L型支架布局
本教程的优化问题表述为:
Objective:最大化一阶频率。
Constraints:起筋尺寸和布局。
Design variables:垂直于壳中面的节点的扰动。

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

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

二、打开模型    

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

三、设置优化

1           
2           
3           
3.1定义形貌设计变量
对于形貌优化,需要定义设计空间和定义起筋。
在此步骤中,将使用拉延筋宽度为15 mm、拉延筋高度为5 mm和拔模角度为85 度的值。拉延筋图案的对称性应沿设计空间的对称线强制。
1.在Analysis页面中,单击optimization面板。
2.单击topography面板。
3.创建形貌优化设计空间定义。
a)选择create子面板。
b)在desvar= 字段中,输入topo
c)使用props选择器,选择design
d)单击create
已创建形貌优化设计空间定义topo。organization到设计Component中的所有Element现在都包含在设计空间中。
4.为设计空间形貌创建定义起筋。
a)选择bead params子面板。
b)验证desvar = 字段是否设置为topo,这是新创建的设计空间的名称。
c)在minimum width= 字段中,输入15.0
此参数控制模型中起筋的宽度。建议的值介于平均单元宽度的1.5 到2.5 倍之间。
d)在draw angle= 字段中,输入85.0(这是默认值)。
此参数控制起筋侧面的角度。建议的值介于60 到75 度之间。
e)在起筋高度= 中,输入5.0
此参数设置要绘制的起筋的最大高度。
f)选择buffer zone
此参数在设计域中的Element和设计域外的Element之间建立缓冲区。    
g)将拉伸方向切换为normal切换为elements
此参数定义形状变量的创建方向。
h)将边界跳转到loadspc
这会告诉OptiStruct将应用载荷或约束的节点保留在设计空间之外。
i)单击update
已为设计空间topo创建定义起筋。根据这些信息,OptiStruct将在整个设计变量域中自动生成起筋变量定义。
6.添加模式组约束。
a)选择pattern grouping子面板。
b)单击desvar =并选择topo
c)将pattern type设置为1-pln sym
d)单击anchor node,然后在id= 字段中输入337。
e)单击first node,然后在id= 字段中输入613。
f)单击update
7.更新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。
8.单击return转到优化面板。
3.2创建优化响应
1.在Analysis页面中,单击optimization
2.单击Responses
3.创建频率响应。
a)在responses= 字段中,输入FREQ
b)在响应类型下方,选择frequency。
c)对于Mode Number ,输入1.0
d)单击create    
响应FREQ是针对提取的第一模态的频率定义的。
4.单击return返回Optimization面板。
3.3定义目标函数
1.单击objective面板。
2.验证是否选择了max。
3.单击response并选择FREQ
4.使用loadsteps选择器,选择STEP
5.单击create
6.单击return两次以退出Optimization面板。

四、保存数据库

1.在菜单栏中,单击File>Save As>Model
2.Save As对话框中,输入Lbkttopog.hm作为文件名,并将其保存到您的工作目录中。

五、运行优化

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

六、查看结果

形状云图信息从OptiStruct输出所有迭代。此外,默认情况下,将输出第一次和最后一次迭代的特征向量结果。本节介绍如何在HyperView中查看这些结果。
4           
5           
6           
6.1查看形状云图,并更改为瞬态动画
1.在OptiStruct面板中,单击HyperView    
HyperView在HyperMesh Desktop中启动并加载Lbkttopog_des.h3d文件。
2.在Animation工具栏上,将动画模式设置为Transient
图2.
3.单击 以启动动画。
4.单击 以打开Animation Controls面板。
5.移动Max Frame Rate滑块以调整动画速度。
6.2查看优化的频率差
1.在应用程序的顶部右侧,单击 以继续第3 页,其中包含第一次和最后一次迭代的结果。
2.在Results Browser中,选择第一次迭代(Iteration 0)。
从分析中请求的所有模式的频率都显示在Subcase下拉列表中。
图3.迭代0 的第一个模式的频率
查看最后一次迭代的频率值。经观察,第一次和最后一次迭代的第一模式的频率分别从48 Hz左右变为93 Hz左右。    
图4.迭代12 的第一种模式的频率
6.3应用优化的形貌
1.在应用程序的顶部右侧,单击 以返回Design History页面(第2 页)。
2.在Animation工具栏上,单击 以将Current time设置为最后一步。
图5.形貌结果
             


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

使用超单元进行拓扑优化-OS-T:2070

您的每一次点赞和在看,都是对我工作的认可和鼓励,更是激励我不断前行、持续更新内容的强大动力。您的支持是我不懈追求卓越和创新的源泉。在产品开发中,我们经常面临需要对复杂结构进行优化设计的挑战。这时,使用超单元(Superelement)技术就显得非常必要,使用超单元的必要性有以下几点:1.复杂结构简化:对于包含数百万甚至更多自由度的复杂结构,直接进行优化分析计算代价高昂,超单元可以将复杂结构中的指定部分预先计算并简化,从而简化整个优化过程。2.计算效率:在进行拓扑优化时,需要进行多次迭代计算。超单元技术通过减少每次迭代所需的计算量,显著提高了计算效率。3.设计灵活性:超单元允许设计师专注于关键区域的设计,而不必从头开始处理整个结构,这增加了设计的灵活性。使用超单元的优势:1.减少计算时间:通过减少模型的自由度,超单元可以显著减少所需的计算时间。2.降低硬件要求:较小的模型尺寸意味着需要的计算资源更少,降低了对硬件的要求。3.提高设计迭代速度:设计师可以更快地测试不同的设计概念,加速产品开发流程。4.优化复杂区域:超单元使得对复杂或关键区域进行详细的优化成为可能,而不必担心整个模型的计算负担。5.更好的设计洞察:通过超单元技术,设计师可以更深入地了解结构性能,从而做出更明智的设计决策。超单元技术为复杂结构的优化设计提供了一种高效、灵活且实用的解决方案。在本教程中,我们将通过一个简单的悬臂梁有限元模型示例,展示如何应用静态缩减法(staticReduction)来简化有限元模型。此外,您还将学习如何对这一简化后的模型进行拓扑优化。在开始之前,请将本教程中使用的文件复制到您的工作目录。http://majorv.help.altair.com/minorv/simulation/tutorials/hwsolvers/optistruct/OS-T-2070/cantilever_full.zip图1.无缩减的全悬臂梁模型优化问题可以表示为:Objective:最小化柔度。Constraints:可设计体积的上限限制为40%。Designvariables:设计空间中每个Element的密度。图2.全悬臂梁模型的拓扑优化结果在这个过程中,我们将会使用静态缩减方法,它允许我们从整体模型中提取并简化特定的部分,这些部分在OptiStruct中被称为超单元。为了定义这些超单元的边界自由度,我们需要使用ASET或ASET1关键字。这些关键字指定了超单元与模型其余部分连接的自由度集合,也就是那些将被直接矩阵输入所替代的自由度。值得注意的是,随着ASET定义数量的增加,静态缩减的准确性会提高,但同时计算成本也会增加。例如,尽管静态缩减可以减小需要求解的矩阵的规模,但如果缩减后的矩阵(DMIG)非常稠密,那么求解时间可能会超过求解原始模型的稀疏矩阵的时间。因此,合理选择ASET定义对于利用DMIG进行有效分析至关重要。为了防止缩减矩阵过于密集,应仔细选择ASET条目(见下图),而不是为设计空间和非设计空间之间的所有边界节点创建ASET条目。由于本教程使用的问题体积较小,因此选择ASET条目可能不会影响求解时间。图3.ASET用于悬臂梁模型一、启动HyperMesh并设置OptiStruct用户配置文件1.启动HyperMesh。此时将打开UserProfile对话框。2.选择OptiStruct,然后单击OK。这将加载用户配置文件。它包括相应的模板、宏菜单和导入阅读器,将HyperMesh的功能缩减为与生成OptiStruct模型相关的功能。二、打开模型1.单击File>Open>Model。2.选择保存到工作目录的cantilever_full.hm文件。3.单击Open。cantilever_full.hm数据库将加载到当前HyperMesh会话中,替换任何现有数据。三、生成超单元3.1创建ASETLoadCollector1.创建LoadCollector。a)在ModelBrowser中,右键单击并从上下文菜单中选择Create>LoadCollector。默认LoadCollector显示在EntityEditor中。b)对于Name,输入Asets。c)将CardImage设置为None。2.创建约束。a)在Analysis页面中,单击constraints面板。b)选择create子面板。c)使用节点选择器,选择边界节点。图4.d)选择所有dof。选择到的Dof将被分配给ASET。dof1、2和3是x、y和z平移dof。dof4、5和6是x、y和z旋转dof。e)点击LoadType=并选择ASET。f)单击create。3.单击return转到主菜单。3.2删除后续优化中保留的Element将仅为那些将被折减的单元(超单元)生成折减刚度矩阵和载荷矢量。因此,需要创建一个新模型,该模型仅引用超单元零件以及直接应用于该零件的载荷和边界条件。1.按F2打开Delete面板。2.将实体选择器设置为elems,然后单击elems>bywindow。3.在图5中指示的Element周围绘制一个窗口。图5.4.单击deleteentity。5.单击return转到主菜单。3.3定义一个参数以将约简矩阵写出到外部文件激活矩阵保存过程需要PARAM,EXTOUT批量数据输入。如果没有此参数,运行将照常进行。此参数有两个选项:DMIGPCH,它将ASCII格式的矩阵保存到.pch文件,以及DMIGBIN,它将矩阵以二进制格式保存到.dmg文件。DMIGPCH用于本教程。1.在Analysis页面上,单击controlcards面板。2.在CardImage对话框中,单击PARAM。3.选择EXTOUT。4.在卡片图像顶部的EXTOUT下,选择DMIGPCH。5.单击return退出PARAM。6.单击return返回主菜单。四、保存数据库1.在菜单栏中,单击File>SaveAs>Model。2.在SaveAs对话框中,输入cantilever_dmig.hm作为文件名,并将其保存到您的工作目录中。五、提交作业1.在Analysis页面中,单击OptiStruct面板。图6.访问OptiStruct面板2.单击saveas。3.在SaveAs对话框中,指定写入OptiStruct模型文件的位置,并在文件名中输入cantilever_dmig。对于OptiStruct求解器模型,建议使用.fem扩展名。4.单击Save。inputfile字段显示在SaveAs对话框中指定的文件名和位置。5.将导出选项切换设置为all。6.将runoptions切换设置为analysis。7.将内存选项切换设置为memorydefault。8.单击OptiStruct启动OptiStruct作业。如果作业成功,则新的结果文件应位于写入cantilever_dmig.fem的目录中。cantilever_dmig.out文件是查找错误消息的好地方,如果存在任何错误,这些错误消息可以帮助调试输入模型。写入目录的默认文件为:cantilever_dmig.out:OptiStruct输出文件,包含有关文件设置的特定信息、优化问题的设置、运行所需的RAM和磁盘空间量的估计值、每次优化迭代的信息以及计算时间信息。查看此文件是否有警告和错误。cantilever_dmig.stat:分析过程摘要,提供分析过程中每个步骤的CPU信息。cantilever_dmig_AX.pch:缩减矩阵(DMIG)文件。矩阵以与DMIG批量数据输入相同的格式写入.pch文件。它们由单个标题条目和一个或多个列条目定义。默认情况下,刚度矩阵的名称为KAAX,质量为MAAX,载荷为PAX。由于本教程中未使用质量矩阵,因此不会将其写入.pch文件。I/O选项条目DMIGNAME提供对矩阵名称的控制。六、清除数据库在菜单栏中,单击File>New。现有HyperMesh数据库将被清除。七、在模型中引用超单元7.1打开模型1.单击File>Open>Model。2.选择保存到工作目录的cantilever_full.hm文件。3.单击Open。cantilever_full.hm数据库将加载到当前HyperMesh会话中,替换任何现有数据。7.2删除SuperelementReduced部分DMIGout由于超单元部分的矩阵将被DMIG替换,因此应删除节点和单元的批量数据条目,以及超单元中的所有荷载和边界条件。1.按F2打开Delete面板。2.将实体选择器设置为elems,然后单击elems>bywindow。3.在图7中指示的Element周围绘制一个窗口。图7.4.单击deleteentity。5.单击return转到主菜单。7.3使用DMIG设置拓扑优化1.在Analysis页面上,单击controlcards面板。2.定义INCLUDE_BULK控制卡。a)在CardImage对话框中,单击INCLUDE_BULK。b)在Include字段中,输入文件名cantilever_dmig_AX.pch。简化矩阵(DMIG)将包含在OptiStruct求解器模型中。这里假设您假设拓扑优化将在与cantilever_dmig_AX.pch文件相同的文件夹中运行。如果您计划在其他文件夹中运行它,请定义此文件的完整路径。c)单击return退出INCLUDE_BULK控制卡。3.定义K2GG控制卡。a)单击K2GG。b)在K2GG=字段中,输入KAAX。这指定了必须使用名为KAAX的折减刚度矩阵(存储在cantilever_dmig_AX.pch文件中)。c)单击return退出K2GG控制卡。4.定义P2G控制卡。a)单击P2G。b)在P2G=字段中,输入PAX。c)点击return退出P2G控制卡。5.单击return转到主菜单。八、设置优化8.1创建TopologyDesignvariables1.在Analysis页面中,单击optimization。2.单击topology。3.选择create子面板。4.在desvar=字段中,输入topo。5.将type:设置为PSHELL。6.使用props选择器,选择design。7.单击create。8.更新设计变量的参数。a)选择parameters子面板。b)将minmemb关闭为mindim=,然后输入1.2。c)单击update。9.单击return。8.2创建优化响应1.在Analysis页面中,单击optimization。2.单击Responses。3.创建体积分数响应。a)在responses=字段中,输入Volfrac。b)在响应类型下方,选择volumefrac。c)将区域选择设置为total和noregionid。d)单击create。4.创建柔度响应。1)在response=字段中,输入Compl。2)在响应类型下方,选择compliance。3)将区域选择设置为total和noregionid。4)单击create。5.单击return返回Optimization面板。8.3创建设计约束1.单击dconstraints面板。2.在constraint=字段中,输入VFrac。3.单击response=并选择Volfrac。4.选中upperbound旁边的框,然后输入0.4。5.单击create。6.单击return返回Optimization面板。8.4定义目标函数1.单击objective面板。2.验证是否选择了min。3.单击response=并选择Compl。4.使用loadsteps选择器,选择step。5.单击create。6.单击return两次以退出Optimization面板。九、保存数据库1.在菜单栏中,单击File>SaveAs>Model。2.在SaveAs对话框中,输入cantilever_opti.hm作为文件名,并将其保存到您的工作目录中。十、运行优化1.在Analysis页面中,单击OptiStruct。2.单击saveas。3.在SaveAs对话框中,指定写入OptiStruct模型文件的位置,并在文件名中输入cantilever_opti。对于OptiStruct求解器模型,建议使用.fem扩展名。4.单击Save。inputfile字段显示在SaveAs对话框中指定的文件名和位置。5.将导出选项切换设置为all。6.将runoptions切换设置为optimization。7.将内存选项切换设置为memorydefault。8.单击OptiStruct运行优化。作业完成时,窗口中会显示以下消息:OPTIMIZATIONHASCONVERGED.FEASIBLEDESIGN(ALLCONSTRAINTSSATISFIED).如果存在错误消息,OptiStruct还会报告错误消息。文件cantilever_opti.out可以在文本编辑器中打开,以查找有关任何错误的详细信息。此文件将写入与.fem文件相同的目录。9.单击Close。写入run目录的默认文件包括:cantilever_opti.hgdata:包含目标函数数据、百分比约束违例和每次迭代的约束的HyperGraph文件。cantilever_opti.HM.comp.tcl:HyperMesh命令文件,用于根据元件的密度结果值将元件组织成元件。此文件仅用于OptiStruct拓扑优化运行。cantilever_opti.HM.ent.tcl:HyperMesh命令文件,用于根据Element的密度结果值将Element组织成实体集。此文件仅用于OptiStruct拓扑优化运行。cantilever_opti.html:HTML报告,给出问题表述的摘要和最终迭代的结果。cantilever_opti.oss:OSSmooth文件,默认密度阈值为0.3。您可以编辑文件中的参数以获得所需的结果。cantilever_opti.out:OptiStruct输出文件,包含有关文件设置的特定信息、优化问题的设置、运行所需的RAM和磁盘空间量的估计值、所有优化迭代的信息以及计算时间信息。查看此文件,了解在处理cantilever_opti.fem文件时标记的警告和错误。cantilever_opti.res:HyperMesh二进制结果文件。cantilever_opti.sh:Shape文件进行最终迭代。它包含分析中每个单元的材料密度、空隙尺寸参数和空心方向角。此文件可用于重新启动运行。cantilever_opti.stat:包含有关用于完整运行的CPU时间的信息,以及用于读取输入模型、组装、分析、收敛等的CPU时间的分解。cantilever_opti_des.h3d:包含优化结果的HyperView二进制结果文件。cantilever_opti_s#.h3d:包含线性static分析的HyperView二进制文件,依此类推。十一、查看结果对于所有迭代,单元密度结果将从OptiStruct输出到cantilever_opti_des.h3d文件。此外,默认情况下,第一次和最后一次迭代的每个SUBCASE的位移和应力结果将输出到cantilever_opti_s#.h3d文件中,其中#指定SUBCASEID。11.1查看密度结果的云图1.在OptiStruct面板中,单击HyperView。2.在Results工具栏中,单击以打开Contour面板。3.将Resulttype设置为ElementDensities[s]和Density。4.将Averagingmethod设置为Simple。5.单击Apply以显示密度云图。6.在Animation工具栏上,单击以从Simulation列表中选择最后一个迭代。生成的云图表示由施加的载荷和边界条件产生的单元密度字段。图8.11.2查看单元密度的ISO值图等值图解提供有关单元密度的信息。Iso值保留等于和高于特定密度阈值的所有Element。对于具有实体设计区域的模型,此特征成为分析密度结果的重要工具。1.在Results工具栏中,单击以打开ISOValue面板。2.将Resulttype设置为ElementDensities。3.将Showvalues设置为Above。4.单击Apply。5.在Clippedgeometry下,选择Features和Transparent。6.更改密度阈值。a).在Currentvalue字段中,输入0.3。b).在Currentvalue下,移动滑块。当您更新密度阈值时,模型视窗中显示的Iso值会以交互方式更新。使用此工具可以更好地了解OptiStruct中的材料布局和载荷路径。图9.来源:TodayCAEer

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