mak669 lineer robust kontrolabl.gtu.edu.tr/hebe/abldrive/63288041/w/storage/109_2011... · 2014. 9....

Post on 12-Nov-2020

7 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

1

MAK669 LINEER

ROBUST KONTROL

Prof.Dr. Selim SİVRİOĞLU

s.selim@gyte.edu.tr

26.09.2014

2

Ders takvimi

Dersler:

Toplam 12 hafta içinde 10 hafta ders 1 hafta laboratuar uygulaması ve 1 hafta sınav yapılacaktır. Derse devam %70 istenmektedir

Eylül 26

Ekim 3, 10, 17, 24, 31

Kasım 7, 14, 21, 28

Aralık 5, 12, 19

3 Ekim kurban bayramı tatilidir.

Akademik takvim sonu 19 Aralık

Ders sunumları Ders Web’e yüklenecektir.

3

Kaynaklar

•Essentials of Robust Control K. Zhou, J. Doyle • Robust Control Design with Matlab D.W.Gu, P.H. Petkov, M.M. Konstantinov • Robust and Adaptive Control E. Lavretsky, K. A. Wise

4

Ders önşartları

• Feedback Kontrolün Esaslarını bilmek

• Dinamik Sistemlerin Modellenmesini bilmek

• Matlab/Simulink ortamında simulasyon yapabilme altyapısı olmak

5

Ders yükümlülükleri

• Yıl İçi Sınavı

• Ödevler

• Final Sınavı

Ders iki oturumda tek ara şeklinde yapılacak.

6

Ders kapsamı ve amacı

• Lineer kontrol esasları

• Mühendislik sistemlerinin H-infinity kontrol dizaynı

• Ödevlerle öğrencinin verilen bir problemi modelleme ve kontrol dizayn yapabilmesi amaçlanmaktadır. • Konuların anlatımında ispat verilmeyecek

Yıliçi ödevi teslim formatı: Isimsoyad_OdevNo.doc (e-mail adresime gönderilecek. Basılı döküman verilmeyecek.)

7

Kontrol Sistem Tasarımı

• Kontrol dizayn toolbox kullanımı • Sistem simülasyonunun gerçeklenmesi

-Control system toolbox -Robust control toolbox -LMI control toolbox

Matlab/Simulink hem tasarımda hem de simülasyon çalışmalarında kullanılmaktadır.

Kontrol sistem yapısı

Geribesleme kontrol sistemini oluşturan elemanlar ve değişkenler blok yapısı içinde gösterilebilir ve analiz edilebilir.

Kontrol sistem yapısı

Oda sıcaklığı kontrol sistemi Kontrol sisteminde değerlendirme değişkenleri fiziksel değişkenler olması gerekmez. Fiziksel değişkenlerin ölçeklendirilmiş karşılığı olan elektriksel değişkenler(V) olabilir.

10

Kontrol sistem yapısı

r u

: referans girişi

: kontrol edilen değişken

: kontrol girişi

r

y

u

Kontrolör Aktüatör Sistem

Sensör

Sistem

Gürültüsü

Sensor

Gürültüsü

y+

-

11

Kontrol sistem yapısı

r uKontrolor Aktuator Sistem

Sensor

y

( )K s ( )P se ur y

_

+

( ) : Toplam Sistem (sistem+aktuator+sensor) transfer fonksiyonu

( ) : Kontrolor

P s

K s

( )P s

_

+

12

Kontrol sistem yapısı

r uKontrolor Aktuator Sistem

Sensor

Sistem

Gürültüsü

Sensor

Gürültüsü

y

( )P s

( )K s ( )P se

u

r y_

+

n

w

+

_

13

Blok diyagramı işlemleri

1G 2G

3G

1r

2r

cu 1c

2c

1 2c G u

1 1u G r

2 3 2c G r

1 2 1 2 1 3 2c c c G G r G r

er

y

Gr u+

-

Toplam noktası Kazanc elemani

+

+

