• Sonuç bulunamadı

MATLAB/SIMULINK E BAŞLANGIÇ

N/A
N/A
Protected

Academic year: 2022

Share "MATLAB/SIMULINK E BAŞLANGIÇ"

Copied!
28
0
0

Yükleniyor.... (view fulltext now)

Tam metin

(1)

 

   

MATLAB/SIMULINK’E  BAŞLANGIÇ 

Hazırlayan: 

YUSUF ONUR KOÇBERBER    Yokocbeber(at)etu‐edu‐tr   

TOBB EKONOMİ VE TEKNOLOJİ ÜNİVERSİTESİ ELEKTRİK VE ELEKTRONİK MÜHENDİSLİĞİ

01.01.2008 v1.

25.02.2009 v2.

(2)

   

İçindekiler 

Matlab’a Başlangıç ... 3 

Vektörler ... 4 

Matrisler ... 6 

Çizgeler ... 9 

Polinomlar ... 12 

Transfer Fonksiyonu ve Durum Uzayı Gösterimi ... 14 

Analiz ... 17 

Simulink ... 20   

 

                             

(3)

Matlab’a Başlangıç  langıç 

        

Yeni M‐File  Simulink  Workspace  Çalışma Klasörü 

  Command Window 

Komut Geçmişi 

Kılavuz  boyunca  sık  kullanılacak  Matlab  elemanları  yukarıda  işaretlenmiştir.  Çalışma  klasörü  olarak  belirtilen  “Current  Directory”  aksi  belirtilmedikçe  yapılan  tüm  çalışmaların  kaydedildiği  klasördür. 

Birbirine  bağlı  m‐dosyaları  çalıştırılacaksa  tüm  dosyaların  bu  klasörde  olması  gerekmektedir  aksi  takdirde m‐dosyası içinde dosyanın bilgisayardaki konumu tam olarak belirtilmelidir. 

Çalışmalar sırasında yararlı bir kaç komut: 

• clc: Command window’u temizlemektedir. 

• whos:  Workspace’deki  değişkenlerle  ilgili  bilgileri  göstermektedir  (özellikle  iki  değişkenin  boyutu uyuşmadığında kontrol etmek amacıyla kullanılır) 

• clear Değişkenİsmi: İlgili değişkeni workspace’den siler. 

• help Fonksiyonİsmi: İlgili fonksiyon hakkında özet bir yardım gösterir. 

• syms Değişkenİsmi: ilgili değeri değişken yapar (türev , integral gibi sembollerin kullanıldığı  işlemler için). 

   

   

(4)

Vektörler 

Vektörler 1xn boyutlu matrislerdir. Bir vektör tanımlamak için: 

 “Command Window” ’a   

>> a = [1 2 3 4 5 6 9 8 7] komutunu giriniz. Böylece aşağıdaki sonuç elde edilir. 

 

Görüldüğü  üzere  a  değeri  “Workspace”  penceresinde  yerini  almıştır.  Bu  pencereden  işlemler  sırasında  kullanılan  tüm  parametreler  ve  onlarla  ilgili  çeşitli  bilgiler  (boyutu,  en  büyük  değeri  ,  en  küçük değeri , boyu vs.) görülebilir. 

Benzer şekilde 0 ile 100 arasında eşit dağılmış 5 elemanlı bir vektör yaratmak için 

>> a=0:20:100 Sonuç: 

a =

0 20 40 60 80 100

a=0:20:100 gösterimi 0’dan başlayarak 100’e kadar her adımda bir sonraki elemana 20 eklemektedir. 

a vektörünün ilk elemanına ulaşmak istenildiğinde a(1)  komutu kullanılmaktadır. 

>> a(1) ans = 0

Not:  Çoğu  programlama  dillerinin  aksine  MATLAB  dizilerin  ilk  elemanını  0  değil  1  olarak  indekslemektedir. Bu sebepten dolayı ilk elemana ulaşmak için a(1) komutu kullanılmıştır. 

           

(5)

Çarpım 

A vektörünü ile birlikte ikinci bir b vektörü yaratalım. 

>> b= a - 5 b =

