CoDeSys tam olarak nedir ve ne için kullanılır?

Kontrol programını hazırlayan ve cihazda çalıştıran yapı
Merhaba dostlar. CODESYS, adı Controller Development System ifadesinden gelen bir endüstriyel otomasyon yazılım platformudur. Uyumlu PLC’ler ve diğer kontrol cihazları için program hazırlamak, cihazları yapılandırmak, uygulamayı test etmek ve bakım sırasında teşhis yapmak amacıyla kullanılır.
CODESYS’i anlamak için programın yazıldığı ortam ile programın çalıştığı ortamı ayırmak gerekir. Bir bilgisayara editörü kurmak, o bilgisayarı veya bağlanan herhangi bir PLC’yi kendiliğinden uygun bir kontrol sistemine dönüştürmez.
Development System ile runtime arasındaki fark
CODESYS Development System: Programı yazdığınız, derlediğiniz ve hedefe aktardığınız mühendislik ortamıdır. Değişken bildirimleri, cihaz yapılandırması, kütüphaneler ve hata ayıklama araçları burada yönetilir.
CODESYS Control runtime: Hedef cihazda kontrol uygulamasını çalıştıran yazılımdır. Uygun PLC’ye üretici tarafından entegre edilmiş olabilir; desteklenen bir endüstriyel bilgisayarda SoftPLC olarak da kullanılabilir. Donanım uyumluluğu, işletim sistemi, I/O erişimi ve gerekli bileşenler kontrol edilmelidir.
Fiziksel sistem: Sensörler, giriş/çıkış modülleri, sürücüler ve aktüatörler gerçek makineyle bağlantıyı kurar. CODESYS kodu bu donanımın yerine geçmez; okunan bilgiyi değerlendirip uygun komutları üretir.
Hangi programlama yaklaşımını kullanır?
CODESYS, IEC 61131-3 temelli programlamayı destekler. Ladder Diagram (LD) kontak ve bobin mantığını; Structured Text (ST) metin tabanlı hesap ve algoritmaları; Function Block Diagram (FBD) bağlantılı bloklarla veri akışını ifade eder. Sequential Function Chart (SFC) ise adım ve geçişlerle süreç sırasını düzenler.
Eski “beş dil” anlatımındaki Instruction List (IL) artık eski uygulamalar bağlamında değerlendirilmelidir. IEC 61131-3:2025 dil takımını ST, LD ve FBD olarak tanımlar; SFC’yi ayrıca yapısal elemanlarla ele alır. CODESYS’in IL editörü eski destek kapsamındadır. Standart baskısı ile kurulu yazılımın editör seçenekleri aynı şey değildir.
Bir projede hangi işler yapılır?
Proje oluştururken hedef cihaz ve uygun cihaz paketi seçilir. Ardından giriş/çıkışlar yapılandırılır, kontrol programı hazırlanır ve veri tipleri belirlenir. Tekrarlanan işler fonksiyon ve fonksiyon bloklarına ayrılarak daha düzenli bir yapı kurulabilir.
Derleme, kodun tür ve sözdizimi açısından kontrol edilmesine yardımcı olur. Uygulama hedefe aktarıldıktan sonra hata ayıklama araçlarıyla değişkenler ve program davranışı izlenir. Derlenmiş olması, makinenin doğru çalıştığını kanıtlamaz. I/O eşlemesi, zamanlama ve hata koşulları gerçek uygulamayla doğrulanır.
Sahadan basit örnek: pompa kontrolü
Bir tankta seviye sensörü, bir pompa ve arıza geri bildirimi olduğunu düşünün. CODESYS ile seviye düşükse pompayı başlatan, üst seviyede durduran ve arıza durumunda normal çalışmayı kesen mantık hazırlanabilir. Gerekirse ekranda çalışma durumu, seviye ve arıza bilgisi gösterilir.
Burada sensörün elektrik bağlantısı, pompanın güç devresi ve koruma düzeni ayrı tasarlanır. PLC yazılımı bu elemanları yönetir; yanlış bağlanmış bir sensörü veya yetersiz motor korumasını tek başına düzeltemez.
Hangi uygulamalarda kullanılabilir?
Geliştirilebilecek projeler arasında makine sıralamaları, pompa ve fan kontrolü, proses ölçümleri, operatör arayüzleri ve veri toplama bulunur. Uygun bileşenlerle hareket kontrolü, CNC ve robotik işlevler de kurulabilir. Endüstriyel sistemin ihtiyacı, kullanılacak donanım ve yazılım seçeneklerini belirler.
Örneğin WAGO’nun Basic Controller 100 ürünü CODESYS ile programlanabilen kontrolörlerdendir. ifm’nin ecomatController ailesi ise mobil makinelerde CODESYS 3.5 kullanımına örnektir. Bu örnekler bütün WAGO veya ifm ürünlerinin aynı ortam ve özelliklerle çalıştığı anlamına gelmez.
Cihazlar ve üst sistemlerle ağ haberleşmesi kurulabilir. Ancak bir protokolün platformda bulunması; bütün hedeflerde, bütün rollerde ve aynı lisansla kullanılabileceğini göstermez. Fiziksel arayüz, runtime desteği ve yapılandırma birlikte değerlendirilir.
Donanım bağımsızlığı nereye kadar geçerli?
Çok üreticili bir platform olması, farklı uyumlu kontrolörler arasında seçim imkânı sağlar. Fakat her PLC’ye doğrudan yükleme garantisi vermez. Hedef değiştiğinde cihaz paketi, I/O eşlemesi, üretici kütüphaneleri, haberleşme ve görev ayarları yeniden incelenebilir. Diğer PLC yazılımlarından farkını değerlendirirken bu sınırı gözden kaçırmayın.
Editörün notu: Ortak programlama dili ile eksiksiz proje taşınabilirliği farklıdır. Bir ST hesabını yeniden kullanmak kolay olabilir; aynı projenin farklı PLC’de değiştirilmeden çalışması ayrı bir konudur. PLCopen XML, destekleyen araçlarda proje bilgisi alışverişine yardımcı olur; donanım ve çalışma davranışının eşdeğerliğini tek başına garanti etmez.
Ücretsiz yazılım ve ücretli seçenekler
CODESYS Development System V3 ücretsiz indirilebilir. Ancak runtime lisansı, bazı haberleşme ve görselleştirme seçenekleri veya ek geliştirme araçları ayrı lisans gerektirebilir. Bazı kontrolörlerde temel runtime lisansı cihaz fiyatına dahildir. Yazılımı indirirken cihaz üreticisinin önerdiği sürümü ve gerekli paketleri kontrol edin; geliştirme ortamının ücretsiz olması bütün sistemin ücretsiz olduğu anlamına gelmez.
Başlamak için neyi öğrenmek gerekir?
Önce dijital ve analog I/O, değişkenler, temel mantık, fonksiyon blokları ve görevlerin çalışma düzenini öğrenin. Küçük bir uygulamayla giriş okuyup çıkış mantığını izleyin; ardından zamanlayıcı, arıza takibi ve görselleştirmeyi ekleyin. Simülasyon öğrenmeye yardımcı olur; gerçek donanımın zamanlamasını ve bağlantılarını bütünüyle temsil etmez.
Son aşamada erişim ve güvenlik ayarlarını, yedekleri ve yeniden başlatma davranışını düzenleyin. CODESYS kullanılması, makinenin emniyet gereksinimlerini otomatik karşılamaz. Uygulamanın doğruluğu, seçilen ekipman ve yapılan doğrulamalarla değerlendirilir.
İlgili CODESYS konuları
CODESYS genel sayfası | Temel özellikler | Eğitim kaynakları
Platformlar arası veri aktarımı | Görev zamanlaması | PLC ve aksesuarları
Kaynaklar
CODESYS — Development System — Programlama, derleme, teşhis ve geliştirme ortamı.
CODESYS — Runtime — CODESYS Control, uyumlu hedefler ve lisans yaklaşımı.
IEC 61131-3:2025 — Güncel dil takımı ve SFC’nin konumu.
WAGO — Basic Controller 100 — CODESYS ile programlanabilen bir kontrolör örneği.
ifm — ecomatController — Mobil makinelerde CODESYS 3.5 kullanım örneği.
PLCopen — XML Exchange — Programlama standardı ile proje alışverişi arasındaki ayrım.