Thread Content
Bakalım hangi programlama uzmanı aşağıdaki programın çevirisinde yardımcı olabilir, çok zor. Bu modülün dört pini var: Giriş: IN, PT; Çıkış: Q, ET. FUNCTION_BLOCK TM (* Dış Arayüz *) VAR_INPUT IN : BOOL ; (* Giriş *) PT : TIME ; (* Darbe Süresi *) END_VAR VAR_OUTPUT Q : BOOL ; (* Çıkış Darbesi *) ET : TIME ; (* Geçen Zaman *) END_VAR VAR M : BOOL ; (* Durum *) T0 : DT ; (* Başlangıç Zamanı *) END_VAR IF NOT Q THEN IF IN AND NOT M THEN Q := TRUE ; T0 := GetTimer() ; END_IF ; IF NOT IN THEN ET := T#0ms ; END_IF ; ELSE ET := GetTimer() - T0 ; IF ET >= PT THEN ET := PT ; Q := FALSE ; END_IF ; IF ET < PT THEN Q := M; END_IF; END_IF ; M := IN ; END_FUNCTION_BLOCK
Bu, TRICON’un ST yapılandırılmış metniyle yazılmış bir program olmalı. Aslında bu, bir darbe tetiklemesidir; IN, giriş ucu olarak kullanılır ve PT ise darbe süresini belirler. Q, darbe çıkışıdır; ET ise darbenin ne kadar süredir tetiklendiğini gösterir.
ST kullanarak yazmanın pek bir anlamı yok, programları FBD veya LAD kullanarak yazmak çok daha iyi.
Evet, ST ile yazmak pek anlamlı değil, ancak mevcut sistemlerde hâlâ yaygın olarak kullanılıyor
Teşekkür ederim, gerçekten çok zor, hiç anlamıyorum. Daha önce fonksiyon bloğu programlamasına alışkındım, teşekkürler
ST kullanımı esnektir; nasıl kontrol edileceği tamamen size bağlıdır. Geleneksel mantıkla gerçekleştirilmesi zor olan işlevler, ST sayesinde kontrol edilebilir ve bu da kontrol için daha ileri bir yol sunar.