-5 15 35 55 75 95

 A  ile b vektörünü çarpıp  c adlı yeni bir matrise atamak istiyoruz. Bu durumda “c= a * b “ komutunu  kullanırsak; 

>> c= a * b

??? Error using ==> mtimes

Inner matrix dimensions must agree.

Yukarıdaki  hata ile karşılaşılır. Bunun nedeni “*” işleci matris çarpımı yapmaktadır yani iki tane 1xn  boyutundaki matrisi çarpmak mümkün değildir. Burada vektör çarpımı yapılması gerekmektedir.  

Vektör Çarpımı işleci “ .* “ şeklindedir.  

>> c= a .* b c =

0 300 1400 3300 6000 9500

Görüldüğü üzere a ve b vektörlerinde konum itibariyle karşılıklı elemanlar birbirleriyle çarpılmıştır. 

Not: Benzer şekilde kuvvet işleçi de  (^)  vektör işlemleri için .^  şeklinde  kullanılmalıdır. 

                     

(6)

Matrisler 

Matrisin tanımlanması: 

Matrisler  tanımlanırken  değişik  yollar  bulunmaktadır.  En  genel  yol  yeni  bir  satır  için  “;” 

kullanılmasıdır.  

>> a=[1 2 ; 3 4]

a =

1 2 3 4  

Bir başka yol ise:  

>> b = [ 1 2 3 4 ] b =

1 2 3 4

Matris değerleri girilirken workspace’deki değer isimleri veya sanal sayılar kullanılabilir. Sanal sayılar  için “i”  veya “j” kullanılabilir. 

Not: Eğer i veya j değişkenine daha önce başka değer atamışsanız bu değişkeni sqrt(‐1)’e eşitlemeniz  yeterlidir. 

Matrisin Transpozu 

Daha önceden tanımlanan b matrisinin transpozunu almak için ; 

>> b' ans =

1 3 2 4

(7)

Matrisin Tersi 

Daha önceden tanımlanan b matrisinin tersini almak için ; 

>> inv(b) ans =

-2.0000 1.0000 1.5000 -0.5000  Matrisin Özdeğeri 

Daha önceden tanımlanan b matrisinin özdeğerlerini bulmak için ; 

>> eig(b) ans = -0.3723 5.3723

Vektör  veya  matris  tanımlarken,  kolaylık  amacıyla  tüm  elemanları  0  tanımlamak  için  “zeros”    ,  tüm  elemanları  1  tanımlamak için ” ones”  , tüm elemanları rastgele sayılardan oluşturmak için “rand”  

fonkisyonu kullanılabilir. 

>> zeros (5,1) ans =

0 0 0 0 0

Dizilere uygulanan fonkisyonlar 

length(a): a dizisinin eleman sayısı yani uzunluğu 

size(a): a dizisinin boyutu 

sum(a):  a  matrisinin  sütun  başına  eleman  toplamı  (eğer  sadece  sütün  veya  satır  matrisiyse  tüm elemanların toplamını verir) 

kd(n): kd dizisinin n. eleman değeri   

A(n,:): A matrisinin sadece n. satırı   

A(:,n): A matrisinin sadece n. sütunu 

(8)

 

A‘: A matrisinin transpozu yani devriği 

det(A): A matrisinin determinantı 

inv(A) : A matrisinin tersi 

diag(A): A matrisinin ana diagonel (çapraz) elemanları 

[v,d]=eig(A): A matrisinin özvektörleri ve özdeğerleri  

Elemanter işlemler:  Eleman eleman işlem demektir ve  . (nokta)  işleci kullanılır:  

  Çarpma: .*   , Bölme: ./   , Üs alma: .^ 

 

                               

(9)

Çizgeler 

Matlab’daki en önemli fonksiyonlardan biri “plot”  fonksiyonudur.  

Plot(x,y) şeklinde belirtilen bu komutta x değerleri çizgenin yatay eksenine, y değerleri çizgenin düşey  eksenine çizilecektir. Örneğin;  

>> t=0:0.1:5 şeklinde zaman değerlerimizi belirleyelim, 

>> y=sin(2*pi*t) 

>>plot (t,y)  

 

