Оптимизация параметров cистемы автоматического регулирования

Лабораторная работа №7 по курсу «Управление в технических системах»

Цель работы

Формулировка заданий на параметрическую оптимизацию САР

Во всех лабораторных работах по курсу «УТС» имеется обучающая часть, в которой Вы «по инструкции» знакомились с методами и процедурами исследования САР в SimInTech. В качестве объекта исследования в обучающей части лабораторных работ используется «базовая» САР, математическая модель динамики которой в виде структурной схемы имела вид, близкий Рисунок 1.

Рисунок 1. Структурная схема тестовой САР

Объект управления с передаточной функцией W₂(s), соответствовал типовому звену (колебательному) со значениями k₂ = 1.0; T₂ = 1 c; коэффциент демпфирования b = 0.5; начальные условия – нулевые.

Местная обратная связь с передаточной функцией W₃(s), соответствовала типовому звену – апериодическому 1-го порядка со значениями k₃ = 0.6; T₃ = 5 c.

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

Напомним заключительное задание в Вашей 1-ой учебной задаче.

Определить значение скоростной эффективности интегрирующего регулятора (коэффициента усиления k₁ в блоке Интегратор), обеспечивающей перевод замкнутой линейной САР из состояния y = 0 при t = 0 в состояние y = 0.8 ± 0.04 (5-ти процентный допуск) при следующих ограничениях:

Формулировка задания стилистически несколько отличается от “оригинала” (см. методические указания к лабораторной работе № 4), однако цели совпадают…

Используя при выполнении 1-ой учебной задачи метод прямого моделирования, Вы всего за три “попытки(!? ) определили “оптимальное” значение скоростной эффективности регулятора ( k₁ = 0.35 ), при котором переходной процесс в САР одновременно удовлетворял обоим вышеприведенным ограничениям…

Очевидно, что при отсутствии “рекомендаций” по варьированию значений k₁ , поиск “оптимального” значения мог бы существенно затянуться…

Если бы число варьируемых параметров в 1-ой учебной задаче было бы два (например, k₁ и k₃), то стратегия “ручного” поиска была бы далеко не очевидной…

В SimInTech создан специальный блок «Оптимизация параметров модели», находящийся в закладке «Исследования» который позволяет выполнить автоматизированный поиск таких значений варьируемых параметров САР, при которых динамические характеристики САР (и переходной процесс, в частности) удовлетворяют одному или нескольким условиям (критериям) “оптимальности”.

Использование возможностей SimInTech для решения задач оптимального управления и параметрической оптимизации рассмотрим в процессе выполнения очередной обучающей задачи, которую Вам предлагается выполнить опять же в режиме пошаговых инструкций…

Рассмотрим основные процедуры работы по оптимизации на примере “базовой” САР из 1-го учебного задания при тех же условиях оптимальности (по времени входа в 5-ти процентную “трубку” и по отсутствию перерегулирования)…

Последовательность действий по оптимизации

Приведем перечень основных этапов, которые необходимо выполнить в SimInTech для реализации оптимизации:

Откройте проект, соответствующий 1-ой учебной задаче, и восстановите исходное состояние САР в замкнутом состоянии. Если проекта нет в числе сохраненных, Вы способны за несколько минут сформировать новый проект, близкий Рисунок 1.

Задание варьируемого параметра как глобального сигнала проекта

Процедура задания глобальных сигналов выполняется в специальном окне с заголовком «Редактор сигналов проекта». Для вызова данного окна необходимо в главном меню выбрать пункт «Сервис» подпункт «Сигналы…», Рисунок 2.

Рисунок 2. Меню вызова окна редактирования списка сигналов проекта.

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

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

Для оптимизации тестовой задачи мы создадим три сигнала:

Создайте три сигнала и настройте их атрибуты (как показано на Рисунок 3).

Рисунок 3. Окно настройки редактора сигналов проекта.

Переменные данного списка (сигналы) могут быть использованы в качестве свойств блоков расчетной схемы, этим мы и воспользуемся.

В свойствах интегрирующего блока W₁(s) вместо численного значения коэффициента усиления задайте переменную k₁. (см. Рисунок 4).

Рисунок 4. Настройка свойств блока с использованием глобального сигнала.

Расчет локальных критериев оптимизации

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

Поместите на схему блок «Субмодель» из закладки «Субструкутры» и осуществите двойной клик для входа в субмодель. Поместите на схему два блока «Порт входа». Рекомендуем поместить их с левой стороны один под другим, тогда их порядок будет соответствовать порядку входов блока схеме верхнего уровня.

Поместите на схему следующие блоки:

Соберите схему как показано на Рисунок 5.

Рисунок 5. Схема расчета параметров переходного процесса

На схеме, изображенной на рисунке, добавлены подписи блокам для пояснения работы схемы.

Переместите курсор на блок с подписью Величина «трубки» («Ключ-3») и измените:

В 1-ой диалоговой строке «Значения уставок» [0.5] на 0.04 или (что эквивалентно) на 0.05*0.8, что соответствует 5%-й “трубке” от будущего установившегося значения регулируемой переменной, равного 0.8.

Переместите курсор на 1-й блок Запись в список сигналов и, выполнив 2-х кратный щелчок левой кнопкой “мыши”, откройте его диалоговое окно.

Введите в строке «Имена сигналов»tpp . Закройте диалоговое окно этого блока.

Переместите курсор на 2-й блок Запись в список сигналов и, выполнив 2-х кратный щелчок левой кнопкой “мыши”, откройте его диалоговое окно.

Введите в строке «Имена сигналов»dy. Закройте диалоговое окно этого блока.

