Info

This question is closed. Reopen it to edit or answer.

Store and pass on variables

1 view (last 30 days)
Brage Mothes
Brage Mothes on 10 Mar 2019
Closed: MATLAB Answer Bot on 20 Aug 2021
I would like to store a value to be passed on in Simulink, whenever certain conditions is met. Preferrably using a Matlab function block.
The code i've written is the following:
function prev_tan = fcn(input)
persistent tangent;
persistent prev_tangent;
% Initial values
if isempty(prev_tangent)
prev_tangent = [1; 1];
tangent = [1; 1];
% When u changes
elseif tangent ~= input
prev_tangent = tangent;
tangent = input;
end
prev_tan = prev_tangent;
end
Anyone know how to do this or something similar, storing old values to be passed on?
Thanks in advance!

Answers (1)

Patel Mounika
Patel Mounika on 12 Mar 2019
System Objects are designed specifically for implementing and simulating dynamic systems with inputs that change over time and System objects use internal states to store that past behavior, which is used in the next computational step which is applicable in your case. Therefore, I suggest you use System Objects rather than functions. And MATLAB System Block will enable you to use System Objects in Simulink. Please refer to the links to know more about System Objects and System block.
Hope this helps.

Products

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!