Simulink 定期调用块

Simulink call block periodically

我试图每 30 秒调用一次 Simulink 块,但我做不到。 我正在使用来自 matlab sscfluids_house_heating_system 的演示,我需要在我的 MATLAB 功能块中每 30 秒处理一次温度。但只有每 30 秒一次。

我尝试为 运行 创建简单代码,该代码仅每 30 秒阻塞一次(目前它仅在 30 秒后调用)但它仅在 matlab 中有效,在 MATLAB 函数块中无效

 if(exist('isRunning','var') == 0)
        timeA = datetime('now');
        timeA = datevec(timeA);
        isRunning = 1
    else
        timeB = datetime('now');
        timeB = datevec(timeB);
        disp(etime(timeA,timeB))
        if(etime(timeB,timeA) >= 30)
            sayIt = "30secPassed"
        end
    end

所以我的问题是如何每 30 秒调用一次 MATLAB 函数块?

解决方案是在块参数(子系统)中将采样时间设置为 30 秒。