Лабораторна робота №3
Тема. Задання моделей систем
управління
Мета роботи: вивчити різні способи
задання моделей ланок, навчитися перетворювати структурні схеми й підготовлювати модель до подальшого
аналізу засобами MATLAB.
Робота з поліномами. Розглянемо можливості MATLAB щодо аналізу систем, що описуються
передавальними функціями. Оскільки передавальна функція подається у вигляді
дробу двох поліномів, спочатку зосередимо увагу на способах роботи з
алгебраїчними поліномами у MATLAB. Водночас слід пам’ятати, що для повного
задання передавальної функції необхідно визначити як чисельник, так і
знаменник.
У MATLAB робота з поліномами здійснюється за
допомогою векторів, елементами яких є коефіцієнти полінома, розташовані в
порядку спадання степенів. Функції роботи з подані в таблиці 1.
Таблиця 1 – Функції роботи з поліномами
|
№ |
Функція |
Опис |
Приклад |
|
1 |
polyval |
Обчислює значення
полінома у заданій точці |
P = [2 0 -4 7]; x = 2; y = polyval(P,
x) |
|
2 |
roots |
Обчислює корені (нулі)
полінома |
P = [1 -6 11 -6]; r = roots(P) |
|
3 |
conv |
Виконує множення двох
поліномів |
P1 = [1 -3 2]; P2 = [1 0 -1]; P_mult = conv(P1, P2) |
|
4 |
deconv |
Виконує ділення одного
полінома на інший |
P1 = [1 -3 2]; P2 = [1 0 -1]; [Q, R] = deconv(P1, P2) |
Передатні
функції. Тепер навчимося задавати передатні функції, таблиця
Таблиця 2 – Функції MATLAB для передаточних
|
№ |
Функція |
Опис |
Приклад |
|
1 |
tf |
Створює передатну
функцію за коефіцієнтами чисельника та знаменника |
W = tf([2
5], [1 3 7]); |
|
2 |
zpk |
Створює систему через
нулі, полюси та коеф. передачі |
W = zpk([-2],
[-1 -3], 4); |
|
3 |
ss(A,
B,C,D) |
Система задається
матрицями A, B, C, D |
A = [0 1; -1 -2]; B = [0; 1]; C = [1 0]; D = 0; W = ss(A,B,C,D) |
|
4 |
feedback |
Формує систему із
зворотним зв’язком
|
W = feedback(W1,
W2); Якщо в
аргументах функції feedback не зазначений знак зворотнього зв'язку sign, то за
замовчуванням він передбачується негативним. |
|
5 |
series |
З’єднує системи
послідовно
|
Wseries = series(W1, W2); або W1 * W2 |
|
6 |
parallel |
З’єднує системи
паралельно
|
Wparallel = parallel(W1, W2); або W1 + W2 |
Спрощення багатоконтурної системи. Функція minreal
дозволяє спростити передатну функцію шляхом видалення скасованих нулів і
полюсів, тобто тих, які присутні як у чисельнику, так і в знаменнику передатної
функції. Нехай після перетворення деякої структурної схеми, ми отримали
наступний результат:
![]()
Для спрощення використаємо
функцію minreal:
>> num=[1 4
6 6 5 2];
>> den=[12 205
1066 2517 3128
2196 712];
>> W=tf(num,den)
Transfer function:
![]()
>> W=minreal(W)
Transfer function:
![]()
Після застосування функції minreal можна бачити, що порядки поліномів у чисельнику й
знаменнику зменшилися на одиницю за рахунок скорочення одного полюса й одного
нуля.
Завдання для виконання
1. Обрахунки
провести з використанням Matlab, завдання подані в
таблиці 2:
Таблиця 2 – Варіанти завдань згідно варіанту
|
№ |
Завдання |
Вхідні дані |
|
1 |
Обчислення значення полінома |
|
|
2 |
Знаходження коренів полінома |
|
|
3 |
Множення двох поліномів |
|
|
4 |
Створення передатної функції |
|
|
5 |
Формування системи із зворотним
зв’язком
|
|
|
6 |
Перехід від матриць стану до
передатної функції
|
|