主要内容

创建一个简单的变异参数模型

这个例子展示了如何创建一个简单的模型参数与变体。

变异参数提供一种方式来设计一个模型对于许多系统,不同的价值观。可以组织不同的值根据系统模拟。每组与变异条件表达式的值。在仿真过程中,如果变异条件的求值结果为true,所有与此相关的值条件变得活跃。使用变量参数开关在不同的块为多个模拟参数值,代码生成,或测试工作流。

考虑这个模型。

open_system (“slexVariantParameters”)

指定获得Gain1和Gain2块的参数变异参数:

1。定义一个万博1manbetxSimulink.VariantControl对象V在基础模型的工作区。变异控制变量对象决定的活跃值变异参数获得Gain1和Gain2块。对象也将价值与变体激活时间。激活时间的更多信息,请参阅激活变体在不同阶段的模拟和代码生成工作流

V = 万博1manbetxSimulink.VariantControl (“价值”,1“ActivationTime”,“更新图”)

V = VariantControl属性:值:1 ActivationTime:“更新图”

2。创建万博1manbetxSimulink.VariantVariable对象来定义多个值获得参数的获得块,并将每个值与变异条件表达式。您可以指定属性,如尺寸,为每个对象数据类型,等等。在这个例子中,K1K2变异参数的对象吗万博1manbetxSimulink.Parameter类型。K1指定多个值获得Gain1块的参数K2指定多个值获得Gain2块的参数。在模拟,当一个条件评估真正的,所有与此相关的值条件变得活跃。活动被分配到相应的值获得参数。

Pspec = 万博1manbetxSimulink.Parameter (0);Pspec.CoderInfo。StorageClass =“ExportedGlobal”;K1 = 万博1manbetxSimulink.VariantVariable (“规范”,“Pspec”,“选择”,{“V = = 1”,3.5,“V = = 2”,8.5});K2 = 万博1manbetxSimulink.VariantVariable (“规范”,“Pspec”,“选择”,{“V = = 1”,4.5,“V = = 2”,9.5});

一旦你成功地创建万博1manbetxSimulink.VariantVariable对象,可以用描述的方法修改它们公共方法或VariantVariable对话框。

3所示。打开块增益模块的参数对话框。指定获得Gain1的参数K1获得Gain2的参数K2

4所示。模拟模型,在模拟选项卡上,单击运行。在模拟中,V = = 1计算结果为真正的,的值获得Gain1块的参数设置3.5和的值获得Gain2块设置为参数8.5

sim卡(“slexVariantParameters”);

5。改变的价值获得参数设置的值V2并再次运行仿真。你可以改变的价值V通过执行这些步骤:

  • 双击工作区中创建的变量控制变量基地。在VariantControl对话框中,指定的值V作为2

  • 在MATLAB®编辑器中,执行以下命令:

V。Value = 2;

在模拟中,V = = 2计算结果为真正的,的值获得Gain1块的参数设置4.5和的值获得Gain2块的参数设置9.5

sim卡(“slexVariantParameters”);