Bu  noktadan  sonraki  komutları  m  dosyasına  yazmak  daha  yararlı  olacaktır  çünkü  bir  çok  komutu  arkaya tek satırlık komut penceresine yazmak zaman kaybettirmektedir. 

Yeni bir m dosyası açmak için File>New>M‐File   Gelen editörün içine yeni değerleri tanımlayınız :  t=0:0.1:10;

y= 2.^(10-t);

plot (t,y,'r:') title ('çizge 1') xlabel (' x ekseni') ylabel ('y ekseni')

Dosyayı kaydedip Debug>Run dosyaismi veya kısayol olarak F5 tuşuna basınız . 

(10)

 

Örnekte  görüldüğü  üzere  plot  fonksiyonuna  eklenen  ‘r:’  terimi  grafiği  kırmızı  ve  noktalı  yapmıştır. 

Başka  renkler  için  “g  ,b,c,m,y,k,w”    gibi  belirteçleri  ,  değişik  şekiller  için  “.  ,  o  ,  x,  ^,  +  ,  *  ‐.  ,  ‐‐“ 

belirteçleri  deneyebilirsiniz.  Örneğin    “  g  ‐‐  “  grafiği  yeşil  ve  çizgili    “  b*”  mavi  ve  yıldızlı  göstermektedir. 

Xlabel ve Ylabel fonksiyonları ile x ve y eksenine  ‘eksen ismi’  formatında istenilen isimler verilebilir. 

Aynı m‐dosyasının en sonuna  “ axis tight”  komutunu ekleyip m dosyasını tekrar çalıştırınız. 

Görüldüğü üzere grafiğin eksenleri çizdirilen fonksiyonun minimum ve maksimum değerlerine göre  ayarlanmıştır. “Axis” komutu grafiklerin daha anlaşılır olması için önemli bir araçtır ve her zaman  plot’tan sonra kullanılır.  Bu komutun bir diğer kullanımı ise  “ axis([xmin, xmax, ymin, ymax]) “  şeklindedir. Bu sayede görmek istediğimiz grafiğin eksenlerinin en küçük ve en büyük değerleri  ayarlanabilir. 

Birden Çok Grafiği Yönetmek 

Birden fazla grafiği (aynı x‐ekseni baz olmak üzere) üst üste çizmek için; 

  Örneğin: x,y1,y2,….yn için; 

    1.yol: plot(x,y1,x,y2,..x,yn) 

    2.yol: plot(x,y1), hold on, plot(x,y2,..x,yn) 

• Çoklu grafiği etiketlemek için: 

    1.yol: Grafik üzerinde metin ekleme yapılır. 

    2.yol: legend(‘1.grafikmetin’,’2.grafikmetin’….) fonksiyonu kullanılır. 

• Birden fazla grafiği farklı pencerelerde (aynı veya farklı x‐ekseni baz olmak üzere) çizmek için  

    subplot(m,n,p) 

  fonksiyonu kullanılır. Bu fonksiyon matris düzeninde çizim alanı açar ve grafikler yine plot  fonksiyonu ile çizilir. 

(11)

Örnek: Hold on komutu ile grafiklerin üst üste çizilmesi  t = 0:0.01:1;

x= 0:0.1:10;

y = x.^(t);

plot(t,y,'b:') hold on

z = sin(2*pi*t);

plot(t,z,'r+') w = y.*z;

plot(t,w,'g--')

legend('x^{t}','sin(2*\pi*t)','x^{t}sin(2*\pi*t)') axis tight

grid on  

   

Örnek: Aynı grafiklerin subplot komutu ile ayrı ayrı pencerelerde çizilmesi; 

subplot (3,1,1) t = 0:0.01:1;

x= 0:0.1:10;

y = x.^(t);

plot(t,y,'b:') title ('x^{t}') legend('x^{t}') grid on

subplot (3,1,2) z = sin(2*pi*t);

plot(t,z,'r+')

legend ('sin(2*\pi*t)') title ('sin(2*\pi*t)') grid on

(12)

subplot (3,1,3) w = y.*z;

plot(t,w,'g--')

