Plotting outputs at certain simulation time

15 vues (au cours des 30 derniers jours)
Vinay Srinivasan
Vinay Srinivasan le 7 Oct 2020
Hello All
I have run a simulink model and there are various number of outputs. I have to plot certain outputs with respect to time at certain simulation times. For ex; Plot time vs current between 0.25 to 0.5 seconds .May I please know how to do it ?
Thanks in advance
Regards
Vinay

Réponse acceptée

Jon
Jon le 7 Oct 2020
Modifié(e) : Jon le 7 Oct 2020
The exact details depend upon what format you are using to save your Simulink output. It can be saved as a Simulink dataset, an array, structure with time etc. please see https://www.mathworks.com/help/simulink/ug/data-format-for-logged-simulation-data.html#bur96_r
Let's say you output your data as a SimulationOutput dataset, this is the default.
In this case after you run your simulation you should see a variable named out in your workspace.
To plot, for example, the output assigned to the second outport in the root level of your Simulink over the time range 0.25 to 0.5, you would use:
plot(out.yout{2}.Values.Time,out.yout{2}.Values.Data)
xlim([0.25,0.50])
You can also use the Simulation Data Inspector, which gives nice interactive tools for plotting logged signals, please see https://www.mathworks.com/help/simulink/slref/simulationdatainspector.html

Plus de réponses (0)

Community Treasure Hunt

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

Start Hunting!

Translated by