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

Integrator (Discrete or Continuous)

Интегратор дискретного или непрерывного времени.

Тип: SubSystem

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

/Physical Modeling/Electrical/Control/General Control/Integrator (Discrete or Continuous)

Описание

Блок Integrator (Discrete or Continuous) реализует простой интегратор в соответствии со стандартом IEEE 421.5-2016 [1].

Переключаться между непрерывной и дискретной реализациями интегратора можно с помощью параметра Sample time (-1 for inherited).

Уравнения

Непрерывный режим

Чтобы настроить интегратор для работы в непрерывном режиме, установите для параметра Sample time (-1 for inherited) значение 0. Это представление эквивалентно непрерывной передаточной функции:

Из приведенной выше передаточной функции уравнения, определяющие интегратор, имеют вид:

где

  • — время моделирования;

  • — входной сигнал интегратора;

  • — выходной сигнал интегратора;

  • — состояние интегратора;

  • — начальное состояние интегратора.

Дискретный режим

Чтобы настроить интегратор для работы в дискретном режиме, установите для параметра Sample time (-1 for inherited) положительное ненулевое значение или значение −1, чтобы унаследовать период дискретизации от вышестоящего блока. Дискретное представление эквивалентно передаточной функции:

где — период дискретизации. Исходя из дискретной передаточной функции, уравнения интегратора определяются с помощью прямого метода Эйлера:

где

  • — временной шаг моделирования;

  • — входной сигнал интегратора;

  • — выходной сигнал интегратора;

  • — состояние интегратора;

  • — начальное состояние интегратора.

Определение начальных условий

Начальные условия состояния можно задать с помощью входного порта x0. Состояние интегратора возвращается к начальному состоянию при каждом сбросе.

Ограничение интеграла

Выходной сигнал интеграла можно ограничить одним из двух способов:

  • Установите для параметра Limit type значение Anti-windup, чтобы использовать метод насыщения с защитой от перенасыщения.

    Метод защиты от перенасыщения ограничивает состояние интегратора диапазоном между нижним пределом насыщения и верхним пределом насыщения :

    Поскольку состояние ограничено, выходной сигнал может немедленно реагировать на изменение знака входного сигнала, когда интеграл насыщен.

  • Установите для параметра Limit type значение Windup, чтобы использовать метод интегрального насыщения.

    Метод интегрального насыщения ограничивает выходной сигнал интегратора диапазоном между нижним пределом насыщения и верхним пределом насыщения :

    Поскольку выходной сигнал ограничен, состояние может продолжать расти, когда интегратор насыщен. В результате выходной сигнал не может реагировать на изменение знака входного сигнала до тех пор, пока состояние не достигнет предельной точки насыщения.

Сброс состояния

Состояние интегратора может быть сброшено подачей ненулевого сигнала на порт Reset.

Порты

Вход

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

Details

Входной сигнал интегратора.

Типы данных

Float32, Float64

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

Нет

# Reset — возврат в исходное состояние
скаляр

Details

Сброс интегратора. Чтобы сбросить состояние интегратора до значения порта x0, подайте на этот порт ненулевое значение. В качестве альтернативы подключите к этому порту блок Константа с нулевым значением, чтобы переопределить внешний сброс.

Типы данных

Float32, Float64

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

Нет

# x0 — начальное состояние
вектор

Details

Начальное состояние интегратора. Чтобы задать значение состояния после сброса, подайте сигнал на этот порт.

Типы данных

Float32, Float64

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

Нет

Выход

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

Details

Выходной сигнал интегратора.

Типы данных

Float32, Float64

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

Нет

Параметры

Main group

# External reset — стратегия сброса
rising | falling | either | level

Details

Выберите стратегию внешнего сброса для интегратора:

  • rising — блок сбрасывает состояние, когда сигнал сброса переходит от отрицательного или нулевого значения к положительному.

  • falling — блок сбрасывает состояние, когда сигнал сброса переходит от положительного значения к нулевому или отрицательному.

  • either — блок сбрасывает состояние, когда сигнал сброса изменяется с нуля на ненулевое значение, с ненулевого значения на ноль или меняет знак.

  • level — блок сбрасывает состояние, когда сигнал сброса не равен нулю на текущем временном шаге или изменяется с ненулевого значения на предыдущем временном шаге на ноль на текущем временном шаге.

Значения

rising | falling | either | level

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

level

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

external_reset

Вычисляемый

Да

# Limit type — стратегия насыщения
Anti-windup | Windup

Details

Выберите тип ограничения интегратора:

  • Anti-windup — блок ограничивает состояние интегратора, предотвращая его перенасыщение.

  • Windup — блок ограничивает выходной сигнал интегратора, допуская перенасыщение состояния интегратора.

Значения

Anti-windup | Windup

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

Anti-windup

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

limit_type

Вычисляемый

Да

# Upper saturation limit — верхний предел состояния

Details

Верхний предел насыщения интегратора. Установите значение Inf для ненасыщенного верхнего предела или конечное значение для насыщения интегратора с использованием стратегии, заданной параметром Limit type.

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

Inf

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

upper_saturation_limit

Вычисляемый

Да

# Lower saturation limit — нижний предел состояния

Details

Нижний предел насыщения интегратора. Установите значение −Inf для ненасыщенного нижнего предела или конечное значение для насыщения интегратора с использованием стратегии, заданной параметром Limit type.

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

-Inf

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

lower_saturation_limit

Вычисляемый

Да

# Sample time (-1 for inherited) — период дискретизации блока

Details

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

Для наследуемого режима дискретного времени установите для этого параметра значение −1. Для дискретного режима установите для этого параметра положительное целое число. Для непрерывного режима установите для этого параметра значение 0.

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

-1

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

sample_time

Вычисляемый

Да

Литература

  1. IEEE Recommended Practice for Excitation System Models for Power System Stability Studies. IEEE Std 421.5-2016. Piscataway, NJ: IEEE-SA, 2016.