Uploaded by Евгений Чуриков

Praktika Kudinov Var5

advertisement
Липецкий государственный технический университет
Факультет автоматизации и информатики
Кафедра информатики
ОТЧЁТ
об учебной практике на кафедре информатики ЛГТУ
Вариант №5
Студент
______________________
подпись, дата
Чуриков Е.В.
фамилия, инициалы
Группа ыЗ-УТ-20-1
Руководитель
д.т.н., профессор
ученая степень
_____________________
подпись, дата
Липецк 2022 г.
Кудинов Ю.И.
фамилия, инициалы
Аннотация
Стр. 20, Ил. 12, Литература 7.
MATLAB – одна из старейших, тщательно проработанных и проверенных
временем систем автоматизации математических расчетов, построенная на
расширенном представлении и применении матричных операций. Однако
синтаксис языка программирования системы настолько продуман, что эта
ориентация почти не ощущается теми пользователями, которых не интересуют
непосредственно матричные вычисления. Матрицы широко применяются в
сложных математических расчетах, например, при решении задач линейной
алгебры и математического моделирования статических и динамических
систем и объектов. Они являются основой автоматического составления и
решения уравнений состояния динамических объектов и систем.
В MATLAB реализованы современные численные методы компьютерной
математики, используются мощные средства графической визуализации и
анимационной графики. Возможности системы весьма обширны, а по
скорости выполнения задач она нередко превосходит своих конкурентов и
применима для расчетов практически в любой области науки и техники.
2
CОДЕРЖАНИЕ
1 Практическая работа в MATLAB ......................................................................... 4
1.1 Задание 1 ......................................................................................................... 4
1.2 Задание 2 ......................................................................................................... 4
1.3 Задание 3 ......................................................................................................... 8
1.4 Задание 4 ....................................................................................................... 10
1.5 Задание 5 ....................................................................................................... 12
2 Практическая работа в MATLAB Simulink ........................................................ 14
2.1 Задание 6 ....................................................................................................... 14
2.2 Задание 7 ....................................................................................................... 17
Заключение ............................................................................................................ 19
Список использованных источников .................................................................. 20
3
1 Практическая работа в MATLAB
1.1 Задание 1
Цель работы
Вычислить указанное арифметическое выражение четвертым способом.
Сравнить полученный результат с приведенным ответом.
0,134  0,05
1 11 2 6
18  1   2
6 14 15 7
Выполнение работы
Для задания вычисления переменной значения используется оператор
присваивания: Имя_переменной = Значение.
Далее вычисляем значения выражений при известных переменных в
окне программы MATLAB, программный код которых представлен в пр.1.
Пр.1
x = 0.134+0.05;
y = (109/6)-(25/14)-((2/15)*(20/7));
z = x/y
z =
0.0115
1.2 Задание 2
Цель работы
Согласно выданному варианту, используя соотношения y3, y4, …, y14,
построить
и
отформатировать
графики
приведенные ниже.
4
функций
принадлежности,
y
1
0
y4
y
y4
y2
1
a
d1
d2
d3
d4
b
x
0
a
d1
d2
d3
d4
b
x
Рисунок 1 – Графики функций принадлежности
При a = 2, d1 = 4, d2 = 8, d3 = 12, d4 = 16, b = 18.
Выполнение работы
Функции одной переменной у(х) находят широкое применение в
практике
математических
и
других
расчетов,
а
также
в
технике
компьютерного математического моделирования. Для отображения таких
функций используются графики в декартовой (прямоугольной) системе
координат. При этом обычно строятся две оси – горизонтальная X и
вертикальная Y, и задаются координаты х и у, определяющие узловые точки
функции у(х). Эти точки соединяются друг с другом отрезками прямых, т.е.
при построении графика осуществляется линейная интерполяция для
промежуточных точек. Поскольку MATLAB матричная система, совокупность
точек у(х) задается векторами X и Y одинакового размера.
Для того, чтобы нарисовать график, нужный нам по образцу,
воспользуемся пр. 2.
5
Пр.2
x1 = 2:1:4;
y1 = [0 0 0];
x2 = 4:2:8;
y2 = (x2-4)/4;
x3 = 8:2:12;
y3 = [1 1 1];
x4 = 12:2:16;
y4 = (16-x4)/4;
x5 = 16:1:18;
y5 = [0 0 0];
x11 = [x1 x2 x3 x4 x5];
y11 = [y1 y2 y3 y4 y5];
x6 = 8:2:12;
y6 = [0 0 0];
x7 = 12:2:16;
y7 = (x7-12)/4;
x8 = 16:1:18;
y8 = [0 0 0];
x22 = [x6 x7 x8];
y22 = [y6 y7 y8];
plot(x11,y11,x22,y22)
Полученные графики представлены на рисунке 2 и 3 соответственно.
6
Рисунок 2 - Трапециевидная функция принадлежности в MATLAB
Рисунок 3 - Графики функций принадлежности в MATLAB
7
Теперь приступим к форматированию графиков, полученных на рисунке
3, которое заключается в присвоении имени рисунку, обесцвечивании его
внешней границы, нанесении и форматировании обозначений на осях
графиков, проведении сетки по осям, задании цвета толщины и маркеров на
линиях графиков, полученные графики представлены на рисунке 4.
Рисунок 4 - Отформатированные графики функции принадлежности
1.3 Задание 3
Цель работы
Составить программу и получить график функции двух переменных.
z = cos(x - y) для x   3,3, y   3,3, используя функцию surf.
8
Выполнение работы
Для того, чтобы нарисовать график, нужный нам по образцу,
воспользуемся пр. 3.
Пр.3
x=-3:0.1:3;
y=-3:0.1:3;
[X,Y]=meshgrid(x,y);
Z=cos(X-Y);
surf(X,Y,Z)
Полученный график представлен на рисунке 5 соответственно.
Рисунок 5 - График функции двух переменных
9
1.4 Задание 4
Цель работы
В таблице 1 приведены коэффициенты дифференциального уравнения
y  ay  by  с1(t ) ,
(1.1)
которое в соответствии с выданным вариантом самостоятельно решить
классическим методом (с подробным описанием хода решения), а также
решить с помощью функции dsolve и сравнить полученные результаты.
Таблица 1.1 – Задание по варианту
Вариант
a
b
с
5
7
12
48
Выполнение работы
Найти
решение
неоднородного
линейного
дифференциального
уравнения
y  7 y  12 y  48 1(t ) ,
(1.2)
при нулевых начальных условиях y(0) = 0, y (0) = 0 и единичном ступенчатом
входном сигнале u(t) = 1(t).
Решение. Решение неоднородного дифференциального уравнения всегда
равно сумме y(t) = yо(t) + yч(t), где yо(t) – общее решение соответствующего
однородного дифференциального уравнения, полученного приравниванием
нулю правой части (1.2)
y  7 y  12 y  0 ,
(1.3)
а yч(t) – частное решение, определяемое видом правой части (1.2). Решение
однородного дифференциального уравнения (1.3) начинается с задания
соответствующего характеристического уравнения
p 2 + 7p + 12 = 0,
10
и определения его корней
p1 = -3; p2 = -4.
Общее решение однородного дифференциального уравнения запишется
так
yо (t )  C1e p1t  C2e p2t  C1e3t  C2e4t ,
где С1, С2 – постоянные интегрирования.
Перейдем к определению частного решения yч. Правая часть уравнения
(1.2) – константа. Частное решение ищется в форме yч = B, где B – константа.
Для нахождения B подставим yч = B в уравнение (1.2)
12B = 48, B = 4.
Таким образом, полное решение неоднородного уравнения (1.2) имеет
вид
.
y(t )  C1e3t  C2e4t  4
(1.4)
Исходя из нулевых начальных условий y(0) = 0, y (0) = 0, запишем (1.4)
в виде двух уравнений
y(0) = С1 + С2 + 4 = 0,
y (0) = -3С1 - 4С2 = 0.
и решим их относительно С1 и С2
С1 = – 16, С2 = 12.
Подставляя найденные значения С1 и С2 в (1.4), получим искомое
решение
y (t )  12e 4t  16e 3t  4 .
.
(1.5)
Для того, чтобы найти корни дифференциального уравнения, нужные
нам, воспользуемся пр. 4.
11
Пр.4
y=dsolve('D2y+7*Dy+12*y=48','y(0)=0','Dy(0)=0')
y = 12*exp(-4*t) - 16*exp(-3*t) + 4
1.5 Задание 5
Цель работы
1 Решить систему алгебраических уравнений в столбце 2 табл. 1.2,
используя функцию Solve.
2 Вычислить сумму ряда в столбце 3 таблице 2, используя функцию Symsum.
3 Определить выражение производной по х функции в столбце 4 таблице 2.
4 Вычислить интеграл функции в столбце 5 таблице 2 в пределах, а
(столбец 6) и b (столбец 7), используя функцию int.
Таблица 1.2 - Задание по варианту
№
вар
ДифференСистема уравнений
Ряд (s)
цируемая
функция
1
2
5
( x  6) / 2  ( y  1) / 3  1,

