after

Выполнение диаграммы управления с after оператор

Описание

пример

after(n,E) возвращает true если основное событие E произошел, по крайней мере, n времена начиная с активации ассоциированной страны. В противном случае оператор возвращает false.

В графике без входных событий, after(n,tick) возвращает true если график разбудил n времена или больше начиная с активации ассоциированной страны.

after оператор сбрасывает счетчик для E к 0 каждым разам ассоциированная страна повторно активирует.

пример

after(n,time_unit) возвращает true если n модули времени протекли начиная с активации ассоциированной страны. В противном случае оператор возвращает false. Задайте time_unit как секунды (sec), миллисекунды (msec), или микросекунды (usec).

after оператор сбрасывает счетчик для sec, msec, и usec к 0 каждым разам ассоциированная страна повторно активирует.

Примеры

развернуть все

Сообщение о состоянии появляется во время каждого CLK цикл, запуская 5 тактов после активации состояния.

on after(5,CLK): status('on');

Переход из ассоциированной страны происходит только на широковещательной передаче ROTATE событие, но только, чем 10 CLK циклы после активации состояния.

ROTATE[after(10,CLK)]

После 12,3 секунд начиная с активации состояния, temp переменная становится LOW .

on after(12.3,sec): temp = LOW;

После 8 миллисекунд начиная с активации состояния происходит переход из ассоциированной страны.

after(8,msec)

Советы

  • Можно использовать кавычки, чтобы заключить ключевые слова 'tick'секунда, 'msec', и 'usec'. Например, after(5,'tick') эквивалентно after(5,tick).

  • Синхронизация для абсолютно-разовых временных логических операторов зависит от типа графика Stateflow®:

    • Графики в модели define Simulink® временная логика в терминах времени симуляции.

    • Автономные графики в MATLAB® задают временную логику в терминах тактового стеной времени.

    Различие в синхронизации может влиять на поведение графика. Например, предположите, что этот график выполняет during действие A состояния.

    • В модели Simulink, вызове функции к f выполняется в одном временном шаге и не способствует времени симуляции. График завершает вызов функции к f прежде чем это возьмет переход от A состояния утверждать B и вызовы функционируют g.

    • В автономном графике, вызове функции к f может занять несколько секунд тактового стеной времени, чтобы завершиться. Если вызов длится больше чем две секунды, график берет переход, чтобы утвердить B и вызовы функционируют g перед функциональным f выполнение концов.

Введенный в R2014b