【问题标题】:For Iterator Subsystem Running Twice as Many Iterations?对于运行两倍多的迭代的迭代器子系统?
【发布时间】:2014-03-08 21:41:15
【问题描述】:

我遇到了 for 迭代器子系统的问题,它运行的迭代次数似乎是它应该运行的两倍。下面是我一直在试验的系统的图片。

在这种情况下,for 迭代器子系统应该只运行五次,对吗?正如我的计数器显示的那样,它似乎运行了十次。当我将信号的宽度更改为 For Iterator 块时,计数器将显示两倍的数字(例如,如果我输入 ones(2, 1),计数器将显示 4)。单位延迟块的初始条件为0

我对 For Iterator 子系统有什么不了解的地方?为什么每次迭代似乎都运行两次?

【问题讨论】:

    标签: matlab for-loop iteration simulink


    【解决方案1】:

    您似乎将“启动时的状态”属性设置为“保持”,并且模拟运行了 2 个时间步长。在第一个仿真时间步,计数器从 0 计数到 N,然后在第二个时间步,它从 N 计数到 2*N。

    将“启动时的状态”属性更改为“重置”,您会看到预期的结果。

    【讨论】:

    • 啊,就是这样!谢谢!我不知道它可以选择在时间步之间保存状态信息(并且默认为该行为)。再次感谢!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-08-07
    • 1970-01-01
    • 2012-12-02
    • 1970-01-01
    • 2023-04-02
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多