MICROWIN 4.0 STEP 7
ATLAMA ( JUMP ) KOMUTU KULLANIMI
VE
SIEMENS S7-200 SİMÜLASYONUNDA GERÇEKLEŞTİRME
Merhaba, bugün Siemens S7 - 200 PLC aleti için JUMP komutunun nasıl kullanıldığını göreceğiz ve bu komuta uygun bir örnek uygulamayı simülasyonumuzda gerçekleştireceğiz.
İlk olarak JUMP komutunun ne işe yaradığı ve nerelerde kullanıldığını öğrenelim. JUMP komutu bir program içerisinde belli satırların atlanması yada belirli şartlar altında çalışmasının istenildiği / istenilmediği durumlar için kullanılan bir komuttur. PLC'de bir başka satıra gitmek için gidelecek satıra ait şart yazılıp sonra atlama komutu " JMP i ( 0 < i < 255 ) " yazılır. Gidilecek satırın üstüne ise "" LBL i ( 0 < i < 255 ) " komutu yazılması gerekir. Bir örnek üzerinde durumu açıklayalım ;
Ladder diyagramının akış diyagramı şu şekildedir ;
1 ) Eğer I0.0 giriş kontağı aktif hale gelmişse yani JMP çıkışının sonucu "1" olmuşsa JMP komutunun gösterdiği LBL 1 satırına atla.
2 ) Eğer I0.0 kontağı aktif hale gelmemişse bir alt satırdan normal komutları takip et.
3 ) Eğer JMP komutu aktif hale gelmişse LBL 1 satırının altından programı çalıştırmaya devam et.
Burada unutulmaması gereken şudur ; Step-7 MicroWİN programı yazılan programın sonunda END komutu olmasa bile END komutunu otomatik olarak var kabul edip programı sonlandırmaktadır. Yani JMP komutu kullanıldıktan sonra LBL 1 satırına atlayacak ve o satırdan itibaren END komutuna kadar devam edip programı devam ettirecektir. Yeni bir program yürütme komutu gelirse ve bu defa I0.0 girişi aktif değilse hiç bir komutu atlamadan normal akışını gerçekleştirecektir.
Daha iyi kavramak için bir başka örneğe geçelim ;
Not 1 : SM0.0 komutu devamlı lojik - 1 çıkışı üreten komuttur.
Programın akış diyagramı ;
1 ) I0.0 giriş kontağı aktif edilmiş ise JMP komutunun gösterdiği satıra git.
2 ) I0.0 kontağı aktif değil ise programı normal akışı ile devam ettir.
3 ) SM0.0 komutuna geldiğinde daima lojik - 1 çıkışı üretildiğinden END komutu aktif olur ve program sonlanır.
4 ) Eğer JMP 1 komutu aktif hale gelmişse LBL 1 satırından devam et ve END komutunu görene kadar programı çalıştır. ( END komutu yazılmasada programın sonunda var kabul ediyor ! )
Gelin JMP komutunu kullanarak örnek bir uygulama gerçekleştirelim ve konuyu daha çok pekiştirelim.
Uygulamamız şunu gerçekleştirsin. 1. butona basıldığında 2. butona da basılıyorsa plc çıkışında lamba yansın aksi taktirde yanmasın. 1. butona basılmadığında ise 2. ve 3. butonlardan herhangi birine basılıyorsa lamba yansın ikisine aynı anda basılıyorsa yada basılmıyorsa lamba yanmasın. Şimdi uygulamayı gerçekleştirelim.
1. buton > I0.0
2. buton > I0.1
3. buton > I0.2
Lamba > Q0.0
Uygulamamız aşağıdaki gibi olacaktır ;
1 ) I0.0'ın kapalı kontağı daima 1 çıkışı üreteceği için ilk başta LBL 1 satırına atlanır.
2 ) Eğer I0.0 kontağına enerji verilmiş ise normalde kapalı kontaklar açılacak , normalde açık olan kontaklar ise kapanacağı için JMP 1 komutu aktif olmaz ve LBL 1 satırına atlanmaz. Eğer I0.0 kontağı harici aktif kontak yok ise LBL 2 satırına atlanır ve program sonlanır.
3 ) Bizim ilk olarak amacımız 1. buton ile birlikte 2 . butona basıldığında lambanın yanması idi. I0.0 kontağına yani 1. butona basıldığı zaman JMP 1 komutu atlanır eğer aynı anda 2. butona basılırsa I0.1 kontağı aktif olur ve Q0.0 çıkışına bağlı lamba mühürlenerek yakılır.( sürekli I0.1 kontağına enerji vermeye gerek kalmaz ama I0.0 kontağı aktif halde kalmalı )
4 ) İkinci olarak eğer I0.0 kontağına enerji verilmez ise doğrudan LBL 1 satırına atlanacağı için I0.1 veya I0.2 kontaklarından herhangi birine enerji verilmesi halinde lamba tekrar yanacaktır. Yalnız burada bizim istediğimiz gibi her iki kontağa aynı anda enerji verilirse LBL 1 'in altında görüleceği gibi kapalı kontaklar açılacağı için lamba yanmaz.
5 ) Sonuç olarak hiç bir butona basılmaz ise lamba yanmaz. Sadece 1. butona basılırsa LBL 2'ye gidilir ve program sonlanır. 1. butona basılmazsa ve 2 ve 3'ten herhangi birine basılırsa önce LBL 1'e gidilir ve I0.1 veya I0.2 kontağının aktif hale gelmesiyle lamba yine yanar.
Elimden geldiğince anlaşılır anlatmaya çalıştım. Gelin şimdi simülasyon sonuçlarını inceleyelim.
>>> Sadece 1. butona basıldığında lamba yanmıyor ;
>>> 1. ve 2. butona aynı anda basıldığında lamba yanıyor ;
>>> 2. veya 3. butondan herhangi birine basıldığında lamba yanıyor ;
>>> 2. ve 3. butona aynı anda basıldığında lamba yanmıyor ;
Simülasyon sonuçlarında görüldüğü gibi istediğimiz sonuçları elde ettik.
PLC derslerimize devam edeceğiz. Genel hatlarıyla PLC konularını tamamlayacağız. PLC dışında Arduino ve App İnvertor örnek uygulamaları da gerçekleştireceğiz. Takipte kalın.
Semih AKTAŞ
Yorumlar
Yorum Gönder