Создание М-файлов в среде Matlab

МЕТОДИЧЕСКОЕ ПОСОБИЕ

к лабораторным работам по курсу «Компьютерное проектирование систем автоматического управления» для студентов специальности 53 01 07 «Информационные технологии и управление в технических системах»

 

 

Минск 2013


 

УДК 519.95 (075.8)

ББК 22.18 я 73

М 54

 

М54
Хаджинов М.К.

методическое пособие к лабораторным работам по курсу «Компьютерное проектирование систем автоматического управления» д для студентов специальности 53 01 07 «Информационные технологии и управление в технических системах» / М.К.Хаджинов. – Мн.: БГУИР, 2013.-22 с.

ISBN

Проведено описание и порядок выполнения лабораторных работ по курсу «Компьютерное проектирование систем автоматического управления». Содержание работ определено рабочей программой курса в соответствии с учебными планами специальности 53 01 07 «Информационные технологии и управление в технических системах».

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

 

 

УДК 519.95 (075.8)

ББК 22.18 я 73

 

ISBN М.К.Хаджинов, 2013

ISBN © БГУИР, 2013


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

 

ПРОГРАММИРОВАНИЕ В СРЕДЕ MATLAB. ИЗУЧЕНИЕ ХАРАКТЕРИСТИК ОДНОКОНТУРНЫХ СИСТЕМ.

 

Цель работы: научиться составлять программы на языке Matlab в виде М-файлов для исследования одноконтурных систем с типовыми регуляторами. Освоить методику расчёта ПИД-регулятора.

Краткие теоретические сведения:

Система Matlab является интерактивной системой для выполнения инженерных и научных расчетов, которая ориентирована на матричные вычисления. Matlab – это одновременно и операционная среда, и язык программирования. Пользователь может сам написать специализированные функции и программы, которые оформляются в виде М-файлов. Накопление родственных функций приводит к концепции пакетов прикладных программ, каждый из которых решает определенную задачу или проблему. Операционная среда Matlab – это множество интерфейсов, которые поддерживают связь этой системы с внешним миром через командное окно, инструментальную панель, подсистемы просмотра рабочей области и путей доступа, редактор / отладчик М-файлов, специальные меню.

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

В командной строке после знака приглашения (>>) можно выполнять любые операции с действительными или комплексными числами (простейшие арифметические действия, элементарные и специальные математические функции). Результат вычислений будет представлен в предварительно установленном формате.

Управление путями доступа (включение рабочего каталога work в список путей доступа Matlab).

Для поиска М-файлов используют механизм путей доступа. В процессе сеанса работы можно вывести на терминал или внести изменения в список путей доступа, используя следующие функции:

addpath d:\work – добавляет каталог d:\work в список путей доступа;

rmpath d:\work – удаляет путь к d:\work из списка.

path – выводит на экран список путей доступа.

 

Создание М-файлов в среде Matlab.

В языке Matlab имеются программы двух типов с расширением *.m.

· Script-файлы(файлы-сценарии или управляющие программы)

· Файл-функции (процедуры)

 

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

Главным внешним отличием текстов этих двух видов файлов является то, что файл-функции имеют первую строку вида:

function [перечень выходных величин] = имя процедуры (перечень входных величин).

Например, создадим функцию, вычисляющую значения квадратичного полинома:

function [y]=example(x,a,b,c)

%Функция, вычисляющая значения квадратичного полинома

%Формат вызова: example(x,a,b,c)

y = a.*x.*x+b.*x+c;

Принципиальное же отличие заключается в совершенно разном восприятии системой имен переменных в этих файлах. В файлах-функциях все имена переменных внутри файла и в заголовке воспринимаются как локальные, а переменные Script-файлов образуют так называемое рабочее пространство и сохраняют свой смысл и значения в течение всего сеанса работы с системой.

 

Некоторые особенности записи текста программы на языке Matlab:

· Любой оператор, записанный в командной строке исполняется при нажатии клавиши Enter.

· Несколько операторов в одной строке разделяются символами “; ” или “, ”. Пробел является разделителем только элементов массива внутри квадратных скобок.

