Tia Portal
Fonksiyon Bloklarının Kullanımı
ve
Örnek Uygulama
Merhaba, bugün Tia Portal'la ilgili ilk uygulamamızı gerçekleştireceğiz. Daha önceki yazılarımı okuduysanız zaten az çok PLC komutlarının kullanımına aşina olmuşsunuz demektir. Tia Portal'ın da PLC programlama konusunda Simatic Manager yada MicroWİN 4.0 programından pratikte pek fazla farkı yok. Bugün Tia Portal üzerinde daha önce hakkında yazmadığım bir konuyu inceleyeceğiz.
Geniş çaplı projelerde çok defa yerine getirelecek bir işlemi ana blok içerisinde defalarca yazmak yerine ihtiyaç anında kullanmak için bir fonksiyon bloğu içerisine yazılır. Bu şekilde kullanıcın ihtiyaç duyduğu anda bu fonksiyon bloğunu çağırması sağlanır. Ana program bloğunun anlaşılabilir olması için bu fonksiyon bloğu ana program içerisine yazılabilir. İlgili şart gerçekleştiği zaman blok çağrılır ve işlem gerçekleştirilir.
Konu tabi ki örnek bir uygulama üzerinden çok daha kolay anlaşılır bir hale gelecektir.
Uygulama : Bir palet çevirme sisteminde istifi sıkıştıracak palet hidrolik pompa motoru ile kontrol edilecektir. Bu hidrolik pompa motorunu bir fonksiyon bloğu içerisinde yazıp programımız içerisinde kullanalım.
Tia Portal programı açıldıktan ve kullanılacak PLC modeli seçildikten sonra " Program Blocks " kısmından " Add New Block " seçeneği seçilir.
Açılan sayfada " Function " kısmında fonksiyon bloğunun adı belirlenir ve OK butonuna tıklanır.
Fonksiyon bloğu açıldıktan sonra sayfanın üst kısmındaki aşağı butonuna tıklanır.
Bu işlemden sonra açılan sayfada fonksiyon blokları içerisindeki inputları, outpuları vs giriyoruz.
Bu işlemi de gerçekleştirdikten sonra motorumuzun nasıl çalışmasını istiyorsak ona göre ladder diyagramımızı yazıyoruz.
Görüldüğü gibi motor bloğumuz içerisine gayet basit bir program yazdık. FDBK'nın akitif olma şartları, FDBK aktif olunca Motor_Dev output'unun da aktif olması vs. Peki bu program ne ifade ediyor ? İşte ne ifade ettiği programcıya kalmış birşey. Yani programcı bu fonksiyon bloğuna startın aktif olma şartı için ne söylüyorsa, ne yazıyorsa yada artık bu motorun start butonu o olur. Örnek vermek gerekirse ben start butonunun aktif olma şartı olarak " hidrolik pompa start " inputunu koyuyorum. Yani " hidrolik pompa start " butonuna basıldığı anda motor bloğu içerisinde " start " aktif olur. Stop şartı olarak " Hidrolik Pompa Stop " inputunu koyarım. Bu butona bastığım zaman da FDBK_MEM sinyali kesilir. Gayet basit dimi ? Motor bloğunun çağırdığımız yerdeki şartları da ekleyeyim buraya.
Yıllarca önce paylaşılan yazıda hata yapmışım. #arıza bilgisi hem input hem de output olarak kullanılmak istenirken değişkenler sekmesinde sadece Output olarak kullanılmış. Bu sebeple #arıza sarı renk hale gelerek hata vermiş :))
YanıtlaSilDoğru uygulamada #arıza InOut değişkinleri içerisinde yazılmalıdır. Yakın zamanda yapısal programlama ile ilgili kapsamlı bir yazı paylaşacağım.