前言:或许你听过Hypermesh的拓扑优化、形貌优化、尺寸优化;知道Matlab的优化类算法;Ansys的优化模块;Abaqus也有自己的优化模块Optimization,同样也可以进行拓扑优化、形状优化、尺寸优化和条纹优化。优化是一个迭代过程,它修改模型的结构,同时搜索满足目标和约束的优化解决方案。以上有限元软件的优化分析方法,是基于模型本身结构进行优化设计,那对于多体动力学软件Adams,是否有关于运动学的仿真优化方法呢?对于一款强大的、成熟的仿真软件,肯定也同样具备优化模块,而Adams的优化模块则是Adams/Insight。
为了对Adams/Insight优化模块进行切身体会,我们先来做个小例子,带着实例的疑惑,一起来揭开Adams/Insight的神秘面纱。另外,在熟悉Insight的基本使用规则后,文章最后会通过汽车悬架模型优化,进一步让读者体会Insight模块的技巧。
机械原理课本上经常有关于计算合适杆长的题目,那么用软件该如何求解呢?一起来看看下面这道题。
如下图所示的铰链四连杆机构中,已知LBC=50mm,LCD=35mm,LAD=30mm,AD为机架,杆CD为驱动杆并施加逆时针驱动。若使∠BCD的展开角度最大且该机构为双摇杆机构,求杆AB的长度。
解:通过杆长条件可得:最长杆+最短杆>剩下两杆之和
①若LAB为最短杆,LAB>15mm
②若LAB介于最短杆和最长杆之间,LAB<45mm
③若LAB为最长杆,LAB>55mm
④由结构的尺寸限制有:LAB<115mm
最终可得:AB的杆长范围在15mm<LAB<45mm,55mm<LAB<115mm。仿真过程选择15mm<LAB<45mm作为AB杆的限制条件,优化目标是∠BCD的值为最大。
1、模型建模
根据以上问题描述进行Adams模型建模,并根据要求添加旋转副、运动驱动。
说明:本次主要通过参数化点坐标的方式进行介绍。点坐标用于确定几何形状、约束点位置和驱动的位置等。点坐标参数化后,修改点坐标值,与参数化点相关联的对象得到自动修改。故需要将几何点坐标与Point点进行关联,使用坐标函数:
(LOC_RELATIVE_TO({0, 0, 0}, POINT_B))
2、创建测量✔👀
根据题目要求,需要将∠BCD的展开角度优化到最大,故需要创建一个角度测量,测量B、C、D间的角度。
3、创建目标响应✔👀
如图所示,创建一个设计目标响应,要求优化目标为角度最小值,意味着在整个仿真过程中,将∠BCD的角度最小值进行增大。
4、优化因素✔👀
明确本次的优化因素即优化部分为B点的坐标值,也就是AB杆的长度。
5、打开Adams/Insight优化模块
1) 设计因素Factors设置:在模型树中点击Factors-Candidates-four_bar_linkage-Ground-Point_B,其中展示了Point_B的X,Y,Z坐标修改,在这里可以进行B点坐标的优化范围取值,也就是规定B点坐标可以优化的范围。在本次实验中,需设置B点的X、Y向坐标值,根据实际需求设置即可。
2) 创建设计因素工作台:在工具栏中点击向上的按键,将设计因素创建为工作台。
3) 响应Responses设置:在模型树中点击Responses-Candidates-four_bar_linkage-OBJECTIVE_1,选择优化目标,在优化方法中选择最大值优化方案,即,寻找角度展开到最大值的方案。
4)创建响应工作台:在工具栏中点击向上的按键,将响应创建为工作台。
5)创建设计参数:在工具栏中点击创建设计方案
6)创建工作台:在工具栏中点击创建工作台的按钮
7)提交计算
8)结果查看:在Adams/View工作界面打开Insight计算后处理界面,点击优化方案查看,可以看到不同变量条件下的角度变化值。
实例做完了,其实进行优化设计并不复杂,只要搞清楚不同设置所代表的的含义以及明确目标与约束条件。接下来将对Adams/Insight进行介绍并对不同参数含义进行详解。
Adams的优化设计模块是Adams/Insight,该模块可以进行单目标优化,也可以进行多目标优化,是强大的实验设计(design-of-experiments:DOE)模块。Adams/Insight模块可以和Adams的其它多种模块进行结合(如Adams/Car,Adams/Chassis,Adams/View),不仅可以帮助用户系统的规划数据,以确定各种因素对系统动态、力学行为或响应的精确影响,还可以自动化设计实验流程的各个环节,从设定的实验场景中生成预期结果。
通过该模块,可以精确地控制实验设置,确保结果的可靠性并得出具有价值的工程见解。
DOE分析包含五个基本步骤
1、确定实验目标。比如你可以选出对系统结果影响最大的变量,比如上述∠BCD的角度值。
2、选择你想研究的影响因素,比如B点的坐标位置。
3、定义每个影响因素的限制条件,并搭建实验平台,比如B点坐标的选取范围。
4、运行实验。
5、分析实验结果并找到系统最大影响因素。
在Adams/Insight中,设计实验的主要目标是通过系统性的控制变量来评估模型的性能并优化,一个完整的优化实验应该包括以下三个部分:
1、完整的多体动力学模型(Multi-dynamic simulation);
2、设计因素(Factors)作为实验输入,
设计因素(Factor)是你实验中想要改变的变量,在实际中,它是系统的输入,比如几何点的坐标,用户自定义参数或设计变量。
3、响应(Responses)作为实验的优化结果参考。
接下来将介绍具体的参数设置:
设计因素(Factor)界面各参数含义
🎉基础设置栏—Settings Tab🎉
🍗Abbreviation:设计因素变量名称,若设计因素较多,为了后处理时方便结果查看,可以修改成具有明显特征的名称。
🍗Nominal Value:输入设计因素的中心点值,默认条件下为模型实际数值。模型的输入及优化将会基于该中心点值进行,也就是说所有的数值变化都将围绕这个固定的参考点进行计算。
🍗Settings:输入设计变化区间值
🍗Tolerance:容差,可以输入一个容差值,使优化过程更加精确平衡,可以在后处理中进行容差结果查看,默认数值是0。
🍗Type-Continuous:设计因素值是一个区间的连续变化值
🍗Type-Discrete:设计因素的取值是离散的点值
🍗Delta Type:确定设计因素的取值方法,Absolute定义设计因素的取值范围是Settings输入的值,如Settings输入100,200,则设计因素的取值是100~Nominal value~200;Relative定义设计因素的增减范围,如Setting输入-0.2,0.2,则设计因素的取值范围是Nominal value-0.2~Nominal value+0.2;Relative Percent用百分比来确定设计因素取值范围,Nominal value+((setting/100)*Nominal value)。
🍗Ease of Adjustment:分为Easy简单,Moderate中等,Hard模式,用来决定复杂设计因素的求解顺序,默认使用Moderate。
🎉变量设置栏—Variation Tab🎉
🍗Distribution—None:设计因素取值不进行变量分布设置,仅依靠于设置的容差进行
🍗Distribution—Normal:对设计因素取值时,通过高斯分布的方法取值。
🍗Distribution—Lognormal:对设计因素取值时,通过对数计算的方法取值。
🍗Distribution—Weibull:对设计因素取值时,通过威布尔分布的方法取值。
🍗Distribution—Uniform:对设计因素取值时,通过均匀分布的方法取值。
🍗Distribution—Discrete:对设计因素取值时,通过离散分布的方法取值。
🍗Distribution—User:用户自定义取值分散方法。
🍗Standard Deviation:标准差,用于高斯分布Normal、对数分布Lognormal、威布尔Weibull离散分布。
🍗Shape:对数分布Lognormal或者威布尔分布Weibull的均方根值。
🍗Cutoff Limits:输入均匀分布Uniform的最大最小值
🍗Distribution Profile:显示所选分布规则的图像
🍗Variation Details:显示离散规则的详细信息,包括最大最小值和中间值。
响应(Response)界面各参数含义
🎉响应描述栏—Description Tab🎉
🍗Description:增加一个关于响应的描述,便于后处理中查看
🍗URL(Universal Resource Locator):增加一个网页链接,用于后处理中快速对响应进行网页说明。
🍗Variable和Output Char跟随Adams模型设置
🍗Units:单位制
🎉优化设置栏—Optimization Tab🎉
🍗Operation:选择响应的优化方法
🍗Oper-Ignore:忽视响应计算结果
🍗Oper-Min:最小化响应
🍗Oper-Max:最大化响应
🍗Oper-Min to:如果计算响应大于目标值,则使响应减小,若计算响应小于目标值,则忽视该计算结果
🍗Oper-Max to:如果计算响应小于目标值,则使响应增大,若计算响应大于目标值,则忽视该计算结果
🍗Oper-Frc to:将计算响应卡在目标区间内
🍗Oper-GrEq:使计算响应大于等于目标值
🍗Oper-LsEq:使计算响应小于等于目标值
🍗Oper-Equal:使计算响应等于目标值
🍗Weight:响应的权重因子
1、模型说明
在该模型中,模拟了悬架系统在受到冲击作用并回弹的过程中,轮胎的外倾角及内倾角的角度变化情况。本次优化分析中,主要改变了轮胎外侧拉杆的位置,进而观察对轮胎内外倾角的影响。
2、模型建模
根据模型的实际情况进行建模,按照以往的建模方式,添加运动副、约束、测量等。
3、优化设计
1)轮胎左侧外拉杆位置优化🍉
在Factors中,将hpl_tierod_out的点坐标设置为设计因素,hpl_tierod_out.x,hpl_tierod_out.y,hpl_tierod_out.z,也就是左轮胎外侧拉杆的坐标点。将坐标点的取值范围设置成±5mm,Settings设置成-5,5。将三个点坐标设置完毕后移动到工作台。
2)添加响应🍉
在模型建模时,首先创建轮胎倾角测量,如下图所示。随后在Adams/Insight中的Responses中,选择两侧轮胎的倾角测量,toe_left_REQ和toe_right_REQ。该倾角测量优化目标是倾角在整个仿真过程中的平均值最小。
3)建立优化工作台🍉
在工具栏中,依次点击Set design specification和Generate Work Space。
4) 提交计算并查看结果🍉
总结:本文主要介绍了Adams/Insight模块,通过四连杆机构简单说明了Adams优化模块的用法,随后对Adams/Insight模块操作步骤及关键参数进行详细介绍,方便读者根据自己的需求进行修改,文章最后讲解了汽车悬架的轮胎外拉杆位置优化,通过优化计算,找到倾角最小值。相信通过文章介绍,Adams/Insight模块已经不再神秘了,快来试一试吧。