Siemens Simatic S7 Graph Programlama Dili

M.Ozkan

Yönetici
Yönetici
Yönetici
Katılım
19 Ocak 2007
Mesajlar
978
Puanları
156
S7 Graph nedir?

S7 Graph Siemensin STEP7 PLC Programlarında kullanılması için geliştirilmiş olan Ardışıl Programlama dilidir. Bu arayüz ile Ardışıl işlemler gerektiren programlar hızlı ve temiz bir şekilde yazımlanabilir. İşlemler Adım adım ilerler ve adımların ilerlemesini o adımın şartları sağlar. Adım şartları oluşursa sonraki adıma geçer ve bu işlem bizim istediğimiz yönlere kaydırılabilir. Örnek verecek olursak bir trafik lambası düşünelim. İşlem başladığında 20 Sn boyunca Kırmızı ışık yansın. 20 Sn den sonra Sarı ışık 5 sn yansın. 5 Sn den sonra Yeşil ışık 30 Sn yansın. Sistem tekrar başa dönsün. Yapılmış olan devresini resimden görebilirsiniz.

S7 Graphın LADDER'a veya STL'e göre avantajları sayılmaya kalkılacak olursa çok fazla komplike olmayan işlemlerde programlama kolaylığı, arıza tespitinde görsel kontrol ve hızlı müdahele, Adım adım ilerleme gerektiren işlemlerde hafıza tasarrufu, kolay kullanıcı arayüzü, ileri kumanda mantığı gerektirmemesi olarak sayılabilir.

S7 Graph editörüne ulaşabilmeniz için Simatic Manager Programında sunulan özelliklere ek olarak opsiyonel olan S7Graph Programming Sequential Control Systems Paketine sahip olmanız gerekir. Graph programları fonksiyon bloklar içerisine oluşturulurlar. Ve bu fonksiyon bloğun gereği üzere data blok kullanmaları gerekir. Ve Bu programlar sadece Graph editörüyle görülebilir.

Graph Komutları:

S: Set Çıkış
R: Reset Çıkış
N: Kesik çalışma (Non-Holding)
D: Hızlı zamanlayıcı. Step aktif olunca gecikmeli aksiyon (Delay)


Resimden de görebileceğiniz gibi programı 6 adımda tamamlamayı başardık. Ama bunu LADDER yada STL ile yapmaya kalksaydık birçok farklı işlem yapmak durumunda kalabilirdik. Garanti ediyorum S7 Graph öğrenirseniz mükemmelliği karşısında, adım adım ilerleyen işlerde, LADDER a bakmak bile istemeyeceksiniz.
 

Ekli dosyalar

  • Graph.JPG
    Graph.JPG
    88.5 KB · Görüntüleme: 3,418
Moderatör tarafında düzenlendi:
S7 Graph editörüne ulaşabilmeniz için Simatic Manager Programında sunulan özelliklere ek olarak opsiyonel olan S7Graph Programming Sequential Control Systems Paketine sahip olmanız gerekir. Graph programları fonksiyon bloklar içerisine oluşturulurlar. Ve bu fonksiyon bloğun gereği üzere data blok kullanmaları gerekir. Ve Bu programlar sadece Graph editörüyle görülebilir.

Üst yazıdan alıntıdır.


Simatic Graph Editor olarak aratırsanız Emule'da ya da internet üzerinden bulunabilir.
 
S7-Graph Dilinin kullanilacagı en uygun yerlerden biri Batch uygulamalari olabilir.Batch uygulamsında ardişil olarak dozajlama operasyonları oldugu için Reçeteler oluşturulabilir ve reçete içindeki bütün operasyonlar Graph ile oluşturulmuş fonksiyonun içine gömülebilir.PCS7 içerisinde bulunan SFC diline çok benzer bir yapıdadir.
 
Bu S7 graph ın microwinde kullanılan versiyonu felan yokmu yau ? tam işime yarayacak bi şeymiş ..
 
microwinde "scr" komutları ile bu yapılıyor bildiğim kadarıyla recep çetin in kitabından faydalanabilirsiniz.
 
S7 300 ve s7 400 icin kullanlan step 7 graph programlama dili kullanm basit ama ilevi büyük bir programlama dilidir.
Özellikle zincirleme yaplan ilemlerde cok hzl program yazlabilir.
Burada yapacagmz örnekte basit bir seneryo olusturmaya calstm önemli olan programlama dilinin mantgnn anlaslmasdr.

