我有一个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”。我无法理解这种行为。 请帮忙!
答案 0 :(得分:1)
for循环不会以与Simulink模型相同的采样时间进行迭代。所有迭代都在单个采样时间内发生。我认为这就是为什么你总是得到'3',因为它是for循环最后一次迭代的结果。也许你可以使用选择器块来做你需要的事情。