проектирования и анализа систем управления с обратной связью“

Красноярский государственный университет цветных металлов и золота

Кафедра автоматизации производственных процессов

ЦМ

 


Дисциплина Применение ЭВМ в СУ

Красноярск 2005 г.

Лабораторная работа № 9

“Изучение пакета CtrlLAB системы MATLAB для

проектирования и анализа систем управления с обратной связью“

ЦЕЛЬ РАБОТЫ

1. Ознакомиться с составом и назначением программного пакета CtrlLAB.

2. Ознакомиться с основными методами и примерами использования программного пакета CtrlLAB для моделирования и анализа систем управления.

3. Освоить расчет, настройку и анализ систем с обратной связью в среде CtrlLAB системы MATLAB.

МЕТОДИКА ВЫПОЛНЕНИЯ РАБОТЫ

1.   Открыть рабочее окно программы CtrlLAB.

2.   Изучить теоретические сведения о пакете CtrlLAB.

3.   Закончив изучение теоретических сведений о пакете CtrlLAB, выполнить задание по моделированию СУ.

1 Основные сведения о пакете CtrlLAB 3.0

CtrlLAB – это основанная на MATLAB программа, которая может быть использована при анализе и разработке SISO (система с одним входом и одним выходом) систем управления. В программе широко используются возможности графического интерфейса пользователя (GUI) MATLAB v5.0 и выше, чтобы сделать ее гибким, удобным для пользователя и мощным приложением как для обучения, так и для проектирования.

Впервые CtrlLAB был опубликован на анонимном сайте MathWorks как пользовательская программа для MATLAB и с тех пор привлек к себе много внимания. Сейчас CtrlLAB является гораздо более совершенным приложением и предоставляет гораздо больше полезных и надежных функций.

НЕ нашли? Не то? Что вы ищете?

Основными возможностями CtrlLAB являются:

1.  Ввод моделей, включая моделирование SIMULINK.

2.  Показ моделей.

3.  Реализация пространства состояний системы.

4.  Упрощение систем с использованием различных методов.

5.  Анализ систем в частотной, комплексной и временной области.

6.  Вывод графиков с возможностью их редактирования и изменения.

7.  Матричный процессор и редактор GUI.

8.  Некоторые блоки проектирования контроллера, такие как классические (ПИД регулирование с временной задержкой, LQ optimal, положение полюсов, и т. д.), средства настройки и просмотра ПИД-регуляторов, методы разработки робастных контроллеров.

2 Основы работы с CtrlLAB 3.0

Чтобы запустить CtrlLAB, наберите в окне MATLAB ‘ctrllab’ . Появится графический интерфейс пользователя с меню, как показано на рисунке 1. Сначала пользователю необходимо задать модель объекта управления и другие модели, если таковые имеются, затем можно будет выполнять задачи анализа и конструирования.

Рисунок 1 Графический интерфейс пользователя CtrlLAB

Ввод передаточных функций

Для ввода передаточной функции ОУ необходимо нажать левой кнопкой мыши по значку G(s) и в всплывающем окне (рисунок 2) ввести значения коэффициента усиления Коб и постоянной времени Тоб. Это же окно можно вызвать, выбрав в меню Model пункт Model select>G(s).

Рисунок 2 Окно ввода модели объекта

После нажатия кнопки “Apply” появится окно ввода данных, которое будет содержать введенную ПФ объекта управления (рисунок 3).

Рисунок 3 Вид окна ввода данных с введенной ПФ объекта управления

Чтобы изменить введенную передаточную функцию и вернутся к окну, показанному на рисунке 2, можно нажать кнопку Modify окна ввода данных.

Также в CtrlLAB предусмотрен ввод моделей объекта, заданных в пространстве состояний, в виде нулей-полюсов или диаграмм SIMULINK. Чтобы задать модель любым из перечисленных способов, выберите соответствующий пункт в строке Other types окна ввода модели объекта. По умолчанию модель задается в виде передаточной функции. Модель в виде нулей-полюсов или пространства состояний может быть получена автоматически по заданной передаточной функции. Для этого, после ввода передаточной функции выберите пункт Pole-zero-gain или State space. Передаточная функция будет преобразована, и результат будет выведен на экран, как показано на рисунках 4 и 5.

