如果Simulink中的语句与编程语言不同,它会累积最后一个真值,直到它再次出现。
从这里可以看出,当随机值低于0.5(如果是条件)时,输出dos不会给出零,正如人们通常期望的if语句。
使用if的正确方法是什么? (最好我不想放饱和度和matlab函数)
答案 0 :(得分:2)
Out
子系统中的If Action
块在禁用时具有hold
或reset
输出的属性。默认是保持;你想要它重置。您还需要指定0
作为初始条件,这是它重置的原因。
答案 1 :(得分:1)
到目前为止,我可以使用基本的matlab函数做到这一点;
function y = fcn(u)
if u>0
y = u;
else
y = 0;
end
end
但我想知道这将是一种使用if block的正确方法。
答案 2 :(得分:1)
将“操作子系统”中的“阻止”属性更改为“重置”,看起来它已被“保持”状态。在您当前的实施中