programlamaya baslamadan önce s7 graph programnn kurulu olmas gereklidir.

3040109103819iw3.jpg


Step 7 programn acalm yeni proje olusturmak icin next butonunu tklayalm

3040109103903zi3.jpg


Kullanlcak plc nin cpu sunu secip next i tklayalm

3040109103935ve8.jpg


olusturmak istedigimiz organisazyon bloklarn secip kullanmak icin programla dilini secip next diyelim

proje ismini verip finish diyoruz ve proje olusumunu hazlanyor.

OB1 olusmus durumdadr.

Simatic istasyon icine gridigimizde hardware ksmn aryalm

Hardware kısmına girip bizim icin ayrlan plc input ve outputlar görelim.

s7 Program icindeki sembol tablosuna ulasalm.

Sembol tablosuna istedigimiz input ve outputlar olusturalm.

Agac icindeki blog icerine girip bir fonksiyon blok olusturalm

Fonksiyon blok karslama penceresi.

istedigimiz sembol ismi verim yazlma dilinide GRAPH seciyoruz ve ok basyoruz.

3040109104709xz9.jpg
 
Fonksiyon blogumuz olusmus durumdadr.

Fonksiyon blogunun icine girdigimizde otomatikman s7 graph editörü aclacaktr

3040109104814os1.jpg


Step1 üstüne ters tkladgmzda yeni bir action olusturuyoruz

3040109104852kp3.jpg


Olusturulan aksiyon icerisine D yazdgmz zaman yazlan adres verilen zaman kadar calsr trans sartna gecer.Trans sartna bos kontak koyuyoruz.

3040109104933iv4.jpg


projenin olusturulmus halidir

projemizde Stepler calsan program mantklar trans lar ise gecis sartlardr.

set R:reset CMP:trans gecislerindeki gecis zamanlardr.

3040109105159sr4.jpg


projeyi bitirip save yaptktan sonra kapattgmz zaman FC72 , DB1 , SFC64 bloks icinde otomatik olarak olusacaktr.

3040109105234tg0.jpg


OB1 icine girip olusturdugumuz FB1 i hehangi network icine koyuyoruz.

EN:Fonksiyon blok calstrma sart
OFFSQ:EN girisi haric Step program baska bir kosuldan etkilenmeden durdurur.
INITSQ:OFFSQ ACK_EFF EN etkilenerek step program sürdürür.Kesildigi zaman step oldugu yerde durur
tekrar baslatldgnda kaldg yerden devam eder.
ACK_EF:Kosulsusuz step program resetler en basa yani step1 e döndürür.
Diger komutlar ben daha önce kullanmadm net olarak bilmedigim icin burada tanmlamyorum.programn calsmas icin üsteki girisleri kullanmak yeterli oluyor.


Yapılan programın calısma mantıgı
Step1 de M0.0 rölesi 1 sn süresince calısır calısma bittimi trans 1 e gecer eger input_1=1 ise step2 ye gecer.
Step2 de output_1 set olur ve trans2 ve trans4 de program akım zinciri ikiye ayrlarak gecer
artık program iki ayrı taraftan akar trans2 de input_2 saglanırsa step3 gecer trans4 de input_4 sart saglanırsa
step4 e gecer.
Step3 de output_1 reset output_2 set olur ote yandan step4 te output_3 set olur
trans5 de input_5 varsa step5 in basna gider ama obur hat tamamlanana kadar bekler.
trans3 de input_3 sart saglandktan sonra da trans ta 10 saniye bekler ve step 5 gecer
Step5 iki hat gelmisse step 5 isler output_4 set output_2 reset olur
trans6 da output_3 output_4 seri devresinden hat geldimi trans 6 50 saniyelik bekleme sonunda step6 ya gecer
step6 da output_3 reset output_4 reset olur t7 den sartsz programn en basna yani step1 e gider
Böylelikle yaptıgımz program olusturdugumuz mantıkta tarama işleminini bitirmis olur.
 
Gercekten bu programlama dili yapılan programlama süresini ciddi derecede azaltıyor
 

Forum istatistikleri

Konular
129,903
Mesajlar
931,173
Kullanıcılar
452,789
Son üye
yigitt.m

Çevrimiçi üyeler

Geri
Üst