消除Simulink模型中的延迟

时间:2013-03-28 16:15:29

标签: matlab delay simulink

我正在Simulink开发建筑,恒温器和空调的模型。由于3个时间步信号延迟,我的模型过度预测冷却和加热。

控制基于输入温度。当房间温度高于27.2℃时,恒温器信号切换到“ON”。此信号打开空调,然后应从房间中移除热量。在布局图中,恒温器模型和性能图模型都是“屏蔽”功能。

 1. Time  Temp [C]  CoolOnTemp CoolOffTemp CoolSignal Qsensible
 2. 8.43     27.11      26.2      27.2        0          0
 3. 8.45     27.201     26.2      27.2        0          0
 4. 8.47     27.29       26.2     27.2        1          0
 5. 8.48      27.38      26.2      27.2       1         -47121
 6. 8.50      26.59      26.2     27.2       1          -47160     
 7. 8.52      25.87      26.2     27.2       1          -46499
 8. 8.53      25.21      26.2     27.2       0           -45408
 9. 8.55      24.63      26.2     27.2       0           0
 10. 8.57     24.93      26.2     27.2       0           0
 11. 8.58     25.22      26.2     27.2       0           0

在时间8.45,Core 1 temp大于27.2(其实际值为27.201),但是来自恒温器的冷却信号在下一个时间步之前不会变为“1”。在冷却信号和提供冷却的空调(Qsensible柱)之间发生第二次延迟。在由空调器传递的冷却和在房间中响应的温度之间发生第三时间步延迟。因此,在“越界”温度条件和期望响应之间发生3个时间步长的总延迟。

从8.52时开始,当空调关闭时会出现同样的延迟。

恒温器和空调之间没有使用有目的的延迟块。虽然两个块都是Sfunctions,但恒温器模型有状态变量(参考前一个时间步长值),但空调没有。

我感谢您就如何消除其中2项延误提出的任何建议。

0 个答案:

没有答案