SİMULİNK

dinamik sistemlerin modellenmesi, simülasyonu ve analizi için kullanılan bir yazılım paketidir. Son yıllarda akademik ve endüstriyel ortamlarda yaygın biçimde kullanılmaktadır. Simulink,

gibi birçok elektrik, elektronik, finans, mekanik ve termodinamik gerçek dünya sistemini simüle edebilir. Bir MATLAB arayüzü olan Simulink’te bir modelleme işlemi için:

Simulink’in bir diğer önemli özelliği de Matlab ortamı ile etkileşimli işlem görmesidir:

Bir dinamik sistemin simülasyonu, iki adımlık bir Simulink işlemidir:

Fiziksel sistemi yaratmadan önce similasyonunu yapıp gerekli analizleri yaptıktan sonra bunu gerçekleştirmeniz yatırımınızın boşa gitmemesini sağlarsınız. Yapılan şey bir bilgasayar modeli yapmaktır.  Bir bilgisayar modeli, bir kişi, bina, araç, ağaç gibi herhangi bir nesnenin matematiksel gösterimidir. Model, rüzgar hareketleri, trafik akışı, yaylanma gibi bir işlemin gösterimi de olabilir. En geniş kapsamı ile simulation (benzetim), gerçek veya teorik fiziksel bir sistemin bilgisayar üzerinde tasarlanma disiplini ve analiz işlemidir. Simulink bize karmaşık sistemleri tasarlama ve similasyon yapma olanağı vermektedir. Mühendislik sistemlerinde simulasyonun önemi gün geçtikçe  artmaktadır. Sistemlerin tasarımında büyük oranda bilgisayar similasyonlarından faydalanmakta, mümkün olduğunca tasarımın test aşamaları da bilgisayarlar yardımıyla yapılmaktadır. Bu da prototiplere olan ihtiyacı azaltarak maliyetlerin büyük oranda düşmesini sağlamaktadır. Simulink, MATLAB ile birlikte bütünleşik olarak çalışan bir similasyon ortamıdır. Sürekli zamanlı ve ayrık zamanlı sistemleri veya her ikisini de içeren hibrit sistemleri desteklemektedir. İçinde birçok altsistemi 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 cevabını test edebilirsiniz. Bunun için Simulink bizlere zengin bir blok kütüphanesi sunmaktadır. Devre tasarlama aracı olarak da kullanılabilir. Biyomekanik dersinin devamı olan bu konu için matlab simulink nasıl kullanıldığıyla başlayarak örneklerle devam edeceğim.

Matlab Simulink Açma ve Kullanma

Simulink Örnekleri

