You are on page 1of 115

Blm 1 : MATLAB hakknda genel bilgiler Blm 2 : MATLABn temel birimleri Blm 3 : MATLABda denklemlerin zmlenmesi Blm 4 : MATLABda

kontol sistemlerinin modellenmesi, modellere eriim ve birbirine dntrlmesi Blm 5 : MATLABda oluturulan modellerin birbirine balanmas Blm 6 : Kontrol sistemlerinde kullanlan giri fonksiyonlar Blm 7 : MATLABda Routh-Hurwitz zm Blm 8 : Kk-yer erilerinin incelenmesi Blm 9 : MATLABda frekans alan analizi Blm 10 : MATLABda PID tasarm Blm 11 : MATLAB/Simulinkin incelenmesi ve bloklarn tantm Blm 12 : A-kapa tipi kontrolrn modellenmesi

NDEKLER NSZ.......................................................................................................................................I ZET.........................................................................................................................................II NDEKLER.........................................................................................................................III BLM 1 GR..................................................................................................................1 1.1 Temel Bilgiler.......................................................................................................................1 1.2 MATLAB in Masast Birimleri........................................................................................1 1.2.1 Komut Penceresi( Command Window) .....................................................................1 1.2.2 Bulunulan Ktk ( Current Directory).......................................................................2 1.2.3 Komut Tarihi ( Command History ) ..........................................................................2 1.2.4 alma Alan ( Workspace ) .....................................................................................3 1.2.5 Dizin Eriimi ( Launch Pad ) .....................................................................................4 1.2.6 Yardm ( Help ) .........................................................................................................4 1.3 MATLAB da Menler .....................................................................................................4 1.4 Hesap Makinesi Olarak MATLAB.....................................................................................5 1.5 Deikenler..........................................................................................................................8 BLM 2 MATLAB TEMEL BRMLER.............................................................................................10 2.1 Fonksiyonlar......................................................................................................................10 2.2 Vektrler............................................................................................................................11 2.2.1 Vektrlerle lemler..................................................................................................12 2.3 Polinomlar..........................................................................................................................13 2.3.1 Polinomlarla lemler................................................................................................14

2.4 MATLAB' da Grafik izme..............................................................................................15 2.4.1 MATLAB Grafiklerinde Renk, izgi Tr ve Sembol Kullanm...........................16 2.5 Matrisler.............................................................................................................................20 2.5.1 Matrislerle lemler...................................................................................................22 2.6 M-Dosyalar (M-Files) ......................................................................................................24 BLM 3 MATLAB DA DENKLEM ZMLER....................................................25 3.1 Dorusal Denklemlerin zmlenmesi.............................................................................25 3.2 Dorusal Olmayan Denklemlerin zmlenmesi ............................................................25 3.3 Diferansiyel Denklemlerin zmlenmesi .......................................................................29 BLM 4 MATLAB DA SSTEMLERN MODELLENMES, MODELLERN VERLERNE ERM VE MODELLERN BRBRNE DNTRLMES ...........................................................................................................31 4.1 MATLAB da Sistemlerin Modellenmesi ........................................................................31 4.1.1 Transfer Fonksiyonu Modeli....................................................................................31 4.1.2 Sfr-Kutup-Kazan Modeli.....................................................................................33 4.1.3 Durum Denklemi Modeli.........................................................................................36 4.1.4 Tanmlayc Durum Denklemi Modeli.....................................................................37 4.1.5 Frekans Cevab Verileri Modeli...............................................................................39 4.1.6 Ayrk Zaman Modeli ...............................................................................................39 4.2 Modellerin Verilerine Eriim.............................................................................................40 4.3 Modellerin Birbirine Dntrlmesi................................................................................41 4.3.1 Transfer fonksiyonunu Durum Denklemine evirme..............................................41 4.3.2 Durum Denklemini Transfer fonksiyonuna evirme...............................................42 4.3.3 Transfer fonksiyonunu Sfr-Kutup-Kazan Modeline evirme..............................42

4.3.4 Sfr-Kutup-Kazan Modelini Transfer Fonksiyonuna evirme..............................43 4.3.5 Durum Denklemini Sfr-Kutup-Kazan Modeline evirme...................................44 4.3.6 Sfr-Kutup-Kazan Modelini Durum Denklemine evirme...................................44 BLM 5 MODELLERN BRBRNE BALANMASI..................................................................45 5.1 Seri Balant ....................................................................................................................45 5.2 Paralel Balant................................................................................................................46 5.3 Geribeslemeli Balant.....................................................................................................47 5.4 klarn Toplanmas......................................................................................................48 5.5 Giriin Datlmas...........................................................................................................49 5.6 Girilerin ve klarn Birletirilmesi.............................................................................50 BLM 6 GR FONKSYONLARI................................................................................................51 6.1 Basamak Cevab ( Step Response) .................................................................................51 6.2 Anidarbe Cevab (Ipulse Response) ...............................................................................54 6.3 Rasgele Seilmi Giri Cevab.........................................................................................55 BLM 7 ROUTH-HURWITZ KARARLILIK KRTER.................................................................57 7.1 Hurwitz Kriteri.................................................................................................................57 7.2 Routh Listelemesi.............................................................................................................57 7.2.1 MATLAB da Routh-Hurwitz Listelemesini Yapan Fonksiyon Hazrlamak..........58 BLM 8 KK-YER ERLER ......................................................................................................64 8.1 Kk-Yer Erilerinin izimi.............................................................................................64 8.2 Kk-Yer Erisi izim Kurallar.......................................................................................65

8.3 MATLAB da Kk-Yer Erisi izimi.............................................................................66 BLM 9 FREKANS ALANI ANALZ...........................................................................................70 9.1 Bode Diyagram...............................................................................................................70 9.2 Nyquist Diyagram...........................................................................................................76 9.3 Nichols Aba .................................................................................................................82 BLM 10 MATLAB DA PID TASARIMI......................................................................................84 10.1 P, I ve D Kontrolrlerin zellikleri................................................................................84 BLM 11 SIMULINK'E GR........................................................................................................91 11.1 Temel Bilgiler.................................................................................................................91 11.2 Sk Kullanlan Simulink Bloklar...................................................................................93 11.2.1 Srekli Zaman Bloklar (Continuous) ................................................................93 11.2.2 Ayrk Zaman Bloklar (Discrete) .......................................................................93 11.2.3 Fonksiyon ve Tablolar (Functions & Tables) ....................................................93 11.2.4 Matematik Bloklar (Math) ................................................................................94 11.2.5 Dorusal Olmayan Bloklar (Nonlinear) .............................................................95 11.2.6 Sinyaller ve Sistemler (Signals & Systems) ......................................................95 11.2.7 Kuyu Bloklar (Sinks) ........................................................................................96 11.2.8 Kaynak Bloklar (Sources) .................................................................................97 11.3 Model Kurma.................................................................................................................98 11.4 Simlasyonlar altrma ..........................................................................................100 BLM 12 A-KAPA TP KONTROLRN SMULNKTE MODELLENMES.....................101

12.1 Matematiksel Modelleme.............................................................................................101 12.2 Deneysel Sonular........................................................................................................102 12.3 A-Kapa Tipi Kontrolr Simlatr............................................................................103

BLM 1 GR 1.1 Temel Bilgiler MATLAB, balangta bilim adamlar ve mhendislerin, matrislere dayal problemleri -program yazmakszn- zebilmelerini salamak amacyla tasarlanm bir saysal zmleme programdr. MATris LABoratuar adyla ilk defa ortaya kmtr. MATLAB bir yorumlaycdr; yani, daha ziyade el tipi hesap makinelerine benzer tarzda, program altrlrken ekranda da ayn zamanda sonular grmek mmkndr. Neticede dier dillerde olduu gibi "derleme"ye ihtiya yoktur. MATLAB, programlamaya da izin vermesi sebebiyle yksek dzeyde bir programlama dili olarak da kullanlabilir. MATLAB' n gc sadece onun kullancya yardmc, etkileimli bir arayze sahip olmasndan deil, ayn zamanda yksek performansl bilimsel/matematiksel alt programlar koleksiyonu ve gvenilir bir algoritmik temel iermesinden kaynaklanmaktadr. Bundan baka, MATLAB kullanclara bir grafiksel kullanc ara yz ve grafik animasyon kabiliyeti de sunmaktadr. MATLAB, - Optimization Toolbox (Optimizasyon ktphanesi), - Control System Toolbox (Denetim sistem ktphanesi), - Neural Network Toolbox (Yapay sinir alar ktphanesi), - Fuzzy Logic Toolbox (Bulank mantk ktphanesi), gibi giderek artan sayda zelletirilmi ktphaneleri ieren ve hala gelimekte olan bir paket programdr. Bu ktphaneler kullanclara uzmanlk alanlarndaki uygulamalarnn her birinde geni imkanlar salamaktadr. 1.2 MATLAB in Masast Birimleri Bir Windows ortamnda MATLAB yazlmn balatmak iin bilgisayarnzn masastndeki MATLAB sembolne iki defa tklamak yeterlidir.ekil 1.1deki pencere ekrana gelecektir. MATLAB n sahip olduu evresel birimler unlardr; [1] Komut Penceresi( Command Window) Bulunulan Ktk ( Current Directory) Komut Tarihi ( Command History ) alma Alan ( Workspace ) Dizin Eriimi ( Launch Pad )

Yardm ( Help )

1.2.1 Komut Penceresi( Command Window) MATLAB ile iletiim kurulan ana penceredir. MS Windows platformlarnda, MATLAB yalnzca Windows'a ait niteliklerle zgn bir pencere sunar. MATLAB yorumlaycs sizden gelecek komutlar kabul etmeye hazr olduunu gsteren () biiminde bir ileti grntler. Bu alanda o an iletilmek istenilen btn komutlar yazlabilir. Komut penceresinde komutlar satrlar tek tek iletilirler. Yazlan komutun icras iin klavyedeki giri (enter) tuu kullanlr. Klavyede yer alan sa ve sol ok tular komut satrnda yazlan yanllarn dzeltilmesine olanak tanr. Herhangi bir anda Ctrl-c yada Ctrl-Pause/Break tularna basarak almakta olan bir program sonlandrlabilir. Bir komut deyiminin bir satra smamas durumunda ard arda 3 nokta "..." ve ardndan Enter tuuna baslarak bu deyimin bir sonraki satr veya satrlarda devam ettii beyan edilmi olur.

ekil 1.1 MATLAB ve evre Birimleri

1.2.2 Bulunulan Ktk ( Current Directory) MATLAB altnda hangi ktk (directory) iinde olduunu ve bu ktk iinde hangi ktk ve dosyalarn bulunduunu gsteren ksmdr. Sahip olduumuz bir MATLAB dosyasn, komut penceresinde ismi ile armak istediimizde altrlacak dosyann bulunulan ktk iinde olmas gerekmektedir. MATLAB ktphaneleri bu arta dahil deildirler. 1.2.3 Komut Tarihi ( Command History ) MATLAB her aldnda, alan oturum iin bir komut tarihi blm aar. Bu blmlerde oturum alndan kapanncaya kadar iletilen komut satrlarnn tm kaydedilir. Bu komutlara baka oturumlarda yada iinde bulunulan oturumda tekrar ulalabilir. Bunun iin MATLAB komut penceresinde yukar ve aa ok tularn kullanmak yeterlidir. Komut tarihi alannda bir komut satrnn fare ile iki kere tklanmas sonucunda komut penceresinde o komut iletilir.

1.2.4 alma Alan ( Workspace ) MATLAB alma alan, MATLAB komut hattndan kullanlabilecek deikenler (dizinler arrays olarak bilinen) takmn ierir. who veya whos komutlarn kullanarak o andaki alma alan iindekiler grntlenebilir. who komutu sadece deikenlerin isimlerini ksa bir liste halinde verirken, buna karlk whos komutu ayrca boyutu ve veri tr bilgilerini de verir. alma alan ayrca komut penceresinde yer alan aralar zerindeki alma alan taraycs (Workspace Browser) penceresini aarak da grntlenebilir. Tm bilgilerin grntlendii bu pencerenin aralar zeride kp biimde bir ekli vardr. Bu ekil zerinde tklandnda tarayc pencere alr. alma alannda yer alan tm deikenleri silmek iin clear komutu kullanlr. alma alanndaki verilerin kaydedilmesi ve yklenmesi, save ve load komutlar: MATLAB' m save ve load komutlar bir oturumun her hangi bir annda MATLAB alma alan ieriklerinin kaydedilmesini ve bu oturum srasnda veya daha sonraki bir oturumda kaydedilen bu verilerin tekrar alma alanna yklenmesini salar, save ve load komutlar ayn zamanda yaz (text) tr veri dosyalarnn da alma ortamna ithal ve ihra edilmesini de salar. save komutu alna alan ieriini bir ikili saylar (binary) MAT-dosyas olarak kaydeder. Bu dosya daha sonra load komutu ile geri arlabilir. [3] rnein, >> save bafra tm alma alan ieriini bafra.mat dosyas iine saklar. Gerektiinde, dosya adndan sonra deiken isimlerini belirleyerek yalnzca belli deikenlerin kaydedilmesini salamak mmkndr. rnein, >>save bafra x y z

olduu gibi yalnzca x, y ve z deikeni saklanm olur. Varsaylan biimi ile save komutu deikenleri ".mat" uzants ile kaydetmekle beraber ASCII biiminde de kaydetmesi de mmkndr. MATLAB komut penceresinde, >>help save komutu ile bu konuda daha fazla bilgi elde edilebilir. load komutu daha nceden save komutu ile oluturulan mat-dosyasnn alma alanna ykler. rnein >>load bafra komutu bafra.mat alma alanna ykler. Eer mat-dosyas, x, y ve z deikenlerini ieriyorsa bafra.mat yklenmesi ile x, y ve z deikenleri alma alanna yerletirilecektir. Bu deikenler halihazrda alma alannda mevcut ise yerlerine bu yklenen deikenler geecektir. 1.2.5 Dizin Eriimi ( Launch Pad ) Kullancya sunulan tm ktphanelere, demolara (MATLAB in sahip olduu rnek hazr programlar) ve dokmantasyona kolayca eriim imkan salar. 1.2.6 Yardm ( Help ) MATLAB hem yeni balayanlara hem de uzmanlam olanlara ok pratik bir yardm da salamaktadr. zel bir komut hakknda bilgi edinmek iin ekrandan "help komut ad" komutu girilir; burada "komut ad" ilgilendiiniz MATLAB fonksiyonunu temsil eden komutlardr. Kullanc, belirli bir konuda hangi komutlar kullanabileceini bilmek isterse "lookfor kavram ad" komutunu girmesi yeter. rnein, "lookfor sinus" yazlp enter tuuna basldnda; MATLAB her biri iin ksa aklamalaryla birlikte sinuse ilikin tm komutlar sralar. ayet aranan bilgi bir fonksiyon ise "help sin" komutunun girilmesi aadaki pencerede gsterildii gibi ilgili komuta ait ayrntl bir yardmla neticelenir. [1] >> lookfor sinus FLATPLRS McBryde-Thomas Flat-Polar Sinusoidal Pseudocylindrical Projection MODSINE Tissot Modified Sinusoidal Pseudocylindrical Projection SINUSOID Sinusoidal Pseudocylindrical Projection GAUSPULS Gaussian-modulated sinusoidal pulse generator. ROOTEIG Computes the frequencies and powers of sinusoids via the ROOTMUSIC Computes the frequencies and powers of sinusoids via the >> help sin SIN Sine. SIN(X) is the sine of the elements of X. Overloaded methods help sym/sin.m

1.3 MATLAB da Menler MATLAB oturumu ilk defa balatldnda. ekil 1.1 deki pencere alacaktr. MATLAB masa stnn grnm, kapatlarak, tanarak veya tekrar bykl ayarlanarak istenilen ekle getirilebilir. Bu alt pencereler, masastnn haricine de tanabilir. ekil 1.1de grld gibi MATLAB 6 adet men balna sahiptir. Bunlar srasyla; File Edit View Web Window Help tir. File : Bu mende yeralan balklardan ilki New dir. Bu balk ile MATLAB de 4 dosya modeli oluturabiliriz. Srasyla M-file, Figure, Model ve GUI dir. M-file MATLAB in sahip olduu programlama diliyle program yazlmasna olanak tanyan bir dosyadr. Figure MATLAB de grafikler iin kullanlan bir penceredir. Model, MATLAB de simlasyon iin kullanlan bir yapya sahiptir. Bir ok alanda modelleme burada mmkndr. GUI(Graphical User Interfaces) de ise grafiksel bir programlama gerekletirilmek mmkndr. Open ile alan diyalog kutusundan MATLAB in tanmlayabildii istenilen bir dosya alabilir. Import Data... ile dardan veri transferi mmkndr. save workspace as... ile o anki alma alan istenilen bir dosya ismiyle kopyalanabilir. Set path ile MATLAB, M-dosyalar ve MATdosyalar ile almak iin bu dosyalarn yolunu (folder path). Preferences (tercihler) seilerek, MATLAB masastnn karakteristikleri deitirilebilir. rnein, Command Window'da kullanlacak olan yaz karakteristiklerini ayarlamak mmkndr. Edit : Bu mende bulunan Clear Command Window, Clear Command History, ve Clear Workspace balklar ile bu alanlarda kaydedilen bilgiler ve komutlar silinir. View : Bu mende yer alan balklarla MATLAB masastnde hangi evre birimleri ile allmak isteniyorsa bunlar seilebilir. Web : Bu men ile MATLAB i reten firmann hazrlam olduu ok geni bir siteye ulamak ve burdan teknik destek almak mmkndr. Help : Bu mende yeralan balklarla MATLAB in kurulumuyla gelen yardm dosyalarna ulalabilir. Ayrca Demo programlara buradan da ulalabilir. 1.4 Hesap Makinesi Olarak MATLAB Ekrana bir ifade yazlp giri (enter) tuuna basldnda MATLAB bu komutu hemen icra eder ve sonucu komut penceresinde ekrana basar. Eer kullanc zel bir komutun sonucu olan kty grmek istemiyorsa komut bittikten sonra basite bir ";" iareti, yani noktal virgl koymak yeterlidir. Aklamalar yazlmak istendiinde, aklama satrnn nne % (yzde) iareti konmaldr. u halde bir satrda % iaretini takip eden herhangi bir bilgi, aklama olarak alglanr ve icra edilmez. Baz temel ilemler aadaki erevede sunulmaktadr. Aada grld gibi bir ilem yaplrken = sembol ile bir deiken iine atanmadnda yant ans iine atanr. Ans, answer n ksaltl eklidir.

