Plc Programlama

PLC Programlama

PLC programlama nedir? PLC programlama, bir makinenin hangi koşulda çalışacağını, nasıl duracağını ve farklı durumlara nasıl tepki vereceğini belirleyen kontrol yazılımını hazırlama sürecidir. Endüstriyel otomasyonda bu yazılım; saha sinyallerini, işlem sırasını, zamanlamayı ve arıza davranışını birlikte yönetir. İyi bir program, makinenin davranışını açık ve izlenebilir hale getirir.

Program yazmadan önce: Makinenin çalışma senaryosu belirlenir. Bir dolum sisteminde şişenin algılanması, dolumun başlaması, miktarın kontrol edilmesi ve şişenin ilerlemesi ayrı adımlardır. Şişe gelmezse, sensör takılı kalırsa veya vana açılmazsa ne olacağı da tanımlanır. Normal çalışma kadar, beklenmeyen durumlar da programın parçasıdır.

Giriş ve çıkış listesini hazırlamak: Sensörler, butonlar ve ölçüm cihazları hangi bilgilerin okunacağını; vanalar, röleler ve sürücüler hangi elemanların kumanda edileceğini belirler. Giriş/çıkış modülleri için DI, DO, AI ve AO kanal türleri, gerilimler, sinyal aralıkları ve yük akımları kontrol edilir. Yanlış kanal seçimini yazılımla düzeltmek mümkün değildir.

Donanımla yazılımı eşleştirmek: Seçilen PLC CPU ve modüller projeye tanıtılır; fiziksel kanallar program değişkenleriyle eşleştirilir. Uzak I/O kullanılıyorsa istasyon adresi, kanal sırası ve haberleşme durumu da yapılandırılır. Programdaki “dolum vanası” değişkeninin gerçekte hangi çıkışı sürdüğü açıkça bilinmelidir.

Programlama yazılımını seçmek: Kullanılacak PLC programlama yazılımı, cihazın modeli ve desteklediği sürümle uyumlu olmalıdır. CODESYS gibi ortamlar farklı üreticilerin desteklediği cihazlarda kullanılabilir. Donanım tanımları, kütüphaneler ve lisans gereksinimleri platforma göre değişir; her PLC aynı yazılımla programlanmaz.

Ladder Diagram (LD): Merdiven mantığı, kontak ve bobin sembolleriyle kontrol koşullarını gösterir. Başlatma/durdurma, çalışma izinleri ve kilitlemeler gibi işlemlerde okunaklı olabilir. Elektrik şemasına benzemesi, çizilen her kontağın fiziksel bir röle olduğu anlamına gelmez; semboller programdaki mantıksal koşulları da temsil eder.

Function Block Diagram (FBD): Fonksiyon Blok Diyagramı, işlevleri birbirine bağlanan bloklarla ifade eder. Ölçekleme, karşılaştırma, zamanlama ve kontrol blokları bu yapıda düzenlenebilir. Bir blok bağlantısı, verinin hangi işlemlerden geçtiğini görmeyi kolaylaştırır.

Structured Text (ST): Yapılandırılmış Metin, kontrol işlemlerini metin tabanlı kodla yazmayı sağlar. Hesaplamalar, koşullu işlemler, diziler ve döngüler için kullanışlıdır. Bir döngünün ne kadar işlem yaptığı kontrol edilmelidir; uzun veya sonlanmayan döngüler görev süresini aşabilir.

Adım sıralaması ve standartlar: Sequential Function Chart (SFC), bir süreci adımlar ve geçiş koşulları ile düzenler. Dil ve program yapılarının temel çerçevesi IEC 61131 standartlarıyla ilişkilidir. Standart bir dil kullanmak, farklı marka PLC'ler arasında bütün projenin değişikliksiz taşınacağını garanti etmez.

Değişkenler ve veri tipleri: “Baslat_Istegi”, “Tank_Seviyesi” ve “Vana_Komutu” gibi anlamlı değişken adları, programın okunmasını kolaylaştırır. CODESYS veri tipleri örneğinde BOOL iki durumlu bilgiyi, INT tam sayıyı, REAL ondalıklı değeri ve TIME süreyi temsil eder. Ölçü birimi, değer aralığı ve enerji kesilince saklanacak bilgiler ayrıca tanımlanmalıdır.

