TimerSeteDogruAktuelArtanZaman = TimerSetDegeri - AktuelAzalanZamanArkadaşlar kolay gelsin, benim bir sorum var. PLC S7-300'de zaman rölesine girdiğimiz süre BCD kısmında hep geriye doğru sayıyor. Bunu ileri yönde saydırmak mümkün mü?
L #Time_from_OP // real format (seconds)
L 1000.0
*R
RND // here you get DINT in ms. It the same as TIME format
T #Time_in_ms
CALL "TIM_S5TI" // FC 40 from Standart library->IEC functions
IN := #Time_in_ms
OUT := #S5_time_output
S5T := TIME_TO_S5TIME(IN := ROUND(1000 * "RealTime));
Teşekkür ederim. SCL ve STL dilini kullanmadım.Ladderla programlama yapıyorum.Acaba bu şekilde bir yolu var mıdır?TimerSeteDogruAktuelArtanZaman = TimerSetDegeri - AktuelAzalanZaman
Çıkarma işlemini yapabilmek için hepsini aynı boyuta getirebilirsen bu mantıkla sonucun ileri sayması gerekir.
Ekrandan girilen REAL tipinde sn biriminde bir verinin, S5Timer formu STL dilinde aşağıdaki gibidir.
Kod:L #Time_from_OP // real format (seconds) L 1000.0 *R RND // here you get DINT in ms. It the same as TIME format T #Time_in_ms CALL "TIM_S5TI" // FC 40 from Standart library->IEC functions IN := #Time_in_ms OUT := #S5_time_output
Aynı kod SCL dilinde
Kod:S5T := TIME_TO_S5TIME(IN := ROUND(1000 * "RealTime));
Bu işlemi ladderda yap, hepsi bu kadar.TimerSeteDogruAktuelArtanZaman = TimerSetDegeri - AktuelAzalanZaman
Çıkarma işlemini yapabilmek için hepsini aynı boyuta getirebilirsen bu mantıkla sonucun ileri sayması gerekir.
Yani belirttiğiniz değişkenlere matematiksel çıkarma işlemi yaptırıp sonuç değişkenini Timer'ın Program zamanına yazdırırsam olur mu? Tabi değişkenleri aynı formata dönüştürürsem.Bu işlemi ladderda yap, hepsi bu kadar.