Обновление

Обновите состояния блока

Необходимый

Нет

Язык

MATLAB

Синтаксис

Update(s)

Аргументы

s

Экземпляр класса Simulink.MSFcnRunTimeBlock, представляющего Уровень 2 Блок s-function MATLAB.

Описание

Механизм Simulink® вызывает этот дополнительный метод на каждом главном шаге времени симуляции. Метод должен вычислить состояния S-функции на шаге текущего времени и сохранить состояния в векторе состояния S-функции. Метод может также выполнить любые другие задачи, которые S-функция должна выполнить на каждом главном временном шаге.

Используйте этот код, если ваша S-функция имеет одно или несколько дискретных состояний или не имеет прямого сквозного соединения.

Причина этого состоит в том, что большинство S-функций, которые не имеют дискретных состояний, но иметь прямое сквозное соединение, не имеет функций обновления. Поэтому механизм может избавить от необходимости дополнительный вызов при этих обстоятельствах.

На Уровне 2 S-функции MATLAB используйте метод объекта периода выполнения IsSampleHit, чтобы определить, ли текущее время симуляции один, в котором задача, обработанная этим блоком, активна. Для основанных на порте частот дискретизации используйте свойство IsSampleHit InputPort объекта периода выполнения или OutputPort, чтобы определить, производит ли порт выходные параметры или принимает входные параметры на текущем шаге времени симуляции.

Пример

Для примера, который использует эту функцию, чтобы обновить дискретные состояния, смотрите msfcn_unit_delay.m m.

Представленный в R2012b

Была ли эта тема полезной?