ФГБОУ ВПО «Воронежский государственный технический университет»
Кафедра физики твердого тела
к выполнению и оформлению
лабораторной работы № 4 по дисциплине «Системы автоматического регулирования и управления» для студентов специальности 140401 «Техника и физика низких температур» очной формы обучения
Составитель канд. физ.-мат. наук К.Г. Королев
УДК 621.38
Методические указания к выполнению и оформлению лабораторной работы № 4 по дисциплине «Системы автоматического регулирования и управления» для студентов специальности 140401 «Техника и физика низких температур» очной формы обучения / ФГБОУ ВПО «Воронежский государственный технический университет»; сост. К.Г. Королев. Воронеж, 2011. 22 с.
В методических указаниях сформулированы предварительное и рабочее задания на лабораторные работы, методические рекомендации и контрольные вопросы.
Методические указания предназначены для студентов 4-5 курса очной формы обучения. Они будут полезны студентам при выполнении лабораторных работ и углубленном изучении лекционного материала.
Методические указания подготовлены в электронном варианте в текстовом редакторе Microsoft Office 2010 и содержатся в файле lab4.docx.
Табл. 2. Ил. 3. Библиограф.: 1 назв.
Рецензент канд. физ.-мат. наук, доц. В.А. Юрьев
Ответственный за выпуск зав. кафедрой д-р физ.-мат. наук, проф. Ю.Е. Калинин
Издается по решению редакционно-издательского совета Воронежского государственного технического университета
© ФГБОУ ВПО «Воронежский
государственный технический
университет», 2011
Лабораторная работа № 4
Моделирование нелинейных систем управления
Теоретическая часть
Модели нелинейных звеньев (Discontinuities)
|
Saturation – насыщение, в параметрах задаются верхний и нижний пределы (Upper limit и Lower limit). |
|
Dead zone – нечувствительность, «мертвая зона». В параметрах задаются пределы нечувствительности (Start of dead zone и End of dead zone). |
|
Rate Limiter – ограничитель скорости изменения сигнала, в параметрах задаются пределы на скорость увеличения (Rising slew rate) и на скорость уменьшения (Falling slew rate). |
|
Relay – реле, в параметрах задаются точки переключения (Switch on point и Switch off point), в также величины сигналов в режимах «включено» (Output when on) и «выключено» (Output when off). |
|
Backlash – люфт, «мертвый ход». В параметрах задаются величина мертвого хода (Deadband width) и начальное значение выхода (Initial output). |
|
Coulomb and Viscous Friction – кулоновское и вязкое трение. |
Если на схеме много блоков, она становится громоздкой и работать с такой схемой неудобно. Чтобы не перегружать схемы, можно объединять блоки в подсистемы. Проще всего выделить нужные блоки мышкой («обвести» при нажатой ЛКМ) и нажать клавиши Ctrl+G (или выбрать пункт меню Edit – Create subsystem). На основной схеме подсистема изображается как блок типа Subsystem (из группы Ports and Subsystems). Этот блок можно добавить и вручную, перетащив из окна Library Browser.
С помощью двойного щелчка ЛКМ можно «открыть» подсистему. Входы обозначаются блоками In, а выходы – блоками Out (также из группы Ports and Subsystems). Можно добавлять новые входы и выходы, удалять ненужные, менять названия, работая с ними так же, как с остальными блоками.
Внутри подсистем можно создавать вложенные подсистемы. В подсистеме не может быть блоков с одинаковыми названиями, однако в разных подсистемах – могут быть.
Сохранить модель можно из окна любой подсистемы, но закрытие окна подсистемы не приводит к закрытию модели.
Рис. 1
К входу осциллографа (блока Scope) можно подключать несколько сигналов одновременно. Для этого их надо объединить в один векторный сигнал («жгут») с помощью блока Mux (мультиплексор) из группы Signal Routing.
Если используется два входных сигнала, первый изображается желтой линией, второй – фиолетовой. При передаче данных в рабочую область Matlab в формате Array, массив будет содержать три столбца – время, первый сигнал и второй сигнал. Если сигналов больше, соответственно увеличивается количество столбцов массива.
При работе в Matlab часто для получения нужного результата надо ввести последовательно несколько команд. Если выяснится, что в какой-то команде была сделана ошибка или нужно изменить исходные данные, все команды придется вводить снова. Чтобы не набирать их вручную, можно записать всю последовательность команд на диск в виде текстового файла (М-файла с расширением .m), а затем выполнять его, вызывая по имени. Такой файл называется скриптом.
Скрипт – это программа, которая представляет собой список команд на языке системы Matlab. Скрипты можно создавать и редактировать в любом простейшем текстовом редакторе (например, в Блокноте), однако удобнее всего использовать встроенный редактор Matlab, в котором есть подсветка синтаксиса (команды, символьные строки, комментарии и другие элементы программы выделяются разными цветами).
В М-файле перечисляются последовательно все необходимые команды. Точка с запятой в конце команды подавляет вывод результата на экран. Можно располагать в одной строке несколько команд, разделяя их запятой (если нужен вывод результата на экран) или точкой с запятой. Если надо перенести длинную команду на следующую строчку, в конце строки ставится троеточие.
Комментарием считается все, что расположено справа от знака % до конца строки. Его можно ставить в любом месте строки, например, справа от команды Matlab.
Для вызова скрипта надо набрать его имя в командном окне Matlab и нажать клавишу Enter. Скрипт должен находиться в рабочей папке (имя которой показано в окне Current directory в верхней части командного окна) или в одной из папок, входящих в путь для поиска. В путь для поиска включены папки, в которых находятся М-файлы для стандартных функций системы Matlab и дополнительных пакетов (toolbox). Если надо, чтобы скрипт запускался из любой папки, надо включить папку, где он находится, в путь для поиска (команда File – Set Path верхнего меню).
Запустить скрипт можно непосредственно из окна редактора Matlab, нажав на клавишу F5. Можно выполнить не весь скрипт, а только некоторые строки – их нужно выделить и нажать клавишу F9. Можно расположить два окна (редактор и командное окно Matlab) рядом так, чтобы они не перекрывали друг друга. Тогда при выполнении скрипта (или отдельных команд) сразу будет виден результат.
Если в командах скрипта есть ошибки (или они возникли при выполнении), соответствующие сообщения выводятся в командное окно Matlab.
По умолчанию команда plot рисует на активном графике новую кривую, стирая старые линии. Для того, чтобы существующие кривые сохранились, перед вызовом plot надо выполнить команду
>> hold on
Обратная ей команда
>> hold off
восстанавливает стандартный режим.
Каждый объект на графике (оси координат, надписи, линии и т.п.) представляют собой объекты, имеющие свойства. Для того, чтобы получить значение свойства, используют команду get, а для изменение свойства – команду set. Сокращение gca обозначает текущие (активные) оси координат (get current axes). Команда
>> get(gca)
выводит на экран все свойства осей и их значения. Для управления размером шрифта (он измеряется в пунктах) используется свойство Font Size:
>> get(gca, ‘FontSize’) % определить размер шрифта
ans =
10
>> set(gca, ‘FontSize’, 16) % изменить размер шрифта
Для того, чтобы настроить свойства отдельной линии, надо сначала получить ее хэндл (handle – ручка, рукоятка, указатель). Так называется уникальный числовой код объекта, через который к этому объекту можно обращаться. Команда gca в самом деле возвращает хэндл текущих координатных осей. Команда
>> h = get(gca, 'Children')
записывает в переменную h массив хэндлов – указателей на объекты линии. Для каждой линии можно установить толщину (в пунктах, по умолчанию – 0,5 пункта) .
>> set(h(1),'LineWidth',1.5)
>> set(h(2),'LineWidth',1.5)
Аналогично можно управлять и другими свойствами.
Практическая часть
Цели работы
освоение методов моделирования нелинейных систем в пакете Simulink
Задачи работы
научиться строить и редактировать модели с подсистемами
научиться использовать нелинейные звенья типа «насыщение»
научиться строить несколько графиков одновременно на одном осциллографе
научиться составлять, редактировать и отлаживать скрипты
научиться изменять свойства элементов графика (шрифт, толщину линии)
Оформление отчета
Отчет по лабораторной работе выполняется в виде связного (читаемого) текста в файле формата Microsoft Word (шрифт основного текста Times New Roman, 12 пунктов, через 1,5 интервала, выравнивание по ширине). Он должен включать
название предмета, номер и название лабораторной работы
фамилию и инициалы авторов, номер группы
фамилию и инициалы преподавателя
номер варианта
краткое описание исследуемой системы
результаты выполнения всех пунктов инструкции, которые выделены серым фоном (см. ниже): результаты вычислений, графики, ответы на вопросы.
При составлении отчета рекомендуется копировать необходимую информацию через буфер обмена из рабочего окна среды Matlab. Для этих данных используйте шрифт Courier New, в котором ширина всех символов одинакова.
В работе рассматривается система управления судном по курсу. Ее структурная схема показана на рисунке.
Линейная
математическая модель, описывающая
рыскание судна, имеет вид
где
– угол рыскания (угол отклонения от
заданного курса),
– угловая скорость вращения вокруг
вертикальной оси,
– угол поворота вертикального руля
относительно положения равновесия,
–
постоянная времени,
–
постоянный коэффициент, имеющий
размерность рад/сек. Передаточная
функция от угла поворота руля к углу
рыскания запишется в виде
.
Линейная модель привода (рулевой машины) представляет собой интегрирующее звено с передаточной функцией
,
охваченное единичной отрицательной обратной связью. На угол перекладки руля и скорость перекладки накладываются нелинейные ограничения
,
.
Для измерения угла рыскания используется гирокомпас, математическая модель которого записывается в виде апериодического звена первого порядка с передаточной функцией1
,
В качестве управляющего устройства используется ПИД-регулятор с передаточной функцией2
,
где
сек
и
сек.
Таблица 1
Этап выполнения задания |
Команды Matlab |
|
ЛКМ
по кнопке
|
|
View – Current directory |
|
двойной щелчок на lab3.mdl |
|
File – Save as ... |
|
Edit – Create subsystem |
|
Двойной щелчок на имени ПКМ – Format – Flip name ПКМ – Background color |
|
Двойной щелчок на блоке ЛКМ на имени входа или выхода |
|
|