PAŃSTWOWA WYŻSZA SZKOŁA ZAWODOWA w Tarnowie INSTYTUT POLITECHNICZNY |
Artur Wałaszek Mateusz Wiatr |
|
---|---|---|
Komputerowe Układy Sterowania | ||
Rok Akad.: 2010/2011 |
Rok studiów: III |
Kierunek: ELEKTROTECHNIKA |
Temat ćwiczenia: Regulator PI |
||
Data wykonania: 30.05.11 |
Data zaliczenia: 06.06.2011 |
Ocena: |
Analiza układu regulacji.
Parametry transmitancji
$$G\left( s \right) = \frac{2s + 1}{1.3s^{2} + 1.2s + 0.4\ }$$
Rys. 1a. Odpowiedź skokowa transmitancji
A=2; B=1; C=1.3; D=1.2; E=0.4;
num=[A B];
den=[C D E];
tpro=0:0.1:10;
figure(1)
step(num,den,tpro); grid on
C1 = C/1.3;
D1 = D/1.3;
E1 = E/1.3;
w0 = sqrt(E1)
ksi = D1/(w0*2)
s=roots(den)
figure(2)
plot(real(s),imag(s),'*');grid
Rys. 1b. Bieguny transmitancji
Bieguny transmitancji:
S1= -0.4615 + 0.3077i
S2= -0.4615 - 0.3077i
Wzmocnienie w stanie ustalonym:
K=2.5
Pulsacja drgań własnych:
ω0=0.4714
Tłumienie:
ξ= 0.7071
Układ symulacyjny porównujący sygnał bazowy z transformowanym sygnałem inercyjnym.
Rys. 2. Schemat blokowy układu porównującego sygnał bazowy z przetransformowanym.
Rys. 3. Wykres przedstawiający sygnał główny oraz wyregulowany.
Przeprowadzanie aproksymacji obiektu z opóźnieniem oraz obiektem inercyjnym 2. rzędu.
Skrypt w programie Matlab:
%universal procedure for maximum of signal
mdy = y_deriv(1); %initial value of max. derivative
mt = t_sim(1); %czas początkowy
for k=2:length(t_sim)
if (y_deriv(k)>mdy)
mdy = y_deriv(k); % maximum z pochodnej
mt = t_sim(k); % time of maximum
mk = k;
end
end
y_flex=y_sim(mk,2)
t_flex=t_sim(mk)
%Stage 3 aproximation - odpowiednik modelu opoźnionego
a = mdy;
b = y_flex-mdy*mt;
L = -b/a % opóźnienie
R=0.55;
K=1/2; % iloraz wolnych wyrazow
L = 0.0535
Schemat blokowy badanego układu:
Rys. 4. Schemat blokowy układu porównania sygnałów bazowego, inercyjnego 2-go rzędu oraz opóźnionego.
Rys. 5. Wykres przedstawiający sygnał główny, inercyjny 2-go rzędu oraz opóźniony.
Błąd aproksymacji:
u=main-iner; % Różnica sygnału transmitancji oraz sygnału inercyjnego II-go rzędu
figure(1)
plot(t_sim,u); grid on; xlabel('Czas [s]'); ylabel('Wartosc bledu');
Rys. 6a. Przebieg błędu aproksymacji w czasie.
dx = 0.1
y1 = u;
P1m = trapz(y1*dx1)
Wynik: 0.5204
Błąd opóźnienia:
Rys. 6b. Przebieg błędu opóźnienia w czasie.
dx = 0.1
y2 = u1;
P2m = trapz(y2*dx)
Wynik: 0.8858
Optymalizacja parametrów układu ciągłego.
Parametry regulatora metodą Zieglera-Nicholsa:
%PI Controler – optymalizacja metodą Zieglera-Nicholsa i kryterium modułowe.
%Zigler-Nichols
a = R*L
KRzn = 0.9/a
TRzn = 3*L
%Modulus Criterion
Ko=K
T=T2
sigma=T1+T2
KRmc = T/(2*Ko*sigma)
TRmc=T
Wyniki:
a = 0.1458
KRzn = 6.1711
TRzn = 0.4861
Ko = 2.5000
T = 0.4000
sigma = 1.3000
KRmc = 0.0615
TRmc = 0.4000
Rys. 7. Optymalizacja parametrów metodą Ziglera-Nicholsa(górna gałąź) oraz według kryterium modułowego(dolna gałąź)
Rys. 8. Wykres przedstawiający porównanie odpowiedzi skokowych modeli.