legend('x^{t}sin(2*\pi*t)') title ('x^{t}sin(2*\pi*t)') grid on

 

 

   

 

Polinomlar 

 

Matlab polinomları  bir vektör ile tanımlar. Örnek olarak ; 

3s

4

+6s

3

‐3s

2

+10s+1 

Polinomu aşağıdaki vektör ile  tanımlanır. 

>> A=[ 3 6 -3 10 1]

A =

3 6 -3 10 1

Eğer arada eksik katsayılar varsa bu katsayılar 0 ile gösterilir. Örnek olarak; 

7s

4

+10 

>> A=[7 0 0 0 10]

A =

7 0 0 0 10

(13)

Polinomun  değerini  bulmak  için  “polyval”  fonksiyonu  kullanılabilir.  Örneğin  a=[7  0  0  0  10] 

polinomunun s=3’teki değerini bulmak için ;  

>> polyval([7 0 0 0 10] ,3) ans =

577

Aynı yöntemi kullanarak polinom çizdirilebilir. 

Örnek: 

t=-5:0.1:3

A=[1 2 -10 -7 4]

plot(t,polyval(A,t))

-5 -4 -3 -2 -1 0 1 2 3

-50 0 50 100 150 200

Görüldüğü üzere grafik y=0 eksenini 4 kere kesmektedir. Köklerin tam yeri “roots” komutu ile tespit  edilebilir. 

>> roots (A) ans =

-4.0000 2.6180 -1.0000 0.3820  

(14)

Transfer Fonksiyonu ve Durum Uzayı Gösterimi 

 

 

Transfer fonksiyonunu belirtmek için öncelikle pay ve paydayı tanımlamak gerekmektedir. Bunun için  

>> num=[1]

num = 1

>> den=[1 14 56 160]

den =

1 14 56 160

>> tf(num,den) Transfer function:

1

--- s^3 + 14 s^2 + 56 s + 160

Aynı şekilde bu transfer fonksiyonun durum uzayı gösterimlerinden biri aşağıdaki gibidir. 

 

y=   

Bu gösterimi Matlab’a aktarmak için  ss(a,b,c,d) şeklinde bir gösterim kullanılmalıdır. 

>> a=[0 1 0 ; 0 0 1; -160 -56 -14]

a =

0 1 0 0 0 1 -160 -56 -14

>> b=[0 ;1 ; -14 ]

>> c=[1 0 0 ]

>> d=[0]

a,b,c,d matrisleri tanımlandıktan sonra “ss” komutu ile gösterim tamamlanır. 

(15)

>> ss(a,b,c,d) a =

x1 x2 x3 x1 0 1 0 x2 0 0 1 x3 -160 -56 -14 b =

u1 x1 0 x2 1 x3 -14 c =

x1 x2 x3 y1 1 0 0 d =

u1 y1 0

Transfer fonksiyonundan durum uzayı gösterimi veya durum uzayı gösteriminden transfer fonksiyonu  elde edilebilir. Daha önceki örnekte transfer fonksiyonu “num “ ve “den”   isimleri ile tanımlanmıştı. 

Durum uzayı gösterimini A,B,C,D matrislerine aktarmak için ; 

>> [A,B,C,D]=tf2ss(num,den)

A =

-14 -56 -160

1 0 0

0 1 0 B =

1 0

0

C =

0 0 1

D =

0

(16)

Aynı  şekilde  durum  uzayı  gösteriminden  transfer  fonksiyonu  çıkarılabilir.  Bunun  için  ss2tf  komutu  kullanılır. Yukarıdaki örneklerde kullandığımız a,b,c,d matrislerini kullanırsak;  

>> [pay,payda]=ss2tf(a,b,c,d)

pay =

0 0.0000 1.0000 0.0000

payda =

1.0000 14.0000 56.0000 160.0000

                                     

(17)

Analiz 

Elde edilen gösterimleri analiz etmek için  

• Bode çizgesi 

• Adım cevabı 

• Dürtü cevabı 

• Kutuplar ve sıfırlar   bulunabilir. 

Daha önceden elde ettiğimiz pay ve payda değişkenlerini “ sistemin_transfer_fonksiyonu ” isimli bir  değişkene atayalım. 