(2  y)4  ( x  1) / 2  2.
3
(1) k 1
k
k 1 (2k  1)
7
s
Подинтегра
льная
функция
Пределы
а
b
4
5
6
7
1
1
 sin 
2
x
 x
1
1
 sin 
2
x
 x
1
2/5
Выполнение работы
Для решения системы алгебраических уравнений воспользуемся кодом
представленным в пр.5.
12
Пр.5
syms x y;
eqn1 = ((x-6)/2)-((y+1)/3)-1== 0;
eqn2 =((2-y)*4)+((x-1)/2)-2 == 0;
S = solve(eqn1,eqn2);
S.x
S.y
ans = 115/11
ans = 59/22
Для вычисления суммы ряда воспользуемся кодом, представленным в пр.6.
Пр.6
syms k
s=symsum(((-1).^(k-1))/(2*k-1).^k,1,7)
s = 1766115723435920021465513/1970036612038926432626625
Для определения выражения производной по х функции воспользуемся
кодом, представленным в пр.7.
Пр.7
syms x y;
y = (1/(x.^2))*sin(1/x);
diff(y)
ans = - cos(1/x)/x^4 - (2*sin(1/x))/x^3
Для вычисления интеграла функции в пределах, а (столбец 6) и b
(столбец 7), используя функцию int, воспользуемся кодом, представленным в
пр.8.
13
Пр.8
syms x;
int(1/sqrt(9+x.^2),1,2/5)
ans = log(229^(1/2) + 2) - log(5*10^(1/2) + 5)
2 Практическая работа в MATLAB Simulink
2.1 Задание 6
Цель работы
Используя соответствующий вариант дифференциального уравнения
(таблица 1.1), коэффициенты Kp, Ki, Kd и тип линейного ПИ или ПД
регулятора (таблица 2.1), построить блок-схему системы автоматического
регулирования и получить графики переходных процессов при ступенчатом и
импульсном воздействиях.
Таблица 2.1 – Задание по варианту
Вариант
5
Тип
ПИ
регулятора
Kp
4
Ki
0,3
Kd
-
Выполнение работы
Построим систему автоматического регулирования на базе ПИ
регулятора и дифференциального уравнения в MATLAB Simulink, результат
представлен на рисунке 6.
14
Рисунок 6 - Блок-схема автоматического регулирования при
ступенчатом воздействии
Cоберем
подсистему
PI
регулятора
и
подсистему
Plant
дифференциального уравнения, результат представлен на рисунке 7 и 8
соответственно.
Рисунок 7 – Подсистема PI
Рисунок 8 - Подсистема Plant
Получим график переходного процесса при ступенчатом воздействии,
результат представлен на рисунке 9.
15
Рисунок 9 - График переходного процесса при ступенчатом
воздействии
Соберем схему для получения графика переходного процесса при
импульсном воздействии, результат представлен на рисунке 10.
Рисунок 10 – Блок-схема автоматического регулирования при
импульсном воздействии
Получим график переходного процесса при импульсном воздействии,
результат представлен на рисунке 11.
16
Рисунок 11 - График переходного процесса при импульсном
воздействии
2.2 Задание 7
Цель работы
В столбце «Формулы» таблицы 2.2 приводятся формулы логических
функций, для которых в соответствии с выданным преподавателем вариантом
необходимо построить модель логической функции и описать процесс
построения.
17
Таблица 2. 2 – Задание по варианту
Таблица
истинности
№
Функция
Вар.
5
Запрет b
a
0 0 1 1
b
0 1 0 1
f4
0 0 1 0
Символическое
Формула
обозначение
a←b
ab
Выполнение работы
Для построения модели логической функции соберем схему в MATLAB
Simulink, представленную на рисунке 12. Для этого добавим два блока
Constant, один логических блока NOT, один логических блока AND, один блок
Mux, два блока Display и один блок Combinatorial Logic. Соединим блоки
согласно формуле, представленной в таблице 2.2.
Откроем окно блока Combinatorial Logic и в поле Truth table введем
значения выхода таблицы истинности в следующем виде: [0;0;1;0].
Рисунок 12 - Модель логической функции в MATLAB Simulink
После завершения работы модели можно сделать вывод о том, что
модель логической функции была построена верно.
18
Заключение
В ходе выполнения данного отчета, была проведена работа с
программой MATLAB, в которой были проведены различные математические
и технические расчеты данных лабораторных и контрольных работ. При
выполнении было изучено множество различных функций, которые
способствуют помощи в решении математических выражений, уравнений,
таких как: работа с матрицами, решение обыкновенных линейных уравнений,
СЛАУ и дифференциальных уравнений, нахождение различных интегралов и
пределов, а также построению и форматированию двумерных графиков
функций и трехмерных поверхностей с примерами кода и теоретическими
сведениями, тем самым научились работать с графическим интерфейсом
MATLAB и знакомством с основными программными функциями этого
программного продукта.
19
Список использованных источников
1. Мещеряков, В.В. Задачи по математике с MATLAB& SIMULINK. / В.
В. Мещеряков. — М.: ДИАЛОГ-МИФИ, 2007 — 528 с.
2. Поршнев, С.В. MATLAB 7. Основы работы и программирования:
учебник / С. В. Поршнев. М.: БИНОМ-ПРЕСС, 2011. — 320 с.
3. Ануфриев, И.Е. MATLAB 7 / И.Е. Ануфриев, А.Б. Смирнов, Е.Н.
Смирнова. — СПб.: БХВ-Петербург, 2005. — 1104 с.
4. Смоленцев, Н. Н. MATLAB: программирование на Visual C#, Borland
jBuilder, VBA: учебный курс. / Н. Н. Смоленцев. — М.: DMK Пресс; СПб.:
Питер, 2009 — 453 с.
5. Дьяконов, В. А. Matlab 6: учебный курс. / В. А. Дьяконов. — СПб.:
Питер, 2001. — 435 с.
6. Поршнев, С.В. Компьютерное моделирование физических процессов
в пакете MATLAB. / С.В. Поршнев. - М.: Горячая линия - Телеком, 2003 — 592
с.
7. Мироновский, Л.А., Петрова, К.Ю. Введение в MATLAB [учебное
пособие]. / Л.А. Мироновский, К.Ю. Петрова. – СПб.: СПбГУАП, 2005 –
122_с.
20
Download