В блоке «Нижний или верхний предел», установите «Тип операции» – Максимум

Данный блок обеспечит запись максимального значения величины полученной из входного порта в список сигналов dy (см. Рисунок 5).

Схема расчета времени переходного процесса работает следующим образом:

На средний (логический) входной порт Ключа-3 ( Величина “трубки”) подается модуль сигнала рассогласования.

Если этот сигнал больше уставки (5 % от 0.8), то на выход Ключа-3 передается сигнал с 3-го (нижнего) входного порта, т.е. текущее модельное время.

Если управляющий сигнал (на среднем входном порту) меньше уставки, то на выход Ключа-3 передается сигнал с 1-го (верхнего) входного порта, т.е. тот же сигнал, но задержанный на один шаг интегрирования.

Задержку на 1 шаг интегрирования осуществляет типовой блок с подписью Время переходного процесса (типовой блок Задержка на шаг квантования из библиотеки Дискретные звенья).

Таким образом после завершения расчета в переменных tpp и dy будет находиться значение времени переходного процесса и максимальное значение выхода из W₂(s).

Закройте субмодель, выполнив 2-х кратный щелчок “мышью” в свободном месте субмодельного Схемного окна (только не под каким-либо блоком) или нажав на клавишу Pg Up.

На внешней схеме подключите к входным портам входа субмодели, значения сигнала рассогласования и выходное значение блока W₂(s), как показано на Рисунок 6.

Рисунок 6. Структурная схема тестовой САР с блоком расчета параметров переходного процесса

Настройка блока оптимизация

Поместите на схему следующие блоки:

Соберите схему как показано на Рисунок 7.

Рисунок 7. Структурная схема тестовой САР с блоком оптимизации

Переместите курсор на 1-й блок Чтение из списка сигналов и, выполнив 2-х кратный щелчок левой кнопкой “мыши”, откройте его диалоговое окно.

Введите в строке «Имена сигналов» dy. Закройте диалоговое окно этого блока.

Переместите курсор на 2-й блок Чтение из списка сигналов и, выполнив 2-х кратный щелчок левой кнопкой “мыши”, откройте его диалоговое окно.

Введите в строке «Имена сигналов» tpp. Закройте диалоговое окно этого блока.

В блоке «Нижний или верхний предел», установите «Тип операции» – Максимум

Данный блок обеспечит запись максимального значения величины полученной из входного порта в список сигналов dy (см. Рисунок 5).

Переместите курсор на блок Запись в список сигналов и, выполнив 2-х кратный щелчок левой кнопкой “мыши”, откройте его диалоговое окно.

Введите в строке «Имена сигналов» k₁. Закройте диалоговое окно этого блока.

Поясним работу данной схемы: два сигнала, максимальная величина занчения – dy, и время переходного процесса – tpp, рассчитанные в блоке субмодель, упаковываются в вектор и передаются в блок оптимизации, данный блок рассчитывает значение, передаваемое в сигнал k₁, который, в свою очередь определяет коэффициент усиления в блоке W₁(s), и должен обеспечить заданную характеристику переходного процесса.

Рассмотрим настройку блока Оптимизация:

Режим оптимизации параметровПо полному переходному процессу

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

Блок может вычислять оптимальные значения и во время переходного процесса, но для этого необходимо использовать критерии оптимизации рассчитываемые в каждый момент времени.

Периодичность анализа критериев оптимизации при расчете в динамике1

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

Начальное приближение выходов блока[1]

В данном свойстве задаётся вектор начальных значений оптимизируемых параметров, в нашем случае оптимизируемый параметр один k₁.

Минимальные значения выходов блока[0]

Максимальное значение выходов блока[10]

Данными свойствами мы ограничиваем диапазон поиска оптимальных параметров системы.

Абсолютная точность подбора значений выходов[0.001]

Это значение задаёт точность при расчете оптимизируемых параметров.

Начальное приращение выходов[0.001]

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

Минимальные значения входных критериев оптимизации[0.76, 0]

В нашем примере вектор критериев состоит из двух критериев оптимизации:

первое значение – величина перерегулирования, по условию задачи мы должны на выходе попасть в трубку 5% от заданной величины, что составляет 0,04, этому соответствует минимальное значение 0,76

второе значение – время переходного процесса. Минимальное время у нас не ограничено, чем меньше, тем лучше поэтому оставляем 0.

Максимальные значения входных критериев оптимизации[0.8, 20]

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

Тип суммарного критерия оптимизации – Аддитивный

Метод оптимизацииПоиск-2.

Остальные свойства можно оставлять по умолчанию. См. Рисунок 8

Нажмите кнопку ОК. Таким образом мы настроил блок оптимизации.

Рисунок 8. Настройка блока оптимизация

Расчет оптимального регулятора

Рисунок 9. Окно сообщений о завершении расчета

Рисунок 10. График оптимизированного переходного процесса

Для того что бы посмотреть значение сигнала k₁, в который записано оптимизированное значение коэффициента, дважды кликните на блоке W₁(s), в диалоговом окне можно менять отображение свойств либо в виде переменных, либо в виде их рассчитанных значений, для переключения служит символ правом верхнем углу окна. (см. Рисунок 11 - Рисунок 12)

Рисунок 11. Свойства интегратора в виде выражений

Рисунок 12. Свойства интегратора в виде значений

Заключение

Демонстрационно-ознакомительная задача на этом завершена. Сохраните задачу на диск... Рассмотренные в настоящей работе базовые приемы работы используются при ежедневной работе в SimInTech, однако здесь рассмотрен только самый минимальный набор возможностей программы.