Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 12

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

29.04.2021 stacjonarne 1

Numer indeksu: Imię i nazwisko:

114380 Jakub Rzeszutek

UNIWERSYTET RZESZOWSKI
MECHATRONIKA

PODSTAWY TEORII STEROWANIA

SPRAWOZDANIE Z LABORATORIUM NR 8
Współczynnik tłumienia w członach II rzędu, bieguny i zera

Zadanie 1

Dana jest transmitancja, jak poniżej:


Y ( s) k
G ( s )= = 2 2
X ( s ) T s + 2 ξTs+1
Wyznacz odpowiedzi skokową oraz impulsową obiektu dla pięciu różnych wartości
współczynnika tłumienia ξ. Parametry k oraz T zamieszczone są w dodatkowym, indywidualnie
generowanym dla każdego studenta pliku z danymi.
ξ=1; ξ=0.87 ; ξ=0.71 ; ξ=0.5 ; ξ=0
Przebiegi stanowiące odpowiedź na skok jednostkowy dla wszystkich wartości współczynnika
tłumienia ξ wykreśl w jednym oknie, stosując odpowiednią legendę. W taki sam sposób
w drugim oknie wyświetl przebiegi stanowiące odpowiedź na impuls jednostkowy dla wszystkich
wartości współczynnika tłumienia ξ. Na podstawie wygenerowanych wykresów uzasadnij w jaki
sposób współczynnik tłumienia ξ wpływa na amplitudę oraz częstotliwość sygnału odpowiedzi.
k = 13
T = 25

Rozwiązanie zadania 1:
clear all;
t = [0 : 0.1 : 400]; % wygenerowanie wektora czasu
k = 13; % zdefiniowanie K
T=25; % zdefiniowanie T;
a=T*T % zdefiniowanie a;
b=2*1*T % zdefiniowanie b;
c=1 % zdefiniowanie c;

a1=T*T
b1=2*0.87*T
c1=1

a2=T*T
b2=2*0.71*T
c2=1

k3=88;
a3=T*T
b3=2*0.5*T
c3=1

k4=88;
a4=T*T
b4=2*0*T
c4=1

num = [k]; % zdefiniowanie licznika transmitancji G


den = [a b c]; % zdefiniowanie mianownika transmitancji G
G = tf(num, den) % wyliczenia transmitancji G

num1 = [k];
den1 = [a1 b1 c1];
G1 = tf(num1, den1)

num2 = [2];
den2 = [a2 b2 c2];
G2 = tf(num2, den2)

num3 = [k];
den3 = [a3 b3 c3];
G3 = tf(num3, den3)

num4 = [k];
den4 = [a4 b4 c4];
G4 = tf(num4, den4)

y = step(G, t); % wygenerowanie wektora odpowiedzi na skok jednostkowy w zakresie czasu t


y1 = step(G1, t);
y2 = step(G2, t);
y3 = step(G3, t);
y4 = step(G4, t);

figure(1); % przygotowanie pierwszego okna wykresu


plot(t,y,t,y1,t,y2, t, y3, t, y4); % wykreślenie przebiegów odpowiedzi obiektu na skok jednostkowy
grid on;
legend("G","G1","G2","G3","G4");
title("Odpowiedź skokowa")

ya = step(G, t);
y1a = step(G1, t);
y2a = step(G2, t);
y3a = step(G3, t);
y4a = step(G4, t);

figure (2); % przygotowanie pierwszego okna wykresu


y = impulse(G, t);
y1 = impulse(G1, t);
y2 = impulse(G2, t);
y3 = impulse(G3, t);
y4 = impulse(G4, t);

plot(t,y,t,y1,t,y2, t, y3, t, y4);% wykreślenie przebiegów odpowiedzi obiektu na skok impulsowy


grid on; legend("G","G1","G2","G3","G4");
title("Odpowiedź impulsowa")
Zadanie 2

Dana jest transmitancja, jak poniżej:


Y ( s) k
G ( s )= = 2
X ( s ) a s + bs+ c
Dla czterech różnych przypadków danych wejściowych, znajdujących się w dodatkowym,
indywidualnie generowanym dla każdego studenta pliku z danymi wyznacz odpowiedzi skokową
oraz impulsową obiektu.
Dla każdego przypadku wskaż położenie zer oraz biegunów i na jego podstawie przypisz
poszczególne przypadki do pól na poniższym diagramie.

PODPOWIEDŹ: Jedno pole powinno pozostać bez przypisania.


W jaki sposób rozmieszczenie biegunów na płaszczyźnie zespolonej wpływa na stabilność
układu?

Przypadek 1

k1 = 14
a1 = 14
b1 = 21
c1 = 1
Przypadek 2
k2 = 19
a2 = 138
b2 = 8
c2 = 1

Przypadek 3

k3 = 11
a3 = 6
b3 = 0
c3 = 1

Przypadek 4
k4 = 5
a4 = 10
b4 = -1
c4 = 1

Rozwiązanie zadania 2:
clear all;
clc;
t = [0 : 0.1 : 100]; % wygenerowanie wektora czasu

k1=14
a1=14
b1=21
c1=1

k2=19
a2=138
b2=8
c2=1

k3=11
a3=6
b3=0
c3=1

k4=5
a4=10
b4=-1
c4=1

num1=[k1]; %zdefiniowanie licznika transmitancji G


den1=[a1 b1 c1]; %zdefiniowanie minaownika transmitancji G
G1=tf(num1, den1) %wyliczenie transmitancji G

num2=[k2];
den2=[a2 b2 c2];
G2=tf(num2, den2)

num3=[k3];
den3=[a3 b3 c3];
G3=tf(num3, den3)
num4=[k4];
den4=[a4 b4 c4];
G4=tf(num4, den4)

y1=step(G1,t);
y2=step(G2,t);
y3=step(G3,t);
y4=step(G4,t);
figure(1);
plot(t,y1,t,y2,t,y3,t,y4)
grid on;
legend("G1","G2","G3","G4");
zero_vector1=zero(G1)
pole_vector1=pole(G1)
figure(2);
plot(real(pole_vector1),imag(pole_vector1),"marker","*","markersize",20,"linestyle","none","color","b
");
hold on

zero_vector2=zero(G2)
pole_vector2=pole(G2)
plot(real(pole_vector2),imag(pole_vector2),"marker","*","markersize",20,"linestyle","none","color","r"
);
hold on

zero_vector3=zero(G3)
pole_vector3 = pole(G3)
plot(real(pole_vector3),imag(pole_vector3),"marker","*","markersize",20,"linestyle","none","color","c"
);
hold on

zero_vector4=zero(G4)
pole_vector4=pole(G4)
plot(real(pole_vector4),imag(pole_vector4),"marker","*","markersize",20,"linestyle","none","color","g"
);
hold off
grid on
Czerwony- A
Niebieski ciemny- B
Niebieski jasny- C
Zielony- D

Czerwony- stabilny
Niebieski ciemny- stabilny
Niebieski jasny- niestabilny
Zielony- na granicy stabilności
Wnioski i Uwagi:

You might also like