В этом примере показано, как использовать антизаключительные схемы предотвратить завершение интегрирования в ПИД-регуляторах, когда приводы насыщаются. Мы используем блок PID Controller в Simulink®, который показывает два встроенных антизаключительных метода, back-calculation
и clamping
, а также режим отслеживания, чтобы обработать более комплексные сценарии.
Объект, которым будут управлять, является влажным процессом первого порядка с потерей времени.
Мы запускаем путем открытия модели.
Рисунок 1: модель Simulink управления ПИДом объекта с входной насыщенностью.
Чтобы открыть эту модель, введите sldemo_antiwindup
в терминале MATLAB®.
ПИД-регулятор был настроен с насыщением, проигнорированным с помощью тюнера ПИДа Simulink® Control Design™.
Управляемый объект является процессом первого порядка с потерей времени, описанной
Объект знал пределы входной насыщенности [-10, 10], которые составляются в блоке Saturation, пометил Plant Actuator. Блок PID Controller в Simulink показывает два встроенных антизаключительных метода, которые позволяют блоку PID Controller составлять доступную информацию о входной насыщенности объекта.
Во-первых, мы исследуем эффект насыщения на с обратной связью, когда модель насыщения не рассматривается блоком PID Controller. Симуляция модели в рисунке 1 генерирует результаты, показанные ниже.
Рисунок 2: Заданное значение по сравнению с измеренным выходом без антизавершения.
Рисунок 3: Controller выход и насыщаемый вход без антизавершения.
Рисунки 2 и 3 подсвечивают две из проблем, которые возникают при управлении системой с входной насыщенностью:
Когда заданное значение равняется 10, управляющий сигнал ПИДа достигает установившегося приблизительно в 24 вне области значений привода. Контроллер поэтому действует в нелинейной области, где увеличение управляющего сигнала не оказывает влияния на систему выход, условие, известное как доведение. Обратите внимание на то, что dc-усиление объекта является единицей, и поэтому нет никакой причины для контроллера выхода, чтобы иметь установившееся значение вне области значений привода.
Когда заданное значение становится 5, существует значительная задержка перед ПИД-регулятором, к которому возвращается выход в области значений привода.
Разработка ПИД-регулятора, чтобы составлять эффект насыщения будет улучшать свою производительность, позволяя ему действовать в линейной области наиболее часто и восстановиться быстро с нелинейности. Антизаключительная схема является одним способом достигнуть этого.
Антизаключительный метод заднего вычисления использует обратную связь, чтобы разрядить внутренний интегратор ПИД-регулятора, когда контроллер поражает заданные пределы насыщения и вводит нелинейную операцию. Чтобы включить антизавершение, перейдите к Вкладке "Дополнительно" ПИДа в диалоговом окне блока; выберите Limit выход; и введите пределы насыщения объекта. Затем выберите заднее вычисление из Антизаключительного меню метода и укажите, что заднее вычисление получает Kb
. Инверсия этого усиления является постоянной времени антизаключительного цикла. В этом примере усиление заднего вычисления выбрано, чтобы быть 1. Для получения дополнительной информации о том, как выбрать это значение, смотрите Ссылку [1].
Рисунок 4: Включение антизаключительного метода заднего вычисления.
Если заднее вычисление включено, блок имеет внутренний цикл отслеживания, который разряжает Integrator выход.
Рисунок 5: представление под маской блока PID Controller с задним вычислением.
Рисунки 6 и 7 иллюстрируют результат симуляции модели с активированным антизавершением. Отметьте, как быстро управляющий сигнал ПИДа возвращается к линейной области и как быстро цикл восстанавливается с насыщения.
Рисунок 6: Заданное значение по сравнению с измеренным выходом с задним вычислением.
Рисунок 7: Controller выход и насыщаемый вход с задним вычислением.
Рисунок 7 показывает что контроллер выход u(t)
и влажный вход SAT(u)
совпадите друг с другом, потому что Limit выход включен.
Чтобы лучше визуализировать эффект антизавершения, рисунок 8 иллюстрирует, что объект измерил выход y(t)
с и без антизавершения.
Рисунок 8: Измеренный выход с и без антизавершения.
Другая обычно используемая антизаключительная стратегия основана на условном интегрировании. Чтобы включить антизавершение, перейдите к Вкладке "Дополнительно" ПИДа в диалоговом окне блока; выберите Limit выход; и введите пределы насыщения объекта. Затем выберите зажим из Антизаключительного меню метода.
Рисунок 9: Заданное значение по сравнению с измеренным выходом с зажимом.
Рисунок 10: Controller выход и насыщаемый вход с зажимом.
Рисунок 10 показывает что контроллер выход u(t)
и влажный вход SAT(u)
совпадите друг с другом, потому что Limit выход включен.
Для получения дополнительной информации о том, когда использовать зажим, смотрите Ссылку [1].
Ранее обсужденные антизаключительные стратегии использовали встроенные методы, чтобы обработать информацию о насыщении, предоставленную блоку через его диалоговое окно. Для тех встроенных методов, чтобы работать, как предназначено, нужно соблюдать два условия:
Пределы насыщения объекта известны и могут быть введены в диалоговое окно блока.
Выходной сигнал ПИД-регулятора является единственным сигналом, питающим привод.
Эти условия могут быть строгими при обработке общих антизаключительных сценариев. Блок PID Controller показывает режим отслеживания, который позволяет пользователю настраивать антизаключительный цикл заднего вычисления внешне. Следующий двум примерам, как рассматривается, иллюстрирует использование режима отслеживания в антизаключительных целях:
Антизавершение для влажных приводов с каскадной динамикой
Антизавершение для ПИДа управляет с Feedforward
В следующей модели привод имеет комплексную динамику. Это распространено, когда привод имеет свою собственную динамику с обратной связью. ПИД-регулятор находится во внешнем цикле и рассматривает динамику привода как внутренний цикл, или просто каскадную влажную динамику как показано в рисунке 1.
Рисунок 11: модель Simulink ПИД-регулятора с каскадной динамикой привода.
Чтобы открыть эту модель, введите sldemo_antiwindupactuator
в терминале MATLAB.
В этом случае успешная антизаключительная стратегия требует возвращения привода выход к порту отслеживания блока PID Controller как показано в рисунке 11. Сконфигурировать tracking mode
из блока PID Controller перейдите к Вкладке "Дополнительно" ПИДа в диалоговом окне блока; выберите режим отслеживания Enable; и задайте усиление Kt
. Инверсия этого усиления является постоянной времени цикла отслеживания. Для получения дополнительной информации о том, как выбрать это усиление, смотрите Ссылку [1].
Рисунок 12: Включение режима отслеживания блока PID Controller.
Рисунки 13 и 14 показывают что измеренный выход y(t)
объекта и контроллер выход
u(t)
почти сразу отвечают на изменения в заданном значении. Без антизаключительной схемы эти ответы были бы вялы с длительными задержками.
Рисунок 13: Заданное значение по сравнению с измеренным выходом.
Рисунок 14: Controller выход и эффективный влажный вход.
В другой настройке общего контроля привод получает управляющий сигнал, который является комбинацией управляющего сигнала ПИДа и управляющего сигнала feedforward.
Чтобы точно создать антизаключительный цикл заднего вычисления, сигнал отслеживания должен вычесть вклад сигнала feedforward. Это позволяет блоку PID Controller знать, что его доля эффективного управляющего сигнала применилась к приводу.
Следующая модель включает управление feedforward.
Рисунок 15: модель Simulink ПИД-регулятора с feedforward и входная насыщенность объекта.
Усиление feedforward выбрано, чтобы быть единицей здесь, потому что объект имеет dc-усиление 1.
Чтобы открыть эту модель, введите sldemo_antiwindupfeedforward
в терминале MATLAB.
Рисунки 16 и 17 показывают что измеренный выход y(t)
объекта и контроллер выход
u(t)
почти сразу отвечают на изменения в заданном значении. Когда заданное значение будет равняться 10, отметьте как в рисунке 17 контроллер выход u(t)
уменьшает, чтобы быть в области значений привода.
Рисунок 16: Заданное значение по сравнению с измеренным выходом без антизавершения.
Рисунок 17: Controller выход и насыщаемый вход с антизавершением.
Блок PID Controller поддерживает несколько функций, которые позволяют ему обрабатывать заключительные проблемы контроллера согласно промышленным сценариям, с которыми обычно сталкиваются.
К. Острем, Т. Хэггланд, усовершенствованное управление ПИДом, ISA, Ресерч-Трайэнгел-Парк, NC, август 2005.