Документация Engee

Zero-Order Hold

Выполняет удержание нулевого порядка в течении шага расчета.

Тип: ZeroOrderHold

Путь в библиотеке:

/Basic/Discrete/Zero-Order Hold

Описание

Блок Zero-Order Hold сохраняет значение на входе в течение указанного шага расчета. Если входной сигнал является вектором, то блок сохраняет все элементы вектора за один и тот же период выборки.

Шаг расчета задается параметром Sample time. Значение −1 означает, что блок наследует значение шага расчета.

Не используйте блок Zero-Order Hold для создания перехода между блоками, работающими с разной частотой дискретизации (от быстрых к медленным). Вместо этого используйте блок Rate Transition.

Сравнение с аналогичными блоками

Блоки Memory, Unit Delay и Zero-Order Hold обеспечивают схожую функциональность, но имеют разные возможности. Кроме того, назначение каждого блока различно.

В таблице приведено рекомендуемое использование для каждого блока.

Блок Назначение блока

Unit Delay

Реализует задержку, используя указанный шаг расчета. Блок принимает и выдает сигналы с дискретным шагом расчета.

Memory

Реализует задержку на один основной шаг расчета. В идеале блок принимает непрерывные (или фиксированные с небольшим временным шагом) сигналы и выдает сигнал, который фиксируется с небольшим временным шагом.

Zero-Order Hold

Преобразует непрерывный входной сигнал в дискретный.

Каждый блок обладает следующими возможностями.

Возможность Memory Unit Delay Zero-Order Hold

Задание начального условия

Да

Да

Нет, потому что выходной сигнал блока в момент времени t = 0 должен быть равен входному значению.

Задание шага расчета

Нет, потому что блок может наследовать шаг расчета только от управляющего блока или решателя, используемого для всей модели.

Да

Да

Поддержка сигналов на основе кадров

Нет

Да

Да

Поддержка регистрации состояния

Нет

Да

Нет

Порты

Вход

# IN_1 — входной сигнал
скаляр | вектор

Details

Входной сигнал, который блок удерживает в течение одного шага расчета.

Типы данных

Float16, Float32, Float64, Int8, Int16, Int32, Int64, UInt8, UInt16, UInt32, UInt64, Bool

Поддержка комплексных чисел

Нет

Выход

# OUT_1 — выходной сигнал
скаляр | вектор

Details

Выходной сигнал, т.е. входной сигнал, удержанный в течение одного шага расчета.

Типы данных

Float64

Поддержка комплексных чисел

Нет

Параметры

Основные

# Sample time — интервал между шагами расчета
SampleTime (real number / vector of two real numbers)

Details

Укажите интервал между шагами расчета как неотрицательное число. Чтобы наследовать шаг расчета, установите для этого параметра значение −1.

Не указывайте непрерывный шаг расчета (0). Этот блок поддерживает только дискретный шаг расчета. Когда этот параметр равен −1, унаследованный шаг расчета должен быть дискретным, а не непрерывным.

Значение по умолчанию

-1

Имя для программного использования

SampleTime

Настраиваемый

Нет

Вычисляемый

Да