STEP7 PLC PROGRAMLAMA EĞİTİM
Program ve Data blokları nedir ? Organizasyon blokları nedir ? Fonksiyon blokları nedir ? Sayı sistemleri nedir ? Bu ve benzeri soruların cevaplarını aradığımız Step7 Plc Programlama yazı dizisine kaldığımız yerden devam ediyoruz.
Başlayalım.
STEP7 PLC PROGRAMLAMA
Program & Data Blokları :
Program ve data blokları yazılımı oluştururken , yazılımı daha fonksiyonel ve bütün haline getirmede yardımcı olurlar.Bu bloklar kullanıcı programının oluşturulduğu kısımlardır.
Simatic Manager’de Block altında bulunurlar.Program blokları (OB, FC ,FB) , Data blokları (DB, UDT) , Sistem ve Standart Blokları (SFB ,SFC)’dir.
Tüm bloklar OB1 üzerinden işlenmektedir.Oluşturulan bloklar OB1 içerisinde çağrılmalıdır.
Her bir Fonksiyon Bloğun (FB) , DB’si bulunmaktadır.
Program Blokları :
Organizasyon Blokları (OB) :
İşletim sistemi ve kullanıcı programı arasında bir arayüzdür.OB’ler işletim sistemi tarafından çağrıldığında periyodik kontrol yapılır , kullanıcı programının uygulanmasını sağlar ve oluşan sistemin hatasını denetler.
Parametre grupları ; Time-of-day interrupts , time-delay interrupts , cyclic interrupts , hardware interrupts
OB1 ana bloktur.Tüm program ve blokların hangi sıra ile işleneceği ‘OB1’ tarafından belirlenir.
Aslında kullanıcı programı sadece OB1 içerisine de yazılabilir.
Organizasyon Bloklarının Özellikleri :
Zaman Hatası (OB 80) : Tarama zamanı aşıldığında , OB’nin çağrılma hatasında OB 80 sistem tarafından çağrılır.
Bu durumad CPU stop konumuna geçer.
Zaman hatasını engellemek istiyorsak ; SFC39’dan SFC42’ye kadar olan sistem bloklarını engelleyebiliriz.
Eğer OB 80 iki kez çağrılmışsa , SFC 43 ile engelleyebiliriz.
Besleme Gerilimi Hatası (OB 81) : Cpu veya modüllerden birini yedekleme pilinin boş olması , gerilim hatası , 24V besleme arızası olduğunda sistem OB 81’i çağırır.Eğer OB81 yüklü değilse , CPU besleme hatası uyarısı ile birlikte çalışmaya devam eder.
Hata Uyarısı (OB 82) : Meydana gelen herhangi bir hata durumunda sistem OB 82’yi çağırır.Eğer OB 82 plc içerisinde yoksa , CPU kendiliğinden STOP konumuna gider.OB 82’yi ise SFC39’dan SFC42’ye kadar olan SFC’ler engelleyebilir.
Takma/Çıkarma Uyarısı (OB 83) : İşletim sistemi donanım konfigürasyonlarını 1sn aralıklarla sürekli olarak izler.Ve her kartın takılması/çıkarılması durumu CPU hafızasına kaydedilir.
Run/Stop durumunda iken bir kart .çıkarmak istediğinizde , CPU hata verecektir ve tekrar Run durumunda OB 83 çağrılır.Eğer OB 83 Plc içerisine yüklenmemişse , Stop konumuna geçer.
CPU Donanım Hatası Uyarısı (OB 84) : İşletim sistemi , MPI yada PROFIBUS haberleşmesinde bir hata ile karşılaştığında OB 84’ü çağırır.Eğer OB 84 Plc içerisine yüklenmemişse , donanım hatasından dolayı CPU stop konumuna geçer.
Program Yürütme Hatası (OB 85) : Yüklenmemiş bir OB’nin işletilmesi , işletim sistemine ait veri erişim hatasında sistem OB 85’i çağırır.Ve eğer plc’e yüklü değilse OB 85 , CPU stop konuma geçer.
Rack Hatası (OB 86) : Eğer rack (gerilim hatası, topraklama , hat kopması vb.) , ağ sistemi veya merkezi olmayan çevresel birimler arızası meydana gelmişse , işletim sistemi OB 86’yı çağırır.Eğer OB 86 oluşturulmamışsa , işletim durumu Stop’a geçer.
Haberleşme Hatası (OB 87) : Global veri haberleşmesinde yanlış veri tanımlaması ya da veri uzunluğu , imkanı olmayan veri bulgularının gönderimi gibi hatalar meydana geldiğinde sistem OB 87’yi çağırır.Eğer OB 87 oluşturulmamışsa , Plc STOP’a çekilir.
Programlama Hatası (OB 121) : Programlama esnasında ki mevcut hataların Plc’e yüklenmesi esnasında CPU Stop’a geçer ancak OB 121 Plc’e yüklenirse , Plc RUN konumunda çalışmaya devam eder.
Fonksiyon (FC) : Kullanıcı programının belirli bölümlerinin oluşturulmasında kullanılırlar ve birçok amaçları vardır.Fiziksel ve memory alanlar kullanılabilir.
Fonksiyon Blokları (FB) : Kullanıcı programının belirli bölümlerinin oluşturulmasında kullanılırlar ve sık tekrarlanan kompleks fonksiyonların programlanması için uygundurlar.Bu blokların fonksiyonlardan farkı ise , kendi hafızalarını bulundurmalarıdır.FB içerisinde oluşturulan programa ait parametreler bir data blok içerisinde toplanır.
Fonksiyon bloğu her zaman bir data blok içerisinde kullanılır.
Burada Geçici Hafıza bölümünde bulunan terimlere beraber bakalım ;
In : Input – Giriş bilgisi
Out : Output – Çıkış bilgisi
In-Out : Giriş-Çıkış bilgisi
Temp : Geçici hafıza alanlarını ifade eder.
Stat : Özel data modüllerinin hafızasında olan ve bir sonraki çalışmaya kadar saklanan lokal datalardır.
Name : Program içerisinde kullanılacak parametreye verilen isimdir.
Data Type : Oluşturulacak parametrenin özelliğidir.
Data Bloklar :
Diğer bloklardan farklıdırlar.Herhangi bir komut içermezler.İlgili programa ait parametreleri saklarlar.
FB ile kullanılırlar ve içerisine yazılan program parametrelerini FB’nin kullanıldığı yerlerde işlerler.
Data bloklarının boyutu CPU 314’lerde 8 KB (8191 byt)dır ve Genel data modülü , Kullanıcı tanımlı data modülü ve özel data modülü olarak 3’e ayrılır.
Data Blok Oluşturma : Programlara göre oluşturulan özel bloklardır.Simatic Manager içerisinde iken Sağ tıklanarak Insert New Object -> Data blok denilerek eklenebilir.
Address : Değişken için belirlenen konum , adrestir.
Name : Her değişkeni tayin etmek için verilen simgesel isim kısmıdır.
Type : Değişkene vermek istenen veri tipidir.
Initial Value : İlk değer burada girilmektedir.Değerler veri tipi ile uyuşmalıdır.
Örneke : DB1.DBX0.0 için DB1’deki bit adreslemesi ifade edilmektedir.
UDT Data Tipi : Birçok data tipinin birlikte kullanılarak , kullanıcıya kendi data tipini oluşturma olanağı veren bir data tipidir.
Blocks kısmından erişilebilmekte ve sağlanmaktadır.
Blocks sayfası içerisinde iken sağ tıklayıp , Insert New Object -> Data type seçilerek yeni User Data Type oluşturulabilir.Ya da projede , Insert -> S7 block -> Data type denilerek de oluşturulabilir.
Sayı Sistemleri :
Bit : Dijital sistemlerde kullanılır ve ‘0’ ya da ‘1’olacak şekilde en küçük hafıza birimini oluştururlar.Örnek : I0.0 , M5.7 gibi.
Byte : 8 bitin bir araya gelmesi ile oluşur.8 adet 1 ve 0 dan oluşan bilgiler, 1 byte’lık veriyi ifade eder.
Not : 1 bytelık alanın sayı karşılığı 0-255 arasıdır.
Word : 2 Bayttan oluşan hafıza alanıdır.1 Word = 2 Bayt = 16 bit
Not : 1 word alanı 0-32767 arası sayıları kaplar.Ör : IW272 ,QW256 vb.
Not : Fiziksel olarak I ve Q word alanları genelde analog giriş/çıkış kartlarında kullanılmaktadır.
Integer : Tam sayı anlamındadır.0-32767 arası tüm sayılar Integer olarak ifade edilir.
Double Word : Word alanlarının yeterli olmadığı durumlarda ya da diğer özel durumlarda 2 word’ten oluşur ve 32 bite denk gelir.
Sayılar :
Onluk Sayı tabanı (Decimal Sayı)
İkilik Sayı tabanı (Binary) : En sağdaki basamak (en düşük anlamlı bit) , en soldaki basamak (en yüksek anlamlı bit) anlamına gelir.
BCD kodlama ise ; Her 4 bit bir decimal sayıya denk gelecek şekilde yazılır.
Örnek : 3758 = 0011 0111 0101 1000
Onaltılık Sayı Sistemi (Hexadecimal) : 0-9,A,B,C,D,E,F (0-16)olarak kullanılmaktadır.
STEP7 PLC PROGRAMLAMA EĞİTİM SONUÇ :
Bugünki yazımızda Step7 Plc Programlama Eğitim adlı yazımızı sizlerle paylaştık.Bu yazı ile ilgili konulardaki 5. İçeriğimizi sizlerle paylaşmış durumdayız.
İyi Çalışmalar