如何在使用rem块的Simulink中进行定时而不在t = 0时得到0?

时间:2016-10-25 22:17:12

标签: matlab simulink

我试图让每增加一秒的增益。到目前为止,这是我的解决方案:

simulink diagram

我使用一个初始值块和一个开关,每次激活开关时它都会减少。为了使它每隔x秒切换一次,我使用rem函数,模拟时间是我的第x秒。

每次rem功能输出为零时,开关都会触发,一切都很顺利。问题是在t = 0,因为然后rem函数返回0并触发开关。当我尝试在Time和Rate Transmition3块之间引入延迟块时,这会成为一个更大的问题,因为那时延迟时间的输出为0并且保持触发我的开关。

任何想法如何解决这个问题?也许使用不同的触发开关的方法?

1 个答案:

答案 0 :(得分:0)

如果t>0,您可以将REM和Switch置于启用的子系统中,并启用条件。此外,应更改子系统的外部,以便在系统中提供中性的初始输出。

如果有帮助,请告诉我们。祝你好运