MATLAB Answers

Get simulation status of simulink model with event listener

48 views (last 30 days)
Gurkenglas on 28 Aug 2015
Commented: Pratik Patil on 10 Aug 2018
I am trying to get the current simulation status of my simulink model (initializing,running,paused etc.) by using an event listener. I need this because the model takes a long time to start, and I want to show the current status in my GUI. But I dont have a clue, how to set the "blk" parameter, because I want to access the model itself, not a block within the model. So, the following doesnt work:
blk = 'model';
event = 'PostOutputs';
listener = @sim_status;
EventListener = add_exec_event_listener(blk, event, listener);
Does anyone know, how to solve this? Thanks.

  1 Comment

Pratik Patil
Pratik Patil on 9 Aug 2018
Did you find answer to his question? I am looking for a solution to same problem

Sign in to comment.

Answers (1)

TAB on 10 Aug 2018
You can Model Callback functions to capture the simulation status.
Some simulation related callback functions are:
  • InitFcn
  • StartFcn
  • PauseFcn
  • ContinueFcn
  • StopFcn
Also you can read simulation status of a model using below command anytime. It will return string — {'stopped'} | 'updating' | 'initializing' | 'running' | 'paused' | 'terminating' | 'external'
get_param('myModel', 'SimulationStatus')

  1 Comment

Pratik Patil
Pratik Patil on 10 Aug 2018
Hey Thanks you Tabrez, This is exactly what I did. I was using them for other purposes, but added one more line of code to findobject on GUI and update the status string in it. But thank you once again Tabrez.

Sign in to comment.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!