Bir Programın Temel Bileşenleri

Konusu 'Otomasyon' forumundadır ve oguzturk tarafından 20 Mart 2008 başlatılmıştır.

  1. oguzturk Administrator Staff Member


    Bir program bloğu, icra edilebilir koddan ve notlardan oluşur. İcra edilebilir kod, ana programı, her türlü altprogramı içerir. Bu kod derlenir ve S7200e yüklenirken program notları yüklenmez. Kumanda programınızı oluştururken altprogramların getireceği yapılandırma kolaylığından yararlanabilirsiniz.


    Aşağıdaki programda bir altprogram ve bir interrupt altprogramı yer almaktadır. Burada bir analog girişin her 100 msnde bir okunması için zaman kontrollu interrupt örneği yer almaktadır.

    [​IMG]

    Ana Program
    Uygulamanıza kumanda eden esas program parçasıdır. S7-200 burada yer alan komutları sürekli olarak tarar. Ana programa OB1 de denir.

    Altprogramlar
    Programınızın bu seçime bağlı bileşenleri sadece çağırıldıkları zaman icra edilirler. Çağırılma işlemi ana programdan, bir interrupt altprogramından veya bir başka altprogramdan yapılabilir. Altprogramlar, bir işlemi birden çok yapacağınız zaman özellikle çok yararlıdırlar. Oluşturacağınız fonksiyonu programın içerisinde birden çok yerde yazmak yerine sadece bir kere yazar ve ana programdan dilediğiniz kere çağırırsınız. Altprogramlar birkaç yarar sunar:
    • Altprogramlar genellikle programınızın toplam boyutunu azaltır.
    • Altprogram kullanımı genellikle toplam tarama süresini azaltır. Zira, her taramada icra edilmeyecek olan program parçası ana program dışına aktarılmış ve sadece gerektiği (yani çağrıldığı zaman) icra edilecek duruma getirilmiştir. S7-200, çağrılmayan alt programları taramaz.
    • Altprogramlar, oluşturulan kodu taşınabilir hale getirir. Belli bir amaç için bir altprograma yazdığınız kodu, başka bir alana kolaylıkla taşıyabilirsiniz.
    Bilgi Notu
    V hafızasının kullanımı, altprogramınızın taşınabilirliğini sınırlayabilir, çünkü bir altprogram içinde yer
    alan V hafızası aynışekilde bir başka altprograma aktarıldığında her iki altprogram da aynıV adreslerini kullanıyorolacakve birçakışma doğacaktır. Buna karşılık, L hafızalarını kullanan altprogramlarda böyle bir problem olmaz, zira lokal hafıza sadece kullanıldığı altprogram içerisinde geçerli olduğundan (lokal kapsam), herhangi birçakışma problemi doğmayacaktır
     



  2. oguzturk Administrator Staff Member

    Bu, seçime bağlı program bileşenleri belirli interrupt olgularına bağlı olarak hareket ederler. Önceden bilinen bir interrupt olgusunda ne yapılması gerektiğini burada tanımlarsınız. Sözkonusu olgu gerçekleştiğinde S7-200 belirtilen interrupt alt programını çalıştırır.


    Interrupt altprogramlarının çalışması programınızın değil, interrupt olgularının kontrolundadır. Bir interrupt olgusuyla bir altprogramı ilişkilendirirsiniz ve S7-200 o olgu her gerçekleştiğinde ilişkilendirilmiş interrupt altprogramını (mevcut program akışını keserek) çalıştırır.


    Bilgi Notu
    Bir interrupt olgusunun programın hangi aşamasında oluşacağınıönceden kestirmek mümkün olmadığı için hem interrupt altprogramı, hem de diğer program bileşenlerinde yer alması gereken ortak değişkenleri dikkatlice kullanmak gerekir.
    Eğer mümkünse interrupt altprogramının lokal hafıza adreslerini kullanın, böylece programın başka kısmında yeralan değişkenlerin üzerine yazılmasını engellemiş olursunuz.
    Ana program ile interrupt altprogramları arasındaki ortak verinin doğru olarak kullanılmasıyla ilgili birkaç programlama tekniği vardır. Bu teknikler Bölüm 6nın Interrupt komutlarıyla ilgili kısmında ele alınmıştır.


    Programınızın Diğer Bileşenleri
    Diğer program blokları S7-200 ile ilgili bilgi içerirler. Bir yükleme sırasında bu blokları yükleyip yüklememeyi seçebilirsiniz.


    Sistem Bloğu
    Sistem bloğu değişik donanım seçeneklerinin ayarlanmasını sağlar.


    Data Blok
    Data blok V hafızasından oluşur. Data bloğu V alanı için başlangıç değerlerini tanımlamak ve gerektiğinde yüklemek amacıyla kullanabilirsiniz.
     

Sayfayı Paylaş