Supress simulink from evaluating initialisation commands while editing
2 次查看(过去 30 天)
显示 更早的评论
Hello Community,
I have a problem while editing my rather complex simulink model. I have some masked subsystems which read indexed parameters in their initialisation commands. In the mask I define the index with an edit field. Furthermore all parameters are definded in an initialisation script and the simulation is also started by a script where all variables are assigned directly to the model workspace with assignin.
The very annoying problem is, that if I change the index in the mask of the subsystem I get the error
Initialization commands cannot be evaluated.
Caused by:
Index exceeds array bounds.
When I start my initialisation script and set a debug point after the assignin command I can change the index variable without any errors.
Now I am wondering whether there is a way to supress simulink from evaluating my initialisation commands while I am editing my model and do this only on simulation start instead.
0 个评论
采纳的回答
TAB
2018-8-31
You can check model simulation status on mask initialization to decide whether to run your command or not.
if ~strcmpi(get_param(bdroot(gcbh), 'SimulationStatus'), 'stopped')
...
...
end
Possible values of Simulation Status are:
{'stopped'} | 'updating' | 'initializing' | 'running' | 'paused' | 'terminating' | 'external'
更多回答(0 个)
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!