rnein, 2+5 ans = 7 2 + 3; 3^2 ans = 9 sin(pi/4) ans = 0.7071 2*(3+4) ans = 14 2+3i ans = 2.0000 + 3.0000i MATLAB' da ki temel aritmetik ilemler Tablo 1.1'de artan ncelik srasna gre zetlenmitir. arpma ve blme ayn ncelik hakkna sahiptirler. Benzer ekilde toplama ve karmann ncelikleri eittir. Parantez ierisindeki ilemler, en nce icra edilirler. Tablo 1.1 MATLAB' da aritmetik ilemler. lem Toplama, a+b karma, a-b arpma, a*b Blme, a/b s alma, ab Sembol + * / ^ rnek 2+3 5-2 3*4 14/7 2^3 % i veya j karmak say gsterimi % iin kullanlabilmektedir. % Alar radyan cinsinden olmaldr % ve pi standart n'yi temsil eder. % Sonucun ekranda gsterilmesi noktal % virglle nlenmitir.

MATLAB' daki iliki ilemcileri skalerlerin ve ayn mertebede matrislerin mukayesesi iin kullanlmaktadrlar. Sonu, ilikinin doru veya yanl olmasna gre srasyla l veya O olur. Bu ilemciler aada Tablo 1.2'de listelenmitir.

Tablo 1.2 liki lemcileri lemci < > <= >= == ~= Anlam ...den kk ...den byk ...den kk veya ...e eit ...den byk veya ...e eit Eit eit deil rnek 3<5 7>2 44 51 5=5 3 8

