WYDZIAŁ ELEKTROTECHNIKI, AUTOMATYKI I INFORMATYKI
INSTYTUT AUTOMATYKI I INFORMATYKI
KIERUNEK AUTOMATYKA I ROBOTYKA
STUDIA STACJONARNE I STOPNIA
PRZEDMIOT : LABORATORIUM PODSTAW AUTOMATYKI
ĆW nr 6
TEMAT: Badanie stabilności układów na podstawie kryterium Nyquista. Zapas fazy i wzmocnienia
NAZWISKO: DĄBEK IMIĘ: DOMINIKA
TERMIN WYKONANIA: 28-04-2011 TERMIN ODDANIA: 05-05-2011
Prowadzący:
Dr inż. Grzegorz Bialic
STABILNOŚĆ.
Kryterium Nyquista opiera się na badaniu charakterystyki amplitudowo-fazowej otwartego układu automatyki, która pozwala sądzić, czy układ zamknięty jest stabilny czy też niestabilny.
Zad.1
Zbadać stabilność układu:
$G\left( s \right) = \frac{k}{s^{3} + 3s^{2} + s + 1}$
Kod:
clear all % czyszczenie pamięci roboczej
close all % zamykania otwartych okien graficznych
liczG=[0,0,0,1];
mianG=[1,3,1,1];
rG = roots(mianG)
% pierwiastki układu otwartego:
% rG = -2.7693
% -0.1154 + 0.5897i
% -0.1154 - 0.5897i
obiektG = tf(liczG,mianG); % obiekt A
obiektZ = feedback(obiektG, 1) % obiekt zamknięty
[liczZ, mianZ] = tfdata(obiektZ,'v');
rZ_A = roots(mianZ)
% pierwiastki układu zamkniętego:
% rZ_A = -2.8933
% -0.0534 + 0.8297i
% -0.0534 - 0.8297i
figure(1)
hold on;
[Re,Im] = nyquist(liczG, mianG) % charakterystyka Nyquista
plot(Re,Im)
plot(rG,'b+')
plot(rZ_A,'g*')
point=complex(-1,0);
plot(point,'ro','MarkerFaceColor','r')
V=axis;
plot(floor(V(1)):ceil(V(2)),zeros(length(floor(V(1)):ceil(V(2)))),'k:');
plot(zeros(length(floor(V(3)):ceil(V(4)))),floor(V(3)):ceil(V(4)),'k:');
legend ('Charakterystyka Nyquista', 'Pierwiastki ukl. otwartego', 'Pierwiastki ukl. zamknietego') % legenda
title ('Nyquist diagram') % tytuł
xlabel ('Real') % opis osi X
ylabel ('Imaginary') % opis osi Y
Układ ten jest stabilny, ponieważ pierwiastki nie posiadają dodatnich części rzeczywistych, a punkt (-1,j0) znajduje się po lewej stronie od charakterystyki Nyquista.
$G\left( s \right) = \frac{k}{{2s}^{3} + 3s^{2} + s + 1}$
Kod:
clear all % czyszczenie pamięci roboczej
close all % zamykania otwartych okien graficznych
liczG=[0,0,0,1];
mianG=[2,3,1,1];
rG = roots(mianG)
% pierwiastki układu otwartego:
% rG = -1.3982
% -0.0509 + 0.5958i
% -0.0509 - 0.5958i
obiektG = tf(liczG,mianG); % obiekt A
obiektZ = feedback(obiektG, 1) % obiekt zamknięty
[liczZ, mianZ] = tfdata(obiektZ,'v');
rZ_A = roots(mianZ)
% pierwiastki układu zamkniętego:
% rZ_A = -1.5832
% 0.0416 + 0.7937i
% 0.0416 - 0.7937i
figure(1)
hold on;
[Re,Im] = nyquist(liczG, mianG) % charakterystyka Nyquista
plot(Re,Im)
plot(rG,'b+')
plot(rZ_A,'g*')
point=complex(-1,0);
plot(point,'ro','MarkerFaceColor','r')
V=axis;
plot(floor(V(1)):ceil(V(2)),zeros(length(floor(V(1)):ceil(V(2)))),'k:');
plot(zeros(length(floor(V(3)):ceil(V(4)))),floor(V(3)):ceil(V(4)),'k:');
legend ('Charakterystyka Nyquista', 'Pierwiastki ukl. otwartego', 'Pierwiastki ukl. zamknietego') % legenda
title ('Nyquist diagram') % tytuł
xlabel ('Real') % opis osi X
ylabel ('Imaginary') % opis osi Y
Tak jak poprzednio układ nie posiada dodatnich części rzeczywistych pierwiastków układu otwartego. Jednakże jest on niestabilny, ponieważ charakterystyka amplitudowo-fazowa okrąża punkt (-1,j0) jeden raz.
Zad.2
$G\left( s \right) = \frac{s + 1}{{0.01s}^{4} + {0.5s}^{3} + 3s^{2} - 10s + 10}$ dla K={50,125,200}
Kod:
clear all % czyszczenie pamięci roboczej
close all % zamykania otwartych okien graficznych
for i=1:3
K=[50,125,200]
liczG=K(i)*[0 0 0 1 1]
mianG=[0.01 0.5 3 -10 10]
rG = roots(mianG)
obiektG = tf(liczG,mianG)
obiektZ = feedback(obiektG, 1)
[liczZ, mianZ] = tfdata(obiektZ,'v')
rZ_A = roots(mianZ)
figure(i);
hold on;
[Re,Im] = nyquist(liczG, mianG)
plot(Re,Im)
plot(rG,'b+')
plot(rZ_A,'g*')
point=complex(-1,0);
plot(point,'ro','MarkerFaceColor','r')
V=axis;
plot(floor(V(1)):ceil(V(2)),zeros(length(floor(V(1)):ceil(V(2)))),'k:');
plot(zeros(length(floor(V(3)):ceil(V(4)))),floor(V(3)):ceil(V(4)),'k:');
legend('Charakterystyka Nyquista','Pierwiastki ukl. otwartego','Pierwiastki ukl. zamknietego');
title ('Nyquist diagram')
xlabel ('Real')
ylabel ('Imaginary')
hold off;
figure(i+3);
step(liczZ,mianZ);
end
K=50
K=125
K=200
Układy o wzmocnieniu k=50 oraz k=125 są stabilne, gdyż charakterystyka amplitudowo-fazowa okrąża punkt (-1,j0). Układ ze wzmocnieniem k=200 jest niestabilny, ponieważ wykres Nyquista nie okrąża punktu (-1,j0).
ZAPAS FAZY I WZMOCNIENIA.
Stabilność względna systemu jest określana przez parametry takie jak zapas wzmocnienia i zapas fazy, które pozwalają na określenie „jak daleko” system znajduje się od granicy stabilności wyznaczonej przez kryterium Nyquista.
Zad.3
$G\left( s \right) = \frac{k}{{(s + 1)}^{3}}$
zapas fazy wynosi 45°
Kod:
function e = faza(k)
Zp=45; % zadany zapas fazy
[licz,mian] = zp2tf([],[-1 -1 -1],k);
[Gm, Pm] = margin(licz,mian);
e=abs(Pm-Zp); % błąd
margin(licz,mian);
[Re,Im]=nyquist(licz,mian);
plot(Re,Im);
end
%wynik_Kp =
%
% 2.8284
%
%
%blad_Kp =
%
% 6.1803e-005
------------------------------------------------------------------------
clear all
close all
figure
[wynik_Kp,blad_Kp]=fminsearch(@faza,1)
------------------------------------------------------------------------
zapas wzmocnienia wynosi 6[dB]
Kod:
function e = wzmocnienie(k)
zw=6;
[licz,mian]=zp2tf([],[-1 -1 -1],k);
[Gm, Pm]=margin(licz,mian);
Gm_dB=20*log10(Gm);
e=abs(Gm_dB-zw); % bład
margin(licz,mian);
[Re,Im]=Nyquist(licz,mian);
plot(Re,Im);
end
%wynik_Kp2 =
%
% 4.0101
%
%
%blad_Kp2 =
%
% 1.4024e-005
--------------------------------------------------------------------------
clear all
close all
figure
[wynik_Kp2,blad_Kp2]=fminsearch(@wzmocnienie,1)
W pierwszym przypadku, gdy zapas fazy wynosi 45˚, zapas wzmocnienia 9.03dB , wzmocnienie wynosi 2.8284, błąd równa się 6.1803e-005.
W drugim przypadku, gdy zapas wzmocnienia wynosi 6dB, zapas fazy 27˚, wzmocnienie wynosi 4.0101, błąd równa się 1.4024e-005.