Skip to main content

Durum Makinesi

Olay odaklı sistemleri basitleştirilmiş grafik biçiminde temsil edin

 

Durum makinesi (veya sonlu durum makinesi), değişikliği kontrol eden koşul karşılanırsa bir durumdan diğerine geçiş yapan, olay odaklı, reaktif bir sistemin temsilidir. Durum makineleri geleneksel olarak bilgi işlem sistemlerini tanımlamak için kullanılıyordu ancak uçak, otomobil, robotlar ve cep telefonları gibi dinamik sistemlerde karmaşık mantığı modellemek için genişletildi.

Karmaşık mantık içeren işlem örnekleri şunları içerir:

  • Bir sistem için bir dizi görev veya adım planlama
  • Arıza tespiti, izolasyon ve kurtarma mantığını tanımlama
  • Farklı çalışma modları arasında nasıl geçiş yapılacağının denetlenmesi

Bir durum makinesini ifade etmenin birçok yolu vardır, ancak en yaygın olanı grafiksel bir yaklaşımdır. Durum diyagramı olarak da bilinen durum geçiş diyagramı, bir durumdan diğerine geçişler gerçekleştiğinde geçerli olan kuralları içeren sonlu sayıda durumu gösteren bir diyagramdır.

Örneğin, bir arabanın otomatik vites şanzımanının basitleştirilmiş bir versiyonunu temsil etmek için bir durum diyagramı kullanabilirsiniz. Aşağıda gösterilen durum makinesi, birinci, ikinci, üçüncü ve dördüncü olarak etiketlenmiş dört çalışma durumuna sahiptir. Temsil ettikleri vitesler gibi, bu durumlar da özeldir, bu nedenle aynı anda yalnızca bir durum etkindir. Bu durum makinesi, aracın hızını izler ve hız, çalışan vites için sabit eşiği geçtiğinde farklı bir vitese geçer.

 

İki ana durum diyagramı türü vardır:

  • Mealy – Durum makinesi çıktıları yalnızca durumlara değil, aynı zamanda Şekil 2’de gösterildiği gibi geçişlerdeki makine çıktılarını tanımlayarak temsil edilen sistem girişlerine de bağlıdır.
  • Moore – Durum makinesi çıkışları yalnızca sistemin durumuna bağlıdır ve Şekil 3’te gösterildiği gibi makine çıktılarının durumlar üzerinde tanımlanmasıyla temsil edilir.

Şekil 1: Stateflow ile Mealy semantiği kullanılarak modellenen bir satış otomat makinesinin durum diyagramı.

Şekil 2 Stateflow ile Moore semantiği kullanılarak modellenen trafik ışıklarının durum diyagramı.

Bu anlambilim hakkında daha fazla bilgi için bkz. Mealy ve Moore Makinelerine Genel Bakış.

Karmaşık bir yazılım bileşenini taklit eden durum makineleri oluşturmak için durum diyagramlarının temel yapı taşları yeterli değildir. Sistemin karmaşık ayrıntılarını verimli bir şekilde yakalamak için aşağıdaki ek yetenekler gereklidir:

  • Hiyerarşi – Ana durum/durumları tanıtır ve tasarımı daha fazla yapılandırır
  • Paralellik veya Ortogonallik – Tek bir diyagramın aynı anda çalışan birden çok durumu içermesine izin verir
  • Olay Yayını – İki bağımsız durum veya durum makinesi arasında bilgi alışverişine izin verir

Bu yetenekler, durum geçiş diyagramları ile birleştirildiğinde, temsillere Harel durum çizelgeleri veya basitçe durum çizelgeleri adı verilir.

Stateflow ile Durum Makineleri

Stateflow®, sonlu durum makinelerine dayalı bir grafiksel programlama ortamıdır. Stateflow’u kullanarak, dinamik sistemlerde karmaşık mantığı modellemek için basit durum diyagramlarından başlayabilir ve durum grafikleri oluşturabilirsiniz.

Bağımsız durum çizelgelerini MATLAB nesneleri olarak yürütmek için MATLAB®’ı veya durum çizelgelerini Simulink blokları olarak simüle etmek için Simulink®’i kullanabilirsiniz.

MATLAB veya Simulink’te Stateflow şemalarını modelleme ve yürütme hakkında daha fazla bilgi için bkz. Sonlu Durum Makinelerini Modelleme.

Kurumsal e-bültenimize abone olarak FİGES hakkındaki güncel gelişmelerden haberdar olabilirsiniz.
Sosyal Medya'da FİGES
FİGES Facebook
FİGES Twitter
FİGES Linkedin
FİGES Instagram

© FİGES A.Ş. Tüm hakları saklıdır. Tasarım ordek.co.