= = sembol kontrol amal eit anlamnda, buna mukabil "=" iareti ise atama ifadelerinde; yani baz aritmetik ilemler neticesi bulunan bir deerin bir deikene atanmas halinde kullanlmaktadr (atamalar iin Blm 1.3'e baknz). Mantk ilemcileri, iliki ilemcileriyle birlikte kullanlabilirler. Bunlar aada Tablo 1.3'te zetlenmitir. Buraya kadar verilen farkl snftaki ilemcilerin icradaki ncelik sras aritmetik, iliki ve mantk ilemcileri eklindedir. Tablo 1.3 Mantk ilemcileri lemci & | ~ rnein, 3<5 ans = 1 a = 5= =8 a= 0 1|0 ans = 1 Mantk nermeleri mhendislik ve matematikte ska karlalabilen konulardandr. Aada, pratik bir uygulama olarak, verilen bir saynn baka bir sayya kalansz blnp blnemedii aratrlyor. Kullanlan rem komutu, blme ileminde kalan verir. % l veya O mdr? Doru (1) % beten kk mdr? Doru (1) % Sonucu bir deikene atamak da % mmkndr. % 5 8'e eitse a=l , aksi halde a=0 Anlam AND (VE) OR (VEYA) NOT (DEL) rnek A&B A|B ~A

m=rem(5280,8)= =0 m= 1

% 5280 says 8'e kalansz % blnyor ise m=l, aksi % halde m=0

MATLAB ayn zamanda pek ok hazr matematik ve nmerik fonksiyonlara sahiptir. Bu fonksiyonlarn bazlar Tablo 1.4'te listelenmitir. Tablo 1.4 MATLAB'daki hazr matematik fonksiyonlar. Fonksiyon Sins, sin() Kosins, cos() Tanjant, tan() Arksins, arcsin() Arkkosins, arccos() Arktanjant, arctan() Eksponensiyal, e Tabii logaritma 10 tabanl logaritma Kare kk,
x

Sembol sin cos tan asin acos atan exp lo Logl0 sqrt Abs

rnek sin(pi) cos(pi) tan(pi) asin(0) acos(0) atan(l) exp(2) log(10) Log10(l0) sqrt(25) abs(3)

Mutlak deer, |x| 1.5 Deikenler

Dier programlama dillerin pek ounda olduu gibi MATLAB da matematik deyimler art komakla beraber, dier pek ok programlama dillerinden farkl olarak bu deyimler tmyle matrisleri kapsar. MATLAB her hangi bir tr bildiri veya boyut ifadeleri gerektirmez. MATLAB yeni bir deiken ile kar karya geldiinde, otomatik olarak deiken oluturur ve yeteri kadar bellek ayrr. Eer deiken daha nceden mevcut ise MATLAB onun ieriini deitirir ve eer gerekliyse yeni bellek ayrr. rnein, no=10; komut satr, no ad altnda 1x1 lik bir matris oluturur ve 10 deerini matrisin tek eleman iine kaydeder. Dier bilgisayar dillerinde olduu gibi MATLAB' in deiken isimleri konusunda baz kurallar vardr. En basit deiken ismi tek bir harften (karakterden) ibarettir. Belli bal kurallar aada olduu gibi zetlenebilir.

- Deiken isimleri kk/byk harf kullanmna duyarldr. Buna gre ayn anlama gelen fakat farkl yazlan saYi, Sayi, sAyi ve SAYI kelimeleri MATLAB iin farkl deikendirler. Trke karakter kullanm mmkn olmamaktadr. - Deiken isimleri en ok 31 karakter ierebilir. Bir deiken isminde 31 karakterden daha fazla karakter varsa hesaba katlmaz. - Deiken isimleri daima bir harf ile balamal ve bunu herhangi bir sayda harfler, rakamlar veya alt izgi "J* izleyebilir. Noktalama iaretleri deiken ismi olarak kullanlamaz. nk bunlarn pek ounun MATLAB iin zel bir anlam vardr. Rakamlar: MATLAB rakamlar iin nnde art veya eksi iareti ve tercihli ondalk noktas ile birlikte allagelmi ondalk (decimal) iaretler sistemi kullanr. Bilimsel iaretler sistemi 10 tabanna gre kuvvet belirlemek iin e harfi kullanr. Sanal rakamlar iin son tak olarak i veya j harfi kullanr. Kurala uygun rakamlar ile ilgili baz rnekler; 6 2.6397238 6.02252e23 3e5i -15 1.60210e-20 0.0003 -3.14159J

Tm rakamlar IEEE hareketli nokta (floating-point) standart ile belirlenmi uzun format kullanarak dahili olarak saklanr. Hareketli nokta rakamlar kabaca virglden nce 16 hanelik ondalk sayl sonlu bir kesinlie sahip olup bunun sonlu alan 10 308 ile 10 +380 arasndadr.

MATLAB, kullanclarn deikenlere deer atamasna msaade etmektedir. Byle bir atama yapabilmek iin eit iaretinin sol tarafna bir deiken ismi girilmelidir. Aadaki rnekler deikenlere deer ve ifadelerin nasl atanacan, ve MATLAB'm verdii cevaplar gstermektedirler. [3] a=3,b=2 % Virglle ayrmak kaydyla bir % satrda birden fazla % atama yaplabilir. a= 3 b= 2 c=a+b c= 5 d = a^b d= 9 Belirli bir program iindeki aktif deikenlerin bir listesi arzu edilirse "who" yazldnda, o anda kullanlan deikenler listelenir. Bu deikenlerin herhangi birini iptal iin "clear deiken ad" komutunu kullanabilirsiniz. who Your variables are: a ans b

clear ans who Your variables

% ans adl deiken silindi a b c d

Bir deikenin deerini grmek iin deikenin adn girmek yeterlidir. d d = 9 MATLAB' da, n ve ok kk bir e saysn temsilen, "pi' and "eps" gibi hazr deikenler de vardr. pi ans = 3.1416 eps ans = 2.2204e-016
BLM 2 MATLAB TEMEL BRMLER 2.1 Fonksiyonlar

MATLAB da ok miktarda hazr fonksiyon vardr. Bu fonksiyonlar kullanclarn ilemlerini ksaltmakla birlikte varolan baz zel fonksiyonlarda herhangi bir programlama dilinde yzlerce satr program yazlmasyla elde edilen programlarn yerini alabilmektedir.
Tablo 2.1 MATLAB Fonksiyonlar [3] Fonksiyon Tanm

tf tfdata size bode rlocus esort roots step conv

Transfer fonksiyonu oluturmak Transfer fonksiyonu verilerinin geri alnmas k/giri/dizim boyutlar veya model derecesini elde eder Verilen sistemin bode diyagramn izer Verilen sistemin kk-yer (root-locus) izer Srekli zaman kutuplarn gerek ksmlarna gre sraya sokar Polinomun kklerini hesaplar Basamak cevab hesaplar
ki polinomun arpmn hesaplar

series nichols ngrid mrgin sigma logspace linspace gensig impulse

Seri bal bloklar indirger Nichols aban izer Bir nichols aba zerine enine-boyuna izgileri koyar Kazan ve faz paylarn inceler Tekil deer grafiini hesaplar, izer Logaritmik aralkl bir frekans vektr oluturur Dzgn aralkl bir frekans vektr oluturur Bir giri sinyali retir Ani darbe cevabn hesaplar

MATLAB da daha bir ok komut bulunmaktadr. Belki de ok az bu tez ierisinde yer alacaktr. leriki blmlerde zellikle o blme ait olan fonksiyonlar verilecektir. MATLAB n fonksiyonlar ile kullancya salad kolaylklardan bir tanesi de yeni fonksiyonlar yazmna ve bunlarn kullanlmasna olanak salamasdr.

2.2 Vektrler

MATLAB de vektrler tek satr yada tek stun matrisler olarak deerlendirilirler. Grafik izimlerinde koordinat deerleri vektrsel olarak ifade edilmektedir. Bu nedenle nemi byktr. MATLAB de vektrleri retmek iin bir dizi yntem vardr. Bunlarn birka burada sunulacaktr. Bir vektr oluturmann yollarndan biri, vektrn elemanlarn bir keli parantez iinde sralamak ve sonucu bir deiken iine atamaktr. Satr vektr iin, elemanlarn arasnda virgl yada boluk olmas gerekir. Stun vektr iin elemanlarn arasnda noktal virgl olmas yada her satrdan sonra giri (enter) tuuna gerekmektedir. [9] rnein, >> a=[0 1 2] a= 0 1 2

>> a=[0,1,2] a= 0 1 2

>> q=[3;4;5]

q= 3 4 5 >> w=[1 2 3] w= 1 2 3 Bir satr transpozunu almak o vektrn elemanlarn stun eklinde yazmaktr. Stun eklinde olan vektrn transpozu da, elemanlarn satr eklinde yazlmasdr. MATLAB de bir vektrn transpozunu almak iin kesme (apostrof) kullanlr.

rnein, b= 1 >> b' ans = 1 3 5 Elemanlar sabit bir olarak artan yada azalan bir vektr oluturmak iin ikin okta st ste kullanlr. Bu ekilde vektr oluturmann genel ifadesi X = X min : X : X max eklindedir.Burada, X ile gsterilen elemanlar X min den balayan ve X artmlaryla X max ile biten bir vektrdr. X negatifte olabilir. Yani, azalm olabilir. Eer artm bir olacaksa X yazlmayabilir. rnein, >> A=[0:2:6] A= 0 2 4 6 3 5

>> A=[6:-2:0]

A= 6 4 2 0

2.2.1 Vektrlerle lemler

Toplama ve arpma gibi cebir kurallar MATLAB'daki vektr ilemlerine uygulanmaktadrlar; yalnz vektrler ayn boyutta olmaldrlar. Vektrler zerinde ilem yapan dier iki mhim fonksiyon nokta (skaler) ve vektrel arpmlardr, a ve b iki vektr olmak zere bu iki ilem iin genel ekil srasyla "dot(a,b}" ve "cross (a,b)"dir. Bir vektrn iddeti "norm" fonksiyonuyla hesaplanabilir. rnein, >> a=[1 2 3];b=[0,1,-1;] b= 0 >> a+b ans = 1 3 2 1 -1

>> a-2*b ans = 1 0 5

>> dot(a,b) ans = -1 >> cross(a,b) ans = -5 1 1

>> norm(a) ans = 3.7417

2.3 Polinomlar

Bir polinom, genellikle bir P fonksiyonunun P(s ) = a n s n + a n1 s n 1 + ..... + a0 eklinde s deikeni cinsinden ifade edilmesidir. Burada a katsaylar olup deikenin en yksek derecesi polinomun da derecesidir. Polinomlar, kontrol sistemlerinde ska kullanlrlar. MATLAB ise polinom ilemlerini kolaylatracak gl fonksiyonlar kullanclara sunar. Polinomlar, MATLAB 'da, yksek dereceli terimlerin katsaylarndan balayarak satr vektr olarak girilirler. rnein, P(s ) = s 4 + 7s 2 + 4s 1 + 3 polinomu, MATLAB' da u ekilde temsil edilir.

>> P=[1 0 7 4 3] P= 1 0 7 4 3 2.3.1 Polinomlarla lemler Bir polinomun kkleri polinomunun kkleri; >> roots(P) ans = -0.7131 + 2.2676i -0.7131 - 2.2676i -0.2869 + 0.6698i -0.2869 - 0.6698i
eklinde bulunabilirler. Bir polinomu, verilen kklerden oluturmak mmkndr. Bunun iin ise poly deyimi kullanlmaktadr. Mesela, kkleri l,0 ,1+i ve 2-i olan bir polinomu elde edelim.

roots

komutuyla

bulunabilir. rnein, yukardaki P

>> k=[0 1 2+i 2-i -2] k= 0 >> poly(k) ans = 1 -3 -1 13 -10 0 1.0000 2.0000 + 1.0000i 2.0000 - 1.0000i -2.0000

Cevaptan aadaki polinom elde edilmi olur; P(s ) = s 5 3s 4 1s 3 + 13s 2 10s


Be kk verildiine gre, polinomun beinci dereceden olaca aktr. Polinomun belirli deerler iin hesaplanmas mmkndr. Bu ilemi yapacak MATLAB deyimi ise polyval komutudur. Bu komutun kullanln gstermek maksadyla, yukardaki P polinomunu "-1" deerinde hesaplayalm. [2] >> polyval(k,-1) ans = -3.0000 + 2.0000i MATLAB'n dier bir kullanl deyimi ise polinomlarn trevlerim alan polyder komutudur. MATLAB'da polinomlann arplmas ve blnmesi de mmkndr. arpmay ve blmeyi gerekletiren conv ve deconv komutlarnn kullanllar, t=conv(a,b) ve [m,r]=deconv(a,b)
eklindedir. Birincide, a ve b polinomlar arplarak t elde edilirken, ikincide a polinomu b polinomuna blnp m blm ve r kalan elde edilir. rnein,

>> a=[4 5 2];b=[7 3 1]; >> t=conv(a,b) t= 28 47 33 11 >> [m,r]=deconv(a,b) m= 0.5714 r= 0 3.2857 1.4286 2

2.4 MATLAB' da Grafik izme

MATLAB iki ve boyutlu verileri istenen formatta gstermeye yarayan bir dizi fonksiyon iermektedir. MATLAB'in fonksiyon izimlerine mahsus zengin koleksiyonu, kullanclara bilimsel ve mhendislik uygulamalarna ait izimleri kolayca ve etkin biimde izme imkan salamaktadr. MATLAB'da bu amala yer alan komutlarn ksa aklamalar iin Tablo 2.2ye baknz.
Tablo 2.2 MATLAB'daki izim fonksiyonlar [2] Fonksiyon Aklamas rnek

plot polar plot3 title xlabel ylabel grid subplot

iki boyutlu izim iin temel komut Kutupsal (polar) koordinatlardaki izimler U boyutlu (3-D) izimler Grafiin stne balk yazmak iin x eksenine ait etiket y eksenine ait etiket Grafii blnt alaryla rer. Grafik penceresini blmelere ayrr. Grafikte istenen yere bir metin yerletirir. Grafikte istenen noktaya bir metin yerletirir. Grafik zerinde istenilen noktann koordinatlarn belirtmede kullanlr x ve y eksenlerini yeniden leklendirir

plot(xdata,ydata) polar(teta,ro) plot3(x,y,z) title(ilk grafik') xlabel('xdata') ylabel('ydata') grid subplot(mnk) mxn tane ekil, ve k aktif olan ekil text(x,y,'bir grafik') x ve y noktalarna "..."metnini yerletirir. gtext(ilk grafik) ginput axis([Xmin , Xmax, Ymin ,Ymax])

text gtext ginput axis legend hold Figre rnek

Birka grafik birden izildiinde farkl Legend ('isim1', 'isim2') grafikleri etiketler Mevcut izimi alkor. hold /hold on/ hold off Birden fazla grafik penceresi aar figure(1), figure(2), vs

>> a=[2 4 5];b=[1 3 7]; >> plot(a,b) >> grid

Komut penceresine yukardaki komutlar yazlp giri tuuna basldnda figr 2.1 elde edilir.

7 6 5 4 3 2 1 2 2.5 3 3.5 4 4.5 5

Figr 2.1 plot (a,b) komutuna rnek


2.4.1 MATLAB Grafiklerinde Renk, izgi Tr ve Sembol Kullanm

Birbiri zerine farkl eriler izmenin karkla yol amas mmkndr. Ayn ekilde yer alan farkl izimleri ayrt edebilmenin basit bir yolu her eri iin farkl renkler veya farkl veri noktas sembolleri kullanmaktr. Bu imkanlar da aadaki tabloda zetlenmitir (Tablo 2.34). [2]
Tablo 2.3 izimde farkl renk alternatifleri

Renkler (Ingilizcesi) San (yellovv) Eflatun (magenta) Krmz (red) Yeil (green) Mavi (blue) Beyaz (white) Siyah (black)

Sembol y m r g b w k

Tablo 2.4 izimde farkl izgi alternatifleri.

izgi Tipi Dz Kesikli Noktal Yldz Daire Art Dz-Nokta Kare genler

Sembol . ~ '. * o + -. s
A

, v, <, >

Renk ve izgi tiplerinin kullanlmas, izimlerin farkl grnmesine ve birbirlerinden ayrt edilmesine yardmc olacaktr. rnek : >> t=[0:0.01:2*pi]; % (0,271) aralnda noktalar oluturuldu >> x=sin(t);y=cos(t); % Sins ve Kosins'leri hesapland

>> plot (t,x) % t ye gre x i izer >> grid % Blnt izgilerini yerletirir >> xlabel ('zaman') % Yatay eksene uzaman" etiketini koyar >> hold % izimi alkor yani yeni izim mevcutun zerine yaplr Current plot held % izim alkonuldu >> plot(t,y) % t ye gre y yi izer >> ylabel('x ve y') % Dey eksene x ve y" yazar >> title ('Sins ve Kosins Egrileri') % Figr baln yazar
S ins ve Kos ins Egrileri 1

0.5

x ve y

-0.5

-1

4 z aman

Figr 2.2 Hold komutuyla 2 grafiin ayn pencereye izilmesi MATLAB, kullancya grafik zerine yaz ekleme kolayl verdii gibi deiik stil, sembol, s ve alt indis kullanmak da mmkndr. Sembolleri elde etmek iin, ters blme iaretinden sonra semboln ngilizce isminin yazlmas yeterlidir. Bunlardan en ok kullanlanlar aada (Tablo 2.5) zetlenmitir.
Tablo 2.5 MATLAB Grafiklerinde Sembol Kullanm

Sembol

MATLAB Yazlm \alpha \beta \delta \pi \theta \omega

rnek : >> teta=linspace(0,2*pi,100); >> c=1; >> Ro=c*teta; >> polar(teta,Ro,'k') >> polar(teta,Ro,'k') Yukardaki komut satrlar yazldnda Figr 2.3 elde edilir.
90 120 6 150 4 2 180 0 30 8 60

210

330

240 270

300

Figr 2.3 Polar koordinatlarda Arimet spirali rnek : >> y=cos(x);

>> z=sin(x); >> subplot(2,2,1) >> plot (x,y) >> subplot(2,2,2) >> plot (x,z) >> subplot(2,2,3) >> plot (y,z) Komut satrlar yazldnda Figr 2.4 elde edilir.
1 0.5 0 -0 . 5 -1 0 1 0.5 0 -0 . 5 -1 -1 5 10 1 0.5 0 -0 . 5 -1 0 5 10

Figr 2.4 Bir grafik penceresine subplot ( ) ile 3 grafiin izilmesi rnek : >> x=linspace(0,2*pi,50); >> y=linspace(0,2*pi,50); >> [x,y]=meshgrid(x,y); >> z=sin(x).*sin(y); % Bu noktalarda fonksiyon hesaplandi >> mesh(x,y,z) >> xlabel('x'); ylabel('y'); zlabel('z'); Komut satrlar yazldnda Figr 2.5 elde edilir.

0.5

-0.5

-1 10 8 5 2 y 0 0 x 6 4

Figr 2.5 mesh( ) komutu ile 3 boyutlu grafik


2.5 Matrisler

Matrislere, elemanlar iki indisle tanmlanan boyutlu diziler olarak baklabilir. MATLAB da bir matrisin elemanlar, bir keli parantez iinde, her satr noktal virgllerle ayrarak ve satr satr yazlarak girilebilir ve saklanabilir. Bir A matrisinin ininci satr ve jninci stunundaki eleman A(i,j) eklinde gsterilir. Mesela 3x3 lk (yani 3 satr, 3 stun)
1 2 3 A = 4 5 6 7 8 9 eklindeki bir A matrisi, MATLAB da aadaki gibi girilir.

>> A=[1 2 3;4 5 6;7 8 9] A= 1 4 7 2 5 8 3 6 9 % Yukardaki matris aadaki komut ile de oluturulabilir

>> A=[1 2 3 456 7 8 9] A= 1 4 7 2 5 8 3 6 9

>> A(1,3) ans = 3 >> A(:,1)

% 1.satr ve 3. stundaki eleman

% : btn elemanlar anlamna gelmektedir

% 1.stundaki btn elemanlar anlamna gelmektedir. ans = 1 4 7 >> A(3,:) ans = 7 8 9 % Burada oluacak yeni matris 2.satr 1.stun ile % 3.satr ve 2. stun arasndaki elemanlardr % 3.satrdaki tm elemanlar anlamna gelmektedir

>> B=A([2,3],[1,2]) B= 4 7 5 8

Tablo 2.6 Matris oluturan MATLAB hazr fonksiyonlar Fonksiyon Sembol Birim matris eye Birler matrisi ones Sfrlar matrisi zeros Rasgele saylar matrisi rand

rnek eye(m,n) ones(m,n) zeros(m,n) rand(m,n)

Aadaki pencerede baz rnekler verilmitir. >> eye(3,3) ans = 1 0 0 0 1 0 0 0 1

>> rand(3,4) ans = 0.4565 0.4447 0.9218 0.4057

0.0185 0.6154 0.8214 0.7919 >> zeros(2,4) ans = 0 0 0 0 0 0 0 0

0.7382 0.1763

0.9355 0.9169

2.5.1 Matrislerle lemler

MATLAB da matris ilemleri olduka kolaylatrlmtr. Temel matris ilemlerinden bazlar aada Tablo 2.7 de verilmitir.
Tablo 2.7 MATLAB da temel matris ilemleri. lem Sembol Toplam + karma arpma * Eleman-elemana arpma .* Sadan blme / Eleman-elemana blme ./ Soldan blme \ Transpozunu alma Bir matrisin determinant det Bir matrisin tersi inv Bir matrisin zdeeri ve eig zvektrleri

rnek A+B A-B A*B A.*B A/B (=A*B 1 ) A./B(=A.*B 1 ) A\B (=A 1 *B) A det(A) inv(A) eig(A) [v,d]=eig(A)

Matrislerde yaplan ilemlerin anlaml olabilmesi ve bir sonu verebilmesi iin yaplan ilemlerdeki matris boyutlarna dikkat edilmelidir. Aada matris ilemlerine dair baz rnekler verilmektedir. [9] >> A=[5 2;4 -1]; B= [0 1;7 2]; >> A+B ans = 5 3 11 1 >> A*B ans = 14 9

-7

2 % A ve B matrisleri eleman-elemana arplyor.

>> A.*B ans = 0 2 28 -2 >> A*B' ans = 2 39 -1 26 >> A^2 ans = 33 16 8 9

% A matrisi ile B matrisinin transpozu arplyor

%A matrisinin karesi alnyor. Yani A*A

>> A.^2 ans = 25 16 >> A/B ans = 4 1

% A matrisinin her bir elemannn(eleman-elemana karesi alnyor)

% A*B 1

0.5714 0.7143 -2.1429 0.5714 >> A./B Warning: Divide by zero. ans = Inf 2.0000 0.5714 -0.5000 >> A\B ans = 1.0769 0.3846 -2.6923 -0.4615 >> det(A) % A 1 *B % A.*B 1

ans = -13 >> inv(A) ans = 0.0769 0.1538 0.3077 -0.3846

2.6 M-Dosyalar (M-Files)

Basit problemler iin ilemlerin MATLAB komut penceresinde hem hzl hem de etkilidir. Fakat, bir ilem yapmak iin gerekli komutlarn says arttka veya deikenlerden bazlarn deitirip komutlar tekrarlamak gerekiyorsa, ilemlerin komut penceresinde yrtlmesi pratik olmayacaktr. Etkin bir zm, MATLAB n kullancya sunduu M-dosyalarnn kullanlmasdr. Bir M-Dosyas zel bir grevi yerine getirmek iin gerekli MATLAB komutlarnn sakland bir metin programdr. Baka bir ifadeyle, komutla dizisi bir dosyada saklanr ve daha sonra bunlar bir komut penceresinden tek tek girmek yerine, bu dosya altrlarak komutlar icra edilir. Bu dosyalarn MATLAB n alt dizinde .m uzantsyla saklanmas gerekir. MATLAB, M-Dosyalarnn oluturulmas ve yazlmas iin bir metin hazrlaycs (text editor) sunmaktadr. M-Dosyalar farkl bir metin programnda da yazlabilirler (Notepad,Word vb). MATLAB in metin hazrlaycs, ya komut penceresinin st ksmnda yer alan New M-File dmesi tklanarak (ekil 1.1) yada File mensnden New M-File ibaresini seerek etkin hale getirilebilir. [2]

BLM 3
3 MATLAB DA DENKLEMLERN ZMLENMES 3.1 Dorusal Denklemlerin zmlenmesi

Tek deikenli bir dorusal sistemin denklemi, n. Dereceden bir polinom biiminde;

f ( x) = a n x n + a n1 x n1 + ..... + a 2 x 2 + a1 x1 + a0 tanmlanr. Burada f ( x) = 0 biiminde denklemin kklerini bulmak iin MATLAB in roots fonksiyonu kullanlr. [2]
rnek 1: Aada verilen 6. dereceden denklemin kkn bulunuz.
f ( x ) = 4 x 6 + 7 x 5 + 5 x 4 3 x 3 + x 2 9 x + 12

zm : Denklemin katsaylar a deikenine bir vektr olarak atanr ve roots komutu kullanlarak denklemin kkleri bulunur. Veya roots fonksiyonunun iine vektr direkt olarak girilerek de zme gidilebilir.

>> a=[4 7 5 -3 1 -9 12] a= 4 7 5 -3 1 -9 12

>> kokler=roots(a) kokler = -1.4258 + 0.9338i -1.4258 - 0.9338i -0.2109 + 1.1561i -0.2109 - 1.1561i 0.7617 + 0.4094i 0.7617 - 0.4094i % 1. kk % 2. kk % 3. kk % 4. kk % 5. kk % 6. kk

3.2 Dorusal Olmayan Denklemlerin zmlenmesi

MATLAB da dorusal olmayan denklemlerin kkleri fzero yada fsolve fonksiyonlaryla hesaplanabilir. Her iki komutun kullanlmas iinde bir m-file oluturmak gerekmektedir. fzero fonksiyonu, tek deikenli bir denklemin kkn aratrr. fsolve fonksiyonu bir ve birden fazla deikenli denklemlerin kklerini aratrr. Bu fonksiyonlarn kullanm biimi aada olduu gibidir. [1] x = fzero(fun,x0)

x = fzero(fun,x0,options) x = fsolve(fun,x0) x = fsolve(fun,x0,options) Yukardaki fonksiyonlarda yer alan fun kk aratrlacak denklemin yer ald fonksiyon ismidir. x0 terimi MATLAB in ,denklemin kkn aratrmaya balayaca balang noktasn ifade eder. option terimi MATLAB in denklemi zerken yapm olduu ilemlerin komut penceresinde gzkmesi iini dzenler. options teriminin kullanm u ekildedir; options=optimset('Display','iter') Display, iter in tanmlanma ekliyle sonularn komut penceresine yazlmasn salar. Burada iter in alabilecei drt durum vardr. iter durumunda denklemin zm esnasndaki btn deneme sonular komut penceresine yazlr. off durumunda zm esnasndaki hibir sonu komut penceresinde gsterilmez. final durumunda zm esnasnda denklemin zmnn bulunduu aralk komut penceresine yazlr. fzero komutunun sonucu tam olarak bulamad zamanlar olmaktadr. Bu durum komut penceresinde bir uyaryla kullancya ifade edilmektedir. notify durumunda komut penceresinde herhangi bir sonu yazlmaz. Sadece, eer denklem tam olarak zlmemi ise uyar komut penceresinde grnr.
rnek 2 : Aada verilen 6. dereceden denklemin kkn bulunuz. [1]

f ( x) = e 3 x + 2 x
zm:

zmn fzero ile gerekletirilmesi aada olduu gibidir. ncelikle fzero fonksiyonunu kullanabilmek iin bu denklemi aada gsterildii gibi bir m-file olarak yazmamz gerekmektedir. MATLAB>File>New>M-file seilir ve alan pencereye aadaki komutlar yazlr ve saklanr. function y=denklem(x) y=exp(3*x)+2*x MATAB komut penceresinde option deerleri girilir. Burada denklem zlrken MATLAB in yapt btn ilemleri girmek iin iter girilir. fzero fonksiyonu yazlp iletildiinde sonu aada grld gibidir. >> options=optimset('Display','inter'); >> z=fzero('denklem',2,options) Func-count x f(x) Procedure 1 2 407.429 initial

2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24

1.94343 344.346 2.05657 482.158 1.92 321.188 2.08 517.019 1.88686 291.091 2.11314 570.689 1.84 253.315 2.16 656.291 1.77373 208.172 2.22627 799.835 1.68 157.83 2.32 1058.27 1.54745 106.883 2.45255 1573.04 1.36 61.8655 2.64 2757.05 1.0949 28.891 2.9051 6101.21 0.72 10.1111 3.28 18776.3 0.189807 2.14685 3.81019 92103 -0.56 -0.933626

search search search search search search search search search search search search search search search search search search search search search search search

Looking for a zero in the interval [-0.56, 3.8102] 25 -0.559956 -0.933513 interpolation 26 -0.195186 0.166422 interpolation 27 -0.250377 -0.0289199 interpolation 28 -0.242206 -0.000869663 interpolation 29 -0.241954 6.13983e-008 interpolation 30 -0.241954 -9.7598e-012 interpolation 31 -0.241954 0 interpolation Zero found in the interval: [-0.56, 3.8102]. z= -0.2420

Yukarda grlen Func-count MATLAB in fonksiyonu ka kere ilettiini gsteren bilgidir. Grld gibi sonuca 31 denemeden sonra gidilmitir. x deikeni MATLAB in denklemin kklerini bulabilmesi iin vermi olduu deerleri temsil eder. f(x), verilen x deerleri karlnda denklemin ald deerlerdir. Denklemin kk z deikenine atanr.
rnek 3 : Aada verilen 6. dereceden denklemin kkn bulunuz
f ( x ) = 7 v 1d 0.8 + 3v 2 d 1.2

zm:

ncelikle fzero fonksiyonunu kullanabilmek iin bu denklemi aada gsterildii gibi bir m-file olarak yazmamz gerekmektedir. MATLAB>File>New>M-file seilir ve alan pencereye aadaki komutlar yazlr ve saklanr. function y=denklem(x) y=7*x(1)^(-1)*x(2)^(0.8)+3*x(1)^(2)*x(2)^(1.2); MATAB komut penceresinde option deerleri girilir. Burada denklem zlrken MATLAB in yapt btn ilemleri girmek iin iter girilir. fsolve fonksiyonu yazlp iletildiinde sonu aada grld gibidir. options=optimset('Display','iter'); >> z=fsolve('denklem',[1 1],options) Warning: Large-scale method requires at least as many equations as variables; switching to line-search method instead. > In C:\MATLABR12\toolbox\optim\fsolve.m at line 194 Iteration 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 Func-count Residual 2 100 9 20.8598 15 20.8598 29 18.4224 35 12.2777 41 3.53197 47 1.03833 53 0.157957 59 0.0795964 66 0.0450412 72 0.00411478 78 0.00102741 84 0.00100129 90 0.00024066 96 0.000224521 103 0.000185047 109 1.84012e-006 115 2.94422e-007 121 1.28724e-008 127 2.78181e-010 133 4.4441e-012 139 2.79134e-012 145 7.86308e-013 Directional Step-size derivative 1 -198 1.44 75.5 1e-008 -29.3 0.147 -4.68 0.306 -2.77 0.313 -28.5 0.279 -10.3 0.325 -2.87 0.204 -0.45 0.514 0.819 0.347 -0.113 0.291 -0.0121 0.0126 -0.00211 0.294 -0.00294 0.0324 -0.000513 0.0811 -0.000526 0.388 -0.000235 0.456 9.62e-006 0.456 5.94e-007 0.282 -1.06e-008 0.196 1.33e-010 0.12 1.85e-011 0.107 7.3e-012

24 151 3.64839e-013 0.0813 2.33e-012 25 157 1.21263e-013 0.0778 9.72e-013 26 163 5.12696e-014 0.0663 3.57e-013 27 169 1.82399e-014 0.0611 1.41e-013 28 175 7.30187e-015 0.0534 5.21e-014 29 181 2.68217e-015 0.0486 1.98e-014 30 187 1.04119e-015 0.0433 7.17e-015 31 193 3.85597e-016 0.0398 2.57e-015 32 199 1.45898e-016 0.0367 8.73e-016 Maximum number of function evaluations exceeded Increase OPTIONS.maxFunEvals z= 0.0012 - 0.0000i -0.0000 + 0.0000i

3.3 Diferansiyel Denklemlerin zmlenmesi

MATLAB diferansiyel denklemlerin zm dsolve fonksiyonu ile hesaplanabilir.Bu fonksiyonun dierlerinden fark , denklemlerin fonksiyon iinde bir eitlik eklinde yazlmasdr, yani = iaretinin kullanlmasdr. Diferansiyel denklemlerle altmz iin eitlikler iinde trevlerin ifade edilmesi gerekir. Birinci, ikinci, nc, vs trevler, srasyla D, D2, D3... eklinde ifade edilir. dsolve fonksiyonu birden fazla diferansiyel denklemin zmnde kullanlabilir. [2]
rnek 4 : Aada verilen 2. dereceden diferansiyel denklemi znz.

d 2 x dx + + 2x = 0 dt 2 dt
zm :

>> dsolve('D2x+3*Dx+2*x=0') ans = C1*exp(-2*t)+C2*exp(-t)


x (t ) = C1e 2t + C 2 e t diferansiyel denklemin zm olarak bulundu. Buradaki C1 ve C 2 integral sabitlerini gsterir. Bu denklemi balang artlaryla zdrmekte mmkndr.

Balang artlarn x(0) = 0 ve x(0) = 2 olarak aldmzda C1 ve C 2 sabitlerinin deerleri balang artlarna gre bulunur. >> dsolve('D2x+3*Dx+2*x=0','Dx(0)=0','x(0)=2')

ans = -2*exp(-2*t)+4*exp(-t)
rnek 5 : Aada verilen diferansiyel denklemleri znz.

dx dy = 3x + 4 y ve = 4 x + 3 y dt dt

zm :

>> [x,y]=dsolve('Dx=3*x+4*y,Dy=-4*x+3*y','Dx(0)=0','Dy(0)=-1') x= exp(3*t)*(cos(4*t)*C1+sin(4*t)*C2) y= -exp(3*t)*(sin(4*t)*C1-cos(4*t)*C2) x(0) = 0 ve y (0) = 1 olarak aldmzda C1 ve C 2 sabitlerinin deerleri bulunur. >> [x,y]=dsolve('Dx=3*x+4*y,Dy=-4*x+3*y','x(0)=0','y(0)=-1') x= -exp(3*t)*sin(4*t) y= -exp(3*t)*cos(4*t)

BLM 4
4 MATLAB DA SSTEMLERN MODELLENMES , MODELLERN VERLERNE ERM VE MODELLERN BRBRNE DNTRLMES 4.1 MATLAB da Sistemlerin Modellenmesi

MATLAB in ktphanelerinden biri olan The Control System Toolbox dorusal, zamanla deimeyen (MATLAB karl, LTI- Linear Time Invariant) sistemleri modellemek iin drt fonksiyona sahiptir. Bunlar tf, zpk, ss ve frd fonksiyonlardr. Srasyla; transfer fonksiyonu, sfr-kutup-kazan, durum denklemleri ve frekans cevab verileri modellemelerinde kullanlrlar. [1]
4.1.1 Transfer Fonksiyonu Modeli

LTI sistemlerinin transfer fonksiyonu modelini oluturmak iin tf fonksiyonu kullanlmaktadr. Ayn zamanda, bu fonksiyon ile durum denklemi ve sfr-kutup-kazan modellerini transfer fonksiyonuna evirmekte mmkndr. Tek girili tek kl (MATLAB karl, SISO Single Input Single Output) bir sistem bir pay vektr ve bir payda vektrnden oluur (num/den). ok girili ok kl (MIMO Multiple Input Multiple Output) sistemlerde ise pay ve payda vektr dizilerinden oluur. Yine bir giri kl sistemi bir pay ve payda vektr temsil eder. MATLAB da tf fonksiyonunun kullanm aada gsterildii biimdedir. [1] sys = tf(num,den) sys = tf(num,den,'Property1',Value1,...,'PropertyN',ValueN) num pay vektr, den pyda vektr ve Ts rnekleme zamann temsil eder.
rnek 1 : Transfer fonksiyonu
s s + 2 s + 10 olarak verilen sistemin MATLAB da transfer fonksiyonu modelini oluturun. G (s) =
2

zm :

>> G=tf([1 0],[1 2 10]) Transfer function: s -------------s^2 + 2 s + 10 tf fonksiyonu iinde bulunan iki keli parantez iftinden birincisi iinde transfer

fonksiyonunun pay, ikincisi iinde ise paydas vardr. Pay ve payda derecesi yksek olandan dk olana doru katsaylar temsil etmektedir.

rnek 2 : ki kl bir girili bir sitem oluturun. Giri akm , klar torku ve asal hz temsil etsin. Sistem deikeni ise p olsun. zm :

>> num = {[1 1] ; 1} num = [1x2 double] [ 1] >> den = {[1 2 2] ; [1 0]} den = [1x3 double] [1x2 double] >> H = tf(num,den,'inputn','current',... 'outputn',{'torque' 'ang. velocity'},... 'variable','p') Transfer function from input "current" to output... p+1 torque: ------------p^2 + 2 p + 2 1 ang. velocity: --p
rnek 3 : Durum denklem formu aada verilen sistemin transfer fonksiyonu modelini oluturunuz.

1 2 1 A= , B= 1 2 2

1 , C = [1 1

0] , D = [0

1]

zm :

>> sys = ss([-2 -1;1 -2],[1 1;2 -1],[1 0],[0 1]) a= x1 x2 b= x1 x2 c= y1 d= y1 u1 0 u2 1 x1 1 x2 0 u1 1 2 u2 1 -1 x1 -2 1 x2 -1 -2

Continuous-time model. >> tf(sys) Transfer function from input 1 to output: s - 2.963e-016 -------------s^2 + 4 s + 5 Transfer function from input 2 to output: s^2 + 5 s + 8 ------------s^2 + 4 s + 5

4.1.2 Sfr-Kutup-Kazan Modeli

LTI sistemlerinin sfr-kutup-kazan modelini oluturmak iin zpk fonksiyonu kullanlmaktadr. Ayn zamanda, bu fonksiyon ile durum denklemi ve transfer fonksiyonu modellerini sfr-kutup-kazan modeline evirmekte mmkndr. zpk fonksiyonunun kullanm aada gsterildii biimdedir. [1] sys = zpk(z,p,k)
rnek 4 : z=1 de sfr ve p1, 2 = 2 i , p 3 = 1 noktalarnda kutbu ve -0.5 kazanc olan bir sistemin sfr-kutup-kazan modelini oluturunuz.

zm :

>> z=[1] z= 1 >> p=[2-i 2+i 1] p= 2.0000 - 1.0000i 2.0000 + 1.0000i 1.0000 >> k=-1/2 k= -0.5000 >> H = zpk(z,p,k) Zero/pole/gain: -0.5 (s-1) -------------------(s-1) (s^2 - 4s + 5)

rnek 5 : Aada verilen iki-giri/iki-k sistemin sfr-kutup-kazan modelini oluturunuz.


1 s G (s) = 2 2( s 2s + 2) ( s 1)(s 2)(s 3) 3(s + 5) (s + 1) 2 0

zm : nce ( s 2 2s + 2) denkleminin zm yaplr. Daha sonra z, p ve k deiken atamalar yaplr ve zpk fonksiyonu ile modelleme yaplr.

>> roots([1 -2 2]) ans = 1.0000 + 1.0000i 1.0000 - 1.0000i >> a= roots([1 -2 2]) a=

1.0000 + 1.0000i 1.0000 - 1.0000i >> z={[],-5;a,[]} z= [] [-5] [2x1 double] [] >> p={0,[-1 -1];[1 2 3],[]} p= [ 0] [1x3 double] >> k=[-1 3;2 0] k= -1 2 3 0 [1x2 double] []

>> H=zpk(z,p,k) Zero/pole/gain from input 1 to output... -1 #1: -s 2 (s^2 - 2s + 2) #2: ----------------(s-1) (s-2) (s-3) Zero/pole/gain from input 2 to output... 3 (s+5) #1: ------(s+1)^2 #2: 0
rnek 6 : Aada transfer fonksiyonu formu verilen sistemi sfr-kutup-kazan modeline dntrn.

G (s ) =

10s 2 + 20s s 5 + 7 s 4 + 20s 3 + 28s 2 + 19s + 5

zm :

>> h = tf([-10 20 0],[1 7 20 28 19 5]) Transfer function: -10 s^2 + 20 s ---------------------------------------s^5 + 7 s^4 + 20 s^3 + 28 s^2 + 19 s + 5 >> zpk(h) Zero/pole/gain: -10 s (s-2) ---------------------(s+1)^3 (s^2 + 4s + 5) 4.1.3 Durum Denklemi Modeli Genel olarak sistemlerin durum denklemi aada grld ekilde verilir. [1] d X (t ) = AX (t ) + Bu (t ) dt
y(t ) = CX (t ) + Du (t )

X u y A B C D

durum vektr sistem girii k vektr nxn elemanl matris nxr elemanl matris mxn elemanl matris mxr elemanl matris

LTI sistemlerinin durum denklemi modelini oluturmak iin ss fonksiyonu kullanlmaktadr. Ayn zamanda, bu fonksiyon ile transfer fonksiyonu ve sfr-kutup-kazan modellerini durum denklemi modeline evirmekte mmkndr. ss fonksiyonunun kullanm aada gsterildii biimdedir. Fonksiyonda kullanlan a, b, c, d deikenleri yukarda gsterilen A, B, C, D deikenlerine karlk gelir. sys = ss(a,b,c,d)
rnek 7 : Aada denklemi matrisleri aada verilen sistemin modelini oluturunuz.

0 A= 5

1 0 , B = , C = [0 2 3

1] , D = 0

zm :

>> sys=ss([0 1;-5 -2],[0;3],[0 1],0)

a= x1 x2 b= x1 x2 c= y1 d= y1 u1 0 x1 0 x2 1 u1 0 3 x1 0 -5 x2 1 -2

Continuous-time model. >> size(sys) State-space model with 1 output, 1 input, and 2 states.

ss fonksiyonundan sonra kullanlan size fonksiyonu durum denkleminin giri, k ve durum saysn bildirir.
4.1.4 Tanmlayc Durum Denklemi Modeli

Durum denklemi modellerinin genelletirilmi biimlerine tanmlayc durum denklemleri denir. Bu denklemlerin biimi aada olduu gibidir. [3]
E dx = Ax + Bu dt

y = Cx + Du

Buradan uygun bir zm elde edilebilmesi iin E matrisinin tekil olmamas gerekir. Bu tr modelin edeeri ise
dx = ( E 1 A) x + ( E 1 B )u dt y = Cx + Du

eklindedir.

Bu tr bir sistem modeli oluturmak iin kullanlan fonksiyon dss dir. Fonksiyonunun kullanm aada gsterildii biimdedir. sys = dss(a,b,c,d,e)
rnek 8 : MATLAB da bir tanmlayc durum denklemi modeli oluturunuz. zm : A, B, C, D ve E durum denklemi deikenleri girilir ve fonksiyon yazlr. Sonu aada olduu gibidir.

>> A=[0 1;-5 -2] A= 0 -5 1 -2

>> B=[0;3] B= 0 3 >> C=[0 1] C= 0 1

>> D=0 D= 0 >> E=[1 2;3 4] E= 1 3 2 4

>> sys = dss(A,B,C,D,E) a= x1 x2 b= u1 x1 0 -5 x2 1 -2

x1 x2 c= y1 d= y1 e=

0 3

x1 0 u1 0

x2 1

x1 x2 x1 1 2 x2 3 4 Continuous-time model.
4.1.5 Frekans Cevab Verileri Modeli

LTI sistemlerinin frekans cevab verileri modelini oluturmak iin frd fonksiyonu kullanlmaktadr. Bir sistemde deney yolu ile elde edilen frekans vektr ve frekanslara karlk gelen cevap vektr fonksiyonda gerekli yerlere yazldnda sistemin frekans cevab verileri modelini MATLAB da elde etmi oluruz. Fonksiyonunun kullanm aada gsterildii biimdedir. [3] sys = frd(response,frequency,Units,Hz)
rnek 9 : 1000, 2000 ve 3000 Hz frekans deerlerindeki cevab -0.81126-0.0003i, -0.17510.0016i ve -0.0926-0.4630i olan sistemin frekans verileri cevabn elde ediniz. zm : lk olarak frekans ve cevap (response) vektrleri oluturulur

>> freq=[1000;2000;3000]; >> resp=[-0.81126-0.0003i;-0.1751-0.0016i;-0.0926-0.4630i]; >> H=frd(resp,freq,'Units','Hz') From input 1 to: Frequency(Hz) output 1 ------------- -------1000 -0.81126-0.0003i 2000 -0.17510-0.0016i 3000 -0.09260-0.4630i Continuous-time frequency response data model.
4.1.6 Ayrk Zaman Modeli

Bir sistemin ayrk zaman modelini oluturmak iin, transfer fonksiyonu, sfr-kutup-kazan, durum denklemleri ve frekans cevab verileri modellerinde kullanlan fonksiyonlara rnekleme zaman bilgisi girilmesi yeterlidir. [3] sys1 = tf(num,den,Ts) sys2 = zpk(z,p,k,Ts) sys3 = ss(a,b,c,d,Ts) sys4 = frd(response,frequency,Ts)
rnek 10 : tf fonksiyonu ile bir ayrk zaman modeli oluturunuz. zm : tf fonksiyonuna rnekleme zaman bilgisini girerek ayrk zaman modelini elde ederiz.

>> h = tf([1 -0.2],[1 0.3],0.1) Transfer function: z - 0.2 ------z + 0.3 Sampling time: 0.1 4.2 Modellerin Verilerine Eriim Transfer fonksiyonu, sfr-kutup-kazan, durum denklemleri, tanml durum denklemleri ve frekans cevab verileri modellerinin verilerine erimek iin srasyla aadaki fonksiyonlar kullanlr. MATLAB ortamnda mevcut bir sistem olduunda ve bu sistemin verileri gerektiinde bu komutlar rahatlkla kullanlabilir ve istenilen bilgilere ulalabilir. [3] [num,den,Ts] = tfdata(sys,v) [z,p,k,Ts] = zpkdata(sys,v) [a,b,c,d,Ts] = ssdata(sys,v) [a,b,c,d,e,Ts] = dssdata(sys,v) [response,frequency,Ts] = frdata(sysfr,v)
rnek 11 : Aada verilen transfer fonksiyonu modelinin pay ve payda vektrlerini MATLAB ortamnda elde ediniz. s +3 T ( s) = 2 s + 2s + 3 zm :

>> sys = tf([1 3],[1 2 5]) Transfer function: s+3 ------------s^2 + 2 s + 5

>> [num,den,Ts] = tfdata(sys,'v') num = 0 den = 1 Ts = 0 2 5 1 3

4.3 Modellerin Birbirine Dntrlmesi Tablo 4.1 Sistemlerin birbirine dntrlmesinde kullanlan fonksiyonlar [3]

Transfer Fonksiyonu Transfer Fonksiyonu Durum Denklemi Sfr-KutupKazan ss2tf zp2tf poly

Durum Denklemi tf2ss

Sfr-KutupKazan tf2zp Ss2zp

zp2ss

4.3.1 Transfer fonksiyonunu Durum Denklemine evirme

tf2ss fonksiyonu transfer fonksiyonunu durum denklemine evirir. Aadaki biimde kullanlr. [A,B,C,D] = tf2ss(a,b) a ve b deikenleri transfer fonksiyonunun pay ve payda vektrleridir. A, B, C ve D elde edilecek durum denklemi deikenleridir.
rnek 12 :

2s+3 --------------verilen transfer fonksiyonunu durum denklemine eviriniz. s^2 + 0.4 s + 1

zm :

>> a = [2 3]; >> b = [1 0.4 1]; >> [A,B,C,D] = tf2ss(a,b) A= -0.4000 -1.0000 1.0000 0 B= 1 0 C= 2 D= 0 3

4.3.2 Durum Denklemini Transfer fonksiyonuna evirme

ss2tf fonksiyonu, durum denklemini transfer fonksiyonuna evirir. Aadaki biimde kullanlr. ss2tf(A,B,C,D,iu) iu deikeni sistemin giri saysn verir. Deer verilmediinde 1 kabul edilir.

rnek 13 : Yukardaki rnekte durum denklemi deikenleri elde edilen sistemin yeniden transfer fonksiyonu deikenlerini elde edelim. zm :

>> [a,b] = ss2tf(A,B,C,D) a= 0 2.0000 b= 3.0000

1.0000 0.4000 >> tf(a,b) oluturulmas Transfer function: 2s+3 --------------s^2 + 0.4 s + 1

1.0000 % elde edilen verilerle T.F(Transfer Fonksiyonu) nin

4.3.3 Transfer fonksiyonunu Sfr-Kutup-Kazan Modeline evirme

tf2zp fonksiyonu transfer fonksiyonunun sfrlarn, kutuplarn ve kazancn bulur. Aadaki biimde kullanlr. [z,p,k] = tf2zp(a,b) z : sfrlar matrisi p : kutup vektr k : kazan
rnek 14 : Bir nceki rnekte elde edilen transfer fonksiyonu verileri ile bu sistemin sfrkutup-kazan modelini oluturun. zm :

>> [a,b] = eqtflength(a,b) a= 2 b= 1.0000 0.4000 1.0000 >> [z,p,k] = tf2zp(a,b) z= -1.5000 p= -0.2000 + 0.9798i -0.2000 - 0.9798i 3 0

k= 2 Yukardaki rnekte kullanlan eqtflength fonksiyonu transfer fonksiyonunun pay ve payda vektrlerinin boyutlarn denk hale getirir.
4.3.4 Sfr-Kutup-Kazan Modelini Transfer Fonksiyonuna evirme

zp2tf fonksiyonu sfr-kutup-kazan modelinin transfer fonksiyonuna ait pay ve payda vektrlerini bulur. Aadaki biimde kullanlr. [a,b] = zp2tf(z,p,k)
rnek 15 : Bir nceki rnekte bulunan z,p,k verileri ile sistemin transfer fonksiyonunu bulunuz. zm :

>> [a,b] = zp2tf(z,p,k) a= 0 b= 2 3 1.0000

1.0000 0.4000

4.3.5 Durum Denklemini Sfr-Kutup-Kazan Modeline evirme

ss2zp fonksiyonu durum denklemi verilen sistemin sfrlarn, kutuplarn ve kazancn bulur. Aadaki biimde kullanlr. [z,p,k] = ss2zp(A,B,C,D,i) i sistemin giri saysn verir.
rnek 16 : rnek 11 de bulunulan durum denklemi deikenlerini kullanarak bu sistemin sfr-kutup-kazan modelini oluturunuz. zm :

>> [z,p,k] = ss2zp(A,B,C,D,1) z= -1.5000 p= -0.2000 + 0.9798i

-0.2000 - 0.9798i k= 2.0000


4.3.6 Sfr-Kutup-Kazan Modelini Durum Denklemine evirme

zp2ss fonksiyonu z, p ve k deikenleri verilen bir sfr-kutup-kazan modelinin durum denklemi deikenlerini bulur. Aadaki biimde kullanlr. [A,B,C,D] = zp2ss(z,p,k)
rnek 17 : Yukardaki rnekte bulunulan z, p ve k deerlerinden faydalanarak sistemin durum deikenleri modelini oluturunuz. zm :

>> [A,B,C,D]=zp2ss(z,p,k) A= -0.4000 -1.0000 1.0000 0 B= 1 0 C= 2.0000 3.0000 D= 0

BLM 5 5 MODELLERN BRBRNE BALANMASI

MATLAB/The Control System Toolbox modellerin birbirine balanmas ve kompleks sistemlerin oluturulabilmesi iin birka fonksiyon kullanmaya imkan tanr. Bumlar; [1] series ve parallel fonksiyonlar ile seri ve paralel sistemler birletirilebilir. feedback ve lft fonksiyonlar geribesleme balantlarn zer Giri/k balantlar matris yntemi ve append fonksiyonu ile yaplr.

5.1 Seri Balant

R(s)

H1

H2

C(s)

ekil 1

Yukarda grld gibi birbirine paralel bal olan H1 ve H2 modelleri MATLAB ortamnda series fonksiyonu ile birletirilerek H modeli oluturulabilir. Bu sistemlerin dier bir ekilde birletirilmesi modellerin arplmasyla mmkn olmaktadr.
rnek 1 : Aada verilen H1 ve H2 modellerini balaynz.

H1 =

s +1 s , H1 = 2 4s + 3s + 2 7s s + 5
2

zm :

series fonksiyonu ile zm.

>> H1=tf([1 1],[4 3 2]) Transfer function: s+1 --------------4 s^2 + 3 s + 2 >> H2=tf([1 0],[7 -1 5]) Transfer function: s ------------7 s^2 - s + 5 >> H=series(H1,H2) Transfer function: s^2 + s -----------------------------------28 s^4 + 17 s^3 + 31 s^2 + 13 s + 10 Matris arpm (*) ile zm >> H=H1*H2 Transfer function: s^2 + s -----------------------------------28 s^4 + 17 s^3 + 31 s^2 + 13 s + 10
5.2 Paralel Balant

H1 + + H2
ekil 2

Yukarda grld gibi birbirine paralel bal olan H1 ve H2 modelleri MATLAB ortamnda parallel fonksiyonu ile birletirilerek H modeli oluturulabilir. Bu sistemlerin dier bir ekilde birletirilmesi modellerin toplanmasyla mmkn olmaktadr.
rnek 2 : Aada verilen H1 ve H2 modellerini balaynz.

1 2s + 4

, H1 =

2 9s 21s + 2
2

zm :

parallel fonksiyonu ile zm. >> H1=tf([1],[1 -2 4]); >> H2=tf([-2],[-9 -21 2]); >> H=parallel(H1,H2) Transfer function: 11 s^2 + 17 s + 6 -------------------------------9 s^4 + 3 s^3 - 8 s^2 + 88 s - 8 Matris arpm (+) ile zm >> H=H1+H2 Transfer function: 11 s^2 + 17 s + 6 -------------------------------9 s^4 + 3 s^3 - 8 s^2 + 88 s - 8
5.3 Geribeslemeli Balant

R(s) + H2 H
ekil 3

H1

C(s)

Yukarda grld gibi geribesleme balantl olan H1 ve H2 modelleri MATLAB ortamnda feedback fonksiyonu ile birletirilerek H modeli oluturulabilir. Geribesleme pozitif yada negatif geribesleme olmak zere iki durumda olabilir. Negatif geribesleme iin aada gsterilen birinci fonksiyon, pozitif geribesleme iin ikinci fonksiyon kullanlr. [1] feedback(H1,H2) feedback(H1,H2,+1)
rnek 3 : Aada verilen H1 ve H2 modellerini H2 negatif ve pozitif geribesleme olmak zere her iki durum iin balaynz.

H1 =

5 2 , H2 = s2 11s 12s + 9
2

zm : H2nin pozitif geribesleme zm. >> H1=tf([5],[11 -12 9]);

>> H2=tf([-2],[1 -2]); >> H=feedback(H1,H2) Transfer function: 5 s - 10 --------------------------11 s^3 - 34 s^2 + 33 s - 28 H2nin pozitif geribesleme zm. >> H=feedback(H1,H2,+1) Transfer function: 5 s - 10 -------------------------11 s^3 - 34 s^2 + 33 s - 8
5.4 klarn Toplanmas

u1 H1 +
u1 y = [H 1 H 2]. u 2

u2 H2

+ H
ekil 4

Yukarda grld gibi klarn balanmas eklinde olan H1 ve H2 modelleri MATLAB ortamnda aadaki ekilde birletirilir ve H modeli oluturulur. H=[H1+H2]
rnek 4 : rnek 3te verilen H1 ve H2 modellerini klarn toplanmas eklinde balaynz. zm : H modelinde iki farkl giri ve tek bir k vardr.

>> H1=tf([5],[11 -12 9]); >> H2=tf([-2],[1 -2]);

>> H=[H1,H2] Transfer function from input 1 to output: 5 ----------------11 s^2 - 12 s + 9 Transfer function from input 2 to output: -2 ----s-2

5.5 Giriin Datlmas

H1 u H2 H
ekil 5

y1
y1 H 1 y 2 = H 2 * u

y2

Yukarda grld gibi giriin datlmas eklinde olan H1 ve H2 modelleri MATLAB ortamnda aadaki ekilde birletirilir ve H modeli oluturulur. [1] H=[H1;H2]
rnek 5 : Girii , rnek 3te verilen H1 ve H2 modelleri zerinden datnz. zm : H modelinde iki farkl k ve tek bir giri vardr.

>> H1=tf([5],[11 -12 9]); >> H2=tf([-2],[1 -2]); >> H=[H1;H2] Transfer function from input to output... 5 #1: ----------------11 s^2 - 12 s + 9 -2 #2: ----s-2

5.6 Girilerin ve klarn Birletirilmesi

u1 u2

H1 H2
ekil 6

y1 y2
y1 H 1 0 u1 y 2 = 0 H 2 * u 2

ekil 6da grld gibi modellerin girilerinin ve klarnn balanmas iin append fonksiyonu kullanlr. [1] rnek 6 : nek 3te verilen H1 ve H2 modellerini girileri ve klar birletirerek modelleyiniz. zm :

>> H=append(H1,H2) Transfer function from input 1 to output... 5 #1: ----------------11 s^2 - 12 s + 9

#2: 0 Transfer function from input 2 to output... #1: 0 -2 #2: ------------s^2 - 2 s + 3

BLM 6 6 GR FONKSYONLARI 6.1 Basamak Cevab ( Step Response)

MATLAB da dorusal zamanla deimeyen sistemlerin, transfer fonksiyonu, sfr-kutupkazan ve durum denklemi modellerinin basamak cevabn hesaplamak ve grafiini izmek step fonksiyonu ile gerekletirilir. Kullanm biimi aada gsterildii gibidir. step(sys) step(sys,t) sys deikeni dorusal zamanla deimeyen bir sistemi temsil eder. t deikeni zaman vektrdr. Birinci kullanm biiminde t deikeni girilmedii iin zaman deikenlerini MATLAB otomatik olarak seer. [1] [y,t]=step(sys,t) Fonksiyonun yukarda olduu gibi kullanlmas ile t vektrne karlk gelen basamak cevabnn y vektrnde saklanmas mmkn olur.
rnek 1 : Transfer fonksiyonu aada verilen sistemin basamak cevabn bulunuz.

T ( s) =

s+2 s + 4 s + 55
2

zm :

>> sys=tf([1 2],[1 4 55]) Transfer function: s+2 -------------s^2 + 4 s + 55 >> step(sys) Yukardaki komut satrlarnn icras ile MATLAB da aadaki grafik izilir ve kullancya ekil 6.1 grnr.

ekil 6.1 rnek 1in step fonksiyonu grafii rnek 2 : Aada durum denklemi deikenleri verilen sistemin basamak cevabn elde ediniz.

0.55 0.78 1 1 A= , B = 0 2 , C = [1.96 6.44] , D=0 0 0.78


zm : lk nce durum deikenleri MATLAB da matris olarak tanmlanr. Bu matrislerle ss fonksiyonu kullanlarak durum denklemi modeli elde edilir ve step fonksiyonu kullanlarak basamak cevab hesaplanr.

>> a = [-0.5572 -0.7814;0.7814 0];

b = [1 -1;0 2]; c = [1.9691 6.4493]; sys = ss(a,b,c,0) a= x1 x2 b= x1 x2 c= y1 d= y1 u1 0 u2 0 x1 1.9691 x2 6.4493 u1 1 0 u2 -1 2 x1 -0.5572 0.7814 x2 -0.7814 0

Continuous-time model. step(sys)

ekil 6.2 rnek 2deki step fonksiyonu grafii rnek 3 : wn = 1, = 0.1 olarak verilen ikinci dereceden bir sistemin basamak cevabn elde ediniz. zm :

Bu sorunun zmnden nce MATLAB da ikinci dereceden bir denklem oluturmak iin kullanlan ord2 fonksiyonunun anlatlmasnda fayda gryorum. ord2 fonksiyonunun kullanm biimi aada olduu gibidir. [A,B,C,D] = ord2(wn,z) [num,den] = ord2(wn,z) wn doal frekans z deikeni snm orann (ksi) temsil eder Yukarda gsterilen fonksiyonun birinci kullanm ekliyle ikinci dereceden bir durum denklemi modeli elde edilir. kinci kullanm ekliyle ise transfer fonksiyonu modeli elde edilir. >> wn =1; >>z =0.1; >> [num,den] = ord2(wn,z) num = 1 den = 1.0000 0.2000 >> sys=tf(num,den); >> step(sys) 1.0000

ekil 6.3 rnek 3deki step fonksiyonu grafii 6.2 Anidarbe Cevab (Impulse Response)

MATLAB da dorusal zamanla deimeyen sistemlerin, transfer fonksiyonu, sfr-kutupkazan ve durum denklemi modellerinin anidarbe cevabn hesaplamak ve grafiini izmek impulse fonksiyonu ile gerekletirilir. Kullanm biimi aada gsterildii gibidir.

impulse(sys)
rnek 4 : Transfer fonksiyonu aada verilen sistemin basamak cevabn bulunuz. 7 T ( s) = 2 s + 13s + 6 zm :

>> sys=tf([7],[1 13 6]) Transfer function: 7 -------------s^2 + 13 s + 6 >> impulse(sys)

ekil 6.4 rnek 4teki impulse fonksiyonu grafii 6.3 Rasgele Seilmi Giri Cevab

MATLAB da dorusal zamanla deimeyen sistemlerin, transfer fonksiyonu, sfr-kutupkazan ve durum denklemi modellerinin rasgele bir girie olan cevabn hesaplamak ve grafiini izmek lsim fonksiyonu ile gerekletirilir. Kullanm biimi aada gsterildii gibidir. [3] lsim(sys,u,t) u deikeni girie uygulanan sinyaldir. t deikeni zaman vektrdr. Bu fonksiyonun kullanlmasnda gensig fonksiyonunun bilinmesinin faydas olacandan ksaca gensig hakknda bilgi vereceiz. Bu fonksiyon MATLAB da sinyal jeneratr gibi davranr. Kullanm biimi aada olduu gibidir. [1]

[u,t] = gensig(type,tau) [u,t] = gensig(type,tau,Tf,Ts) type deikeni kullanulacak sinyalin eidini belirler. Bunlar; - sin sins sinyali - square kare dalga - pulsu darbe sinyali tau retilen sinyalin periyodunu belirler Tf sinyalin ka saniye retileceini belirler Ts rnekleme zamann belirler t retilen sinyalin zaman vektr u retilen sinyalin zamana vektrne karlk gelen genlik deeri
rnek 5 : Transfer fonksiyonu aada verilen sisteme 25 sn boyunca, periyodu 5 sn ve rnekleme zaman 0.1 olan sins dalga giri olarak uygulandnda sistemin cevabn bulunuz.

T (s ) =

s +1 s + 11s + 21
2

zm :

>> sys=tf([1 1],[1 11 21]); >> lsim(sys,u,t)

ekil 6.5 rnek 5teki lsim fonksiyonu grafii

BLM 7

7 ROUTH-HURWITZ KARARLILIK KRTER

Bir sistemin kararl olup olmad anlamak iin kullanlan bir yntemdir. Bu yntem transfer fonksiyonu belli olan bir sistemin karakteristik denklemine baklarak uygulanr. Uygulanacak sistemin ncelikle u iki kurala uymas gerekmektedir. [4] - Karakteristik denklemi oluturan sli ifadelerin katsaylarnn 0dan farkl olmas gerekir. - Karakteristik denklemi oluturan sli ifadelerin katsaylarnn iaretlerinin ayn olmas gerekir. Bir sistemin karakteristik denkleminin aada olduu gibi verildiini varsayalm.
KD = a n s n + a n1 s n 1 + ......... + a1 s 1 + a 0 = 0
7.1 Hurwitz Kriteri

(7.1)

Routh-Hurwitz kriteri aada ifade edilen kritere dayanr. (7-1) denkleminde tm kklerin sol yar s-dzleminde yer almas iin gerek ve yeter koul, k=1,2,.....,n iin, denkleme ait tm Hurwitz determinantlar, nden daha yksek mertebeden ve negatif katsaylar sfr alnmak zere, u ekilde tretilir:
D1 = a n1 , D2 =
a n1 an a n 3 , ......... a n 2

a n 1 an 0 Dn = . . . 0

a n 3 a n 2 a n1 . . . 0

a n 5 a n 4 a n 3 . . . 0

. . . . . .

. . . . . .

. . . . . .

0 0 0 . . .

0 0 0 a0

7.2 Routh Listelemesi

Bu yntem yukarda anlatlan Hurwitz kriterine gre uygulanmas daha kolaydr. lk olarak karakteristik denklemin katsaylar aada gsterildii gibi dizilir. [4]
an a n1 a n 2 a n 3 a n 4 a n 5

. . . . . .

Sonraki admlar, aada drdnc dereceden bir denklem iin tretilen say dizisinden oluur.
a 4 s 4 + a 3 s 3 + a 2 s 2 + a1 s 1 + a 0 = 0

(7.2)

s 4 a 4 a 2 a0 s 3 a 3 a1 0 s 2 b1 b2 0
s 1 c1 c2 s 0 d1

a 4 a1 a 2 a3 a 4 0 a 0 a3 = b1 , = b2 , a3 a3 c1 = a 3b2 b1a1 a 0 b1 0 , c2 = 3 =0 b1 b1

d 1 = b2

Yukardaki dzene Routh Listelemesi denir. Sistemin kararllna bakmak iin yukarda kesikli stun iindeki elemanlara baklr. Routh listelemesinde birinci stun elemanlarnn iaretleri ayn ise denklem kklerinin tm sol yar s-dzlemindedir. Birinci stundaki iaret deiimi says pozitif gerek ksml, ya da sa yar s-dzlemindeki kklerin saysna eittir. [4]
7.2.1 MATLAB da Routh-Hurwitz Listelemesini Yapan Fonksiyon Hazrlamak

MATLAB da dokuzuncu dereceye kadar olan karakteristik denklemlerin Routh-Hurwitz listesini karan bir fonksiyon aada olduu gibidir.. rliste Fonksiyonu : function [routh_table]=rliste(p) s=size(p); if s(1,2)<3 | s(1,2)>9,fprintf('Derece 2''den fazla 10''dan az olmali'),break,end poz=0; neg=0; notr=0; sifir=0; yer=0; der=0; for i=1:s(1,2) if p(1,i)>0 poz=poz+1; end if p(1,i)<0 neg=neg+1; end if p(1,i)==0 notr=notr+1; end

end if s(1,2)~=poz & s(1,2)~=neg Saglamiyor.'),return,end

,fprintf('Denklemin

Katsayilari

Gerek

Sarti

if s(1,2)==poz | s(1,2)==neg deg=s(1,2)/2; if deg>fix(deg) fdeg=fix(deg)+1; birler=zeros(s(1,2),fdeg+1); sifir=1; else sifir=0; fdeg=deg; birler=zeros(s(1,2),fdeg+1); end for i=1:fdeg for j=1:2 if i<=fix(deg) yer=yer+1; birler(j,i)=p(yer); end if i==fdeg & sifir==1 birler(1,fdeg)=p(yer+1); birler(2,fdeg)=0; end end end end routh=birler; % if fdeg-1>=0 for i=0:fdeg-1 b(i+1)=(birler(2,1)*birler(1,i+2)-birler(1,1)*birler(2,i+2))/birler(2,1); routh(3,i+1)=b(i+1); end for i=1:2 if routh(3,i)==0 der=der+1; end end if der==2 derece=s(1,2); routh=ydenklem(derece,routh,3); b(1,1)=routh(3,1); b(1,2)=routh(3,2); end der=0; if fdeg-1==0 routh(4,1)=a(2);end %

if fdeg-2>=0 for i=1:fdeg-1 c(i)=(b(1)*birler(2,i+1)-b(i+1)*birler(2,1))/b(1); routh(4,i)=c(i); end for i=1:2 if routh(4,i)==0 der=der+1; end end if der==2 derece=s(1,2); routh=ydenklem(derece,routh,4); c(1,1)=routh(4,1); c(1,2)=routh(4,2); end der=0; if fdeg-2==0 routh(5,1)=b(2);end % if fdeg-3>=0 for i=1:fdeg-2 d(i)=(c(1)*b(i+1)-c(i+1)*b(1))/c(1); routh(5,i)=d(i); end for i=1:4 if routh(5,i)==0 der=der+1; end end % fonksiyon buraya konulacak KD derecesi{s(1,2)},kacinci satir sifirlar,routh listesi if der==4 derece=s(1,2); routh=ydenklem(derece,routh,5); d(1,1)=routh(5,1); d(1,2)=routh(5,2); end end if fdeg-3==0 routh(6,1)=c(2);end der=0; % if fdeg-4>=0 for i=1:fdeg-3 e(i)=(d(1)*c(i+1)-d(i+1)*c(1))/d(1); routh(6,i)=e(i); end for i=1:3 if routh(6,i)==0 der=der+1;

end end if der==3 derece=s(1,2); routh=ydenklem(derece,routh,6); e(1,1)=routh(6,1); e(1,2)=routh(6,2); end if fdeg-4==0 routh(7,1)=d(2);end der=0; % if fdeg-5>=0 for i=1:fdeg-4 f(i)=(e(1)*d(i+1)-e(i+1)*d(1))/e(1); routh(7,i)=e(i); end for i=1:3 if routh(7,i)==0 der=der+1; end end if der==3 derece=s(1,2); routh=ydenklem(derece,routh,7); f(1,1)=routh(7,1); f(1,2)=routh(7,2); end der=0; if fdeg-5==0 routh(8,1)=e(2);end % if fdeg-6>=0 for i=0:fdeg-1 g(i+1)=(f(1)*e(i+2)-f(i+2)*e(1))/f(1); routh(8,i+1)=g(i+1); end for i=1:3 if routh(8,i)==0 der=der+1; end end if der==3 derece=s(1,2); routh=ydenklem(derece,routh,8); g(1,1)=routh(8,1); g(1,2)=routh(8,2); end der=0;

if fdeg-6==0 routh(9,1)=e(2);end % end end end end end fprintf('\n\n--Sistemin Routh Listesi--') routh %[1 4 8 8 7 4] Yukardaki rliste fonksiyonunun iinde arlan ydenklem fonksiyonu aada olduu gibidir. ydenklem fonksiyonu

function [ydenklem]=ydenklem(boyut,rliste,ssatir) yd_der=(boyut+1-(ssatir-1)); yd=rliste(ssatir-1,1:(yd_der-1)); yd1=zeros(1,yd_der); k=1; for i=1:(yd_der-1); yd1(1,k)=yd(1,i); k=k+2; end yd=polyder(yd1); rliste(ssatir,1:yd_der-2)=yd(1,1:yd_der-2); % 2 ikartilmasinin sebebi 1 turevden + 1 yd_der'den 1 eksik olmali ydenklem=rliste; fprintf(' Yardimci Denklem Kullanildi. Satir No = %d',ssatir);

rnek 1 : Yukarda yazdnz fonksiyonu karakteristik denklemi aada verilen sistem zerinde deneyiniz. [4]

2s 4 + s 3 + 3s 2 + 5s + 10 = 0
zm : Yazdmz fonksiyona karakteristik denklemin katsaylarn girdiimizde Routh listesi karmza kmaktadr.

>> rliste([2 1 3 5 10]) --Sistemin Routh Listesi-routh = 2.0000 3.0000 10.0000 1.0000 5.0000 0 -7.0000 10.0000 0 6.4286 0 0 10.0000 0 0 0 0 0

0 0 0 0 0 0

rnek 2 : Yukarda yazdnz fonksiyonu karakteristik denklemi aada verilen sistem zerinde deneyiniz. [4]

s 5 + 4 s 4 + 8s 3 + 8 s 2 + 7 s + 4 = 0
zm : Fonksiyon listede 5 satrdaki tm elemanlarn sfr olduunu tespit etti ve bunun stesinden gelmek iin bir yardmc denklem oluturdu. yle ki ; Sfrlardan oluan satrdan bir nceki satr s 2 satrdr. Yardmc denklem bu yzden aada olduu gibi oluur. yd = 4s 2 + 4 = 0 Yardmc denklem bu ekilde oluturulduktan sonra trevi alnr. ( yd )' = 8 Elde edilen sonu sfrlardan oluan satra yazlr.

>> rliste([1 4 8 8 7 4]) Yardimci Denklem Kullanildi. Satir No = 5 --Sistemin Routh Listesi-routh = 1 4 6 4 8 4 8 8 6 4 0 0 7 4 0 0 0 0 0 0 0 0 0 0

BLM 8 8 KK-YER ERLER

Kk-yer erisi tek-giri, tek-kl sistemler iin kullanlan bir kararllk zmleme aracdr. Kk-yer erisinin zmlenmesi ile, sistem tasarmcs kklerin nerede yer aldn ve istenilen kararllk ve cevap iin transfer fonksiyonunda ne tr deiimler yaplmas gerektiini belirler.
8.1 Kk-Yer Erilerinin izimi ekil 1de verilen genel geribesleme sistemini ele alalm. Kapal-dng transfer fonksiyonun kutuplarn bulunmas iin aadaki koullarn salanmas gerekir.

R(s)

+ G(s) -

C(s)

H(s)
ekil 1 Kapal-dng sistem

l+G(s)H(s)=0 G(s)H(s)= -l=1 180 (2k+l) burada, k=0, 1, 2,...

(1.1) (1.2)

dir. (1.2) nolu denklem, bir kapal-dng kutbu var olmas halinde, a koulu ve modl koulu olmak zere iki durumu belirler. Burada G(s)H(s) bir karmak say fonksiyon olduuna gre a ve modl olmak zere iki unsuru vardr. A koulu,
G(s)H(s) = 180(2k+l) (k = O, l, 2.....) (1.3)

eklinde ifade edilir. Burada G(s)H(s) in as 180 arpmnn tek katlardr. Modl (byklk) koulu: G(s)H(s) modl birim deere eit olmal. Bu da, |G(s)H(s)| = l (1.4) eklinde gsterilir. A ve modl koullarn salayan s deerleri karakteristik denklemin kkleri veya kapal-dng kutuplardr. Karmak a koulunu salayan noktalarn izdii eri kklerin geometrik yerinin erisi ksaca kk-yer erisidir. Kazancn belirli bir deerine karlk karakteristik denklemin kkleri ise modl koulundan belirlenir. [4]

8.2 Kk-Yer Erisi izim Kurallar [4] Kural 1 : Kk-yer erisi birden fazla kollardan meydana gelebilir bu kollarn says karakteristik denklemin derecesine eittir. Dier bir deyile kol says ak-dng kutup saysna eittir. Kk-yer erilerinin her bir blm veya kolu, kazancn deiimine bal olarak kapal-dng sistemin belli bir kutbunun hareketini tanmlar. Kural 2 : Ak-dng kutuplar kk-yer erisinin balama noktas (K=0) ve ak-dng sfrlar da kk-yer erisinin biti noktasn (K= ) tanmlar. Buna gre kk yer erisi akdng kutuplarnda balar ve sfrlarnda sona erer. Eer G(s)H(s) in paydasnn derecesi payn derecesinden byk ise kk-yer erisi sonsuzda biter ve payn derece paydann derecesinden bykse kk-yer erisi sonsuzda balar. Genellik paydann derecesi payn derecesinden byk olduundan kk-yer erisi sonsuza gider. Kural 3 : Gerek eksen zerinde yer alan kk-yer erisi kollar ak-dng kutup ve sfrlarndan bulunur. Ak-dng transfer fonksiyonunun karmak elenik kutuplarnn ve sfrlarnn gerek eksen zerinde yer alan kk-yer erisi zerinde bir etkisi yoktur. nk karmak-elenik kutuplarn ve sfrlarn gerek eksen zerindeki a paylan 360 dir ve 180(2k+l) olan a koulunu salamaz. Gerek eksen zerinde yer alan kk-yer erisinin her bir ksm bir kutup veya sfrdan dier kutup veya sfra doru uzanr Kural 4 : Kk-yer erisinin asimptot as aadaki denklem yoluyla bulunur.

180( 2k + 1) (k = 0,l,2,-) nm

(1.5)

Burada n= ak-dng, G(s)H(s) kutuplarnn says m= ak-dng, G(s)H(s) sfrlarnn says Burada k=0 asimptotun gerek eksen ile yapt en kk aya karlk gelir. Her ne kadar k'nn sonsuz sayda deeri olduu kabul edilirse de knn art ile birlikte alar kendilerini tekrarlarlar ve asimptot says (n-m) deerine eit olur.
Kural 5 : Tm asimptotlar gerek ekseni keser ve gerek ekseni kestii noktalar aadaki ifade ile bulunur.

a =

G(s)H(s) kutuplar - G(s)H(s) sfrlar (kutup sayisi ) - (sifir sayisi)

(1.6)

Kural 6 : Kk-yer erisinin gerek eksenden ayrlma noktas gerek eksen zerindeki kazan katsays, K deerinin maksimum ve kk-yer erisinin gerek eksen var noktas K deerinin minimum olduu noktadr. Kk-yer erisinin gerek eksen etrafnda simetrik olmasndan dolay, ayrlma noktalar ve var noktalan ya gerek eksen zerinde yer alr ya da karmak kk ifti eklinde ortaya kar. Ayrlma ve var noktalan, karakteristik denklemde K'y ektikten sonra s= koyarak hesaplanabilir daha sonra

dK ( ) =0 d

eklinde trevi alndktan sonra maksimum ve minimum yapan deerleri bulunur. Kural 7 : Karmak kutuptan ayrlma as: Kk-yer erisinin bir karmak kutuptan ayrlma as (1.2) nolu a koulunu uygulayarak bulunur. Buna gre, ekil 2' de gsterildii gibi karmak kutbun ok yaknnda bir test noktas seilir ve dier kutup ve sfrlardan izilen dorularn yatay ile yapt alar toplamndan 180 karlarak elde edilir.

Z P + P + P + P = (2k + 1)180
1 0 1 2 3

eklinde ifade edilir. Simetriden dolay dier elenik kutuptan ayrlma as yukardaki deerin ters iaretlisi olur. Kural 8 : Karmak sfra var as: Kk-yer erisinin bir karmak sfra var as yine a koulundan benzer ekilde bulunur.

ekil 2 - Karmak kutuplardan ayrlma as 8.3 MATLAB da Kk-Yer Erisi izimi

MATLAB da dorusal, zamanla deimeyen bir sistemin kk-yer erisini izmek iin rlocus fonksiyonu kullanlr. Kullanm biimi aada olduu gibidir. [6] rlocus(sys) rlocus(sys,k) [r,k]=rlocus(sys) sys deikeni kk-yer erisi izilecek sistemin modelidir. k kazan deikenidir. r kazan deerleri iin sistemin kk yerlerini matris olarak elde eder.
rnek 1 : Ak-dng transfer fonksiyonu aada verilen sistemin A ) Kk-yer erisini iziniz.

B ) izilen grafikten sistemin kazancnn 11 olduu andaki sistemin kkn, snm orann ve frekans deerlerini bulunuz. G(s)H(s) =
zm : A)

