MAK669 LINEER ROBUST KONTROLabl.gtu.edu.tr/hebe/AblDrive/63288041/w/Storage/109_2011... ·...
Transcript of MAK669 LINEER ROBUST KONTROLabl.gtu.edu.tr/hebe/AblDrive/63288041/w/Storage/109_2011... ·...
2 2
Durum uzayı denklemi(state space)
Sonlu boyutta, zamanla değişmeyen dinamik bir sistem aşağıdaki
şekilde lineer sabit katsayılı diferansiyel denklem ile tanımlansın:
0 0, ( )x Ax Bu x t x
y Cx Du
0
( ) : sistem durum vektörü
( ) : sistemin başlangıç şartı
( ) : sistem girişi(input)
( ) : sistem çıkışı(output)
n
m
p
x t R
x t
u t R
y t R
, , ve uygun boyutta reel sabit matrislerA B C D
Dinamik bir sistem tek giriş ( 1) ve tek çıkış ( 1) şeklinde ise
TGTÇ(tek giriş tek çıkış)(SISO-single input single output) olarak
isimlendirilir.
Bunun dışında ÇGÇÇ(çok girişli cok çıkışlı)(MIMO- mul
m p
tiple input
and multiple output) sistemdir.
3 3
Sistem girişi u en genel formdadır. Tüm girişler u içinde ifade edilirse durum uzayı
denkleminin standart yapısı bozulmaz.
Sistem gürültüsü d ve sensör gürültüsü n olan bir sistemde durum uzayı denklemi
aşağıdaki şekilde yazılabilir:
x Ax Bu Ed
y Cx Du Fd n
0
1
u
x Ax B E d
n
u
y Cx D F d
n
x Ax Bu
y Cx Du
Durum uzayı denklemi(state space)
Durum uzayı blok yapısı
0 0, ( )x Ax Bu x t x
y Cx Du
0( ) 0
x Ax Bu Ed
y Cx Du Fd n
x t
d
u( )x t ( )y t
n
( )x t
A
B C
D
E F
5
m
k
c( )u t
( )z t
1c kz z z u
m m m
1
2
yerdeğiştirme:
hız :
x z
x z
1 2
2 2 1
1
x x
c kx x x u
m m m
1 1
2 2
0 1 0
1x x
uk cx x
m m m
( ) ( ) ( ) ( )mz t cz t kz t u t
Durum uzayı denkleminin elde edilmesi Tek serbestlik dereceli yay-kütle-sönüm sisteminin hareket denklemini düşünelim:
Değişken dönüştürme:
x Ax Bu
1 1
22
x z x zd
x zx zdt
6
1 1
2 2
1
2
0 1 0
1
Yerdeğiştirme ölçülüyorsa
1 0
x xuk c
x xm m m
xy
x
x Ax Bu
y Cx
0D
1 1
1
C
y z
m
C
m
Du
m c
D
x
k
İvme ölçülüyorsa:
0D
Durum uzayı denkleminin elde edilmesi
Çıkış denkleminin oluşturulması
1c kz z z u
m m m
7
1c kz z z u
m m m
Bir önceki işlemdeki değişkenlerin yerine orijinal değişkenleri yazalım:
0 1 0
1
1 0
z zuk c
z zm m m
zy
z
Durum uzayı denkleminin elde edilmesi
Durum uzayı denkleminin elde edilmesi işlemi
değişken dönüşümü gerçek yapıyı boz
nde
maz.
Eğer başlangıçtan itibaren durum vektörünü kabul edersek:
0 1 0
1
1 0
z z
z z
z
z
duk c
dtm m
z
m
yz
(I)
Durum uzayı yapısında esas olan durum vektörü yapısıdır.
8
Durum uzayı denkleminin elde edilmesi Sargı Alan Kontrollü DC Motor için durum uzayı denklemini elde edelim
f f f f fe R i L i
t fT K i
( ) ( ) ( )J t B t T t
( ) ( )
1
tf
f
f f f
f f
KBt t i
J J
Ri i e
L L
1
2
3
açısal yerdeğiştirme:
açısal hız :
akım : fi
1
2
3
f
d
dti
1 2
2 2 3
3 3
1
t
f
f
f f
KB
J J
Ri u
L L
fu e
1 1
2 2
3 3
1
2
3
0 1 00
0 0
1
0 0
1 0 0
t
f
f
f
KBu
J J
RL
L
y
9
Durum uzayı denkleminin elde edilmesi Basit mesnetli yayılı parametreli çubuk kontrol problemi
z
x
Sensor
Manyetik Aktüatör
f Elastik çubuk
4 2
4 2
Homojen bir elastik çubuğun düşey doğrultudaki yerdegiştirmesi ( , )
konumu ve zamanının bir fonksiyonudur. Çubuğun serbest
titreşimlerini veren denklem:
0
z x t
x t
z m z
x EI t
sx
ax: çubuk uzunuğu
: çubuğun birim uzunluk başına kütlesi
: elastiklik modülü
: kesit atalet momenti
: i. modun sönüm faktörü
: çubuk kalınlığı
: aktüatörün konumu
: sensörun konumu
i
a
s
L
m
E
I
h
x
x
Sürekli sistemlerde modelleme için çubuğun homojen çap farkı olmayan bir yapıda olması gerekir. Sınır şartları ve mod şekil fonksiyonunun bilinmesi gerekir.
10
Durum uzayı denkleminin elde edilmesi
1
İki ucundan basit mesnetli çubuk için z çözümü:
( ) : modal genlik
sin : modal fonksiyon
: mod sayısı
:çubuk üzerindek
( , ) ( )si
i yerdeğiştirmenin olduğ r
n
u ye
i
t
i xz
i x
L
i
x
x t tL
4 4
3
( 1,2, )
, 22
sin
2
i i i i i i i
i i i i i
ai i
a b c d f i
mLa b a c
i xEI ic d
L L
Sürekli sistemler teorik olarak sonsuz
sayıda titreşim moduna sahiptir. Modellemede
kontrolü amaçlanan moda kadar olan kısım
dahil edilir.
11
Durum uzayı denkleminin elde edilmesi
1 1 1 1
2 2 2 2
0
0
0 1 0
, , i
i i ii i i
i
i i i
x A x Bd
x A x B udt
A B xc b d
a a a
2
21
1 2
2
sin ( )2
sin 02
s
i
i x x
si
h i xy t
x L
C C
i xh iC
L L
Çıkış denkleminde C matrisinin
elemanlarını sensörün
bulunduğu yerdeki çubuk
mod şekil fonksiyonunun
aldığı değer belirler.
12 12
Durum uzayı denklemi blok matris yapısı
x A B x
y C D u
1: ( )A B
C sI A B DC D
Durum uzayı denkleminin blok matris şekilde gösterimi:
Transfer matrisinin gösterimi:
G=pck(A, B, C, D) [A, B, C, D]=unpck(G) G=pck([], [], [], 10) [y, x, t]=step(A, B, C, D, Iu) [y, x, t]=initial(A, B, C, D, x0) [y, x, t]=impulse(A, B, C, D, Iu) [y,x]=lsim(A,B,C,D,U,T)
13
Transfer matrisi
( ) ( ) ( )
( ) ( ) ( )
x t Ax t Bu t
y t Cx t Du t
1
( ) ( ) ( )
( ) ( ) ( )
( ) ( )
( ) ( )
sX s AX s BU s
sX s AX s BU s
X s sI A BU s
X s sI A BU s
1
1
( ) ( ) ( )
( ) ( ) ( )
( ) (
( )( ) ( )
( )
) ( )
Y s CX s DU s
Y s C sI A B D U s
Y s G s
Y sG s C sI A B D
U s
U s
(0) 0 başlangıç şartları içinx
14
Kapalı çevrim sistem transfer matrisi
- +
+
+
d
er( )K s ( )P s
yu
y rM
u d
Tüm girişlerden çıkışlara olan transfer fonksiyonlarını
içeren M matrisi transfer matrisi olarak isimlendirilir.
1
1
1
1
( )
( )
( )
( )
yr
yd
ur
ud
T PK I PK
T P I KP
T K I PK
T KP I KP
1 1
1 1
( ) ( )
( ) ( )
yr yd
ur ud
T T PK I PK P I KPM
T T K I PK KP I KP
15
Ödev
- +
+
+
d
er( )K s ( )P s
yu
e r
u M d
y n
Tüm girişlerden çıkışlara olan transfer fonksiyonlarını
içeren M transfer matrisini bulunuz.
n
16
Kapalı çevrim sistem transfer matrisi
211 12
21 222
10( 1) 1
0.2 100 1( )
2 5( 1)
0.1 10 ( 2)( 3)
s
M Ms s sM s
s s M M
s s s s
M11=nd2sys([10,10],[1,0.2,100]);
M12=nd2sys(1,[1,1]);
M21=nd2sys([1,2],[1,0.1,10]);
M22=nd2sys([5,5],conv([1 2],[1 3]));
M=sbs(abv(M11,M21),abv(M12,M22));
17
1 1( ) ( ) ( )
2
jst
jf t L F s F s e ds
j
Ters Laplace transformu transfer fonksiyonunun zaman
domenindeki cevabını vermektedir.
Kısmi Ayrışım Kuralı:
( )
K A B
s s a s s a
Ayrık kökler:
2 2( )
K A B C
s s a s s s a
Katlı kökler:
2 2( )
K A Bs C
s as bs c s as bs c
İkinci dereceden
kompleks kökler:
Transfer fonksiyonu çözümü
18
Örnek:
1
1( )
( 2)( 3)
1( )
( 2)( 3)
sC s
s s s
sL
s s s
1
( 2)( 3) ( 2) ( 3)
s A B C
s s s s s s
1 ( 2)( 3) ( 3) ( 2)
10 1 6
6
32 3 10
10
23 -2 15
15
s s s A s s B s s C
s A A
s B B
s C C
1/ 6 3/10 2 /15( )
( 2) ( 3)C s
s s s
1 2 31 3 2[ ( )] ( )
6 10 15
t tL C s c t e e
Transfer fonksiyonu çözümü
19
Örnek: 1( ) ( )
1Y s R s
Ts
2
1( )R s
s Rampa fonksiyonu girisi için y(t) bulunuz.
2 2
2
2
2
1
1 1
1 1 1
1 1 1
0 1 1
A B C
s Ts s s Ts
s Ts A Ts B s C
s C C TT T
s B B
0 2 2
0 0
TsA A TB sC
s A TB A T
2
2
2
/
1( )
1
1
1/
( ) t T
T TY s
s s Ts
T T
s s s T
y t t T Te
Transfer fonksiyonu çözümü
20
0
0
Verilen bir başlangıç şartı ( ) ve kontrol girişi ( ) için
dinamik sistemin cevabı ( ) ve ( ) için aşağıdaki
şekilde bulunur:
x t u t
x t y t t t
0
0
( ) ( )
0( ) ( ) ( )
( ) ( ) ( )
tA t t A t
tx t e x t e Bu d
y t Cx t Du t
Durum uzayı denkleminin çözümü
21 21
Durum uzayı denkleminin çözümü
( ) ( )x ax t bu t
( )
0( ) (0) ( )
tat a tx t e x e bu d
1( ) (0) ( )
( ) ( )
bX s x U s
s a s a
2 2
12! !
k kat a t a t
e atk
( ) (0) ( ) ( )sX s x aX s bU s
Skalar parametreli diferansiyel denklem:
Invers Laplace transformu alınırsa:
22
x Ax Bu
( ) (0) ( ) ( )
( ) ( ) (0) ( )
sX s x AX s BU s
sI A X s x BU s
( )
0( ) (0) ( )
tAt A tx t e x e Bu d
1 1( ) ( ) (0) ( ) ( )X s sI A x sI A BU s
0
başlangıç şartları cevabızorlanmış kısım cevabı
2 2
( )2! !
0 Karekteris
( ) ( ) (0) ( ) (
tik d nkle
)
e m
k
t
kA
x t t x
t A tt I A
t Bu
tk
sI A
d
Durum vektörü diferansiyel denklem:
Invers Laplace transformu alınırsa:
1
1 1
( ) ( )
( ) ( ) At
s sI A
t L sI A e
Durum geçiş matrisi(state transition)
Durum uzayı denkleminin çözümü
23
1 1
2 2
0 1 0
2 3 1
x xu
x x
-1
Herhangibir P matrisinin inversi:
Adjoint
det
PP
P
1( ) ( )s sI A
2
1,2
( 3) ( 2) 3 2 0
( 1)( 2) 0
1, 2
sI A s s s s
s s
s
0 0 1 1( )
0 2 3 2 ( 3)
s ssI A
s s
Örnek
Karekteristik denklem:
( 3) 2 Minor matris
1
( 3) 2 Kofaktor matris
1
sM
s
sC
s
Bir matrisin adjointi kofaktörün transpozuna
eşittir.
( 3) 1Adjoint (s)=
2
( 3) 1
( 2)( 1) ( 2)( 1)(s)=
2
( 2)( 1) ( 2)( 1)
s
s
s
s s s s
s
s s s s
( )( 1) i j
ij ijC M
Durum uzayı denkleminin çözümü
1
2
Baslangıç şartları:
(0) 1
(0) 0
x
x
Başlangıç şartı cevabını bulunuz.
24
1 2(0) 1, (0) 0x x
2 2
2 2
2 1 1 1
1 2 1 2(s)=
1 1 1 22
1 2 1 2
(2 ) ( )(t)=
2( ) ( 2 )
t t t t
t t t t
s s s s
s s s s
e e e e
e e e e
2 21
2 22
2
1
2
2
( ) ( ) (0)
1(2 ) ( )=
02( ) ( 2 )
( ) (2 )
( ) 2( )
t t t t
t t t t
t t
t t
x t t x
x e e e e
x e e e e
x t e e
x t e e
Durum uzayı denkleminin çözümü
25
1 1
2 2
0 1 0
2 3 1
x xu
x x
0(0)
0
1
x
u
Sistemin adım fonksiyonu cevabını:
-Convolution integral çözümüyle
-Ters Laplace yöntemi ile
bulunuz.
Durum uzayı denkleminin çözümü
26
2 2
2 2
( ) 2( )
( ) 2( )0
( ) 2( )
( ) 2( )
0
(2 ) ( )(t)=
2( ) ( 2 )
( )2
1
( ) 2
integrasyon limitleri , 0 alınırs
t t t t
t t t t
t tt
t t
t
t t
t t
e e e e
e e e e
e ex t d
e e
e ex t
e e
t
21
22
a
1 1
2 2
t t
t t
x e e
xe e
0
baslangic sartlari cevabizorlanmis kisim cevabi
11 12
0 21 22
12
0 22
( ) ( ) (0) ( ) ( )
( ) ( )0 0( ) ( ) ( )
( ) ( )0 1
( )( )
( )
t
t
t
x t t x t Bu d
t tx t t u d
t t
tx t
t
d
Convolution integral:
( 3) 1
( 2)( 1) ( 2)( 1)(s)=
2
( 2)( 1) ( 2)( 1)
s
s s s s
s
s s s s
Durum uzayı denkleminin çözümü
27
1
( ) ( ) (0) ( ) ( )
( ) ( ) [ (0) ( )]
X s s X s BU s
X s sI A X BU s
2
2 1 1 1
0 01 2 1 2 1( ) ( )
0 11 1 1 22
1 2 1 2
1 1 2
( 1) 2 ( 2)( )
1 2
( 1) ( 2)
1(1 ) (1 )
2( )
1(1 ) (1
2
t t
t
s s s sX s s
s
s s s s
s s s sX s
s s s s
e e
x t
e e
2
21
22
)
1 1
2 2
)
t
t t
t t
x e e
xe e
Laplace yöntemi:
Durum uzayı denkleminin çözümü
28
1 1
2 2
3 3
1
2
3
0 1 0 0
0 0 1 0
24 26 9 1
1 1 0
1
(0) 0 ,
2
t
x x
x x u
x x
x
y x
x
x u e
Bu sistemin çözümü:
2 3 4( ) 6.5 19 11.5t t ty t e e e
Durum uzayı denkleminin analitik ve nümerik
çözümünün karşılaştırılması
29
Durum uzayı denkleminin analitik ve nümerik
çözümünün karşılaştırılması
t=[0:0.01:5]; x0=[ 1 ; 0; 2]; a=[ 0 1 0; 0 0 1; -24 -26 -9]; b=[0; 0 ; 1]; c=[1 1 0]; d=0; u=exp(-t); u=ones(1,size(t,2));%adim girisi ise [yn,x]=lsim(a,b,c,d,u,t,x0); ya=-6.5*exp(-2*t)+19*exp(-3*t)-11.5*exp(-4*t);%analitik cozum plot(t,yn,'b--',t,ya,'r-'); xlabel('t [ s ]'); ylabel('y_n, y_a'); grid; title('Forced responses with initial states using analytical and numerical solutions');
30
k
kk asassu
sysG
1
1
1
)(
)()(
uyayDayDayD
uyayDayD
susyasas
k
kkk
k
kk
k
kk
2
1
1
1
1
1
1
1 )()()(
uxaxaxax
xx
xx
xx
kkkk
kk
1211
1
32
21
1xy
0001
1
0
0
0
10000
0100
0010
121
C
B
aaaa
A
kkk
Kontrol kanonik formu
Transfer fonksiyonu durum uzayı denklemi dönüşümü
31
3 2
( ) 4
( ) 3 6 2
y s
u s s s s
3 2( 3 6 2) ( ) 4 ( )s s s y s u s
3 2
3 2
3 2
( 3 6 2) ( ) 4 ( )
3 6 2 4
3 6 2 4
3 6 2 4
s s s y s u s
D y D y Dy y u
D y D y Dy y u
y y y y u
1
2
3
x y
x y
x y
1 1 1 2
2 2 2 3
3 3 3 3 2 13 6 2 4
x y x y x xd
x y x y x xdt
x y x y x x x x u
dD
dt
1 1
2 2
3 3
1
2
3
0 1 0 0
0 0 1 0
2 6 3 4
1 0 0
x x
x x u
x x
x
y x
x
Transfer fonksiyonu durum uzayı denklemi dönüşümü
num=4;
den=[1 3 6 2];
printsys(num,den,'s');
[A,B,C,D]=tf2ss(num,den)
[num1,den1]=ss2tf(A,B,C,D,1);
printsys(num1,den1,'s');
32
Frekans cevabı
( )y G s u
0( ) sin( )u t u t
0( ) sin( )y t y t
Frekans cevabi değişken frekanslı bir sinüzoidal giriş durumunda
sistemin cevabının bulunmasıdır.
G(s) gibi bir transfer fonksiyonu modelinde s yerine j girilerek bulunur.
Kararlı lineer bir sistem düşünelim:
Sinüzoidal giriş
Sabit rejimdeki çıkış sinyali aynı frekansta fakat farklı genliktedir:
( )
Re ( )
Im ( )
G j a jb
a G j
b G j
0
0
( ) , ( ) [ ]y
G j G j radu
Çıkış genliği giriş genliğinden farklıdır ve aynı zamanda girişe göre faz kayması oluşur:
2 2( ) ; ( ) arctan( / )G j a b G j b a
33
2 2 2 2
2 22 2 2 2
2
/( )
22 ( ) 2 ( )
n n n n
n nn n n n
n
G sjs s j j
2
1( )
21
n n
G j
j
1/ 22
2 2
2Gain 20log ( ) 20log 1
n n
G j
1
2
2
tan
1
n
n
Frekans cevabı
desibel [dB]
Faz
İkinci dereceden sistem:
34
Frekans cevabı
1m
2x
2k
1F
2c
2m
1x
1k 1c2F
1
2 1 1
1 2 2
2
, ,
x Ax Bu
y Cx
x
x F xx u y
x F x
x
1 1 1 1
1 1 1 1 1
1 1 2 1 1 2
2 2 2 2 2
2 2
0 0 1 0 0 0
0 0 0 1 0 0
10,
10
1 0 0 0, 0
0 1 0 0
k k c cA B
m m m m m
k k k c c c
m m m m m
C D
m1=1;m2=2; k1=1; k2=4; c1=0.2; c2=0.1; A=[ 0 0 1 0 0 0 0 1 -k1/m1 k1/m1 -c1/m1 c1/m1 k1/m2 -(k1+k2)/m2 c1/m2 -(c1+c2)/m2]; B=[0 0 0 0 1/m1 0 0 1/m2]; C=[1 0 0 0 0 1 0 0]; D=zeros(2); w = logspace(-1,1,200); [ mag,phs ] = bode(A,B,C,D,1,w);%input 1- output 1,2 [ mag,phs ] = bode(A,B,C,D,2,w);%input 2- output 1,2 magdb = 20*log10(mag); figure(1) subplot(211) semilogx(w,magdb);grid; %semilogx(w,magdb(:,1));grid; xlabel('Frequency [rad/s]'); ylabel('Gain [dB]'); title('Frequency Response '); subplot(212) semilogx(w,phs); %semilogx(w,phs(:,1)); xlabel('Frequency [rad/s]');grid; ylabel('Phase [deg]')
Frekans cevabı
[ mag,phs ] = bode(A,B,C,D,1,w);
[ mag,phs ] = bode(A,B,C,D,2,w);
Input 1 output 1,2
Input 2 output 1,2
1( )sI A B C
1F
2F
1x
2x
Frekans cevabı
10-1
100
101
-100
-50
0
50
Frequency [rad/s]
Gain
[dB
]
Frequency Response
10-1
100
101
-400
-300
-200
-100
0
Frequency [rad/s]
Phase
[deg]
10-1
100
101
-80
-60
-40
-20
0
20
Frequency [rad/s]
Gain
[dB
]
Frequency Response
10-1
100
101
-400
-300
-200
-100
0
Frequency [rad/s]
Phase
[deg]
[ mag,phs ] = bode(A,B,C,D,1,w); [ mag,phs ] = bode(A,B,C,D,2,w);
Input 1 output1,2 Input 2 output 1,2