Statik Modelleme: zamandan etkilenmeyen modellerdir. Modelin durumu zamana göre değişiklik göstermez. Santigrat dereceden fahrenhayta dönüşüm yapan bir denklemin(F = 9/5 (°C) + 32 ) modellemesi yapan bir simulink yapalım:

  1. Yukarıda anlatıldığı gibi matlab simulink açılır.
  2. Simulink Library Browser file altındaki yeni klasörüne yeni_simulink tıklanır.
  3. Sources >> Constant 2 tane (°C)  değeri ve 32 değerini yüklemek için, Math >> Gain 1 tane çarpma  ve Sum 1 tane toplama için, Sinks >> Display 1 tane sonucu göstermek için yolunu izleyerek yeni açılan çalışma sayfasına sürükleyip bırakıp ekleyebilirsiniz Veya Constant, Gain, Sum, Sinks sözcüklerini direk aratarak ekleyebilirsiniz. veya İlk sıradaki "Commonly Used Blocks" seçerek ekleyebilirsiniz.
  4. girdi ve çıktıları ayarlamak için oklarla bloklar birbirine bağlanır. Bloklar Çift tıklanarak Constan 50, Constant1 32 ve Gain 9/5 değerleri ayarlanır.
  5. tüm hepsini yapıp 50 °C değerini verip Run butonuna tıkladığınızdaki sonuç (F=122): simulink_sicaklik_hesaplama
  6. Yapılan işlem 50 * 9/5 + 32 = 122 değeridir.
  7.  kod: sicaklik_hesaplama

 Dinamik Modelleme: zamandan etkilenen modellerdir. Bir simülasyon süresi söz konusudur. kütle_yay_tamper_simulink Başlangıç şartları: x(0) = 0  ve dx/dt(0) = 0 Giriş: f(t), t=0’da genliği 3 olan adım fonksiyonu Kütle, m = 0.25 Sönüm katsayısı, c = 0.5 Yay sabiti, k = 1 f(t)=2 olduğunda x değerinin değişimini Modelleyip Grafik ile gösterelim.

  1. Yukarıda anlatıldığı gibi matlab simulink açılır.
  2. Simulink Library Browser file altındaki yeni  klasörüne yeni_simulink tıklanır.
  3. bir tane Constant, üç tane Gain, iki tane Integrator, bir tane Add, bir tane Scope ekleyin
  4. girdi ve çıktıları ayarlamak için oklarla bloklar birbirine bağlanır. - Constant değeri 2 olarak ayarla - Gain değeri 1 olarak ayarla - Gain1 değeri 0.5 olarak ayarla - Gain2 değeri 0.25 olarak ayarla
  5. sonuç olarak Scope tıklandığında x değerinin zamana göre değişim çıkmaktadır. dinamik_modelleme_simulink
  6. t zamanda f(t) =2 olduğunda x değerindeki artış 6 saniye kadar artmış sonrasında yayın geri çekmesinden dolayı azalmaya başlamıştır.
  7. Kodu: dinamik_model

  Kesikli Modelleme: zamanın tek bir noktasında oluşan ani bir harekettir. Hava alanına inen bir uçak, bankaya giren bir müşteri ya da bir döngüyü bitiren bir hareket ayrık (kesikli) olaylara örneklerdir. Fark Denklemi: x(n+2)=1.5*x(n+1)-0.5*x(n) y(n)=x(n) x(0)=0.5 ve x(1)=2.0 Dt=10.0 Denklemini modelleyip grafiksel gösterelim:

  1. Yukarıda anlatıldığı gibi matlab simulink açılır.
  2. Simulink Library Browser file altındaki yeni klasörüne yeni_simulink tıklanır.
  3. bir tane Sum, iki tane Unit Delay, iki tane Gain, bir tane Scope blokları eklenir.
  4. girdi ve çıktıları ayarlamak için oklarla bloklar birbirine bağlanır. -Çalışma sayfasına eklediğiniz blokları ters çevirmek için tıklayınız ve "Control + R" tıklayınız. (Rotate & Flip > Clockwise) (Format > Flip Block) - Oklara yazı eklemek için çift tıklayın ve sonra yazıyı yazın. - zaman ve model için diğer bazı ayarlamak için "Control + E" tıklayabilirsiniz (Simulation > Model Configuration Parameters) - Unit Delay tıklayarak "Initial condition" ilk koşul değerini 2 yap [  x(1)=2.0 ] - Unit Delay1 tıklayarak "Initial condition" ilk koşul değerini 0.5 yap [  x(0)=0.5 ]
  5. sonuç olarak verilen başlangıç değerlerine göre grafik Scope tıklanarak görebilir. kesikli_model_simulink
  6. Burada kafanız karıştıysa sorun yok. Bunun anlamı öğrenmeye hazır olduğunuzdur :) ilk başlangıç değerleri verildikten t =0 sonra işlem gerçekleştirilir ve t=1 zamanda Scope ile gösterime hazır hale gelir. Aşağıda sildiğim oklar sadece zaman değişimi yani t zamanda birinin girdiği olan değer t+1 zamanda ok yönünde hareket ederek diğerinin girdisi halini almaktadır. herhangi bir t zamanda yapılan işlem ise değerleri aktaran okları sildiğimde aşağıdaki durumu almaktadır. kesikli_model_simulink2
  7. Kod:kesikli_model

Sürekli Modelleme: Zamana bağlı olarak kesilmeden devam eden (arası olmayan) hareketlerdir. Gün içindeki bir gölün suyunun sıcaklığının düşmesi ve yükselmesi, benzinin tankere boşaltılması ve kimyasal dönüşümler örnek olarak verebilir. Matematiksel olarak modellenirken çoğu kez diferansiyel denklemlerden yararlanılır. diferansiyel_denklem_simulink Giriş: 3 sin(2t) Çıkış: dx/dt parametre: Başlangıç şartı → x(0) İşlem Birimi: Integrator blogu I. dereceden bir diferansiyek denklemi çözelim:

  1. Yukarıda anlatıldığı gibi matlab simulink açılır.
  2. Simulink Library Browser file altındaki yeni klasörüne yeni_simulink tıklanır.
  3. bir tane Sum, iki tane Unit Delay, iki tane Gain, bir tane Scope blokları eklenir.
  4. girdi ve çıktıları ayarlamak için oklarla bloklar birbirine bağlanır. - bir tane SinWave Bloğu eklenir ve çift tıklanarak Amplitude = 3, Frequency = 2 ayarlanır -  Integrator Bloğu eklenir ve çift tıklanarak Initial Condition= -1 ayarlanır
  5. Sonuç olarak sinus değerine göre bir sonuç çıkar. surekli_sistmem_simulink
  6. sonuç olarak denklemdeki x değerinin zamana (0-10) göre değişimidir.
  7. Kodu: surekli_modelleme_simulink

