主要内容

使用变量参数重用具有不同值的块参数

您可能有一组需求,其中每个需求所要求的功能是相同的,但是每个需求的参数值是不同的。在这个场景中,您可以创建提供所需功能的单个模型,并使用有限的一组值创建参数,其中每个值对应于不同的需求。调用具有多个值的参数变异参数.可以在MATLAB中定义变体参数®基本工作区或数据字典。

变体参数的每个值必须与变体条件表达式关联。您可以具有与变体条件相关联的多个变体参数,不提供两个值属于同一参数。当条件表达式评估到真的,与该条件相关联的所有值都变为活动状态,并分配给相应的参数。如果更改变量控制变量的值,则将不同的值集分配给参数。这样,变体参数允许您在不同参数上逻辑绑定到条件表达式的一组值,并且将根据评估的变体条件分配给参数的值真的

金宝app®在更新图中选择变体参数的活动值,在代码编译时或在模型启动时间期间。有关更多信息,请参阅在模拟和代码生成工作流的不同阶段激活变体

考虑这个模型。的获得参数的获得块是一个变体参数,其值设置为K.的变量K有两个值:3.58.5.金宝appSimulink选择了活动价值K根据值的变化控制变量V.如果V = = 1评估真的,的价值K设定为3.5.如果V = = 2评估真的,的价值K设定为8.5

增益块中的变量参数

何时创建变量参数

可变参数提供了一种方法,可以为块参数值不同的多个系统设计一个模型。您可以根据要模拟的系统对不同的值集进行分组。每一组值都与一个不同的条件表达式相关联。在模拟过程中,如果一个变量条件的值为真的,那么与该条件相关联的所有值都变为活动状态。要更改活动值集,请更改变量控制变量的值并再次运行模拟。

考虑这个模型,它代表一个具有多种配置的汽车系统。这些配置虽然在某些方面是相似的,但在油耗、发动机大小或发动机中汽缸数量等方面可能有所不同。您可以使用变量参数来建模变化的值,而不是设计多个块一起表示所有可能的值。

汽车领域的变量参数

在该模型中,油耗、发动机尺寸和缸数具有不同的参数足球俱乐部西文, 和NC..可变参数的值是基于可变控制变量的值V.例如,如果V = = 1评估真的,则值足球俱乐部设定为30.西文设定为1000, 和NC.设定为4

使用变体参数的优点

在基于模型的设计中使用可变参数提供了几个优势:

  • 变体参数为您提供一种为许多系统设计一个型号的方法。

  • 变量参数有助于块的重用。这种方法通过降低复杂性来提高工作流的速度。

  • 变量参数帮助您在多个模拟、代码生成或测试工作流的不同块参数值之间切换。

  • 您不需要为变量参数的不同值重新生成代码,因为生成的代码对参数的每个变量值都有预处理条件。

使用变量参数的局限性

在基于模型的设计中使用变量参数也有局限性:

  • 确定变体参数的活动值的变体控制变量的值必须是数值,枚举值或simulink.parameter对象。金宝app

  • 只有基于评估到的变体条件的变体参数的值真的.其他属性,如存储类、数据类型等等,与不同的条件无关,保持不变。

  • 变量参数只能在基本工作空间或数据字典中定义。

  • 变量参数不支持为AUTOSAR目标生成代码。金宝app

另请参阅

|(嵌入式编码)

相关话题