Материал: Методические указания к выполнению и оформлению лабораторной работы № 4 по дисциплине Системы автоматического регулирования и управления. Королев К.Г

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам

ФГБОУ ВПО «Воронежский государственный технический университет»

Кафедра физики твердого тела

Методические указания

к выполнению и оформлению

лабораторной работы № 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 (или выбрать пункт меню EditCreate subsystem). На основной схеме подсистема изображается как блок типа Subsystem (из группы Ports and Subsystems). Этот блок можно добавить и вручную, перетащив из окна Library Browser.

С помощью двойного щелчка ЛКМ можно «открыть» подсистему. Входы обозначаются блоками In, а выходы – блоками Out (также из группы Ports and Subsystems). Можно добавлять новые входы и выходы, удалять ненужные, менять названия, работая с ними так же, как с остальными блоками.

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

Сохранить модель можно из окна любой подсистемы, но закрытие окна подсистемы не приводит к закрытию модели.

Блок Scope (несколько сигналов)

Рис. 1

К входу осциллографа (блока Scope) можно подключать несколько сигналов одновременно. Для этого их надо объединить в один векторный сигнал («жгут») с помощью блока Mux (мультиплексор) из группы Signal Routing.

Если используется два входных сигнала, первый изображается желтой линией, второй – фиолетовой. При передаче данных в рабочую область Matlab в формате Array, массив будет содержать три столбца – время, первый сигнал и второй сигнал. Если сигналов больше, соответственно увеличивается количество столбцов массива.

Скрипты

При работе в Matlab часто для получения нужного результата надо ввести последовательно несколько команд. Если выяснится, что в какой-то команде была сделана ошибка или нужно изменить исходные данные, все команды придется вводить снова. Чтобы не набирать их вручную, можно записать всю последовательность команд на диск в виде текстового файла (М-файла с расширением .m), а затем выполнять его, вызывая по имени. Такой файл называется скриптом.

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

В М-файле перечисляются последовательно все необходимые команды. Точка с запятой в конце команды подавляет вывод результата на экран. Можно располагать в одной строке несколько команд, разделяя их запятой (если нужен вывод результата на экран) или точкой с запятой. Если надо перенести длинную команду на следующую строчку, в конце строки ставится троеточие.

Комментарием считается все, что расположено справа от знака % до конца строки. Его можно ставить в любом месте строки, например, справа от команды Matlab.

Для вызова скрипта надо набрать его имя в командном окне Matlab и нажать клавишу Enter. Скрипт должен находиться в рабочей папке (имя которой показано в окне Current directory в верхней части командного окна) или в одной из папок, входящих в путь для поиска. В путь для поиска включены папки, в которых находятся М-файлы для стандартных функций системы Matlab и дополнительных пакетов (toolbox). Если надо, чтобы скрипт запускался из любой папки, надо включить папку, где он находится, в путь для поиска (команда FileSet 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

  1. Сделайте свою папку рабочей папкой Matlab.

ЛКМ по кнопке справа от поля Current Directory

  1. Откройте окно рабочей папки.

View – Current directory

  1. Откройте модель, построенную в лабораторной работе № 3.

двойной щелчок на lab3.mdl

  1. Сохраните модель в своей папке под именем lab4.mdl.

File – Save as ...

  1. Выделите мышью регулятор вместе с интегратором и преобразуйте его в подсистему.

Edit – Create subsystem

  1. Дайте подсистеме имя Регулятор, расположите название сверху и выберите фоновый цвет на свой вкус.

Двойной щелчок на имени

ПКМ – Format – Flip name

ПКМ – Background color

  1. Определите для входа и выхода этого блока имена е и u соответственно.

Двойной щелчок на блоке

ЛКМ на имени входа или выхода

  1. Аналогично постройте подсистему Привод с входом u и выходом delta и подсистему Судно с входами f и delta и выходом phi. Сохраните модель и скопируйте ее через буфер обмена в отчет.

Источник: https://studfile.net/preview/16567418/