>> sistemin_transfer_fonksiyonu=tf(num,den) 

Transfer function:

1

--- s^3 + 14 s^2 + 56 s + 160

Bode çizgesi için; 

>>bode(sistemin_transfer_fonksiyonu) 

Bode Diagram

Frequency (rad/sec)

10-1 100 101 102

-270 -180 -90 0

Phase (deg)

-120 -100 -80 -60 -40

Magnitude (dB)

   

Grafikte istenilen noktalara tıklanarak ilgili değerler alınabilir. 

   

(18)

Adım cevabı için ; 

>>step(sistemin_transfer_fonksiyonu)

0 0.5 1 1.5 2 2.5 3

0 1 2 3 4 5 6 7

8x 10-3 Step Response

Time (sec)

Amplitude

Yüzde  aşım  ,  yükselme  zamanı,tepe  değeri  gibi  değerler  grafikte  ilgili  yerlere  tıklanarak  ölçülebilir  fakat 2007 ve sonrası sürümlerde stepinfo komutu bulunmaktadır. 

>> stepinfo(sistemin_transfer_fonksiyonu) ans =

RiseTime: 0.4526 SettlingTime: 2.0948 SettlingMin: 0.0060 SettlingMax: 0.0072 Overshoot: 14.7300 Undershoot: 0

Peak: 0.0072 PeakTime: 1.0067

     

(19)

Dürtü cevabı için; 

>> impulse(sistemin_transfer_fonksiyonu)

0 0.5 1 1.5 2 2.5 3 3.5

-4 -2 0 2 4 6 8 10 12

14x 10-3 Impulse Response

Time (sec)

Amplitude

Sistemin kutupları pole komutu ile bulunur. 

>> pole(sistemin_transfer_fonksiyonu) ans =

-10.0000 -2.0000 + 3.4641i -2.0000 - 3.4641i

Sistemin sıfırları tzero komutu ile bulunur. 

>> tzero(sistemin_transfer_fonksiyonu) ans =

Empty matrix: 0-by-1

Bu örnekte sistemin sıfırı olmadığından boş matris çıkmıştır. 

     

(20)

Simulink 

 

Simulink  modelleme  ve  benzetim  için  geliştirilmiş  grafiksel  ara  yüze  sahip  bir  Matlab  uzantısıdır.Simulinkte  sistemler  ekran  üzerine  blok  diyagramlar  halinde  çizilmektedir.Transfer  fonksiyonu  blokları,    toplayıcılar  gibi  blokların  dışında  osiloskop  ,    fonksiyon  üreteci      gibi  sanal  giriş/çıkış  cihazları  da  bulunmaktadır.  Simulink  ,  Matlab  içinde  çalışan  bir  program  olduğundan  iki  program arasında rahatlıkla veri transferi yapılabilir. 

Bu kılavuzda her bloğun tek tek tanıtılmasından ziyade örnekler üzerinden gidilecektir. 

Programın başlatılması; 

Matlab içerisinde command window’a  simulink yazılmalıdır. 

>>simulink

“Simulink  Library  Browser”  penceresi  açıldıktan  sonra    File>New>Model  seçilerek  blokların  ekleneceği boş ekran elde edilir.  

 

Simulink  Library  Browser  penceresinden  bloklar  sürükle  bırak  şeklinde  açılan  boş  model  sayfasına  eklenmelidir. 

   

(21)

Örnek 1: 

Öncelikle  

• Simulink>sources kütüphanesinden “step” bloğunu  

• Simulink>continuous kütüphanesinden “derivative”  bloğunu 

• Simulink>math Operations kütüphanesinden “add” ve “gain” bloğunu 

• Simulink>commonly  used  blocks  kütüphanesinden  “scope”    bloğunu  tasarım  ekranına  ekleyiniz. 

Blokların  girişlerinden  farenin  tuşuna  basılı  tutarak  sonraki  bloğun  girişine  gittiğiniz  takdirde  bloklar bağlanır fakat kısa yol olarak ilk bloğu seçtikten sonra ctrl tuşuna basılı tutarak hedef blok  üzerine tıklandığı takdirde bloklar kendiliğinden bağlanır. 

