PID Controller
|
Страница в процессе разработки. |
ПИД-регулятор.
Тип: SubSystem
PID Controller Путь в библиотеке:
|
|
Discrete PID Controller Путь в библиотеке:
|
Описание
Блок PID Controller реализует ПИД-регулятор (ПИД, ПИ, ПД, только П или только И).
Выход блока является взвешенной суммой входного сигнала, интеграла входного сигнала и производной входного сигнала. Веса суммирования задаются пропорциональными, интегральными и дифференциальными коэффициентами. Полюс первого порядка фильтрует дифференциальную составляющую.
Блок поддерживает несколько типов и структур регулятора. Возможные варианты:
-
Тип регулятора (ПИД, ПИ, ПД, только П или только И);
-
Форма регулятора (параллельная или идеальная);
-
Временная область (непрерывная или дискретная);
-
Начальные условия;
-
Пределы насыщения выходного сигнала и встроенный механизм защиты от перенасыщения;
-
Отслеживание сигнала для плавной передачи управления и многоконтурного управления.
При изменении этих параметров изменяется внутренняя структура блока: активируются соответствующие варианты подсистем.
Порты
Вход
#
IN_1 —
входной сигнал
скаляр | вектор | матрица
Details
Разница между уставкой и выходным сигналом управляемой системы, как показано на рисунке ниже:

