Обновить состояния блока
Нет
MATLAB
Update(s)
s Экземпляр Simulink.MSFcnRunTimeBlock класс, представляющий Уровень 2 MATLAB S-Function block.
Модуль Simulink ® вызывает этот дополнительный метод на каждом основном этапе моделирования. Метод должен вычислять состояния S-функции на текущем временном шаге и сохранять состояния в векторе состояния S-функции. Метод также может выполнять любые другие задачи, которые S-функция должна выполнять на каждом основном временном шаге.
Используйте этот код, если функция S имеет одно или несколько дискретных состояний или не имеет прямого канала.
Причина этого в том, что большинство S-функций, которые не имеют дискретных состояний, но имеют прямой проход, не имеют функций обновления. Таким образом, механизм может устранить необходимость в дополнительном вызове в этих обстоятельствах.
В Level-2 S-функциях MATLAB используйте метод объекта времени выполнения. IsSampleHit чтобы определить, является ли текущее время моделирования временем, в течение которого задача, обрабатываемая этим блоком, активна. Для отсчетов времени на основе портов используйте IsSampleHit свойства объекта времени выполнения InputPort или OutputPort определяет, выдает ли порт выходные данные или принимает входные данные на текущем этапе моделирования.
Пример использования этой функции для обновления дискретных состояний см. в разделе msfcn_unit_delay.m.