用于Simulink中的迭代器块

时间:2013-07-05 21:30:09

标签: for-loop iterator simulink

我有一个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毫秒循环)中看到值'3'。但是当我看到输出(在FOR子系统之外)时,它总是显示“0”并且永远不会等于“3”。我无法理解这种行为。 请帮忙!

1 个答案:

答案 0 :(得分:1)

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