Unit Delay
Задержка сигнала на один шаг расчета.
Описание
Блок Unit Delay задерживает ввод на указанный шаг расчета. При размещении в подсистеме итератора он задерживает вход на одну итерацию. Этот блок эквивалентен оператору дискретного времени . Блок принимает один входной сигнал и генерирует один выходной сигнал. Каждый сигнал может быть скалярным или векторным. Если входным сигналом является вектор, блок задерживает все элементы вектора на один и тот же шаг расчета.
Выход блока для первого временного шага задается параметром Initial conditions. Корректный выбор этого параметра может свести к минимуму нежелательное поведение выходного сигнала. Шаг расчета задается параметром Sample time. Значение −1
означает, что блок наследует значение шага расчета.
Блок выдает ошибку, если использовать его для создания перехода между блоками, работающими с разной частотой дискретизации. Вместо этого используйте блок Rate Transition. |
Сравнение с аналогичными блоками
Блоки Memory, Unit Delay и Zero-Order Hold обеспечивают схожую функциональность, но имеют разные возможности. Кроме того, назначение каждого блока различно.
В таблице приведено рекомендуемое использование для каждого блока.
Блок | Назначение блока |
---|---|
Unit Delay |
Реализует задержку, используя указанный шаг расчета. Блок принимает и выдает сигналы с дискретным шагом расчета. |
Реализует задержку на один основной шаг расчета. В идеале блок принимает непрерывные (или фиксированные с небольшим временным шагом) сигналы и выдает сигнал, который фиксируется с небольшим временным шагом. |
|
Преобразует непрерывный входной сигнал в дискретный. |
Каждый блок обладает следующими возможностями.
Возможность | Memory | Unit Delay | Zero-Order Hold |
---|---|---|---|
Задание начального условия |
Да |
Да |
Нет, потому что выходной сигнал блока в момент времени |
Задание шага расчета |
Нет, потому что блок может наследовать шаг расчета только от управляющего блока или решателя, используемого для всей модели. |
Да |
Да |
Поддержка сигналов на основе кадров |
Нет |
Да |
Да |
Поддержка регистрации состояния |
Нет |
Да |
Нет |
Порты
Вход
Port_1 — входной сигнал
скаляр
| вектор
| шина
Входной сигнал, который блок задерживает на один шаг расчета. Задается в виде скаляра, вектора или шины.
Более подробно о работе с пользовательским типом шин читайте здесь.
Типы данных: Float16
, Float32
, Float64
, Int8
, Int16
, Int32
, Int64
, UInt8
, UInt16
, UInt32
, UInt64
, Bool
, BusSignal
Поддержка комплексных чисел: Да
Выход
Port_1 — выходной сигнал
скаляр
| вектор
| шина
Выходной сигнал, т.е. входной сигнал, задержанный на один шаг расчета. Задается в виде скаляра, вектора или шины. Тип выходного сигнал соответствует типу входного сигнала.
Более подробно о работе с пользовательским типом шин читайте здесь.
Типы данных: Float16
, Float32
, Float64
, Int8
, Int16
, Int32
, Int64
, UInt8
, UInt16
, UInt32
, UInt64
, Bool
, BusSignal
Поддержка комплексных чисел: Да
Параметры
Main
Initial condition — выход блока на первом шаге расчета
0 (по умолчанию)
| скаляр
| вектор
| N-мерный массив
| шина
Выход блока на первом шаге расчета, в течение которого выходные данные блока Unit Delay в противном случае не определены.
Параметр блока |
|
Значения |
|
По умолчанию |
|
Sample time (−1 for inherited) — интервал между шагами расчета
−1.0 (по умолчанию)
| скаляр
Укажите интервал между шагами расчета как неотрицательное число. Чтобы наследовать шаг расчета, установите для этого параметра значение −1
.
Параметр блока |
|
Значения |
|
По умолчанию |
|