• Simulink programında çalışmaya ilişkin kısa talimatlar. I.V. Chernykh. "Simulink: Dinamik Sistem Simülasyon Aracı"

    giriiş

    Bu öğretim yardımcıları, disiplinler arası karmaşık MDK 03.01.'in "Otomasyon" bölümünü, "Otomasyonun Temelleri", "Otomatik Kontrol Sistemleri" disiplinlerini incelemek için tasarlanmıştır.

    Kılavuz, otomatik kontrol sistemlerinin dijital modelleme yöntemlerini tartışıyor ve yazılım Bunları gerçekleştirmek için matematiksel modeller oluşturma yöntemleri dikkate alınır.

    Talimatların ilk kısmı (Bölüm 1) diferansiyel denklemleri kullanarak sistemlerin nasıl tanımlanacağını gösterir. Talimatların bir sonraki kısmı (Bölüm 2), sistemleri birçok transfer fonksiyonunun bir koleksiyonu olarak tanımlamak için bir yöntem sunacaktır.

    Örneği açıklamak için 7.11 sürümü kullanıldı MATLAB programları.

    MATLAB'ın diğer sürümleriyle çalışmak, "pencere" görünümü dışında benzerdir.

    Talimatları mümkün olduğunca basitleştirmeye ve Simulink'in nasıl kullanılacağını erişilebilir bir biçimde göstermeye çalıştık.

    Bölüm 1. Genel bilgi Simulink sistemi hakkında

    Simulink programı MATLAB paketine bir uygulamadır.

    Simulink kullanarak modelleme yaparken, kullanıcının standart bloklardan oluşan bir kütüphaneden ekranda bir cihaz modeli oluşturduğu ve hesaplamalar yaptığı görsel programlama ilkesi uygulanır. Aynı zamanda, klasik modelleme yöntemlerinden farklı olarak, kullanıcının programlama dilini ve matematiğin sayısal yöntemlerini derinlemesine incelemesine gerek yoktur, bunun yerine bilgisayarda çalışırken gerekli olan genel bilgi ve doğal olarak çalıştığı konu alanına ilişkin bilgi birikimine sahip olması gerekir. İşler.

    Simulink simülasyon sisteminin temel konsepti sinyaldir. Varsayılan olarak sinyaller, model bileşenlerini ilişkilendiren skaler boyutsuz değişkenlerdir. Bununla birlikte, modellenen sistemin bazı öğelerinin diğerleri üzerindeki spesifik fiziksel etkisini belirli bir şekilde tanımlayan, örneğin elektrik, hidrolik, mekanik vb. gibi özel sinyaller de vardır. Model bileşenleri, Simulink kütüphanesinin öğeleri veya sinyallerde değişiklik yapan diğer modellerdir (örneğin, entegrasyon, amplifikasyon, iki sinyalin eklenmesi vb.).

    Simulink yeterli bağımsız bir araç ve onunla çalışırken MATLAB'ın kendisini ve diğer uygulamalarını bilmenize hiç gerek yok. Öte yandan MATLAB fonksiyonları ve diğer araçları açık kalır ve Simulink'te kullanılabilir. İçerdiği paketlerin bazılarında Simulink'te yerleşik araçlar bulunur (örneğin, kontrol sistemlerini geliştirmeye yönelik bir paket olan Control System Toolbox uygulamasının LTI-Viewer'ı).

    Farklı uygulamalar için ek blok kütüphaneleri de vardır (örneğin, Güç Sistemi Blok Seti - elektrikli cihazların modellenmesi, Dijital Sinyal İşleme Blok Seti - geliştirme için bir blok seti) dijital cihazlar vesaire).

    Kullanıcı, Simulink ile çalışırken kütüphane bloklarını yükseltme, kendi bloğunu oluşturma ve ayrıca yeni blok kütüphaneleri oluşturma fırsatına sahip olur.

    Modelleme sırasında kullanıcı diferansiyel denklemleri çözme yöntemini ve model süresini değiştirme yöntemini seçebilir.

    (sabit veya değişken adım). Simülasyon sırasında sistemde meydana gelen süreçleri izlemek mümkündür. Bu amaçla Simulink kütüphanesinde yer alan özel izleme cihazları kullanılmaktadır. Simülasyon sonuçları grafikler veya tablolar şeklinde sunulabilir.

    Simulink'in avantajı aynı zamanda hem MATLAB'da hem de C++, Fortran ve Ada'da yazılmış altprogramları kullanarak blok kütüphanelerini genişletmenize izin vermesidir.

    Programı çalıştırmak için öncelikle MATLAB paketini çalıştırmalısınız. MATLAB paketinin ana penceresi Şekil 1'de gösterilmektedir. Ayrıca, araç çubuğundaki Simulink kısayolunun üzerine fareyi getirdiğinizde pencerede görünen araç ipucunu da gösterir.

    Ana MATLAB program penceresini açtıktan sonra Simulink programını başlatmanız gerekmektedir. Bu üç yoldan biriyle yapılabilir:

    Şekil 1 - MATLAB ana penceresi

    ∙ MATLAB komut penceresinin araç çubuğundaki (Simulink) butonuna tıklayın.

    ∙ MATLAB ana penceresinin komut satırına Simulink yazın ve klavyede Enter tuşuna basın.

    ∙ Dosya menüsündeki Aç... komutunu çalıştırın ve model dosyasını (mdl dosyası) açın.

    Son seçeneğin, yalnızca hesaplamalar yapmanız gerektiğinde ve modele yeni bloklar eklemenize gerek olmadığında, hazır ve hata ayıklaması yapılmış bir modeli başlatmak için kullanılması uygundur. Birinci ve ikinci yöntemlerin kullanılması Simulink kütüphane penceresinin açılmasını sağlar (Şekil 2).

    Şekil 2 - Simulink kütüphane penceresi.

    Sayılar şunları gösterir: 1 – bileşen arama satırı, 2 – Simulink kitaplık ağacı, 3 – kitaplık içerikleri (bölümler veya kitaplık bileşenleri)

    Şekil 2, ana Simulink kütüphanesini vurgulamaktadır (pencerenin sol tarafında) ve bölümlerini göstermektedir (pencerenin sağ tarafında). MATLAB 2010'daki Simulink kütüphanesi aşağıdaki ana bölümleri içerir:

    0. Yaygın Kullanılan Bloklar – ana Simulink kütüphanesinin çeşitli bölümlerinden sık kullanılan bileşenler.

    1. Sürekli – sistemlerin sürekli zamanda modellenmesi için bileşenler.

    2. Süreksizlikler – düzgün olmayan ve süreksiz doğrusal olmayan fonksiyonların modellenmesine yönelik bileşenler.

    3. Ayrık – sistemlerin ayrık zamanda modellenmesi için bileşenler.

    4. Mantık ve Bit İşlemleri - modelleme mantığına yönelik bileşenler

    mantıksal (ikili) işlemler.

    5. Arama Tabloları – işlevsel ve tablo bağımlılıklarını modellemeye yönelik bileşenler.

    6. Matematik İşlemleri – matematiksel işlemlerin modellenmesine yönelik bileşenler.

    7. Model Doğrulaması – modellerin davranışını test etmek ve doğrulamak için kullanılan bileşenler.

    8. Model Genelinde Yardımcı Programlar - modellerin belgelenmesi ve doğrusallaştırılması için yardımcı bileşenler.

    9. Bağlantı Noktaları ve Alt Sistemler – hiyerarşik modeller ve alt sistemler oluşturmaya yönelik bloklar.

    10. Sinyal Nitelikleri – modellerdeki sinyal türlerini dönüştürmek için bileşenler.

    11. Sinyal Yönlendirme – sinyallerin değiştirilmesi ve birleştirilmesi/bağlantısının kesilmesi için bileşenler.

    12. Lavabolar – sinyallerin görüntülenmesi ve kaydedilmesi için bileşenler.

    13. Kaynaklar – sinyal ve etkilerin kaynakları.

    14. Kullanıcı Tanımlı Fonksiyonlar – MATLAB'da uygulanan kullanıcı tanımlı fonksiyonlar oluşturmaya yönelik bileşenler.

    Simulink kütüphanesinin bölümlerinin listesi bir ağaç biçiminde sunulur ve onunla çalışma kuralları bu tür listeler için ortaktır:

    ∙ Daraltılmış bir ağaç düğümünün simgesi + sembolünü içerir ve genişletilmiş bir ağaç düğümünün simgesi - sembolünü içerir.

    ∙ Bir ağaç düğümünü genişletmek veya daraltmak için farenin sol tuşuyla simgesine tıklamanız yeterlidir.

    İlgili kütüphane bölümünü seçtiğinizde içeriği pencerenin sağ tarafında görüntülenir (Şekil 3).

    Şekil 3 - Simulink/Sürekli kütüphane bileşenleri.

    Simulink'te model oluşturmaya bir örnek

    Simulink'i modelleme sistemleri için kullanmanın bir örneği olarak, bireysel bir konut binasında ısıtmayı düşünün. Basitlik açısından evin, toplam termal güçle ısıtmanın kurulduğu tek bir odadan oluştuğunu varsayalım.𝑃 . Bu evin içindeki sıcaklık𝑇 𝑖 derece, pencerenin dışındaki sıcaklık𝑇 𝑜 derece. Sıcaklığın nasıl değiştiğiyle ilgileniyoruz𝑇 𝑖 güç değiştiğinde𝑃 (Şekil 4).

    Şekil 4 - Giriş ve çıkışa dayalı olarak ısıtılan bir odanın modeli.

    Modeli oluşturmadan önce sezgisel olarak bazı özelliklerini ele alalım. İlk olarak, ısıtmayı açarsanız, sıcaklığın önce yükseleceği ve sonra dengeleneceği oldukça açıktır - sağlanan ısı ile pencerelerdeki çatlaklar, havalandırma vb. yoluyla dışarıya dağıtılan ısı arasında termal denge oluşacaktır. Sobayı kapatırsanız sıcaklık düşecek ve sonunda ev dışarısı kadar soğuk olacaktır. Gerekli

    Model parametreleri şunlardır:

    ∙ dış sıcaklık𝑇 𝑜 – ne kadar küçükse, o kadar fazla ısı

    evden çıkar ve içeride ayarlanan sıcaklığa ulaşmak için daha fazla ısıtıcı gücüne ihtiyaç duyulur𝑇 𝑖 ;

    ∙ ısı yalıtımının kalitesi - ısı yalıtımı ne kadar kötü olursa, o kadar fazla ısı ortaya çıkar;

    ∙ evin içindeki hava kütlesi - hava ne kadar fazla olursa, belirli bir sıcaklığa kadar ısıtılması o kadar uzun sürer ve ısıtma kapatıldığında evin soğuması o kadar uzun sürer.

    Isı mühendisliğinde, gövdelerin ısıtılması ve soğutulması işlemlerini değişen derecelerde doğrulukla simüle eden birçok model vardır. Daha sonra bunların en basitlerine bakacağız. Bunu yapmak için, ısı miktarı kavramını - bir cismin termodinamik durumunu (örneğin sıcaklık) değiştirmek için gereken enerji - kavramını tanıtmak gerekir. Fizik dersinden iyi bilinmektedir ki kütlesi olan bir cismi ısıtmak için𝑚 ve ısı kapasitesi𝑐 sıcaklık 𝑇 1 ile 𝑇 arasında 2 ısı miktarını harcamak gerekir𝑄 eşittir

    𝑄 = 𝑐𝑚 (𝑇 2 − 𝑇 1)

    Isı miktarı𝑄 𝑖 gücü olan bir ısıtıcıdan gelen𝑃 zamanla 𝜏 sadece zaman içindeki bir integraldir:

    𝑄 𝑖 (𝜏 ) =

    Dışarıya ne kadar ısının çıktığını anlamak için ısı akışı kavramını kullanmanız gerekir.𝑄 0 (t) – Birim zamanda yüzeyden geçen ısı miktarı. Temas eden iki ortamın içindeki ısıl iletkenliğin aralarındaki ısıl iletkenlikten daha büyük olduğunu varsayarsak, ısı akışı sıcaklıkları arasındaki farkla orantılıdır:

    𝑄 0 (t)= -k(T i (t)–T 0 )

    𝑄 0 (𝜏 ) = (T i (t)–T 0 )dt

    Isı dengesi denklemini yazalım:

    𝑄 = 𝑄 𝑖 + 𝑄 𝑜

    Her iki parçayı zamana göre farklılaştırarak sıcaklık değişimlerinin dinamiği ile ilgili bir diferansiyel denklem yazabiliriz.𝑇 𝑖 (𝑡 ) ısıtıcı gücünde:

    𝑐𝑚 = 𝑘 (𝑇 𝑜 − 𝑇 𝑖 (𝑡 )) + 𝑃 (𝑡 )

    Katsayıyı belirledikten sonra𝑐𝑚 = a ve entegrasyon için değişkenleri ayırarak şunu yazabiliriz:

    Son ifade şu en basit model bir odayı ısıtırken ısı değişim süreci. Simulink kullanarak bu sistemi nasıl modelleyeceğimize bakalım.

    Simulink ortamında model oluşturmak için bir takım adımları sıralı olarak gerçekleştirmeniz gerekmektedir.

    Öncelikle Dosya / Yeni / Model komutunu kullanarak veya araç çubuğundaki düğmeyi kullanarak yeni bir model dosyası oluşturmanız gerekir (bundan sonra / sembolünü kullanarak, belirtilen eylemi gerçekleştirmek için sırayla seçilmesi gereken program menüsü öğeleri belirtilir) ). Yeni oluşturulan model penceresi Şekil 5'te gösterilmektedir.

    Şekil 5 - Boş model penceresi.

    Daha sonra Simulink kütüphanesinin bileşenlerini model penceresine yerleştireceğiz. Bunu yapmak için kütüphanenin uygun bölümünü (örneğin, Kaynaklar) açmanız gerekir. Daha sonra imleci gerekli bloğun üzerine getirin ve farenin sol tuşuna basarak bloğu oluşturulan model penceresine sürükleyin. Fare tuşu basılı tutulmalıdır.

    Modelin diferansiyel denklemini dikkate alarak modelin sinyallerini değiştiren bileşenlerin listesini aşağıdaki şekilde yapabiliriz:

    ∙ modele bir parametre girilmelidir𝑇 𝑜 , başlangıçta olacak olan

    sabit – Simulink / Yaygın Kullanılan Bloklar / Sabit veya Simulink / Kaynaklar / Sabit kütüphane bileşenini kullanırız (bu aynı bileşendir);

    ∙ sıcaklık farkını elde etmek için𝑇 𝑜 − 𝑇 𝑖 (𝑡 ) bir toplayıcı (çıkarıcı modunda) kullanmak gerekir - Simulink kütüphanesinin bir bileşeni / Yaygın Kullanılan Bloklar / Toplama veya Simulink /

    Matematik İşlemleri / Toplam (ayrıca aynı bileşen);

    ∙ sıcaklık farkının katsayı ile çarpımını hesaplamak için𝑘 ・ (𝑇 𝑜 − 𝑇 𝑖 (𝑡 ))), bir blok kullanmalısınız

    amplifikatör, çünkü böyle bir ürün, fark sinyalini yükseltmeye eşdeğerdir.𝑘 Simulink / Yaygın Kullanılan Bloklar / Kazanç veya Simulink / Matematik İşlemleri / Kazanç kütüphane bileşenini yükledikten sonra;

    ∙ kuvvetlerin toplamını elde etmek için𝑘 (𝑇𝑜 − 𝑇𝑖 (𝑡 )) + 𝑃 (𝑡 ) integralin altında bir toplayıcı kullanmanız gerekir - Simulink / Yaygın Kullanılan Bloklar / Toplam veya Simulink / Matematik İşlemleri / Toplam kütüphanesinin bir bileşeni;

    ∙ İntegral kullanarak kuvvetlerin toplamından ısı miktarını elde etmek

    𝑇 𝑖 (𝑡 )= (𝑘 (𝑇 𝑜 − 𝑇 𝑖 (𝑡 )) + 𝑃 (𝑡 )) dt

    Simulink / Yaygın Kullanılan Bloklar / Entegratör veya Simulink / Sürekli / Entegratör kütüphanesinin bir bileşeni olan bir entegratör kullanmanız gerekir;

    ∙ dahili sıcaklık sinyali oluşturmak için𝑇 𝑖 (𝑡 ) güç integralinden, integralin değerini 1/ ile çarpan bir amplifikatör bloğu kullanmak gerekir.𝑎 – kütüphane bileşeni

    Simulink / Yaygın Olarak Kullanılan Bloklar / Kazanç veya Simulink / Matematik İşlemleri / Kazanç;

    Ayrıca bağımlılığı görselleştirmemiz gerekiyor.𝑇 𝑖 (𝑡 ), bunun için Simulink / Yaygın Kullanılan Bloklar / Scope veya Simulink / Sinks / Scope kütüphanesinin bir bileşeni olan bir osiloskop kullanıyoruz. Gücün zamana bağımlılığını da belirledik𝑃 (𝑡 ) Simulink /Sources/Step kütüphane bileşenini kullanarak tek adımlı bir sinyal olarak.

    Şekil 6 - Gerekli blokları içeren model penceresi

    Şekil 6 kurulu blokları içeren bir model penceresini göstermektedir.

    Bir bloğu silmek için bloğu seçmeniz (imleci resminin üzerine getirin ve farenin sol tuşuna basın) ve ardından klavyedeki Sil tuşuna basmanız gerekir.

    Bir bloğun boyutunu değiştirmek için bloğu seçmeniz, imleci bloğun köşelerinden birine yerleştirmeniz ve farenin sol tuşuna basarak bloğun boyutunu değiştirmeniz gerekir (imleç çift yönlü bir şekle dönüşecektir). taraflı ok).

    Şekil 7 - Entegratörün blok modellemesi ve blok parametrelerini düzenlemek için pencere

    Bir sonraki adım, her bloğun parametrelerini yapılandırmaktır. Bunu yapmak için, imleci blok resminin üzerine getirerek farenin sol tuşuna çift tıklayın. Bu bloğun parametrelerini düzenlemek için bir pencere açılacaktır. Sayısal parametreleri belirtirken ondalık ayırıcının virgül değil nokta olması gerektiğini unutmayın. Değişiklik yaptıktan sonra OK butonu ile pencereyi kapatmanız gerekmektedir. Şekil 7, örnek olarak, bir entegratörü modelleyen bir bloğu ve bu bloğun parametrelerini düzenlemek için bir pencereyi göstermektedir.

    Söz konusu modelde aşağıdaki blok parametrelerinin ayarlanması gerekmektedir:

    ∙ Entegratör bloğu: parametre Başlangıç ​​koşulu = 20 – entegrasyon, 20 derecelik başlangıç ​​oda sıcaklığından itibaren gerçekleştirilir;

    ∙ blok Toplam1 (iki toplayıcıdan alttaki): İşaret listesi = |+- – toplayıcıyı bir çıkarıcıya dönüştürür;

    Parametreler 𝑎 ve 𝑘 Şimdilik modelleri tanımlamayacağız,𝑎 = 1 ve 𝑘 = 1. Gerekli kütüphanelerdeki tüm blokları devre üzerine kurduktan sonra devre elemanlarını sinyalleri kullanarak bağlamanız gerekir.

    Blokları bağlamak için, imleci bloğun çıkışına yönlendirmeniz ve ardından tuşuna basmanız ve farenin sol düğmesini bırakmadan başka bir bloğun girişine bir çizgi çizmeniz gerekir. Daha sonra anahtarı bırakın. Ne zaman doğru bağlantı blok girişindeki ok görselinin rengi değişir. Bağlantı hattında bir dallanma noktası oluşturmak için imleci istenen düğüme hareket ettirmeniz ve farenin sağ tuşuna basarak çizgiyi çizmeniz gerekir. Bir satırı silmek için satırı seçmeniz (bir blokta olduğu gibi) ve ardından klavyedeki Sil tuşuna basmanız gerekir.

    Modelin anlaşılmasını kolaylaştırmak için yalnızca bloklara değil sinyallere de adlar belirleyebilirsiniz. Bunu yapmak için sinyale çift tıklayın ve bir ad girin. Değişkenlere karşılık gelen sinyalleri gösterelim𝑃 , 𝑇 𝑜 , 𝑇 𝑖 , P, T o ve T i .

    Bloklar arasındaki tüm bağlantıların ve ayarlarının yapıldığı modelin şeması Şekil 8’de gösterilmektedir.

    Şekil 8 - Son model diyagramı.

    Modeli derledikten sonra diyagram penceresinde Dosya/Farklı Kaydet... menü öğesini seçip klasör ve dosya adını belirterek diske dosya olarak kaydetmeniz gerekir. Diyagramı daha sonra düzenlerken Dosya/Kaydet menü öğesini kullanabilirsiniz. Şu tarihte: tekrarlanan lansmanlar Simulink programında devre, kütüphane tarayıcı penceresindeki Dosya/Aç... menüsü kullanılarak veya MATLAB ana penceresinden yüklenir.

    Simülasyon, Simülasyon/Başlat menü öğesi seçilerek veya araç çubuğundaki üçgen (oynat) düğmesine tıklanarak başlatılır. Sistem simülasyonunun süresi, yanındaki giriş alanında gösterilir; varsayılan olarak simülasyon, simülasyon süresine ulaşıldığında durur𝑡 𝑠𝑡𝑜𝑝 = 10. Hesaplama işlemi, Simülasyon/Durdur menü öğesi veya kare düğme (durdur) seçilerek planlanandan önce tamamlanabilir. Hesaplama ayrıca durdurulabilir (Simülasyon/Duraklat) ve ardından devam ettirilebilir (Simülasyon/Devam).

    Simülasyona başlayalım. Bitirdikten sonra osiloskop bloğuna (Kapsam) çift tıklayın. Bağımlılığı göstermelidir𝑇 𝑖 (𝑡 )

    (Şekil 9). Grafik görünmüyorsa, siyah alana sağ tıklayıp grafik eksenlerini otomatik olarak ölçeklendirecek menüden Otomatik Ölçeklendirme'yi seçmeniz gerekir.

    Şekil 9 - Simülasyon sonucu𝑃 = 1.

    İçerideki sıcaklığın 20 dereceden dışarıya göre daha yüksek bir sıcaklığa düştüğü görülüyor𝑇 𝑜 = 1, Constant bloğu tarafından modellenmiştir.

    Bu ısıtıcının etkisini etkiler.

    Bağımlılığı modelleyen Step bloğunun parametrelerini ayarlayalım𝑃 (𝑡 ), yüksek ısıtma gücü. Adım bloğu, Nihai değer parametresi tarafından belirtilen sabit bir değeri çıkarır ve bu, Adım süresi parametresi tarafından belirtilen zamanda gerçekleşir. Bu ana kadar Step bileşeninin çıkış değeri 0'dır. Final değer parametresini = 10 yaparak simülasyonu tekrar çalıştıracağız. Bir bağımlılık elde edelim𝑇 𝑖 (𝑡 ), Şekil 10'da gösterilmiştir.

    Şekil 10 - Simülasyon sonucu𝑃 = 10.

    Isıtıcı açılmadan önce sıcaklığın düştüğü açıkça görülüyor𝑡 = 1, bundan sonra ısıtıcı tarafından sağlanan ısı ile dışarıdan uzaklaştırılan ısı arasındaki termodinamik dengeye karşılık gelen sabit bir değere ulaşılıncaya kadar artar.

    Edebiyat

    1. A. Borisevich, Otomatik kontrol teorisi: temel bir giriş

    MATLAB kullanarak, Ed. Moskova Devlet Üniversitesi, 2011

    2. A. F. Dashchenko, V. Kh. Kirillov, L. V. Kolomiets, V. F. Orobey

    MÜHENDİSLİK VE BİLİMSEL BİLGİSAYARDA MATLAB

    Odessa “Astroprint” 2003

    3. V. P. Dyakonov MATLAB 7.*/R2006/R2007 Eğitimi

    Moskova, DMK, 2008


    Davranışı modellemek dinamik sistemler Demiryolu taşıtlarının mürettebatını içeren bilgisayarlar tarafından kullanılır. Sorunun çözülebileceği çok sayıda algoritmik dil vardır. Bir programlama dilinin veya diğerinin seçimi birçok koşula bağlıdır. Çoğu zaman belirleyici rol, programlamanın kolaylığı, kanıtlanmış matematiksel yöntemlerin mevcudiyeti ve simülasyon sonuçlarının sunumunun kolaylığı tarafından oynanır. SIMULINK görsel modelleme aracını içeren MATLAB paketi bu özelliklere sahiptir.

    SIMULINK, analog makinelerin netliğini dijital bilgisayarların kesinliğiyle birleştirir. SIMULINK, kullanıcıya geniş bir sayısal yöntemler kütüphanesi de dahil olmak üzere MATLAB paketinin tüm özelliklerine erişim sağlar.

    SIMULINK'te modelleme için bir problemin hazırlanması aşağıdaki sırayla gerçekleştirilir:

    Hesaplama şemasının seçimi.
    İncelenen süreci açıklayan bir denklem sistemi oluşturmak.
    Sistemin çözüme uygun hale getirilmesi (daha yüksek türevlere göre çözünürlük).
    Başlangıç ​​koşullarının belirlenmesi.
    Yapısal bir diyagramın hazırlanması.
    Rahatsız edici fonksiyonların modellenmesi.
    Başlangıç ​​verilerinin tanımı.
    SIMULINK ortamında bir modelin derlenmesi.
    Görselleştirme araçlarını etkinleştirin.
    Test yapmak.
    Çözüm.
    Sonuçların analizi.
    Rapor.

    Aşağıda basit örnekler kullanılarak SIMULINK ortamında modelleme örnekleri verilmiştir.

    EPS ekibinin dikey titreşimleri

    İki kütleli bir sistemin zorlanmış salınımlarının matematiksel modeli

    Mürettebatın ana parametrelerinin dikey titreşimler üzerindeki etkisini incelemek için, iki kütlenin elastik ve enerji tüketen bağlantılarla bağlandığı iki serbestlik derecesine sahip basitleştirilmiş bir model kullanılır (Şekil 1). Bu model, iki kademeli süspansiyona sahip raylı taşıtların dikey titreşimlerini açıklamaktadır: ana hat lokomotifleri (elektrikli ve dizel lokomotifler) ve binek otomobiller.

    Şekil 1. Hesaplama şeması

    Raydan kaynaklanan bir bozucu etkinin mevcut olduğu durumda dikkate alınan sistemin hareket denklemleri aşağıdaki diferansiyel denklemlerle tanımlanmaktadır:

    Denklemlerde (1) aşağıdaki gösterimler kullanılmıştır:

    M 1 – arabanın yaylı kütlesi;

    M 2 – vücut ağırlığı bir bojiye düşürüldü;

    İle 1 , B 1 – birinci süspansiyon kademesindeki sertlik ve sönümleme;

    İle 2 , B 2 - ikinci süspansiyon kademesindeki sertlik ve sönümleme;

    H(T) – pistten kaynaklanan rahatsızlık;

    – genelleştirilmiş koordinatlar ve bunların zamana türevleri:

    Hareket denklemlerini şu şekle dönüştürelim:

    Rahatsızlık olarak prof'un kabalığını kullanıyoruz. N.N. Kudryavtseva. Pürüzlülük, bir demiryolu bağlantısı boyunca sapmadaki değişimi iyi bir şekilde tanımlar. Pürüzlülük modeli, frekanslı yarım dalga sinüzoidin toplamıdır. w ve frekansı 3 olan bir sinüzoidin üç yarım dalgası w demiryolu bağlantısının uzunluğu boyunca döşenir L. Düzensizlik genlikleri A 1 A Yolun türüne ve durumuna göre 2 tanesi seçilir.

    Rahatsızlık sıklığı;

    V- Hareket hızı.

    Yukarıda anlatılan modeli SIMULINK ortamında oluşturalım.

    Simulink sisteminde iki kütleli bir sistemin zorlanmış salınım modeli

    SIMULINK'i başlattığınızda iki pencere açılır:

    Boş bir çalışma penceresi, yeni bir model oluşturmak için boş bir penceredir ( başlıksız);

    SIMULINK kütüphanesinin temel bölüm kümelerini içeren penceresi ( Kütüphane:simulink).

    Pirinç. 2. SIMULINK'e başlama örneği

    Modellenen sistem oldukça basit olduğundan, tek seviyeli bir modelin (iç içe geçmiş alt sistemler olmadan) uygulanmasını göstereceğiz.

    Simulink sisteminde bir model oluşturma süreci, ilgili kütüphanelerden gerekli blokların seçilmesi ve bunların bağlantılara bağlanması sırasını temsil eder.

    Genellikle dinamik bir sistemi modellemek için (2) formundaki hareket denklemleri kullanılır.

    Denklemin sağ tarafının içerdiği terim sayısı kadar girdiye sahip bir toplayıcıyla her denklemin bir modelini oluşturmaya başlıyoruz. İlk denklem için bu toplayıcıdır Toplam 1(Şek. 3). Toplayıcı girişleri hem pozitif hem de negatif değerlere sahip olabilir (Şekil 4). Daha sonraki doğrulama ve analizleri kolaylaştırmak için kullanılan blokların adlandırılması önerilir.

    Pirinç. 11. Birinci cismin titreşimlerini açıklayan alt sistem

    Pirinç. 12. İkinci cismin titreşimlerini açıklayan alt sistem

    Pirinç. 13. Başlatıcıyı ayarlama

    Başlangıç ​​değerlerini ayarlamaya yönelik alt program normal bir m dosyasıdır. Bu örnek için dosyada MDYN 21.M aşağıdaki değerler ayarlanmıştır:

    %MDYN21
    %Programı başlat
    %
    yankılanmak
    A1=0,005;
    A2=0,002;
    L=25;
    p=pi/L;
    M1=8,82;
    C1=7000;
    B1=60;
    M2=25,8;
    C2=2600;
    B2=125;
    Eko kapalı
    x0 = ;
    =sim("mdyn21",10,simset("Başlangıç ​​Durumu",x0));

    Altprogramın verilen metninde satırın sonundaki noktalı virgül değişken değerlerin çıktısını yasaklar.

    Girilen verileri görüntülemek için operatörler “ EkoAçık -Ekokapalı" Alt programın seçilen parçası MATLAB kontrol penceresinde görüntülenir (Şekil 14).

    Kaynak verileri değiştirmek için bir metin düzenleyici kullanılır.

    Bu örnekteki simülatör, bloğa çift tıklanarak başlatılır. BAŞLANGIÇ.


    Pirinç. 14. MATLAB kontrol programı penceresindeki çıktı

    Modele, modelin kısa bir açıklamasını içeren bir bilgi bloğu ekleyelim - blok Bilgi" sembolüyle gösterilir ? " Bloğun içeriği Şekil 2'de gösterilmektedir. 15.

    Pirinç. 15. Bilgi bloğu

    Faz diyagramını görüntülemek için bir görüntüleme bloğu sunuyoruz XY_Grafik, blok diyagramda belirtilmiştir " faz diyagramı". Çıktı sonuçları Şekil 16'da gösterilmektedir.

    Pirinç. 16. Simülasyon sonuçları - faz diyagramı

    Kullanıcı Rutinlerini Kullanma

    SIMULINK ortamında modelleme yeteneklerini genişletmek için MATLAB'da yazılmış kullanıcı rutinlerini bağlamak mümkündür. Önceki modelde düzgünsüzlük fonksiyonlarını "modülüyle değiştirmiştik" MATLABİşlev" - "Eşitsizlik". Model, yol pürüzlülüğü fonksiyonunu ve onun türevini tanımlayan bir kullanıcı rutinine bir bağlantı tanımlar (Şekil 17). Bu yaklaşım, hem MATLAB'da programlama yaparken hem de SIMULINK ortamında modelleme yaparken kanıtlanmış modüllerin kullanılmasına olanak tanır.

    Pirinç. 17. Blok modeli ve kurulumu MATLAB'ın işlevleri

    Ele alınan örnekler, MATLAB paketinin ve SIMULINK görsel modelleme ortamının yeteneklerinin tam bir açıklaması olduğunu iddia etmemektedir. Çalışma için özel literatür ve kullanım kılavuzunu öneriyoruz.

    Ruban V.G. © 2000

    GİRİİŞ

    Bu kılavuz laboratuvar ve laboratuvar çalışmaları yürüten enstitünün öğrencileri için bir rehber niteliğindedir. dönem ödevi Doğrusal otomatik kontrol sistemleri ve otomatik elektrikli tahrik teorisi üzerine. Çalıştayın amacı birleştirmek teorik materyal Diferansiyel denklemler, transfer fonksiyonları, bağlantıların zaman ve frekans özellikleri ve otomatik sistemler, kararlılıkları, parametrelerin ve sistem yapısının geçici ve kararlı durum çalışma modlarında kontrol süreçlerinin kalite göstergeleri üzerindeki etkisi, gecikmeli sistemlerin incelenmesi.

    Bu çalıştayın özel bir özelliği, yapısal dinamik diyagramlar şeklinde sunulan kontrol sistemlerini analiz etme sürecini otomatikleştirmenize olanak tanıyan MATLAB - Simulink sistemini kullanan kişisel bilgisayarlarda uygulanmasıdır.

    Atölye çalışması, doğrusal kontrol sistemlerinin temel özelliklerinin zaman ve frekans alanlarında analiz edilmesinde pratik beceriler kazanmak için altı laboratuvar çalışmasının tamamlanmasını içermektedir.

    SİMÜLASYON SİSTEMİNİN İNCELENMESİ 1 No'lu LABORATUVAR ÇALIŞMASI

    MATLAB - SIMULINK

    İşin amacı

    MATLAB sistemine aşinalık, MATLAB uygulaması - Simulink simülasyon sistemi kullanılarak otomatik kontrol sistemlerinin (ACS) araştırılmasında pratik becerilerin kazanılması.

    1.1. Temel bilgiler

    MATLAB, teknik hesaplama için tasarlanmış ultra yüksek seviyeli bir programlama dilidir. Sorunların ve çözümlerin ortak bir şekilde sunulduğu, kullanımı kolay bir ortamda hesaplama, görselleştirme ve programlamayı içerir. matematiksel form. MATLAB, ana veri elemanlarının önceden boyutlandırma gerektirmeyen dizilerle temsil edildiği etkileşimli bir sistemdir. Bu, özellikle matris ve vektör formundaki birçok teknik sorunu çözmenize ve ayrıca C veya Fortran gibi geleneksel skaler dillerde program yazmanıza olanak tanır.

    "MATLAB" ismi "matris laboratuvarı" kelimelerinin kısaltmasından gelmektedir. MATLAB sistemi beş ana bölümden oluşur:

    1. MATLAB programlama dili. Bu Durum yönetimi, işlevler, veri yapıları, giriş/çıkış ve nesne yönelimli programlamaya sahip üst düzey bir matris dizisi dili.

    2. MATLAB çalışma ortamı. Bu, kullanıcının etkileşime girdiği grafik arayüzdür. MATLAB masaüstünü, komut penceresini, MATLAB dosya düzenleyicisini ve hata ayıklayıcısını ve yardım tarayıcısını içerir.

    3. MATLAB grafik sistemi. İki boyutlu ve üç boyutlu veri gösterimi, görüntü işleme, animasyon için üst düzey komutlar içerir. Ayrıca bir dizi komut içerir düşük seviye Kullanıcının kendi arayüzünü oluşturmasına olanak tanır.

    4. MATLAB matematiksel fonksiyonlar kütüphanesi. Temel aritmetik işlevlerden (toplama/çıkarma, trigonometrik işlevler) matris ters çevirme ve Fourier dönüşümleri gibi karmaşık işlevlere kadar değişen bir dizi hesaplama algoritması içerir.

    5. MATLAB Uygulama Programı Arayüzü. Bu kütüphane MATLAB ile etkileşime giren C ve Fortran dillerinde programlar yazmanıza olanak sağlar. MATLAB'dan çağrı yapmak (dinamik bağlantı), MATLAB'ı bir bilgi işlem motoru olarak çağırmak ve MAT dosyaları.

    Simulink, MATLAB paketinin bir parçası olan dinamik sistemlerin simülasyon modellemesi ve analizi için bir programdır. Simulink, bilgisayar ekranında birleşik bloklar şeklinde bir model oluşturmanıza olanak tanır ve doğrusal, doğrusal olmayan, sürekli, ayrık modeller veya bunların kombinasyonlarıyla çalışabilir. Büyük bir sayı değişkenler.

    1.2. İş emri

    1. Bilgisayarını aç.

    2. Windows işletim sistemindeyken, masaüstündeki ilgili simgeye sol fare düğmesine çift tıklayarak MATLAB'ı başlatın. Bu, ana MATLAB penceresini açar.

    3. Simulink'i başlatmak için ana MATLAB penceresinde açılır başlıklı düğmeye tıklayın Simulink Kütüphane Tarayıcısı. Sonuç olarak

    Simulink Blok Kütüphanesi penceresi açılır.

    4. Simulink Kütüphane Tarayıcısı penceresinde yeni bir model oluşturmak için, Yeni model başlıklı açılır pencereye tıklayın. Program açılacak

    " içeren pencere boş sayfa" başlıksız. Açmak için mevcut model blok kitaplığı penceresinde veya komut penceresinde, Bir model aç açılır başlıklı düğmeye tıklayın ve beliren pencerede şunu seçin:

    gerekli dosya (Simulink'te oluşturulan dosyalar .mdl uzantısına sahiptir).

    5. Şekil 2'de gösterilen bir blok diyagramı oluşturun. 1.1 ve öğretmen tarafından belirtilen parametrelerinin değerlerini ayarlayın.

    Pirinç. 1.1. İncelenen sistemin blok diyagramı (a) ve Simulink modeli (b)

    Bir blok diyagramı oluşturmak, Simulink Kütüphane Tarayıcı penceresinde gerekli blokları seçip sürükleyerek yapılır.

    modelin oluşturulduğu pencerede fareyi kullanın. Kullanım kolaylığı için tüm bloklar gruplara ayrılmıştır. Bunda laboratuvar işi Sürekli alt gruplara sahip Simulink grup blokları kullanıldı

    (sürekli bağlantılar), Matematik İşlemleri (matematiksel bloklar), Havuzlar (veri alıcıları), Kaynaklar (sinyal kaynakları). Blok adları belirtildi

    incirde. 1.1,b.

    Blok parametrelerinin düzenlenmesi, gerekli blok üzerinde farenin sol tuşuna çift tıklanarak yapılır. Bu, görünümü bloğun türüne bağlı olan bir blok parametreleri penceresi açar.

    Blokları bağlamak için fare imlecini sinyal kaynağı bloğunun çıkışına getirin ve ardından fare düğmesine basıldığında sinyal alıcı bloğunun girişine bağlantıyı çizin. Blokların bağlanması, Ctrl tuşuna basarken farenin sol tuşuyla gerekli blokların seçilmesiyle de yapılabilir. Bir büküm oluşturmak için sağ tarafı belirtmeniz gerekir.

    Fare düğmesini bağlantı musluğunun konumuna tıklayın ve düğme basılıyken musluğu gerekli bloğun girişine sürükleyin.

    Simülasyon sonuçlarının çıktısını almak için sinyal alıcı bloklarını gerekli blokların çıkışlarına bağlamak gerekir (bkz. paragraf 9).

    Gereksiz blokların ve bağlantıların kaldırılması, ilgili nesnenin seçilmesi ve klavyedeki Sil tuşuna basılmasıyla gerçekleşir.

    Bina modelleri ve genel olarak MATLAB ile çalışma hakkında ek bilgi Yardım Masası menüsünde ve içinde bulunabilir.

    6. Oluşturulan modeli kaydedin.

    7. Sayısal model entegrasyon işlemi için parametreleri ayarlayın. Bunu yapmak için model penceresi menüsünde açın Simülasyon-Parametreler. İÇİNDE

    Açılan pencerede hesaplamanın başlangıç ​​ve bitiş saatleri, hesaplamanın doğruluğu ve öğretmenin belirlediği yöntem görüntülenir.

    8. Ortaya çıkan modeli hesaplayın. Simülasyon menüsündeki modelin hesaplamasını (integrasyonunu) Başlat butonu ile başlatmak. Model hesaplama süreci

    pencerenin alt kısmında aşamalı bir ölçekle görüntülenir. Eğer gerekliyse

    önceki aşamaya dönün ve çıkış değişkeninin stabilizasyonunu sağlayacak şekilde hesaplamanın bitiş zamanını değiştirin (geçiş sürecinin sonu).

    9. Hesaplamanın sonunda veri alma bloklarını kullanarak gerekli sonuçları elde edin. Geçici grafiklerin görüntülenmesi ve yazdırılması Kapsam bloğu kullanılarak gerçekleştirilir. Rakamı görüntüle

    modelleme sırasında değişken değerler Display bloğu tarafından gerçekleştirilir.

    Ortaya çıkan grafikleri düzenlemek veya grafik dosyası formatında kaydetmek için Çalışma Alanına çıkış bloklarını yüklemeniz gerekir.

    Bu blokların parametreleri, Değişken adı çıkış değişkeninin adını ve Kaydetme biçimi (Array) veri biçimini gösterir. Daha sonra, MATLAB komut penceresinde veya Yeni M-dosyası menü komutu tarafından çağrılan M-dosyası düzenleyicisinde, grafikleri çizme komutu yazılır. En basit durumda, o

    şu forma sahiptir: arsa(x,y);

    burada x,y çıktı değişkenlerinin adlarıdır.

    Aynı eksenlerde birden fazla grafiği çizerken komut şu biçimi alacaktır: arsa(x,y,x,z,..);

    burada x ortak (bağımsız) değişkenin adıdır, y, z ise bağımlı değişkenlerdir.

    Not: Komut istemine yazılan komutlar Enter tuşuna basıldıktan sonra yürütülür. M düzenleyicide yazılan komutları yürütmek için

    Birkaç değişkenin bir veri alıcı bloğuna çıkışı, sinyalleri ortak bir busMux'ta birleştirmek için bir blok kullanılarak gerçekleştirilir.

    MATLAB'da zaman değişkeni tout olarak gösterilir. Kaydettikten (düzenleyici .m uzantılı bir dosya oluşturur) ve programı çalıştırdıktan (editörün Araçlar menüsündeki Çalıştır komutu) sonra, program Şekil penceresinde bir grafik oluşturur.

    pencere menüsünde bulunan araçlar kullanılarak işlenebilmektedir. Grafik, .fig uzantılı bir dosya olarak kaydedilir (komut

    Grafik penceresinin menü dosyasını kaydedin), bu durumda yalnızca MATLAB'dan veya .bmp, .jpg ve seçtiğiniz diğer uzantılara sahip bir grafik dosyası olarak mevcut olacaktır (grafik penceresinin Dosya menüsünün Dışa Aktar komutu). Sonunda

    Bu durumda grafik, örneğin Word'de yazılmış bir laboratuvar raporu belgesine eklenebilir.

    10. Polinom transfer fonksiyonunu kullanarak logaritmik frekans ve genlik-faz frekans karakteristiklerini (LFC ve AFC) oluşturmak için komutları sırasıyla komut penceresine veya M dosyasına girmelisiniz.

    sistem transfer fonksiyonunun paydası, boşlukla ayrılmış olarak yazılır. İÇİNDE

    bir polinomda iki veya daha fazla katsayı varsa, ikincisi şöyle yazılır: köşeli parantez bir boşluk aracılığıyla. Örneğin, inşa etmek

    Transfer fonksiyonu W (p) = 0,01 p 2 + 5 0,2 p + 1 olan salınım bağlantısının LFC'si,

    şu komutu yazmanız gerekir: bode(tf(5,));

    Modeli kullanarak frekans özelliklerini oluşturmak için Simulink'te Giriş ve Çıkış bloklarını kullanarak sırasıyla giriş ve çıkışı belirtmeniz gerekir.

    İncelenmekte olan modelin doğrusallaştırılması ve LFC veya AFC'sinin oluşturulması. Sözdizimi

    Linmod("model dosya adı")

    bode(A,B,C,D) veya nyquist(A,B,C,D) ızgarası

    burada A,B,C,D, linmod komutunun çalıştırılmasıyla elde edilen sistem durumu uzay matrisleridir; grid, bir koordinat ızgarasını çizmek için kullanılan komuttur.

    11. Bitirdiğinizde tüm pencereleri kapatarak MATLAB'dan çıkın.

    1.3. Çalışma raporunun içeriği

    1. İşin amacı.

    2. İncelenen sistemin parametrelerin sayısal değerleri ile şeması.

    3. Geçici sürecin deneysel olarak elde edilen grafikleri, LFC, AFC.

    4. Güvenlik sorularının yanıtları.

    1.4. Kontrol soruları

    1. MATLAB sistemi nedir ve kapsamı nedir?

    2. Simulink ne tür modellerle çalışabilir?

    3. Simulink'te blok diyagram nasıl oluşturulur?

    4. Simulink'te blok parametrelerini nasıl girer ve düzenlersiniz?

    5. MATLAB'da LFC ve AFC sistemi nasıl oluşturulur?

    6. Geçici grafikler nasıl yazdırılır?

    LABORATUVAR ÇALIŞMASI No. 2 TİPİK ANA ÖZELLİKLERİNİN ÇALIŞMASI

    DİNAMİK BAĞLANTILAR

    Çalışmanın amacı Geçiş fonksiyonu, genlik-faz ve

    Periyodik olmayan, gerçek farklılaşan ve salınımlı bağlantıların logaritmik frekans özellikleri.

    2.1. Temel bilgiler ACS'nin tipik dinamik bağlantıları,

    sabit katsayılı birinci ve ikinci dereceden doğrusal diferansiyel denklemlerle tanımlanan ve genel durumda aşağıdaki forma sahip olan:

    gün 2 yıl

    a0 y= b2

    d 2x

    B0x,

    burada x (t),y (t) sırasıyla bağlantının giriş ve çıkış sinyalleridir;a 0,a 1,a 2;b 0,b ​​​​1,b 2 sabit katsayılardır.

    Bu denklem, formdaki tipik bir bağlantının transfer fonksiyonunu belirlemeyi mümkün kılar.

    W(p)=

    y(p)

    b p2 + b p+ b

    x(p)

    bir p2

    bir p +

    Analiz olası seçenekler Transfer fonksiyonunun (2.2) katsayılarının ayarlanması, sıfır ve birinci dereceden tipik bağlantılara göre,

    onlar. a 2 = b 2 = 0 ile (2.1) formundaki denklemlerle açıklanan bağlantılar aşağıdakileri içerir

    1. Ataletsiz bağlantı (1 = b 1 = 0 ile)

    W (p) = b 0 = k. a0

    2. Farklılaştırıcı bağlantı (1 = b 0 = 0 ile)

    W(p)=

    b 1 p =

    kp,

    burada k =

    3. Bağlantıyı zorlama (1 = ile)

    W(p)=

    b1p+

    b 0 =

    k (Tp + 1) , burada k =

    b1.

    4. Entegre bağlantı (0'da)

    B1 =0)

    W(p)=

    burada k =

    b 0 .

    Birinci dereceden periyodik olmayan bağlantı (b 1 = 0'da)

    W(p)=

    burada k =

    bir p +

    Tp+1

    Gerçek ayırt edici bağlantı (b 0 = 0'da)

    W(p)=

    burada k =

    bir p +

    Tp+1

    Tipikten

    ikincinin bağlantıları

    en iyi uygulamayı buldu

    b 1 = b 2 = 0'da aşağıdaki formda bir transfer fonksiyonuna sahip salınım bağlantısı:

    W(p)=

    burada k =

    ; T=

    ; ξ =

    bir p + bir

    2ξ Tp +1

    Birinci ve ikinci dereceden tipik dinamik bağlantıların dikkate alınan kümesinin, hemen hemen her doğrusal otomatik kontrol sisteminin yapısını oluşturmak için yeterli olduğu ortaya çıktı. Bu durumda, karmaşık gerçek bağlantılar sıralı veya paralel bağlantı birkaç standart bağlantı.

    Zamansal özellikler, incelenen bağlantıların birim adım fonksiyonu 1(t) ve δ-fonksiyonu δ(t) formundaki tipik etkilere karşı tepkilerini temsil eden birbirine bağlı geçiş h(t) ve ağırlık ω(t) fonksiyonlarıdır. burada geçiş fonksiyonu ani girdi etkileri altında incelenen bağlantılarda meydana gelen kontrol süreçlerinin istikrarını ve kalitesini değerlendirmeyi mümkün kılar.

    Fourier dönüşümünün kullanımına dayanan frekans özellikleri, bağlantılarda meydana gelen kontrol işlemlerinin yalnızca adım adım değil, aynı zamanda gerçek koşullarda çalışan diğer giriş sinyalleriyle de değerlendirilmesini mümkün kılar.

    Bu durumda, herhangi bir giriş sinyali x (t), belirli bir sinyale karşılık gelen belirli genlik ve fazlara sahip farklı frekanslardaki harmoniklerin toplamı ve giriş harmoniklerinin toplamına verilen yanıt olarak temsil edilir; çıkış sinyali (t), her birine verilen reaksiyonların toplamına eşittir.

    Doğrusal bir bağlantının girişindeki ayrı bir harmonik için x (t) = x 0 (ω) × e j ω t

    reaksiyon, zorlanmış ve geçiş bileşenlerinin bir kombinasyonu olacak, ikincisi bir süre sonra sönecek ve bağlantının çıkışında giriştekiyle aynı frekansta sinüzoidal bir sinyal oluşturulacak, yani.

    y (t) = y 0 (ω) × e j (ωt + ϕ(ω)).

    Bir bağlantının çeşitli frekanslardaki harmoniklere tepkisi, aşağıdaki gibi belirlenen, bağlantının genlik-faz frekans tepkisi (APC) olan karmaşık iletim katsayısı ile karakterize edilir.

    1. Genel bilgiler 5
    2. Simulink 5'i başlatın
    3. Simulink 6 Kütüphane Bölümü Tarayıcısı
    4. Model 8'in Oluşturulması
    5. Model 10 penceresi
    6. Model hazırlama ve düzenleme için temel teknikler 11
    6.1. Metin başlıklarını ekleme 11
    6.2. Nesneleri seçme 12
    6.3. Nesneleri hazırlama arabelleklerine kopyalama ve taşıma 12
    6.4. Aşamalandırma arabelleğinden nesneler ekleme 12
    6.5. Nesneleri silme 12
    6.6. Bağlantı blokları 13
    6.7. Blok boyutlarını değiştirme 14
    6.8. Blokları taşıma 14
    6.9. Geri Al ve Yinele Komutlarını Kullanma 14
    6.10. Nesneleri biçimlendirme 14
    7. Hesaplama parametrelerinin ayarlanması ve yapılması 15
    7.1. Model hesaplama parametrelerini ayarlama 15
    7.1.1. Simülasyon süresi 15
    7.1.2. Çözücü seçenekleri 15
    7.1.3. Çıkış seçenekleri 16
    7.2. Çalışma alanı 16 ile değişim parametrelerinin ayarlanması
    7.3. Model 18 için teşhis parametrelerinin ayarlanması
    7.4. Hesaplamanın yapılması 19
    8. Kapatma 19
    9. Simulink 19 Blok Kütüphanesi
    9.1. Kaynaklar - sinyal kaynakları 19
    9.1.1. Sabit sinyal kaynağı Sabit 19
    9.1.2. Sinüs Dalgası Kaynağı 20
    9.1.3. Rampa kaynağı Rampa 21
    9.1.4. Adım 22 Sinyal Üreteci
    9.1.5. Sinyal Üreteci 23
    9.1.6. Kaynak rastgele sinyal düzgün dağılımlı Düzgün Rastgele Sayı 23
    9.1.7. Rastgele sinyal kaynağı normal dağılım Rastgele Sayı 24
    9.1.8. Darbe Jeneratörü 24 kaynağı
    9.1.9. Cıvıltı Jeneratörü 25
    9.1.10. Beyaz gürültü üreteci Bant Sınırlı Beyaz Noice 25
    9.1.11. Zaman kaynağı Saat 26
    9.1.12. Dijital zaman kaynağı Dijital Saat 27
    9.1.13. Dosyadan veri okunmasını engelle Dosya 27'den
    9.1.14. Çalışma alanından veri okunmasını engelle Çalışma Alanı 28
    9.1.15. Sıfır seviye sinyal bloğu Toprak 29
    9.1.16. Tekrarlanan Sıra Bloğu 29
    9.1.17. 30 Giriş Bağlantı Noktası Bloğunu İçe Aktar
    9.2. Lavabolar - sinyal alıcıları 31
    9.2.1. Osiloskop Kapsamı 31
    9.2.2. Osiloskop Yüzer Kapsam 36
    9.2.3. Grafik çizici XU Grafik 37
    9.2.4. Dijital ekran Ekran 38
    9.2.5. Simülasyon bloğunu durdur 39
    9.2.6. Dosyaya veri kaydetme bloğu Dosyaya 40
    9.2.7. Çalışma alanında veri saklama bloğu Çalışma Alanına 40
    9.2.8. Terminatör 41 uç alıcısı
    9.2.9. 41 Blok Dışa Aktarma
    9.3. Sürekli – analog bloklar 43
    9.3.1. Türev hesaplama bloğu Türev 43
    9.3.2. Blok Entegratörünü entegre etme 44
    9.3.3. Bellek 48 blok
    9.3.4. Sabit sinyal gecikmesi bloğu Aktarım Gecikmesi 49
    9.3.5. Kontrollü sinyal gecikme bloğu Değişken Aktarım Gecikmesi 50
    9.3.6 Transfer fonksiyon bloğu Transfer Fcn 51
    9.3.7. Sıfır Kutuplu Transfer Fonksiyon Bloğu 53
    9.3.8. Durum Uzayı 54 dinamik nesne modeli bloğu
    9.4. Ayrık – ayrık bloklar 55
    9.4.1. Birim Gecikmesi 55 birim ayrık gecikme bloğu
    9.4.2. Sıfır Dereceli Tutma Ekstrapolatör Bloğu 56
    9.4.3. Birinci dereceden ekstrapolatör bloğu Birinci Dereceden Tutma 57
    9.4.4. Ayrık Zaman Entegratör Bloğu 57
    9.4.5. Ayrık transfer fonksiyonu Ayrık Transfer Fсn 59
    9.4.6. Ayrık Sıfır Kutuplu 60 Ayrık Transfer Fonksiyon Bloğu
    9.4.7. Ayrık Filtre Bloğu 61
    9.4.8. Ayrık Durum-Uzay 62 dinamik nesne modeli bloğu
    9.5. Doğrusal olmayan - doğrusal olmayan bloklar 63
    9.5.1. Doygunluk 63 limit bloğu
    9.5.2. Ölü bölgeli blok Ölü Bölge 64
    9.5.3. Röle bloğu Röle 65
    9.5.4. Sinyal değişim hızını sınırlamak için blok Hız Sınırlayıcı 66
    9.5.5. Seviyeye göre niceleme bloğu Quantizer 67
    9.5.6. Kuru ve viskoz sürtünme bloğu Coulomb ve Viskoz Sürtünme 68
    9.5.7. Boşluk bloğu 69
    9.5.8. Anahtar bloğu Anahtar 70
    9.5.9. Çok Bağlantı Noktalı Anahtar Bloğu 71
    9.5.10. Manuel Anahtar Ünitesi 72
    9.6. Matematik – matematiksel işlem blokları 73
    9.6.1. Abs 73 modül hesaplama bloğu
    9.6.2. Toplam hesaplama bloğu Toplam 74
    9.6.3. Çarpma bloğu Çarpım 75
    9.6.4. Sinyal işareti belirleme bloğu İşaret 76
    9.6.5. Kazanç ve Matris Kazancı 77 Amplifikatör
    9.6.6. Kaydırıcı Kazancı 79
    9.6.7. Nokta Çarpımı 80 Skaler Çarpma Bloğu
    9.6.8. Matematiksel fonksiyonların hesaplanması için blok Matematik Fonksiyonu 80
    9.6.9. Trigonometrik fonksiyonları hesaplama bloğu Trigonometrik Fonksiyon 82
    9.6.10. Karmaşık bir sayının gerçek ve/veya sanal kısmını hesaplamak için blok Gerçek Görüntüye 82
    9.6.11. Kompleksten Büyüklük Açısına 83 karmaşık bir sayının modülünü ve (veya) bağımsız değişkenini hesaplamak için blok
    9.6.12. Karmaşık bir sayının gerçek ve sanal kısımlarından Real-Imag'den Kompleks 84'e kadar hesaplanması için blok
    9.6.13. Karmaşık bir sayıyı modülü ve bağımsız değişkeni ile hesaplamak için blok Büyüklük-Açıdan Kompleks 85'e
    9.6.14. Minimumun belirlenmesi için blok veya maksimum değer MinMaks 85
    9.6.15. Sayısal bir değeri yuvarlamak için blok Yuvarlama Fonksiyonu 86
    9.6.16. İlişkisel işlemi hesaplama bloğu İlişkisel Operatör 87
    9.6.17. Mantıksal İşlem Bloğu 88
    9.6.18. Bit düzeyinde mantıksal işlemler bloğu Birwise Mantıksal Operatör 89
    9.6.19. Kombinatoryal mantık bloğu Gombinatorical Logic90
    9.6.20. Cebirsel Kısıtlama 91 bloğu
    9.7. Signal&Systems - sinyal dönüştürme blokları ve yardımcı bloklar 92
    9.7.1. Çoklayıcı (karıştırıcı) Mux 92
    9.7.2. Çoğullayıcı (ayırıcı) Demux 93
    9.7.3. Bus Creator 95 veri yolu sürücüsü bloğu
    9.7.4. Otobüs Seçici 96
    9.7.5. Seçici blok 97
    9.7.6. Dizi elemanlarına yeni değerler atamak için blok Ödev 98
    9.7.7. 99 Sinyal Birleştiriciyi Birleştir
    9.7.8. Sinyalleri bir matriste birleştirmek için blok Matris Birleştirme 100
    9.7.9. Goto 101 sinyal iletim ünitesi
    9.7.10. Sinyal alma bloğu 102'den itibaren
    9.7.11. Sinyal görünürlüğü bloğu Goto Etiket Görünürlüğü 102
    9.7.12. Ortak hafıza alanı oluşturma bloğu Veri Depolama Belleği 103
    9.7.13. Ortak hafıza alanı Veri Deposu 103'e veri yazma bloğu
    9.7.14. Ortak hafıza alanı Veri Deposundan veri okumak için blok 103
    9.7.15. Sinyal Tipi Dönüşüm Bloğu Veri Tipi Dönüşümü 104
    9.7.16. Sinyal boyutu dönüştürme bloğu Yeniden Şekillendirme 105
    9.7.17. Sinyal boyutunun belirlenmesi için blok Genişlik 105
    9.7.18. Eşik değerini geçme anını belirleme bloğu Vuruş Geçişi 106
    9.7.19. IC 107 sinyalinin başlangıç ​​değerini ayarlamak için blok
    9.7.20. Sinyal Spesifikasyonu 107 Sinyal Test Bloğu
    9.7.21. Probe 108 Sinyal Özellikleri Sensörü
    9.7.22. Yineleme sayısını belirten blok İşlev Çağrısı Oluşturucu 109
    9.7.23. Bilgi bloğu Model Bilgisi 110
    9.8. Fonksiyon ve Tablolar – fonksiyon ve tablo blokları 111
    9.8.1. Fonksiyon ayar bloğu Fcn 111
    9.8.2. MATLAB Fcn 112 Fonksiyon Tanımlayıcı Bloğu
    9.8.3. Güç polinomunu belirleme bloğu Polinom 113
    9.8.4. Tek boyutlu tablo bloğu Arama Tablosu 113
    9.8.5. Arama Tablosu(2D) bloğu 114
    9.8.6. Çok boyutlu tablo bloğu Arama Tablosu (n-D) 115
    9.8.7. Doğrudan Döngülü Masa Bloğu (n-D) 116
    9.8.8. Dizinlerle çalışma bloğu Ön Arama Dizin Araması 117
    9.8.9. Tablo fonksiyonu enterpolasyon bloğu PreLook-Up 118 kullanılarak enterpolasyon (n-D)
    9.9. Alt sistem – alt sistemler 119
    9.9.1. Sanal ve monolitik alt sistemler Alt Sistem ve Atomik Alt Sistem 121
    9.9.2. Etkinleştirilmiş Alt Sistem 121
    9.9.3. Kenar Kontrollü Tetiklemeli Alt Sistem 123
    9.9.4. Etkinleştirilen ve Tetiklenen Alt Sistem 124
    9.9.5. S işlevi kontrollü alt sistem İşlev çağrısı alt sistemi 125
    9.9.6. Koşullu ifade bloğu If 125
    9.9.7. Anahtar Kutusu 126
    9.9.8. Koşullu Eylem Alt Sistemi 127
    9.9.9. Yineleyici Alt Sistemi İçin Yönetilen Alt Sistem 127
    9.9.10. Yineleyici Alt Sistemi 129 iken
    9.9.11. Yapılandırılabilir Alt Sistem 130
    9.10. Alt sistemleri maskeleme 131
    9.10.1. Genel bilgiler 131
    9.10.2. Seçenekler Penceresi Oluşturma 132
    9.10.3. Alt sistem simgesi oluşturma 136
    9.10.3.1. Metin çıkışı komutları 137
    9.10.3.2. Komutların Grafiklenmesi 138
    9.10.3.3. Transfer Fonksiyonu Ekran Komutları 139
    9.10.3.4. Bir grafik dosyasından resim görüntüleme komutları 139
    9.10.3.5. iconedit simge düzenleyicisini kullanma 140
    9.10.3.6. Otomatik olarak güncellenen simgeler oluşturma 141
    9.10.4. Maskelenmiş bir alt sistem için yardım oluşturma 142
    9.10.5. Dinamik Olarak Güncellenen İletişim Kutuları Oluşturma 144
    9.10.6. Maskelenmiş alt sistem bağlantı noktası yönetimi 146
    10. Diferansiyel denklem editörü DEE 150
    11. Dinamik sistemleri analiz etmek için Simulink LTI-Viewer'ı kullanma 153
    11.1. Simulink LTI-Viewer 153 ile Çalışmak
    11.2. Simulink LTI-Viewer 156 ile Yapılandırma
    11.3. Model 159'u Dışa Aktarma
    12. Simulink modelini kontrol etmek için temel MATLAB komutları 160
    12.1. add_block 160
    12.2. add_line 161
    12.3. add_param 161
    12.4. bdclose 161
    12.5. kök kök 162
    12.6. close_system 162
    12.7. delete_block 162
    12.8. sil_satırı 163
    12.9. delete_param 163
    12.10. gcb 163
    12.11. gcs 163
    12.12. find_system 164
    12.13. get_param 166
    12.14. yeni_sistem 167
    12.15. açık_sistem 167
    12.16. değiştir_blok 167
    12.17. save_system 168
    12.18. set_param 168
    12.19. simulink 169
    13. Hata ayıklayıcı Simulink modelleri 169
    13.1. GUI Simulink hata ayıklayıcı 169 model
    13.1.1. Araç Çubuğu 170
    13.1.2. Kontrol noktalarının listesi Kırılma/Görüntüleme noktaları 171
    13.1.3. Koşullara göre kırılma noktalarını ayarlamak için panel Koşullara göre kırılma 171
    13.1.4. Hata ayıklayıcı ana penceresi 173
    14. Hesaplamaların hızını ve doğruluğunu arttırmak 177
    14.1. Hesaplama hızını artırma 178
    14.2. Hesaplama doğruluğunu iyileştirme 179
    15. Simulink Performans Araçları 179 Genel Bakış
    15.1. Simulink Hızlandırıcı 180
    15.2. Simulink Model Profili Oluşturma 180
    15.3. Simulink Model Kapsamı 181
    15.4. Simulink Model Farkı 182
    16. Simulink fonksiyonları 183
    16.1. S-fonksiyon bloğu 184
    16.2. S fonksiyonunun matematiksel açıklaması 184
    16.3. Modelleme aşamaları 185
    16.4. S işlevlerinin geri çağırma yöntemleri 185
    16.5. S fonksiyonunun temel kavramları 186
    16.6. MATLAB 187'de S-Fonksiyonları Oluşturma
    16.7. MATLAB 193'teki S fonksiyonları örnekleri
    16.7.1. En basit S-fonksiyonu 193
    16.7.2. Sürekli sistem modeli 195
    16.7.3. Ayrık sistem modeli 198
    16.7.4. Hibrit sistem modeli 202
    16.7.5. Değişken hesaplama adımlı ayrık bir sistemin modeli ????
    16.7.6. Bağımsız uyarma DC elektrik motorunun sürekli modeli 206
    16.7.6.1. DPT NV 206'nın matematiksel açıklaması
    16.7.6.2. DPT NV 208 için S fonksiyonu örneği
    16.8. S-Function Builder 212'yi Kullanarak C'de S-Fonksiyonları Oluşturma
    16.9. S-Function Builder 221 ile Oluşturulan S-Function'ların Modernleştirilmesi
    16.10. S-fonksiyonları oluşturma Fortran dili 239
    Ek 1. Simulink 244 Kütüphane Tarayıcı Menü Sistemi
    Ek 2. Model 245 Pencere Menü Sistemi

    1. Genel bilgiler

    programı Simulink pakete bir eklentidir MATLAB. kullanarak modelleme yaparken Simulink Kullanıcının standart bloklardan oluşan bir kütüphaneden ekranda bir cihaz modeli oluşturduğu ve hesaplamalar yaptığı görsel programlama ilkesi uygulanır. Aynı zamanda, klasik modelleme yöntemlerinden farklı olarak, kullanıcının programlama dilini ve matematiğin sayısal yöntemlerini derinlemesine incelemesine gerek yoktur, bunun yerine bilgisayarda çalışırken gerekli olan genel bilgi ve doğal olarak çalıştığı konu alanına ilişkin bilgi birikimine sahip olması gerekir. İşler.

    Simulink oldukça bağımsız bir araçtır MATLAB ve onunla çalışırken kendinizi tanımanıza gerek yok ^ MATLAB ve diğer uygulamaları. Öte yandan işlevlere erişim MATLAB ve diğer araçları açık kalır ve kullanılabilir Simulink. Dahil edilen paketlerin bazılarında yerleşik araçlar bulunur Simulink(Örneğin, LTI Görüntüleyici uygulamalar Kontrol Sistemi Araç Kutusu – kontrol sistemlerinin geliştirilmesi paketi). Farklı uygulamalar için ek blok kütüphaneleri de mevcuttur (örn. Güç Sistemi Blok Seti– elektrikli cihazların modellenmesi, Dijital Sinyal İşleme Blok Seti– dijital cihazların vb. geliştirilmesine yönelik bir dizi blok).

    İle çalışırken Simulink Kullanıcı, kütüphane bloklarını yükseltme, kendi bloğunu oluşturma ve ayrıca yeni blok kütüphaneleri oluşturma fırsatına sahiptir.

    Modelleme sırasında kullanıcı diferansiyel denklemleri çözme yöntemini ve model süresini değiştirme yöntemini (sabit veya değişken adımla) seçebilir. Simülasyon sırasında sistemde meydana gelen süreçleri izlemek mümkündür. Bu amaçla kütüphanede yer alan özel izleme cihazları kullanılmaktadır. Simulink. Simülasyon sonuçları grafikler veya tablolar şeklinde sunulabilir.

    Avantaj Simulink aynı zamanda, dilde yazılmış alt yordamları kullanarak blok kitaplıklarını yenilemenize olanak sağlamasıdır MATLAB, ve dillerde C++, Fortran Ve Ada.

    ^2. Simulink'in Çalıştırılması

    Programı çalıştırmak için önce paketi çalıştırmalısınız MATLAB. Ana paket penceresi MATLABŞekil 2'de gösterilmiştir. 2.1. Ayrıca fare işaretçisini kısayolun üzerine getirdiğinizde pencerede görünen bir ipucu da vardır. Simulink araç çubuğunda.

    Şekil 2.1. Ana program penceresi MATLAB

    Ana program penceresini açtıktan sonra MATLAB programı çalıştırmam gerekiyor Simulink. Bu üç yoldan biriyle yapılabilir:

    Son seçenek, yalnızca hesaplamalar yapmanız gerektiğinde ve modele yeni bloklar eklemeniz gerekmediğinde, hazır ve hata ayıklanmış bir modeli başlatmak için kullanılması uygundur. Birinci ve ikinci yöntemlerin kullanılması Kütüphane Bölümü Tarayıcı penceresinin açılmasına yol açar Simulink(Şekil 2.2).

    Şekil 2.2. Kütüphane Bölümü Tarayıcı Penceresi Simulink

    Mekanik sistemlerin paket halinde modellenmesi

    MATLAB, üst düzey bir teknik hesaplama dili, etkileşimli bir algoritma geliştirme ortamı ve modern bir veri analiz aracıdır.

    Simulink, yönlendirilmiş grafikler biçimindeki blok diyagramları kullanarak ayrık, sürekli ve hibrit, doğrusal olmayan ve süreksiz sistemler de dahil olmak üzere dinamik modeller oluşturmaya olanak tanıyan bir grafik simülasyon modelleme ortamıdır.

    Simscape, çeşitli fiziksel yapıdaki nesnelerin modellenmesine yönelik ana Simulink kütüphanesidir. Ölçü birimlerini dikkate alarak devre şemaları, elemanlar ve bağlantılar, gerçek fiziksel büyüklükler biçiminde hibrit çok alanlı nesnelerin modellerini oluşturmanıza olanak tanır.

    Simscape, elektriksel, mekanik ve hidrolik nesnelerin Simulink simülasyonunun temelini oluşturur. Kütüphane özel paketler SimMechanics, SimDriveline, SimHydraulics ve

    geliştirme de dahil olmak üzere çeşitli analiz görevleri için karmaşık hibrit çok alanlı nesnelerin modellerini oluşturmanıza olanak tanır dijital sistemler yönetmek.

    Simulink'e Başlarken

    MATLAB'ı başlattığımızda aşağıdaki gibi bir pencere görüyoruz:

    Burada herhangi bir şeyi nasıl yapabileceğiniz henüz belli değil ama bu çok kullanışlı bir pencere. Kesinlikle biraz sonra geri döneceğiz, ama şimdilik işimize dönelim. Yapmamız gereken ilk şey çalışacağımız klasörü seçmek.

    “Geçerli Klasör” penceresinin sağındaki üç noktaya tıklayın ve beğendiğiniz ilk klasörü seçin (oluşturun). Elbette C:\Vasya\temporary11\123\... gibi bir şey olacak.

    Matlab ve Simulink'teki en ilginç şeyin hataları bulmak olduğunu hemen belirtmek isterim. Onunla bir aydan, hatta bir yıldan fazla zaman geçirebilirsiniz. Ancak hatalar farklıdır... Bazı karmaşık modelleri bir araya getirmek için uzun zaman harcayabilir ve ısrarla bir araya getirebilirsiniz, onu birleştirdikten sonra kaydetmeyi deneyebilir ve hatanın içeriğinin birkaç cümleyle açıklandığı bir pencere almayı deneyebilir ve hatta bir bağlantı sağlayabilirsiniz. daha ayrıntılı bir rapor... Bu durumda, diyagramı birkaç kez yeniden oluşturabilir, Matlab'ı yeniden yükleyebilir, Windows'u yıkabilirsiniz, ancak her şey işe yaramaz... Ancak gerçekte, Simulink penceresinde bir yere basitçe bir Rusça harf veya kelime.

    Bu nedenle hemen ana kuralı öğrenelim -

    MATLAB Rus düşmanı bir programdır. Kiril alfabesini hiçbir şekilde sindirmiyor. Adreste değil, pencerelerde değil, değişkenlerde değil, HİÇBİR YERDE!

    Bu nedenle projelerimizi “C:\Vasya\temporary11\123\” adresine kaydetmeyi hemen unutup şöyle bir klasör seçiyoruz.

    "C:\Vasya\Temp11\123\".

    Harika, artık çalışmaya başlayabilirsiniz.

    “Dosya-Yeni-Model”e tıklayın. Aşağıdaki pencere görünür:

    Harika, Matlab komut satırından daha kullanıcı dostu bir şey. Sezgisel olarak buranın bir şeyler çizmeniz gereken bir alan olduğu çok açık... Çünkü. Fare ile çizim yapamıyorum o yüzden kırmızı-mavi-yeşil “Kütüphane Tarayıcısı” butonuna tıklayalım. Simulink eleman kütüphanesi açılacaktır:

    Sunulan kütüphanelerin bolluğuna hâlâ hayret ediyorum. Birçoğunun amacı hala benim için geçerli

    bir gizem. En basitinden başlayacağız. Salınımlı bir bağlantının bir diyagramını bir araya getirelim, bir "adım" etkisi altındaki geçici sürece ve hatta LFC'li LAC'a bakalım.

    Bunu yapmak için bir “adım” kaynağına, transfer fonksiyonunun kendisine ve geçici sürece bakacağımız bir pencereye ihtiyacımız var.

    Tüm bu unsurları Simulink kütüphanesinde bulmanızı öneririm, böylece şöyle bir şey elde edersiniz:

    Umarım kütüphanede salınımlı bir bağlantı aramamışsınızdır? Simulink'te, paydaya ve paya herhangi bir katsayıyı girebileceğiniz basit bir transfer fonksiyonu vardır (asıl mesele, payın sırasının paydanın sırasından küçük olmasıdır). Ancak bunun hakkında daha fazlası aşağıda.

    Şimdi tüm bu bağlantıları birbirine bağlamaya çalışacağız. Bunu basitçe fareyi bir oktan diğerine sürükleyerek yapabilirsiniz ve eğer yorulursanız sol tuşla bir blok seçip ardından Ctrl tuşunu basılı tutarak başka bir bloğa tıklayabilirsiniz.

    Harika. Şimdi bu blokları tek tek yapılandırmanız gerekiyor… Adım hakkında söylenecek bir şey yok, orada her şey açık, her şeyi varsayılan olarak bırakalım: başlangıç ​​zamanı 1 s, başlangıç ​​değeri 0, son değeri 1.

    Transfer fonksiyonuyla daha ilginç. Salınımlı bir bağlantı kuracağımızı hatırlatmama izin verin. Ben şahsen bunu şu şekilde görmeye alışkınım:

    simulink ise payda ve pay katsayılarını hemen sağlamamızı gerektirir. Elbette kağıt üzerinde hızla çoğaltabilirsiniz

    zaman sabiti ve sönüm katsayısı, ama bu ciddi değil... Değişkenleri kullanmayı öğrensek iyi olur.

    Simulink'te değişkenleri yönetmenin en az 2 yolu vardır. Bunları en başta gördüğümüz Matlab komut satırına yazmaya alışkınım. O zaman şöyle bir şey elde edeceksiniz:

    Gördüğünüz gibi değerler hemen Workspace'e girildi ve artık bunları simülasyonun herhangi bir penceresine serbestçe girebiliyor ve onlarla her türlü işlemi gerçekleştirebiliyoruz. Daha sonra bunları tek bir dosyaya kaydedebilir (Çalışma Alanını Farklı Kaydet...) ve gerekirse yükleyebilirsiniz.

    Başka bir seçenek de aynısını Model Explorer aracılığıyla yapmaktır. “Kütüphane Tarayıcısı” düğmesinin yanındaki büyüteçli düğmeye tıklayın ve aşağıdaki pencereyi alın:

    Gördüğünüz gibi sadece genel bir Çalışma Alanı değil, aynı zamanda modelin kendisine ait bir Çalışma Alanı da bulunmaktadır. Genel olarak, tüm değişkenleri orada ayarlayabilirsiniz ve ardından modelle birlikte otomatik olarak yüklenirler, ancak yine de ayrı bir dosyada saklanan global değişkenlerin daha doğru olduğuna inanma eğilimindeyim. Beni sıkıcı bulabilirsin

    Yani herhangi bir şekilde T=0,1 (salınımlı bağlantının zaman sabiti) ve d=0,3 (sönümleme katsayısı) değerlerini kullanıyoruz.

    Şimdi transfer fonksiyonu penceresinde geriye kalan tek şey her şeyi gerektiği gibi çarpmak:

    İşte bu, artık nihayet hesaplamaya başlayabilirsiniz. “Oynat”a, ardından Kapsam penceresinde, ardından “atvoscale”e (dürbün) tıklayın. Sonucu analiz etme zamanı. Sonuç, yaklaşık 3 saniye sonra sona eren salınımlı bir sürece benzer, ancak biraz açısaldır. Peki öncelikle simülasyon süresini 10 saniyeden 3 saniyeye düşürelim (“oynat” ve “durdur” butonlarının sağında) ve daha yakından bakalım:

    Yüzün özellikle tepe bölgesinde bir miktar açısallık vardır. Matlab komut satırından "Varsayılan maksimum adım o kadar çok seçilmiş ki, eğer gerçekten her şey yanlışsa oraya tıklayarak beni susturabilirsiniz" şeklinde bir şikayet yayınladı. Bizde her şey yolunda değil.

    Simulink çözücülerle tanışmanın zamanı geldi. Tıklamak

    “Simülasyon - Konfigürasyon Parametreleri...”:

    Çeşit çeşit menü ve alanların bolluğu karşısında yine gözlerim fal taşı gibi açıldı. Hadi anlamaya çalışalım. Şimdi öncelikle çözücüyle ilgileniyoruz. Burada diferansiyel denklemleri çözmek için hangi yöntemi kullanacağımızı seçiyoruz (evet, simülasyon alanına koyduğumuz bloklar aslında difüzörlerdir ). Her şeyden önce, bunun ne tür bir yöntem olacağına karar veriyoruz - sabit bir adımla mı yoksa değişken bir adımla mı? Herhangi bir karmaşıklığa sahip bir difüzör sisteminin, adımı azaltarak Euler yöntemiyle çözülebileceğine dair bir görüş var Bu, 5 saniye süren geçici sürecimizde, adımlarla hesaplanması gereken 0,1 saniye süren bir an olduğu anlamına gelir. 0,1 milisaniye kadar (örneğin, hidrolik silindir çubuğunun durma noktasına çarpması) hidrolik silindir sessizce hareket ederken kalan 4,9 saniyeyi 0,1 milisaniyelik artışlarla hesaplamamız gerekecektir. Bu durumda hesaplama süresi kat kat artmakta ve ciddi sorunlarda birkaç saate kadar çıkabilmektedir. Bu nedenle iyi matematikçiler değişken adımlı algoritmalar geliştirdiler. Onlar. Kritik anlarda çözücü, adımı gerektiği kadar azaltarak dağınıklıkları çözer ve her şey "sakin" olduğunda adımı artırarak zamandan tasarruf sağlar.

    Difüzörleri sabit bir adımla çözmenin gerekli olduğu durumlar vardır, ancak çoğu durumda değişken bir adım yine de çok daha iyidir.

    Bir sonraki menü çözücünün kendisidir. Bu genel olarak derin bir lanettir, çok fazla dalmayacağız, kısaca üzerinden geçelim. Yardım Matlab çok

    Ode45 çözücüyü zaten öneriyorum. Orada verilen tablolardan bunun en doğru olduğu anlaşılmaktadır. Tek bir uyarıyla. Eğer işimiz zor değilse. Sertlik derken, durumdaki inanılmaz sertliğin içeriğini değil, matımızın difüzörlerinin sertliğini veya yumuşaklığını kastediyoruz. modeller. Ve aralarındaki çizgi de oldukça bulanık. Aynı difüzör katsayılara bağlı olarak sert olabilir veya sert olmayabilir. Bizim durumumuzda bunlar sistemin çeşitli elemanlarının zaman sabitleridir. Eğer bunlar birkaç büyüklük düzeyinde farklılık gösterirse (iyi bir EGU'nun zaman sabiti ve kötü bir hidrolik silindir gibi), o zaman büyük olasılıkla ode45 gibi katı olmayan bir çözücü çıldıracak ve bize mega-ıraksak bir geçici süreç verecektir. Bu durumda, s (sert) harfiyle işaretlenmiş katı çözücüler kullanmanız gerekir. Burada en doğru çözücü ode15s.

    Özetlemek. Önemsiz sorunları ode45 ile çözüyoruz, açıkça farklı zaman sabitlerine sahip sistem elemanlarıyla ilgili sorunları (yerel hidrolik tahriklerimiz gibi), ode15'lerle çözüyoruz. Hiçbir şey işe yaramazsa, 4. sıradaki Runge-Kutta yöntemini (ode4) 0,1 μs'lik bir adımla ayarlayın ve bilgisayarı gece boyunca hesaplamaya bırakın

    Hadi devam edelim. Ve sonra her şey çok daha basit... Sadece maksimum, minimum ve başlangıç ​​adımlarını seçmeniz gerekiyor. Matlab'ın maksimum adımdan şikayetçi olduğunu hatırlıyoruz, bu yüzden güvenli tarafta olmak için değeri 0,001 s olarak ayarladık. Şimdi, çözücü yolda karmaşık hiçbir şey olmadığını düşünse bile yine de 1 ms'yi aşmayan bölümleri sayacaktır.

    Tamam'a tıklayın ve ardından oynayın. Sonucu görelim:

    Başka bir şey. Her şey düzgün ve Matlab artık şikayetçi değil. Artık onu birinin DZ'sine bile ekleyebilirsiniz

    Bu arada, grafikler hakkında sadece birkaç söz. Yazıcı düğmesinin yanında, örneğin eksen sayısını yapılandırabileceğiniz bir "Parametreler" düğmesi vardır. Bu durumda Kapsam penceresinde birden fazla giriş olacak ve grafikler birbirinin altında yer alacaktır. Birden fazla grafiği tek bir grafik üzerine yerleştirmek için Mux bloğunu kullanmanız gerekir.

    Bu durumda, birden fazla sinyal tek bir Kapsama gönderilebilir ve bunlar pencerede farklı renklerde görüntülenir.

    Şimdi logaritmik genlik ve faz özelliklerinin nasıl oluşturulacağını bulalım. Bu, Simulink'te aynı yerde bulunan “Kontrol Tasarımı” uzantısı kullanılarak yapılır.