Öncelikle biraz Factory I/O uygulamasından bahsetmek istiyorum. Ben bu uygulamayla PLC uygulamaları için bir simülasyon programı ararken karşılaştım. Factory I/O programını temel olarak PLC öğrenmek için tasarlanmış bir simülasyon programı olarak açıklayabiliriz. Bu program ile program içerisinde var olan belirlenmiş senaryoları çalışabilir veya program içerisinde bulunan nesnelerle kendi fabrika ortamınızı yaratabilirsiniz. Ben bu senaryolarla çalışırken Siemens TIA Portal kullandım. TIA Portal içerisinde bulunan PLCSIM ile Factory I/O programını haberleştirerek programlarınızı gerçek zamanlı deneme imkanı buluyorsunuz. Bu yazıda da programın içerisinde var olan “Filling Tank(Timers)” senaryosunu bu seriye eklemek istedim.
İlk olarak senaryoda yapılması istenen program davranış şeklini video olarak aşağıda görebilirsiniz.
Daha sonra Factory I/O programını açıyoruz. Daha sonra hangi PLC modeliyle yazıcaksak ilgili model için gerekli olan taslak dosyasını Factory I/O’nun sitesinden indiriyoruz. Bu taslak PLCSIM ile Factory I/O haberleşmesi için gereklidir. Taslak dosyasını indirdikten sonra bu dosyayı TIA Portal ile açıyoruz. Programı açtıktan sonra ‘Online’ sekmesinde Simulation kısmına gelerek PLCSIM’i başlatıyoruz. Daha sonra Factory I/O uygulamasında F4’e basarak gerekli ayarları yaparak PLCSIM ile haberleşmesini sağlıyoruz. Bu noktadan sonra gerekli haberleşme bağlantısı kurulmuş oldu. Programın yazımına başlayabiliriz.
Ben programı ladder dili kullanarak yazmaya çalıştım. Ben ilk olarak Factory I/O’dan giriş ve çıkışların nereye bağlı olduğuna bakıp bunları TIA Portal’daki “Tag Table” kısmına aktardım.


Daha sonra programın algoritma kurma kısmına geçerek ilk aşamayı yazmaya başladım. İlk aşamada “Fill” butonuna basınca 7 saniye boyunca dolum yapılacak ve buton üzerindeki LED’in yanması sağlanacak. Bu aşamada aynı anda iki pompanın da aynı anda çalışmasını önlemek için diğer pompanın çalışma değerini resetledim. Aynı şekilde “Discharge” butonunun LED ışığının da yanmaması için onun da değerini resetledim.

İkinci aşamada ise aynı işlemin “Discharge” butonuna basıldığında yapılmasını sağladım.

Üçüncü aşamada ise Timerlarda geçen sürenin simülasyondaki panodaki ekrana yazdırılmasını sağladım. Bu aşamada geriye doğru sayması için geçen süreyi bütün süreden çıkardım. Daha sonra 1000’e bölerek milisaniyeden saniyeye geçisi sağladım ve butonlara basılınca move komutuyla bu değeri ekranın olduğu data kısmına taşıdım. Bu üçüncü aşama counterlar ile daha basit yapılabilirdi sanırım fakat ben timerları kullandım.

Bu üç aşamayı TIA Portal’da 3 farklı network’e yazdım. Taslak içindeki 1.networkdeki fonksiyon haberleşme için gerekli o yüzden ona dokunmadım. Basitten başlayıp giderek daha karmaşık senaryoları programlamaya çalışacağım. Yazdığım programlar en temiz ve en kısa programlar olmayabilir. Yazdıkça alışacağımı düşünüyorum. Bu yazıyı okuyup Factory I/O ve TIA Portalın kurulumunda sorun yaşayanlar e-mail ile ulaşabilir.
One thought on “Factory I/O ile PLC Uygulamaları 1- Tank Seviye Kontrolü”