K ( s + 1) s(s + 2)(5s + l)

>> num=[1 1]; >> den=conv(conv([1 0],[1 2]),[5 1]); >> sys=tf(num,den) Transfer function: s+1 -------------------5 s^3 + 11 s^2 + 2 s >> rlocus(num,den)

ekil 3 rnek 1deki rlocus fonksiyonu grafii B ) rlocus fonksiyonu ile MATLAB in oluturduu grafikte izilen izgilerden herhangi bir yere fare ile tklandnda otomatik olarak o noktann kazan, kutup, snm oran ve frekans deerleri bir pencerede grntlenir (ekil 4).

Kazan:11 , kutup: -0.362+1.17i , Snm oran : 0.295 , Frekans : 1.23 (rad/sn)

ekil 4 kk-yer erisi zerindeki bir noktann deerleri

rnek 2 : G(s)H(s) =

K (0.2s + 1) s ( s + 1)

in kk-yer erisini iziniz. K kazan deikeni 10 ve 20

iin.
zm :

>> num=[0.2 1]; >> den=conv([1 0],[1 1]); >> sys=tf(num,den) Transfer function: 0.2 s + 1 --------s^2 + s >> K=[10 20]; >> rlocus(sys,K)>> rlocus(num,den)

ekil 4 rnek 2deki rlocus fonksiyonu grafii

