MATLAB ve Simulink Kullanımına Giriş



Benzer belgeler
İM 205-İnşaat Mühendisleri için MATLAB. Irfan Turk Fatih Üniversitesi,

MATLAB de GRAFİK İŞLEMLERİ

MATLAB. Temel işlemler, Vektörler, Matrisler DOÇ. DR. ERSAN KABALCI

k ise bir gerçek sayı olsun. Buna göre aşağıdaki işlemler Matlab da yapılabilir.

BİLGİSAYAR PROGRAMLAMA MATLAB

MATLAB Semineri. EM 314 Kontrol Sistemleri 1 GÜMMF Elektrik-Elektronik Müh. Bölümü. 30 Nisan / 1 Mayıs 2007

Ders 1 : MATLAB Programlama Ortamı

BM202 SAYISAL ÇÖZÜMLEME

Grafik Komutları. Grafik Türleri plot: çizgisel grafikler bar: sütun bar şeklindeki grafikler stem: sütun çizgisel grafikler pie: pasta grafikleri

1. GİRİŞ 1.1. GENEL BAKIŞ 1.2. KULLANICI ARAYÜZÜ

Matlab da 2-boyutlu Grafik Çizimi. Arş. Gör. Mehmet Ali ÜSTÜNER

MATLABA GİRİŞ 1. MATLAB. Komut penceresi. MATLAB adı, MATrix LABoratory (Matrix Laboratuarı) kelimelerinden gelir.

MATLAB a GİRİŞ. Doç. Dr. Mehmet İTİK. Karadeniz Teknik Üniversitesi Makine Mühendisliği Bölümü

Bilgisayar Programlama MATLAB

AMASYA ÜNİVERSİTESİ TEKNOLOJİ FAKÜLTESİ Elektrik Elektronik Mühendisliği Bölümü

MATLAB DA SAYISAL ANALİZ DOÇ. DR. ERSAN KABALCI

MatLab. Mustafa Coşar

MATLAB Temelleri. EE-346 Hafta 2 Dr. Ayşe DEMİRHAN

Fen ve Mühendislik Uygulamaları ile MATLAB

MATLAB İLE PROGRAMLAMAYA GİRİŞ. Nedim TUTKUN Elektrik Elektronik Mühendisliği Bölümü

>> 5*3-4+6/2^0 ans = 17 ( Matlab da sayılar arası işlemler [ +, -, /, *, ^ ] bu şekilde ifade edilmektedir.)

MATLAB İLE PROGRAMLAMAYA GİRİŞ. Nedim TUTKUN Elektrik Elektronik Mühendisliği Bölümü

BİLGİSAYAR PROGRAMLAMA DERSİ

BİLGİSAYAR PROGRAMLAMA DERSİ

DENEY 1: Matlab de Temel Uygulamalar

Değişkenler. Geçerli değişken isimleri : baslamazamani, ad_soyad, x5 Geçersiz değişken isimleri : 3x, while

Bilgisayar Programlama

14 Şubat 2011 Pazartesi günü uygulamada çözdüğümüz 2. Soruyu, aynı sıra ile bu defa MATLAB kullanarak çözelim.

NĐĞDE ÜNĐVERSĐTESĐ Elektrik Elektronik Mühendisliği Bölümü. Devre Tasarımı Ders Notları MATLAB. Arş. Gör. Salim ÇINAR. salim çınar

MATLAB DE 2 BOYUTLU GRAFİK TÜRLERİ

KONTROL SİSTEMLERİ-1 LABORATUVARI DENEY -1. Öğr. Gör. Güzin ÖZMEN Arş. Gör. Fehmi SEVİLMİŞ

Bilgisayar Programlama MATLAB

BİLGİSAYAR PROGRAMLAMA DERSİ

Uzaktan Algılama Teknolojileri

2.3. MATRİSLER Matris Tanımlama

Bilgisayar Programlama MATLAB

Algoritmalar ve Programlama. DERS - 4 Yrd. Doç. Dr. Ahmet SERBES