Açık Çevrim Modelleme: Sisteme bir geri besleme sağlamadan sistemin çıktılarının varolduğu yani girişin çıkış işaretinden etkilenmediği sistemlerdir. serbest_düsme_simulink

  1. Yukarıda anlatıldığı gibi matlab simulink açılır.
  2. Simulink Library Browser file altındaki yeni klasörüne yeni_simulink tıklanır.
  3. bir tane Constant, iki tane Integration,  bir tane Scope blokları eklenir.
  4. girdi ve çıktıları ayarlamak için oklarla bloklar birbirine bağlanır. - 1 tane Constant yerçekimi ivmesini için (sabit ve dünya : 9.81) ve değeri -0.981 olarak ayarlanır. -  Konum (Integrator ilk değeri) 20 olarak ayarlanır.
  5. Grafikte 20 metre yükseklikten topun 10 saniye içerisindeki düşme konumu şu şekildedir. serbest_düsme_simulink2
  6. Grafikte 20 metre yükseklikten topun 10 saniye zemine çarpmadan aşağıya doğru 50 metre yol almıştır.
  7. Kodu: serbest_dusme_simulink

Kapalı Çevrim Modelleme: Sistem işlemlerinin sonuçları, benzetim modeline bir sonraki işlemin değişikliği için geri döndüğü benzetimdir. kapali_cevrim_simulink

  1. Yukarıda anlatıldığı gibi matlab simulink açılır.
  2. Simulink Library Browser file altındaki yeni klasörüne yeni_simulink tıklanır.
  3. bir tane Constant, iki tane Integration,  bir tane Scope, bir tane Sum, bir tane MATLAB Function blokları eklenir.
  4. girdi ve çıktıları ayarlamak için oklarla bloklar birbirine bağlanır. - 1 tane Constant yerçekimi ivmesini için (sabit ve dünya : 9.81) ve değeri -0.981 olarak ayarlanır. -  Konum (Integrator ilk değeri) 20 olarak ayarlanır. - Matlab Function içine bu kodlar yazılır:
    function [f, a, b] = fcn(y)
    % giriş olarak yükseklik değeri alınmaktadır.
    % burada yere çarpan topa etki eden kuvvet (f)
    % topun esnemesi sonucu yarıçapındaki değişiklik (a,b)
    % hesaplanarak çıktı olarak verilmektedir.
    if y < 1e-4 % zeminden aşağı inilmesi engelleniyor
      y = 1e-4;
    end
      k = 500;%yay sabiti
    if y <= 0.5 % yere değerken oluşan tepki kuvveti
      f = k*(0.5-y);%tepki kuvveti
      a = sqrt(0.5^(3/y));
      b = y;
    else %yere değmemiş
      f = 0; %tepki Kuvveti
      a = 0.5;
      b = 0.5;
    end
    end
    
  5. Açık çevrim örneğinin devamı olarak sıfır(0) konumunda bir zemin olduğunu ve zemine çarpan top herhangi bir kuvvetini kaybetmeden esnek bir şekilde yükseldiğini function ile kod yazarak sisteme bunu ekleyeceğiz. serbest_düsme_simulink3
  6. Grafikte 20 metre yükseklikten topun 10 saniye zemine çarpmadan aşağıya 2o metre düştükten sonra yer çarpma kuvveti onu yükseltmiştir. Bu şekilde sistem bir döngü oluşturmaktadır.
  7. Kodu:serbest_dusme_simulink2

Stokastik Modelleme: Bir veya daha fazla rasgele değişkene dayanan modellerdir. Bu yüzden gerçek sistem davranışını, yalnızca tahmini olarak ortaya koyabilir. Deterministik Modelleme: Rasgele olmayan girdi değişkenine sahip olan modellerdir. Deterministlik modellerdeki hareketler her zaman aynıdır ve aynı çıktıları üretir.  

bazı örnekler

http://www.shefelbine.org/index.php/teaching/SimMechanics

barcode
Destek ?in Buradaki Reklamlar? T?klayabilirsiniz.
Destek ?in Buradaki Reklamlar? T?klayabilirsiniz.

Ses Kontrolleri

Tam Ekran Yap