How to update variable in Workspace during simulation?
44 views (last 30 days)
Show older comments
Hi all,
I have a simulink simulation that runs for 20s. At every 5s, it will generate a new set of data, which needs to be written to the workspace automatically. (Hence, the values in workspace should be updated automatically every 5s).
Right now, even though I try to write to the workspace every 5s, the values in the workspace remain at its initial value throughout the simulation and only update at the very end of the entire simulation time (i.e. after 20s).
May I know what should I do? Any advice or help is really greatly appreciated!
Best Regards, Rachel
0 Comments
Answers (2)
Kaustubha Govind
on 29 May 2012
I'm assuming that you are using something like the To Workspace block to write data to the workspace? I explained a little in my second paragraph over here, why I think that operation is not guaranteed to be completed until the end of simulation.
However, it seems (from your comment to the cyclist's answer) the broader issue is that you are attempting to update a block parameter based on a signal. Read this blog post to understand why that cannot be done.
2 Comments
the cyclist
on 29 May 2012
I am not familiar with simulink, but will the assignin() command solve your problem?
>> doc assignin
3 Comments
Homer Lan
on 8 Feb 2018
Hi, I met the same question with u. I want to update the value in the workspace when the simulink was running. And I use 'assignin',the value in the workspace can only save the initial value. And it cannot change with the simulation starting. How can I solve this? Thank you for your help!
See Also
Categories
Find more on Simulink Environment Customization in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!