Export data from simulink to workspace when using sim command
5 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
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 comentarios
Respuesta aceptada
Paulo Silva
el 21 de Jun. de 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 comentarios
Titus Edelhofer
el 22 de Jun. de 2011
Hi Javier,
take a look at the simulation parameters (menu configuration). There you specify if the model should output or not ...?
Titus
Más respuestas (1)
Titus Edelhofer
el 21 de Jun. de 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
Ver también
Categorías
Más información sobre Programmatic Model Editing en Help Center y File Exchange.
Productos
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!