Programı bölümlere ayırmak: Giriş değerlendirme, süreç sıralaması, motor/valf kumandası ve alarm yönetimi ayrı işlevler halinde düzenlenebilir. Fonksiyonlar ve fonksiyon blokları tekrar kullanılan işleri toparlar. Aynı çıkış komutunun sorumluluğu açık olmalıdır; farklı bölümlerin aynı komutu kontrolsüz biçimde değiştirmesi arıza takibini zorlaştırır.

Tarama ve görev zamanlaması: PLC, giriş bilgilerini alır, programı yürütür ve çıkış değerlerini günceller. Tarama döngüsü ile fiziksel tepki süresi aynı değildir; giriş filtreleri ve haberleşme gecikmeleri de etkilidir. Görev zamanlaması uygulamaya göre düzenlenir; kesin işlem sırası ve güncelleme noktaları kullanılan platformdan kontrol edilir.

Zamanlayıcı ve sayaç kullanımı: Standart bir TON gecikmeli açma zamanlayıcısı, giriş koşulu yeterince uzun süre doğru kalınca çıkışını etkinleştirir. Koşul süre dolmadan kaybolursa standart TON zamanlaması sıfırlanır. Sayaçta ise yükselen veya düşen kenar algılama önemlidir: bir ürünün sensörü uzun süre aktif tutması, tek ürünün her taramada yeniden sayılmasıyla karıştırılmamalıdır.

Hızlı sinyaller: Enkoder darbeleri veya çok kısa sensör sinyalleri için uygun hızlı sayıcı ve giriş filtresi seçilir. Yazılımda bir sayaç oluşturmak, sıradan girişin her darbeyi yakalayacağı anlamına gelmez. Giriş donanımının frekans sınırı ve darbe süresi program kadar önemlidir.

Motor, hız ve süreç kontrolü: Hız kontrol cihazına çalışma izni ve hız referansı verilebilir; uygun donanımla hızlı puls çıkışı üretilebilir. Basınç, sıcaklık veya seviye gibi değişkenler PLC ile PID kontrol üzerinden yönetilebilir. Komut, ölçüm ve geri bildirim birbirinden ayrılmalı; “çalış” komutu verilmesiyle gerçek çalışma durumu aynı kabul edilmemelidir.

Operatör ekranı ve izleme: HMI üzerinden başlatma isteği, reçete veya hedef değer alınabilir; SCADA üzerinden alarm ve proses verileri izlenebilir. PLC-SCADA entegrasyonunda değer sınırları, birimler ve komut yetkileri açık tanımlanır. Operatörün değiştirebildiği bir ayar, makinenin izin verilen çalışma sınırlarını aşmamalıdır.

Haberleşmeyi programa dahil etmek: Endüstriyel haberleşme için Modbus, PROFINET veya EtherCAT kullanılabilir. Veri adresi, veri tipi, güncelleme süresi ve bağlantı kaybı birlikte ele alınır. Son okunan değerin ekranda görünmesi, o bilginin hâlâ güncel olduğunu kanıtlamaz; veri geçerliliği ayrıca izlenmelidir.

Hata ayıklama ve test: PLC'de hata ayıklama sırasında girişler, program koşulları, çıkış komutları ve saha geri bildirimleri birlikte incelenir. CODESYS hata ayıklama araçları gibi izleme yöntemleri, işlemin hangi koşulda beklediğini bulmaya yardımcı olur. Simülasyon mantığı kontrol etmeyi sağlar; gerçek kablolamanın ve yük davranışının doğrulanmasının yerini tutmaz.

Devreye alma ve değişiklik yönetimi: Çalışma koşulları, sensör arızası, haberleşme kesilmesi ve enerji geri gelmesi gibi senaryolar kontrollü biçimde değerlendirilir. Force ile zorlanmış değerler programın normal davranışını etkileyebilir; uygulamanın zorlamaları kaldırılmış durumu da kontrol edilmelidir. Güncel proje, donanım ayarları ve değişiklik kaydı birlikte saklanır.

Güvenlik fonksiyonları: Acil durdurma ve koruyucu kapı gibi işlevlerde standart kontrol mantığı ile güvenlik fonksiyonu ayrılır. Risk değerlendirmesine uygun güvenlik rölesi veya güvenlik PLC'si ve ilgili donanım gerekir. Bir durdurma koşulunu sıradan programa eklemek, bütün sistemi kendiliğinden güvenlik sistemi yapmaz.