rnek 3 : GH (s ) =

K sistemin karmak kk yerlerini elde ediniz. K kazan s (4s + 1)(0.4s + 1) deiken deerleri 5 ve 10 iin.
zm :

>> num=[1]; >> den=conv(conv([1 0],[4 1]),[0.4 1]); >> sys=tf(num,den) Transfer function: 1 --------------------1.6 s^3 + 4.4 s^2 + s >> K=[5 10]; >> r = rlocus(sys,K) r= -2.9051 -3.1736 0.0776 + 1.0342i 0.2118 + 1.3873i 0.0776 - 1.0342i 0.2118 - 1.3873i

BLM 9 9 FREKANS ALANI ANALZ

Sistemlerin frekans alan analizinde, zaman deiimi yerine frekans deiimine karlk gelen modl ve faz as deiimleri incelenir. Frekans alan cevab erilerinden sistemlerin alma frekans aral yannda kararllk durumlarnda zmlenir. Frekans alan cevabnda; - Bode Diyagram - Nyquist Diyagram - Nichols Diyagram yntemleri kullanlr. [3] Frekans alan zmleme ilemi; giri sinzoidal frekansna karlk bir transfer fonksiyonun genlik oran ve faz as deerlerinin hesaplanmasndan ibarettir.
9.1 Bode Diyagram