BİLGİSAYAR UYGULAMALARI Şırnak Üniversitesi Mühendislik Fakültesi Güz Dönemi Arş.Gör. Eren DEMİR ve Arş.Gör. Veysel KIŞ (

Bu uygulama saatinde, dinamik sistemlerin simülasyonu (benzetimi) için geliştirilmiş olan, oldukça kullanışlı bir arayüz, Simulink, tanıtılacaktır.

MATLAB ile ANALİZ (MIA)

ÖRNEK: Ax+B=0 şeklinde 1. derece denklemin çözümünü veren programa ait akış diyagramını çiziniz.

Yrd. Doç. Dr. A. Burak İNNER

Fen ve Mühendislik Uygulamalarında MATLAB

Yukarıdaki program çalıştırıldığında aşağıdaki sonucu elde ederiz.

HSancak Nesne Tabanlı Programlama I Ders Notları

GÖRÜNTÜ İŞLEME DERS-2

CONTROL LAB1 MATLAB GİRİŞ

STEM komutu ayrık zamanlı sinyalleri veya fonksiyonları çizmek amacı ile kullanılır. Bu komutun en basit kullanım şekli şöyledir: stem(x,y).

GNUPLOT ÇİZİM PROGRAMI

MATLAB Temelleri. EEM104 - Bilgisayar Programlama. Matlab ın Açılış Ekranı. Dr. Mehmet Siraç Özerdem EEM Dicle Üniversitesi. Launch Pad.

R ile Programlamaya Giriş ve Uygulamalar

MATLAB İLE PROGRAMLAMAYA GİRİŞ. Nedim TUTKUN Elektrik Elektronik Mühendisliği Bölümü

MATLAB MATLAB MAT LAB MAT LAB MATLAB

FONKSİYONLAR. Giriş argümanlarına karşılık gelen çözümü çıkış argümanları olarak sonuçlandırır. Fonksiyondosyalarıkendiçalışmaalanındaki

İşletme Fakültesi Bil. Kullanımı Ders notları 2

plot Nokta grafiği >> X = 0:100; >> Y1 = X +7.9; >> Y2 = (X * 4) -Y1;

diff Türev Alma Fonksiyonu. >> syms x >> A=3*x^4+x^2-3*x A = 3*x^4+x^2-3*x. >> diff(a) // A fonksiyonunun türevini alır. ans = 12*x^3+2*x-3

Fen ve Mühendislik Uygulamaları ile MATLAB

GÖRÜNTÜ İŞLEME MATLAB DERS-2

FORMÜLLER VE FONKSİYONLAR

BİLGİSAYAR PROGRAMLAMA VE FİZİKTE PROGRAMLAMA DERSLERİ İÇİN MATLAB ÇALIŞMA NOTLARI. Mehmet ÖZKAN

SAYISAL ANALİZ. Doç.Dr. Cüneyt BAYILMIŞ. Sayısal Analiz. Doç.Dr. Cüneyt BAYILMIŞ

NAZMİYE DEMİREL ORTAOKULU BİLİŞİM TEKNOLOJİLERİ DERSİ 1. DÖNEM 6. SINIFLAR DERS NOTU EXCEL 2007 DERS NOTLARI

MATLAB

Matematik 1 - Alıştırma 1. i) 2(3x + 5) + 2 = 3(x + 6) 3 j) 8 + 4(2x + 1) = 5(x + 3) + 3

Bölüm: Matlab e Giriş.

MAK1010 MAKİNE MÜHENDİSLİĞİ BİLGİSAYAR UYGULAMALARI

6. ÇİZİM İŞLEMLERİ Boyutlu Eğri Çizimi x ve y vektörleri ayni boyutta ise bu vektörleri ekrana çizdirmek için plot(x,y) komutu kullanılır.

Dersin Sorumlusu: Yrd. Doç. Dr. Birol SOYSAL. Sunumları Hazırlayan: Doç. Dr. Bülent ÇAKMAK

Ders 5 : MATLAB ile Grafik Uygulamaları

Dersin Sorumlusu: Yrd. Doç. Dr. Birol SOYSAL. Sunumları Hazırlayan: Doç. Dr. Bülent ÇAKMAK

İçindekiler. Kaynakça

MATLAB PROGRAMLAMAYA GİRİŞ

Internet Programming II

MATLAB - GİRİŞ NEDEN MATLAB

MATLAB A GİRİŞ. EE-346 Hafta-1 Dr. Ayşe DEMİRHAN

Dersin Sorumlusu: Yrd. Doç. Dr. Birol SOYSAL. Sunumları Hazırlayan: Doç. Dr. Bülent ÇAKMAK