Рисунок 4 Модель объекта в виде нулей полюсов

Рисунок 5 Модель объекта в виде пространства состояний

Если анализируемая система содержит более сложные структуры, такие как блочные диаграммы или системы с нелинейностью, то для моделирования системы используется SIMULINK. Можно выбрать пункт SIMULINK в строке other types диалогового окна, показанного на рисунке 2, в этом случае необходимо будет задать имя модели (внутреннее имя), после чего появится среда редактирования SIMULINK, как показано на рисунке 6 (а) и (b). На рисунке (а) показана библиотека блоков, из которой можно получить все блоки SIMULINK. На рисунке (b) показано пустое окно редактора моделей SIMULINK, в котором можно задать свою систему между входным и выходным портом системы. Когда процесс ввода системы закончен, надо дважды щелкнуть мышкой кнопку Return to CtrlLAB, чтобы вернуться СtrlLAB.

(а) Библиотека блоков (b) окно редактора модели

Рисунок 6 Средства ввода моделей SIMULINK

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

После того, как модель объекта управления задана, нажатием левой кнопкой мыши по значку Exp(-Ts) введем значение запаздывания. Надпись в окне ввода данных изменится (рисунок 7).

Рисунок 7 Окно ввода данных до введения запаздывания

Нажимаем кнопку “Modify” и в появившемся окне вводим значение запаздывания. Также в этом окне можно ввести значение аппроксимации Pade (рисунок 8).

Рисунок 8 Окно ввода запаздывания модели

После нажатия кнопки “Apply” появится окно ввода данных, которое будет содержать значение введенного запаздывания и аппроксимации Pade (рисунок 9).

Рисунок 9 Окно ввода данных с введенным запаздыванием и значением

аппроксимации Pade

Окно ввода данных можно закрыть.

После выполнения этого действия модель объекта управления введена.

Расчет ПИД-регулятора

Если в рабочее поле MATLAB задана модель объекта управления, то для этой системы можно рассчитать ПИД-регулятор.

В пакете CtrlLAB есть возможность расчета параметров ПИД-регулятора с помощью различных критериев:

·  Ziegler-Nichols;

·  Cohen-Coon;

·  усовершенствованный метод Ziegler-Nichols;

·  Chien (CHR) Tuning;

·  модифицированный метод Ziegler-Nichols;

·  внутреннее управление моделью.

Наиболее часто применяемый критерии расчета параметров ПИД-регулятора – это критерий Ziegler-Nichols.

Расчет ПИД-регуляторов осуществляется с помощью меню Design>PID controller, вид которого показан на рисунке 10.

Рисунок 10 Меню расчета параметров контроллера

Кроме стандартного ПИД-регулятора можно также рассчитать П, ПИ-регулятор и ПИД-регулятор с Д-составляющей в контуре обратной связи. Тип регулятора можно выбрать в меню Design>PID controller>Controller type, показанного на рисунке 11.

Рисунок 11 Меню выбора типа контроллера

Для расчета параметров ПИД-регулятора по методу Ziegler-Nichols выберем в меню Design>PID controller>Controller type пункт Normal PID, затем в меню Design>PID controller>One-shot design выберем пункт Ziegler-Nichols tuning.

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

Рисунок 12 Передаточная функция ПИД-регулятора по методу Ziegler-Nichols

Построим переходные характеристики системы. Для этого выберем пункт меню Analysis>Time domain analysis>Step response, либо нажмем кнопку основного интерфейса. На экране появится переходная характеристика замкнутой системы вместе с характеристикой некомпенсированной системы, как показано на рисунке 13.

Рисунок 13 Переходные процессы в системе с (compensated) и без (uncompensated) регулятора

