这个例子展示了如何以编程方式配置一个被引用模型的多个实例,以便为同一个块参数使用不同的值。
当您模拟模型时,模型工作区中的参数对象使用您为金宝app仿真软件。参数
对象,金宝app仿真软件。LookupTable
或MATLAB®变量。block参数也使用这些值。
配置获得参数的增益块和分子参数作为模型参数,遵循以下步骤。
开放模式ex_model_arg_ref
.这个模型代表了一个可重用的算法。
open_system (“ex_model_arg_ref”)
对于“增益”块,设置获得参数一金宝app仿真软件。参数
对象,该对象在模型工作区中具有数值值。对于本例,将金宝app仿真软件。参数
对象gainArg
赋值3.17
.
set_param (“ex_model_arg_ref /增益”,“获得”,“gainArg”modelWorkspace = get_param()“ex_model_arg_ref”,“ModelWorkspace”);assignin (modelWorkspace“gainArg”,金宝app Simulink.Parameter (3.17));
对于“离散过滤器”块,设置分子参数一金宝app仿真软件。参数
对象,该对象在模型工作区中具有数值值。对于本例,将金宝app仿真软件。参数
对象coeffArg
赋值1.05
.
set_param (“ex_model_arg_ref /离散滤波器”,“分子”,“coeffArg”) assignin (modelWorkspace“coeffArg”,金宝app Simulink.Parameter (1.05));
指定gainArg
和coeffArg
作为模型参数。
set_param (“ex_model_arg_ref”,“ParameterArgumentNames”,“coeffArg, gainArg”)
当您模拟父模型时,可重用引用模型的每个实例都使用您在父模型中指定的参数值。在本例中,在ex_model_arg_ref
,参数对象gainArg
使用价值2.98
.
模型ex_model_arg
包含两个引用的Model块ex_model_arg_ref
.要为模型的两个实例设置不同的参数值,请执行以下步骤。
开放模式ex_model_arg
.此模型表示使用可重用算法的多个实例的系统模型。
open_system (“ex_model_arg”)
对于模型的两个实例ex_model_arg
,设置模型参数的值。如果您决定重新推广这些参数,请设置论点
字段真正的
.默认情况下,论点
字段是假
.
instSpecParams = get_param (“ex_model_arg /模式”,“InstanceParameters”);instSpecParams1 = get_param (“ex_model_arg / Model1”,“InstanceParameters”);instSpecParams(1)。值=“.98点”;instSpecParams(2)。值=“2.98”;instSpecParams1(1)。值=“1.11”;instSpecParams1(2)。值=“3.34”;instSpecParams(1)。参数= true;instSpecParams(2)。参数= true;instSpecParams1(1)。参数= true;instSpecParams1(2)。参数= true;set_param (“ex_model_arg /模式”,“InstanceParameters”, instSpecParams);set_param (“ex_model_arg / Model1”,“InstanceParameters”, instSpecParams1);