Scope bloğu üzerine iki tıklayarak, parameters sekmesinden,  Scope Parametreleri 

 

 

3 farklı veriyi aynı anda gözlemek amacıyla, “number of axes” alanını 3 yapınız. 

 

Bloklar bağlanıldığında aşağıdaki şekildeki gibi bir görüntü oluşması gerekmektedir. 

   

(22)

Simülasyon ayarlarını yapmak için , Simulation > Configuration Parameters penceresini açınız.   

 

Sistemi sabit adım ile çözmek için gelen pencereden, “Solver options‐Type” seçeneğini “Fixed‐Step” 

olarak seçiniz. “Fixed‐step size” olarak sırasıyla ”1” , “0.01” ve “auto” değerleri kullanılacaktır. 

 

Şekilde görülen “Simulation Stop Time” alanına benzetimin kaç saniye süreceği girilmelidir. 

 

Simülasyon süresini 2 olarak girdikten sonra şekilde görülen “start simulation” tuşuna tıklayarak veya  kısayol olarak “ctrl+t” ile benzetimi başlatınız.   

               

    Adım aralığı : 1      Adım aralığı : 0.01    Adım aralığı : auto   

 

(23)

Örnek 2: 

Öncelikle  

• Simulink>sources kütüphanesinden “step” bloğunu  

• Simulink>continuous kütüphanesinden “transfer fcn” bloğunu 

• Simulink>commonly  used  blocks  kütüphanesinden  “scope”    bloğunu  tasarım  ekranına  ekleyiniz. 

  Adım cevabı bulunacak transfer fonksiyonu aşağıdaki gibidir 

 

Transfer Fcn  bloğunun değerlerini değiştirmek için üzerine iki tıklayınız , “numerator coefficient” ve 

“denominator  coefficient”  alanları  ile  sırasıyla  pay  ve  paydanın  değerleri  vektör  şeklinde  tanımlanmaktadır. 

 

 

(24)

Scope bloğuna iki kere tıklayarak sonucu görüntüleyiniz. Sonucun tam olarak görüntülenmesi için  şekilde görülen autoscale butonuna tıklayınız. 

   

Örnek 3: PID  ve Subsystem Oluşturma  Öncelikle şekilde görülen blok şemayı kurunuz. 

 

Kazançların  değerlerini  P  terimi  için  Kp,  I  terimi  için  Ki  ve  D  terimi  için  Kd  şeklinde  değiştirildiğine  dikkat ediniz. 

Daha  sonra  şema  üzerindeki  tüm  elemanları  seçtikten  sonra  sağ  tıklayıp  “create  subsystem” 

seçeneğini seçiniz. 

(25)

   

Subsystem haline dönüşen  blok üzerine tekrar sağ tıklayarak “mask subsystem” seçeneğini seçiniz. 

Gelen pencerenin “Parameters” sekmesinden Add butonu ile yeni parametreler ekleyiniz. “Variable” 

alanına daha önce ismi değiştirilen blokların ismini girmeniz gerekmektedir. Aksi takdirde ilgili bloğun  değerine dışarıdan erişilemeyecektir. 

 

         

Elde edilen “subsystem” adlı bloğun ismini “PID” olarak değiştiriniz ve aşağıdaki blok şemayı kurunuz. 

Add Butonu 

(26)

 

PID  bloğuna  tıkladığınızda  Kp  ,  Kd  ve  Ki  değerlerini  girebildiğinizi  göreceksiniz.Farklı  Kp,  Kd,  Ki  değerleri ile bu terimlerin sisteme etkisini gözleyebilirsiniz. 

Scope  bloğundan  çıkan  grafiğin  yükselme  zamanı,  yüzde  aşımı  gibi  değerleri  “zoom  to  y‐axis” 

yakınlaştırma  butonları  ile  ölçebileceğiniz  gibi  grafiğin  değerlerini  Matlab’ın  “workspace”  bölümüne  göndererek daha önce anlatılan stepinfo komutunu kullanabilirsiniz. 

 

  Scope Parametreleri  Yakınlaştırma butonları

 