· Длинный оператор можно записать в несколько строк, используя знак переноса - три точки (…).

· Если оператор не заканчивается символом “; ”, то результат его действия при выполнении программы будет выведен в командное окно.

· Строка программы или её часть, начинающаяся с символа “ % ” не выполняется, она воспринимается системой как комментарий.

· Строки комментария, предшествующие первому выполняемому оператору, воспринимаются как описание программы и выводятся в командное окно по команде help<имя файла>.

· Операторы начала и окончания текста программы отсутствуют, т.е. начало и конец программы никак не маркируются.

· Переменные не описываются и не объявляются. Любое новое имя воспринимается системой как имя матрицы, размер которой устанавливается при предварительном вводе значений ее элементов.

· Имена переменных могут содержать лишь буквы латинского алфавита или цифры и должны начинаться с буквы. Общее число символов - не более 19.

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

Создание программы на языке Matlab осуществляется при помощи текстового редактора, который вызывается автоматически при открытии m-файлов командами New, Open из меню File. Запуск m-файлов на выполнение производится из командной строки по имени файла без расширения.

Получение справочной информации (команды работы с Help). Получить информацию о функциях Matlab можно командой help:

Список каталогов выводит на экран команда help без аргументов. Список команд каталога выводится на экран командой help <имя каталога>. Основной и наиболее быстрый способ выяснить синтаксис и особенности применения М-функции – это использовать команду help <имя М-функции>.

 

Порядок выполнения работы:

1. Подключить к Матлабу команды addpath рабочий каталог trenag с программами и электронными тренажёрами.

2. Освоить методику расчёта интегральных регуляторов с помошью электронного тренажёра (tr_PID) и получить параметры ПИД-регулятора для конкретного объекта.

3. Написать программу исследования одноконтурной системы управления.

Блок схема программы:

1. Ввод модели объекта управления.

1.1. Запись ss-формы модели по передаточной функции tf-формы (test_ssmodel).

1.2. Преобразование форм моделей в tf, zpk, ss -формы.

1.3. Запись передаточной функции по ЛАХ (test_LAXmodel).

2. Ввод регулятора.

3. Формирование и исследование разомкнутого контура управления.

3.1. ЛАХ (bode).

3.2. Запасы устойчивости (margin, wc_ph).

3.3. АФЧХ (nyquis t).

4. Замыкание контура управления (feedback, connect).

5. Исследование характеристик замкнутого контура управления.

5.1. Переходных характеристик (step, khar_sysz).

5.2. Показателя колебательности АЧХ (norm).

5.3. Карты нулей и полюсов (pzmap).

5.4. Интегральных оценок (khar_sysz).

В скобках указаны имена функций, программ или электронных тренажёров.

Команды с выводом в графические окна предварять функцией figure открывания нового окна, чтобы сохранить предидущие графики, и заключать паузой pause(0), для немедленного вывода.

Контрольные вопросы:

1. Чем отличаются друг от друга переменные Script-файла и m-функции в использовании рабочего пространства системы?

2. Как воспользоваться справочной информацией?

3. Объяснить физический смысл переходной характеристики, передаточной функции, амплитудно- и фазо-частотной характеристик.

4. В чем отличие точной ЛАХ от асимптотической?

5. Что такое коэффициент затухания, как он влияет на вид переходной характеристики колебательного звена?

6. Что такое физическая реализуемость звеньев? Сформулируйте условие физической реализуемости звена для его передаточной функции.

7. Как реализуются и используются дифференциальные звенья на практике?

8. Как определить передаточную функцию звена по виду его логарифмической амплитудно-частотной характеристики?

9. Как строятся ЛАХ по передаточным функциям элементарных звеньев САУ?

10. Как различаются ЛАХ непрерывных и дискретных звеньев?

11. При разделении звеньев на дифференцирующие, позиционные и интегрирующие какая часть характеристик step определяет тип звена?

12. На каких частотах характеристик bode, nyquist определяется тип звена?

13. В каком месте плоскости pzmap искать признаки типа звена?

14. Каковы признаки типа звена в zpk-модели?


Лабораторная работа N2

 


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: