Time since state became active
elapsed(
returns the time in seconds
(sec
)sec
) that has elapsed since the activation of the associated
state.
The elapsed
operator resets the counter for
sec
to 0 each time the associated state reactivates.
In state and transition actions, you can use quotation marks to enclose the
keyword 'sec'
. For
example:
y = elapsed('sec');
The timing for absolute-time temporal logic operators depends on the type of Stateflow® chart:
Charts in a Simulink® model define temporal logic in terms of simulation time.
Standalone charts in MATLAB® define temporal logic in terms of wall-clock time.
The difference in timing can affect the behavior of a chart. For
example, suppose that this chart is executing the entry
action of state A
.
In a Simulink model, the function call to f
executes in a single time step and does not contribute to the
simulation time. After calling the function f
,
the chart assigns a value of zero to y
.
In a standalone chart, the function call to f
can take several seconds of wall-clock time to complete. After
calling the function f
, the chart assigns the
nonzero time that has elapsed since state A
became active to y
.