Рассчитаем также контроллер по методу Cohen-Coon. Для этого в меню, показанном на рисунке 10, выберем пункт One-shot design> Cohen-Coon.

Рисунок 14 Передаточная функция ПИД-регулятора по методу Cohen-Coon

Построим переходные характеристики системы.

Рисунок 15 Переходные процессы в системе с (compensated) и без (uncompensated) регулятора

В пакете CtrlLAB предоставлена возможность оптимизации рассчитанных настроек регулятора с помощью критериев ISE (минимум интеграла квадратичной ошибки), ISTE, IST2E и критерия оптимизации по фазе. Для выбора критерия выбираем необходимый в меню Design>PID-controller> Optimum tuning.

После проведения оптимизации настроек регулятора по ISE критерию получаем следующие настройки ПИД-регулятора (см. рисунок 16).

Рисунок 16 Оптимизированные настройки ПИД-регулятор (Ziegler-Nichols)

После проведения оптимизации настроек ПИД-регулятора (см. рисунок 17) время регулирования уменьшились, качество регулирования улучшилось.

Рисунок 17 Вид ПП после оптимизации настроек ПИД-регулятора (Ziegler-Nichols)

3 Анализ систем

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

Рисунок 18 Меню анализа системы

Частотный анализ

Построим диаграмму Боде системы. Для этого выберем в меню пункт Analysis>Frequency Domain Analysis>Bode diagram. Диаграмма Боде появится, как показано на рисунке 19 (а). Если пользователь выберет подменю Curves>Add asymptotic в окне диаграммы Боде, то вместе с точной на экран будет выведена асимптотическая диаграмма Боде, как показано на рисунке 19(b).

(а) диаграмма Боде (b) точная и асимптотическая диаграммы Боде

Рисунок 19 Диаграмма Боде разомкнутой системы

Свойства графиков можно изменить. Для этого в окне диаграммы Боде выберем в меню File пункт preferences, появится диалоговое окно, показанное на рисунке 20, в котором можно будет изменить некоторые детали графика такие как рамка, координатная сетка, цвета и т. д. (подробнее о работе с графиками будет рассказано далее).

Рисунок 20 Окно свойств графика

Кроме того, с помощью этого окна можно строить графики как замкнутого, так и разомкнутого контура системы. Обратите внимание, что окно Combination с двумя флажками, которое позволяет пользователю анализировать как Compensated так и Uncompensated модели доступно только если задан блок контроллера.

Теперь построим диаграммы Найквиста и Никольса, выбрав в меню Analysis пункты Frequency Domain Analysis>Nyquist plot и Frequency Domain Analysis>Nichols chart. Результат показан на рисунках 21 и 22 соответственно.

Рисунок 21 Годограф Найквиста разомкнутой системы

Рисунок 22 Диаграмма Никольса разомкнутой системы

Чтобы получить график расположения корней, выберем в меню Analysis пункт Root locus (см. рисунок 23).

Рисунок 23 График расположения корней

Анализ систем во временной области

График переходной и импульсной переходной характеристик можно получить, выбрав в меню соответственно Analysis>Time Domain Analysis>Step response и Analysis> Time Domain Analysis>Impulse response.

Рисунок 24 Импульсная переходная характеристика замкнутой системы

По умолчанию строится переходная характеристика замкнутого контура. Но можно построить переходную характеристику и разомкнутого контура, изменив соответствующий пункт диалогового окна (см. рисунок 20).

Также можно установить диапазон графика, выбрав в меню окна графика пункт Zooming>User Define. Появится диалоговое окно, показанное на рисунке 25 в котором можно задать новый диапазон.

Рисунок 25 Окно изменение диапазона графика

