Реализуйте ПИД-регуляторы, запланированные по графику усиления

Этот пример показывает, как реализовать управление, запланированное по усилению в Simulink® моделировать с использованием семейства ПИД-регуляторов. ПИД-регуляторы настроены на серию установившихся рабочих точек объекта, которая является сильно нелинейной.

Этот пример основан на работе, проделанной в семействе проектов ПИД-регуляторов для нескольких рабочих точек. В этом примере модель объекта управления реактора с непрерывным перемешиванием (CSTR) линеаризируется в установившихся рабочих точках, которые имеют выходные концентрации C = 2, 3,..., 8, 9. Нелинейность в объекте CSTR приводит к различной линеаризированной динамике при различных выходных концентрациях. В примере используется pidtune команда для генерации и настройки отдельного ПИД-регулятора для каждой концентрации выхода.

Можно ожидать, что каждый контроллер будет хорошо работать в небольшой рабочей области значений вокруг его соответствующей выходной концентрации. В этом примере показано, как использовать блок PID Controller для реализации всех этих контроллеров в запланированном строении с коэффициентом усиления. В таком строении коэффициенты ПИД изменяются при изменении выходной концентрации. Это строение обеспечивает хорошее управление ПИД при любой выходной концентрации в рабочей области значений системы управления.

Начните с контроллеров, сгенерированных в Проект семейства ПИД-регуляторов для нескольких рабочих точек. Если эти контроллеры еще не находятся в MATLAB® рабочей области, загрузите их из файла данных PIDGainSchedExample.mat.

load PIDGainSchedExample

Эта операция помещает две переменные в рабочее пространство MATLAB, Controllers и C. Область массива моделей Controllers содержит восемь pid модели, каждая из которых настроена на одну выходную концентрацию в векторе C.

Чтобы реализовать эти контроллеры в запланированном строении усиления, создайте интерполяционные таблицы, которые связывают каждую выходную концентрацию с соответствующим набором коэффициентов ПИД. Модель Simulink PIDGainSchedCSTRExampleModel содержит такие интерполяционные таблицы, сконфигурированные для обеспечения запланированного по усилению управления для объекта CSTR. Откройте эту модель.

open_system('PIDGainSchedCSTRExampleModel')

В этой модели блок PID Controller сконфигурирован так, чтобы иметь внешние порты входа для коэффициентов ПИД. Использование внешних входов позволяет коэффициентам изменяться при изменении выходной концентрации. Откройте блок, чтобы изучить строение.

Установка параметра Source равной external включает порты входа для коэффициентов.

Модель использует блок 1-D Lookup Table для каждого из коэффициентов ПИД. В целом для управления ПИД по расписанию усиления используйте вашу переменную планирования в качестве входа интерполяционной таблицы и соответствующие значения коэффициентов контроллера в качестве выхода. В этом примере выходная концентрация объекта CSTR является входом интерполяционной таблицы, и выходным коэффициентом является коэффициент ПИД, соответствующий этой концентрации. Чтобы увидеть, как сконфигурированы интерполяционные таблицы, откройте P Lookup Table блок.

Параметр Table data содержит массив пропорциональных коэффициентов для каждого контроллера, Controllers.Kp. (Для получения дополнительной информации о свойствах pid модели в Controllers массив, см. pid.) Каждая запись в этом массиве соответствует записи в массиве C который вводится в параметр Breakpoints 1. Для значений концентрации, которые находятся между входами в C, а P Lookup Table блок выполняет линейную интерполяцию, чтобы определить значение пропорционального коэффициента. Чтобы настроить интерполяционные таблицы для интегральных и производных коэффициентов, сконфигурируйте I Lookup Table и D Lookup Table блоки, использующие Controllers.Ki и Controllers.Kd, соответственно. В данном примере это строение уже выполняется в модели.

pid модели в Controllers массив выражает производный коэффициент фильтра как постоянную по времени, Controllers.Tf (см. pid страница с описанием для получения дополнительной информации). Однако PID Controller блок выражает производный коэффициент фильтра как обратную константу, N. Поэтому N Lookup Table блок должен быть сконфигурирован так, чтобы использовать обратное значение каждого значения в Controllers.Tf. Откройте N Lookup Table блок для просмотра строения.

Симулируйте модель. The Concentration Setpoint блок сконфигурирован для прохождения последовательности уставок, которая охватывает рабочую область значений между C = 2 и C = 9 (показан желтым цветом на возможностях). Симуляция показывает, что запланированная по усилению строение достигает хорошего отслеживания уставки в этой области значений (розовый на возможностях).

Как показано Проект Семейства ПИД-контроллеров для нескольких рабочих точек, объекта CSTR нестабильен в рабочей области значений между C = 4 и C = 7. Планируемые по усилению ПИД-регуляторы стабилизируют объект и дают хорошее отслеживание уставки через всю нестабильную область. Чтобы полностью подтвердить систему управления нелинейному объекту, примените множество тестовых последовательностей уставок, которые тестируют эффективность отслеживания для шагов различных размеров и направлений в рабочей области значений. Можно также сравнить эффективность с проектом без табличного управления, установив все записи в Controllers массив равен.

См. также

| | |

Похожие темы