通过编程方式配置特定于查找表的数据
当你使用万博1manbetxSimulink.LookupTable
对象存储和查找表配置数据ASAP2或AUTOSAR代码生成(例如,STD_AXIS或曲线),您可以配置对象作为模型参数。然后您可以指定独特的表数据和断点数据为每一个组件的实例。
这个例子展示了如何配置多个实例的引用模式使用不同的值相同的块参数利用查找表和命令提示符。
配置引用模型中模型参数
开放模式ex_arg_LUT_ref
代表一个可重用的算法。
open_system (“ex_arg_LUT_ref”)
创建一个万博1manbetxSimulink.LookupTable
对象的基本工作空间。对于这个示例,名字对象LUTArg
。
temp = 万博1manbetxSimulink.LookupTable;
指定的表和断点数据值。当你从模拟或直接生成代码ex_arg_LUT_ref
,该模型使用这些值。
temp.Table。值=[3 4; 1 2]; temp.Breakpoints(1).Value = [1 2]; temp.Breakpoints(2).Value = [3 4];
设置结构名称LUTArg_Type
。
temp.StructTypeInfo。Name =“LUTArg_Type”;
复制工作空间的结构模型。
mdlwks = get_param (“ex_arg_LUT_ref”,“ModelWorkspace”);assignin (mdlwks“LUTArg”,复制(临时))
指定LUTArg
作为一个模型的参数。
set_param (“ex_arg_LUT_ref”,“ParameterArgumentNames”,“LUTArg”)
一天的查找表块,集“数据规范”
来“查找表对象”
并设置名称LUTArg
。
set_param (“ex_arg_LUT_ref /一天的查找表”,…“DataSpecification”,“查找表对象”,“LookupTableObject”,“LUTArg”)
创建特定参数值
开放模式ex_arg_LUT
可重用算法,它使用两次。
open_system (“ex_arg_LUT”)
创建一个万博1manbetxSimulink.LookupTable
对象的基本工作空间。
LUTForInst1 = 万博1manbetxSimulink.LookupTable;
指定表和断点数据对象。
LUTForInst1.Table。值= [8 7;6 5];LUTForInst1.Breakpoints (1)。值= [5 - 6];LUTForInst1.Breakpoints (2)。值= (3 4);
指定结构名称匹配指定的名字对象的引用模型工作区。
LUTForInst1.StructTypeInfo。Name =“LUTArg_Type”;
使用一个结构来创建第二个模型的特定参数值。指定断点和表数据结构。
StructForInst2。表= [9 8;7 7];StructForInst2。BP1 = [3 - 4];StructForInst2。BP2 = [5 - 6];
在ex_arg_LUT
模型,模型实例模型
,设置的价值LUTArg
来LUTForInst1
。对模型实例Model1
,设置的价值LUTArg
来StructForInst2
。
instSpecParams = get_param (“ex_arg_LUT /模式”,“InstanceParameters”);instSpecParams (1)。值=“LUTForInst1”;instSpecParams1 = get_param (“ex_arg_LUT / Model1”,“InstanceParameters”);instSpecParams1 (1)。值=“StructForInst2”;set_param (“ex_arg_LUT /模式”,“InstanceParameters”,instSpecParams);set_param (“ex_arg_LUT / Model1”,“InstanceParameters”,instSpecParams1);
的一个实例ex_arg_LUT_ref
使用表格和数据存储在断点万博1manbetxSimulink.LookupTable
对象的基本工作空间和其他实例使用的表和断点数据存储结构。