Matlab da Dizi ve Matrisler. Mustafa Coşar

Ekle sekmesindeki Tablolar grubundaki Tablo seçeneği ile tablo oluşturulur.

Şekil 2.23: Window menüsü ve elemanları

HSancak Nesne Tabanlı Programlama I Ders Notları

MATLAB. Grafikler DOÇ. DR. ERSAN KABALCI

1. LabVIEW ile Programlama

BİLGİSAYAR PROGRAMLAMA Araş. Gör. Ahmet ARDAHANLI. Kafkas Üniversitesi Mühendislik Fakültesi

Ders Tanıtım Sunumu. Internet Programming II. Elbistan Meslek Yüksek Okulu Bahar Yarıyılı. Öğr. Gör. Murat KEÇECİOĞLU 1

Uzaktan Eğitim Uygulama ve Araştırma Merkezi

EHM381 ANALOG HABERLEŞME DÖNEM PROJESİ

NACA PROFİL AİLE GEOMETRİSİ HESAP PROGRAMI KULLANMA KILAVUZU

1- Temel MATLAB Fonksiyonları ve Programlama

Ege Üniversitesi Elektrik Elektronik Mühendisliği Bölümü Kontrol Sistemleri II Dersi

MATLAB GRAFİK. Matlab, 2D ve 3D başta olmak üzere çok gelişmiş grafik araçları sunar:

AST415 Astronomide Sayısal Çözümleme - I. 7. Grafik Çizimi

1- Sayı - Tam sayıları ifade etmek için kullanılır. İfade edilen değişkene isim ve değer verilir.

ELEKTRONİK TABLOLAMA Aritmetiksel işlemler ve mantısal karşılaştırmaların yapıldığı programlar elektronik tablolama programlarıdır.

Microsoft Excel. Kısa Yollar. Operasyonlar. Excel hücrelerine veri girişi. Excel hücrelerine veri girişi. Excel 12/23/2014

Değişkenler, içerisinde tek bir değer tutabilen yapılardır. Örneğin haftanın günlerini değişkenlerde tutmak istersek, her bir gün adı için bir

AGSoft Çocuk Gelişim Takip Programı Kullanım Kılavuzu

INPUTBOX KULLANIMI. Komut Düğmesine uygulanan algoritma örneği

M-Dosyaları. Editor: Kodların yazıldığı kısımdır. Uzantısı.m olan dosyalarla çalışır.

a, t, x ve y değişkenlerini sembolik olarak tanımlayalım ve değişken listesinde görelim:

Transkript:

MATLAB ve Simulink Kullanımına Giriş Marmara Üniversitesi Teknoloji Fakültesi Mekatronik Mühendisliği Bölümü Hazırlayan: Arş.Gör. Barış DOĞAN baris@marmara.edu.tr MATLAB Nedir? MATLAB, bilim ve mühendislik alanlarında sayısal hesaplamalar için kullanılan bir yazılımdır. Akademik alanda ve endüstride, dinamik sistemlerin modellenmesi ve simülasyonu (benzetim) için dünya genelinde yaygın olarak kullanılmaktadır. Finansal hesaplamalar için de özel olarak geliştirilmiş araç kutuları vardır. MATLAB ismi İngilizce MATrix LABoratory kelimelerinin bileşiminden oluşmuştur. 2 1

MATLAB Temelleri MATLAB içerisindeki tek veri tipi kompleks-değerli matristir. Vektörler Scalar büyüklükler kompleks-değerli matrisler Gerçel-değerli matrisler Tamsayı-değerli matrisler Değişkenlerin önceden tanımlanma zorunluluğu yoktur. Değişken isimleri bir harf ile başlar ve 31 karakter uzunluğu geçmemek kaydıyla geri kalanı harfler, rakamlar ve altçizgi karakterlerinden oluşabilir. MATLAB, büyük-küçük harf duyarlıklıdır. Bu nedenle a ile A farklı değişkenleri ifade eder. 3 MATLAB Temelleri MATLAB yazılımında hesaplamalar çift-değerlikli (double) olarak yürütülür. * C dilinde: * MATLAB da: int a=10; a=10; int B=20; B=20; int toplam=a+b; toplam=a+b; Değerler ekranda farklı değerliklerde görüntülenebilir. Varsayılan ekran formatı kısa-değerlikli (short) tur. Ekran formatı format komutu kullanılarak değiştirilebilir. 4 2