Blok diyagramı işlemleri transfer fonksiyonları ve giriş çıkış sinyalleri arasındaki toplam ilişkiyi bulmakta kullanılır.

14

Blok diyagramı işlemleri

?e

r

1( )G s 2 ( )G se ur

y

H

-

?y

r

1 2

1 2

( ) ( )

1 ( ) ( )

G s G sy

r G s G s H

?u

r+

15

- +

+

+

d

er)(1 sG )(2 sG

1 2

1 2

( ) ( )

( ) ve ( ) transfer fonksiyonlarini bulunuz.

e P s r P s d

P s P s

y

Blok diyagramı işlemleri

( )K s ( )P se ur y

_

+

Servo yapı: Bir kapalı çevrim kontrol sisteminde kontrol edilen değişken belli bir

referans değerini takip ediyor ve yakınsıyor ise bu kontrol sistemi servo yapıdadır.

( )K s ( )P se u0r y

_

+

Regülatör yapı: Takip edilecek bir değişken yoktur. Kontrol edilen değişken sistemin

kararlı durumunun belirlediği bir değere yakınsıyor ise regülatör yapıdadır. Lineer

sistemlerde kararlılık değeri çoğunlukla sıfır olacak şekilde ortaya çıkar.

Kontrol yapısı tipleri

( )K s ( )P su

n

y

+

1

1 2 1

1 2

1 2 1

( )( )

( )

m m

m m

n n n

n n

b s b s b s bN sG s

D s s a s a s a s a

Transfer fonksiyonu

u

)(1 sG

y

Transfer fonksiyonu giriş ile çıkış arasındaki ilişkiyi veren sistemin bir modelidir. Matematiksel modelleme ile veya deneysel olarak elde edilebilir.

( )y

G su

En genel halde transfer fonksiyonu tanımı:

18

DC MOTOR : Sargı Alan Kontrollü DC Motor

f f f f fe R i L i

J B

T

t fT K i

Transfer fonksiyonu

( ) ( ) ( )J t B t T t

19

2

2

2 2

( )( ) ( )

θ(s) θ(s)

θ(s)=

θ

tf

f f

tf

f f

t t

f f f f f

B T tt t

J J

KBs s E

J J R L s

KBs s E

J J R L s

K KJ

E Js BsJ R L s R L s Js Bs

Transfer fonksiyonu

f f f f f

f f f

f f

t

E R I L sI

R L s I

TR L s

K

t f f

t

TT K I I

K

tf

f f

KT E

R L s

Laplace transformasyonu uygulanırsa:

20

Transfer fonksiyonu

num=[b1,b2,. . .,bm,bm+1]; den=[1,a1,a2,. . .,an−1, an]; G=tf(num,den)

Transfer Fonksyonlarının Matlab Gösterimi:

1

1 2 1

1 2

1 2 1

( )m m

m m

n n n

n n

b s b s b s bG s

s a s a s a s a

4 3 2

5( )

2 3 4 5

sG s

s s s s

num=[1,5]; den=[1,2,3,4,5]; G=tf(num,den)

tf komutu

21

Transfer fonksiyonu

2 2 3 2

6 5( )

( 3 1) ( 6)( 6 5 3)

sG s

s s s s s s

den=conv(conv(conv([1,3,1],[1,3,1]),[1,6]),[1,6,5,3]); num=6*[1,5]; G=tf(num,den)

conv() komutu ile gosterim

25( 10)( )

( 8)( 12)( 0.3)

sG s

s s s

num=25*[1 10]; den=conv(conv([1 8],[1 12]),[1 0.3]); G=tf(num,den)

22

Transfer fonksiyonu

s=tf('s'); G=6*(s+5)/(s^2+3*s+1)^2/(s+6)/(s^3+6*s^2+5*s+3);

Laplace değişkeni tanımlanarak aşağıdaki şekilde yazılabilir.

G.Variable='p'; G.ioDelay=0.5; set(G,'Variable','p','ioDelay',0.5);

Yukarıdaki transfer fonksiyonunda operatör sembolünü değiştirmek ve sisteme bir transport gecikmesi vermek gerekirse:

0.5

8 7 6 5 4 3 2

6 5( )

18 124 417 740 729 437 141 18

p pG s e

p p p p p p p p

23

G11=tf(0.1134,[1.78 4.48 1],'ioDelay',0.72); G12=tf(0.924,[2.07 1]); G21=tf(0.3378,[0.361 1.09 1], 'ioDelay',0.3); G22=tf(-0.318,[2.93 1], 'ioDelay',1.29); G=[G11, G12; G21, G22];

Transfer fonksiyonu matrisi(MIMO Sistem Gösterimi)

0.72

211 12

0.3 1.2921 22

2

0.1134 0.924

1.78 4.48 1 2.07 1( )

0.3378 0.318

0.361 1.09 1 2.93 1

s

s s

e

G Gs s sG s

G Ge e

s s s

Transfer fonksiyonu

24

z=-[z1; z2; · · · ; zm]; p=-[p1; p2; · · · ; pn]; G=zpk(z,p,K)

1 2

1 2

( )( ) ( )( )

( )( ) ( )

m

n

s z s z s zG s K

s p s p s p

Transfer fonksiyonu pay kökleri sıfırlar(zeros) ve payda kökleri (poles) çarpımları olarak verilebilir.

z=[-1.9294; -0.0353+0.9287j; -0.0353-0.9287j]; p=[-0.9567+1.2272j; -0.9567-1.2272j; +0.0433+0.6412j; +0.0433-0.6412j]; G=zpk(z,p,6)

( 1.9294)( 0.0353 0.9287 )( ) 6

( 0.9567 1.2272 )( 0.0433 0.6412 )

s s iG s

s i s i

Zero-Pole-Gain

Transfer fonksiyonu

25

205927

15106234)(

2345

2345

sssss

ssssssG

num=[4 3 2 6 10 15]; den=[1 7 2 9 5 20]; printsys(num,den) [z,p,k]=tf2zp(num,den) [num,den]=zp2tf(z,p,k)

z = 0.8865 + 1.0813i 0.8865 - 1.0813i -1.3388 -0.5921 + 1.0402i -0.5921 - 1.0402i p = -6.8929 0.7062 + 1.1166i 0.7062 - 1.1166i -0.7598 + 1.0417i -0.7598 - 1.0417i k = 4

Transfer fonksiyonu

zero pole gösteriminden transfer fonksiyonuna dönüşüm

Transfer fonksiyonundan zero pole gösterimine dönüşüm

26

Blok diyagramlarının bağlanması

1 22

1 1( ) , ( )

( 1) ( 1)G s G s

s s

%Paralel G1=zpk([],[-1,-1],1); G2=zpk([],[-1],1); G=G1+G2

%Seri G1=zpk([],[-1,-1],1); G2=zpk([],[-1],1); G=G1*G2

Transfer fonksiyonu

27

Geri besleme yapısı:

G=feedback(G1,G2,Sign)

1 22

1

1 2 1

1

1 2 1

1 1( ) , ( )

2 1 1

( ) ( )[ ( ) ( )] : feedback

( ) ( )[ ( ) ( )] : feedback

G s G ss s s

G s G s I G s G s pozitif

G s G s I G s G s negatif

%negatif feedback G1=tf(1,[1 2 1]); G2=tf(1,[1 1]); G=feedback(G1,G2)

%pozitif feedback G=feedback(G1,G2,+1)

Transfer fonksiyonu

28

( ) ( )( )

1 ( ) ( ) ( )

ccl

c

G s G sG s

H s G s G s

Gcl=feedback(G*Gc,H)

3 2

4 3 2

7 24 24 10 5 1( ) , ( ) , ( )

10 35 50 24 0.01 1c

s s s sG s G s H s

s s s s s s

G=tf([1 7 24 24],[1,10,35,50,24]); Gc=tf([10,5],[1,0]); H=tf([1],[0.01,1]); G_cl=feedback(G*Gc,H)

Transfer fonksiyonu

29

syms ka kr c1 c2 c Ra T1 T2 km kb s % symbolic declaration Ga=feedback( 1/Ra/(T1*s+1)*km *1/c/(T2*s+1),kb); % inner loop g1=c1*feedback(ka*kr*Ga/s,c2); g1=collect(g1,s)

M(t)=0

function H=feedback(G1,G2,key) if nargin==2; key=-1; end, H=G1/(sym(1)-key*G1*G2); H=simple(H);

Symbolic Toolbox içinde feedback komutu ile işlem yapabilmek için aşağıdaki programın toolbox\symbolic\@sym altına yerleştirilmesi gerekmektedir.

Transfer fonksiyonu

30

Geri besleme yapisi:

g1=tf(1,[0.01,1]); g2=tf([0.17,1],[0.085,0]); g3=g1; g4=tf([0.15,1],[0.051,0]); g5=tf(70,[0.0067,1]); g7=tf(130,[1,0]); g6=tf(0.21,[0.15,1]); g8=0.212; g9=tf(0.1,[0.01,1]); g91=g9/g7; g10=0.0044*g1; gg1=feedback(g7*g6,g8); %paths 6-8 gg2=feedback(gg1*g5*g4,g91); %paths 4-9 G=feedback(gg2*g3*g2,g10)*g1; minreal(zpk(G)), %overall system

Transfer fonksiyonu

31

Symbolic Toolbox icinde ifade edilen bir laplace() fonksiyonu verilen bir f(t) fonksiyonunun Laplace donusumunu elde etmekte kullanilabilir. F=laplace(f )

( ) cos( )btf t e at c

syms s t a b c; f= exp(b*t)*cos(a*t+c); F=laplace(f)

F =cos(c)*(s-b)/((s-b)^2+a^2)-sin(c)*a/((s-b)^2+a^2)

2 2 2 2

cos( )( ) sin( )( )

( ) ( )

c s b c aF s

s b a s b a

Matlab’de hesaplanan:

Transfer fonksiyonu

32

0 5 10 150

0.2

0.4

0.6

0.8

1

1.2

1.4

1.6

1.8

2

Time [ s ]

Am

plit

ude

Step repsonse of the second order system

=0.0

=1

-2 -1.5 -1 -0.5 0 0.5 1-2

-1.5

-1

-0.5

0

0.5

1

1.5

2

Real Axis

Imag A

xis

Pole zero map

2

2 2( ) ( )

2

n

n n

C s R ss s

wn=1; %natural frequency zeta=0.0; % damping coefficient t1=0:0.05:15; % define a time interval for k=1:9; num=[ wn*wn]; den=[1 2*zeta*wn wn*wn]; [y1,x1,tt]=step(num,den,t1); % compute the step response ydat(:,k)=y1; %store data figure(1) plot(tt,y1) %plot the figure xlabel('Time [ s ]'); ylabel('Amplitude'); title('Step repsonse of the second order system') hold on; figure(2) zeta=0.1+zeta; pzmap(num,den) % plot the pole and zero map hold on; axis([-2 1 -2 2]); %Define axis size end figure(3) mesh(ydat') %3D plot set(gca,'xtick',[0 100 200 300 400])

Transfer fonksiyonu

33

1

2

2

( 5)( 3)

2

( 5)( 3)

sG

s s

sG

s s

num1=[1 2]; den1=conv([1 5],[1 3]); num2=-[1 -2]; den2=conv([1 5],[1 3]); t=0:0.05:5; [y1,x1,t]=step(num1,den1,t); [y2,x2,t]=step(num2,den2,t); plot(t,y1,t,y2) grid text(0.5,0.13,'G1'); text(1,0.075,'G2'); title('Step response of the minimum and nonminimum systems') xlabel('t [ s ]') ylabel('y_1 y_2')

Transfer fonksiyonu

34

3 2

( ) 4

( ) 3 6 2

y s

u s s s s

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

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');

Transfer fonksiyonu

top related