В этом примере вы узнаете, как использовать приложение Control System Tuner для разработки контроллера для нелинейной установки, смоделированной в Simulink. Выполняются следующие задачи:
Настройка модели и приложения для настройки компенсатора
Настройка компенсатора первого порядка с использованием конструкции на основе пассивности
Моделирование нелинейной реакции с замкнутым контуром.
Модель watertank_comp_design, показанная на рисунке ниже, моделирует контур обратной связи для регулирования уровня воды в резервуаре для воды. Блок контроллера содержит настраиваемый компенсатор первого порядка.
mdl = 'cst_watertank_comp_design';
open_system(mdl)

Подсистема Water Tank моделирует динамику воды в резервуаре. Вода поступает в бак сверху со скоростью, пропорциональной напряжению В, приложенному к насосу. Вода выходит через отверстие в основании резервуара со скоростью, пропорциональной квадратному корню высоты воды H в резервуаре. Наличие квадратного корня в расходе воды делает установку нелинейной.

Нелинейная модель для потока воды


где
обозначает высоту воды в резервуаре
обозначает напряжение, приложенное к насосу
обозначает площадь поперечного сечения резервуара,
и
константы, связанные с расходом в резервуар и из него
Эта система пассивна с функцией хранения
, поскольку

По теореме пассивности взаимное соединение отрицательной обратной связи двух строго пассивных систем
и
всегда стабильно.

Поскольку система резервуаров для воды является пассивной, имеет смысл требовать, чтобы контроллер был строго пассивным, чтобы гарантировать стабильность по замкнутому контуру даже при неточной модели установки.
Для настройки блока контроллера можно использовать приложение «Тюнер системы управления».
Шаг 1. Откройте приложение «Настройка системы управления». В окне модели Simulink на вкладке «Приложения» в галерее «Приложения» щелкните «Настройка системы управления».
Шаг 2: Запустите селектор настроенных блоков с помощью кнопки «Выбрать блоки» на вкладке «Настройка»

Шаг 3. Выберите блок Controller (Контроллер) и нажмите кнопку OK. Теперь этот блок отображается в списке Tuned Blocks (Настроенные блоки).

Шаг 4: Укажите цели настройки. Здесь есть две основные цели:
Отслеживание ступенчатых изменений уровня воды
Сделать контроллер пассивным
Щелкните выпадающий список Создать цель (New Goal) и сначала добавьте цель Пассивность (Passivity).

Настройте эту цель так, чтобы она применялась только к блоку контроллера. Это делается путем установки входного сигнала на «Требуемый уровень воды», выходного сигнала на выход блока контроллера и открытия контура на выход блока контроллера. Также укажите минимальные индексы пассивности 0,01 на входах и выходах для обеспечения строгой пассивности.

Затем добавьте цель отслеживания ссылок из выпадающего списка Новая цель. Настройте эту цель на время отклика 1 секунду.

Наконец, нажмите кнопку Управление целями (Manage Goals) на вкладке Настройка (Tuning) и отметьте цель Пассивность (Passivity) как жесткое ограничение настройки.

Шаг 5: Вы готовы настроить блок контроллера. Нажмите кнопку «Настройка». Результаты настройки можно просмотреть рядом, выбрав Левое/Правое (Left/Right) на вкладке Вид (View).

Для дальнейшего анализа этих результатов можно создать сценарий MATLAB, воспроизводящий этот процесс настройки.

Можно просмотреть график Боде настроенного контроллера. Нажмите кнопку New Plot (новый график) на вкладке Control System (система управления). В раскрывающемся списке выберите Новый объект (New Bode).

Ответ контроллера может быть указан следующим образом.

Нажмите кнопку «Печать». График модели показан на следующем рисунке.

С помощью настроенного контроллера можно также моделировать нелинейную реакцию с замкнутым контуром. Сначала обновите блок контроллера, щелкнув Обновить блоки на вкладке Система управления.

В модели Simulink дважды щелкните блок Scope, чтобы открыть окно Scope, а затем смоделировать модель.

Нелинейный ответ настроенной системы управления появляется в окне Scope (Область). Это моделирование показывает, что производительность отслеживания удовлетворительна.