Bode diyagram, frekans deiimine kar izilen genlik oran ve faz as erilerinden oluur. Bunlarda genellikle frekans deerleri yatay eksende logaritmik lekte, genlikler orannn 10 tabanna gre logaritma deeri dey eksende normal lekte yer alr. 10 tabanna gre genlik oran logaritmasnn ok kk olmasndan dolay, genellikle bunun 20 kat olan desibel (dB) cinsinde deerler yer alr. MATLAB da bode diyagramlarnn izilmesi iin bode fonksiyonu kullanlmaktadr. Kullanm biimi aada olduu gibidir. [6] bode(sys) bode(sys,w) [mag,phase,w] = bode(sys) (sys,w) sys transfer fonksiyonu, sfr-kutup-kazan veya durum denklemi olan bir dorusal zamanla deimeyen bir sistemdir. w bode diyagramnn iziminde kullanlacak frekans deikenlerinin atand vektrdr. mag sistemin frekans cevabnn atand deikendir. phase derece cinsinden alarn atand deiken.
rnek 1: Transfer fonksiyonu aada verilen sistemin bode diyagramn iziniz.
1 1 s2 + s +1 2

G=

zm :

>> sys=tf([1],[1 1/2 1])

Transfer function: 1 --------------s^2 + 0.5 s + 1 >> bode(sys)

ekil 9.1 rnek 1deki bode fonksiyonu grafii

ekil 9.1de grld gibi stteki grafik sistemin genliini, alttaki grafik ise sistemin fazn gstermektedir. Grld gibi x ekseni frekans gstermekte logaritmik olarak artmaktadr. Faz derece cinsinden, genlik ise 20 log( G ( jw) ) olarak desibel cinsinden ifade edilmektedir. [6] rnek 2 : Yukarda rnek 1de verilen transfer fonksiyonunun genlik ve faz deerlerinin elde ediniz. zm :

>> bode(sys) >> [mag,phase]=bode(sys) Yukardaki komut satrlarnn icras ile MATLAB 50 deerli genlik ve faz deerlerini ieren iki vektr oluturur. Aada olduu gibi.

mag(:,:,1) = 1.0088 mag(:,:,2) = 1.0112 mag(:,:,3) = 1.0142 mag(:,:,4) = 1.0180 mag(:,:,5) = 1.0229 mag(:,:,6) = 1.0292 mag(:,:,7) = 1.0372 mag(:,:,8) = 1.0475 mag(:,:,9) = 1.0608 mag(:,:,10) = 1.0781 mag(:,:,11) = 1.1006 mag(:,:,12) = 1.1301 mag(:,:,13) = 1.1694 mag(:,:,14) = 1.2223 mag(:,:,15) = 1.2404 mag(:,:,16) = 1.3065 mag(:,:,17) = 1.3843 mag(:,:,18) = 1.4740 mag(:,:,19) = 1.5746 mag(:,:,20) = 1.6834

mag(:,:,21) = 1.7950 mag(:,:,22) = 1.9003 mag(:,:,23) = 1.9879 mag(:,:,24) = 2.0457 mag(:,:,25) = 2.0656 mag(:,:,26) = 2.0422 mag(:,:,27) = 1.9588 mag(:,:,28) = 1.8042 mag(:,:,29) = 1.5884 mag(:,:,30) = 1.3407 mag(:,:,31) = 1.0941 mag(:,:,32) = 0.8714 mag(:,:,33) = 0.6818 mag(:,:,34) = 0.5260 mag(:,:,35) = 0.4007 mag(:,:,36) = 0.3531 mag(:,:,37) = 0.2633 mag(:,:,38) = 0.1990 mag(:,:,39) = 0.1518 mag(:,:,40) = 0.1167 mag(:,:,41) = 0.0903 mag(:,:,42) = 0.0702

mag(:,:,43) = 0.0547 mag(:,:,44) = 0.0428 mag(:,:,45) = 0.0335 mag(:,:,46) = 0.0263 mag(:,:,47) = 0.0207 mag(:,:,48) = 0.0163 mag(:,:,49) = 0.0128 mag(:,:,50) = 0.0101 phase(:,:,1) = -2.8913 phase(:,:,2) = -3.2617 phase(:,:,3) = -3.6820 phase(:,:,4) = -4.1599 phase(:,:,5) = -4.7050 phase(:,:,6) = -5.3288 phase(:,:,7) = -6.0459 phase(:,:,8) = -6.8750 phase(:,:,9) = -7.8406 phase(:,:,10) = -8.9754 phase(:,:,11) = -10.3247 phase(:,:,12) = -11.9532 phase(:,:,13) = -13.9558 phase(:,:,14) = -16.4787

..... phase(:,:,39) = -168.0468 phase(:,:,40) = -169.6753 phase(:,:,41) = -171.0246 phase(:,:,42) = -172.1594 phase(:,:,43) = -173.1250 phase(:,:,44) = -173.9541 phase(:,:,45) = -174.6712 phase(:,:,46) = -175.2950 phase(:,:,47) = -175.8401 phase(:,:,48) = -176.3180 phase(:,:,49) = -176.7383 phase(:,:,50) = -177.1087

Band genilii (Bandwidth) : Sistemin genliinin 0.707 yada 3dB olduu andaki frekans deerine band genilii denir. rnek 3 : rnek 1de verilen sistemin band geniliini bulunuz. [7] zm : ncelikle sistemin genlik ve faz deerleri bulunur. Bulunan deerlerle bir grafik izilir ve 0.707ye gelen genlik deerinden frekans deeri elde edilir. Buda sistemin band geniliini verir. ekil 9.3te grld gibi.

>> numG = 1; >> denG = [1 0.5 1]; >> [m,p,w]=bode(numG,denG); >> loglog(w,m); >> axis([0.1 10 0.01 10]); >> grid;

ekil 9.2 Kazan Paynn bode diyagram zerinde bulunmas

Kazan pay (Gain margin) : Bir sistemin giriiyle k arasndaki faz farknn 180 olduu andaki genlikler oran tersidir. ekil 9.3de GM olarak ifade edilen deer kazan paydr. Aada da grld gibi faz asnn -180 olduu deerden genlik grafiine bir dik izildiinde elde edilen genlik deerinin sfrdan kartlmasyla GM elde edilir. [7]

ekil 9.3 Kazan Paynn bode diyagram zerinde bulunmas

Faz pay (Phase margin) : Bir sistemin giriiyle k arasndaki faz farknn 180 olduu andaki frekans deeridir. [7]

ekil 9.4 Faz Paynn bode diyagram zerinde bulunmas ekil 9.4te grlen PM sistemin faz payn ifade etmektedir. PM, genlik deerinin sfr olduu andaki a deerinin, 180 a deeri ile arasndaki farktr. rnek 4 : Transfer fonksiyonu aada verilen sistemin kazan ve faz paylarn bulunuz.

G (s) =

1 s (s + 1)(s + 2)

zm :

>> sys=zpk([],[0 -1 -2],1) Zero/pole/gain: 1 ------------s (s+1) (s+2)

>> [qm,pm,wcg,wcp]=margin(sys) qm = 6.0000 pm = 53.4109 wcg = 1.4142 wcp = 0.4457 Sistemin wcg ve wcp frekanslarndaki gm (kazan pay) ve qm (faz pay) deerlerini gsterir. Ayn sonucun grafiksek olarak bulunmas u ekilde olur. >> margin(sys) Yukarda ki komut satr iletildiinde aadaki grafik oluur.

ekil 9.5 rnek 4teki margin fonksiyonunun grafii

9.2 Nyquist Diyagram

Nyquit diyagram frekans deiimlerine karlk gelen modl ve faz as deiimlerinin erisini verir. The Control System Toolboxta yer alan nyquist fonksiyonu bir frekans cevab fonksiyonu olup, bode fonksiyonunda kullanlan giri argmanlarn kullanr. ki fonksiyon arasndaki fark k argmanlardr. Nyquist fonksiyonu farkl frekans deerleri iin ak dng transfer fonksiyonunun sanal bileenine karlk gelen gerek bileenin erisini izer. Nyquist erisi genellikle kararllk zmlemesi iin kullanlr. Kullanm biimi aada olduu gibidir. [6] nyquist(sys) nyquist(sys,{wmin,wmax}) [re,im]=nyquist(sys,w) sys transfer fonksiyonu, sfr-kutup-kazan ve durum denklemi alan bir sistem. wmin,wmax nyquist iziminin oluturulaca maksimum ve minimum frekans deerleri re frekans cevabn oluturan gerek (real) ksmlar im frekans cevabn oluturan sanal (imajiner) ksmlar
rnek 5 : Aada transfer fonksiyonu verilen sistemin nyquist diyagramn iziniz.

