3

我的 Simulink 模型将包含(很多) n相同的子系统,每个子系统由大约 30 个不同的预定参数定义。目前,每次我复制一个子系统时,我都需要修改每个块的属性,因此大量工作容易出错。所以我的想法是将相应的参数存储在一个向量中,如下所示:

parametersA = (parameterA1 , parameterA2 , ... , parameterAn);
...
parametersZ = (parameterZ1 , parameterZ2 , ... , parameterZn);

然后,模块属性中的值将被定义parametersA(2)为子系统 #2 和parametersA(n)第 n 个子系统。KP或者想象每个子系统都包含一个 PID 控制器,并且需要定义比例增益。所以第一个子系统将调用KP(1)和 n-th KP(n)

因此我的基本问题是:如何n在每个子系统中声明我的索引变量,以便每个块都知道要调用参数向量的哪个元素?

另一个问题是:是否真的有必要复制我的子系统,或者一切都可以完成?这会影响模拟时间吗?

4

1 回答 1

3

您是否考虑过屏蔽子系统并仅使用屏蔽中的一个结构对其进行参数化(请参阅文档中的屏蔽)?然后,掩码下的所有块都将使用该结构的字段进行参数化。然后,您可以拥有一个结构元胞数组,用于参数化子系统的每个实例。事实上,掩码可能需要的唯一参数是元胞数组中的索引,该索引在基本工作区中定义。

于 2013-09-23T11:15:59.570 回答