MATLAB Temelleri MATLAB programı ilk olarak çalıştırıldığında ekranda 4 temel pencere görüntülenir: Komut Geçmişi (Command History) Çalışma Alanı / Hafıza (Workspace) Aktif Klasör (Current Directory) Komut Penceresi (Command Window) 5 MATLAB Temelleri 6 3

MATLAB Temelleri Komut Geçmişi (Command History): Komut Penceresinde, önceden yazılmış ve çalıştırılmış olan komutların listesini tutar. Listelenen komutların üzerine fare ile çift tıklandığında ilgili komut, Komut Penceresi nde anında işletilir. 7 MATLAB Temelleri Çalışma Alanı / Hafıza (Workspace): Programda tanımlanmış olan değişkenler, transfer fonksiyonları, durum denklemleri, matrisler vb. tutulur. İstenilen değişkenin-değerin içeriği üzerine çift tıklanarak görülebilir. Program çalıştığı sürece ve kullanıcı tarafından temizlenmedikçe, bu bölümde tanımlanmış olan değişkenler ve değerleri saklanır. 8 4

MATLAB Temelleri Aktif Klasör (Current Directory): MATLAB programının aktif olan kök klasörünü ve içeriğini görüntüler. Kök klasörde önceden kaydedilmiş çalışmalar bulunur. Kullanıcı tarafından değiştirilmedikçe (işletim sistemine göre değişiklik gösterebilir) MATLAB programının varsayılan kök klasörü: Windows XP için: Belgelerim/MATLAB Windows Vista / 7 / 8 için: Belgeler/MATLAB 9 MATLAB Temelleri Komut Penceresi (Command Window): Komut satırları bu pencereye yazılır. Komut penceresinde >> işareti göründüğünde program işlem yapmaya hazır demektir. >> işaretinden sonra komut yazılıp enter tuşuna basılırsa komut işletilir. Komutlara tekrar ihtiyaç olduğunda her seferinde baştan yazılmalıdır 10 5

MATLAB Temelleri Birden fazla komut veya operatör tek satırda şu şekilde yazılır: virgül (işlem sonucu gösterilir), noktalı-virgül (sonuç gösterilmez). Satır sonuna konularak bir alt satırdan devam edilebilir. Açıklama satırının başına % işareti konur. MATLAB da değişkenler bir kere kullanıldıklarında hafızada (workspace) saklanır. Değişkenler istenildiği zaman adı yazılarak çağrılır. Değişkenin değeri, adı yazıldığı zaman ekranda görüntülenir. 11 MATLAB Temelleri Hafızada bulunan değişkenler clear komutu ile temizlenir.» clear x» clear all Komut penceresi clc komutu ile temizlenir.» clc Yapılan işlemler ve işletilen komutlar neticesinde açılan figure pencereleri close komutu ile kapatılır.» close figure1» close all 12 6

MATLAB Temelleri Herhangi bir komut hakkında yardım alabilmek için komut satırına help konu-komut ifadesi yazılır. MATLAB programından çıkmak için komut satırına: quit; exit; 13 M-dosyası (m-file): MATLAB Temelleri MATLAB programı tarafından oluşturulan ve uzantısı.m olan text tipi dosyalardır. Dosya çalıştırıldığında içerisindeki kodlar sırasıyla işletilir. Dosya içerisinde >> işaretinden sonra satır satır kodlar yazılır. m-dosyası açıkken F5 tuşuna basıldığında önce dosya kaydedilir ve sonra dosya çalıştırılır. m-dosyaları; MATLAB programı içerisinden m-file Editor programı aracılığıyla; Komut Penceresi içerisinden dosya adı yazılarak işletilir. 14 7

Vektörler 7 elemanlı basit bir vektör şu şekilde tanımlanır:» a=[1 2 3 4 5 6 7] Eğer satır sonuna noktalı-virgül konulursa sonuç sadece hafızada (workspace) saklanır ve ekranda görüntülenmez:» a=[1 2 3 4 5 6 7]; a vektörünün tüm elemanlarına tek tek 2 eklemek ve sonucu b adında yeni bir vektörde saklamak için:» b=a+2 b vektörünü sütun şekline çevirmek için transpoze operatörü kullanılır:» b_transpoze=b 15 Vektörler Bir vektörün elemanları belirli bir kurala uygun dizi olarak tanımlanabilir: (başlangıç:son)» dizi1=(1:9) (başlangıç:artış:son)» dizi2=(1:2:9) 1 2 3 4 5 6 7 8 9 1 3 5 7 9 16 8

