Export data from simulink to workspace when using sim command
16 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Hello,
I want to run automatically several SIMULINK simulations with different input variables values. I have created a .m for this purpose to read the values for each simulation, run the simulation and extract the output needed.
My problem is the following: If I run the simulink model directly (no using any .m nor any command line) the two blocks 'To Workspace' creates the proper variables in the simulink workspace. On the other hand, when I run the simulation calling them from the .m file, the variables from these two blocks do not appear and I cannot extract the info I need. What I have now is: sim('model',[0,0.1],simset('DstWorkspace','base')); but it does not work either. Maybe is only to rewirte the sim command, but if I write [t,x,y]=sim... I am not sure if the two variables that I need are inside y.
Thank you in advance
0 commentaires
Réponse acceptée
Paulo Silva
le 21 Juin 2011
[t,x,y]=sim(...
Returns the simulation's output matrix. Each column contains the output of a root-level Outport block, in port number order. If any Outport block has a vector input, its output takes the appropriate number of columns.
[t,x,y1,...,yn]=sim(...
Each yi returns the output of the corresponding root-level Outport block for a model that has n such blocks.
3 commentaires
Titus Edelhofer
le 22 Juin 2011
Hi Javier,
take a look at the simulation parameters (menu configuration). There you specify if the model should output or not ...?
Titus
Plus de réponses (1)
Titus Edelhofer
le 21 Juin 2011
Hi Javier,
usually I would prefer
[t,x,y] = sim('model', [0 0.1], simset('DstWorkspace', 'current'));
because when you put this into a function, you ToWorkspace blocks will save the output in the current workspace, i.e., where you call sim. Note, the call to sim (output variables) depends on the version of MATLAB you are using. I think that calling sim without output arguments makes a difference to calling with output, so you should use the call above even if you don't care about t, x and y.
Titus
Voir également
Catégories
En savoir plus sur Programmatic Model Editing dans Help Center et File Exchange
Produits
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!