Discrete-Time Integrator
Дискретное интегрирование или накопление сигнала.
Описание
Используйте блок Discrete-Time Integrator вместо блока Integrator для создания полностью дискретной модели.
Выходные уравнения
На первом временном шаге, т.е. при состоянии блока , выходное значение .
Для заданного шага со временем моделирования выходные данные обновляются в зависимости от выбранного метода следующим образом:
-
Прямой метод Эйлера:
-
Обратный метод Эйлера:
-
Метод трапеций:
Реализация этих выходных уравнений в пространстве состояний автоматически выбирается в зависимости от шага расчета блока, которое может быть явным или унаследованным. При использовании явно заданного шага расчета уменьшается до шага расчета для всех .
Методы интегрирования и накопления
Этот блок может интегрировать или накапливать сигнал, используя прямой метод Эйлера, обратный метод Эйлера или метод трапеций. Предположим, что — это вход, — это выход, а — это состояние. Для заданного шага обновляется и . В режиме интегрирования — это шаг расчета блока. В режиме накопления . Шаг расчета блока определяет, когда вычисляется выходной сигнал, но не выходное значение. — коэффициент усиления. Значения обрезаются в соответствии с верхним или нижним пределом.
Прямой метод Эйлера
Прямой метод Эйлера (используется по умолчанию), также известный как прямая прямоугольная или левая аппроксимация.
Блок аппроксимирует как . Выражения для выхода блока на шаге :
Блок использует эти шаги для вычисления выходного сигнала:
Шаг 0: |
(при необходимости ограничено)
|
Шаг 1: |
|
Шаг n: |
(при необходимости ограничено) |
Определение начальных состояний
Вы можете определить начальные состояния в качестве параметра в диалоговом окне блока или ввести их из внешнего сигнала:
-
Чтобы определить начальные состояния в качестве параметра блока, укажите Initial condition source как
internal
и введите значение в поле Initial condition. -
Чтобы получить начальные состояния из внешнего источника, укажите Initial condition source как
external
. Дополнительный входной порт появляется под портом ввода.
Сброс состояния
Блок сбрасывает свое состояние до начального состояния по внешнему сигналу. Тип триггера сброса определяется параметром External reset. При выборе значения, отличного от none
, у блока появляется порт сброса, рядом с которым обозначен тип триггера сброса.
Типы триггеров сброса
Параметр External reset позволяет определить атрибут сигнала сброса, который является триггером сброса. Возможны следующие триггеры:
-
rising
— сбрасывает состояние, когда сигнал сброса проходит фронт, т.е. повышается с отрицательного или нулевого значения до положительного. Например, на рисунке ниже показано влияние триггера сбросаrising
на интегрирование обратным методом Эйлера. -
falling
— сбрасывает состояние, когда сигнал сброса проходит срез, т.е. падает с положительного значения до нуля или отрицательного значения. Например, на рисунке ниже показано влияние триггера сбросаfalling
на интегрирование обратным методом Эйлера. -
either
— сбрасывает состояние, когда сигнал сброса повышается или понижается, т.е. изменяется с нуля на ненулевое значение, с ненулевого значения на ноль либо меняет знак. Например, на следующем рисунке показано влияние триггера сбросаeither
на интегрирование обратным методом Эйлера. -
level
— сбрасывает и удерживает выход в исходном состоянии, пока сигнал сброса не равен нулю, т.е. отличен от нуля на текущем временном шаге или изменяется от ненулевого значения на предыдущем временном шаге до нуля на текущем временном шаге. Например, на этом рисунке показано влияние триггера сбросаlevel
на интегрирование обратным методом Эйлера. -
sampled level
— сбрасывает выходной сигнал в исходное состояние, когда сигнал сброса отличен от нуля. Например, на этом рисунке показано влияние триггера сбросаsampled level
на интегрирование обратным методом Эйлера.
Опция sampled level
требует меньше вычислений, что делает ее более эффективной, чем опция level
.
Для блока Discrete-Time Integrator все триггеры определяются по сигналам с положительными значениями. Например, сигнал, изменяющийся от -1 до 0 , не считается нарастающим фронтом, а сигнал, изменяющийся от 0 до 1 , считается.
|
Порты
Вход
Port_1 — входной сигнал
скаляр
| вектор
| матрица
Входной сигнал в виде скаляра, вектора или матрицы.
Типы данных: Float16
, Float32
, Float64
, Int8
, Int16
, Int32
, Int64
, Int128
, UInt8
, UInt16
, UInt32
, UInt64
, UInt128
, Bool
IC — начальное состояние
скаляр
| вектор
| матрица
Начальное состояние блока, заданное внешним сигналом.
Зависимости
Чтобы использовать этот порт, установите для Initial condition source значение external
.
Типы данных: Float16
, Float32
, Float64
, Int8
, Int16
, Int32
, Int64
, Int128
, UInt8
, UInt16
, UInt32
, UInt64
, UInt128
, Bool
External Reset — сброс состояния к начальному
скаляр
| вектор
| матрица
Сброс состояния блока до заданного начального по внешнему сигналу. См. раздел Сброс состояния.
Зависимости
Чтобы использовать этот порт, установите флажок External Reset.
Типы данных: Float16
, Float32
, Float64
, Int8
, Int16
, Int32
, Int64
, Int128
, UInt8
, UInt16
, UInt32
, UInt64
, UInt128
, Bool
Параметры
Integrator method — метод интегрирования
Integration: Forward Euler (по умолчанию)
| Integration: Backward Euler
| Integration: Trapezoidal
| Accumulation: Forward Euler
| Accumulation: Backward Euler
| Accumulation: Trapezoidal
Метод интегрирования или накопления.
Параметр блока |
|
Значения |
|
По умолчанию |
|
Gain value — коэффициент усиления интегратора
1.0 (по умолчанию)
| скаляр
| вектор
| матрица
Задает скаляр, вектор или матрицу, на которые умножается входной сигнал интегратора. Каждый элемент коэффициента усиления должен быть положительным вещественным числом.
-
Указание значения, отличного от
1.0
(значение по умолчанию), семантически эквивалентно подключению блока Gain ко входу интегратора. -
Допустимые значения:
-
[1.1 2.2 3.3 4.4]
-
[1.1 2.2; 3.3 4.4]
-
Подсказка
Использование этого параметра для указания входного коэффициента усиления устраняет операцию умножения в сгенерированном коде. Однако этот параметр должен быть не настраиваемым, чтобы реализовать это преимущество. Если вы хотите менять коэффициент усиления, установите для этого параметра значение 1.0
и используйте внешний блок Gain для задания коэффициента усиления.
Параметр блока |
|
Значения |
|
По умолчанию |
|
Initial condition source — выбор источника начального состояния
internal (по умолчанию)
| external
Выберите источник начального состояния:
-
internal
— получение начальных состояний из параметра блока Initial condition. -
external
— получение начальных состояний от внешнего источника через входной порт IC.
Зависимости
Выбор internal
включает использование параметра Initial condition в симуляции.
Выбор external
отключает использование параметра Initial condition и включает входной порт IC.
Параметр блока |
|
Значения |
|
По умолчанию |
|
Initial condition — начальное состояние
0.0 (по умолчанию)
| скаляр
| вектор
| матрица
Начальное состояние блока.
Зависимости
Чтобы использовать этот параметр, установите для параметра Initial condition source значение internal
.
Параметр блока |
|
Значения |
|
По умолчанию |
|
Initial condition setting — выбор применения начального состояния
Auto (по умолчанию)
| Output
Выберите, следует ли применять значение параметра Initial condition к состоянию блока или к выходу блока. Начальным состоянием также является значение сброса.
-
Auto
— блок применяет значение параметра Initial condition к состоянию блока.Установите начальные состояния:
x(0) = IC
При сбросе:
x(n) = IC
-
Output
— блок применяет значение Initial condition к выходу блока.Установите начальные состояния:
y(0) = IC
При сбросе:
y(n) = IC
Параметр блока |
|
Значения |
|
По умолчанию |
|
Limit output — ограничение выходных значений блока указанным диапазоном
выключено (по умолчанию)
| включено
Ограничивает выходной сигнал значениями параметров Lower saturation limit и Upper saturation limit.
-
Установка этого флажка ограничивает выходной сигнал значениями параметров Lower saturation limit и Upper saturation limit.
-
Снятие этого флажка снимает ограничения на выходной сигнал.
Зависимости
Выбор этого параметра включает использование параметров Lower saturation limit и Upper saturation limit.
Параметр блока |
|
Значения |
|
По умолчанию |
|
Lower saturation limit — нижний предел для интеграла
−inf (по умолчанию)
| скаляр
| вектор
| матрица
Задает нижний предел для выходного значения в виде скаляра, вектора или матрицы.
Зависимости
Чтобы использовать этот параметр, установите флажок Limit output.
Параметр блока |
|
Значения |
|
По умолчанию |
|
Upper saturation limit — верхний предел для интеграла
inf (по умолчанию)
| скаляр
| вектор
| матрица
Задает верхний предел для выходного значения в виде скаляра, вектора или матрицы.
Зависимости
Чтобы использовать этот параметр, установите флажок Limit output.
Параметр блока |
|
Значения |
|
По умолчанию |
|
Sample time (−1 for inherited) — интервал между шагами расчета
−1.0 (по умолчанию)
| скаляр
Укажите интервал между шагами расчета как неотрицательное число. Чтобы наследовать шаг расчета, установите для этого параметра значение −1
.
Подсказка
-
Не указывайте шаг расчета, равный
0
. Это значение задает непрерывный шаг расчета, которое блок Discrete-Time Integrator не поддерживает. -
Не указывайте шаг расчета
inf
илиNaN
, поскольку эти значения не являются дискретными. -
Если вы указываете
−1
для наследования шага расчета из вышестоящего блока, убедитесь, что вышестоящий блок использует дискретный шаг расчета. Например, блок Discrete-Time Integrator не может наследовать шаг расчета, равный0
.
Параметр блока |
|
Значения |
|
По умолчанию |
|
External reset — сброс состояния к начальному
none (по умолчанию)
| rising
| falling
| either
| level
| sampled level
Укажите тип триггера, который будет использоваться для внешнего сигнала сброса.
-
rising
— сбрасывает состояние, когда сигнал сброса проходит фронт. -
falling
— сбрасывает состояние, когда сигнал сброса проходит срез. -
either
— сбрасывает состояние, когда сигнал сброса повышается или понижается (проходит фронт или срез). -
level
— сбрасывает и удерживает выход в исходном состоянии, пока сигнал сброса не равен нулю. -
sampled level
— сбрасывает выходной сигнал в исходное состояние, когда сигнал сброса отличен от нуля.
Дополнительные сведения см. в разделах Сброс состояния и Типы триггеров сброса.
Параметр блока |
|
Значения |
|
По умолчанию |
|