how can i import data from mat file to simulink?
31 views (last 30 days)
Show older comments
Hello. I have a simple simulation: a matlab function block, clock(t as an input),scope and a from file block. acos [variable name] is saved in a.mat and in fcn y=acos=cos(t). how can I import acos variable to fcn block? should I define from file block as an input of fcn or..? the photo of simulation is attached.
0 Comments
Answers (1)
Stephan
on 4 Nov 2018
Edited: Stephan
on 4 Nov 2018
Hi,
the content in your .mat-file has to be saved as a timeseries object. See this example how to create this.
Your function has to take as many input arguments as signals you want to connect in your model:
.
function y = fcn(u,t)
y = 3*cos(u*t);
end
If you want to pass time and data from .mat-file, change your funtion the way shown in the above example. If your function is defined in this way you can connect both signals in Simulink:
.
But be careful - See the result of this:
.
This is the result, due to the input is a timeseries - the time information is in the .mat-file. I attached a .matfile as example which contains a timeseries object for t=0...10 in 100 steps and the data is from -2*pi...2*pi in 100 steps. See what happens if we diconnect t and change the function to:
function y = fcn(u)
y = 3*cos(u);
end
.
The model now:
.
So think about if you really need the time block for your model. Test the attached model.
Best regards
Stephan
See Also
Categories
Find more on Simulink Functions in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!