Polinomlar MATLAB yazılımında polinomlar vektör olarak tanımlanır. Polinomun elemanları derecesi azalan biçimde sıralandığında, katsayıları sırasıyla vektör elemanı olarak girilir. P x = x 5 2x 3 x 2 + 7x 8 >>y=[1 0-2 -1 7-8]; x = 4 teki polinom değerini hesaplamak için: >>deger=polyval(y,4); Polinomun köklerini bulmak için: >>kokler=roots(y); 17 Polinomlar İki polinomun çarpımını (konvolüsyon) bulmak için: >>x=[5 2 1-3]; >>y=[1 0 8]; >>z=conv(x, y); z= 5 2 41 13 8-24 P 1 t = 5t 3 + 2t 2 + t 3, P 2 t = t 2 + 8 İki polinomun bölümünü (dekonvolüsyon) bulmak için (bölme işleminde bölüm ve kalan ayrı olarak elde edilebilir): >>[bolum, kalan]=deconv(z, y); bolum= 5 2 1-3 kalan= 0 0 0 0 0 18 9

Matrisler Matrisler de tıpkı vektörler gibi oluşturulur. Tek fark, her satır sonuna noktalı virgül ; işareti konulur. 3 x 3 biçiminde bir matris oluşturmak için:» A=[1 2 0; 2 5-1; 4-7 143] A matrisinin determinantını hesaplamak için:» deta=det(a) 4 x 4 birim matris oluşturmak için:» birim=eye(4) 19 A matrisinin transpozesi:» B=A Matrisler A ve B matrislerinin çarpım sonucu:» C=A*B Matris çarpımı yerine matrislerin eş elamanlarının çarpımını bulmak için:» D=A.*B A matrisinin tersi:» x=inv(a) 20 10

Matrisler m satır ve n sütunlu, m x n elemanlı bir matris için: zeros(m,n) : Tamamı 0 lardan oluşan bir matris oluşturur.» a=zeros(3,1)» a= 0 0 0 ones(m,n) : Tamamı 1 lerden oluşan bir matris oluşturur.» B=ones(2,4)» B= 1 1 1 1 1 1 1 1 21 Temel İşlemler Örneğin; x=3/4 değeri için aşağıdaki A değerinin sonucu nasıl hesaplanır? 2 x A sin( x) x e x arccos( x) ln( x) x 5x 3 x / 7 2 x log8 lb( x) 5 x 22 11

Temel İşlemler 1. İlk önce x değişkenine değer atanır:» x=3/4 2. x değişkenine atanan değer ekranda görüntülenir:» x= 0.7500 3. x e bağlı matematiksel ifadeler A değişkenine matris biçiminde yazılır:» A=[x^2 exp(-x) abs(x) log10(x)/log10(8); sin(pi*x) acos(x) 5*x-3 log2(x); sqrt(x) log(x) x/7+2 x^(1/5)] 4. A değişkeninin değeri matris biçiminde ekranda görüntülenir:» A = 0.5625 0.4724 0.7500-0.1383 0.7071 0.7227 0.7500-0.4150 0.8660-0.2877 2.1071 0.9441 23 Temel İşlemler diff() komutu ile herhangi bir fonksiyonun türevi alınabilir. Fonksiyon tanımı yapmadan önce syms komutu ile değişkenleri sembol olarak Matlab yazılımına tanıtmak gereklidir.» syms x;» y = sin(5*x);» diff(y) Birden fazla değişkeni bulunan bir fonksiyonun kısmi türevi alınabilir.» syms s t;» f = sin(s * t);» diff(f, t) % δf δt hesaplar.» diff(f, s) % δf δs hesaplar. 24 12

