独立于仿真时间多次重启或复位输入信号

时间:2013-12-05 17:08:27

标签: matlab simulink

我使用Simulink中的Signal Builder块设计了一个信号。在模拟运行期间,信号构建器将根据条件的满足情况重新启动。条件可以满足多次,因此,信号应该从每次开始。如果我想用另一种方式:它可以采用步进输入而不是设计信号。步进输入有条件地重置。我该怎么做?

2 个答案:

答案 0 :(得分:1)

我还没有看到内置Simulink这样的功能(也许新版本有它?)但这里有一个解决方法:

您可以使用设置为Constant block的积分器作为输入来模拟传递时间。关键是积分器块有一个复位端口,您可以连接到您的条件。因此,当条件成立时,积分器会从0(在初始条件中设置)重新启动时间变量。事先,您需要将信号保存在类似Table Lookup块的信号中,该信号输出信号作为时间的函数。然后将积分器输出连接到Table Lookup块。

答案 1 :(得分:0)

您是否尝试将信号生成器模块放在enabled subsystem中?您可能需要将states when enabling设置为reset才能生效。有关更多详细信息,请查看文档中的Create an Enabled Subsystem