Если входной сигнал представляет собой вектор, блок обрабатывает каждый сигнал отдельно, векторизуя коэффициенты ПИД-регулятора и формируя векторный выходной сигнал тех же размеров. Можно задать коэффициенты ПИД-регулятора и некоторые другие параметры в виде векторов тех же размеров, что и входной сигнал. Это эквивалентно заданию отдельного ПИД-регулятора для каждой записи во входном сигнале.
| Типы данных |
|
| Поддержка комплексных чисел |
Нет |
#
extTs —
время дискретного интегратора
скаляр
Details
Время дискретного интегратора, заданное как скаляр. Можно использовать собственное значение времени дискретного интегратора, определяющее скорость выполнения блока в Engee. Значение времени дискретного интегратора должно соответствовать средней частоте дискретизации внешних прерываний, когда блок используется внутри условно выполняемой подсистемы.
Другими словами, можно задать значение для любого из приведенных ниже методов интегратора таким образом, чтобы оно соответствовало средней частоте дискретизации внешних прерываний. В дискретном времени дифференциальный член передаточной функции регулятора равен
где зависит от метода интегрирования:
-
Forward Euler: -
Backward Euler: -
Trapezoidal:
Для получения дополнительной информации о дискретном интегрировании см. описание блока Discrete-Time Integrator.
Зависимости
Чтобы использовать этот порт, установите для параметра Time-domain: значение Discrete-time и установите флажок PID Controller is inside conditionally executed subsystem.
| Типы данных |
|
| Поддержка комплексных чисел |
Нет |
#
P —
пропорциональный коэффициент
скаляр | вектор
Details
Конечное вещественное значение пропорционального коэффициента, представляемое внешним источником по отношению к блоку. Внешний способ задания коэффициентов усиления полезен, например, при сопоставлении другой параметризации ПИД-регулятора с коэффициентами ПИД-регулятора блока. Можно также использовать внешний способ задания коэффициентов усиления для реализации ПИД-регулирования с программным усилением. В регулировании с программным изменением коэффициента усиления коэффициенты ПИД-регулятора определяются с помощью логики или других вычислений в модели и подаются на блок.
Зависимости
Чтобы использовать этот порт, установите для параметра Source: значение external.
| Типы данных |
|
| Поддержка комплексных чисел |
Нет |
#
I —
интегральный коэффициент
скаляр | вектор
Details
Конечное вещественное значение интегрального коэффициента, представляемое внешним источником по отношению к блоку. Внешний способ задания коэффициентов усиления полезен, например, при сопоставлении другой параметризации ПИД-регулятора с коэффициентами ПИД-регулятора блока. Можно также использовать внешний способ задания коэффициентов усиления для реализации ПИД-регулирования с программным усилением. В регулировании с программным изменением коэффициента усиления коэффициенты ПИД-регулятора определяются с помощью логики или других вычислений в модели и подаются на блок.
При задании коэффициентов усиления извне, временные изменения интегрального коэффициента также интегрируются. Этот результат возникает из-за способа реализации коэффициентов ПИД-регулятора внутри блока. Подробности см. в описании параметра Source:.
Зависимости
Чтобы использовать этот порт, установите для параметра Source: значение external.
| Типы данных |
|
| Поддержка комплексных чисел |
Нет |
#
D —
дифференциальный коэффициент
скаляр | вектор
Details
Конечное вещественное значение дифференциального коэффициента, представляемое внешним источником по отношению к блоку. Внешний способ задания коэффициентов усиления полезен, например, при сопоставлении другой параметризации ПИД-регулятора с коэффициентами ПИД-регулятора блока. Можно также использовать внешний способ задания коэффициентов усиления для реализации ПИД-регулирования с программным усилением. В регулировании с программным изменением коэффициента усиления коэффициенты ПИД-регулятора определяются с помощью логики или других вычислений в модели и подаются на блок.
При задании коэффициентов усиления извне, временные изменения дифференциального коэффициента также дифференцируются. Этот результат возникает из-за способа реализации коэффициентов ПИД-регулятора внутри блока. Подробности см. в описании параметра Source:.
Зависимости
Чтобы использовать этот порт, установите для параметра Source: значение external.
| Типы данных |
|
| Поддержка комплексных чисел |
Нет |
#
N —
коэффициент фильтрации производной
скаляр | вектор
Details
Конечное вещественное значение коэффициента усиления фильтра, представляемое внешним источником по отношению к блоку. Внешний способ задания коэффициентов усиления полезен, например, при сопоставлении другой параметризации ПИД-регулятора с коэффициентами ПИД-регулятора блока. Можно также использовать внешний способ задания коэффициентов усиления для реализации ПИД-регулирования с программным усилением. В регулировании с программным изменением коэффициента усиления коэффициенты ПИД-регулятора определяются с помощью логики или других вычислений в модели и подаются на блок.
Зависимости
Чтобы использовать этот порт, установите для параметра Source: значение external.
| Типы данных |
|
| Поддержка комплексных чисел |
Нет |
#
ydot —
внешняя производная
скаляр | вектор
Details
Производная сигнала объекта управления , подаваемая в блок непосредственно через данный входной порт. Это полезно, если в модели есть сигнал производной, и нужно пропустить вычисление производной внутри блока.
Зависимости
Чтобы использовать этот порт, установите флажок Use externally sourced derivative.
| Типы данных |
|
| Поддержка комплексных чисел |
Нет |
#
TR —
следящий сигнал
скаляр | вектор
Details
Сигнал для отслеживания выходного сигнала регулятора. Когда отслеживание сигнала активно, разница между следящим сигналом и выходом блока подается обратно на вход интегратора. Отслеживание сигнала полезно для реализации плавной передачи управления в системах, переключающихся между двумя регуляторами, а также для предотвращения насыщения в многоконтурных системах управления. Для получения дополнительной информации см. описание параметра Enable tracking mode.
Зависимости
Чтобы использовать этот порт, установите флажок Enable tracking mode.
| Типы данных |
|
| Поддержка комплексных чисел |
Нет |
#
UpperLimit —
верхний предел насыщения выходного сигнала
скаляр | вектор
Details
Верхний предел выходного сигнала блока, предоставляемое внешним источником по отношению к блоку. Если взвешенная сумма пропорционального, интегрального и дифференциального действий превышает значение, заданное на этом порту, выходной сигнал блока удерживается на этом значении.
Зависимости
Чтобы использовать этот параметр, в группе параметров Output saturation установите флажок Limit output и для параметра Source: установите значение external.
| Типы данных |
|
| Поддержка комплексных чисел |
Нет |
#
LowerLimit —
нижний предел насыщения выходного сигнала
скаляр | вектор
Details
Нижний предел выходного сигнала блока, предоставляемое внешним источником по отношению к блоку. Если взвешенная сумма пропорционального, интегрального и дифференциального действий становится ниже значения, заданного на этом порту, выходной сигнал блока удерживается на этом значении.
Зависимости
Чтобы использовать этот параметр, в группе параметров Output saturation установите флажок Limit output и для параметра Source: установите значение external.
| Типы данных |
|
| Поддержка комплексных чисел |
Нет |
#
extAW —
внешний алгоритм защиты от перенасыщения
скаляр | вектор
Details
Укажите пользовательский алгоритм защиты от перенасыщения на этом порту. Блок предоставляет два встроенных метода защиты от перенасыщения, однако для раскрытия интегратора эти методы зависят от того, превышает ли сумма компонентов блока заданные пределы выходного сигнала. Если в модели есть насыщения или ограничения после блоков ПИД-регулятора, можно использовать входной порт extAW для реализации пользовательской логики защиты от перенасыщения. Этот блок также предоставляет сигнал перед интегратором на выходном порту preInt, который можно использовать для реализации пользовательского алгоритма.
Зависимости
Чтобы использовать этот параметр, установите флажок Limit output в группе параметров Output saturation и для параметра Anti-windup Method: установите значение external.
| Типы данных |
|
| Поддержка комплексных чисел |
Нет |
Выход
#
OUT_1 —
выход регулятора
скаляр | вектор
Details
Выход регулятора, представляющий собой взвешенную сумму входного сигнала, интеграла входного сигнала и производной входного сигнала. Весы суммирования задаются пропорциональным, интегральным и дифференциальным коэффициентами. Какие слагаемые участвуют в суммировании, зависит от значения параметра Controller:. Другие параметры изменяют выходные данные блока, такие как пределы насыщения, заданные параметрами Upper limit: и Lower limit:.
Выход регулятора является векторным сигналом, если вход является векторным сигналом. В этом случае блок действует как независимых ПИД-регуляторов, где — количество сигналов во входном векторе.
| Типы данных |
|
| Поддержка комплексных чисел |
Нет |
#
preInt —
сигнал, предшествующий интегратору
скаляр | вектор
Details
Порт выходного сигнала, предшествующего интегратору. Используйте этот сигнал в качестве входного для пользовательского алгоритма защиты от перенасыщения, предоставляемого на входном порту extAW.
Зависимости
Чтобы использовать этот параметр, установите флажок Limit output в группе параметров Output saturation и для параметра Anti-windup Method: установите значение external.
| Типы данных |
|
| Поддержка комплексных чисел |
Нет |
Параметры
Main
#
Controller: —
тип регулятора
PID | PI | PD | P | I
Details
Задайте состав регулятора:
-
PID— пропорциональная, интегральная и дифференциальная части. -
PI— только пропорциональная и интегральная части. -
PD— только пропорциональная и дифференциальная части. -
P— только пропорциональная часть. -
I— только интегральная часть.
| Значения |
|
| Значение по умолчанию |
|
| Имя для программного использования |
|
| Настраиваемый |
Нет |
| Вычисляемый |
Да |
#
Form: —
структура регулятора
Ideal | Parallel
Details
Задайте структуру регулятора:
-
Parallel— выход регулятора представляет сумму пропорциональной, интегральной и дифференциальной частей, независимо взвешенных по , и соответственно. Например, для ПИД-регулятора параллельной формы с непрерывным временем передаточная функция имеет вид:Для регулятора параллельной формы с дискретным временем передаточная функция имеет вид:
где параметры Integrator method: и Filter method: определяют и соответственно.
-
Ideal— пропорциональное усиление действует на сумму всех частей. Например, для ПИД-регулятора идеальной формы с непрерывным временем передаточная функция имеет вид:Для регулятора идеальной формы с дискретным временем передаточная функция имеет вид:
где параметры Integrator method: и Filter method: определяют и соответственно.
| Значения |
|
| Значение по умолчанию |
|
| Имя для программного использования |
|
| Настраиваемый |
Нет |
| Вычисляемый |
Да |
#
Time-domain: —
регулятор дискретного или непрерывного времени
Continuous-time | Discrete-time
Details
Для значения Discrete-time рекомендуется явно задать шаг расчета для блока. См. описание параметра Sample time (-1 for inherited):. При выборе значения Discrete-time также включаются параметры Integrator method: и Filter method:.
Когда блок PID Controller находится в модели с синхронным управлением состоянием, нельзя выбрать значение Continuous-time.
| Значения |
|
| Значение по умолчанию |
|
| Имя для программного использования |
|
| Настраиваемый |
Нет |
| Вычисляемый |
Да |
Discrete-time settings
# Sample time (-1 for inherited): — интервал между шагами расчета
Details
Укажите интервал между шагами расчета как неотрицательное число. Чтобы наследовать шаг расчета, установите для этого параметра значение −1.
Рекомендуется явно задать шаг расчета регулятора, особенно если ожидается, что шаг расчета последующих блоков изменится. Влияние коэффициентов регулятора , , и зависит от шага расчета. Таким образом, для заданного набора значений коэффициентов изменение шага расчета изменяет производительность регулятора.
Если вы хотите запустить блок с заданным извне или переменным периодом дискретизации, установите для этого параметра значение −1 и поместите блок в Triggered Subsystem. Затем запустите подсистему при желаемом периоде дискретизации.
|
Зависимости
Чтобы использовать этот параметр, установите для параметра Time-domain: значение Discrete-time.
| Значение по умолчанию |
|
| Имя для программного использования |
|
| Настраиваемый |
Нет |
| Вычисляемый |
Да |
# PID Controller is inside conditionally executed subsystem — активация порта времени дискретного интегратора
Details
Для дискретных ПИД-регуляторов активируйте порт времени дискретного интегратора extTs, чтобы использовать собственное значение периода дискретизации для дискретного интегратора. Для обеспечения правильного интегрирования используйте порт extTs для указания скалярного значения для точного дискретного интегрирования времени.
Зависимости
Чтобы использовать этот параметр, установите для параметра Time-domain: значение Discrete-time.
| Значение по умолчанию |
|
| Имя для программного использования |
|
| Настраиваемый |
Нет |
| Вычисляемый |
Да |
Integator and Filter methods
#
Integrator method: —
метод интегрирования в дискретном регуляторе
Forward Euler | Backward Euler | Trapezoidal
Details
В дискретном времени интегральный член передаточной функции регулятора равен , где зависит от метода интегрирования:
-
Forward Euler— прямая прямоугольная (левая) аппроксимация:Этот метод лучше всего подходит для небольших интервалов между шагами расчета, когда предел Найквиста велик по сравнению с пропускной способностью регулятора. При больших временах дискретизации метод
Forward Eulerможет привести к нестабильности, даже в случае дискретизации системы, стабильной в непрерывном времени. -
Backward Euler— обратная прямоугольная (правая) аппроксимация:Преимущество метода
Backward Eulerсостоит в том, что дискретизация устойчивой системы с непрерывным временем с использованием этого метода всегда дает устойчивый результат с дискретным временем. -
Trapezoidal— билинейное приближение:Преимущество метода
Trapezoidalсостоит в том, что дискретизация устойчивой системы с непрерывным временем с использованием этого метода всегда дает устойчивый результат с дискретным временем. Из всех доступных методов интегрирования методTrapezoidalдает наиболее близкое соответствие между свойствами частотной области дискретизированной системы и соответствующей системы с непрерывным временем.
|
Для методов
|
Для получения дополнительной информации о дискретном интегрировании см. описание блока Discrete-Time Integrator.
Зависимости
Чтобы использовать этот параметр, установите для параметра Time-domain: значение Discrete-time, и для параметра Controller: значение PID, PI или I.
| Значения |
|
| Значение по умолчанию |
|
| Имя для программного использования |
|
| Настраиваемый |
Нет |
| Вычисляемый |
Да |
#
Filter method: —
метод вычисления производной в дискретном регуляторе
Forward Euler | Backward Euler | Trapezoidal
Details
В дискретном времени дифференциальный член передаточной функции регулятора равен
где зависит от метода интегрирования:
-
Forward Euler— прямая прямоугольная (левая) аппроксимация:Этот метод лучше всего подходит для небольших интервалов между шагами расчета, когда предел Найквиста велик по сравнению с пропускной способностью регулятора. При больших временах дискретизации метод
Forward Eulerможет привести к нестабильности, даже в случае дискретизации системы, стабильной в непрерывном времени. -
Backward Euler— обратная прямоугольная (правая) аппроксимация:Преимущество метода
Backward Eulerсостоит в том, что дискретизация устойчивой системы с непрерывным временем с использованием этого метода всегда дает устойчивый результат с дискретным временем. -
Trapezoidal— билинейное приближение:Преимущество метода
Trapezoidalсостоит в том, что дискретизация устойчивой системы с непрерывным временем с использованием этого метода всегда дает устойчивый результат с дискретным временем. Из всех доступных методов интегрирования методTrapezoidalдает наиболее близкое соответствие между свойствами частотной области дискретизированной системы и соответствующей системы с непрерывным временем.
Для получения дополнительной информации о дискретном интегрировании см. описание блока Discrete-Time Integrator.
Зависимости
Чтобы использовать этот параметр, установите для параметра Time-domain: значение Discrete-time и установите флажок Use filtered derivative.
| Значения |
|
| Значение по умолчанию |
|
| Имя для программного использования |
|
| Настраиваемый |
Нет |
| Вычисляемый |
Да |
Controller parameters
#
Source: —
источник данных по коэффициентам усиления регулятора и коэффициенту фильтра
internal | external
Details
Активация внешних входов для параметров позволяет вычислять коэффициенты усиления ПИД-регулятора и коэффициенты фильтра вне блока и передавать их в блок в качестве входных сигналов.
-
internal— задайте коэффициенты усиления регулятора и коэффициент фильтра, используя параметры Proportional (P):, Integral (I):, Derivative (D): и Filter coefficient (N):. -
external— задайте коэффициенты ПИД-регулятора и коэффициент фильтра извне, используя входные порты P, I, D и N.
Внешний способ задания коэффициентов усиления полезен, например, при сопоставлении другой параметризации ПИД-регулятора с коэффициентами ПИД-регулятора блока. Можно также использовать внешний способ задания коэффициентов усиления для реализации ПИД-регулирования с программным усилением. В регулировании с программным изменением коэффициента усиления коэффициенты ПИД-регулятора определяются с помощью логики или других вычислений в модели и подаются на блок.
| Если вы используете внешние входные коэффициенты усиления, избегайте их зависимости от выходного сигнала OUT_1. При такой зависимости результирующая передаточная функция ПИД-регулятора приводит к алгебраической петле, поскольку для вычисления значения выходного сигнала блока необходимо знать это значение. Эта алгебраическая петля подвержена нестабильности и расходимости. Вместо выходного сигнала попробуйте выразить коэффициенты усиления через время и входной сигнал блока. Дополнительную информацию об алгебраических петлях см. в статье Алгебраическая петля. |
При подаче внешних коэффициентов усиления, изменения значений интегрального и дифференциального коэффициентов во времени интегрируются и дифференцируются соответственно. Это происходит потому, что как в непрерывном, так и в дискретном случае коэффициенты усиления применяются к сигналу до интегрирования или дифференцирования. Например, для непрерывного ПИД-регулятора с внешними входами интегрирующий член реализуется, как показано на следующем рисунке.
Внутри блока входной сигнал умножается на интегральный коэффициент , подаваемый извне, перед интегрированием. В результате получается:
Таким образом, коэффициент усиления интегратора включен в интеграл. Аналогично в производной части блока умножение на дифференциальный коэффициент предшествует дифференцированию, что приводит к дифференцированию коэффициента усиления производной .
| Значения |
|
| Значение по умолчанию |
|
| Имя для программного использования |
|
| Настраиваемый |
Нет |
| Вычисляемый |
Да |
# Proportional (P): — пропорциональный коэффициент
Details
Конечное вещественное значение пропорционального коэффициента. Если для параметра Form: установлено значение:
-
Parallel— пропорциональное действие не зависит от интегрального и производного воздействий. Например, для параллельного ПИД-регулятора с непрерывным временем передаточная функция имеет вид:Для регулятора параллельной формы с дискретным временем передаточная функция имеет вид:
где параметры Integrator method: и Filter method: определяют и соответственно.
-
Ideal— пропорциональный коэффициент применяется к сумме всех частей. Например, для ПИД-регулятора идеальной формы с непрерывным временем передаточная функция имеет вид:Для регулятора идеальной формы с дискретным временем передаточная функция имеет вид:
где параметры Integrator method: и Filter method: определяют и соответственно.
Зависимости
Чтобы использовать этот параметр, установите для параметра Controller: значение PID, PD, PI или P, а для параметра Source: значение internal.
| Значение по умолчанию |
|
| Имя для программного использования |
|
| Настраиваемый |
Нет |
| Вычисляемый |
Да |
# Integral (I): — интегральный коэффициент
Details
Конечное вещественное значение интегрального коэффициента.
Зависимости
Чтобы использовать этот параметр, установите для параметра Controller: значение PID, PI или I, а для параметра Source: значение internal.
| Значение по умолчанию |
|
| Имя для программного использования |
|
| Настраиваемый |
Нет |
| Вычисляемый |
Да |
# Derivative (D): — дифференциальный коэффициент
Details
Конечное вещественное значение дифференциального коэффициента.
Зависимости
Чтобы использовать этот параметр, установите для параметра Controller: значение PID или PD, а для параметра Source: значение internal.
| Значение по умолчанию |
|
| Имя для программного использования |
|
| Настраиваемый |
Нет |
| Вычисляемый |
Да |
# Filter coefficient (N): — коэффициент фильтрации производной
Details
Конечное вещественное значение коэффициента усиления фильтра. Коэффициент фильтра определяет положение полюса фильтра в дифференциальной части блока. Расположение полюса фильтра зависит от значения параметра Time-domain::
-
Continuous-time— положение полюса равноs = −N. -
Discrete-time— положение полюса зависит от значения параметра Filter method::-
Forward Euler— положение полюса фильтра равно -
Backward Euler— положение полюса фильтра равно -
Trapezoidal— положение полюса фильтра равно
-
Блок не поддерживает N = Inf (идеальная нефильтрованная производная). Если для параметра Time-domain: установлено значение Discrete-time, можно снять флажок Use filtered derivative, чтобы удалить фильтр производной.
Зависимости
Чтобы использовать этот параметр, установите для параметра Controller: значение PID или PD, а для параметра Source: значение internal.
| Значение по умолчанию |
|
| Имя для программного использования |
|
| Настраиваемый |
Нет |
| Вычисляемый |
Да |
# Use I*Ts (optimal for codegen) — использование интегрального коэффициента, умноженного на период дискретизации
Details
Для дискретных регуляторов с интегральным действием блок принимает интегральный коэффициент усиления на вход и внутри умножает его на период дискретизации в процессе интегрирования. Если установить этот флажок, это явно задаст интегральный коэффициент усиления, умноженный на период дискретизации. Это уменьшает количество внутренних вычислений и полезно, если нужно улучшить время выполнения сгенерированного кода.
Для непрерывных регуляторов активация этого параметра не влияет на интегральный коэффициент усиления.
Зависимости
Чтобы использовать этот параметр, установите для параметра Controller: значение PID, PI или I.
| Значение по умолчанию |
|
| Имя для программного использования |
|
| Настраиваемый |
Нет |
| Вычисляемый |
Да |
# Use externally sourced derivative — указать производную на входном порту блока
Details
Установите этот флажок, чтобы указать производную сигнала объекта управления непосредственно через входной порт ydot. Это полезно, если в модели есть сигнал производной, и нужно пропустить вычисление производной внутри блока.
Зависимости
Чтобы использовать этот параметр, установите для параметра Controller: значение PID или PD.
| Значение по умолчанию |
|
| Имя для программного использования |
|
| Настраиваемый |
Нет |
| Вычисляемый |
Да |
# Use filtered derivative — применение фильтра к производной
Details
Только для ПИД-регуляторов с дискретным временем: снимите этот флажок, чтобы заменить отфильтрованную производную нефильтрованным значением. В этом случае дифференциальный член передаточной функции регулятора станет равным
Для ПИД-регуляторов с непрерывным временем производная составляющая всегда фильтруется.
Зависимости
Чтобы использовать этот параметр, установите для параметра Time-domain: значение Discrete-time, а для параметра Controller: значение PID или PD.
| Значение по умолчанию |
|
| Имя для программного использования |
|
| Настраиваемый |
Нет |
| Вычисляемый |
Да |
Integrator and Filter initial conditions
# Integrator: — начальное условие интегратора
Details
Начальное условие интегратора, используемое для инициализации интегратора в начале моделирования.
Начальное условие интегратора не может быть NaN или Inf.
Зависимости
Чтобы использовать этот параметр, установите для параметра Controller: значение PID, PI или I.
| Значение по умолчанию |
|
| Имя для программного использования |
|
| Настраиваемый |
Нет |
| Вычисляемый |
Да |
# Differentiator: — начальное условие нефильтрованной производной
Details
Начальное условие нефильтрованной производной, используемое для инициализации дифференциатора в начале моделирования.
Начальное условие производной не может быть NaN или Inf.
Зависимости
Чтобы использовать этот параметр, установите для параметра Time-domain: значение Discrete-time, снимите флажок Use filtered derivative и для параметра Controller: установите значение PID или PD.
| Значение по умолчанию |
|
| Имя для программного использования |
|
| Настраиваемый |
Нет |
| Вычисляемый |
Да |
# Filter: — начальное условие фильтра
Details
Начальное условие фильтра, используемое для инициализации дифференциального фильтра в начале моделирования.
Начальное условие фильтра не может быть NaN или Inf.
Зависимости
Если для параметра Time-domain: установлено значение Discrete-time, то установите флажок Use filtered derivative, а для параметра Controller: установите значение PID или PD.
Если для параметра Time-domain: установлено значение Continuous-time, то для параметра Controller: установите значение PID или PD.
| Значение по умолчанию |
|
| Имя для программного использования |
|
| Настраиваемый |
Нет |
| Вычисляемый |
Да |
Tracking mode
# Enable tracking mode — активация отслеживания сигнала
Details
Отслеживание сигнала позволяет выходному порту блока следовать за следящим сигналом, который подается на порт TR. Когда отслеживание сигнала активно, разница между следящим сигналом и выходом блока подается обратно на вход интегратора с коэффициентом усиления , заданным параметром Tracking coefficient (Kt):. Отслеживание сигнала имеет несколько применений, включая плавную передачу управления и предотвращение насыщения в многоконтурных системах управления.
Плавная передача управления
Используйте отслеживание сигнала для достижения плавной передачи управления в системах, переключающихся между двумя регуляторами. Чтобы передать управление между ПИД-регулятором и другим регулятором, подключите выход регулятора к входному порту TR, как показано на следующем рисунке.

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