T ( s) =

7( s + 2) ( s 1) 2 (s 2 + 2s + 3)

zm :

>> sys1=zpk(-2,[1 1],7) Zero/pole/gain: 7 (s+2) ------(s-1)^2 >> sys2=tf(1,[1 2 3]) Transfer function: 1 ------------s^2 + 2 s + 3 >> sys=sys1*sys2 Zero/pole/gain: 7 (s+2) ---------------------(s-1)^2 (s^2 + 2s + 3) >> nyquist(sys) >> grid on >> title('Nyquist diyagrami')

Yukardaki komut satrlarnn icras ile ekil 9.6teki grafik izilir. nyquist fonksiyonu sistemin nyquist erisini izer.grid on fonksiyonu grafik penceresinin leklendirilmesi iin kullanlr. title fonksiyonu grafik iin bir balk atamas yapar.
ekil 9.6de grld gibi izimde gerek eksende (-1) deeri (+) iareti ile gsterilmitir. Bu nokta nyquist erilerinin kararllklarn deerlendirmek asndan nemlidir.

ekil 9.6 rnek 5deki nyquist fonksiyonunun izimi rnek 6 : Durum denklemi deikenleri aada verilen sistemin nyquist diyagramn iziniz.

1 1 0 A= , B = 1 , C = [1 0] , D=0 2 1
zm :

>> A=[1 -1;2 1]; >> B=[0 ;1]; >> C=[1 0]; >> D=0; >> sys=ss(A,B,C,D) a= x1 x2 b= x1 1 2 x2 -1 1

x1 x2 c= y1 d=

u1 0 1 x1 10 x2 0

u1 y1 0 Continuous-time model. >> nyquist(sys) Yukardaki komut satrlarnn icras ile ekil 9.7teki grafik izilir.

ekil 9.7 rnek 2deki nyquist fonksiyonunun izimi Argman ilkesi : Bu ilke ile nyquist diyagramna bakarak sistemin kararl olup olmadn syleyebiliriz. Argman ilkesi (9.1) denkleminde ifade edilmektedir. Argman ilkesine gre bir sistem iin Z = 0 (sfr) ise sistem kararldr denir. Z 0 ise sistem kararszdr. [4]

N=Z-P

(9.1)

N : Nyquist diyagramnda (-1)i evreleme says . Saat ynnde evreleme pozitif, tersi olan evreleme negatif alnr ve toplam Nyi verir. Z : Kapal sistemin transfer fonksiyonunun sa yarm kredeki kutuplarnn says P : G(s)H(s)nin ak evrim kutuplarnn says
evreleme : Bir karmak fonksiyon dzleminde eer bir nokta yada blge kapal bir yolun iinde bulunuyorsa o nokta yada blgeye evrelenmi denir.

Kapsama : Kapal bir yol tarafndan evrelenen nokta yada dzlem iin evreleme ynnn solunda kalan blge kapsanm blgedir. rnek 7 : Ak evrim transfer fonksiyonu aada verilen sistemin nyquist diyagramn izin ve kararl olup olmadn bulun.

G( s ) =

s 2 + 10s + 24 s 2 7 s + 12

zm : Z = P + N denklemi yoluyla kararllk test edilecektir. Bunun iin nce sistemin ak evrim transfer fonksiyonunun kutuplar saysna baklr.

>> roots([1 -7 12]) ans = 4 3 Yukarda grld gibi N=2dir. Bundan sonra sistemin nyquist diyagram izilir ve (-1) evreleme saysna baklr. >> sys=tf([1 10 24],[1 -7 12]) Transfer function: s^2 + 10 s + 24 --------------s^2 - 7 s + 12 >> nyquist(sys)

ekil 9.8 rnek 7daki nyquist fonksiyonu grafii

ekil 9.8 de de grld gibi (-1) noktas saatin tersi ynnde iki kere evrelenmitir. Bu yzden N=-2dir.

Z=P+N denkleminden Z=0 olduu grlr. Bu sistemimizin kararl olduunu gstermektedir.


rnek 8 : Yukardaki rnekte sistemimizin kazanc 1 kabul edildiini varsayarsak kazancn 100 deeri iin nyquist diyagramn elde ediniz. zm :

>> nyquist(sys*100)

ekil 9.9 rnek 8deki nyquist fonksiyonu ekil 9.9 de de grld gibi sistemin kazanc arttrldnda sistemin kararll deimemektedir. rnek 9 : Yukardaki rnekte sistemimizin kazanc 1 kabul edildiini varsayarsak kazancn 0.5 deeri iin nyquist diyagramn elde ediniz. zm :

>> nyquist(sys*0.5)

ekil 9.8 rnek 7deki nyquist fonksiyonu

ekil 9.10 rnek 9deki nyquist fonksiyonu grafii ekil 9.10 da da grld gibi sistemin kazanc azaltldnda sistemin kararll deimektedir. 9.3 Nichols Aba

G(jw) Nyquist yer erisinde kutupsal koordinatlarda almann en nemli sakncas, sistemde evrim kazancnn deitirilmesi gibi basit bir ilem yapldnda, erinin ilk zgn biimini korumamasdr. Tasarmda genellikle, evrim kazancn deitirmek gerektii gibi sisteme seri kontrolrlerde eklemek gerekebilir. Bu durumda sistemin nyquist diyagram yeniden izilmelidir. Mr ve BG ile ilgili tasarm ilemlerinde G(jw)nn genlik-faz erisi ile almak kolaylk salar, nk evrim kazanc deitirildiinde tm G(jw) erisi deiiklie uramadan yukar aa kayar. G(jw)nn faz zellii kazantan bamsz deitirildiinde ise genlik-faz yer erisi sadece yatay dorultuda etkilenir. [4] MATLAB da nichols abann izimini salayan fonksiyon nichols dur. Kullanm biimi aada olduu gibidir. nichols(sys) nichols(sys,w) [mag,phase] = nichols(sys,w) mag frekans cevab genlik deerlerinin atand deikendir phase frekans cevab faz deerlerinin atand deikendir
rnek 10 : Transfer fonksiyonu aada verilen sistemin nichols diyagramn iziniz.

T ( s) =

4s 4 + 48s 3 18s 2 + 250s + 600 s 4 + 30s 3 + 282s 2 + 525s + 60

zm :

>> num = [-4 48 -18 250 600]; >> den = [1 30 282 525 60]; >> sys = tf(num,den) Transfer function: -4 s^4 + 48 s^3 - 18 s^2 + 250 s + 600 -------------------------------------s^4 + 30 s^3 + 282 s^2 + 525 s + 60 >> nichols(sys); ngrid Yukardaki komut satrlar iletildiinde ekil 9.11 grafii izilir.

ekil 9.11 rnek 10daki nichols fonksiyonu grafii

BLM 10 10 MATLAB DA PID TASARIMI

Kapal dng denetim sistemi iki blmden olumaktadr. Birincisi denetlenen sistem, ikincisi ise kontrolrdr. R + e Kontrolr u T(s) C

Kontrolrlerde kullanlan belli bal denetim etkileri unlardr; - Orant denetim etkisi (P etki) - ntegral denetim etkisi (I etki) - Trev (Differansiyel) denetim etkisi (D etki) Bu temel denetim etkilerinin bir yada birkann bir arada kullanlmasyla eitli kontrolr sistemleri elde edilebilir. PID kontrolr de bunlardan biridir. Yukarda ki denetim etkisinin birleimiyle oluan kontrolre PID denir. PID kontrol seri bal PI ve PD ksmlarndan oluur. PID kontrolrnn transfer fonksiyonu aadaki ekilde yazlabilir. [4] KP + KI K s2 + KPs + KI + KDs = D s s : Oransal kazan : ntegral kazanc : Trev kazanc (10.1)

KP KI KD

10.1 P, I ve D Kontrolrlerin zellikleri

Tablo 10.1 P, I ve D denetim etkilerinin temel karakteristik zelliklerini iermektedir. Genellikle bu tablo sistemlerde dorulanmakla beraber bazen baz sistemler farkl sonular verebilir, nk Kp, Ki ve Kd bir sistemde birbirlerini etkileyen elementlerdir.
Tablo 10.1 P,I ve D karakteristik zellikleri [6] Kazan Kp Ykselme zaman Azalr Am Artar Yerleim zaman Etkisi az Kalc-durum hatas Azalr

Ki Kd

Azalr Etkisi az

Artar Azalr

Artar Azalr

Kaldrr Etkisi az

rnek 10.1 : Aada verilen sistemi MATLAB ortamnda znz. K sistemin kontrolrdr. [6]

R K
1 s 2 + 10 s + 20

zm :

ncelikle, K=1 iken, yani sistemimizin kontrolr etkisi olmadan nasl bir basamak cevab olduunu grelim >> sys=tf([1],[1 10 20]) Transfer function: 1 --------------s^2 + 10 s + 20 >> step(sys)

ekil 10.1 rnek 1deki sistemin K=1 iin birim basamak cevab ekil 10.1de grld gibi transfer fonksiyonumuzun kazanc 0.05 dir. Bu, girii birim basamak olan bir sistemin kdr. Sistemin kalc hal hatas yaklak 0.95 dir. Ykselme zaman (the rise time) yaklak 1 saniyedir. Yerleme zaman (the settling time) 1.5 saniyedir.

Oransal kontrol (P etki)

Oransal kontrolrn transfer fonksiyonu sabit bir say eklindedir ve Kp ile gsterilir. Oransal kontrol sistemin ykselme zamann azaltr ve kalc durum hatasn azaltr, am arttrr.
rnek 2 : Transfer fonksiyonu yukarda verilen sistemin oransal kontrolr kullanlarak birim basamak cevabn elde ediniz. zm : ncelikle oransal kontrolrle sistem aada olduu gibidir. Oransal kontrolr kazanc Kp=300 alnr. + 1 R Kp=300 C 2
s + 10 s + 20

>> G=tf([1],[1 10 20]); >> Kp=300; >> Gc=G*Kp; >> sys=feedback(Gc,1,-1) Transfer function: 300 ---------------s^2 + 10 s + 320 >> step(sys) Yukardaki komut satrlar icra edildiinde birim basamak cevab ekil 10.2de olduu gibidir. Grafie bakldnda oransal kontrolrn karakteristikleri grlecektir.

ekil 10.2 rnek 2deki sistemin Kp=300 iin birim basamak cevab

ekil 10.2 de grld gibi sistemin kazanc 1.3e ykselmitir. Am artmtr. Bununla birlikte, sistemin ykselme zaman, yerleim zaman ve kalc durum hatas azalmtr. Orant-Trev Kontrol (PD etki)

Trev kontrol hatann trevini alarak bir kontrol sinyali retir. Dolaysyla kalc durum hatas zerinde bir etkisi yoktur, nk sabit bir sinyalin trevi sfrdr. Bu yzden, trev etki kontrolrlerde yalnz bana kullanlmaz dier etkilerle beraber kullanlr. Orant-Trev kontrolrler her iki denetim etkisinin zelliklerini tarlar. Sistemin transfer fonksiyonu (10.2) denkleminde olduu gibidir. ( K P + K D s) (10.2)

rnek 3 : Transfer fonksiyonu rnek 1de verilen sistemin orant-trev kontrolr kullanlarak birim basamak cevabn elde ediniz. zm : ncelikle orant-trev kontrolrle sistem aada olduu gibidir. Oransal kontrolr kazanc Kp=300 ve K D =10 alnr.

+ R ( K P + K D s)
1 s + 10 s + 20
2

Sistemin transfer fonksiyonu aada olduu gibidir.


T ( s) = KP + KDs s + (10 + K D ) s + (20 + K P )
2

Sistemin MATLAB da yazlm ve birim basamak cevab aada olduu gibidir. >> Kp=300; >> Kd=10; >> sys=tf([Kd Kp],[1 (10+Kd) (20+Kp)]) Transfer function: 10 s + 300 ---------------s^2 + 20 s + 320 >> step(sys) Yukardaki komut satrlar icra edildiinde ekil 10.3teki grafik elde edilir.

ekil 10.3 rnek 3deki sistemin Kp=300 ve Kd=10 iin birim basamak cevab Orant-ntegral Kontrolr (PI etki) ntegral kontrolr, hata deeri sabit bir deerde kalmsa bu hatay gidermek zere giderek artan bir kontrol sinyali reterek sistem knn referans deere ulamasn salar. Hata sfr olduunda integral k da sfr olur. [4]

Orant-Trev kontrolrler her iki denetim etkisinin zelliklerini tarlar. Sistemin transfer fonksiyonu (10.3) denkleminde olduu gibidir.

( KI + KP s) s

(10.3)

rnek 4 : Transfer fonksiyonu rnek 1de verilen sistemin orant-integral kontrolr kullanlarak birim basamak cevabn elde ediniz. zm : ncelikle orant-integral kontrolrle sistem aada olduu gibidir. Orant kontrolr kazanc Kp=30 ve K I =10 alnr

+ R -

( KI + KP s) s

1 s + 10 s + 20
2

Sistemin transfer fonksiyonu aada olduu gibidir.

T ( s) =

KI + KPs s + 10 s + ( 20 + K P ) s + K I
3 2

Sistemin MATLAB da yazlm ve birim basamak cevab aada olduu gibidir. >> Kp=30; >> Ki=70; >> sys=tf([Kp Ki],[1 10 (20+Kp) Ki]) Transfer function: 30 s + 70 -----------------------s^3 + 10 s^2 + 50 s + 70 >> step(sys) Yukardaki komut satrlar icra edildiinde ekil 10.4teki grafik elde edilir.

ekil 10.4 rnek 4deki sistemin Kp=30 ve K I =70 iin birim basamak cevab Orant-ntegral-Trev Kontrolr (PID etki)

Orant-ntegral-Trev kontrolrler her denetim tr etkisinin zelliklerini tarlar. Sistemin transfer fonksiyonu (10.1) denkleminde olduu gibidir. [4]
rnek 5 : Transfer fonksiyonu rnek 1de verilen sistemin orant-integral-trev kontrolr kullanlarak birim basamak cevabn elde ediniz. zm : ncelikle orant-integral kontrolrle sistem aada olduu gibidir. Orant kontrolr kazanc Kp=350 , K I =300 ve K D =50 alnr.

KDs2 + KPs + KI s

1 s 2 + 10 s + 20

