- •Основы разработки систем управления в среде matlab
- •Лабораторная работа №1 вычисления и визуализация результатов в среде matlab
- •1.1. Основные сведения об операциях и функциях
- •1.2. Операции с векторами и матрицами
- •1.3. Построение графиков функций
- •Трехмерная графика
- •1.4. Порядок выполнения индивидуальных заданий по лабораторной работе
- •1.5. Контрольные вопросы
- •Приложение 1.1
- •Лабораторная работа №2 программирование в среде matlab
- •Введение
- •2.1. Управляющие конструкции языка matlab
- •2.1.1. Оператор условного перехода
- •2.1.2. Оператор переключения
- •2.1.3. Оператор цикла с определенным количеством повторений for…end
- •2.1.4. Цикл с неизвестным количеством повторений
- •2.2. Сценарии и m-файлы
- •2.2.1. Создание файла-сценария
- •2.2.2. Требования к оформлению м-файлов
- •2.2.3. Типовая структура файла-сценария
- •2.3. Порядок выполнения работы
- •2.4. Контрольные вопросы
- •Дискретные lti-объекты. Переход от непрерывной модели Sn к дискретной Sd и обратно с периодом дискретности Ts осуществляется с помощью функций c2d и d2c соответственно:
- •3.2. Основные сведения об используемых функциях
- •Исследование переходной функции и весовой функции
- •Исследование лчх – логарифмических частотных характеристик
- •3.3. Порядок выполнения работы
- •3.4. Контрольные вопросы
- •Приложение 3.1 Основные форматы используемых функций
- •Приложение 3.2
- •Лабораторная работа № 4 проектирование линейной системы с помощью siso-design tool и lti viewer
- •4.1. Краткие теоретические сведения
- •4.2. Описание проектируемой системы
- •4.3. Порядок выполнения работы
- •4.4. Контрольные вопросы
- •Лабораторная работа №5 анализ и синтез сау методом корневого годографа с использованием siso-design tool
- •5.1. Краткие теоретические сведения
- •5.2. Методический пример
- •5.3. Порядок выполнения работы
- •5.4. Контрольные вопросы
- •Лабораторная работа №6 работа в среде matlab notebook
- •6.1. Основные сведения об используемых командах
- •6.2. Порядок выполнения работы
- •6.2.1. Установка шаблона m-book.Dot в редакторе Word
- •6.2.2. Работа с matlab Notebook в редакторе Word
- •6.3. Содержание отчета
- •Лабораторная работа №7 проектирование систем на основе заданного расположения полюсов
- •7.1. Краткие теоретические сведения
- •7.2. Расчет полюсов проектируемой системы
- •7.3. Синтез модального регулятора
- •Расчет коэффициентов обратных связей.
- •7.4. Порядок выполнения работы
- •7.5. Контрольные вопросы
- •Лабораторная работа №8 создание файла s-функции в виде m-файла
- •8.1. Основные сведения об используемых функциях
- •8.2. Пример s-функции
- •8. 3. Порядок выполнения лабораторной работы
- •8. 4. Содержание отчета
- •8. 5. Контрольные вопросы
- •Список литературы
- •Содержание
1.3. Построение графиков функций
Рассмотрим наиболее простые в использовании графические возможности.
Сформируйте два вектора х и y:
» x=0:0.01:2; y=sin(x);
Вызовите функцию:
» plot(x,y)
MATLAB показывает графические объекты в специальных графических окнах, имеющих в заголовке слово Figure.
Не убирая с экрана монитора первое графическое окно, введите выражения
» z=cos(x);
» plot(x,z)
При этом будет выведен новый график функции в том же самом графическом окне. Старые оси координат и график пропадают.
Если нужно второй график вывести «поверх первого графика», то следует выполнить команду hold on, которая предназначена для удержания текущего графического окна:
» x=0:0.01:2; y=sin(x);
» plot(x,y)
» z=cos(x);
» hold on
» plot(x,z)
Практически тоже самое получится, если набрать:
» x=0:0.01:2; y=sin(x); z=cos(x);
» plot(x,y,x,z)
Если нужно одновременно визуализировать несколько графиков, то перед следующим вызовом функции plot следует набрать команду figure, которая создает новое графическое окно для вывода. Вторым решением является использование функции subplot. Эта функция позволяет разбить область вывода графической информации на несколько подобластей, в каждую из которых можно вывести графики различных функций.
Например, для ранее выполненных вычислений с функциями sin и cos постройте графики этих двух функций в первой подобласти, а график функции exp(х) – во второй подобласти одного и того же графического окна с помощью следующей последовательности команд:
» w=exp(x);
» subplot(1,2,1); plot(x,y,x,z)
» subplot(1,2,2); plot(x,w)
Диапазоны изменения переменных на осях координат подобластей независимы друг от друга.
При вычислении сложных математических функций от скалярной переменной следует использовать поэлементные операции. Выполните вычисления и постройте график функции f = sin(x)*cos(x). При этом если ввести выражение вида
» f = sin(x)*cos(x);
то MATLAB выведет сообщение об ошибке.
Для построения графиков в логарифмических масштабах предназначены функции semilogx, semilogy и loglog.
Построить график функции в полярных координатах можно с помощью графической функции polar. Выполните следующий пример:
» phi=0:0.01:2*pi; r=sin(3*phi);
» polar(phi,r)
Рассмотрим дополнительные возможности, связанные с управлением внешним видом графиков – задание цвета и стиля линий и размещение различных надписей в пределах графического окна.
В общем случае функция plot (x1, y1, s1, x2, y2, s2, … ) позволяет объединить в одном графическом окне несколько графиков функций y1(x1), y2(x2) и т.д., выполнив их со стилями s1, s2, … Стили s1, s2, … задаются в виде набора трех символьных маркеров, заключенных в одиночные кавычки (апострофы). Один из этих маркеров задает тип линии (Табл. 1.3). Другой маркер задает тип проставляемых «точек» (Табл. 1.4). Последний маркер задает цвет (Табл. 1.5). Если маркер не указан, то используется маркер, установленный по умолчанию. Порядок, в котором указываются маркеры, не является существенным, то есть 'r+-' и '-+r' приводит к одинаковому результату.
Выполните самостоятельно построение графиков с описанными возможностями.
Рассмотрим оформление осей координат и нанесение надписей на осях. Система MATLAB устанавливает пределы по горизонтальной оси равными тем значениям, что указаны пользователем для независимой переменной. Для зависимой переменной по вертикальной оси MATLAB самостоятельно вычисляет диапазон изменения значений функции. При необходимости пользователь может самостоятельно указать требуемые пределы изменения переменных по осям координат. Это осуществляется с помощью функции axis ( [ xmin, xmax, ymin, ymax ] ).
Маркеры, задающие тип линии Маркеры, задающие тип точки
Таблица 1.3 Таблица 1.4
Маркер |
Тип “точки” |
|
Маркер |
Тип линии |
. |
Точка |
|
- |
Непрерывная |
+ |
Плюс |
|
-- |
Штриховая |
* |
Звездочка |
|
: |
Пунктирная |
о |
Кружок |
|
-. |
Штрихпунктирная |
х |
Крестик |
|
|
|
Маркеры, задающие цвет линии
Таблица 1.5
Маркер |
Цвет линии |
Маркер |
Цвет линии |
c |
Голубой |
g |
Зеленый |
m |
Фиолетовый |
b |
Синий |
y |
Желтый |
w |
Белый |
r |
Красный |
k |
Черный |
Для проставления различных надписей на полученном рисунке предназначены функции xlabеl, ylabеl, title и text. Функция xlabеl создает надпись вдоль горизонтальной оси, функция ylabеl – для вертикальной оси. Если требуется разместить надпись в произвольном месте рисунка, используется функция text. Общий заголовок для графика создается функцией title. Кроме того, используя команду grid on, можно нанести измерительную сетку на всю область построения графика.
Выполните следующую последовательность команд и объясните их выполнение:
» x=0:0.1:3; y=sin(x);
» plot(x,y,'r-',x,y,'ko')
» title('Function sin(x) graph');
» xlabel('xcoordinate'); ylabel('sin(x)');
» text(2.1, 0.9, '\leftarrowsin(x)'); grid on