Подсистема внутреннего контура Inner Loop содержит блоки, показанные на следующем рисунке.

Поскольку ПИД-регулятор отслеживает выход внутреннего контура, его выход никогда не превышает насыщенный выход внутреннего контура.
Зависимости
Чтобы использовать этот параметр, установите для параметра Controller: значение PID, PI или I.
| Значение по умолчанию |
|
| Имя для программного использования |
|
| Настраиваемый |
Нет |
| Вычисляемый |
Да |
# Tracking coefficient (Kt): — коэффициент усиления контура обратной связи отслеживания сигнала
Details
При установке флажка Enable tracking mode разница между сигналом TR и выходным сигналом блока подается обратно на вход интегратора с коэффициентом усиления . Используйте этот параметр для задания коэффициента усиления в этом контуре обратной связи.
Для дискретных регуляторов, если установить флажок Use I*Ts (optimal for codegen), значение этого параметра будет равно , где — желаемый коэффициент усиления, а — период дискретизации.
Зависимости
Чтобы использовать этот параметр, установите флажок Enable tracking mode.
| Значение по умолчанию |
|
| Имя для программного использования |
|
| Настраиваемый |
Нет |
| Вычисляемый |
Да |
Output saturation
# Limit output — ограничение выходного сигнала блока заданными значениями насыщения
Details
Установка этого флажка позволяет ограничить выходной сигнал блока, поэтому отдельный блок Saturation после регулятора не потребуется. Это также позволяет активировать встроенный в блок механизм защиты от перенасыщения (см. описание параметра Anti-windup Method:).
Задайте пределы насыщения выходного сигнала с помощью параметров Upper limit: и Lower limit:. Можно также указать пределы насыщения извне через входные порты UpperLimit и LowerLimit, установив для параметра Source: значение external в группе параметров Output saturation на вкладке Saturation.
| Значение по умолчанию |
|
| Имя для программного использования |
|
| Настраиваемый |
Нет |
| Вычисляемый |
Да |
#
Source: —
источник пределов насыщения выходного сигнала
internal | external
Details
Используйте этот параметр, чтобы задать верхний и нижний пределы насыщения выходного сигнала блока.
-
internal— задайте пределы насыщения выходного сигнала, используя параметры Upper limit: и Lower limit:. -
external— задайте пределы насыщения выходного сигнала извне, используя входные порты UpperLimit и LowerLimit.
Зависимости
Чтобы использовать этот параметр, установите флажок Limit output в группе параметров Output saturation.
| Значения |
|
| Значение по умолчанию |
|
| Имя для программного использования |
|
| Настраиваемый |
Нет |
| Вычисляемый |
Да |
# Upper limit: — верхний предел насыщения выходного сигнала блока
Details
Укажите верхний предел для выходного сигнала блока. Выходной сигнал блока удерживается на верхнем пределе насыщения всякий раз, когда взвешенная сумма пропорционального, интегрального и дифференциального действий превышает это значение.
Зависимости
Чтобы использовать этот параметр, установите флажок Limit output в группе параметров Output saturation.
| Значение по умолчанию |
|
| Имя для программного использования |
|
| Настраиваемый |
Нет |
| Вычисляемый |
Да |
# Lower limit: — нижний предел насыщения выходного сигнала блока
Details
Укажите нижний предел для выходного сигнала блока. Выходной сигнал блока удерживается на нижнем пределе насыщения всякий раз, когда взвешенная сумма пропорционального, интегрального и дифференциального действий опускается ниже этого значения.
Зависимости
Чтобы использовать этот параметр, установите флажок Limit output в группе параметров Output saturation.
| Значение по умолчанию |
|
| Имя для программного использования |
|
| Настраиваемый |
Нет |
| Вычисляемый |
Да |
Anti-windup
#
Anti-windup Method: —
метод защиты от перенасыщения интегратора
none | back-calculation | clamping | external
Details
При установке флажка Limit output и если взвешенная сумма компонентов регулятора превышает заданные пределы выходного сигнала, выходной сигнал блока остается на заданном уровне. Однако выходной сигнал интегратора может продолжать расти (перенасыщение интегратора), увеличивая разницу между выходным сигналом блока и суммой компонентов блока. Другими словами, внутренние сигналы в блоке могут быть неограниченными, даже если выходной сигнал кажется ограниченным пределами насыщения. Без механизма предотвращения перенасыщения интегратора возможны два результата:
-
Если знак входного сигнала никогда не меняется, интегратор продолжает интегрировать до тех пор, пока не произойдет переполнение. Значение переполнения — это максимальное или минимальное значение для типа данных выходного сигнала интегратора.
-
Если знак входного сигнала меняется после того, как взвешенная сумма превысила пределы выходного сигнала, может потребоваться много времени, чтобы восстановить работу интегратора и вернуть взвешенную сумму в пределах границ насыщения блока.
В любом случае, производительность регулятора может снизиться. Для борьбы с эффектом перенасыщения без механизма защиты от перенасыщения может потребоваться расстройка регулятора (например, путем уменьшения коэффициентов усиления), что приведет к замедлению его работы. Чтобы избежать этой проблемы, активируйте механизм защиты от перенасыщения с помощью данного параметра.
-
none— механизм защиты от перенасыщения не используется. -
back-calculation— раскройте интегратор, когда выход блока насытится, подав на него обратно разницу между насыщенным и ненасыщенным управляющим сигналом. На следующем рисунке представлена схема обратной связи для непрерывного регулятора.
Используйте параметр Back-calculation coefficient (Kb): для задания коэффициента усиления контура обратной связи, предотвращающей насыщение. Обычно достаточно установить или для регуляторов с дифференциальным действием . Обратный расчет может быть эффективен для объектов с относительно большим временем задержки [1].
-
clamping— иногда ограничение сигнала называют условным интегрированием.Интегрирование останавливается, когда выполняются оба следующих условия:
-
Сумма компонентов блока превышает пределы выходного сигнала.
-
Входной сигнал интегратора и входной сигнал блока насыщения имеют одинаковый знак.
Интегрирование возобновляется, когда любое из этих условий перестает выполняться. Ограничение может быть полезно для объектов с относительно небольшим временем задержки, но может привести к плохой переходной характеристике при большом времени задержки [1].
-
-
external— встроенные методы защиты от перенасыщения основаны на том, что сумма компонентов блока превышает заданные пределы выходного сигнала блока. Если в модели есть насыщения или ограничения после блоков ПИД-регулятора, можно использовать входной порт extAW для реализации пользовательской логики защиты от перенасыщения. Этот блок также предоставляет сигнал перед интегратором на выходном порту preInt, который можно использовать в качестве входного сигнала для пользовательского алгоритма.
Зависимости
Чтобы использовать этот параметр, установите флажок Limit output в группе параметров Output saturation.
| Значения |
|
| Значение по умолчанию |
|
| Имя для программного использования |
|
| Настраиваемый |
Нет |
| Вычисляемый |
Да |
# Back-calculation coefficient (Kb): — коэффициент усиления контура обратной связи для предотвращения перенасыщения
Details
Метод back-calculation для предотвращения перенасыщения раскрывает интегратор, когда выход блока насыщается. Это происходит путем обратной связи с интегратором разницы между насыщенным и ненасыщенным управляющим сигналом. Используйте данный параметр для задания коэффициента усиления контура обратной связи для предотвращения перенасыщения. Для получения дополнительной информации см. описание параметра Anti-windup Method:.
Для дискретных регуляторов, если установить флажок Use I*Ts (optimal for codegen), значение этого параметра будет равно , где — желаемый коэффициент усиления, а — период дискретизации.
Зависимости
Чтобы использовать этот параметр, установите флажок Limit output в группе параметров Output saturation и для параметра Anti-windup Method: установите значение back-calculation.
| Значение по умолчанию |
|
| Имя для программного использования |
|
| Настраиваемый |
Нет |
| Вычисляемый |
Да |
Integrator saturation
# Limit output — ограничение выходного сигнала интегратора заданными значениями насыщения
Details
Установка этого флажка позволяет ограничить выходной сигнал интегратора в заданном диапазоне. Когда выходной сигнал интегратора достигнет пределов, действие интегратора прекратится, чтобы предотвратить перенасыщение интеграла. Задайте пределы насыщения с помощью параметров Upper limit: и Lower limit:.
| Значение по умолчанию |
|
| Имя для программного использования |
|
| Настраиваемый |
Нет |
| Вычисляемый |
Да |
# Upper limit: — верхний предел насыщения интегратора
Details
Укажите верхний предел для выходного сигнала интегратора. Выходной сигнал интегратора удерживается на этом значении всякий раз, когда в противном случае он превысил бы это значение.
Зависимости
Чтобы использовать этот параметр, установите флажок Limit output в группе параметров Integrator saturation.
| Значение по умолчанию |
|
| Имя для программного использования |
|
| Настраиваемый |
Нет |
| Вычисляемый |
Да |
# Lower limit: — нижний предел насыщения интегратора
Details
Укажите нижний предел для выходного сигнала интегратора. Выходной сигнал интегратора удерживается на этом значении всякий раз, когда в противном случае он опустился бы ниже этого значения.
Зависимости
Чтобы использовать этот параметр, установите флажок Limit output в группе параметров Integrator saturation.
| Значение по умолчанию |
|
| Имя для программного использования |
|
| Настраиваемый |
Нет |
| Вычисляемый |
Да |