0

我有一个 Simulink 模型,它必须执行以下操作: In1 输入将采用 3 个元素输入的向量(这将是随时间变化的(这就是我想到 FOR 循环的原因!)但出于初始开发/测试目的,我有使用了一个常数 [1 3 6]),In2 是一个 6x3 大小的常数矩阵,其值为 X =

 1     4     6
 1     4     5
 1     3     6
 0     0     0
 2     3     5
 3     5     7

Simulink 模型应输出 X 中 [1 3 6] 的对应索引(基于 1 的索引)(应为 3)。当我模拟这个模型时,我能够在 FOR 循环内的每个循环(10 ms 循环)上看到值“3”。但是当我看到输出(在 FOR 子系统之外)时,它总是显示“0”并且从不等于“3”。我无法理解这种行为。请帮忙!

4

1 回答 1

1

for 循环不会以与 Simulink 模型相同的采样时间进行迭代。所有迭代都发生在单个采样时间内。我认为这就是为什么你总是得到“3”的原因,因为它是 for 循环最后一次迭代的结果。也许您可以使用选择器块来做您需要的事情。

于 2013-07-08T16:17:47.427 回答