此示例显示如何使用优化设计以满足自定义目标响应优化器应用程序。优化圆柱体参数以最小化圆柱体几何图形并满足设计要求。
液压缸模型基于Simulink®模型万博1manbetxsldemo_hydcyl
。该模式包括:
抽水机
和气缸总成
子系统。有关子系统的更多信息,请参阅单液压缸仿真.
施加在油缸控制阀节流孔区域的阶跃变化,导致油缸活塞位置发生变化。
调整气缸横截面积和活塞弹簧常数以满足以下设计要求:
确保活塞位置的阶跃响应上升时间小于0.04秒,设定时间小于0.05秒。
将最大气缸压力限制为1.75e6 N/m。
将气缸横截面积减至最小。
打开响应优化器使用以下命令以交互方式配置和运行设计优化问题。
SDO醇(“SDO液压缸”)
指定以下模型参数作为优化的设计变量:
圆柱体横截面积交流电
活塞弹簧常数K
在设计变量集下拉列表中,选择刚出现的。将打开一个对话框,用于选择用于优化的模型参数。
选择交流电
和K
点击⇦ 将选定参数添加到设计变量集中。
将气缸横截面积限制为半径在1到2厘米之间的圆形区域,并将活塞弹簧常数限制在1e4到10e4 N/m的范围内。为此,请在列表中指定相应变量的最大值和最小值最大限度和最低限度柱。
因为变量值是不同数量级的,所以交流电
由1e-3和K
到1e5。
按进来在指定值之后。
点击好啊.一个新变量设计师
出现在响应优化器浏览器
设计要求需要记录模型信号。在优化过程中,使用设计变量的当前值模拟模型,并使用记录的信号评估设计要求。
记录气缸压力,这是发动机的第一个输出端口气缸总成
块
在刚出现的下拉列表中,选择信号。将打开一个对话框,用于选择要记录的模型信号。
进来压力
作为中的信号名称信号装置然后,在Simulink模型中,单击万博1manbetx气缸总成
名为压力
. 该对话框将更新以显示选定的信号。
在对话框中选择信号并单击⇨ 将其添加到信号集。
点击好啊.一个新变量压力出现在响应优化器浏览器
同样,记录活塞位置,这是发动机的第二个输出气缸总成
块,在名为活塞位置
.
指定小于1.75e6 N/m的最大气缸压力要求。
在刚出现的下拉列表中,选择信号界。将打开一个对话框,用于创建信号绑定需求。
指定需求名称像最大压力
.在开头和结尾振幅列,输入最大压力要求1.75e6 N/m,并设置边缘结束时间以0.1秒的速度运行选择要绑定的信号区域,选择压力
,该要求适用的信号。
点击好啊.
一个新的最大压力
变量出现在响应优化器浏览器
将自动创建最大压力要求的图形视图。
规定上升时间小于0.04秒和稳定时间小于0.05秒的活塞位置阶跃响应要求。
在刚出现的列表的下拉列表响应优化选项卡,选择阶跃响应包络。将打开一个对话框以创建步骤响应要求。
指定一个名为皮斯顿反应
,以及所需的上升和稳定时间界限。选择活塞位置
作为应用阶跃响应要求的信号。
点击好啊.
自定义目标是最小化圆柱体横截面积。
在刚出现的下拉列表中,选择自定义要求。将打开一个对话框以创建自定义需求。
在中指定优化期间要调用的函数需求函数在每次优化迭代中,软件调用函数并传递当前设计变量值。您还可以选择将记录的信号传递给自定义需求。此处,您使用SDO液压缸
作为自定义需求函数,返回圆柱体横截面积的值。
在需求类型下拉列表,指定需求是否是最小化的目标(闵
),一个不等式约束(<=
),或相等约束(==
).
类型SDO液压缸
功能目标=液压缸\用户目标(数据)%SDOHYDRAULICCYLINDER|u CUSTOMOBJECTIVE%%SDOHYDRAULICCYLINDER|u CUSTOMOBJECTIVE函数用于定义可在图形SDTOOL环境中使用的%自定义要求。%%|数据|输入参数是一种结构,其中包含由优化器选择的%设计变量值。%%|目标|返回参数是要通过%SDOTOOL优化解算器最小化的目标值。%%版权所有2011 MathWorks,Inc.%对于圆柱体设计问题,我们希望最小化圆柱体%横截面积,因此将圆柱体横截面积作为%目标值返回。Ac=data.DesignVars(1);objective=Ac.value;end
点击绘图模型响应模拟模型并检查初始设计满足设计需求的程度。要同时显示两个需求图,请使用看法标签。
从图中可以看出,已满足最大压力要求,但未满足活塞位置阶跃响应要求。
创建一个曲线图,以显示在优化过程中如何修改气缸横截面积和活塞弹簧常数。
在要绘图的数据下拉列表中,选择设计师,其中包含优化设计变量交流电
和K
.在添加绘图下拉列表中,创建新的迭代图以显示设计变量轨迹。对于此新图,单击显示缩放值在迭代图选项卡,以便于查看同一轴上的两条轨迹。
点击优化在响应优化标签。
“优化进度”窗口在每次迭代时更新,并显示优化在4次迭代后收敛。
这个压力
和活塞位置
曲线图表明满足设计要求极小值
该图显示了圆柱体的横截面积交流电
最小化。
要查看优化的设计变量值,请单击响应优化器浏览器设计变量的优化值在Simulink模型中自动更新。万博1manbetx
了解如何使用优化
命令,请参见满足定制目标的设计优化(代码).