Temel İşlemler Belirli bir değişkene göre bir fonksiyonun ikinci türevi alınabilir.» syms x n;» f = x ^ n;» diff(f, x, 2) % δf δt hesaplar. Örnek uygulama.» syms a b t» f = sin(a*t + b);» diff(f) Sembolik matrikslerin türevi de alınabilir.» syms a x;» A = [cos(a*x),sin(a*x);-sin(a*x),cos(a*x)]» diff(a) 25 Temel İşlemler integral(func, min, max) komutu ile bir fonksiyonun sınırlı integrali hesaplanabilir. Fonksiyon (func) tanımlanırken ilk önce fonksiyon değişkeni tanımlanmalıdır.» @(x) % x değişkeni tanımlanmıştır. f(x) = e x2 (ln x) 2 fonksiyonunun 0 ile sonsuz arası integrali:» f = @(x) exp(-x.^2).*log(x).^2» q = integral(f, 0, Inf) f(x) = 1/(x3 2x c) parametrik fonksiyonun 0 x 2 ve c=5 deki integrali:» fun = @(x,c) 1./(x.^3-2*x-c);» q = integral(@(x)fun(x,5),0,2) 26 13

Temel İşlemler 1 1 (3x 2 + 2x 1)δx integrali:» fx=@(x) 3.*x^2+2.*x-1 % f(x) tanımlanmıştır.» S = integral(fx,-1,1) 27 Çizim MATLAB yazılımı bünyesinde grafiksel çıktı alabilmek için birçok komut vardır. İki boyutlu grafik çizimi için genellikle plot() komutu kullanılır. y bir vektör olmakla birlikte plot(y) komutu; y nin elemanlarının, eleman indislerine bağımlı olarak grafiğini çizer.» y=(1:10:90);» plot(y); figure() komutu çizim için yeni, boş bir sayfa açılmasını sağlar. Her plot() komutu öncesi figure() komutu kullanılmalıdır. 28 14

Çizim Eğer x ve y olmak üzere aynı uzunlukta iki vektör varsa; y nin x e göre grafiğini çizdirmek için plot(x,y) komutu kullanılır.» y=(1:10:90);» x=(1:2:18);» figure, plot(x,y); y 1 ve y 2 vektörlerini zamana (t) göre aynı grafikte çizdirmek için:» t=0:0.01:10; % Zaman 0 dan 10 a kadar 0.01 artar.» y1=sin(t);» y2=cos(t);» figure, plot(t,y1, r-,t,y2, b-- ); % y1 fonksiyonunu düz kırmızı, % y2 fonksiyonunu kesik mavi % renk ile çizer. 29 Çizim title( metin ) komutu çizime ana başlık ekler, xlabel( metin ) x-eksenine, ylabel( metin ) y-eksenine etiket ekler.» close all;» figure, plot(t,y1, r-,t,y2, b-- ), title( y1 ve y2 fonksiyonları çizimi ), ylabel( y1 ve y2 ), xlabel( zaman (sn) ); Dinamik olarak değişen metin eklemek için; title(), xlabel() ve ylabel() komutlarında metin tamamen köşeli parantez [ ] içerisine alınır. Değişken, num2str() komutu ile metin (string) tipine dönüştürülür.» a=3;» title([ Sinyalin, num2str(a), değerine göre çizimi. ]); 30 15

Çizim 3 x 10 aralığında y = 3x 2 12x 12 fonksiyonunun grafiğini 0,2 adım aralığında çizdiriniz. 10 x 10 aralığında y = x 3 x 2 + 4x 8 fonksiyonunun grafiğini 0,1 adım aralığında çizdiriniz. 1 x 1 aralığında y = 1 x aralığında çizdiriniz. fonksiyonunun grafiğini 0,1 adım 10 x 10 aralığında y = log 2 (x + 2) fonksiyonunun grafiğini 0,1 adım aralığında çizdiriniz. 31 Çizim ezplot() komutu herhangi bir f(x), f(x,y), vb. tipteki fonksiyonların, temel 2π < x < 2π, 2π < y < 2π değer aralığında iki boyutlu grafiğini çizer. f(x) = x 2 3x + 8» figure, ezplot( x^2-3*x+8 ) ezplot(fun,[xmin xmax]), ezplot(fun2,[xmin xmax ymin ymax]) argümanları girilerek, fonksiyonun değer aralığı tanımlanabilir:» figure, ezplot( 5*x^3+2*x-17,[-1 1]) 32 16

