Рис.9.1. Окно браузера библиотек
Рис.9.2. Раздел библиотеки NCD Blockset
Рассматриваемые блоки могут применяться, в частности, в системах моделирования, где качество функционирования целесообразно оценивать интегральным квадратичным критерием или стандартным отклонением ошибки.
136
Блок NCD Output является основным в рассматриваемом наборе блоков. Он имеет свое рабочее окно и меню и позволяет в интерактивном режиме выполнять следующие операции:
-задавать требуемые ограничения во временной области на любой сигнал оптимизируемой системы;
-указывать параметры, подлежащие оптимизации;
-указывать неопределенные параметры;
-проводить параметрическую оптимизацию системы с учетом заданных ограничений.
Типовой сеанс работы в среде Simulink с использованием возможностей и блоков NCD Blockset состоит из ряда стадий, описанных ниже.
1.В среде Simulink создается модель исследуемой динамической системы (в общем случае нелинейной).
2.Входы блоков NCD Outport соединяются с теми сигналами системы, на которые накладываются ограничения. Этими сигналами могут быть, например, выходы системы, их среднеквадратические отклонения и т. д.
3.В режиме командной строки MATLAB задаются начальные значения параметров, подлежащих оптимизации.
4.Двойным щелчком на пиктограмме NCD Output данные блоки «раскрываются».
5.При помощи мыши нужным образом изменяются конфигурации и размеры областей ограничений для нужных сигналов системы.
6.С помощью меню блока NCD Output задается интервал дискретизации (один или два процента от длительности процесса моделирования) и указываются имена (идентификаторы) параметров системы, подлежащих оптимизации.
7.Задаются неопределенные параметры системы, указываются их номинальные значения.
8.При необходимости сформированные ограничения сохраняются в виде файла с помощью команды меню Save (позднее они, естественно, могут быть загружены с помощью команды Load).
9.ПроцессоптимизациисистемыинициализируетсянажатиемкнопкиStart.
9.2. Оптимизация коэффициента передачи И-регулятора
Рассмотрим пример параметрической оптимизации замкнутой системы автоматического регулирования (рис. 9.3).
Данная система представляет собой замкнутую структуру, состоящую: 1) из объекта регулирования, который в модели отображен звеном 2-го порядка (блок Transfer Fcn) и звеном транспортного запаздывания (блок
Transport Delay);
137
Рис.9.3. Пример использования системы NCD
2)интегрального регулятора (И-регулятора), отображаемого последовательно соединенными пропорциональным звеном с коэффициентом пропорциональности Kint и интегрирующим звеном с ограничением на вы-
ходной сигнал (блок Limited Integrator);
3)контура обратной связи и звена сравнения Sum.
Вмодель также введены источник входного сигнала в виде единичного скачка и NCD-блок типа NCD Output, подключенный к выходу системы (здесь данный блок имеет имя NCD Outport 1).
Нетрудно видеть, что в данном случае контролируемым сигналом является реакция системы на единичный скачок, то есть ее переходная функция. Настраиваемым (оптимизируемым) параметром является коэффициент Kint, а ограничения, накладываемые на переходную функцию, формулируются следующим образом:
- максимальное перерегулирование - не более 10 %; - время нарастания - не более 10 с; - длительность переходного процесса - не более 30 с.
Вкомандной строке MATLAB наберем:
Kint=0.3
Далее двойным щелчком мыши откроем рабочее окно блока NCD Outport 1. В графической части окна показаны границы контролируемого сигнала, устанавливаемые по умолчанию. Легко заметить, что они не соответствуют заданным ограничениям, поэтому изменим их. Для этого, используя указатель мыши, переместим вертикальные и горизонтальные линии ограничений до положений, соответствующих нашим требованиям.
Заметим, что точную установку линий ограничения можно провести, выбирая требуемые линии с помощью щелчка левой кнопкой мыши (выбранная линия изменяет цвет - становится белой) и используя затем команду меню Edit > Edit constraint. В появляющемся окне редактора ограничений (Constraint Editor) в строке снизу необходимо задать начальную и конечную точки прямой в формате [x1 y1 х2 у2], нажав затем кнопку Done.
Точно такие же действия можно обеспечить, не используя пункты ме-
138
ню, а просто щелкнув на соответствующей линии правой кнопкой мыши. Следующий этап - указание переменных, подлежащих оптимизации.
Выбор команды меню Optimization>Parameters приведет к открытию диалогового окна задания настраиваемых параметров и интервала дискретиза-
ции - Optimization Parameters (рис. 9.4).
Рис.9.4. Настройка блока NCD Outport
Рис.9.5. Результаты оптимизации
139
В верхнем поле данного окна (Tunable Variables) введем имя настраиваемого параметра Kint (если таких параметров несколько, то их имена разделяются пробелами или запятыми), а величину интервала дискретизации (Discretization interval) установим равной 0,5 (ввод завершается нажатием кнопки Done).
Процесс поиска решения запускается нажатием кнопки Start окна блока NCD Outport. Данный поиск иллюстрируется начальной и конечной формами переходного процесса, а также выходной информацией MATLAB.
Выведенные сообщения носят в основном служебный характер (главное из них говорит о том, что процесс поиска решения завершился успеш-
но - Optimization Converged Successfully). Что же касается формы переход-
ного процесса для оптимизированной системы, то из рис. 9.5 видно, что она полностью соответствует заданным ограничениям.
Найденную оптимальную величину параметра Kint можно узнать, набрав в командной строке имя данного параметра.
Удаление графиков процессов в окне блока NCD Output производится с помощью команды меню Edit > Delete plots (или одновременным нажатием клавиш Ctrl+X).
9.3. Меню окна блока NCD Output
Меню File (Файл) содержит стандартные команды Load (Загрузить), Close (Закрыть), Save (Сохранить) и Print (Печатать). Действия, выполняемые при выборе любой из данных команд, относятся к графикам заданных временных ограничений, отображаемым в основном окне рассматриваемого блока. Меню Edit (Правка) содержит уже рассмотренные команды Edit constraint и Delete plots, а также команду Undo (Отменить), производящую отмену последнего действия.
Меню Options (Настройка) содержит следующие команды:
-Initial response (Начальный отклик). Выбор данной команды приводит
квыводу (в основном окне блока NCD Output) отклика исследуемой системы при начальных значениях ее параметров;
-Reference input (Задающий вход). Выбор данной команды приводит к открытию диалогового окна, в котором при желании - для вывода соответствующего графика - можно указать параметры входного задающего сигнала системы. Никакого влияния на процессы моделирования и оптимизации данные параметры не оказывают;
-Step response (Характеристики переходного процесса). Выбор этой команды приводит к открытию диалогового окна, в котором задаются параметры переходного процесса, такие как его длительность (Settling time), время нарастания (Rise time), максимальное перерегулирование (Percent overshoot), максимальное «недорегулирование» (Percent undershoot), соот-
140