在 Simulink 中使用 Matlab Function 模块时,您可以在定义变量之前使用变量,只需在变量前面添加 persistent
关键字即可。例如:
function y = fcn(u)
persistent x;
if isempty(x)
x = 0;
end
x = x + u;
y = x;
end
这样,每次函数被调用时,x
变量都会被保留,并在下次函数调用时继续使用。
主要是该变量未定义就使用了该变量,就会出现该问题,
解决:需要在使用前先定义该变量
还有一种情况就是使用该变量前需要先赋值,
解决:需要在使用前给该变量先赋值
Simulink中MATLAB Function的变量初始化
如有帮助,望采纳
https://blog.csdn.net/weixin_43455581/article/details/111590770