You are on page 1of 22

Data wykonania ćwiczenia: Tryb studiów: Grupa laboratoryjna:

06.05.2021 stacjonarne 1

Numer indeksu: Imię i nazwisko:

114380 Jakub Rzeszutek

UNIWERSYTET RZESZOWSKI
MECHATRONIKA

PODSTAWY TEORII STEROWANIA

SPRAWOZDANIE Z LABORATORIUM NR 9
Przekształcenia schematów blokowych

Zadanie 1

Oblicz analitycznie transmitancję zastępczą, a także wyznacz transmitancję z zastosowaniem


programu MATLAB dla układu opisanego schematem blokowym jak na rysunku poniżej.
Porównaj uzyskane wzory oraz wykreśl charakterystyki skokową, impulsową oraz wyznacz
położenie zer i biegunów dla układu. Transmitancje poszczególnych bloków zamieszczone są
w dodatkowym, indywidualnie generowanym dla każdego studenta pliku z danymi.

9
G1(s) = ---------
16s + 1

10
G2(s) = ---------
17s + 1

10
G3(s) = ---------
18s + 1

Rozwiązanie zadania 1:
clear all;
clc;
t = [0 : 0.1 : 40]; % zdefiniowanie zakresu czasu
num1 = [9]; % licznik dla transmitancji bloku pierwszego
den1 = [16 1]; % mianownik dla transmitancji bloku pierwszego
G1 = tf(num1, den1) % transmitancja bloku pierwszego
num2 = [10]; den2 = [17 1]; % mianownik dla transmitancji bloku pierwszego
G2 = tf(num2, den2)
num3 = [10]; % licznik dla transmitancji bloku pierwszego
den3 = [18 1]; % mianownik dla transmitancji bloku pierwszego
G3 = tf(num3, den3)
Gs = series(G1, G2) % transmitancja zastępcza połączenia szeregowego dwóch bloków
Gz = feedback (Gs, G3)
figure(1)
Y = step(Gz, t); % wyznaczenie odpowiedzi na wymuszenie skokowe
plot(t, Y); % wykreślenie wykresu odpowiedzi na wymuszenie skokowe
title('Charakterystyka skokowa');
grid on; % włączenie siatki na wykresie
figure(2)
Y2 = impulse(Gz, t); % charakterystyka impulsowa
plot(t, Y2); % wykreślenie wykresu odpowiedzi na wymuszenie skokowe
title('Charakterystyka impulsowa');
grid on; % włączenie siatki na wykresie
figure(3) % przygotowanie trzeciego okna wykresu
zero_vector1 = zero(Gz) % wyznaczenie i wyświetlenie zer transmitancji
pole_vector1 = pole(Gz) % wyznaczenie i wyświetlenie biegunów transmitancji
pzmap(Gz); % wykreślenie mapy biegunów i zer
grid on
Zadanie 2

Oblicz analitycznie transmitancję zastępczą, a także wyznacz transmitancję z zastosowaniem


programu MATLAB dla układu opisanego schematem blokowym jak na rysunku poniżej.
Porównaj uzyskane wzory oraz wykreśl charakterystyki skokową, impulsową oraz wyznacz
położenie zer i biegunów dla układu. Transmitancje poszczególnych bloków zamieszczone są
w dodatkowym, indywidualnie generowanym dla każdego studenta pliku z danymi.

2
G1(s) = ---------
1s + 1

3
G2(s) = ---------
15s + 1

8
H1(s) = ---------
2s + 1

Rozwiązanie zadania 2:

clear all;
t = [0 : 0.1 : 40]; % zdefiniowanie zakresu czasu
num1 = [2]; % licznik dla transmitancji bloku pierwszego
den1 =[1 1 ]; % mianownik dla transmitancji bloku pierwszego
G1 = tf(num1, den1) % transmitancja bloku pierwszego
num2 = [3]; % licznik dla transmitancji bloku 2
den2 = [15 1]; % mianownik dla transmitancji bloku 2
G2 = tf(num2, den2) % transmitancja bloku 2
Gz = parallel (G1, G2) % transmitancja zastępcza połączenia równoległego dwóch bloków
hnum = [8]; % licznik dla transmitancji bloku ‘h’
hden = [2 1]; % mianownik dla transmitancji bloku ‘h’
H = tf(hnum, hden) % transmitancja bloku H
Gzneg = feedback (Gz, H) % transmitancja zastępcza układu z ujemnym sprzężeniem zwrotnym
figure(1) %przygotowanie 1 okna wykresu
Yneg = step(Gzneg, t); % wyznaczenie odpowiedzi na wymuszenie skokowe
plot(t, Yneg); % wykreślenie wykresu odpowiedzi na wymuszenie skokowe
title('Odpowiedź skokowa');
grid on; % włączenie siatki na wykresie
figure(2) %przygotowanie 2 okna wykresu
Yneg = impulse(Gzneg, t);
plot(t, Yneg);
title('Odpowiedź impulsowa');
grid on; % włączenie siatki na wykresie
figure(3) %przygotowanie 3 okna wykresu
pzmap(Gz); % wykreślenie mapy biegunów i zer
title('Określenie zer i biegunów');
grid on;
Zadanie 3
Oblicz analitycznie transmitancję zastępczą, a także wyznacz transmitancję z zastosowaniem
programu MATLAB dla układu opisanego schematem blokowym jak na rysunku poniżej.
Porównaj uzyskane wzory oraz wykreśl charakterystyki skokową, impulsową oraz wyznacz
położenie zer i biegunów dla układu. Transmitancje poszczególnych bloków zamieszczone są
w dodatkowym, indywidualnie generowanym dla każdego studenta pliku z danymi.