Кроме выходного, можно получить временные отклики и других сигналов системы. Построим на одном графике отклики сигнала ошибки (е(t), сигнала управления (u(t) и выходного сигнала на единичное ступенчатое воздействие. Для этого сначала выберем в меню Analysis>Loop Specs and Signals пункт Error signal e(t), затем выберем пункт Close loop этого же мню. Построим переходной процесс как было описано ранее. В окне графика в меню File выберем пункт Axis and Grids>Hold figure. После этого аналогичным образом построим характеристики управляющего воздействия Actuating signal u(t) и выходного сигнала Output signal y(t). Результат построений приведен на рисунке 26.

Рисунок 26 Отклики сигнала ошибки, управляющего воздействия и выходного сигнала

Анализ свойств системы

Получим запасы устойчивости по амплитуде и фазе анализируемой системы. Для этого в меню Analysis выберем пункт Parametric Analysis > Gain/Phase Margins. Появится информационное окно, показывающее предельные значения фазы и коэффициента усиления системы (см рисунок 27).

Рисунок 27 Запас устойчивости по амплитуде и фазе

Кроме запасов устойчивости в CtrlLAB можно также получить аналитическое выражение переходной характеристики. Для этого в меню Analysis выберем пункт Parametric Analysis>Analytical Solution. Появится информационное окно, содержащее выражение переходной характеристики системы.

Рисунок 28 Аналитическое выражение переходной характеристики

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

 

4 Упрощение моделей

Порядок модели можно понизить. Для этого нужно в меню выбрать пункт Model>Reduction. На экране появится диалоговое окно упрощения модели (Рисунок 29), где представлены различные методы упрощения моделей, такие как аппроксимация Паде, метод Роуфа, метод основной волны, метод уравновешенной реализации, метод оптимального сокращения, FF-Pade метод, модальный метод, а также метод оптимальной аппроксимации Ханкеля.

Если в качестве метода упрощения выбрать метод оптимального сокращения и задать желаемый порядок упрощенной модели (Рисунок 29), то получим результат, показанный на рисунке 30.

Рисунок 29 Диалоговое окно упрощения модели

Рисунок 30 Упрощенная модель

Чтобы сравнить упрощенную и оригинальную модели, нажмите кнопку Compare responses в окне показа модели; появится новое диалоговое окно (см рисунок 31).

Рисунок 31 Окно сравнения моделей

Выберите модель и характеристики для сравнения. Можно сравнивать модели, упрощенные разными методами, а также различные отклики, такие как диаграмма Боде, годограф Найквиста, диаграмма Никольса, а также переходные и импульсные переходные характеристики оригинальной и упрощенной моделей. Затем нажмите кнопку Compare. Для примера, на рисунке 30 показаны в сравнений переходные характеристики оригинальной и упрощенной с помощью метода оптимального сокращения моделей. Оригинальная модель была заданна в виде G(s) = (1.5s2 + 8.7s + 6)/(s4 + 9s3 + 23s2 + +22.5s+ 6). Графики оригинальной модели изображаются сплошной синей линией, а упрощенной – зеленой. Как видно из графика, отклики моделей практически совпадают.

Рисунок 32 Сравнение упрощенной и оригинальной моделей

5 Работа с графиками

С построенными в CtrlLAB графиками можно проводить следующие действия:

·  включать/выключать сетку на графике;

·  наносить на поле графика необходимые надписи, выносные линии и перемещать их;

·  изменять цвет осей, в которых построен график, области графика;

·  изменять масштаб построенного графика;

·  устанавливать в необходимом месте позицию курсора с указанием числовых значений;

·  выбирать самостоятельно значения по осям координат;

·  изменять тип, толщину и маркер кривой;

·  выводить несколько графиков в одних координатах.

Чтобы включить сетку, необходимо на графике в меню File выбрать пункт Axis and Grids>with grid.

Для удобства чтения графиков в CtrlLAB можно добавлять легенду, различные надписи, линии выноски и указатели. Чтобы нанести надпись на график надо в меню Legends выбрать пункт New legend, либо нажать кнопку на панели окна графика. После этого указатель мыши превратиться в перекрестие. Установите перекрестие на то место, где должна быть надпись и нажмите левую кнопку мыши. Появится окно, в которое необходимо ввести текст надписи (см рисунок 33).

Рисунок 33 Добавление легенды

После того, как легенда добавлена, ее можно изменить, переместить или удалить с помощью пунктов меню Legends>edit, Legends>move и Legends>delete соответственно.

Чтобы добавить к графику линии выноски и указатели, необходимо выбрать в меню Legends пункты Add a line и Add an arrow, либо нажать кнопки и соответственно. В этом случае указатель мыши превратиться в перекрестие. Установите перекрестие в точку, где должна начинаться линия и нажмите левую кнопку мыши. Затем переведите курсор в место, где линия должна закончиться и снова нажмите кнопку мыши. Удалить ранее нанесенные линии можно с помощью пункта delete меню Legends.

С помощью меню Curves можно изменять цвет, толщину, вид и маркер кривой. Для этого можно выбрать соответствующие пункты меню: Change curve color, Line Thickness, Change Curve Line Style, Change Curve Marker, либо выбрать пункт Line properties. При выборе любого из этих пунктов курсор мыши превратится в перекрестие. Наведите перекресте на кривую, которую хотите изменить и нажмите левую кнопку мыши. Если был выбран пункт Line properties, то появится меню, в котором можно задать тип, маркер и толщину линии (см. рисунок 34).

Рисунок 34 Меню свойств линии

Иногда построенный график может оказаться непредставительным из-за неудачного масштаба. Чтобы изменить диапазон графика по осям необходимо в меню Zooming выбрать пункт User define. Появится меню, в котором можно задать начальные и конечные значения осей графика (см рисунок 35).

Рисунок 35 Изменение диапазона графика

В CtrlLAB можно выводить несколько графиков в одних координатах. Для этого необходимо в окне уже существующего графика выбрать в меню File пункт Axis and Grids>Hold Figure. После этого все последующие графики этого же типа будут построены в тех же координатах.

Если необходимо знать координаты каких-то определенных точек графика, то их можно выделить, выбрав в меню Legends пункт Cursor Positioning (см. Рисунок 36).

Рисунок 36 Подписи точек на графике

]6 Проектирование робастного контроллера

В это разделе рассмотрена только задача расчета H¥ контроллера, хотя другие задачи тоже могут решаться с помощью CtrlLAB. В качестве примера используем модель с двойным интегратором. Меню проектирования робастных контроллеров может быть вызвано с помощью пункта меню Design>Robust control. Его содержание показано на рисунке 37(а).

(а) меню робастного управления (b) диалоговое окно Н-нормы

Рисунок 37 Интерфейс проектирования робастного управления

Чтобы получить оптимальный H¥ контроллер, выберите в меню пункт Design>Robust control>H_inf optimal. Появится диалоговое окно, показанное на рисунке 37(b), в котором пользователь может задать различные весовые функции W1(s), W2(s), W3(s). Если требуется выполнить расчет задачи чувствительности, то необходимо поставить галочку в окне Sensitivity. Диалоговое окно в этом случае примет вид, показанный на рисунке 38 (а). В нем можно задать ожидаемый порядок и собственную частоту эталонной стандартной ITAE модели. Например, если задать n=2 и wn=10, оптимальный H¥ контроллер будет получен в виде, показанном на рисунке 38(b).

(а) диалоговое окно задачи чувствительности (b) оптимальный H¥ контроллер

Рисунок 38 Результаты расчета робастного контроллера

Диаграмма Никольса и переходная характеристика замкнутой системы после расчета регулятора показаны на рисунке 39 (а) и (b) соответственно. С помощью меню и диалоговых окон можно также рассчитывать и анализировать другие типы робастных контроллеров, таких как Н2 и LQG/LTR контроллеры.

(а) Диаграмма Никольса (b) переходная характеристика замкнутой

системы

Рисунок 39 Анализ системы с робастным контроллером

Практическое задание

1.  Запустите пакет CtrlLAB, для этого в рабочем поле MATLAB наберите команду ctrllab. Появится основной интерфейс программы, показанный на рисунке 1.

2.  По данным таблицы 1 в соответствии с номером варианта задайте передаточную функцию объекта управления с запаздыванием. Для этого щелкните левой кнопкой мыши по блоку G(s) и в появившемся окне задайте числитель и знаменатель ПФ. Для задания запаздывания щелкните мышкой по блоку Exp(-Ts), в появившемся окне нажмите кнопку Modify и затем введите значение запаздывания.

3.  Для заданного объекта управления рассчитайте передаточную функцию ПИД-регулятора, выбрав в меню Design пункт PID controller>One-shot design>Ziegler-Nichols tuning. Затем построите переходной процесс в системе. Для этого в мню Analysis выберите пункт Time Domain Analysis>Step. В окне графика выберите в пеню File пункт Axis and Grids>Hold Figure. После этого рассчитайте ПИД-регулятор по методу Cohen-Coon и снова постройте переходной процесс. Сравните полученные результаты.

4.  Оптимизируйте настройки ПИД-регулятора. Чтобы выполнить это в пункте PID-controller> Optimum tuning меню Design выберите соответствующий критерий (например ISE). Постройте переходной процесс. Сравните результаты. После этого выключите опцию Hold figure.

5.  Постройте переходной процесс в системе по возмущению. Для этого щелкните мышкой по блоку Gs(s) и в появившемся окне нажмите кнопку Modify. Выделите значение, стоящее в знаменателе и запишите его в буфер обмена нажатием клавиш Ctrl+C. Закройте это окно. Далее нажмите на H(s) и впишите в знаменатель ПФ регулятора в ОС значение из буфера, после этого нажимаем Apply. Далее проделайте те же самые операции с числителями этих блоков. В результате ПФ регулятора в ОС имеет такое же значение, как и ПФ регулятора в ПС. Нажмите на блок Gc(s) и впишите в числителе и знаменателе ПФ регулятора в ПС единицы. Для построения ПП нажмите на кнопку (единичное ступенчатое воздействие). После этого на экране появляется график переходного процесса по возмущению.

На титульном листе отчета укажите свою фамилию, группу и номер варианта.

Таблица 1.

№ варианта

Параметры объекта регулирования

Kоб

T1об, с

Т2об, с

tоб, с

1

0,9

2,4

0,8

0,1

2

1,1

23

7

2

3

52

55

17

8

4

35

21

7

3

5

6

62

18

9

6

2,7

23

10

5

7

0,75

14

5

1,2

8

0,8

3,5

1,1

0,1

9

2,4

17

6,3

0,5

10

0,12

19,5

4,7

2,2

11

1,6

31

9,6

1

12

0,32

17

4,3

1,5

13

1,8

37

10

1,6

14

54

64

22

2,5

15

61

21

7,4

4,2

16

2,3

8

2,7

0,5

17

0,6

3,1

1,2

0,2

18

1,2

22

6,8

1,2

19

51

58

15

4,4

20

33

23

8

1,5

21

6,5

64

17

6

22

3,0

25

11

2

23

0,7

15

6,1

1,3

24

0,9

3,7

1,3

0,2

25

2,2

17,6

7,3

1,8

26

6,1

6

1,4

0,2

27

2,5

8,4

2,6

0,5

28

0,6

5,1

1,2

0,16

29

1,4

25

6,8

0,8

30

54

55

13

2,4

Контрольные вопросы для защиты

1.  Состав и назначение пакета CtrlLAB.

2.  Запуск и ввод блоков в CtrlLAB.

3.  Ввод нелинейных объектов в CtrlLAB.

4.  Построение моделей СУ в CtrlLAB.

5.  Расчет ПИД-регулятора в CtrlLAB.

6.  Оптимизация настроек регулятора в CtrlLAB.

7.  Упрощение моделей в CtrlLAB.

8.  Построение характеристик системы в CtrlLAB.

9.  Работа с графиками.

10. Расчет робастных контроллеров.