MATLAB Answers

Calling a cyclic function in App Designer

26 views (last 30 days)
Doug Rilee
Doug Rilee on 5 Dec 2018
Answered: Greg on 6 Dec 2018
How can I have a function called cyclically in App Designer?
I am creating a project that uses set_param to send a value to Similink from and get_param to get a value from Simulink back into App Designer.
For set_param the triggered events with a switch, knob or slider work great. I would like to diaplay model results real-time to the App Designer UI. Is it possible to have a function called cyclically within App Designer?


Doug Rilee
Doug Rilee on 5 Dec 2018
Solutuon as provided by a collegue
I will post my project with this code soon.
Create a timer object as follows:
properties (Access = private)
timerObj % timer
% startUpFcn
app.timerObj = timer('TimerFcn'), @(~,~)getModelValues(app), 'Period', 0.5, 'ExecutionMode', 'fixedSpacing', 'BusyMode', 'drop');
Create a function like getModelValues(app) with the get_param code and it will be called cyclically as you specifiy with the period.
Kevin Chng
Kevin Chng on 6 Dec 2018
great to know this solution. Your colleague is awesome. In the past, i might create a while loop for it.

Sign in to comment.

Answers (1)

Greg on 6 Dec 2018
I can't give you actual code examples (every situation is different). But, a probable better approach than the timer in AppDesigner would be pass the appropriate handle into the Simulink model. Then, have the model update whatever graphics object you want in each iteration of the simulation.


Sign in to comment.