Обновите состояния блока
Нет
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
.
Derivatives
, Simulink.RunTimeBlock
, Simulink.MSFcnRunTimeBlock
, mdlUpdate