主要内容

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

您可能有一组需求,其中模型的结构保持不变,但是每个需求的参数值是不同的。在此场景中,您可以创建具有固定结构的单个模型,并使用有限的值集创建参数,其中每个值对应不同的需求。有多个值的参数被调用变异参数.可变参数可以在MATLAB中定义®基本工作区或数据字典。

变量参数的每个值必须与变量条件表达式相关联。如果没有两个值属于同一个参数,则可以有多个变量参数与一个变量条件相关联。当条件表达式求值为时真正的时,所有与该条件相关的值都变成活动的,并分配给相应的参数。如果更改变量控制变量的值,则会为参数分配一组不同的值。通过这种方式,可变参数允许您在逻辑上将跨不同参数的一组值绑定到条件表达式,并且根据计算为的可变条件将值分配给参数真正的

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

考虑这个模型。的获得参数。获得Block是一个变量参数,其值设置为K.的变量K有两个值:3.5而且8.5.金宝appSimulink选择的活动值K根据变量的值控制变量V.如果V = = 1计算结果为真正的的值。K设置为3.5.如果V = = 2计算结果为真正的的值。K设置为8.5

增益块中有多个值的变量参数。每个值都与一个可变的条件表达式相关联。

何时创建可变参数

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

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

一个如何在模型中使用不同参数来表示具有多种配置的汽车系统的示例

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

使用可变参数的优点

在基于模型的设计中使用可变参数有几个优点:

  • 可变参数为您提供了一种为多个系统设计一个模型的方法。

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

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

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

使用可变参数的局限性

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

  • 确定变量参数的活动值的变量控制变量的值必须为数值、枚举值或金宝app仿真软件。参数对象。

  • 只有变量参数的值会根据计算为的变量条件而改变真正的.其他属性,如存储类、数据类型等,与变化的条件无关,保持不变。

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

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

另请参阅

|(嵌入式编码)

相关的话题