首页/文章/ 详情

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

1年前浏览3436
支架的一阶模态频率是指支架在自由振动条件下的最低固有频率,这个频率是支架结构的动力特性之一,不受外力载荷的影响。提升支架的一阶模态频率对于确保结构的稳定性和可靠性至关重要,原因如下:
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)将边界跳转到load和spc。
这会告诉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
最近编辑:1年前
TodayCAEer
本科 签名征集中
获赞 87粉丝 196文章 779课程 2
点赞
收藏
作者推荐

使用超单元进行拓扑优化-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
联系我们
帮助与反馈