Merhaba arkadaşlar bugün sistem donanım özelliklerinden olan “Hafıza Bitleri ” ni göreceğiz.
Hafıza bitleri PLC ‘nin içine yüklenmiş olan kullanıcı dostu olan özel alanlardır. Buraya uaşmak için Proje ağacından PLC_1 kısmına sağ tık, Properties, System and Clock Memory Kısmından ulaşabiliriz.
Bugünkü dersimizde sistem memory bits incelelicez
Tick koyduktan sonra buradaki bitlere “1.” byte hafıza alanı default olarak yükleniyor. İstersek buraya 0-8191 arası giriş byte’ı girebiliriz
Bu bizim bitlerimizin başlangıç byte adresi “1” olucak. Sebebi şu, buraya girilecek başlangıç adresi bu işlemler için ayrılacağı için bu hafıza alanlarını başka bir alanda kullanamıyoruz. Dolayısı ile bu bitleri programcılar her zaman sabit bir sayı belirler ve o program içerisine yazar. Ki unutulmasın karışmasın.
Örnek olarak Oraya 500’de yazarsak kabul görecektir
Biz yine 1 e alıyoruz.
Şimdi Memory Bits de kendine özel alanlar var. Bunlara değinelim
First cycle: Adından da anlaşılacağı üzere döngüde ilk başta bir kereye mahsus çalışacak daha da asla çalışmayacak komuttur. Bu genelde bazı hafıza alanlarını başlangıçta set etmek için kullanılır. başlama değerleri vs.
Diagnostic status changed :PLC çalışırken bir olumsuzluk oluştuğunda, bu bit yükselen kenar ile bunu bize bildiriyor ve ilgilenmemiz gereken bri durum varsa haber veriyor.
Always 1 (high): Bu anahtar her zaman lojik 1 gönderir.
Always 0 (low): Her zaman lojik sıfır gönderir.
Çok Önemli !Ok ‘e basıyoruz ancak işlem tamamlanmadı. Çünkü tıpkı yazılım(diyagram) bilgisini PLC ye download ettiğimiz gibi. Donanım bilgisini de PLC’ye göndermemiz lazım
PLC sağ tık, Download to device, Hardware Congiguration.
Eğer bunu yapmazsak, programlamaya geçersek, ikinci aşamada hem programı hemde yazılımı atmamız gerekir. (Hardware and software(only changes)
İlk olarak First Cycle uygulamasına bir göz atalım
Projemize bir kontak ekliyoruz ve seçenekler orada yer alıyor
Doğru çalışıp çalışmadığını anlamak için iki adet First Cycle hafıza bitini alt alta bağlıyoruz ve birini set çıkışlı Q0.0 diğerini sade Q0.1 e bağlıyoruz. Eğer sadece bir kez çıkış veriyorsa, Q0.0 ın daima yanıp, Q0.1 in ise sönük kalması lazım uygulayalım.
eVet Q0.0 ın setlendiğini, Q0.1 in ise herhangi biR çıkış olmadığı görmüş olduk.
Şimdi bu uygulamayı bir de çıkışları set etmeden, Always komutları ile deneyelim
Bu uygulamada her zaman 1 ve her zaman 0 oldugunu görmemiz lazım uygulamada.
Gördüğümüz üzere a.t kontağı daima 1 a.f. kontağı daima 0 kaldı
Ve son olarak diagstatusuptade komutunu ele alalım
Bunun çalışmasını şu şekilde kontrol edicez. diagstatusuptade komutu alarm bildirme komutudur PLC içinde alarm durumu söz konusu olduğunda çıkış verir.
Bu kontağı bir çıkışla bağlayacağız. Alarm verdiği anda bu çıkış set olucak. Ve arıza tamir için servis buraya yönlenecek. Servis işini bitirdikten sonra set edilen bu arıza lambasını bir kontakla kapatacak.
Arıza verdirme işini nasıl yapacağız ?
Şu şekilde: PLC nin analog girişine max 10V kadar izin veriyor 10V üstü olunca uyarı alarm verir. Buradan PLC ye 10V üstü bir değer giricez ve alarm borularını öttüreceğiz 🙂
Programımız bu şekilde
Gerekli analog giriş bağlantılarını yapıyoruz ve
Analog girişin değerini arttırıyoruz 10 Vüzerine cıkıldıgında analog giriş hasar görme riski ile karıs karsıya kalıyor Bu yüzden PLC alarm veriyor bunu PLC üzerindeki ledlerden de görebiliyoruz.
Plc üzerindeki ısıklar da yandı error olarak. Aynı zamanda ana ekranda da error verdildiğini görmüş olduk
Burada arıza takip olarak yapılacak işlemler silsilesi şöyle:
Online&diagnostics , Diagnostik buffer Ver karşımıza çıkan pencere
Bu pencere aslında bizim PLC mizin günlüğü. bakın burada ne yaptıysak hepsini göstermiş. Bakın burada High Limit Exceeded kısmı var yani Limit aşımı bilgisi.
Burada üzerini tıklayınca altta error hakkında bilgi veriyor.
Şimdi bi an arızanın giderildiğini varsayalım ve Alarm incele çıkışını kaldıralım.
Program çalıştı
DARBE ÜRETİCİ HAFIZA BİTLERİ (CLOCK MEMORY BİTS)
Az önce özel hafıza bitlerini görmüştük şimdi ise darbe üretici hafıza bitlerini inceleyelim .
PLC_1 sağ tık, Properties, System and Clock Memory, Clock Memory
Başlangıç yine default olarak 0 atanmış bunu istersen değiştirebiliriz.
En hızlı pulse üreten hafıza biti M0.0 10 herz, En yavaş olan ise M0.7 0.5 herz yani yaklaşık olarak 2 saniyede bir Pulse
Bunu onaylıyoruz ve. Donanım ayarlarını download ediyoruz.
Donanım konfigürasyonunu PLC ye yüklememiz lazım ve yükledik
Şimdi bir kaç tanesini test edelim
UYGULAMA 1: Bir giriş kontağı ekliyoruz
1 herz’lik kontağı ekledik newtork 1 alanına
Network 2 ve 3 e ise :
Yükleyelim ve ledlerin nasıl hızlarda yanıp söndüğüne şahit olalım
Bilgi notu: 10 herzlik olan en hızlısıylı, en yavaşı ise 0.5 herzlik olandı neden ? açıklayınız
HAFIZA BİTLERİ VE SAYICI KULLANILARAK UYGULAMA ÖRNEĞİ
Senaryomuz şöyle olsun.
2 tane konveyor hattımız var bu hatlardan geçen şeyleri sayan ve toplayan basit bir sistem tasarlayalım
pv değerleri 1 yazıyoruz bir te toplayıcı kullanalım
hem de bu toplamalar nasıl oluyor ogrenmiş olcaz
2 adet yukarı sayıcıyı alt alta bağladık ve bunların önüne birer clock memory bit bağlıyoruz ki sık sık veri gelsin ve bu sayıcılar da saymaya devam etsin.
Resetleri kullanmıcağımız için boş bıraktık istersek bağlayabiliriz de. Aynı zamanda PV değerine 1 yazıyoruz çünkü işimize yaramıcak
3. Networke ise bu iki sayıcıdan gelen veriyi sayan ve toplayan bir toplayıcı ADD komutu ekliyoruz. IN1 ve IN2 girişlerine sayıcının CV değerlerini giriyoruz ki içindeki değeri anlık sayabilelim
ADD komutunu çıkışını ise bir hafıza alanına yazdırıyoruz.MW60
Ve programımızı ve donanımımızı download ediyoruz.
Evet şuan sayıcıya bakıyoruz ikinci sayıcımız 3 bine ulaşmış bile bunun sebebi daha önce kullanılmış hafıza alanları olması
Toplayıcı ise toplamış görüyorsunuz.
Bu tarz uygulamalar fabrikalardaki konveyor hatlarının üzerinde taşınan ürünlerin sayımına örnek olarak verilebilir . Bugunku üretim heefine ulasıldı mı ? sorusuna cevabı MW60 yazmacı verecektir.