Sistemin transfer fonksiyonu aada olduu gibidir. KDs2 + KP s + KI T ( s) = 3 s + (10 + K D ) s 2 + (20 + K P )s + K I Sistemin MATLAB da yazlm ve birim basamak cevab aada olduu gibidir. >> Kp=350; >> Ki=300; >> Kd=50; >> sys=tf([Kd Kp Ki],[1 (10+Kd) (20+Kp) Ki]) Transfer function: 50 s^2 + 350 s + 300 -------------------------s^3 + 60 s^2 + 370 s + 300 >> step(sys Yukardaki komut satrlar icra edildiinde ekil 10.5teki grafik elde edilir.

ekil 10.5 rnek 5deki sistemin Kp=350 , K I =300 ve K D =50 iin birim basamak cevab ekil 10.5te grld gibi am ve kalc hal hatas ortadan kalkmtr. Ykselme zaman ise ok kktr.

BLM 11 11 SMULNK'E GR 11.1 Temel Bilgiler

Simulink, MATLAB'n bir uzants olup, blok diyagramlarla dorusal ve dorusal olmayan dinamik sistemlerin simlasyonunda menlerle alan bir grafik arayz kullanr. Bir blok diyagram, genellikle bir giri, sistemin kendisi ve bir ktan ibarettir. Blok diyagramnn grafik gsterimi ekil 11.1de gsterilmitir. [2] giri, x Sistem,y=f(x)
ekil 11.1 Simulinkte blok diyagram gsterimi

k, y

Simulink, kullancnn karmak sistemlerin modellerini zahmetsizce kurmasna ve onlar dorudan bir MATLAB program yazp hatalarn dzeltmek zorunda kalmakszn analizine imkan tanr. Simulink, MATLAB ile birlikte altrlmasna ramen, MATLAB komutlarnn programlarnn veya programlama kurallarnn ok iyi bilinmesini gerektirmez. Simulink daha zelletirilmi bir yazlm olmas nedeniyle MATLAB kadar genel ve gl deildir; fakat dinamik analizin pek ok tipi iin kullanm ok kolaydr ve verimli kullanmak iin de genel olarak ok az bilgisayar ve programlama tecrbesi gerektirir.

ekil 11.2 Simulink ktphaneleri [1] Simulink, sadece MATLAB iinde kullanlabilir. Dolaysyla bir MATLAB oturumu balatldktan sonra, ya alan MATLAB komut penceresinden simulink komutu girilir veya bu pencerenin st ksmnda grlen Simulink Library Browser simgesine tklanarak ulalabilir. Simulink balar balamaz ktphane (library) isimlerini ihtiva eden ekil 11.2'dekine benzer bir pencere alr (sizin farkl/ilave ktphane adlarna sahip olabilmeniz hali hari). Bir ktphane, dinamik modeller yapmak iin kullanlan bloklarn topluluudur.

ekil 11.3 Simulink bloklar ve alt bloklar

Simulink bloklar snflara ve alt snflara ayrlmtr. Alt snflar da baka alt snflara ayrlmaktadr. Bu alt snflan amak ve kullanmak iin bir ktphane adnn nndeki art iaretinin tklanmas gerekir. Simulink ktphanesinin nndeki art iaretine basldnda blok ktphaneleri mensn ieren dier bir pencere alr (ekil 11.3'e baknz). Bu alt snflara tklandnda bir dizi blok adlar kullancya sunulur. Bu bloklar -mesela contunious (srekli zaman)- alt bloklara sahiptirler ve bu alt bloklardan kullanlacaklar bir simulink model ortamna fareyle srklenerek tanabilirler. Yeni bir simulink model ortamnn

almas iin Simulink Library Browser penceresinden File>New>Model seilmesi gerekmektedir. 11.2 Sk Kullanlan Simulink Bloklar [1]
11.2.1 Srekli Zaman Bloklar (Continuous)

: Giri sinyalinin zamana gre trevini alr. : Giri sinyalinin zamana gre integralini alr.

: ok girili ve ok kl dorusal bir sistemin durum uzay modeli

: Dorusal bir sistemin transfer fonksiyonu modeli

: Dorusal bir sistemin sfr-kutup-kazan modeli


11.2.2 Ayrk Zaman Bloklar (Discrete)

: Ayrk zamanl transfer fonksiyonu modeli

: Ayrk zamanl Sfr-kutup-kazan modeli

: Ayrk zamanl durum denklemi modeli


11.2.3 Fonksiyon ve Tablolar (Functions & Tables)

: Bu blok, matematik ifadeler iin fonksiyon oluturmaya yarar, u harfi giri sinyali iin kullanlmaktadr. rnek bir ifade tan(u[l] )*exp(u[2] } olabilir; burada u[l] and u [ 2 ] srasyla birinci ve ikinci giri verileri kmelerini temsil etmektedir.

: Bir MATLAB fonksiyonuna giri deerlerini aktarr. Bu fonksiyon MATLAB'n hazr bir fonksiyonu veya kullanc tarafndan yazlm bir M-fonksiyonu olabilir. : Kullanc tarafndan tanmlanan bir bloktur. S-function, m-file,c,ada

yada fortran dillerinde yazlabilir fakat s-function standartlarnda olmak zorundadr. Kendisine ait drt adet deikeni vardr. stenirse kullanc deiken ekleyebilir. 11.2.4 Matematik Bloklar (Math) : Giri deikeni olan u nun mutlak deerini alr. : Giri deikeninin bykln ve asn hesaplar : Giriin sanal ve gerek ksmlarn ka verir

: Giri vektrlerinin nokta arpmlarn hesaplar : Kazan sabiti. stenilen bir deer atanabilir.

: Ve, Veya, Deil gibi bir dizi mantk ilemlerini gerekletirmek iin kullanlabilen bir blok.

: ...den kk,...e eit veya ...den byk gibi bir dizi iliki ilemlerini uygulamak iin kullanlabilen bir blok.

: Girie uygulanan byklk ve a deikenlerini birletirerek ka verir. : Sanal ve gerek olan iki girii birletirerek ka verir. : exp, sin, sqrt v.s. gibi bir dizi matematik fonksiyonlar icra etmek zere ayarlanabilen bir blok : Girilerin minimumunu yada maksimumunu ka verir.

: Bir arpma veya blme yapmak iin kullanlabilen blok (Blme blenin tersiyle yaplan bir arpma olarak dnlmelidir). : Girii yuvarlamak iin kullanlr. MATLAB da kullanlan drt yuvarlama foksiyonuda kullanlabilir.

: k deeri olarak; Pozitif giri iin l, negatif giri iin -l ve sfr giri iin 0 deerini verir. Bu MATLAB' daki sign(x) fonksiyonuna benzerdir. : alma annda deitirilebilen kazan. : Girilerin toplamn veya farkn veren bir blok. Girilerin says ve her bir girie uygulanacak iaret, blok diyalog kutusunda ayarlanabilir. : Sins ve kosins fonksiyonlar tatbik iin kullanlabilen bir blok
11.2.5 Dorusal Olmayan Bloklar (Nonlinear)

gibi

standart

trigonometrik

: l-band genilii sistemin durumuna gre yaplandrlr : l-band blgesinde giri iin k sfrdr

: alma esnasnda zerine fareyle ift tklanarak konum deitiren anahtar. : Sinyalin alt ve st deerlerini snrlanm haliyle ka verir : Giri sinyallerinin deiimlerini snrlar : 2 nolu giri eikten byk yada eitse 1 nolu giriteki sinyal ka verilir. Dier koullarda 3 nolu giri ka verilir.
11.2.6 Sinyaller ve Sistemler (Signals & Systems)

: Birden fazla bloun tek bir blok iinde toplanmasn salar : Bir hafza blgesi tanmlar

: Data store memory ile tanmlanan hafza blgesinden veri okumak iin kullanlr. : Data store memory ile tanmlanan hafza blgesine veri saklanmas iin kullanlr.

: Bir giri sinyal vektrn sonlu sayda skaler k sinyallerine ayran blok (De-Multiplex iin)

: Sonlu sayda skaler giri sinyallerini bir k sinyali matrisi retecek tarzda birletiren blok (Multiplex iin). : Bir alt-sistem iin giri portu salar : Bir alt-sistem iin k portu salar : Bir alt-sistem ierisinde tetikleme al-sistemi oluturmak iin kullanlr

: Giri sinyalinin geniliini ka verir.


11.2.7 Kuyu Bloklar (Sinks)

Kendisine veri giren ama k olmayan bloklar burada yer alr. : Giri sinyalinin o anki deerini gsterir.

: Skaler veya vektr sinyallerini osiloskoptakine benzer tarzda grafik olarak gsteren bir blok.

: Giri sinyali sfrdan farkl olduunda simlasyonu u durduran blok

: Zaman MAT dosyas olarak saklar : Bir giri sinyalini, MATLAB alma alannda, simlasyon bittikten

sonra, eriilebilir bir MATLAB matrisinde depolayan blok. : ki skaler girii kullanarak bir grafik izdiren blok. stteki giri kapsna balanan sinyal bamsz deiken (x ekseni) ve alttakine balanan ise baml deikendir (y ekseni).
11.2.8 Kaynak Bloklar (Sources)

: Rasgele ses sinyali retir

: Zamana gre artan dorusal bir sinyal retir : Mevcut simlasyon zamanndan ibaret bir sinyal blou.

: Sabit bir saysal deer reten blok. Sabit, bir skaler veya vektr olabilir. : alma alanndan deer okumak iin kullanlr : Simlasyonun alma annda bir MAT dosyasndan zaman ve giri verilerini okur : Ayrk zamanl puls jeneratr

: Srekli zamanl puls jeneratr

: Dzgn artan veya azalan bir sinyal reten blok : Sinyal jeneratr. eitli dalga ekillerini reten blok. : Sinyal retici. Dalga ekillerini reten blok. : Basamak sinyali retir

11.3 Model Kurma

Bir model kurmak ve saklamak iin Simulink'in model penceresinin almas lazmdr. Bu ilem ya MATLAB komut penceresinin st tarafndaki File mensnden New/Model komutunu seerek (ekil 1.1'e baknz) veya Simulink Ktphane Gezgini'nin (Simulink Library Browser) st ksmnda yeni bir model olutur dmesine tklayarak gerekletirilebilir. Bu ilem neticesinde aada ekil 11.4'dekine benzer bir pencere alacaktr. [2]

ekil 11.4 Simulink Model Penceresi

Kurulan modeli saklamak iin yine File mensnden Save veya Save As.. komutu seilebilir ve ona bir isim atanabilir. rnek olarak bu blmde, sins fonksiyonunun grafiini elde etmeye yneliktir model oluturulacaktr. Sins grafiini verecek bir blok diyagramn elde etmek iin baz bloklarn bu model penceresi iine srklenmesi gerekir. Kaynak Bloklar, Matematik Bloklar ve Kuyu Bloklar (Sources, Math and Sinks) srasyla Clock, Trigonometric Function, and Scope bloklarn kullanmaktr. Burada ayn problem iin ayn sonucu verecek bir dizi kombinasyon daha olduunu kaydedelim; fakat bu kullancnn modeli oluturmadaki tercihiyle ilgili bir meseledir. Bir ktphaneden bir blou model penceresine tamak iin evvela, blok, farenin sol dmesiyle iaretlenir ve sonra model penceresine srklenir. Bu, basit bir srkle ve brak ilemidir. Yukarda bahsedilen bloklar, birbiri ardna model penceresine srklendiinde model penceresi aada ekil 11.5'teki gibi grnr.

ekil 11.5 Baz balantsz bloklar ieren bir model

Bloklar birbirine balamak iin her bir bloun kenarlarndaki kk oklar kullanlmaldr. Bir bloun k okuna farenin sol dmesiyle tklanp balant hattnn dier bir bloun giri okuna birleene kadar srklenmesi bu iki blok arasnda bir sinyal transferinin olmasyla neticelenir. Balant yapldktan sonra oklarn grntlerindeki deiiklie ekil 11.6da dikkat ediniz. Bir bloun yeri onu basite farenin sol dmesiyle tutup etrafta gezdirilerek deitirilebilir. Herhangi bir blok veya balant hatt silinmek istenirse nce hatta veya bloa tklanr ve sonra klavyede delete tuuna baslr.

ekil 11.6 Bloklar balandktan sonraki Simulink modeli

11.4 Simlasyonlar altrma

Model bir kez kurulduktan sonra simlasyon model penceresinin st ksmndaki Simulation mensnden Start seilerek balatlabilir. Mevcut modelle hibir ey olmayacakm gibi grnmektedir; zira ekranda ak hibir gsterge yoktur. Ancak, skop (scope) blouna ift tklanrsa sins fonksiyonunun grafiinin izlenebilecei ekil 11.7'dekine benzer kk bir pencere alacaktr.

ekil 11.7 Skope penceresi ekilde grld gibi simlasyon 10 saniye sonra sona ermitir. Bu sre simlasyon durma zaman iin programda seilmi (default) bir sredir, fakat bu sre Simulation mensnden alan Simulation Parameters-parametre penceresi- diyalog kutusuna girilen herhangi bir deerle ayarlanabilir (ekil 11.8). [2]

ekil 11.8 Simulation Parameters diyalog kutusu

BLM 12 12 A-KAPA TP KONTROLRN SMULNKTE MODELLENMES

Otomatik Kontrol Dersi uygulamasnn amac, gnlk hayatta ve endstride kullanlan kontrol sistemlerinin uygulama becerilerinin renciye kazandrlmas olarak zetlenebilir. Dersin ieriinde a-kapa (On-Off) tipi, orant tipi, integral tipi, orant art integral tipi,orant art trev tipi, orant art integral art trev tipi kontrol sistemleri bulunmaktadr. Bu kontrol sistemleri arasda yaygn olarak kullanlanlardan biri a-kapa tipi kontrolrdr. A-kapa tipi kontrolrler belirlenmi olan iki seviyenin altnda veya stnde alrlar. Belirlenmi olan bu iki seviye arlna histerezis denmektedir. Yaptmz almada, histerezis genlii deiimi, kontrolrn giriinde bulunan diren ile kontrol edilmektedir. Elde edilen analitik zm, deneysel olarak incelenmi ve sonuta mspet sonu alnarak, simlasyon hazrlamak amacyla matematik model kartlmtr
12.1 Matematiksel Modelleme

almaya konu olan sistemin nce modeli gelitirilmitir. ekil 12.1deki devre a-kapa tipi kontrolr devresidir. ekilde grld gibi A-kapa tipi kontrolr devresi, referans girii, hata girii, OP-AMP ve direnlerden meydana gelmektedir. A-kapa tipi kontrolrn girik karakteristiinde grlen histerezis pozitif geri besleme ile salanmtr. zerinde allan modelde ama kontrolrn histerezis geniliini Rb direnci ile ayarlamak tr. Bu aamadan sonra istenilen denklemleri kartabilmek iin OP-AMP n alma prensiplerinden faydalanlmtr. [10] +15V R

R 10 k /50% Vref V V+ Vb Rx
10 k

R -15V Ib e Rb
47 k /50%

+12V + -12V I2

Vo

Rf

10k

ekil 12.1 A-kapa tipi kontrolr devresi [10]

OP-AMP n zelliklerinden biri (+) ve (-) giri ularndaki potansiyel fark sfrdr. Giri empedanslar ok yksek olduundan (+) ve (-) giri ularndan akan akm nanoamper seviyesindedir[1].

Aadaki (1) ve (2) eitlikleri OP-AMP n alma prensipleridir.


V + = V = Vb = 0

(1)
10

I = Ib + I2 ; I = V b ;

Ib =

(e Vb ) ; Rb

I2 =

(Vo Vb ) 10

(2)

Eitlik (1)ve (2) yardm ile Vo, (3) eitlii elde edilir.
Vb (e V b ) (V o V b ) = 10 Rb 10

V o = Vb (

2 * R b + 10 10 * e ) Rb Rb

(3)

OP-AMP n kazan eitliinden yola klarak VH bulunur.


n= Rf

Rb [ +V sat ( V sat ) R b ] [1] ; n= VH

(4)
VH = [ +V sat ( V sat ) R b ] n

VH = VH =

[(15V (15V )) Rb ] Rf 30 * Rb Rf (5)

Vb ) ve Rx Rx zerinde gerilim dm olur. VH deerini Vref=0 olduu iin az lde etkiler, Yaklak 0.25 * Rb (6)

Pratikte Vb tam olarak sfr olmaz ve Rx direnci zerinden kk bir akm geer ( I =

Yukarda VH, histerezis genliindeki e ye, yani a-kapa tipi kontrolrn bal hatasna tekabl etmektedir. Modelimizde Rb direncinin deeri belirlenir ve histerezis genilii hesaplanr.
12.2 Deneysel Sonular

Sistemin matematiksel modeli elde edildikten sonra, sistemin istenilen ekilde davrandn ekil 12.1deki dzenein kurulmas ve yaplan deneyler sonucunda etkin bir sonu elde ettiimizi grdk. Marmara niversitesi Otomatik Kontrol Laboratuarnda dzeneimiz kurulmu. Histerezis genilii, iki kanall osilaskop yardm ile elde edilmitir. Osialskobun bir probu Vo kna dier probuda hata giriine alndnda devrenin giri-k karakteristii ekil 12.2de olduu gibi elde edilmitir. Performans iin verimli olan bir Rb deer aral seilerek Rb karlnda ortaya kan histerezis genilii tespit edilmitir. Elde edilen grafiin ekil 12.3 de grld zere dorusall, birok sistemde, istenilen dzeye uygun olduu

grlmektedir. Yaplan deneylerde ekil 12.2deki Rb deerlerinin aasndaki ve yukarsndaki deerler iin sonu alnamamtr.

ekil 12.2 Rb-Histerezis deiimi

12.3 A-Kapa Tipi Kontrolr Simlatr

Sistemin farkl denetim parametreleri altndaki davrann elde edebilmek ve retim ortamnda daha etkin bir ekilde elde edilenleri renciye aktarabilmek iin MATLAB yazlmnn Simulink modeli kullanlmtr. Matematiksel modeli ortaya koyabilmek iin bir s-function hazrlanmtr[4]. S-function hazrlanrken MATLABin m-file programlama dosyalarndan faydalanlmtr [3]. A-kapa tipi Kontrolr Simulink modeli ekil 3te grld gibidir.

ekil 12.3 A-kapa tipi kontrolr simulink modeli

Simulink modelde oluturulan s-function iin kullanlan m-file dosyas aada olduu gibidir. function [sys,x0,str,ts] = On_Off(t,x,u,flag,Rb,InputOn,InputOff)

%Variable block global han global devam %/*start up condition and controlling of devam parameter if t<1 han=((30*Rb/10)-0.25*Rb)/2; end if (u >= han) devam=1; end if (u <= -han) devam=0; end %end of start up condition switch flag, % Initialization % % Initialize the states, sample times, and state ordering strings. case 0 [sys,x0,str,ts]=mdlInitializeSizes(Rb,InputOn,InputOff); % Outputs % % Return the outputs of the S-function block. case 3 sys=mdlOutputs(t,x,u,InputOn,InputOff,devam); case { 1, 2, 4, 9 } sys=[]; % Unexpected error handling otherwise error(['Unhandled flag = ',num2str(flag)]); end % Return the sizes, initial conditions, and sample times for the S-function. function [sys,x0,str,ts] = mdlInitializeSizes(Rb,InputOn,InputOff) sizes = simsizes; sizes.NumContStates = 0; sizes.NumDiscStates = 0; sizes.NumOutputs = -1; sizes.NumInputs = -1; sizes.DirFeedthrough = 1; sizes.NumSampleTimes = 1; sys = simsizes(sizes); str = []; x0 = []; ts = [-1 0]; % end mdlInitializeSizes % mdlOutputs % Return the output vector for the S-function function sys = mdlOutputs(t,x,u,InputOn,InputOff,devam) if (devam==1) sys=InputOn; end if (devam==0)

sys=InputOff; end Elde edilen simlasyonda Laboratuar ortamnda kullandmz Rb deerleri kullanarak modelde elde edilen sonular ekil 12.4de gsterilmitir.

Rb Direnci
ekil 12.4 Matematiksek modelle birlikte Rb-Histerezis deiimi

A-kapa tipi kontrolr simlasyonu, farkl Rb deerleri iin altrldnda ekil 12.5daki sonular elde edilmitir.

a) Rb 1.3 K

b) Rb 4.1 K

c) Rb 5.4 K d) Rb 7.07 K ekil 12.5 a,b,c,d grafikleri farkl Rb deerleri iin , simlasyondan elde edilmitir.
12.4 Sonu Ve Deerlendirme

alma sonucu A-kapa tipi Kontrolr tasarmna farkl bir yaklam kazandrmtr. Kontrolrn histerezis geniliinin kontrolr iinde hata sinyalinin uyguland bir deiken (devre eleman,diren) ile ayarlanmas ve istenilen deere ekilmesi salanmtr. Bu kazanm ile birlikte MATLAB/Simulink ortamnda yaplan simlasyon sunulmutur. Simlasyon farkl deerler iin etkili sonular vermektedir. Bu ekilde devreyi kurmadan, farkl deerler iin, devre analizi yaplabilir. Bununla birlikte, laboratuar uygulamalar ncesi rencilerin almalarna grsel bir eitim imkan salanmaktadr.

KAYNAKLAR [1]. MATLAB Help [2]. Gndodu, mer ve Kopmaz, Osman ve Ceviz, M.Akif, Mhendislik ve Fen Uygulamalaryla MATLAB, Paradigma Akademi, Bursa-2003 [3]. Yksel, brahim, MATLAB ile Mhendislik Sistemlerinin Analizi ve zm, Geniletilmi II. Bask, Vipa A.., Bursa-2000 [4]. C. Kuo, Benjamin , eviren ve uyarlayan : Bir, Atilla, Otomatik Kontrol Sistemleri, Yedinci Bask, Literatr, 1999 [5]. www.mathworks.com internet adresi, 01..25/04/2003 [6]. http://www.mame.mu.oz.au/control/mcg/ctrl301/matlab/ctm/index.html [7]. http://www-personal.engin.umich.edu/~tilbury/tutorials/me461.html [8]. http://teal.gmu.edu/~gbeale/examples_421.html [9]. http://www.math.mtu.edu/math/Content.html [10]. F. Coughlin, Robert ve F. Driscoll, Frederick, Operational Amplifiers & Linear Integrated Circuits, Fourth Edition, Prentice Hall, Englewood Cliffs, NJ

You might also like