In Simulink, is it possible to send data to workspace in real-time using the 'ToWorkspace' block?
63 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Rafael Cordero
el 25 de Oct. de 2020
Hello everyone,
I have a large simulink model. In this model I calculate certain variables that are essentially [1x1] constants. For example, I analyze an electrocardiogram recording to count the number of heart cycles: num_cycles.
I would then like to use such constants like num_cycles in various other blocks like selectors and Matlab function blocks to fix the size of various variable size signals.
Now, if such constants would be defined in the workspace, I could just type num_cycles or whatever in the Simulink selector block, or in the output size of the Matlab Function's explorer. I have tried using the block "ToWorkspace" to do this. However, this block only sends data to workspace once the simulation in stopped or paused.
My question is: is there any way to send variables to the workspace immediately so that they can be accessed by future blocks as if they were workspace variables?
Thank you,
Rafael
1 comentario
Paul
el 25 de Oct. de 2020
I don’t think you can do this. Please post here if you find a solution.
However, the answer may be in your question. Did you read the doc on “variable size signals”?
Respuesta aceptada
Más respuestas (1)
Ameer Hamza
el 25 de Oct. de 2020
2 comentarios
Ameer Hamza
el 26 de Oct. de 2020
I think that changing the parameters of a compiled model using values from the base workspace is not possible. You can read these values using extrensic(), but using them to changing the signal dimensions might require the re-compilation of the model.
Ver también
Categorías
Más información sobre Event Functions en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!