control system toolbox - wordpress.com · • primer prevodjenje modela servosistema iz prostora...
Post on 11-May-2020
12 Views
Preview:
TRANSCRIPT
MatlabControl System Toolbox
U ovom prikazu nije želja da se daju mogudnosti Toolbox-a, ved da se ukaže na one koje se češde upotrebljavaju, kao i one čiji je način
rada ranije sretan.
Control-System Toolbox
• je kolekcija algoritama za modeliranje, analizu i projektovanje SAU
• realizovan je kroz biblioteku M-datoteka
Neke osobine
• omogudava modeliranje sistema preko funkcije prenosa ili
preko modela u prostoru stanja
• podržani su i kontinualni i digitalni (diskretni) sistemi
automatskog upravljanja
• odezbeđeno je pretvaranje jednog tipa modela u drugi
• poseduje brojne f-je koje grafički prikazuju kretanje sistema u
vremenskom ili kompleksnom domenu – čime je olakšano
tumačenje podataka
Sastoji se od funkcija za
• modeliranje sistema
• analizu sistema
• modeliranje sistema sa otvorenom i zatvorenom povratnom
spregom
• smanjenje (redukciju) reda sistema i transformacije modela
• projektovanje sistema
Modeli sistema
• Kontinualnih sistema
– model u prostoru stanja
– funkcija prenosa W(s)• određena polinomima broioca i imenioca
• nulama, polovima i pojačanjem
• Diskretnih (digitalnih) sistema
– model u prostoru stanja
– funkcija prenosa W(z)• određena polinomima broioca i imenioca
• nulama, polovima i pojačanjem
Kontinualan model u prostoru stanja
je linearan, vremenski nepromenljiv (invarijantan) sistem sa više ulaza i više izlaza (MIMO)
opisuje se poznatim skupom diferencijalnih jednačina 1. reda i skupom algebarskih jednačina
gde je: x(t) vektor koordinata stanja, u(t) vektor ulaza u sistem, a y(t) vektor izlaza.
U Matlab-u model se jednostavno predstavlja pomodu matrica A, B, C i D, koje su zasebne promenljive
)()()(
)()()(
ttt
ttt
DuCxy
BuAxx
• Primer Kretanje servomehanizma sačinjenog od jednosmernog elektromotora sa opteredenjem se opisuje diferencijalnom jednačinom
tj.
Zadavanje modela u Matlab-u se vrši unošenjem matrica modela
» A = [0 1; 0 –12.5]
» B = [0; 38.9]
» C = [1 0]
» D = 0
)(01)()(
),(9,38
0)(
5,120
10)()()(
ttty
tuttutt
xCx
xBAxx
)(9,38)(5,12)( tUtt m
Funkcija prenosa - preko polinoma
• opisuje linearan, vremenski nepromenljiv sistem sa više izlaza i jednim ulazom (SIMO), mada se češto upotrebljava samo kao veza jednog ulaza i jednog izlaza (SISO)
• PrimerModel sa dva izlaza:
se u Matlab-u predstavlja kao:» P = [0 0 3 2
1 0 2 5];
» Q = [3 5 2 1];
)()()( sUsGsY
1253
52
23
)(
)()(
23
3
sss
ss
s
sQ
sPsG
Funkcija prenosa - nule, polovi i pojačanje• f-ja prenosa se može prestaviti u faktorizovanom obliku:
gde su p(i) nule, q(i) polovi sistema, a k je pojačanje.
• Primer» [p,q,k] = tf2zp(P,Q)
p = -0.6667 0.6641 + 1.8230i
Inf 0.6641 - 1.8230i
Inf -1.3283
q = -1.3563
-0.1552 + 0.4708i
-0.1552 - 0.4708i
k = 1.0000
0.3333
nmqsqsqs
pspspsk
sQ
sPsG
n
m
,
))...()((
))...()((
)(
)()(
21
21
...nastavak
• PrimerImenioc gornje funkcija prenosa se može dobiti kao
» Q = 3 * poly(q)
Q =
3.0000 5.0000 2.0000 1.0000
Funkcija prenosa - suma parcijalnih sabiraka
• Ovaj način predstavljana radi samo za SISO modele.
• Primer» [r,t,k] = residue(P(1,:),Q)
r = -0.4143
0.2072 - 0.5334i
0.2072 + 0.5334i
t = -1.3563
-0.1552 + 0.4708i
-0.1552 - 0.4708i
k = []
)(...)(
)()(
2
2
1
1 skts
r
ts
r
ts
r
sQ
sPsG
n
n
Diskretan model u prostoru stanja
• upotrebljava matrice E, F, C, D za opis (isto kao i kontinualan model)
• u principu x, u i y su vektori
)()()(
)()()1(
kkk
kkk
DuCxy
FuExx
Funkcija prenosa digitalnog sistema
• može se predstaviti kao količnik polinoma ili kao kolekcija nula i polova i pojačanja
• umesto kompleksne promenljive s, upotrebljava se kompleksna promenljiva z
• i ovde se može upotrebiti suma parcijalnih sabiraka
• kod upotrebe modela sistema treba paziti da se podaci vezani za kontinulan model ne upotrebe u funkcijama specifičnim za diskretan domen i obrnuto.
Konverzije modela
• opisane grupe od po tri tipa modela se mogu međusobno konvertovati - prevoditi iz jednog oblika u drugi.
• Kod ovih konverzija je potrebno ispoštovati ograničenja modela po broju izlaza, tako da npr. nije mogude prevesti model iz prostora stanja sa više izlaza u reprezentaciju preko funkcija prenosa
Konverzije modela - nastavak...
[p,q] = ss2tf(a,b,c,d,bu)
[r,t,k]= ss2zp(a,b,c,d,bu)
[a,b,c,d] = tf2ss(p,q)
[r,t,k] = tf2zp(p,q)
[a,b,c,d] = zp2ss(r,t,k)
[p,q] = zp2tf(r,t,k)
• Primer Prevodjenje modela servosistema iz prostora stanja u funkciju prenosa
» [P,Q] = ss2tf(A,B,C,D)
P = 0 0 38.9000
Q = 1.0000 12.5000 0
tj. dobijena je funkcija prenosa
Ako se izlaz sistema posmatra druga koordinata stanja» [Pw,Qw] = ss2tf(A,B,[0 1],D)
Pw = 0 38.9000 0
Qw = 1.0000 12.5000 0
Eliminisanje suvišne nule i pola:» [Pw,Qw] = minreal(Pw,Qw)
1 pole-zeros cancelled
Pw = 0 38.9000
Qw = 1.0000 12.5000
)5,12(
9,38)(
ssUsG
m
Diskretizacija modela
• predstavlja formiranje diskretnog (digitalnog) modela sistema na osnovu poznavanja njegovog kontinualnog modela u prostoru stanja i obrnuto.
[a,b] = d2c(e,f,T)
[e,f] = c2d(a,b,T)
[ad,bd,cd,dd] = c2dt(a,b,c,d,T,kašnj)
Primer Diskretizovanje modela servomehanizma» [E,F] = c2d(A,B,0.025)
E = 1.0000 0.0215
0 0.7316
F = 0.0110
0.8352
Sada se može diskretan model sistema prevesti u oblik funkcije prenosa» [Pz,Qz] = ss2tf(E,F,C,D)
Pz = 0 0.0110 0.0099
Qz = 1.0000 -1.7316 0.7316
tj. dobijena je diskretna funkcija prenosa
7316.07316.1
0099.0011.0)(
2
zz
z
UzG
m
Analiza u vremenskom domenu
U vremenskom domenu se mogu posmatrati: vreme porasta, vreme smirenja, preskok, greška u ustaljenom stanju i to na osnovu:
karakterističnog odziva na jediničnu pobudu step dstep
karakterističnog odziva na impulsku pobudu impulse dimpulse
odziva na početno stanje initial dinitial
odziva na proizvoljnu pobudu lsim dlsim
odziva na pobudu belim šumom covar dcovar
Analiza u vremenskom domenu - Kontinualan domen
[y,x,t] = step(a,b,c,d,bu,t)
[y,x,t] = step(p,q,t)
[y,x,t] = impulse(a,b,c,d,bu,t)
[y,x,t] = impulse(p,q,t)
[y,x,t] = initial(a,b,c,d,x0,t)
[y,x,t] = lsim(a,b,c,d,u,t,x0)
[y,x,t] = lsim(p,q,u,t)
• Ukošeni parametri nisu obavezni.
• Ukoliko se funkcija pozove bez preuzimanja rezultata, Matlab de “sam nacrtati odziv”.
• Primer Jedinični odziv sistema
» step(A,B,C,D,1,0:0.001:0.2)
Istovetan dijagram se dobija izvršavanjem
» step(P,Q,0:0.001:0.2)
0 0.05 0.1 0.15 0.20
0.05
0.1
0.15
0.2
0.25
0.3
0.35
0.4
Time (secs)
Analiza u vremenskom domenu - Digitalan domen
[y,x] = dstep(e,f,c,d,bu,n)
[y,x] = dstep(p,q,n)
[y,x] = dimpulse(e,f,c,d,bu,n)
[y,x] = dimpulse(p,q,n)
[y,x] = dinitial(e,f,c,d,x0,n)
[y,x] = dlsim(e,f,c,d,u,x0)
[y,x] = dlsim(p,q,u)
• Ukošeni parametri nisu obavezni.
• Ukoliko se funkcija pozove bez preuzimanja rezultata, Matlab de “sam nacrtati odziv”.
0 1 2 3 4 5 6 7 80
0.05
0.1
0.15
0.2
0.25
0.3
0.35
0.4
No. of Samples
Primer Jedinični odziv sistema» dstep(E,F,C,D,1,9)
Primer Jedinični odziv sistema – uporedni prikaz
[y,x,t]=step(A,B,C,D,1,0:0.001:0.2);
T1=0.025; [E1,F1]=c2d(A,B,T1); y1=dstep(E1,F1,C,D,1,0.2/T1+1);
T2=T1/3; [E2,F2]=c2d(A,B,T2); y2=dstep(E2,F2,C,D,1,0.2/T2+1);
plot(t,y,'r');
hold on
stairs((0:length(y1)-1)*T1,y1,'b')
stairs((0:length(y2)-1)*T2,y2,'g')
hold off
0 0.02 0.04 0.06 0.08 0.1 0.12 0.14 0.16 0.18 0.20
0.05
0.1
0.15
0.2
0.25
0.3
0.35
0.4
Analiza u kompleksnom domenu
• Analiza u kompleksnom domenu daje odgovore na: propusni opseg učestanosti, rezonancu, jednosmerno pojačanje, preteke stabilnosti, stabilnost sistema sa zatvorenom povratnom spregom, frekventni odziv sistema, ...
Analiza u kompleksnom domenuBode-ove i Nyquist-ove krive
• Kontinualan domen
[m,f,w] = bode(a,b,c,d,bu,w)
[m,f,w] = bode(p,q,w)
[m,f,w] = nyquist(a,b,c,d,bu,w)
[m,f,w] = nyquist(p,q,w)
• Digitalan domen
[m,f,w] = dbode(e,f,c,d,T,bu,w)
[m,f,w] = dbode(p,q,T,w)
[m,f,w] = dnyquist(e,f,c,d,T,bu,w)
[m,f,w] = dnyquist(p,q,T,w)
Primer» nyquist([1 2],[1 2 5])
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7-0.8
-0.6
-0.4
-0.2
0
0.2
0.4
0.6
Real Axis
-1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8-1
-0.8
-0.6
-0.4
-0.2
0
0.2
0.4
0.6
0.8
1
Nyquist Diagram
Real Axis
Imagin
ary
Axi
s
Primer» nyquist([1 2],[1 2 5 0])
-0.25 -0.2 -0.15 -0.1 -0.05 0 0.05-1.5
-1
-0.5
0
0.5
1
1.5
Real Axis
Imag
-1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4-1.5
-1
-0.5
0
0.5
1
1.5
Nyquist Diagram
Real Axis
Imagin
ary
Axi
s
» nyquist([1 2],[1 2 5 0],logspace(-0.5,2))
Primer» P=80*[1/20 1]; » Q=conv([1/0.1 1],conv([1/100 1],[1/100 1]))Q = 0.0010 0.2001 10.0200 1.0000» bode(P,Q)
10-2
10-1
100
101
102
103
-50
0
50
Frequency (rad/sec)
Gain
dB
10-2
10-1
100
101
102
103
-90
-180
0
Frequency (rad/sec)
Phase
deg
-100
-50
0
50
Magnitu
de (
dB
)
10-3
10-2
10-1
100
101
102
103
104
-180
-135
-90
-45
0
Phase (
deg)
Bode Diagram
Frequency (rad/sec)
Osobine modela
Postoje funkcije koje određuju:
• kontrolabilnost (ctrb) i opservabilnost sistema (obsv),
• faktor prigušenja i prirodnu učestanost (damp i ddamp),
• pojačanje sistema u ustaljenom stanju (dcgain i ddcgain),
• sopstvene vrednosti kontinualnog sistema sortirane po realnom delu (esort) i
• sopstvene vrednosti diskretnog modela sortirane po modulu (dsort)
...
Modeliranje sistema
• postoje brojne funkcije koje pomažu kod formiranja složenih modela sistema na osnovu poznavanja modela delova sistema.
– funkcije za ostvarenje serijskih series,
– paralelnih parallel i
– povratnih veza feedback,
– jedinična povratna sprega cloop i
– funkcije za povezivanje na osnovu blok dijagrama (blkbuild i connect).
– Dodatne funkcije za manipulisanje modelom: augstate, append, ssselect, ssdelete.
• Vedina ovih funkcija može da radi i sa modelima u prostoru stanja i sa funckijama prenosa.
Modeliranje sistema - nastavak
• Postoje posebne funkcije za formiranje slučajnih modela (rmodel i drmodel), za formiranje modela sistema 2. reda (ord2), modela sa kašnjenjem (pade).
Rad sa modelima i projektovanje regulatora
• Posebne grupe funkcije se odnose na redukovanje modela sistema i transformacije modela iz jedne kanonske forme u drugu isl.
• Funkcije za dizajn se odnose na projektovanje regulatora. Neke od funkcija se odnose na izbor pojačanja, kao što je GMK (rlocus).
• Druge funkcije impementiraju savremene tehnike opservera stanja, projektovanja linearnog optimalnog regulatora, kao i tehnike podešavanja polova.
• Vedina ovih funkcija ima varijantu i za kontinualan i za digitalana domen.
top related