2
G1(s) = ---------
6s + 1

6
G2(s) = ---------
2s + 1

10
G3(s) = ---------
11s + 1

10
H1(s) = ---------
12s + 1

3
H2(s) = ---------
17s + 1

Rozwiązanie zadania 3:

clear all
t = [0 : 0.1 : 40]; % zdefiniowanie zakresu czasu
num1 = [2]; % licznik dla transmitancji bloku pierwszego
den1 = [6 1]; % mianownik dla transmitancji bloku pierwszego
G1 = tf(num1, den1)
num2 = [6];
den2 = [2 1]; % mianownik dla transmitancji bloku 2
G2 = tf(num2, den2) % licznik dla transmitancji bloku 2
num3 = [10];
den3 = [11 1];
G3 = tf(num3, den3)
num4 = [10];
den4 = [12 1];
H1 = tf(num4, den4)
num5 = [3];
den5 = [17 1];
H2 = tf(num5, den5)
Gz1 = H2*G3 % przesuniecie wezla zaczepowego przed czlon o transmitancji G3
Gz2 = feedback(G2, Gz1, +1) % transmitancja zastepcza polaczenia ze sprzezeniem zwrotnym
Gz3 = series(G1, Gz2) % transmitancja zastapcza polczenia szeregowego dwóch bloków
Gz4 = feedback (Gz3, H1, +1) % transmitancja zastepcza polczenia ze sprzezeniem zwrotnym
Gz5 = series(Gz4, G3) % transmitancja zastapcza polaczenia szeregowego dwóch bloków
figure(1)
Yneg = step(Gz5, t); % na wymuszenie skokowe
plot(t, Yneg)
grid on
title("Odpowiedź skokowa");% wykreślenie wykresu
figure(2)
Yneg = impulse(Gz5, t); % wymuszenie impulsowe
plot(t, Yneg); % wykreślenie wykresu
grid on
title("Odpowiedź impulsowa");
figure(3)
pzmap(Gz5);% określenie zer i biegunów
grid on
title("Określenie zer i biegunów");
Zadanie 4

Oblicz analitycznie transmitancję zastępczą, a także wyznacz transmitancję z zastosowaniem


programu MATLAB dla układu opisanego schematem blokowym jak na rysunku poniżej.
Porównaj uzyskane wzory oraz wykreśl charakterystyki skokową, impulsową oraz wyznacz
położenie zer i biegunów dla układu. Transmitancje poszczególnych bloków zamieszczone są

w dodatkowym, indywidualnie generowanym dla każdego studenta pliku z danymi.

9
G1(s) = ---------
10s + 1

9
G2(s) = ---------
11s + 1

8
G3(s) = ---------
15s + 1

2
G4(s) = ---------
9s + 1

10
H1(s) = ---------
2s + 1

7
H2(s) = ---------
13s + 1

8
H3(s) = ---------
16s + 1
Rozwiązanie zadania 4:

clear all % czyszczenie workspace


clc % czyszczenie konsoli
t = [0 : 0.1 : 55]; % zdefiniowanie zakresu czasu
num1 = [9]; % licznik dla 1
den1 = [10 1]; % mianownik dla 1
G1 = tf(num1, den1) % transmitancja 1
num2 = [9]; % licznik dla 2
den2 = [11 1]; % mianownik dla 2
G2 = tf(num2, den2) % transmitancja 2
num3 = [8]; % licznik dla 3
den3 = [15 1]; % mianownik dla 3
G3 = tf(num3, den3) % transmitancja 3
num4 = [2]; % licznik dla 4
den4 = [9 1]; % mianownik dla 4
G4 = tf(num4, den4) % transmitancja 4
num5 = [10]; % licznik dla 5
den5 = [2 1]; % mianownik dla 5
H1 = tf(num5, den5) % transmitancja 5
num6 = [7]; % licznik dla 6
den6 = [13 1]; % mianownik dla 6
H2 = tf(num6, den6) % transmitancja 6
num7 = [8]; % licznik dla 7
den7 = [16 1]; % mianownik dla 7
H3 = tf(num7, den7) % transmitancja 7
Gz1 = H2/G4 % transmitancja zastępcza dla pol po przesunięciu
Gz2 = series (G3, G4) % transmitancja zastępcza dla pol szeregowego
Gz3 = feedback (Gz2, H1, +1) % transmitancja zastępcza dla sprzężenia
Gz4 = series (G2, Gz3)% transmitancja zastępcza dla pol szeregowego
Gz5 = feedback (Gz4, Gz1) % transmitancja zastepcza dla sprzężenia
Gz6 = series (G1, Gz5) % transmitancja zastępcza dla pol szeregowego
Gz7 = feedback (Gz6, H3) % transmitancja zastępcza dla sprzężenia
figure(1)
Y = step(Gz7,t); % wyznaczenie odpowiedzi na wymuszenie skokowe
plot(t, Y); % wymuszenie skokowe
title('Charakterystyka skokowa');
grid on;
figure(2)
Y2 = impulse(Gz7, t); % charakterystyka impulsowa
plot(t, Y2); % odpowiedz skokowa
title('Charakterystyka impulsowa');
grid on;
figure(3);
zero_vector1 = zero(Gz7) % wyznaczenie i wyświetlenie zer transmitancji
pole_vector1 = pole(Gz7) % wyznaczenie i wyświetlenie biegunów transmitancji
pzmap(Gz2); % wykreślenie mapy biegunów i zer
grid on
Uwagi i wnioski

You might also like