Upload
dinhthuy
View
221
Download
3
Embed Size (px)
Citation preview
Modeliranje u prostoru stanja
Matematički modeli dinamičkih sistema
Matematički modeli sistema
• Posmatramo sistem:
– kontinualan
– sa koncentrisanim parametrima
• Matematički model
– Obične diferencijalne jednačine (u osnovi nelinearan model)
• Sistem diferencijalnih jednačina višeg reda
• Sistem diferencijalnih jednačina 1. reda – Matematički model u prostoru stanja
• Linearizacija → Linearan model
– Linearan matematički model u prostoru stanja
Primer fizičkog sistema
• Amortizer se krede pod dejstvom gravitacione i pobudne sile f(t). Posmatramo sile koje deluju na masu.
• Matematički model se formira na osnovu Dalamberovog zakona
– Neka je
• Oblik rešenja diferencijalne jednačine
– partikularni deo xp
– homogeni deo xh
i
if 0
)()()()( tfgmtxktxctxm
)cos()( tFtf
)()()( txtxtx hp
Primer: Rešavanje diferencijalne jednačine
• Partikularni deo
• Nakon nalaženja izvoda, uvrštavanja u dj i izjednačavanja koeficijenata dodija se sistem algebarskih jednačina čije je rešenje
EtBtAtxp )cos()sin()(
k
mgE
c
mkAB
cmk
cFA
)(
)()(
2
222
• Homogeni deo
• Karakteristična jednačina
• D > 0 daje aperiodičan odziv
• D = 0 daje kritično-aperiodičan odziv
• D < 0 daje periodičan odziv
Koeficijenti q1 i q2 se određuju na osnovu poznavanja početnih uslova.
Primer: Rešavanje diferencijalne jednačine (2)
0 kxxcxm
m
cb
m
kaxaxbx
2,,02 2
02 22 abss
Dbabbs 22
2,1
tsts
h eqeqtx 21
21)(
btbt
h teqeqtx 21)(
Dp
ptqptqetx bt
h
)sincos()( 21
Primer - konkretno
Zadato: m=10kg, k=1000kg/s2, =8rad/s i
U početnom trenutku teg se nalazi na rastojanju 0.05m od ravnotežnog položaja i nema brzinu.
• a) c=400kg/s, F=0;
• b) c=200, F=0;
• c) c=100, F=0;
• d) c=400, F=200N;
• e) c=200, F=200;
• f) c=100, F=200
Kretanje sistema posmatrati tokom prvih 5 sekundi.
0)0(
05.0)0(
)cos(
x
x
tFmgkxxcxm
Formiranje sistema dif. jedn. 1. reda
Smene:
)()(1 txtx
)()(2 txtx
)()()cos()(
)()(
122
21
txm
ktx
m
ct
m
Fgtx
txtx
Matlab rešenje
function testosc(m,c,k,F,w,Tk)
x0 = [0.05; 0]; % pocetno stanje, x(0)=.05, v(0)=0
t = 0:Tk/1000:Tk; % vremenska osa
% partikularno resenje
A = w*c*F/((k-w^2*m)^2+(w*c)^2);
B = A/w/c*(k-w^2*m);
E = m*9.81/k;
xp = A*sin(w*t) + B*cos(w*t) + E; ...
function xp = oscil(t,x,F,m,w,c,k)
g=9.81;
xp = [ x(2); g+F/m*cos(w*t)-c/m*x(2)-k/m*x(1) ];
disp('Priguseno oscilovanje')
testosc( 10, 400, 1000, 0, 8, 5 ), pause % a
testosc( 10, 200, 1000, 0, 8, 5 ), pause % b
testosc( 10, 100, 1000, 0, 8, 5 ), pause % c
disp('Prinudno oscilovanje')
testosc( 10, 400, 1000, 200, 8, 5 ), pause % d
testosc( 10, 200, 1000, 200, 8, 5 ), pause % e
testosc( 10, 100, 1000, 100, 8, 5 ) % f
... ...
% homogeno resenje
b = c/2/m;, a = sqrt(k/m); % mx^2+cx+k==x^2+2bx+a^2
D = b^2-a^2;
if D > 0
disp('prosti, razliciti polovi')
s1 = -b+sqrt(D);
s2 = -b-sqrt(D);
q = [1 1; s1 s2] \ (x0-[E+B;w*A]);
xh = q(1)*exp(s1*t)+q(2)*exp(s2*t);
elseif D == 0
disp('dvostruk pol')
q = [1 0; -b 1] \ (x0-[E+B;w*A]);
xh = (q(1)+q(2)*t).*exp(-b*t);
else
disp('konjugovano-kompleksni polovi')
a = sqrt(-D);
q = [1 0; -b a] \ (x0-[E+B;w*A]);
xh = exp(-b*t).*(q(1)*cos(a*t)+q(2)*sin(a*t));
end
x = xp + xh; % part. + homogeno res.
[ts,xs] = ode23(@oscil,[0,Tk],x0,[], F,m,w,c,k);
plot(t,x,'r',ts,xs(:,1),'b.-')
Rezultati
Priguseno oscilovanje
a) prosti, razliciti polovi
b) dvostruk pol
c) konjugovano-kompleksni polovi
0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 50.04
0.06
0.08
0.1
0.12
0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 50.05
0.06
0.07
0.08
0.09
0.1
0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 50.05
0.06
0.07
0.08
0.09
0.1
Rezultati (2)
Prinudno oscilovanje
d) prosti, razliciti polovi
e) dvostruk pol
f) konjugovano-kompleksni
0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5-0.2
0
0.2
0.4
0.6
0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5-0.1
0
0.1
0.2
0.3
0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 50.04
0.06
0.08
0.1
0.12
0.14
Nelinearan model
Matematički model u prostoru stanja
Model sistema čine (Košijeva forma):
• Sistem diferencijalnih jednačina 1. reda
• Sistem algebarskih jednačina
02121
202212122
101212111
)0(),,,...,,,...,,()(
......
)0(),,,...,,,...,,()(
)0(),,,...,,,...,,()(
nnrnnn
rn
rn
xxtuuuxxxftx
xxtuuuxxxftx
xxtuuuxxxftx
),,...,,,,...,,()(
...
),,...,,,,...,,()(
),,...,,,,...,,()(
2121
212122
212111
tuuuxxxgty
tuuuxxxgty
tuuuxxxgty
rnmm
rn
rn
Matematički model u prostoru stanja (2)
• Vektorski zapis
)),(),(()(
)0(),),(),(()( 0
tttt
tttt
uxgy
xxuxfx
ru
u
u
2
1
u
my
y
y
2
1
y
nx
x
x
2
1
x
Primer 2
• Amortizer se krede pod dejstvom gravitacione sile i pobudne sile f(t). Međutim, ne može se smatrati da je sila u opruzi linearna za sva istezanja, nego je ona funkcija pomeraja x, Fk=Fk(x). Ukoliko je ta sila Fk(x)=ax3 i pobudna sila f(t)=Fcos(t) odrediti vrednost pomeraja x(t).
)()( tfmgxfxcxm k
Fk(x)
Primer 2 – Matlab simulacija
function xp = oscil2(t,x,F,m,w,c)
% sila u opruzi je nelinearna
g = 9.81;
a = (1e5)/3;
xp = [ x(2); g+F/m*cos(w*t)-c/m*x(2)-a/m*x(1)^3 ];
x0=[0.05;0];
m=10; c=100; F=0; w=8; Tk=3; % F=30
[tn,xn] = ode23(@oscil2,[0,Tk],x0,[], F,m,w,c);
plot(tn,xn(:,1),'b.-')
0 0.5 1 1.5 2 2.5 30.04
0.06
0.08
0.1
0.12
0.14
0.16
0.18
0 0.5 1 1.5 2 2.5 30.04
0.06
0.08
0.1
0.12
0.14
0.16
0.18
F=0 F=30
Linearni modeli Linearizacija
Osobine linearnog sistema
• Ako je
• Linearan sistem zadovoljava principe
– Superpozicije
Princip superpozicije: Odziv linearnog sistema na pobudu datu zbirom pojedinačnih pobuda može se dobiti kao suma odziva na pojedinačne pobude, koje na sistem deluju nezavisno jedna od druge.
– Homogenosti • Sistem opisan relacijom y(t)=u2(t) nije linearan jer ne zadovoljava princip
superpozicije. u12(t)=y1(t); u2
2(t)=y2(t). Po principu superpozicije bi moralo biti: (u1(t)+u2(t))2=y1(t)+y2(t)=u1
2(t)+ u22(t), što nije tačno.
• Sistem y(t)=mu(t)+b nije linearan jer ne zadovoljava princip homogenosti: m(ku(t))+bky(t).
)(
)(
22
11
ufy
ufy
)( 2121 uufyy
)( 11 umfym
Princip linearizacije
))(()( txfty
)(tx
)(ty
)(ˆ ty
)(ˆ tx
)(ˆ)(ˆ txmty
0
Dobro
poklapanje
x
y
Radna
tačka
• Radnu tačku čine vrednosti ulaza i promenljivih stanja (ili izlaza)
• Izbor radne tačke?
– Najčešde (uobičajene) vrednosti promenljivih
• Vrednosti u ustaljenom stanju – nominalne vrednosti
• Predstava vrednosti promenljih
– Inkrementalna vrednost je priraštaj u odnosu na nominalnu vrednost
• Primer y(t)=mu(t)+b se može razmatrati u radnoj tački i model linearizovan oko radne tačke zadovoljava uslove linearnosti.
Radna tačka
bukmyktumty
tyykty
tukmbukmbtuukmbtkumty
btumty
),(ˆ)(ˆ
))(ˆ()(
)(ˆ))(ˆ()()(
)()(
1
1
vrednostlnainkrementa)(ˆ
vrednostnominalna
)(ˆ)()(ˆ)(
tx
x
tyytytxxtx
Linearizacija nelinearne funkcije
x
x
xx
x
fmxmxfxxf
xx
fxfxxf
xx
fx
x
fxfxxf
txfty
,ˆ)()ˆ(
ˆ)()ˆ(
...ˆˆ)()ˆ(
))(()(
2
2
2
21
)(ˆ)(ˆ
)(
)(ˆ)())(ˆ()(ˆ
)(ˆ)(
txmty
xfy
txmxftxxftyy
tyyty
1. Odrediti radnu tačku – pisanjem i rešavanjem odgovarajudih algebarskih jednačina
2. Prepisati sve linearne članove kao sume
– nominalne i
– inkrementalne vrednosti
3. Zameniti sve nelinearne članove sa prva 2 sabirka razvoja u Tejlorov red
4. Skratiti konstantne članove u differencijalnim jednačinama (Upotrebiti algebarske jednačine koje određuju radnu tačku.)
5. Definisati početne vrednosti inkrementalnih promenljivih
Koraci linearizacije
xxx )0()0(ˆ
Primer 3
• Amortizer se krede pod dejstvom gravitacione sile i pobudne sile f(t). Sila u opruzi je nelinearna Fk(x)=ax3. Odrediti linearan model sistema i simulirati njegovo ponašanje.
)()( tfmgxfxcxm k
Fk(x)
Primer (3)
• U ustaljenom stanju prelazni proces je prošao
– Svi izvodi su nula
– Srednja vrednost f(t)=0
• radna tačka
• Linearizacija nelinearnog člana Fk(x)=ax3
• Nakon zamene
0,3 ffmgxa 3
a
mgx
)(ˆ)(
)(ˆ)(
txxtx
tfftf
)(ˆ)ˆ(ˆˆ 3 tffmgxxaxcxm
)(ˆ3)(ˆ)(
)())(ˆ( 23 txxaxatxx
xFxFtxxF
xx
k
ffmgxxaxaxcxm ˆˆ3ˆˆ 23
)(ˆ)(ˆ)(ˆ)(ˆ tftxktxctxm
23 xak
0 0.5 1 1.5 2 2.5 3-0.1
-0.08
-0.06
-0.04
-0.02
0
0.02
0.04
0 0.5 1 1.5 2 2.5 3-0.1
-0.08
-0.06
-0.04
-0.02
0
0.02
0.04
Primer 3 – Matlab simulacija
function xp = oscil3(t,x,F,m,w,c)
% linearizovan model
a = 1e5*0.1433^2;
xp = [ x(2); F/m*cos(w*t)-c/m*x(2)-a/m*x(1) ];
xnom = 0.1433;
x0=[0.05-xnom;0];
m=10; c=100; F=0; w=8; Tk=3; % F=30
[tn,xn] = ode23(@oscil3,[0,Tk],x0,[], F,m,w,c);
plot(tn,xn(:,1),'b.-')
F=0 F=30
0 0.5 1 1.5 2 2.5 30.04
0.06
0.08
0.1
0.12
0.14
0.16
0.18
0.2
0 0.5 1 1.5 2 2.5 30.04
0.06
0.08
0.1
0.12
0.14
0.16
0.18
• Uporedni rezultati nelinearnog i linearnog modela
Primer 3 – Matlab simulacija (2)
x0=[0.05;0];
m=10; c=100; F=0; w=8; Tk=3; % F=30
xnom = 0.1433;
[tn,xn] = ode23(@oscil2,[0,Tk],x0,[], F,m,w,c);
[tl,xl] = ode23(@oscil3,[0,Tk],x0-xnom,[], F,m,w,c);
plot(tl,xl(:,1)+xnom,'g.-',tn,xn(:,1),'b.-')
F=0 F=30
Nelinearan dinamički model
• Posmatra se nelinearan model
• Ili model sastavljen od diferencijalnih jednačina višeg reda.
02121
202212122
101212111
)0(),,,...,,,...,,()(
......
)0(),,,...,,,...,,()(
)0(),,,...,,,...,,()(
nnmnnn
mn
mn
xxtuuuxxxftx
xxtuuuxxxftx
xxtuuuxxxftx
),,...,,,,...,,()(
...
),,...,,,,...,,()(
),,...,,,,...,,()(
2121
212122
212111
tuuuxxxgty
tuuuxxxgty
tuuuxxxgty
mnrr
mn
mn
)),(),(()(
)0(),),(),(()( 0
tttt
tttt
uxgy
xxuxfx
• Nastao linearizacijom – povezuje inkrementalne promenljive
• Sistem linearnih običnih diferencijalnih jednačina 1. reda
• Sistem linearnih algebarskih jednačina
• Pisanje “kapica” se izbegava
Linearan matematički model u prostoru stanja
022112211
202222212122221212
101121211112121111
ˆ)0(ˆ),(ˆ...)(ˆ)(ˆ)(ˆ...)(ˆ)(ˆ)(ˆ
......
ˆ)0(ˆ),(ˆ...)(ˆ)(ˆ)(ˆ...)(ˆ)(ˆ)(ˆ
ˆ)0(ˆ),(ˆ...)(ˆ)(ˆ)(ˆ...)(ˆ)(ˆ)(ˆ
nnrnrnnnnnnnn
rrnn
rrnn
xxtubtubtubtxatxatxatx
xxtubtubtubtxatxatxatx
xxtubtubtubtxatxatxatx
)(ˆ...)(ˆ)(ˆ)(ˆ...)(ˆ)(ˆ)(ˆ
...
)(ˆ...)(ˆ)(ˆ)(ˆ...)(ˆ)(ˆ)(ˆ
)(ˆ...)(ˆ)(ˆ)(ˆ...)(ˆ)(ˆ)(ˆ
22112211
222212122221212
121211112121111
tudtudtudtxctxctxcty
tudtudtudtxctxctxcty
tudtudtudtxctxctxcty
rmrrrnmnmmm
rrnn
rrnn
Linearan matematički model u prostoru stanja Vektorski format
ttt
ttt
uDxCy
xxuBxAx
0)0(,
nrn
r
nnn
n
bb
bb
aa
aa
1
111
1
111
BA
mrm
r
mnm
n
dd
dd
cc
cc
1
111
1
111
DC
Matrica stanja Matrica upravljanja
(ulaza)
Matrica izlaza Matrica ulaza/izlaza
(direktnog upravljanja)
Izbor promenljivih stanja
• minimalan skup linearno nezavisnih promenljivih
• ne moraju imati fizičku interpretaciju
• veličine uz koje stoji prvi izvod u diferencijalnim jednačinama
• obično predstavljaju elemente koji su sposobni da prime i uskladište energiju
Primer
a) Formirati matematički model u prostoru stanja za električno kolo na slici.
b) Ako se za izlaznu velicinu usvoji struja kroz otpornik R, formirati jednačinu izlaza.
c) Formirati jednačinu izlaza ako se za izlazne veličine usvoje struje kroz izvore e1 i e2.
+
e1e2
L C
R
+
+
e1
e2
L C
R+
ul uc
i i2i1
.
211
1 RiRidt
diLRiue L
212 RiRiuRiue CC
dt
duCi C2 11
1 Riedt
duRC
dt
diL c
12 Riuedt
duRC C
C
Primer (a)
211211111 eeuRiueRie
dt
duRCRie
dt
diL cC
C
211 111
eL
eL
uLdt
diC
12
111i
Cu
RCe
RCdt
duC
C
2
11
1
10
11
11
10
e
e
RC
LLu
i
RCC
L
dt
dudt
di
Cc
RC
LL
RCC
L1
0
11
=B 11
10
A
Primer (b, c)
b) ...
c) ...
2
11
2121
12221
10
10
1111
11i ;
e
e
Ru
i
Ri
eR
uR
iuR
eR
ii
iuR
eRdt
duCiii
C
CC
CC
212
11
11e
Ru
Rii
ii
C
2
11
2
1 10
001
1
01
e
e
Ru
i
Ri
i
C
Prednosti koncepta prostora stanja
• Koncept prostora stanja ima nekoliko prednosti u odnosu na klasični pristup, posebno ako se posmatra sa aspekta korišdenja digitalnih računara:
– Određivanje rešenja sistema diferencijalnih jednačina prvog reda je brže na digitalnom računaru, nego rešavanje odgovarajude diferencijalne jednačine višeg reda.
– Uprošteno je matematičko opisivanje upotrebom vektorske notacije
– Uključivanje početnih uslova sistema je jednostavno.
– Model se može primeniti na vremenski promenljive, nelinearne, stohastičke i diskretne sisteme.
Odnos između matematičkog modela sistema u vremenskom i kompleksnom domenu
• Model sistema u vremenskom domenu
• Nakon primene Laplasove transformacije
• Funkcija prenosa
)(
0, 0
tutty
ttutt
DCx
xxBAxx
sUssY
sUss
susss
DBAIC
BAIX
BAXX
1
1
DBAIC 1
ssU
sYsW
sUsWsY
Analiza sistema u prostoru stanja
• U vremenskom domenu
• Nakon primene Laplace-ove transformacije Početni uslovi ne moraju biti nula!
)()()0()( sUsss BXAXX
)()0()()( sUss BXXAI
)()()0()()( 11 sUsss
BAIXAIX
)()()0()()( 11 sUsssY
DBAICXAIC
)()()( sUssY DXC
ttt
ttt
uDxCy
xxuBxAx
0)0(,
Kretanje sistema
• Računa se preko Fundamentalne matrice sistema
• Kretanje promenljivih stanja x(t)
• Kretanje izlaza y(t)
kretanje stanja sistema pod
dejstvom početnih uslova
kretanje stanja sistema pod
dejstvom spoljne pobude
t
duttt0
)()()0()()( BΦxΦx
11 )()( AIΦ sLt
kretanje izlaza sistema pod
dejstvom početnih uslova
kretanje izlaza sistema pod
dejstvom spoljne pobude
t
tuduttty0
)()()()0()()( DBΦCxΦC