- Zamanlayıcı ve sayıcı neyi çözer?
- Zamanlayıcı tipleri: TON, TOF ve TP
- Sayıcı tipleri: CTU, CTD ve CTUD
- Örnek akış: konveyör başlatmadan önce uyarı ve parça sayma
- Sık yapılan hatalar
- Zamanlayıcıyla süzme, zaman aşımı ve durum makinesi
- Bu beceriyi Mindset programlarında nerede çalışırsınız
- Sık sorulan sorular
PLC'de timer ve counter kullanımı: gecikme, darbe ve sayma adım adım
PLC'de gecikmeli çalıştırma, gecikmeli durdurma, darbe ve sayma nasıl yapılır: timer ve counter tipleri, parametreler, örnek akışlar ve yaygın hatalar.
Zamanlayıcı ve sayıcı neyi çözer?
PLC programında sürekli şu sorulara yanıt aranır: "bu durum ne kadar süredir doğru?" ve "bu olay kaç kez oldu?". Birincisi zamanlayıcıyla (timer), ikincisi sayıcıyla (counter) çözülür. Bu komutlar, mantık basamağından çıkış bitini üretmek için kullanılan hazır komutlardır ve neredeyse her makine programında yer alır.
Zamanlayıcıların tipik işleri şunlardır: motorun hemen devreye girmesini engelleyip önce uyarı sireni çalmak, bir valfi belirli süre açık tutmak, sensörün anlık titremesini süzmek, bir adımın çok uzun sürmesi halinde zaman aşımı alarmı üretmek. Sayıcılar ise üretilen parçayı saymak, paletteki kutu sayısı dolunca sinyal vermek, bakım için çalışma çevrimlerini izlemek gibi işlerde kullanılır.
Bu komut aileleri farklı üreticilerde farklı sembollerle gelir, ama mantıkları IEC tabanlı komut kavramına dayanır. Siemens ortamında zamanlayıcı ve sayıcılar, kendi veri alanı olan bir blok olarak çağrılır; Rockwell ortamında ise bir etiket yapısı (tag) ile temsil edilir. Hangi ortamda çalışırsanız çalışın, önce komutun şu parçalarına bakın: tetikleyen giriş, hedef değer ve sonuç çıkışı.
Zamanlayıcı tipleri: TON, TOF ve TP
TON gecikmeli çalışma zamanlayıcısıdır. Girişi doğru olduğu sürece geçen süreyi ölçer; hedef süreye ulaşınca çıkışı doğru yapar. Giriş süre dolmadan düşerse zamanlayıcı sıfırlanır ve çıkış hiç etkinleşmez. Kullanım örnekleri: motorun çalışma izni için bekleme, titreşimli sensörü süzme.
TOF gecikmeli bırakma zamanlayıcısıdır. Giriş doğru olduğunda çıkış hemen doğru olur; giriş düşünce çıkış hedef süre kadar daha doğru kalır, sonra düşer. Soğutma fanını motor durduktan sonra bir süre çalışır tutmak klasik örnektir.
TP darbe zamanlayıcısıdır. Girişte kısa bir yükselen kenar bile görülse, çıkışı sabit bir süre boyunca doğru yapar; bu süre içinde giriş ne yaparsa yapsın çıkış aynı kalır. Bir valfe sabit uzunlukta komut verme ya da bir lambayı sabit süre yakma bu tipin işidir.
Siemens IEC zamanlayıcılarında bu tipler için ortak parametreler giriş (IN), hedef süre (PT), çıkış (Q) ve geçen süre (ET) şeklindedir. Rockwell ortamında zamanlayıcı yapısının hedef (PRE), biriken (ACC) ve bitti (DN) elemanları vardır. Parametre adlarını ve veri türlerini her zaman kendi platformunuzun yardım sayfasından kontrol edin.
Bir saha ipucu: geçen süre değerini bir HMI ekranında göstermek, hem devreye almada hem arıza aramada işi çok kolaylaştırır.
Sayıcı tipleri: CTU, CTD ve CTUD
CTU ileri sayıcıdır. Sayma girişinde her yükselen kenarda sayı bir artar; sayı hedef değere ulaşınca ya da onu geçince çıkış doğru olur. Reset girişi doğru olduğu sürece sayı sıfırda tutulur.
CTD geri sayıcıdır. Yükleme girişiyle bir başlangıç değeri atanır; her yükselen kenarda sayı azalır ve sıfıra ulaşınca çıkış etkinleşir. Stoktan çıkış sayma, "kalan parça" göstergeleri bu tipin işidir.
CTUD hem ileri hem geri sayar. Depo veya tampon alanı gibi içeri giren ve çıkan parçaları aynı sayıcıda izlemek istenen yerlerde işe yarar.
Siemens IEC sayıcılarında parametreler ileri sayma girişi (CU), geri sayma girişi (CD), reset (R), yükleme (LD), hedef değer (PV), çıkışlar (QU ve QD) ve güncel sayı (CV) olarak adlandırılır. Rockwell tarafında yine ayrı bir yapı içinde hedef, biriken ve bitti elemanları bulunur.
Kritik nokta: sayıcılar yükselen kenarla çalışır. Giriş doğru kaldığı sürece sayı artmaz. Eğer sayıcıya doğrudan bir sensörün seviye sinyalini verirseniz ve sensör kısa süre titrerse, aynı parça birden çok kez sayılabilir. Bu yüzden saha sensörleri için küçük bir süzme zamanlayıcısı eklemek yaygın bir önlemdir.
Örnek akış: konveyör başlatmadan önce uyarı ve parça sayma
Kurgusal bir senaryo üzerinden gidelim. Bir paketleme hattında operatör Start düğmesine bastığında konveyör hemen çalışmasın; önce uyarı sireni belirli bir süre çalsın, sonra bant harekete geçsin. Bant üzerindeki bir sensör geçen kutuları saysın ve palet dolduğunda bant dursun.
Akışı şöyle kurabilirsiniz: • Start düğmesi bir kendini tutma devresiyle "Hazirlik" bitini kurar. • "Hazirlik" biti hem sireni çalıştırır hem de TON zamanlayıcısının girişine bağlıdır; hedef süre bir değişkende tutulur, programın içine gömülmez. • TON çıkışı "Bant_Izin" bitini verir; konveyör çıkışı bu bit ve diğer güvenlik koşullarıyla çalışır. • Kutu sensörü, kısa bir süzme TON'undan geçtikten sonra CTU'nun sayma girişine bağlanır. • CTU'nun hedef değeri palet kapasitesine eşittir ve bir değişkenden okunur. Çıkış doğru olunca bant durur ve operatör uyarılır. • Palet değişince operatör onay düğmesine basar; bu düğme CTU'nun reset girişini ve "Hazirlik" bitini sıfırlar.
Bu akışta dikkat edilecek ayrıntı, zamanlayıcının çıkışı kullanılırken sıfırlama yolunun da tanımlanmış olmasıdır. Bir sayıcıyı reset etmeyi unutmak, ertesi vardiyada palet dolmadan bantın durmasının en yaygın nedenidir.
Sık yapılan hatalar
Zamanlayıcı ve sayıcılarla ilgili hataların büyük kısmı komutun davranışını bilmemekten çıkar: • Hedef süreyi ve hedef sayıyı programın içine sabit olarak gömmek. Değişiklik gerektiğinde program açılmak zorunda kalır. Değişkende tutun, gerekirse HMI'dan ayarlanabilir yapın. • Aynı zamanlayıcı yapısını farklı yerlerde kullanmak. Her zamanlayıcının kendi verisi olmalıdır; paylaşılan yapılar rastgele sıfırlanır. • Sayıcıya seviye sinyali bağlamak ve kenar algılamayı hesaba katmamak. • Sayıcıyı sıfırlamanın olası tüm yollarını düşünmemek: elektrik kesintisi, operatör müdahalesi, reçete değişimi. • Elektrik kesintisinde sayıcı ve zamanlayıcı değerlerinin korunup korunmadığını bilmemek. Hafızada tutulan (retentive) alanlar kesintiden sonra değeri korur, diğerleri sıfırlanır; hangi değerin korunması gerektiğine bilinçli karar verin. • Rockwell ortamında zamanlayıcı basamağı program akışında atlanırsa güncellenmeyebilir; atlanan bölgelerde zamanlayıcı koymaktan kaçının ya da sonuçlarını test edin. • Siemens ortamında IEC zamanlayıcıyı, her çağrıya ayrı veri alanı vermeden art arda çağırmak. Bu, çalışma sırasında beklenmedik davranışlara yol açar.
Her hatanın ortak çaresi, programı yalnızca normal akışta değil, kesinti ve arıza halleriyle de denemektir.
Zamanlayıcıyla süzme, zaman aşımı ve durum makinesi
Zamanlayıcının en değerli kullanımlarından biri gözetimdir (watchdog). Bir adımın başında zamanlayıcıyı başlatıp, beklenen sensör sinyali süre içinde gelmezse alarm üretmek, hem donmuş makineyi hem de kopmuş sensör kablosunu yakalar. Bu mantık "mutlu yol" yazan acemi programlarla deneyimli programlar arasındaki en belirgin farktır.
Zamanlayıcılar sıralı kontrolde de adımlar arası bekleme için kullanılır. Ancak bir sıralı programda her adım bir zamanlayıcıya bağlanırsa kod kısa sürede dağınıklaşır. Böyle durumlarda adım değişkeniyle çalışan bir durum makinesi kurmak ve tek bir zamanlayıcıyı adıma göre yeniden başlatmak daha sağlıklıdır.
Sayıcılar için de benzer bir kural vardır: parça sayısı gibi üretim verilerini PLC'de tutarken kesinti sonrası değerin korunması ve üst sisteme (SCADA, MES) aktarımı birlikte düşünülmelidir. Yalnızca PLC belleğindeki sayı, üretim kaydı sayılmaz.
Bu beceriyi Mindset programlarında nerede çalışırsınız
"PLC Programlama (Siemens TIA Portal)" eğitiminin Temel Komutlar ve Ladder Programlama ile Sıralı Kontrol ve Makine Mantığı modülleri, bu sayfadaki zamanlayıcı ve sıra mantığı konularını Siemens ortamında çalıştırır. "PLC Programlama (Allen-Bradley)" eğitiminde ise Temel Programlama ile Analog İşlemler ve Sıralı Kontrol modülleri Rockwell ortamında aynı becerileri ele alır.
Bu eğitimler otomasyon teknisyenleri, bakım mühendisleri ve hatta makine üreticisinde devreye alma yapan ekipler için uygundur. Kurumsal ekipler, kendi fabrikalarındaki platforma uygun olanı seçip bakım ve devreye alma ekiplerini aynı program dilinde eğitebilir.
İlgili Mindset programı
PLC Programlama (Siemens TIA Portal)
Sık sorulan sorular
TON ile TOF arasındaki temel fark nedir?
TON, girişin doğru kalma süresi dolunca çıkışı etkinleştirir; yani gecikmeli çalıştırır. TOF ise girişin düşmesinden sonra çıkışı belirlenen süre kadar daha açık tutar; yani gecikmeli bırakır. Motoru geç başlatmak için TON, fanı motor durduktan sonra çalışır tutmak için TOF kullanılır.
Sayıcı neden sürekli aynı parçayı birden çok kez sayıyor?
Genellikle sensör sinyali titrediği için yükselen kenar tekrar tekrar oluşur. Çözüm, sensör girişini kısa bir süzme zamanlayıcısından geçirmek ve sayıcıyı yalnızca tek bir temiz kenarla beslemektir. Mekanik konumlandırmayı ve sensör ayarını da kontrol etmek gerekir.
Elektrik kesilince zamanlayıcı ve sayıcı değerleri kaybolur mu?
Varsayılan olarak çoğu veri alanı kesinti sonrası sıfırlanır. Değerin korunması isteniyorsa hafızada tutulan (retentive) alan seçilmeli ya da sayıcı değeri ayrıca saklanmalıdır. Hangi sayıcının korunacağı üretim sürecine göre bilinçli karar gerektirir.
Aynı zamanlayıcı yapısını birden fazla yerde kullanabilir miyim?
Kullanmamalısınız. Her zamanlayıcı ve sayıcının kendine ait bir veri yapısı olmalıdır. Paylaşılan yapı farklı basamaklardan sıfırlanır ve çıkış tutarsız çalışır. Aynı mantığı birden çok yerde kullanacaksanız fonksiyon bloğu kurup her çağrıya ayrı bir veri alanı verin.
Zamanlayıcının hedef süresini programa gömmek yerine nerede tutmalıyım?
Bir değişkende veya reçete verisinde tutun, gerekirse HMI'dan ayarlanabilir yapın. Böylece devreye alma sırasında süreyi program açmadan değiştirebilirsiniz. Süreyi sabit yazarsanız her ince ayar program indirme gerektirir ve sürüm kontrolü zorlaşır.
İlgili rehberler
İlgili eğitimler
Kategori: Üretim, Kalite ve Endüstri 4.0