Grafik  verisini  “workspace”  alanına  aktarmak  için  şekilde  gösterildiği  gibi  “scope  parameters” 

butonuna  tıklayıp  “data  history”  sekmesini  seçmek  gerekmektedir.”Save  data  to  workspace”  

seçeneği  işaretlenerek  gönderilecek  olan  verinin  “workspace”de  hangi  değişken  ismi  ile  tanımlanacağını  belirtmek  gerekir  bu  isim  varsayılan  şekilde  “ScopeData”  olarak  belirlenmiştir. 

Format  kısmından  “Array”  seçilerek  değişkenin  nx2’lik  bir  matris  şeklinde  belirtilmesi  sağlanmalıdır. 

Bu  değişkenin  n  uzunluğundaki  satır  kısmı  benzetim  uzunluğu  ile  doğru  orantılıdır.  1.kolonu  zaman  değerleri  yani  x  ekseni,  2.kolonu  ise  bu  zaman  karşılığında  alınan  değerleri  belirtmektedir  yani  y  eksenidir.  Stepinfo(Y  ekseni,X  ekseni)  şeklinde  kullandığından  doğru  sonuç  almak  için  aşağıdaki  şekilde kullanılmalıdır. 

 

(27)

>> stepinfo(ScopeData(:,2),ScopeData(:,1)) ans =

RiseTime: 0.6484 SettlingTime: 3.1281 SettlingMin: 0.9185 SettlingMax: 1.0682 Overshoot: 6.8172 Undershoot: 0 Peak: 1.0682 PeakTime: 1.5505

 

Örnek 4: 

Aşağıdaki  blok şemayı kurunuz. 

 

Daha  önceki  örnekte  olduğu  gibi  “scope  parameters”  penceresine  gidilerek  “axes”  alanı  3  yapılmalıdır.  Bu  sayede    scope  penceresi  3’e  bölünecektir.  Eğer  grafikleri  üst  üste  çizdirmek  istiyorsanız “mux” elemanını kullanabilirsiniz.  

Tellerin  üzerine  çift  tıklayarak  isimlendirebilirsiniz,  bu  sayede  “scope”  ekranındaki  grafikleri  tespit  etmek daha kolay olmaktadır.  

“Simulation  time”  alanını  20  yaparak  benzetimi  başlatınız.  Görüldüğü  üzere  scope  ekranı  3  farklı  pencereye bölünmüş ve hepsinin başlığı bulunmaktadır. 

(28)

 

Referanslar

Benzer Belgeler

Şekil 6.7.’de gösterilen giriş sinyali uygulandığında sistemin ilk olarak MIT kuralı ile tasarlanmış ve MRAC kontrolcüsüyle kontrol işleminin farklı maliyet

Bu tezde çalışılacak olan üç seviyeli nötr noktası kenetlenmiş (NNK - NPC) doğrultucu DA forma daha yakın çıkış gerilimi, az harmonik içeren sinüsodal üç faz

 Reduce the number of blocks display on the main window (i.e. simplify the model).  Group related blocks together (i.e. More

 İçinde birçok alt sistemi blok olarak barındırdığından sürükle-bırak yöntemiyle birçok sistemi bir-kaç dakikada kurarak simule edebilir, değişik durumlardaki

Şekil 7’deki peş peşe bağlı revize edilmiş akson model bloğu göz önüne alınarak, sistemin Simulink modeli Şekil 12’de görüldüğü gibi oluşturulmuştur..

Karışımlarda kırma kireçtaşı ve ponza agregası, CEM I tipi çimento, (filler malzeme olarak) olivin tozu, hava sürükleyici ve super akış- kanlaştırıcı kimyasal

Her tarlayı sular arkımız bizim Gideriz Nur Yolu izde gideriz Taş bağırda sular dizde gideriz Birgün akşam olur, biz de gideriz Kalır dudaklarda şarkımız bizim” Allah’ın

Yine bir gün seni, Kadıköy’de kurulan «Tramvay Müzesi» ne rica etmişlerdi, çok beğenmişdin, veda edeceğimiz zaman bizi «Pendik» e balık yemeğe davet