s7-200 de fonksiyon yazılabilirmi

fivesense

Üye
Katılım
5 Mar 2008
Mesajlar
8
Puanları
1
Yaş
40
arkadaşlar

s7-200 plc'de fonksiyon yazıp sonra onu çağırabilirmiyiz? yani bir timer ve bir counter kullanarak bir fonksiyon oluşturup sonra bu fonksiyonu programın içinde bir çok kez ayrı ayrı kullanabilirmiyiz. her kullandığımız fonksiyon ayrı isimlendirildiği için ayrı sayıcı değerlerine sahip olabilir mi? teşekkürler..
 
Evet yapabilirsin, Subrutinleri (alt programları) paremetrelendirip bunun için kullanabiliyorsunuz.
 
S7 200 de subrutin içinde lokal değşkenleri kullanarak FC oluşturabilirsin, ancak lokal değişkenler iile timer ve counter tanımlama imkanın yoktur dolayısıyla aynı bloğu farklı yerlerden çağırdığında blok içinde aynı timer ve counter çalışacağından sorun yaşarsın .

Belki pointer yöntemi kullanarak bişeyler yapılabilir.


Lütfen arka arkaya mesaj atmayınız forum kurallarını okuyunuz.
Düzenleme :Mustak
 
evet subroutine çağrıldığında aynı timer ve aynı counter değeri aktif oluyor. sonuçta iki farklı subroutine içinde geçsede timer aynı timer kabul ediliyor. sanırım subroutine benim sorum için çözüm olmayacak. subroutine ile sadece program cycle süresini kısaltmış ve gereksiz ise programın o bölümünü çağırmamış oluyoruz bu avantajı katıyor. bildiğiniz başka bir özelliği var mı subroutine'nin ?

cevaplar için teşşekkürler..
 
Subroutine içersinde SMW 22 (Last Scan Time) 'daki zamanı kullanarak timer yapabilirsin. Her cycle'da bu değeri toplayıp subroutine den çıkmadan dışarda bir data alanına transfer edip, subroutine her çağrıldığında oradan tekrar okuyup SMW 22'yi eklersin. Daha sonra karşılaştırma komutu ile kontrol edersin. IN,OUT ve IN_OUT parametreleri ile yapılandırdığında istediğin kadar timer kullanabilirsin. (Tabi burada timer'ın hassasiyeti programın döngü süresi kadar olacaktır!) Counter'da aynı mantıkla yapılabilir. Tabi orada SMW 22'yi kullanmaya gerek yok.
 

Forum istatistikleri

Konular
129,867
Mesajlar
930,872
Kullanıcılar
452,732
Son üye
erencok

Yeni konular

Geri
Üst