KOU T.E.F. PLC KURS NOTU
1. Giriş .............................................................................................................................. 3 2. PLC Yapısı ................................................................................................................... 4 2.1. Merkezi İşlem Birimi (CPU) ................................................................................. 5 2.2. Giriş Çıkış Ara Birimleri ....................................................................................... 6 2.2.1. Ayrık I/O ........................................................................................................ 6 3. PLC ile Röle Sistemi Arasındaki Fark ......................................................................... 8 Kumanda Sistemi Analizi................................................................................................. 8 4. PLC Seçim Ölçütleri..................................................................................................... 8 5. S7-200 PLC ve Genel Özellikleri................................................................................. 9 6. İşletim Sistemi ............................................................................................................ 10 7. PLC Programlanması................................................................................................. 10 7.1.Ladder (Merdiven) Programlama dili.................................................................. 11 7.2. Boolean (Deyimsel) Programlama dili ................................................................ 11 7.3. S7-200 PLC Programlanması .............................................................................. 11 7.4. PLC Kumanda Komutları.................................................................................... 12 7.5. Komutların Yürütülmesi ve Lojik Yığın ............................................................. 12 8. Zamanlayıcılar ve Sayıcılar........................................................................................ 13 8.1. Giriş ..................................................................................................................... 13 8.2. Zamanlayıcılar ..................................................................................................... 13 8.2.1. Gecikmeli Çalışan Zamanlayıcı ................................................................... 13 8.2.2. Kalıcı Gecikmeli Çalışan Zamanlayıcı......................................................... 15 NOT : Açıklama ..................................................................................................... 15 8.2.3 İki Zaman Rölesi Tipi Arasındaki Fark......................................................... 16 8.3. Sayıcılar............................................................................................................... 16 8.3.1. İleri Sayıcılar ................................................................................................ 16 8.3.2. İleri - Geri Sayıcılar..................................................................................... 18 9. Matematiksel İşlemler ................................................................................................ 20 9.1. Tam Sayı Toplama............................................................................................... 20 9.2. Tam Sayı Çıkarma ............................................................................................... 20 9.3. Tam Sayı Çarpma ................................................................................................ 21 9.4. Tam Sayı Bölme .................................................................................................. 21 9.5. Baytı Arttır........................................................................................................... 22 9.6. Baytı Azalt........................................................................................................... 22 10. Program Akış Denetim Komutları........................................................................... 23 Son .......................................................................................................................... 23 Dur .......................................................................................................................... 23 Gözetleyiciyi Resetle.............................................................................................. 23 Sıçra ........................................................................................................................ 24 Etiket....................................................................................................................... 24 Çağır ....................................................................................................................... 25 Altprogram ............................................................................................................. 25 Geri Dön ................................................................................................................. 25 For........................................................................................................................... 26 Next ........................................................................................................................ 26 İşlem Yok ............................................................................................................... 26 TAŞI/DOLDUR/TABLO ....................................................................................... 27 1
KOU T.E.F. PLC KURS NOTU
Bayt Taşı................................................................................................................. 27 Bayt Blok Taşı ........................................................................................................ 27 Baytı Sağa Kaydır................................................................................................... 28 Baytı Sağa Döndür ................................................................................................. 28 Shift Register Bit .................................................................................................... 29 Hafızayı Doldur ...................................................................................................... 29 İNTERRUPT .............................................................................................................. 30 Interrupt İlişkilendir ............................................................................................... 30 Interrupt İlişkisini Kaldır........................................................................................ 30 Interrupt Altprogramı ............................................................................................. 31 Interruptlara İzin Ver.............................................................................................. 31 Interrupt İznini Kaldır............................................................................................. 31 Interrupttan Dönüş.................................................................................................. 32 V. UYGULAMA ÖRNEKLERİ .................................................................................... 33 UYGULAMA 1-A...................................................................................................... 33 UYGULAMA 1-B...................................................................................................... 35 UYGULAMA - 2........................................................................................................ 37 UYGULAMA - 3........................................................................................................ 39 UYGULAMA - 5........................................................................................................ 44 UYGULAMA - 6........................................................................................................ 48 UYGULAMA - 7........................................................................................................ 49 UYGULAMA - 8........................................................................................................ 50 UYGULAMA - 9........................................................................................................ 52 UYGULAMA - 10...................................................................................................... 56 UYGULAMA - 11...................................................................................................... 58 UYGULAMA - 12...................................................................................................... 61 UYGULAMA - 13...................................................................................................... 64 UYGULAMA - 14...................................................................................................... 67
.
2
KOU T.E.F. PLC KURS NOTU
1. Giriş Endüstriyel otomasyon sistemleri, her geçen gün, artan bir hızla gelişmekte ve üretim sürecindeki işlevleri artmaktadır. Otomasyon sistemlerinin tasarımı ve etkin kullanımı için gerekli olan temel unsur bilgi ve bilgiye erişim hızıdır. Günümüzde, en iyi, en hızlı ve en verimli üretimi sağlamanın temel çözümü olan endüstriyel otomasyon, bütün dünyada büyük bir hızla gelişmekte ve yaygınlaşmaktadır. Bu durum, bu konuda her geçen gün yetişmiş insan gücüne olan gereksinimi arttırmaktadır. Ülkemizde de üretimi dünyadaki gelişmiş ülkeler seviyesine yükseltmek için endüstriyel otomasyona önem verilmeli ve "üretim nasıl arttırılmalı?" sorusuna cevap aranmalıdır. İşte bu soruya verilen cevaplardan biriside seri üretim ve seri üretim bantlarının kontrolüdür. Bant sistemlerinin yerinden ve yeni gelişen teknoloji sayesinde internet aracılığı ile bir merkezden kontrolü ve bu işlem için hangi yöntemin kullanılacağının tespitidir. İşte PLC (Programmable Logic Controller: Programlanabilir Lojik Denetleyici) bize bu isteklerimize cevap verebilecek bir otomasyon cihazıdır. Günümüzde endüstriyel otomasyon cihazları denilince ilk akla gelen cihaz PLC’dir. Teknolojinin gelişmesine bağlı olarak da PLC’ ler de gelişmiş ve ilk PLC’lere göre epey gelişmeye uğramıştır. Teknik gelişmeler ile PLC’ lere eklenen yeni özellikle ise; • PID denetin kontrolünü yapabilmesi , • Denetim yerinden farklı mesafelerden PLC’lere internet aracılığı ile kontrol verilerinin üretici firma tarafından belirlenen belirli protokoller aracılığı ile aktarılabiliyor olması, • Step motor denetiminin ayrı sürücü sistemlerine ihtiyaç duyulmada PLC’ye ilave edilecek ilave modüller aracılığıyla direkt olarak yapılabiliyor olması, • Termokupl gibi sıcaklık algılayıcılarının ilave modüller aracılığıyla PLC’ye doğrudan bağlanabilmesi, • Hızlı darbe üreten sensörlerin, yaklaşım anahtarları v.b. gibi cihazların ürettikleri darbeleri algılamak için geliştirilen modüller, • Ve en önemlisi ise PLC’nin endüstriyel otomasyonda yaygınlığının artması için firmalar tarafından hazırlanan paket yazılım programlarının teknik elemanların daha kolay anlayabileceği ve kullanabileceği hale getirilmesi. İşte bu gelişmeler sayesinde PLC’ler otomasyon sistemlerinde diğer sistemlere karşı ciddi bir rakip olarak, teknolojik evrimini sürdürmektedirler. PLC’ler çeşitli sanayi kuruluşlarının denetim ihtiyaçları düşünülerek, özel bilgisayar kontrol sistemi olarak geliştirilmiştir. Bu yöntem kullanılarak kontrol işlemi oldukça basitleştirilmiştir. PLC’ler sanayinin kumanda ihtiyacının duyulduğu her bölümde kullanılabilmektedir. PLC’ler giriş ve çıkış terminalleri bulunan basit bir kutu görünümündedir. Bunun yanında bir programlama ünitesi ve ihtiyaca göre giriş ve çıkışların sayısını arttırmak için ilave modüller bulunabilmektedir. 3
KOU T.E.F. PLC KURS NOTU
Günümüzde endüstriyel otomasyon sistemlerinin önemli bir alanını oluşturan kumanda ve geri beslemeli kontrol sistemleri programlanabilir lojik denetleyici (PLC) veya Programlanabilir Denetleyici (PCs) olarak adlandırılan aygıtlar ile gerçekleştirilir. PLC, bu tür sistemlerin uygulanması için gerekli yazılım ve donanım özelliklerini taşır. Kumanda sistemlerinin gerçekleşmesinde, lojik anahtarlama, zamanlama ve sayma gibi işlevleri sağlayan yazılım özellikleri ve kumanda işaretlerinin dönüştürmesini sağlayan giriş-çıkış birimleri kullanılır. Geri beslemeli kontrol sistemlerinde ise analog giriş-çıkış birimleri, kontrol algoritmasının gerçekleşmesi için matematik işlem komutları ve kontrol algoritmasının ön görülen örnekleme zamanlarında işletilmesini sağlayan ek özellikler aranır. Bir PLC, diğer sayısal veri işleme makineleri gibi merkezi işlem birimi, bellek birimi ve giriş-çıkış birimlerinden oluşur. Ayrıca, programı yedeklemek yada başka bir PLC ’ye aktarmak için ayrılabilir bir EEPROM belleği, giriş-çıkış sayısını artırmak için ayrık genişleme birimi, analog giriş-çıkış birimi, enerji kesilmeleri durumunda PLC ’yi besleyen yedek güç kaynağı gibi birimler de bulunur. Merkezi işlem birimi, PLC’nin çalışmasını düzenleyen aritmetik ve lojik işlemleri gerçekleyen, zamanlama, sayma gibi işlevleri sağlayan en önemli birimdir. Bellek birimi; Giriş görüntü belleği, veri belleği, program belleği gibi kısımlara ayrılmış olup, bu bellek alanları farklı işlevler için kullanılır. Giriş birimi, kontrol edilen sistemle ilgili algılama ve kumanda elemanlarından gelen elektriksel işaretleri PLC ’de işlenecek lojik gerilim seviyelerine dönüştüren birimdir. Kontrol edilen sisteme ilişkin basınç, seviye, sıcaklık algılayıcıları, kumanda düğmeleri sınır ve yakınlık anahtarı gibi elemanlardan gelen iki değerli işaretler (var-yok , 1 veya 0) giriş birimi üzerinden alınır. Giriş birimi işaret seviyesi değerleri 24V, 48V, 100V120V, 200V-240V doğru veya alternatif akım olabilir. Çıkış birimi, PLC ’de hesaplanan çıkış noktalarına ilişkin lojik gerilim seviyelerini, kontrol edilen sistemdeki kontaktör, röle, selenoid gibi kumanda elemanlarını sürmeye uygun elektriksel işaretlere dönüştüren birimdir. Çıkış birimi röle, triyak yada transistörlü devrelerden oluşabilir. Yüksek hızlı açma ve kapama gerektiren durumlarda, doğru akımda transistörlü, alternatif akımda triyaklı çıkış birimleri diğer durumlarda genellikle röleli çıkış birimleri kullanılır. Her bir PLC, bir programlayıcı birimi ile programlanır. Programlayıcı birimi, kumanda devresine ilişkin programın yazılması, PLC ’ye aktarılması yada PLC ’deki programın alınması ve yeniden düzenlenmesi gibi amaçlar için kullanılan bir el programlayıcısı yada kişisel bilgisayarlarda çalışan bir programlama yazılımı olabilir. Her PLC üreticisi firma, özellikle kumanda devreleri ile ilgili kişilerin çok hızlı ve kolay uyum sağlayabilecekleri programlama yazılımları geliştirmişlerdir. 2. PLC Yapısı
4
KOU T.E.F. PLC KURS NOTU
PLC’nin içinde bir mikroişlemci vardır. Yapılacak işlemler bir program haline getirilip bellekte saklanır. Bellek elemanı olarak RAM, ROM PROM, EPROM veya EEPROM kullanılır. Bellekte saklanılan program mikroişlemci tarafından okunarak işleme konur. PLC’ ye programlar teknolojideki gelişmelere bağlı olarak FAX-MODEM kullanılarak telefon hattından, klasik bir yöntem olan tuş takımı kullanılarak veya bilgisayar (PC) ile RS 232 üzerinden aktarılabilir. Anahtarlar Butonlar Sensörler Kontrol Sinyalleri Giriş Elemanı
LCD program layıcı
Giriş terminalleri PLC Çıkış birimleri
GÖSTERGE
Çıkış Elemanları Motor Selenoid Sürücü Elemanlar Yükler
PLC Kumanda Sisteminin Yapısı PLC kumanda sistemi üç ana kısımdan oluşur. A – Giriş Elemanı B – Kontrol Ünitesi C – Çıkış Elemanı PLC’leri dört temel bölümden oluşmaktadır. 1) Merkezi İşlem Birimi ( CPU ) 2) Bellek Birimi ( RAM,ROM, PROM vb.. ) 3) Giriş Birimi ( IN ) 4) Çıkış Birimi ( OUT ) 2.1. Merkezi İşlem Birimi (CPU) CPU, bellekle birlikte bir PLC’ye zeka veren kısım olup bellekte saklı programın gerektirdiği bütün aritmetik, mantık ve veri işleme gibi operasyonlar bu birimde gerçekleştirilir. Temelinde mikroişlemci denilen, çok yüksek oranda tümleşik devre teknolojisinin bir ürünü yer alır. İki ayrı yapımcı aynı mikroişlemciyi kullanabilir, fakat değişik işletim sistemleri nedeni ile sonuç PLC’ lerin yetenekleri farklı olabilir. İşletim sistemi yapımcı tarafından hazırlanmış olup genelde PLC kullanıcısına açık değildir. İşletim sistemi diyagnostik prosedürleri de içerir. Bu prosedürler genelde ilk başlangıçta kendinden çalışan veya kullanıcı tarafından çalıştırılan olmak üzere iki genel türe ayrılırlar. Birinci tür diyagnostikler, genelde, sadece işletim sisteminin kullandığı belleği test ederler.Kullanıcı tarafından geliştirilen diyagnostikler ise bütün belleği ve iletişim kapıları gibi diğer unsurları teste tabi tutarlar. 5
KOU T.E.F. PLC KURS NOTU
CPU
İ Ş L E T İ M
I/O işleme Diagnostikler Denetim prog. çalıştırılması
Denetim Uygulama Programı
Yukarıda belirtilen bütün operasyonlar bazı PC’lerde bir tek mikroişlemci ile gerçekleştirilir. Günümüzde daha yaygın olan yaklaşım işletim sisteminin görevlerini birkaç mikroişlemci arasında bölmektir. Bu yaklaşımda (multi-processing) her-bir mikroişlemcinin belirli görevleri vardır. Yaygın olarak kullanılan çift mikro-işlemcili yaklaşımda mikroişlemcilerden biri denetim diğeri ise mantık işlemlerini üstlenir. Denetim mikroişlemcisi denetim çevirimindeki denklemleri, operatörle etkileşim gibi daha karmaşık hesap ve veri işlemlerini yapar. Diğeri ise zamanlama, mantık ve sayma gibi işlemlerle birlikte uygulama programının taramasını gerçekleştirir. Programın bir yerinde kendi yeteneğinin üstüne çıkan bir işlemle karşılaşırsa bunu denetim mikroişlemcisine aktarır ve taramaya devam eder. Son yıllarda ortaya çıkan yeni bir gelişme de akıllı I/O arabağlarıdır. Bu I/O’ların bir mikroişlemcisi ve belleği ve de uygulama programına bağlı olmayan bir mini işletim programı vardır. Böyle akıllı bir modüle örnek olarak PID (Proportional –Integral – Derivative ) denetim modülü gösterilebilir. 2.2. Giriş Çıkış Ara Birimleri 2.2.1. Ayrık I/O En yaygın olarak kullanılan arabirim türü ayrık I/O arabirim olup CPU’ nun “1” veya “0” türü çıkışı olan giriş elemanları veya “1” veya “0” türlü bir çıkışla denetlenebilecek anahtarları, limit anahtarları, düzey anahtarları, motor kontaktör veya röle kontakları, seçici anahtarlar, fotoelektrik gözler sayılabilir. Ayrık I/O arabirim ile denetlenebilecek çıkış elemanları için ise alarmlar, denetim röleleri, selenoidler, motor starterleri, fanlar, v.b. birer örnek olarak gösterilebilir. Giriş/çıkış elemanlarının çeşitli düzeyde gerilimlerle beslenmesi gerekebileceğinden I/O arabirimlerinin nominal gerilimi (A.A. veya D.A.) değerleri de çeşitlilik gösterir. Şekil 2.1’ de A.A. veya D.A. besleme gerektiren giriş elemanları ile TTL düzeyde çıkış veren elemanların arabağ bağlantı şekli gösterilmiştir. Şekil 2.2’de ise çıkış elemanlarının arabağa bağlantılarının tipik olarak nasıl yapıldığını açıklamaktadır.
6
KOU T.E.F. PLC KURS NOTU
A.A. veya D.A. besleme
1
V
2
1
3
2
C
-V
Şekil 2.1 Giriş elemanı için bağlantı şekli. a. A.A. veya D.A. besleme gerektiren elemanlar b. TTL düzeyde çıkış gerektiren elemanlar
A.A. veya D.A. besleme
L1
+V
1
1
2
2
C
-V
Şekil 2.2 Çıkış elemanı için bağlantı şekli. a. A.A. veya D.A. besleme gerektiren elemanlar b. TTL düzeyde giriş gerektiren elemanlar
7
KOU T.E.F. PLC KURS NOTU
3. PLC ile Röle Sistemi Arasındaki Fark Röle sistemlerinde her türlü kumanda işlemleri rölelerle yapılırken, PLC’ de bu işlemler mikroişlemci tarafından gerçekleştirilmektedir. Mikroişlemcinin bir entegre olduğu düşünülürse kapladığı alan ve kullanım kolaylığı açısından röleli sistemlerden çok üstün olduğu görülmektedir. Bir kumanda sistemini analiz edersek, temel elemanlar şunlardır: 1) kumanda edecek elemanlar (giriş elemanları) 2) kumanda edilecek elemanla, kumanda eden elemanlar arasındaki kontrol bölümü (kontrol ünitesi) 3) kumanda edilecek elemanlar (çıkış elemanları)
Kumanda Edecek Elemanlar
Kontrol Bölümü
Kumanda Edilecek Elemanlar
Kumanda Sistemi Analizi Röleli sistemlerde kontrol bölümü röle bağlantıları ile yapılır. PLC sisteminde ise bu işlem mikroişlemci ve bellekten oluşan bir elektronik devre ile yapılmaktadır. Röleli sistemler ile yapılacak kontrol işlemleri röle bağlantıları ile sınırlıdır. Karmaşık işlemlerde kullanılan röle sayısının artması sebebiyle kontrol işleminin hacmi büyümüş olur. Ayrıca mevcut sitemde bir değişiklik yapmak oldukça zordur. PLC sisteminde kontrol ünitesinin yapabileceği işlem miktarı PLC içindeki mikroişlemci ve bellek kapasitesine bağlı olarak değişir. PLC sistemlerinde röleli sistemlerde bulunmayan sayıcı, zamanlayıcı, shift register, flip-flop vb. elemanlar kontrol ünitesi tasarımını kolaylaştırır. 4. PLC Seçim Ölçütleri Bir kumanda sistemi için PLC seçiminde göz önüne alınması gereken özellikler şu şekilde sıralanabilir; - İki seviyeli kumanda işaretlerinin bağlandığı ayrık (lojik, dijital) giriş-çıkış noktası sayısı ve elektriksel özellikleri, - Program ve veri belleği kapasitesi, - Komut işleme hızı, - Zamanlayıcı ve sayıcı sayısı, - Gerçek-zaman saati, - Kesme işletim yeteneği, - İletişim olanakları, - Program yedekleme olanağı, 8
KOU T.E.F. PLC KURS NOTU
- Şifre koruması, PLC ’nin geri beslemeli kontrol sistemlerinde kullanımı için ayrıca analog giriş-çıkış sayısı, matematik işlem yeteneği ve komutların işlenme hızları gibi özellikler de aranır. 5. S7-200 PLC ve Genel Özellikleri SIMATIC S7-200 ailesi programlanabilir denetleyicileri, maksimum 64 giriş, 64 çıkış noktası bulunan küçük boyutlu otomasyon sistemlerinin kumanda devreleri ve 12 analog giriş, 4 analog çıkış noktası gerektiren geri beslemeli kontrol devrelerinin gerçekleşmesi için geliştirilmiş bir otomasyon aygıtıdır. S7-200 serisinin CPU-210, CPU-212, CPU-214, CPU-215, CPU-216 olarak beş ayrı modeli vardır. CPU-210 modeli, çok küçük boyutlu basit kumanda devrelerinin gerçekleşmesinde kullanılır. Diğer modeller hem kumanda devreleri hem de geri beslemeli kontrol devrelerinin gerçekleşmesi için kullanılabilir. Ancak, CPU-214, CPU215 ve CPU-216 modellerinde gerçek sayılar üzerinde matematiksel işlem yapabilme olanağı sağlayan komutlar bulunduğundan geri beslemeli kontrol algoritmaları veya sayısal filtre yazılımları daha kolay gerçekleşebilir. CPU-215, CPU-216 modellerinde ise endüstriyel kontrol sistemlerinde yaygın olarak kullanılan PID denetleyici işlevini doğrudan gerçekleyen PID fonksiyon komutu bulunur. S7-200 serisi birçok otomasyon uygulamalarını çözebilecek şekilde üretilmiş ve kendi içinde farklı CPU’lar (Central Processing Unit = Merkezi İşleme Ünitesi) ihtiva eden çok kullanışlı bir PLC’dir. Optimum tasarımı, genişletilebilir üniteleri, fiyat avantajı ve güçlü komut seti ile S7-200 geniş uygulamalarda çok iyi sonuçlar vermektedir. S7-200 ailesi kullanıcılara geniş bir CPU yelpazesi sunmaktadır. Tablo 1’de S7-200 ailesinin kapasiteleri, birbirinden farklı olan CPU üniteleri genel olarak verilmiştir. Tablo 1. S7-200 CPU özellikleri. Özellik CPU 212 Giriş/Çıkış 8 Giriş Sayısı 6 Çıkış Genişletme 2 modül ünitesi(max) Lojik komut 1.2µ sn işleme hızı Sayıcı/zamanla 64/64 yıcı Dahili hafıza 128 biti
CPU 214 14 Giriş 10 Çıkış 7 modül
CPU 215 14 Giriş 10 Çıkış 7 modül
CPU 216 24 Giriş 16 Çıkış 7 modül
0.8µ sn
0..8µ sn
0.8µ sn
128/128
256/256
256/256
256
256
9
256
KOU T.E.F. PLC KURS NOTU
6. İşletim Sistemi Kalıcı ve yalnız okunabilir bir bellek alanına üretici firma tarafından yazılmış olan işletim sistemi programı, PLC’nin çalışmasını düzenler ve kullanıcı programının yürütülmesini sağlar. Genel olarak bir işletim sistemi programı; 1- Giriş noktalarındaki işaret durumlarının giriş görüntü belleğine yazılması 2- Programın yürütülmesi 3- Haberleşme isteklerinin gerçekleştirilmesi 4- İşlemci, çevre birimleri ve bellek durumlarının incelenmesi 5- Çıkış görüntü belleğindeki değerlerin çıkış birimine aktarılması gibi işlevleri yerine getirir. Denetleyici, çalıştırıldıktan (RUN) sonra durma (STOP) moduna alınıncaya kadar bu işlemler sürekli tekrarlanır ve bu bir tarama çevrimi (scan) olarak adlandırılır. Programın yürütülmesi, birinci komuttan, son komuta kadar (END) bütün komutların sırayla işlenmesi biçiminde olur. Alt program kullanılması durumunda, alt programın işletilmesine ilişkin koşullar sağlandığında program akışı alt programa geçer, alt programa yazılan komutlar sırayla işlendikten sonra tekrar ana programa dönülür. Kesme ile işletilen alt programlar kesme koşulları sağlandığı anda, program tarama çevriminin herhangi bir yerinde işletilebilir. Program tarama süresinden hızlı değişen işaretlerin değerlendirilmesi ve belirli kumanda işaretlerinin işletilmesi için yüksek hız sayıcıları veya dış (donanım) kesme işaretleri ile işletilen kesme alt programları kullanılır. 7. PLC Programlanması PLC programlama yöntemleri genel olarak dört temel başlık altında toplanabilir. Bunlar; 1 – Ladder ( Merdiven ) Programlama dili, 2 – Boolean ( Deyimsel ) Programlama dili, 3 – İşlevsel Bloklar ( Lojik Kapılar ) ile Programlama, 4 – İngilizce Bildirimler ile Programlama, İlk iki programlama dili temel programlama dili olup en çok kullanılan PLC programlama dilleridir. Programlama teknikleri yazılış biçimine göre, doğrusal programlama ve yapısal programlama olarak iki gruba ayrılabilir. Doğrusal programlamada bütün komutlar ardarda yazılır ve yazılış sırasına göre yürütülür. Yapısal programlamada ise program blokları biçiminde yapılar kullanılır. Her iki programlama tekniğinde de işlem 10
KOU T.E.F. PLC KURS NOTU
komutları ile programlanan ve merdiven diyagramı ile programlama biçimleri kullanılabilir. Merdiven diyagramı biçiminde programlama, kontaklı kumanda devrelerinin ANSI standartları devre simgeleri ile gösterilişine benzeyen bu grafiksel programlama yöntemi olup program girişi grafiksel olarak yapılır. Bu programlama tekniğinde komutlar yerine normalde açık kontak, normalde kapalı kontak, hatlar, röle bobini, zamanlayıcı ve sayıcı gibi elemanları simgeleyen kutular kullanılır. 7.1.Ladder (Merdiven) Programlama dili Röleli kumanda sisteminde sistemin dizaynında kullanılan röleli kontrol diyagramına çok benzer. Bu yüzden teknik elemanların bir çoğu programlamada bu metodu kullanmayı tercih etmektedir. Fakat röle diyagramlarında bulunmayan birçok ilave fonksiyonlar ve işlevsel bloklar bu yöntemde bulunmaktadır. Örneğin zamanlayıcı, sayıcı, matamatiksel işlevler ve PID gibi üst düzey otomasyon komutları. Simatic S-7 ile programlama yapılırken dikkat edilmesi gereken önemli bir özellik ise her network içinde sadece bir temel akış diyagramının olmasıdır. 7.2. Boolean (Deyimsel) Programlama dili Bu programlama dilinde, denetim uygulama programı ilk olarak röleli sistem olarak tasarlanır. Daha sonra uygun deyimsel komutlar kullanılarak program boolean diline çevrilir. Bu dilin uygulamasının güç olmasına karşın tercih edilmesinin en önemli sebebi PLC terminalinin yanında PC bulunmamasıdır. Bu yüzden PLC programlama aracı olarak kullanılan tuş takımı ile programlamada genelde bu programlama dili kullanılır. En büyük dezavantajı ise her PLC markasında boolean dilindeki komut karşılıklarının farklı olmasıdır. 7.3. S7-200 PLC Programlanması S7-200 serisi denetleyicilerini programlamak için hem komut (deyim) listesi (statement list, STL) hem de merdiven diyagramı (ladder diyagram,LAD) programlama teknikleri bulunan programlama yazılımları kullanılır. S7 serisi PLC ’lerde DOS ortamında çalışan STEP 7-MICRO/DOS ve Windows ortamında çalışan MICROWIN/WINDOWS programlama yazılımları ile hem komut listesi (STL) hem de merdiven diyagramı (LAD) tekniği kullanılarak programlama yapılabilir. Programlama için kullanılan yazılımlar programlama dışında, programın işleyişini gözlemek, veri alanındaki çeşitli adreslerin içeriğini gözlemek, değiştirmek gibi amaçlarla da kullanılabilir. Kullanıcı programı veri bolluğu ve denetleyiciye ilişkin konfigirasyon verilerini denetleyiciye yüklenmesi için programlama yazılımı editör menüsünden ‘DOWNLOAD’ , denetleyici RAM belleğinde bulunan programı editöre alınması için ‘UPLOAD’ seçeneği kullanılır.
11
KOU T.E.F. PLC KURS NOTU
RAM belleğe yüklenen kullanıcı programı, konfigürasyon verileri ve veri bloğunda kalıcı (retentive) olarak tanımlanan alanlar, aynı zamanda EEPROM belleğine aktarılır. Böylece, denetleyicinin uzun süreli enerjisiz kalması durumunda kullanıcı programı, konfigürasyon bilgileri ve kalıcı veri alanı korunur. Kalıcı veri alanları (retentive range) programlama yazılımı ile tanımlanır. Denetleyici RAM belleği, yüksek kapasiteli bir kondansatör ile beslendiğinden, RAM belleğindeki bütün veriler CPU-212 modelinde 50 saat ve CPU-214, CPU-215 ve CPU-216 modellerinde 190 saate kadar korunabilir. 7.4. PLC Kumanda Komutları Röleli geleneksel kumanda devreleri, röle kontaklarından oluşan lojik anahtarlama devreleri olup, bu tür devreler VE (AND), VEYA (OR) ve DEĞİL (NOT) gibi lojik işlem komutları kullanılarak gerçeklenebilir. Aşağıdaki çizelgede anahtarlama devrelerinin gerçekleşmesine ilişkin komutlar verilmiştir. KOMUT ADI Yükle (LOAD) Tümleyenini Yükle (LOAD NOT) VE (AND) İşlemi Tümleyenine VE (AND NOT) İşlemi VEYA (OR) İşlemi Tümleyenine Veya (OR NOT) İşlemi Lojik Tümleyen (NOT) Çıkışa Atama Kurma (SET) Silme (RESET) VE Blok (AND BLOCK) VEYA Blok (OR BLOCK) Program Sonu
KOMUT SİMGESİ (S7-200) LD LDN A AN O ON NOT = S R ALD OLD MEND
Bu komutlara ek olarak, zamanlayıcı, sayıcı ve karşılaştırma işlevlerini yerine getiren komutlar kullanılarak, her türlü geleneksel kumanda devresi PLC ile gerçeklenebilir. 7.5. Komutların Yürütülmesi ve Lojik Yığın S7-200 PLC’de komutlar, koşullu işletilen ve koşulsuz işletilen komutlar olarak iki gruba ayrılır. Koşulsuz işletilen komutlar işlem sırası geldiğinde hiçbir koşula bağlı olmadan yürütülen komutlardır. Koşullu işletilen komutlar ise, lojik yığın belleğinin birinci seviyesindeki değere bakılarak yürütülen komutlardır. Bu tür komutlar, işlem sırası geldiğinde yığının birinci seviyesinin içeriği bir ise yürütülür, sıfır ise yürütülmez. Şimdi bu komutları ayrıntılı olarak inceleyelim;
12
KOU T.E.F. PLC KURS NOTU
8. Zamanlayıcılar ve Sayıcılar 8.1. Giriş Programlanabilir denetleyiciler ile gerçekleştirilen kumanda devrelerinde geleneksel kumanda devrelerindeki zaman rölelerinin işlevi zamanlayıcılar ile elektro-mekanik veya elektronik sayıcıların işlevi ise sayıcılar ile gerçeklenir. Bilindiği gibi zamanlayıcılar zamana bağlı, sayıcılar ise olay sayılarına bağlı kumanda işaretlerinin üretilmesinde kullanılır. Bu bölümde zamanlayıcı ve sayıcı komutları tanıtılacaktır. 8.2. Zamanlayıcılar S7-200 PLC’de iki tür zamanlayıcı vardır. Gecikmeli çalışan (on- delay timer) ve kalıcı gecikmeli çalışan zamanlayıcı (retentive on-delay timer). Zamanlayıcı içeriği 16 bitlik bir veri alanında tutulur ve zamanlayıcı durumu aynı simgelerle adreslenen 1 bitlik bir veri alanında bulunur. Zamanlayıcı adresleri ile ilgili bir işlem yapılırken uygulanan komuta bağlı olarak zamanlayıcı içeriği yada zamanlayıcı biti kullanılır. Örneğin, 1 bitlik işlem yapan komutlar yürütüldüğünde zamanlayıcı biti, 16 bitlik işlem yapan komutlar yürütüldüğünde zamanlayıcı kaydedicisi içeriği (16 bit) ile ilgili işlem yapılır. 8.2.1. Gecikmeli Çalışan Zamanlayıcı TON Txxx,PT Gecikmeli çalışan zamanlayıcı yukarıdaki komut ile programlanır. Bu komutun etkin olması (işletilmesi) için yığın belleği birinci seviyesindeki değerin 1 olması gerekir. Komut işletildiğinde Txxx adresindeki zamanlayıcı içeriği belirli zaman aralıkları ile artar. Txxx>=PT olduğunda zamanlayıcı biti Txxx=1 olur. PT istenen gecikme süresine bağlı olarak 1 ile 32767 arasında herhangi bir tamsayı ya da 16 bitlik bir veri adresi (VW, T, C, IW, QW....) olabilir. Txxx yerine; Txxx:T32~T63 Txxx:T32~T63, T96~T127 Txxx:T32~T63, T96~T255
(T32,T33,...,T63) ( CPU-212) (T96, T97, ... ,T127) (CPU-214) (T96, T97, ... ,T255) (CPU-215 ve CPU-216)
Zamanlayıcı adresleri kullanılır. Zamanlayıcı komutu koşullu işletilen bir komut olduğundan, zamanlayıcı kaydedicisi, yığın belleğinin birinci seviyesindeki değer 1 ise etkin duruma geçer ve içeriği belirli zaman değerleri ile artar. Zamanlayıcı kaydedicisi içeriği; 13
KOU T.E.F. PLC KURS NOTU
Çözünürlük
Maksimum Zaman
CPU 212
CPU 214
CPU 215/216
1 ms
32.767 sn
T32
T32, T96
T32,T96
10 ms
327.67 sn
T33-T36
T33-T36 T97-T100
T33-T36 T97-T100
100 ms
3276.7 sn
T37-T63
T37-T63 T101-T127
T37-T63 T101-T255
Operandlar: Txxx (word): CPU 212: 32-63 CPU 214: 32-63, 96-127 CPU 215/216: 32-63, 96-255
PDS 210: Tx: T0 - T3
PT (word): VW, T, C, IW, QW, MW, SMW, SW, AC, AIW, Sabit, *VD, *AC PT: 0
NOT : CPU 212, 214, 215, 216 için Açıklama: Gecikmeli çalışan zaman rölesi (TON) kutusu, tetikleyen giriş (IN) geldiğinde maksimum zaman değerine kadar çalışır. Eğer Txxx >= Ayar Değeri (PT) ise, çıkış biti T set edilir. Sayma esnasında IN girişi 0 olursa sayma durur ve röle sıfırlanır. Aşağıdaki tabloda CPU 'lardaki zaman rölesi numarasına göre sayma kademesi (veya çözünürlük) görülmektedir. Zaman rölesinin ayarı PT değeri ile bu kademenin çarpılmasıyla oluşur. Örneğin T32 için PT= 10000 ise, bu 10.000 x 1 ms= 10 sn'ye karşılık gelir. Yani zaman rölesi IN girişi geldiği sürece 10 sn bekleyecek (ama bu esnada 1 ms'lik kademeler halinde sayacak), sonra çıkışı 1 olacaktır. Sayma her durumda maksimum değere ulaşılınca durur ki bu da PT değerinin alabileceği en yüksek değerdir (32767). Bir başka deyişle bir zaman rölesini en fazla 3276.7 sn (yakl. 54 dakika)'ye ayarlayabilirsiniz. Durum tablosunda, zaman rölesi ve sayıcı değerlerini bit veya word olarak izleyebilirsiniz. Bit olarak izlediğinizde çıkış durumu (açık veya kapalı) görüntülenir. Word olarak izlediğinizde anlık değer görüntülenir. 14
KOU T.E.F. PLC KURS NOTU
8.2.2. Kalıcı Gecikmeli Çalışan Zamanlayıcı TONR Txxx,PT Kalıcı gecikmeli çalışan zamanlayıcı yukarıdaki komut ile programlanır. Burada PT, 1 ile 32767 değerleri arasında herhangi bir tamsayı yada 16 bitlik veri adresi ve Txxx ise; CPU-212 için; Txxx:T0~T31 (T0, T1, ..., T31) CPU-214 için; Txxx:T0~T31,T64~T95 (T64, T65,..., T95) CPU-215 ve CPU-216 için; Txxx:T0~T31,T64~T95 (T64, T65, ..., T95) Adresleri ile erişilen zamanlayıcı veri alanlarıdır. Bu zamanlayıcıda kaydedici içeriği; Çözünürlük 1 ms 10 ms 100 ms
Maksimum Zaman 32.767 sn 327.67 sn 3276.7 sn
CPU 212/214 T0 T1-T4 T5-T31
CPU 214/215/216 T64 T65-T68 T69-T95
Operandlar: Txxx (word): CPU 212: 0-31 CPU 214/215/216: 0-31, 64-95 PT (word): VW, T, C, IW, QW, MW, SMW, SW, AC, AIW, Sabit, *VD, *AC NOT : Açıklama Gecikmeli çalışan zaman rölesi (TON) kutusu, tetikleyen giriş (IN) geldiğinde maksimum zaman değerine kadar çalışır. Eğer Txxx >= Ayar Değeri (PT) ise, çıkış biti T set edilir. Sayma esnasında IN girişi 0 olursa sayma durur ancak röle sıfırlanmaz, yani IN girişi gelince saymaya kaldığı yerden devam eder. Aşağıdaki tabloda CPU 'lardaki zaman rölesi numarasına göre sayma kademesi (veya çözünürlük) görülmektedir. Zaman rölesinin ayarı PT değeri ile bu kademenin çarpılmasıyla oluşur. Örneğin T0 için PT= 10000 ise, bu 10.000 x 1 ms= 10 sn'ye karşılık gelir. Yani zaman rölesi IN girişi geldiği sürece 10 sn bekleyecek (ama bu esnada 1 ms'lik kademeler halinde sayacak), sonra çıkışı 1 olacaktır.
15
KOU T.E.F. PLC KURS NOTU
Sayma her durumda maksimum değere ulaşılınca durur ki bu da PT değerinin alabileceği en yüksek değerdir (32767). Bir başka deyişle bir zaman rölesini en fazla 3276.7 sn (yakl. 54 dakika)'ye ayarlayabilirsiniz. Durum tablosunda, zaman rölesi ve sayıcı değerlerini bit veya word olarak izleyebilirsiniz. Bit olarak izlediğinizde çıkış durumu (açık veya kapalı) görüntülenir. Word olarak izlediğinizde anlık değer görüntülenir. 8.2.3 İki Zaman Rölesi Tipi Arasındaki Fark S7-200 iki ayrı zaman rölesi sunar: Gecikmeli çalışan (TON) ve alıcı gecikmeli çalışan (TONR). İki zaman rölesi tipi arasında girişe verilen tepkiye göre farklılık vardır. Her iki zaman rölesi de giriş varken sayar. İki zaman rölesi de giriş yokken saymaz. Giriş gittiğinde TON sıfırlanır. Oysa, TONR sıfırlanmaz, daha önce saydığı sayma (veya zaman) değerini saklar. TONR zaman rölesi tekrar enerjilendiğinde (enable) önceki sayma değerinin üzerine ekleyerek çalışır. O halde, TON zaman rölesi tek bir aralığın zaman kontrolu için uygunken, TONR birden çok aralığın zaman kontroluna daha yatkındır.
8.3. Sayıcılar 8.3.1. İleri Sayıcılar S7-200 denetleyicisinde ileri sayma için CTU ve ileri/geri sayma için CTUD komutları kullanılır. Her sayıcı veri alanı aynı simge ile gösterilen iki kısımdan oluşur: Birinci kısım sayıcı kaydedicisi içeriğin bulunduğu 16 bitlik alan ve ikinci kısım 1 bitlik sayıcı biti alanıdır. Herhangi bir işlem yapılırken hangi verinin kullanılacağı, zamanlayıcılarda olduğu gibi, yürütülen komutla belirlenir. Örneğin, bit işlemi yapan komutlar yürütüldüğünde sayıcı biti, kelime işlemi yapan komutlar yürütüldüğünde sayıcı içeriği (16 bit) işlenir. S7-200 CPU-212 modelinde toplam 64 sayıcı (C0~C63) S7-200 CPU-214 modelinde toplam 128 sayıcı (C0~C128) S7-200 CPU-215 ve S7-200 CPU-216 modellerinde ise toplam 256 sayıcı (C0~C256) bulunur. İleri sayıcıda (CTU), yığın belleğinin ikinci seviyesindeki verinin 0’dan 1 değerine her geçişinde sayıcı kaydedicisi içeriği 1 artar. Yığın belleğinin birinci seviyesindeki değer 1 olduğunda sayıcı içeriği ve sayıcı biti sıfırlanır. Sayıcı içeriği PV (preset value ) değerine eşit ve büyük olduğunda sayıcı biti bir değerini alır. Sayıcı kaydedicisi
16
KOU T.E.F. PLC KURS NOTU
içeriğinin geçerli en büyük değeri 32767 olup bu değere ulaşıldığında, sayıcı içeriğindeki artış durur.
Yukarı Sayıcı (CTU) kutusu, CU girişinin her pozitif yükselen kenarında (0'dan 1'e dönüşünde) sayar. Eğer Cxxx >= Ayar Değeri (PV) ise, çıkış biti set edilir. Reset (R) girişi gelirse sıfırlanır. Maksimum sayma ve ayar değeri 32767'dir. Durum tablosunda, zaman rölesi ve sayıcı değerlerini bit veya word olarak izleyebilirsiniz. Bit olarak izlediğinizde çıkış durumu (açık veya kapalı) görüntülenir. Word olarak izlediğinizde anlık değer görüntülenir. LD I0.0 //ileri sayma LD I0.1 //sayıcı içeriğini silme CTU C0.5 //C0 ileri sayıcısı PV=5
17
KOU T.E.F. PLC KURS NOTU
Biçiminde veya merdiven diyagramı programlama tekniği ile aşağıdaki gibi programlanır. Sayıcı PV değeri için 16 bitlik herhangi bir veri adresi de kullanılabilir. 8.3.2. İleri - Geri Sayıcılar
İleri – geri sayıcıda (CTUD), yığın belleğinin üçüncü seviyesindeki değerin 0’dan 1’e her geçişinde, sayıcı kaydedicisinin içeriği 1 artar; yığın belleğinin ikinci seviyesindeki değerin 0’dan 1 değerine her geçişinde sayıcı içeriği 1 azalır. Yığın belleğinin birinci seviyesindeki değer 1 olduğunda sayıcı içeriği ve sayıcı biti sıfırlanır. Sayıcı içeriği PV (preset value) değerine eşit ve büyük olduğunda sayıcı biti 1 değerini alır. Sayıcı kaydedicisi içeriği en küçük -32767, en büyük 32767 değerlerini alabilir. İleri – geri sayıcı komutu kullanıldığında sayıcı içeriği, ileri sayıcıdan farklı olarak, 32767 ve 32767 değerleri arasında değişebilir. Sayıcı ileri sayımda iken, en büyük işaretli tam sayı olan +32767 değerine ulaşıldıktan sonra sayıcı içeriğinin alacağı değer, en küçük işaretli tam sayı olan –32767 değeridir. Bu değerden sonra sayıcı içeriği artarak (-32767, -32766, -32765,...,0,...,+32765, +32766, +32767) değişir. Sayıcı geri sayımda iken, -32768 değeri aşıldığında sayıcı içeriği en büyük işaretli tam sayı olan 32767 değerini alır ve bu değerden sonra azalarak değişir. Bir İleri – geri sayıcı, CTUD komutu ile ; LD I0.0 //ileri sayma LD I0.1 //geri sayma LD I0.2 //sıfırlama CTUD C48,3 //C48 sayıcısı PV=3 biçiminde programlanır. Bu program yürütüldüğünde I0.0 girişine uygulanan işaretin her yükselen kenarı ile C48 sayıcı kaydedicisi içeriği bir artar, I0.1 girişine uygulanan 18
KOU T.E.F. PLC KURS NOTU
işaretin her yükselen kenarı ile 1 azalır. I0.2 girişine işaret uygulandığında (I0.2=1) sayıcı içeriği ve sayıcı biti sıfırlanır.
İleri – geri sayıcının merdiven diyagramı programlama tekniği aşağıdaki şekilde görüldüğü gibidir;
Yukarı/Aşağı Sayıcı (CTUD) kutusu, yukarı say (CU) girişinin her pozitif yükselen kenarında (0'dan 1'e dönüşünde) yukarı sayar. Aşağı say (CD) girişinin her pozitif yükselen kenarında aşağı sayar. Reset (R) girişi gelirse sıfırlanır. CPU 212, 214, 215, 216: Eğer Cxxx >= Ayar Değeri (PV) ise, çıkış biti set edilir. Maksimum sayma ve ayar değeri 32767'dir. Yukarı sayma maksimum değere (32,767), aşağı sayma minimum değere (-32,768) ulaşınca durur. Durum tablosunda, zaman rölesi ve sayıcı değerlerini bit veya word olarak izleyebilirsiniz. Bit olarak izlediğinizde çıkış durumu (açık veya kapalı) görüntülenir. Word olarak izlediğinizde anlık değer görüntülenir. CPU 210: Maksimum sayma değerine ulaştıktan sonra gelecek bir yukarı say girişi sayma değerini minimum (-32,768) yapar. Minimum sayma değerine ulaştıktan sonra gelecek aşağı say girişi sayma değerini maksimum (32,767) yapar.
. 19
KOU T.E.F. PLC KURS NOTU
9. Matematiksel İşlemler 9.1. Tam Sayı Toplama Sembol: ADD_I EN IN1 IN2
OUT
Operandlar: IN1, IN2 (word): Bu iki değer toplanacak olan tamsayı değerleridir. Bu değerler sabit sayı olduğu gibi bir word adresinden de atama yapılabilir. OUT (word): Sonuç burada belirtilen adreste saklanır. Bu kutu, iki tane 16 bit tam sayıyı (IN1, IN2), toplar ve sonucu 16 bit olarak çıkışa (OUT) yazar, yani: IN1 + IN2 = OUT Not: ADD komutu tam sayı, double word ve gerçel sayı toplama işlemlerinde de kullanılır. 9.2. Tam Sayı Çıkarma Sembol: SUB_I EN IN1 IN2
OUT
Operandlar: IN1, IN2 (word): Bu iki değer çıkarılacak olan tamsayı değerleridir. Bu değerler sabit sayı olduğu gibi adresten de atama yapılabilir. OUT (word): Sonuç burada belirtilen adreste saklanır. Açıklama: Bu kutu, iki tane 16 bit tam sayıyı (IN1, IN2) çıkarır ve sonucu 16 bit olarak çıkışa (OUT) yazar, yani: IN1 - IN2 = OUT 20
KOU T.E.F. PLC KURS NOTU
Not: OUT negatif olursa SM 1.2 (negatif) biti set edilir. Not: SUB komutu tam sayı, double word ve gerçel sayı toplama işlemlerinde kullanılır. 9.3. Tam Sayı Çarpma Sembol:
MUL EN IN1 IN2
OUT
Operandlar: IN1, IN2 (word): Bu iki değer çarpılacak olan tamsayı değerleridir. Bu değerler sabit sayı olduğu gibi adresden de atama yapılabilir. OUT (word): Sonuç burada belirtilen adreste saklanır. Açıklama: Bu kutu, iki tane 16 bit tam sayıyı (IN1, IN2) çarpar ve sonucu 32 bit olarak çıkışa (OUT) yazar, yani: IN1 * IN2 = OUT Not:Çıkış ve giriş operandları arasındaki çakışmalar komutu geçersiz kılar. 9.4. Tam Sayı Bölme Sembol:
DIV EN IN1 IN2
OUT
Operandlar: IN1, IN2 (word): Bu iki değer bölünecek olan tamsayı değerleridir. Bu değerler sabit sayı olduğu gibi adresden de atama yapılabilir. OUT (word): Sonuç burada belirtilen adreste saklanır. Açıklama:
21
KOU T.E.F. PLC KURS NOTU
Bu kutu, iki 16 bit tam sayıyı (IN1, IN2) böler ve sonuç ve kalanı 32 bit olarak OUT'a yazar, yani IN1/IN2=OUT. OUT double word'ünün küçük word'ü kalanı, büyük word'ü bölümü içerir. Not:Çıkış ve giriş operandları arasındaki bazı çakışmalar komutu geçersiz kılar. 32 bit sonuç (OUT) ikinci girişle (IN2) aynı adrese sahip olamaz. 9.5. Baytı Arttır Sembol: INC_B
EN IN Operandlar:
OUT
IN (byte): Değeri arttırılacak olan sayı değeri sabit olarak veya bir adresten atanabilir. OUT (byte): Sonuç burada belirtilen adrese atanır. Açıklama: Bu komut, giriş bayt değerine (IN) 1 ilave eder ve çıkış baytına (OUT) yazar. Yani, IN + 1 = OUT Not: Bu komut bayt , word ve double word işlemleri içinde gerçekleştirebilir. 9.6. Baytı Azalt Sembol: DEC_B
EN IN
OUT
Operandlar: IN (byte): Değeri azaltılacak olan sayı değeri sabit olarak veya bir adresten atanabilir. OUT (byte): Sonuç burada belirtilen adrese atanır. Açıklama: Bu kutu, giriş bayt değerinden (IN) 1 çıkartır ve çıkış baytına (OUT) yazar. Yani, IN - 1 = OUT Not: Bu komut bayt , word ve double word işlemleri içinde gerçekleştirilebilir.
22
KOU T.E.F. PLC KURS NOTU
10. Program Akış Denetim Komutları Son Semboller: END
Koşullu Son
END
Koşulsuz Son
Açıklama: Koşullu Son, önceki mantığa göre (bobine enerji geliyorsa) programı bitirir. Koşulsuz Son, kullanıcı programını bitirmek için kullanılır. Her zaman için ana programın (alt programlar hariç) son devresini oluşturur. Bir programda Koşullu Son (END) bulunmayabilir veya birden çok bulunabilir, ancak mutlaka ve yalnızca bir adet Koşulsuz Son bulunmalıdır. Dur Sembol: STOP Açıklama: CPU'yu STOP konumuna getirerek program akışını keser. Not: CPU'nun tekrar RUN konumuna geçirilmesi elle (programlama paketinden ya da CPU'nun üzerindeki anahtardan) yapılacağı için çok dikkatli kullanılmalıdır. Eğer STOP komutu bir interrupt alt programı içersinde çalıştırılırsa, alt program anında sonlandırılır, bütün diğer bekleyen interruptlar ihmal edilir. Ana program sonuna kadar icra edilir ve o tarama sonunda RUN’dan STOP’a geçilir. Gözetleyiciyi Resetle Sembol: WDR Açıklama: Program tarama süresinin belli bir süreyi (300 milisaniye) aşması durumunda dahili Gözetleyici devreye girer ve CPU'yu STOP konumuna sokar. Gözetleyiciyi Resetle, Gözetleyicinin saydığı süreyi sıfırlayarak program tarama süresinin uzatılmasını sağlar. 23
KOU T.E.F. PLC KURS NOTU
Not: Bir döngü içerisine yerleştirilecek Anında Giriş Kontağı ve Gözetleyiciyi Resetle çıkışıyla CPU'nun hiçbir işlem yapmadan o girişi beklemesi sağlanabilir. Uyarı: Tarama süresinin hiç gözetlenmeden sınırsız olarak uzatılmasına izin verilmesi girişlerin geç okunmasına ya da hiç okunmamasına neden olabilir. Bu da hayati ya da maddi tehlike yaratabilir. Program taramasının 300 msn’yi aşmasını ya da bir interrupt olgusunun ana programa dönüşü 300 msn’den daha çok geciktireceğini düşünüyorsanız bu komutu kullanabilirsiniz. Aşağıdaki işlemler taramanın sonunda yapıldığından, programın bir döngüye sokulması bu işlemleri engelleyecektir: İletişim (freeport modu hariç) Giriş/Çıkış güncelleme (anında giriş/çıkışlar hariç) Forse güncelleme SM bitleri güncelleme (SM0, SM5 ila SM29 güncellenmez) Runtime hataları teşhisi 25 saniyeyi geçen tarama süreleri için 10 ms ve 100 ms’lik zaman röleleri düzgün çalışmaz Interrupt alt programı içersindeki STOP komutu Not: CPU üzerindeki anahtarın STOP konumuna alınması STOP konumuna 1.4 saniye içinde geçilmesiyle sonuçlanacaktır. Sıçra Sembol:
n JMP
Bu komut, program içersinde belirtilen etikete (n) atlama sağlar. Etiket Sembol:
n LBL
Etiket, Atla (JMP) komutuyla yapılacak atlamanın hedefini (n) gösterir.
. 24
KOU T.E.F. PLC KURS NOTU
Çağır Sembol: n CALL Program akış kontrolunu n numaralı alt programa aktarır. Altprogram Sembol:
n SBR
n numaralı alt programın başlangıcını gösterir. Geri Dön Semboller:
RET
Alt programdan koşullu dön
RET
Alt programdan koşulsuz dön
Açıklama: Koşullu Geri Dön, önceki mantığa göre (komuta enerji geliyorsa) alt programı bitirir. Koşulsuz Geri Dön, alt programını bitirmek için kullanılır. Her zaman için alt programın son devresini oluşturur. Bir alt programda Koşullu Geri Dön bulunmayabilir veya birden çok bulunabilir, ancak mutlaka ve yalnızca bir adet Koşulsuz Geri Dön bulunmalıdır.
.
25
KOU T.E.F. PLC KURS NOTU
For Sembol: FOR EN INDEX INITIAL FINAL Açıklama: NEXT kutusuyla birlikte kullanılan bu kutu, ikisi arasında yer alan komutların döngüsünü sağlar. Başlangıç değeri (INITIAL) ile son değer (FINAL) arasındaki fark kadar döngü tekrarlanır. Döngünün her icrasında kutu, INDEX değerini bir arttırır. INDEX değeri FINAL değerinden büyük olduğu anda döngü sona erer. FINAL değeri 32766'dan büyük olamaz. Başlangıç değeri, son değerden büyükse komut icra edilmez. Örneğin, INITIAL değeri 1, FINAL değeri 10 olsun. Bu durumda, FOR ve NEXT kutuları arasındaki komut(lar) 10 defa icra edilir ve her döngüde INDEX değeri 1,2,...10 şeklinde arttırılır. Her FOR komutu bir NEXT’i gerektirir. FOR/NEXT döngülerini 8 kademeye kadar dallandırabilirsiniz (Döngü içersinde bir başka FOR/NEXT döngüsü). Çok fazla sayıda döngü, program tarama süresinin uzamasına ve CPU'nun Gözetleyici tarafından STOP konumuna sokulmasıyla sonuçlanabilir. Next Sembol: NEXT FOR ile tanımlanan döngünün sonunu gösterir. İşlem Yok Sembol:
n NOP
Açıklama: 26
KOU T.E.F. PLC KURS NOTU
Kullanıcı programının icrası üzerinde hiçbir etkisi yoktur. n sayısı 1 ila 255 arasında olabilir. TAŞI/DOLDUR/TABLO Bayt Taşı Sembol: MOV_B EN IN
OUT
Operandlar: IN (bayt):
Taşınacak olan değer sabit veya adresi burada bildirilir.
OUT (bayt):
Taşınılacak olan adres burada bildirilir.
Açıklama: Bu kutu, giriş baytını (IN) çıkış baytına (OUT) taşır. Giriş baytı taşımadan etkilenmez. Not: bu işlem bayt, word, double word ve gerçel sayılar için gerçekleştirilebilir. Bayt Blok Taşı Sembol: BLKMOV_B EN IN N
OUT
Açıklama: Bu kutu, IN baytından başlayan N adet baytı OUT adresinden başlayan bölgeye yazar. N, 1 ila 255 arasında olabilir. Giriş, taşımadan etkilenmez. Not: bu işlem bayt, word, double word ve gerçel sayılar için gerçekleştirilebilir.
. 27
KOU T.E.F. PLC KURS NOTU
Baytı Sağa Kaydır Sembol:
SHR_B EN IN N
OUT
Açıklama: Bu kutu, bayt değerini (IN) N adet bit kadar sağa kaydırır, sonuç çıkış baytına (OUT) yazılır. Taşıma alanının dışında kalan bitler sıfırlanır. N, 8’den büyük olsa bile kaydırma işlemi 8 bitle sınırlandırılır. SM1.0 (sıfır)
= 1 eğer OUT = 0
SM1.1 (taşma) = 1 dışarı kaydırılan son bit = 1 Not: IN ¹ OUT iken: Eğer N endirekt bir adresse ve OUT, endirekt adres pointer'ının bir baytını kapsayan bir direkt adresse, komut geçersizdir. Eğer N ve OUT endirekt adres pointer'larıysa ve pointer'lar eşitse, komut geçersizdir. Baytı Sağa Döndür Sembol: ROR_B EN IN N
OUT
Açıklama: Bu kutu, bayt değerini (IN) sağa doğru N bit kadar döndürür (dışarı atılacak bitler diğer başa yazılır) ve sonuç çıkış baytına (OUT) yazılır. Eğer N, 8’e eşit veya büyükse, N’in 8‘li modu alınır. Sonuç değeri üzerinden döndürme yapılır. SM1.0 (sıfır) = 1 eğer OUT = 0 SM1.1 (taşma) = 1 döndürülen son bit = 1 Not: IN ¹ OUT iken: Eğer N endirekt bir adresse ve OUT, endirekt adres pointer'ının bir baytını kapsayan bir direkt adresse, komut geçersizdir. Eğer N ve OUT endirekt adres pointer'larıysa ve pointer'lar eşitse, komut geçersizdir.
28
KOU T.E.F. PLC KURS NOTU
Shift Register Bit Sembol: SHRB EN DATA S_BIT N Açıklama: Malzeme ve veri akış kontrolu için büyük kolaylık sağlayan bu komut, bir bit (DATA) değerini N ve S_BIT ile tanımlanan kütüğe (register) yazar ve kaydırır. S_BIT, kütüğün başlangıç adresini, N ise bit olarak uzunluğunu tanımlar. N pozitif olursa kütüğün son biti S_BIT + N'dir ve DATA(lar)'ın hareket yönü küçük adresten büyüğe doğrudur. N negatif olursa kütüğün son biti S_BIT - N'dir ve hareket yönü terstir. Örneğin, S_BIT= V100.0 ve N=4 olsun. Bu durumda kütüğün ilk adresi (DATA'nın yazılacağı yer) V100.0, ve son adresi de V100.3'tür. Bu iki adres arasındaki bitlerin durumuna göre örneğin dört sensörden geçen bir bant hattındaki malzemelerin takibi yapılabilir. Shift register’in maksimum değeri pozitif veya negatif 64’dür. Bir taramada en fazla bir kaydırma yapılabilir. Hafızayı Doldur Sembol: FILL_N EN IN Açıklama:
N
OUT
Bu komut, başlangıç adresi OUT ile tanımlanan bölgeye IN word'ündeki değer N word kere yazılır. N'in değeri 1 ila 255 arasında olabilir.
.
29
KOU T.E.F. PLC KURS NOTU
İNTERRUPT Interrupt İlişkilendir Sembol: ATCH EN INT Operandlar:
EVEN
INT (bayt):
CPU 212: 0-31 CPU 214/215/216: 0-127
EVENT (bayt):
CPU 212: 0, 1, 8-10, 12 CPU 214: 0-20 CPU 215: 0-23 CPU 216: 0-26
Açıklama: Bu komut, bir interrupt olgusunu (EVENT) bir interrupt altprogramıyla (INT) ilişkilendirir ve interrupt olgusuna izin verir. Interruptlar öncelik grubuna göre CPU tarafından “ilk gelen ilk hizmet alır” prensibiyle işlenir. Bir anda sadece bir interrupt aktif olabilir. Bir interrupt çalışırken başka biri oluşursa (önceliği olsa bile) sonraki sıraya alınır (kaybolmaz). Eğer sistemin taşıyacağından daha fazla sayıda interrupt oluşursa, interrupt görevi taşma özel hafıza biti set edilir. Görev alanı boşalınca ve program akış kontrolu ana programa dönünce bu bit resetlenir. Bir taşma oluşmadan, görev için aşağıdaki sayıda interrupt bekleyebilir. Interrupt Tipi CPU 212 CPU 214 CPU 215 CPU 216 İletişim 4 4 4 8 Giriş/Çıkış 4 16 16 16 Zaman kontrollu 2 4 8 8 Interrupt İlişkisini Kaldır Sembol: DTCH EN EVEN Operandlar: EVENT (bayt): CPU 214: 0-20
CPU 212: 0, 1, 8-10, 12
30
KOU T.E.F. PLC KURS NOTU
CPU 215: 0-23 CPU 216: 0-26 Açıklama: Bu komut, bir interrupt olgusunun (EVENT) bütün interrupt altprogramlarıyla ilişkisini keser ve interrupt olgusunu engeller. Interrupt Altprogramı Sembol: n INT
Operandlar: n (word): CPU 212: 0-31 CPU 214/215/216: 0-127 Açıklama: Interrupt altprogramı (n) başlangıcını gösterir. Interruptlara İzin Ver Sembol: ENI Bu bobin, ilişkilendirilmiş bütün interrupt olgularının işlenmesine izin verir. Interrupt İznini Kaldır Sembol:
DISI
Açıklama: Bütün interruptların işlenmesini engeller. 31
KOU T.E.F. PLC KURS NOTU
Interrupttan Dönüş Sembol: RET I RET I
Koşullu Geri Dön
Koşulsuz Geri Dön
Açıklama: Koşullu dön bobini, öncesindeki mantık 1 ise interrupt altprogramını sona erdirir. (CPU 210 tarafından desteklenmez.) Koşulsuz geri dön bobini her interrupt programının son devresi olarak bulunmalıdır.
32
KOU T.E.F. PLC KURS NOTU
V. UYGULAMA ÖRNEKLERİ UYGULAMA 1-A UYGULAMA : KONTAK EMNİYETLİ ASENKRON MOTORLARIN İKİ YÖNDE ÇALIŞTIRILMASI Teorik Bilgi ; Üç fazlı asenkron motorların devir yönlerinin değiştirilmesi, iki fazın yerlerinin değiştirilmesi ile olmaktadır. Motor bir yöne doğru dönerken, motorun enerjisi kesilmeden diğer yöne döndürülmeye çalışılması motorlara zarar vermektedir. Bu nedenle kontak emniyetli çalıştırma kullanılır. Bu çözüm ile motorun enerjisinin kesilmeden diğer yönde çalıştırılması engellenmiş olur. Programın Yazılması ( LADDER VE STL ) ;
Uygulamanın Yapılışı ; Yukarıdaki şekilden de anlaşılacağı gibi, merdiven diyagramı (LADDER) veya boolean dili (STATEMENT LIST – STL) kullanılarak program yazılır. PLC üzerinde Q0.0 çıkışı ileri kontaktörüne, Q0.1 çıkışı geri kontaktörüne bağlanır. I0.1ileri yön start butonunun NA kontağı üzerine bağlanır. I0.2 geri yön start butonunun NA kontağı 33
KOU T.E.F. PLC KURS NOTU
üzerine bağlanır. I0.0 stop girişidir ve stop butonunun NK kontağı üzerinden bağlanır. Stop butonlarının PLC yazılımında NA kontak olarak gösterilmelerinin sebebi, stop butonlarının NK kontakları üzerinden bağlanıyor olmalarıdır. Program PLC ‘ye gönderilerek (Download edilerek) programın çalışması PLC ‘ye bağlı kontaktörlerin çalışmalarından takip edilir. I0.0 I0.1 I0.2 Q0.0 Q0.1
STOP BUTONU İLERİ YÖN BUTONU GERİ YÖN BUTONU İLERİ YÖN ÇIKIŞI GERİ YÖN ÇIKIŞI
. 34
KOU T.E.F. PLC KURS NOTU
UYGULAMA 1-B UYGULAMA ADI : BUTON EMNİYETLİ ASENKRON MOTORLARIN İKİ YÖNDE ÇALIŞTIRILMALARI Teorik Bilgi ; İki yollu butonlar arasında yapılan bağlantıya, buton kilitleme denir. Böyle bir devrede ileri dönüş kontaktörünün akımı (geri) butonunun üst kontaklarından, geri dönüş kontaktörünün akımı da (ileri) butonunun üst kontaklarından devresini tamamlar. Buton kilitlemeli bir bağlantıda, (STOP) butonuna basmadan motorun dönüş yönü değiştirilebilir. Yalnız bu durumda motorun dönüş yönü ani olarak değişir. Ani olarak dönüş yönünün değiştirilmesi, güç yol alan motorlara uygulanmaz. Aksi takdirde motor şebekeden çok büyük akım çeker. Programın Yazılması (LADDER VE STL) ;
.
35
KOU T.E.F. PLC KURS NOTU
Uygulama Yapılışı ; Yukarıdaki şekilden de anlaşılacağı gibi, merdiven diyagramı (LADDER) veya boolean dili (STATEMENT LIST – STL) kullanılarak program yazılır. PLC üzerinde I0.2 butonunun kapalısı ile Q0.0 çıkışı ileri kontaktörüne, I0.1 butonunun kapalısı ile Q0.1 çıkışı geri kontaktörüne bağlanır. I0.1ileri yön start butonunun NA kontağı üzerine bağlanır. I0.2 geri yön start butonunun NA kontağı üzerine bağlanır. I0.0 stop girişidir ve stop butonunun NK kontağı üzerinden bağlanır. Stop butonlarının PLC yazılımında NA kontak olarak gösterilmelerinin sebebi, stop butonlarının NK kontakları üzerinden bağlanıyor olmalarıdır. Program PLC ‘ye gönderilerek (Download edilerek) programın çalışması PLC ‘ye bağlı kontaktörlerin çalışmalarından takip edilir. I0.0 I0.1 I0.2 Q0.0 Q0.1
STOP BUTONU İLERİ YÖN BUTONU GERİ YÖN BUTONU İLERİ YÖN ÇIKIŞI GERİ YÖN ÇIKIŞI
.
36
KOU T.E.F. PLC KURS NOTU
UYGULAMA - 2 UYGULAMA ADI : ASENKRON MOTORA YILDIZ - ÜÇGEN YOL VERME Teorik Bilgi ; Özellikle büyük güçlü motorların kalkınma anında çektikleri akım oldukça yüksektir (Yaklaşık nominal akımın 3 katı yüksek akım çekerler). Bu dezavantajdan kurtulmak için, motor ilk önce yıldız çalıştırılır. Böylece motor sargılarına daha düşük gerilim uygulanmış olur( Anma gerilimi 380V olan bir motor için 220V olur). Böylece motora yol verilirken daha az akım çekmesi sağlanmış olur. Motor belli bir süre çalıştıktan sonra (3 sn-5 sn arası uygundur) bir zaman rölesi ile üçgen çalışmaya otomatik olarak alınır. Programın Yazılması (LADDER VE STL) ;
37
KOU T.E.F. PLC KURS NOTU
Uygulama Yapılışı ; Yukarıdaki şekilden yararlanarak LADDER veya STATEMEN LIST’ ten yararlanarak programın yazılımını yapınız. TIMER’ ın nasıl kullanıldığını hatırlamak için zamanlayıcılar konusunu tekrar gözden geçirebilirsiniz. Devrede program çalıştığı zaman motor Yıldız yol alacak ve Timer’a bağlı olarak ayarlamış olduğunuz zaman gereği 5sn sonra motor üçgen yol alıp çalışmasına devam edecektir. I0.0 //STOP I0.1 //START Q0.1 //YARDIMCI KONTAKTÖR ÇIKIŞI (K1) Q0.0 //YILDIZ KONTAKTÖR ÇIKIŞI (K3) Q0.2 //ÜÇGEN KONTAKTÖR ÇIKIŞI (K2) Güç Devresi ;
38
KOU T.E.F. PLC KURS NOTU
UYGULAMA - 3 UYGULAMA ADI : ZAMANLAYICILARIN ÖĞRENİLMESİNE İLİŞKİN BİR KUMANDA DEVRESİ ÇÖZÜMÜ Problem ; Start butonuna basıldığında M1 motoru devreye girerek yol almaktadır. M1 bağlandıktan 15 Sn sonra M2 motoru, M2 bağlandıktan 30 Sn sonra M3 motoru, M3 bağlandıktan 45 Sn sonra M4 motoru devreye girmektedir. Stop butonuna basıldığı zaman, M1, M2, M3, M4 motorları 3’er Saniye aralıklarla devreden çıkmaktadır. Sistemin Çalışması ; Start butonuna basılması ile M1 kontaktörü çalışmaktadır. Dolayısı ile Q0.0 çıkışının da kontakları yer değiştirir ve T37 zamanlayıcısı devreye girer ve saymaya başlar. 15’inci saniyede T37 kontakları konum değiştirir ve M2 kontaktörü çalışır. Dolayısı ile Q0.1 çıkışı da devreye girerek kontakları konum değiştirir ve T38 zamanlayıcısı devreye girerek saymaya başlar. T38 30’uncu saniye sonunda M3 kontaktörünü çalıştırır. Dolayısıyla Q0.2 çıkışı da devreye girerek kontakları konum değiştirir ve T39 zamanlayıcısı devreye girerek saymaya başlar. T39 45’inci saniye sonunda M4 kontaktörünü devreye alır. Dolayısıyla Q0.3 çıkışı da devreye girerek kontakları konum değiştirir ve devrenin çalışma noktası sağlanmış olur. Stop butonuna basılmasıyla yardımcı kontaktör devreye girer. Dolayısıyla Q0.4 çıkışı etkin olarak kontakları konum değiştirir ve T39’un enerjisini keserek, T39 ‘un kontakları tekrar eski konumuna döner ve M4 motorunun enerjisini keserek motoru devreden çıkartır. Q0.4 çıkışı aynı zamanda T33 zamanlayıcısını devreye alarak saymaya başlamasını sağlar. T33 3’üncü saniye sonunda kontakları konum değiştirerek T34 zamanlayıcısını devreye alıp T38 zamanlayıcısına bağlı kontağını açarak, T38 zamanlayıcısının enerjisiz kalmasını sağlar. Bu anda T38 devreden çıkıp ilk andaki konuma gelen kontakları nedeni ile M3 motorunun da enerjisi kesilmiş olur. Böylece M3 motoru devreden çıkmış olur. T34 zamanlayıcısı da 3’üncü saniye sonunda kontakları konum değiştireceği için T37 zamanlayıcısının enerjisi kesilir ve T37 kontakları ilk konumlarına dönerken M2 motorunun da enerjisi kesilmiş olur ve devreden çıkar.T34’ün enerjilenmesi sırasında T35 ‘i de devreye alarak enerjilenip saymaya başlamasını sağlar. T35 zamanlayıcısı 3’üncü saniye sonunda kontakları konum değiştirir ve M1 motorunun enerjisiz kalmasına, dolayısı ile M1’in de devreden çıkmasını sağlamış olur. Böylece çevrim tamamlanmış olur ve sistemin görevini yerine getirdiği görülür. I0.0 //START BUTONU I0.1 //STOP BUTONU Q0.0 //M1 KONTAKTÖR ÇIKIŞI 39
KOU T.E.F. PLC KURS NOTU
Q0.1 Q0.2 Q0.3 Q0.4
// M2 KONTAKTÖR ÇIKIŞI // M3 KONTAKTÖR ÇIKIŞI // M4 KONTAKTÖR ÇIKIŞI //YARDIMCI KONTAKTÖR ÇIKIŞI
Programın Yazılması (LADDER VE STL) ;
40
KOU T.E.F. PLC KURS NOTU
41
KOU T.E.F. PLC KURS NOTU
42
KOU T.E.F. PLC KURS NOTU
UYGULAMA - 4 UYGULAMAİN ADI : SAYICI VE ZAMANLAYICI TEMELİNDE ÇALIŞAN KUMANDA DEVRESİNİN PROGRAMLANMASI Problem ; M1, M2, M3 motorları 10’ar saniye aralıklarla devreye girecektir. Üçü birden 10 saniye süreyle çalışacaktır. Sonra üçü birden on saniye süreyle duracaktır. Bu işlemlerden sonra yine aynı sırayla aynı olay tekrarlanacaktır. Beşinci (5) çevrim sonunda sistem kendiliğinden duracaktır. Sistemin tekrar çalışması için resetleme yapılacaktır. Sistemin Çalışması ; Start butonuna basılması ile M1 kontaktörü enerjilenir. M1 kontaktörünün kontakları konum değiştirir, dolayısıyla T37 zamanlayıcısı devreye girmiş olur. T37 zamanlayıcısının 10 Sn sonra kontakları konum değiştirerek M2 kontaktörü devreye girer. M2 kontaktörünün kontakları konum değiştirerek T36 zamanlayıcısını devreye alır. T36 zamanlayıcısı 10’uncu saniye sonunda kontaklarının yer değiştirmesi ile M3 kontaktörünün devreye girmesini sağlamış olur. Böylece motorların hepsini 10’ar saniye aralıklarla devreye almış olduk. Aynı anda (M3 devreye girdiği anda) T35 zamanlayıcısı da devreye girmiş olur ve 10’uncu saniye sonunda kontakları konum değiştirerek üç motoru da devreden çıkarmış olur. Aynı anda T35, T32 zamanlayıcısının da devreye girmesini sağlamış oldu. T32 zamanlayıcısı 10 saniye saydıktan sonra kontaklarının konumlarını değiştirerek, T35 zamanlayıcısını devreden çıkarttı. Devre 1 ‘de bulunan NA kontağı üzerinden sistemi yeniden başlattı. Counter’in önünde bulunan T35 zamanlayıcısının NA kontağı, T35 her aktif olduğunda Counter up’ı 1 artırarak, ayarlanan 5’inci çevrimi tamamladığı zaman devre 1’de bulunan C1 kontağını açarak, aynı anda kendini de resetleyerek sistemi ve tüm motorları durdurmuş olur. Counter ilk konumuna dönmüş olur.
T35 : RESETLEME BUTONU I0.0 : START BUTONU Q0.0 : M1 MOTORU KONTAKTÖR ÇIKIŞI Q0.1 : M2 MOTORU KONTAKTÖR ÇIKIŞI Q0.2 : M3 MOTORU KONTAKTÖR ÇIKIŞI
Programın Yazılması (LADDER VE STL) ;
43
KOU T.E.F. PLC KURS NOTU
UYGULAMA - 5
44
KOU T.E.F. PLC KURS NOTU
UYGULAMA ADI : ZAMAN RÖLELİ TRAFİK LAMBASI KUMANDASININ PLC İLE DENETİMİ Teorik Bilgi ; PLC ’ler ve Flip-Flop devreleri yaygınlaşmadan önce trafik lambası sistemleri klasik otomatik kumanda yöntemleri ile yapılmaktaydı. Bu yöntemde kontaktörler ve sıra zaman röleleri kullanılmaktaydı. Bu yöntem hem maliyet, hem de işçilik açısından, hem de hantal görünümü nedeni ile yeni arayışlara yol açtı. Böylece PLC ’li ve Flip-Flop ‘lu devreler ortaya çıkmıştır. PLC ‘ler ; çıkışlarının direk 220V’a bağlanabilmesi, zaman rölelerini kendi içinde bulundurabilmesi nedeniyle çok pratik çözümler üretmiş ve kullanımı yaygınlaşmıştır. Bugün teknoloji devi haline gelen birçok ülkede PLC ‘lerin, birbirlerine bağlanabilmeleri, Network çalışabilmeleri gibi avantajlarla tüm şehrin trafik ışığı düzenleri bir merkezden yapılabilmektedir. Sistemin Çalışması : Start butonuna basılması ile birlikte sistem çalışmaya başlar. İlk olarak kırmızı lamba yanar, aynı anda T37 çalışmaya başlar. 20’nci saniye sonunda T37 kontakları konum değiştirerek sarı lamba yanar, aynı anda devre 1’deki T37 NK kontağı açılarak kırmızı lambayı söndürür. Bu sırada T37, T38’ide enerjilendirmiştir. T38 20’nci saniye sonunda kontakları konum değiştirir ve yeşil lambayı yakar. Aynı anda sarı lambayı söndürür ve T39 devreye girmiştir. T39 20’nci saniye sonunda T37’yi devreden çıkarır. T37’nin devreden çıkması ile yeşil lamba söner. Aynı anda devre 1’de bulunan T37’nin NK kontağı ilk konuma gelerek enerjinin geçmesine izin verir ve böylece çevrim tekrar başlamış olur. Bu uygulamada Q0.1 yardımcı kontaktörü ucu boş bırakılır. Bilindiği gibi bu çıkışın kontakları PLC içinde mevcuttur. Eğer çıkışlarımız yeterli olmasa idi, bu çıkışı FLAG’lara atayabilirdik. I0.0 I0.1 Q0.1 Q0.0 Q0.2 Q0.3
: STOP BUTONU : START BUTONU : YARDIMCI KONTAKTÖR : KIRMIZI LAMBA : SARI LAMBA : YEŞİL LAMBA
45
KOU T.E.F. PLC KURS NOTU
Programın Yazılması (LADDER VE STL) ;
46
KOU T.E.F. PLC KURS NOTU
47
KOU T.E.F. PLC KURS NOTU
UYGULAMA - 6 UYGULAMA ADI DURDURMA
:
BİR KUMANDA BUTONU İLE ÇALIŞTIRIP
Teorik Bilgi : Bu uygulamada bir butonun hem start hem de stop butonu olarak kullanılması öğrenilecektir. Bağlanacak buton NA kontağı üzerinden start butonuymuş gibi bağlanacaktır. Bu çalışma sisteminde butona ilk basışımız start, ikinci basışımız stop olarak değerlendirilir. Programın Yazılması (LADDER VE STL) ;
48
KOU T.E.F. PLC KURS NOTU
UYGULAMA - 7 UYGULAMA ADI : SET-RESET KOMUTLARININ İNCELENMESİ Teorik Bilgi ; PLC ‘lerde normal bobin çıkışlarının yanı sıra, bir çok özel işlemler yapan çeşitli bobinler de bulunur. SET-RESET bobinleri de bunlardan biridir. Set’e giriş yapılması ile bobin kurulmuş olur, kontaklarının konumlarını değiştirir. Reset ‘e giriş yapılması ile bobin yeniden ilk durumuna döndürülmüş olur. Sistemin Çalışması ; Set butonuna basılması ile Set-Reset bobini enerjilenir ve Q0.1 çıkışını aktif yapar. Reset butonuna basılması ile Set-Reset bobini ilk halini alır ve Q0.1 çıkışını keser. Programın Yazılması (LADDER VE STL) ;
I0.0 I0.1 Q0.0 Q0.1
: SET BUTONU : RESET BUTONU : SET-RESET BOBİNİ : ÇIKIŞ KONTAKTÖRÜ
49
KOU T.E.F. PLC KURS NOTU
UYGULAMA - 8 UYGULAMA ADI : DEĞİŞİK GİRİŞ ELEMANLARI İLE MOTORLARA YOL VERME Problem ; Devrede NA push-start, NK push-stop, bir adet basınç sensörü, bir adet sıcaklık sensörü, üç ayrı lamba, iki adet motor bulunmaktadır. Starta basıldığında M1 ve M2 motorları çalışmaya başlıyor, Sıcaklık sensöründen sinyal geldiğinde sarı lamba 1 Sn aralıklarla yanıp sönmektedir, Hem basınç hem de sıcaklık sensörünün her ikisinden sinyal gelmesi halinde kırmızı lamba 1 sn aralıklarla yanıp sönmektedir, Sıcaklık ve basınç sensörlerinden herhangi birinden sinyal gelmesi durumunda ise yeşil lamba 1 Sn aralıklarla yanıp sönmektedir. Sistemin Çalışması ; Devre 1 ve Devre 2 bloğunda görülen T37 ve T38 zamanlayıcılarından (timer) oluşan blok standarttır ve bir çeşit Flip-Flop görevi yapmaktadır. Bu bağlantı iki zamanlayıcının birbirini 1 Sn aralıklarla devreye girip çıkarmasını sağlar. Bunların herhangi birinin, herhangi bir kontağı lamba önüne bağlanırsa, bu; lambanın zamanlayıcıların süresi ile eş zamanlı olarak yanıp söndüğünü gösterir. Start butonuna basılması ile her iki motorun kontaktörü enerjilenir ve motorlar kalkınır. Programdan anlaşıldığı gibi sıcaklık sensörünün aktif olması ile sarı lamba yanıp söner. Birbirine seri bağlı sıcaklık ve basınç sensörü ancak ikisinin birden aktif olması ile enerjiyi geçirir ve kırmızı lamba yanıp sönmesini sağlar. Son satırda yapılan paralel bağlantı ile sıcaklık veya basınç sensörlerinden herhangi birinden sinyal gelmesi durumunda enerji geçişine izin verir ve yeşil lambanın yanmasını sağlar. Bunlardan ayrı olarak devre akış şemasına göre her iki sensörden (sıcaklık ve basınç sensörleri) sinyal gelmesi durumunda her üç lamba yanıp söner. Yalnız basın sensöründen sinyal gelmesi ile kırmızı ve yeşil lamba yanıp söner. Yalnız sıcaklık sensöründen sinyal gelmesi durumunda sarı ve yeşil lamba beraber yanıp söner. I0.0 I0.1 I0.2 I0.3 Q0.0 Q0.1 Q0.2 Q0.3 Q0.4
: STOP BUTONU : START BUTONU : SICAKLIK SENSÖRÜ : BASINÇ SENSÖRÜ : M1 MOTORU KONTAKTÖRÜ ÇIKIŞI : M2 MOTORU KONTAKTÖRÜ ÇIKIŞI : SARI LAMBA ÇIKIŞI : KIRMIZI LAMBA ÇIKIŞI : YEŞİL LAMBA ÇIKIŞI
50
KOU T.E.F. PLC KURS NOTU
Programın Yazılması (LADDER VE STL) ;
51
KOU T.E.F. PLC KURS NOTU
UYGULAMA - 9 UYGULAMA ADI : ÜÇ ANAHTARLARLA MOTORU OTOMASYONU
AYRI POZİSYONA SAHİP DÖNER KUMANDA EDİLEN BİR KAPININ
Teorik Bilgi ; Bu program örneğinde, üç ayrı pozisyona sahip, döner anahtarlarla motoru kumanda edilen bir kapının otomasyonu gösterilmektedir. Kapının açık veya kapalı olduğunu göstermek üzere iki ayrı anahtar kullanılmıştır. Bu anahtarlardan ve kumanda anahtarlarından gelen sinyallere göre kapı kumanda edilir. Acil kapanma düğmesi ise sistemi her durumda kapatır. Gerçekleştirilmesi Gereken Kontroller ; İÇ KİLİT ; -Kapı kapalı olduğu halde kapanma komutu verilirse motor çalıştırılmaz -Kapı açık olduğu halde açma komutu verilirse motor çalıştırılmaz. ACİL KAPANMA ; ACİL KAPANMA düğmesine basıldığı takdirde bütün CPU çıkışları sıfırlanır motorlar durdurulur. I0.0 I0.1 I0.2 I0.3 I0.4 Q0.0 Q0.1 Q0.3 Q0.4 Q0.5
ve
: Kapıyı kapa sinyali-döner anahtar sola getirildiğinde : Kapıyı açma sinyali-döner anahtar sağa getirildiğinde : Kapanma pozisyonunu gösteren anahtar : Kapının açıldığını gösteren BERO yaklaşım anahtarı : ACİL KAPANMA anahtarı : Motora kapatma işlemi komutu : Motora açma işlemi komutu : Kapının hareket halinde olduğunu gösteren 1 Sn aralıklı Flaşör : Kapı kapalı lambası çıkışı : Kapı açık lambası çıkışı
Programın Algoritması ; Yukarda da açıklandığı üzere kapının çalışma ve başvurduğu kontrol ünitelerini algoritma akış diyagramı, aşağıda da görüldüğü gibi daha iyi anlaşılacaktır.
52
KOU T.E.F. PLC KURS NOTU
Program Başlangıcı
Dönmeli Anahtarı Aç veya Kapat Pozisyona Getirildi mi?
END
İç Kilit Çalıştırıldı mı?
END
Döner Anahtar KAPAT Pozisyonunda mı? Döner Anahtar AÇMA Pozisyonunda mı?
MotoruKapanma Yönünde Çalıştır. Çıkış Q0.0 ‘ı 1 Yap Flaşör Q0.3’ü çalıştır. Eğer Q0.5=1 ise Flaşörü Resetle.
Motoru Açma Yönünde Çalıştır. Çıkış Q0.1 ‘ı 1 Yap Flaşör Q0.3’ü çalıştır. Eğer Q0.4=1 ise Flaşörü Resetle.
Kapı Kapandı mı?
Motoru Kapat Çıkış Q0.1’i sıfırla falaşörü durdur Çıkış Q0.4’ü 1 yap
Kapı Açıldı mı?
END
END
Programın Yazılması (LADDER VE STL) ; 53
Motoru Kapat Çıkış Q0.1’i sıfırla flaşörü durdur Çıkış Q0.5’i 1 yap
KOU T.E.F. PLC KURS NOTU
54
KOU T.E.F. PLC KURS NOTU
55
KOU T.E.F. PLC KURS NOTU
UYGULAMA - 10 UYGULAMA ADI : MERDİVEN AYDINLATMA SİSTEMİNİN PLC İLE DENETİMİ Teorik Bilgi ; Bu program örneği merdiven aydınlatma sistemlerini ele almaktadır. Katlardaki ON (AÇIK) düğmeleri, kontrol ünitesinin I0.0 girişine bağlanmıştır. ON (AÇIK) push butonuna basıldıktan sonra, ışıklandırma, 30 saniye süreyle yakılır (Q0.0). Bu süre içerisinde ON (AÇIK) push butonuna tekrar basılırsa, 30 saniyelik süre yeniden başlatılır ve böylece ışıklar, ışıkların yakıldığı ilk andan itibaren 30 saniye sonra sönmez. Sistemin Çalışması ; Giriş I0.0 ‘a, ON (AÇIK) işareti uygulandığında (I0.0=lojik’1’), zamanlayıcı biti T37 resetlenir, böylece T37 zamanlayıcısı, sıfırlanır ve aynı zamanda, çıkış Q0.0 ‘1’ ise yapılır. 30 saniye geçtikten sonra, zamanlayıcı biti T37 ‘yi de ‘1’ yapar ve bu da çıkış Q0.0 ‘ı resetler (0 yapar). Programın Algoritması ; Ana Programı Başlat
Süre Doldu mu? ON Butonuna Basıldı mı?
Işıkları Söndür
Işık Zamanlayıcısını Tekrar Çalıştır. END Zamanlayıcıya İzin Ver
56
KOU T.E.F. PLC KURS NOTU
Programın Yazılması (LADDER VE STL) ;
57
KOU T.E.F. PLC KURS NOTU
UYGULAMA - 11 UYGULAMA ADI ; YAYA GEÇİDİ OLAN BİR YOLDAKİ TRAFİK IŞIKLARININ PLC İLE DENETİMİ Teorik Bilgi ; Bu programda, bir yaya geçidinde trafik ışıklarının uygulanmasını göreceğiz. Tasarlayacağımız sistemde, araçlar için KIRMIZI-SARI-YEŞİL lambalar ve yayalar için KIRMIZI-YEŞİL olmak üzere toplam 5 lamba ile bunların yanında yayaların karşıdan karşıya geçmek istediklerini iletmek için bir düğmeye ihtiyaç vardır. Normalde, araçlar için YEŞİL yanan trafik lambası, yayalar için ise doğal olarak KIRMIZI ‘dır. Yayalar karşıdan karşıya geçmek istediklerinde düğmeye basarak komut verip, araçlara yanan ışığın sırayla YEŞİL-SARI-KIRMIZI yanmasını sağlarlar. Daha detaylı olarak incelersek eğer; Yayalar düğmeye basarlar, Araçlara 10 Sn SARI ışık yakılır, Araçlara 30 Sn KIRMIZI ışık yakılır, Yayalara 30 Sn YEŞİL ışık yakılır, Yayalara KIRMIZI ışık yakılır, 10 Sn bekledikten sonra YEŞİL ışık yakılır. Kullandığımız giriş ve çıkışları listelersek; I0.0 Q0.0 Q0.1 Q0.2 Q0.3 Q0.4
: Yayaların karşıya geçmek için bastığı düğme, : Araçlara YEŞİL ışık, : Araçlara SARI ışık, : Araçlara KIRMIZI ışık, : Yayalara YEŞİL ışık, : Yayalara KIRMIZI ışık
58
KOU T.E.F. PLC KURS NOTU
Programın Yazılması (LADDER VE STL) ;
59
KOU T.E.F. PLC KURS NOTU
60
KOU T.E.F. PLC KURS NOTU
UYGULAMA - 12 UYGULAMA ADI : BİR REKLAM PANOSUNDAKİ LAMBALARI SIRAYLA YAKMAK İşleme Başlama ; Lambaları sırayla yakma işlemi, start düğmesine basılması ile başlar. İşlemi Sona Erdirme ; Start girişinin enerjisi kesildikten sonra lambaların yanma sırası tamamlanır ve daha sonra bütün işlem kesilir.
Sembol B1 L1 L2 L3 L4 L5 L6 L7
Operatör I0.0 Q0.0 Q0.1 Q0.2 Q0.3 Q0.4 Q0.5 Q0.6 T41-T47
Açıklama Anahtar “S” “I” “M” “A” “T” “I” “C” Zamanlayıcılar
61
KOU T.E.F. PLC KURS NOTU
Programın Yazılması (LADDER VE STL) ;
62
KOU T.E.F. PLC KURS NOTU
63
KOU T.E.F. PLC KURS NOTU
UYGULAMA - 13 UYGULAMA ADI ; BİR PRESİN PLC İLE DENETİMİ Teorik Bilgi ; Bu örnekte, bir presin kullanıcıyı korumak üzere birçok güvenlik metodu ile aynı anda yönetildiği bir sistemi göreceğiz. Tasarlayacağımız presin çalışma prensiplerini aşağıdaki gibi listelersek eğer; Sıkıştırma kafasını aşağıya indirmek ; Biraz evvel açık olan güvenlik anahtarlarının (S6 veya S7 limit anahtarları) ikisinin birlikte kapanmış olması, Presin en tepe pozisyonda bulunması yani S8 limit anahtarının aktif edilmiş olduğu pozisyon, Pres duruyorken, S1 ve S2 anahtarlarının ikisinin birden aktif hale getirilmesi. Sıkıştırma kafasını ve presi aşağıya inerken durdurmak ; İki tanesinin birden çalışma sırasında basılması gereken anahtarlardan (S1 ve S2) herhangi birinin bırakılması, Güvenlik ekranının açılması, Sıkıştırma kafası, Sıkıştırma kafasını yukarıya çekme ; Eğer sıkıştırma kafası en alt pozisyona geldiyse, ekzantrik sürücü tarafından yukarıya kaldırılır. Bu süre zarfında güvenlik ekranının açılması işlemi durdurmaz. Makinenin çalışma çevrimi Presin sıkıştırma kafası en yukarıya çıkınca sona erer. Programda kullanılan elemanların sembolik tablosu ; Sembol S8
Operatör I0.0
S1 S2 S3
I0.1 I0.2 I0.3
S6 S7 M
I0.4 I0.5 Q2.0 M1.0 M1.1 M1.2
Açıklama Pres kafasının en yüksek pozisyonda olduğunu gösteren limit anahtar. İki elle basılması gereken anahtarlardan 1‘ncisi İki elle basılması gereken anahtarlardan 2‘ncisi Pres kafasının en alt pozisyonda olduğunu gösteren limit anahtar. Güvenlik limit anahtarlarından 1’incisi. Güvenlik limit anahtarlarından 2’incisi. Motor sürücüsü. Presin bir devrini tamamladığını gösteren indikatör. Presin aşağıya indiğini gösteren indikatör. Presin yukarıya çıktığını gösteren indikatör.
64
KOU T.E.F. PLC KURS NOTU
Presin Çalışma Sistemi (Basitçe) ;
65
KOU T.E.F. PLC KURS NOTU
Programın Yazılması (LADDER VE STL) ;
66
KOU T.E.F. PLC KURS NOTU
UYGULAMA - 14 UYGULAMA ADI ; KAPI KUMANDA SİSTEMİ Teorik Bilgi ; Bir kapının herhangi bir şekilde açıldıktan sonra 10 Sn içinde otomatik olarak kapamayı istediğimizi düşünelim. Bu sistemi gerçekleştirmek için gerekenler; Bir kapı, Kapı kapanınca basılarak elektrik geçmesine sebep olacak düğme, Kapıyı döndürmek için bir düğme, Motorun kapıyı döndürebilmesi için gerekli dişliler, Uygun miktarda kablo, Motoru dişlilerle kapıyı döndürebilecek şekilde monte ettikten sonra CPU ile bağlantılarını yapın. CPU çıkışlarından Q0.0 ‘ı motoru kumanda etmek için kullanırsak eğer, Q0.0 çıkışını ve CPU ‘nun nötr ucunu motora bağlamamız gerekir. Kapı kapandığında, kapının kapandığını CPU ‘ya bildiren, yani CPU ‘ya 24V kapandı sinyalinin gelmesine sebep olan düğmeyi de CPU ‘nun girişlerinden I0.0 ‘a bağlamayı unutmayalım. Bütün bu bağlantıları dikkatli bir şekilde yaptıktan sonra kontrol edip, (özellikle kapı açık-kapı kapalı sinyali veren düğmelerin bağlantıları doğru yapılmalıdır) programın yazılması ve CPU ‘nun Run edilmesi sistemin çalışmasını başlatacaktır. Programın Yazılması (LADDER VE STL) ;
67
KOU T.E.F. PLC KURS NOTU
68