SIMULINK:在嵌入式matlab函数中管理(保存)变量状态

时间:2015-11-01 14:19:00

标签: matlab simulink

每次调用我的MATLAB函数时它都是无状态的,因此我只有输入变量的值。我如何管理周期之间的状态(即变量值)?例如,在步骤100中,我进行了一些计算,我需要在步骤200中使用。我会使用全局变量,但不支持它们。

1 个答案:

答案 0 :(得分:2)

这是persistent变量的用途。 有关详细信息,请参阅>>doc persistent,但基本上您需要以下内容

function y = fcn(u)

%define persistent variables
persistent a b c

% initialize persistent variables (at t=0)
if isempty(a)
   a = 1;
   b = 10;
   c = 12;
end


% update variables
a = a+7;
b = b+4;

% update out
y = u + a + b + c;