Integrator (Discrete or Continuous)

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

  • Библиотека:
  • Simscape/Электрический/Управление/Общее управление

  • Integrator (Discrete or Continuous) block

Описание

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

Можно переключаться между непрерывной и дискретной реализациями интегратора с помощью параметра Sample time.

Уравнения

Непрерывный

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

G(s)=1s.

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

{x˙(t)=u(t)y(t)=x(t)x(0)=x0,

где:

  • u является входом интегратора.

  • x является состоянием интегратора.

  • y - выход интегратора.

  • t - время симуляции.

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

Дискретный

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

G(z)=Tsz1,

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

{x(n+1)=x(n)+Tsu(n)y(n)=x(n)x(0)=x0,

где:

  • u является входом интегратора.

  • x является состоянием интегратора.

  • y - выход интегратора.

  • n - временной шаг симуляции.

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

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

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

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

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

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

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

    A<=x<=B.

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

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

    Метод windup ограничивает выходную y интегратора между нижним пределом насыщения A и верхним пределом насыщения B:

    A<=y<=B.

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

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

Можно сбросить состояние интегратора, передав ненулевой сигнал к Reset порту блока.

Порты

Вход

расширить все

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

Типы данных: single | double

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

Типы данных: single | double

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

Типы данных: single | double

Выход

расширить все

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

Типы данных: single | double

Параметры

расширить все

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

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

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

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

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

Выберите предельный тип интегратора:

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

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

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

Нижний предел насыщения интегратора. Установите значение -inf для ненасыщенного нижнего предела или до конечного значения, чтобы насытить интегратора, используя стратегию, заданную Limit type.

Время между последовательными выполнениями блоков. Во время выполнения блок производит выходы и, при необходимости, обновляет свое внутреннее состояние. Для получения дополнительной информации смотрите Что такой Шаг расчета? и задайте шаг расчета.

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

Если этот блок находится в маскированной подсистеме или другой альтернативной подсистеме, которая позволяет переключаться между непрерывной операцией и дискретной операцией, продвигайте параметр шага расчета. Продвижение параметра шага расчета обеспечивает правильное переключение между непрерывной и дискретной реализациями блока. Для получения дополнительной информации см. Раздел «Увеличение параметра до маски».

Ссылки

[1] Рекомендуемая практика IEEE для системных моделей возбуждения для исследований устойчивости системы степеней. IEEE Std 421.5-2016. Piscataway, NJ: IEEE-SA, 2016.

Расширенные возможности

Генерация кода C/C + +
Сгенерируйте код C и C++ с помощью Coder™ Simulink ®

.
Введенный в R2017b