Çizim 2π x 2π aralığında z = 1 sin πq π 1 2 4 2 π grafiğini adım aralığında çizdiriniz. 360 fonksiyonunun 10 x 10 aralığında y = tan(x π ) fonksiyonunun grafiğini 0,1 2 adım aralığında çizdiriniz. 33 Çizim mesh() komutu üç boyutlu (3D) yüzey grafiği çizmek için kullanılır. mesh(x,y,z,r) argümanları girildiğinde: X,Y,Z: Üç boyutlu grafiği oluşturan tek boyutlu matrisler, R: Çizimde kullanılacak renk aralığını tanımlayan matris. mesh(x,y,z) argümanları ile kullanılırsa, Z eksen matrisi aynı zamanda renk matrisi olarak kullanılır. Renklendirme yüksekliğe bağlı yapılır. mesh(a), üç boyutlu A matrisinin yüksekliğine bağlı renklendirilmiş grafiğini çizer. 34 17

Çizim % sinc() fonksiyonu [sin(x)/x] in mesh yüzeyini çizen demo bir uygulama. close all; clear all; clc; t = -8:.3:8; % Zaman aralığı belirlenir. x = sin(t)./ t; % sinc fonksiyonu: sin(t)/t. figure, plot(x), title('sinc fonksiyonu 2 boyutlu çizimi.'); xx = [x;x;x;x;x;x;x;x;x;x]; % x fonksiyonunun 10 kere tekrar etmesiyle oluşan % üç boyutlu dizi. figure, mesh(xx), title('xx in 3 boyutlu mesh çizimi.'); [X,Y] = meshgrid(t); % Yüzey alanı belirlenir. R = sqrt(x.^2 + Y.^2); % Yüzey vektörü oluşturulur. Z = sin(r)./ R; % sinc fonksiyonu: sin(t)/t. figure, mesh(z), title('sinc fonksiyonu 3 boyutlu çizimi.'); 35 Döngü Kontrolleri for komutu ile belirlenen sayıda tekrar eden döngüler tanımlanır. Yazım şekli: for değişken = başlangıç bitiş koşulları end Komutlar Herhangi bir koşulda break() komutu kullanılarak döngüden çıkılabilir. 36 18

Döngü Kontrolleri % 2 boyutlu Gauss fonksiyonu mesh yüzeyini çizen demo bir uygulama. close all; clear all; clc; A = 1; % Genlik. x0 = 25; y0 = 25; % Merkez koordinatları. sx = pi/2; sy = pi/2; % Taban yayılımları. for x=1:50; for y=1:50; gauss(x,y )= A * exp(-(0.05) * ((x x0)^2 + (y y0)^2)) * cos(x * sx + y * sy); end end figure, mesh(gauss); % 3 boyutlu çizim. figure, imshow(gauss, [0 1.5], 'InitialMagnification','fit'); % 2 boyutlu çizim. colormap(jet); colorbar; 37 Döngü Kontrolleri % 2 boyutlu Gauss fonksiyonu mesh yüzeyini çizen demo bir uygulama. close all; clear all; clc; A = 1; % Genlik. x0 = 25; y0 = 25; % Merkez koordinatları. sx = pi/2; sy = pi/2; % Taban yayılımları. for x=1:50; for y=1:50; gauss(x,y )= A * exp(-(0.05) * ((x x0)^2 + (y y0)^2)) * cos(x * sx + y * sy); end end figure, mesh(gauss); % 3 boyutlu çizim. figure, imshow(gauss, [0 1.5], 'InitialMagnification','fit'); % 2 boyutlu çizim. colormap(jet); colorbar; 38 19

Veri Okuma ve Yazma MATLAB yazılımını kullanarak farklı tipteki dosyaları okuma/yazma işlemleri yapılabilir. Metin dosyası (.txt,.csv, ) Excel dosyası (.xls) Byte, karakter gibi alt seviye veriler (dosya işlemleri) Resim dosyaları (.jpg,.gif,.tiff, ) Ses ve görüntü dosyaları XML dosyaları 39 Veri Okuma ve Yazma Metin dosyaları için: A=textread() 40 20

MATLAB ve Simulink Kullanımına Giriş TEŞEKKÜRLER Marmara Üniversitesi Teknik Eğitim Fakültesi Mekatronik Eğitimi Bölümü Hazırlayan: Arş.Gör. Barış DOĞAN baris@marmara.edu.tr 21