Plotting outputs at certain simulation time
15 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Vinay Srinivasan
le 7 Oct 2020
Commenté : Vinay Srinivasan
le 10 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
0 commentaires
Réponse acceptée
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)
Voir également
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!