-> Hier kostenlos registrieren
Hallo, ich habe eine kleines Problem mit meinem Programm in Automation Studio (Sprache Structured Text)
Folgendes:
ein Wert A soll mit einem Wert B verglichen werden. Ist A größer als B öffnet sich ein Ausgang, der den Wert von A senkt.
Das Problem dabei ist das diese Änderung einige Zeit dauert und ich gerne in meine WHILE-Schleife eine Wartezeit einbauen möchte, sodass A ausreichend Zeit hat sich zu verändern bevor die Abfrage von neuem beginnt.
Hier mein bisheriges Programm (eventuell unnötiger Code enthalten):
WHILE A > B DO
out := FALSE; (Ausgang soll Anfangs geschlossen sein)
TON_1(IN := NOT out, PT := T#1s);
out := TON_1.Q; (Ausgang wird geöffnet)
TON_2(IN := TON_1.Q, PT := T#5s);
out := NOT TON_2.Q; (Ausgang nach 5 Sekunden wieder geschlossen)
<<<<<<Wartezeit>>>>>>
END_WHILE;
Wie kann ich am Besten eine Wartezeit von etwa 30 Sekunden am Ende der Schleife einbauen, bevor sie wieder die Startbedingung A>B abfragt?
Ist das Programm so überhaupt funktionsfähig? Wenn nein, gibt es Verbesserungsvorschläge?
Folgendes:
ein Wert A soll mit einem Wert B verglichen werden. Ist A größer als B öffnet sich ein Ausgang, der den Wert von A senkt.
Das Problem dabei ist das diese Änderung einige Zeit dauert und ich gerne in meine WHILE-Schleife eine Wartezeit einbauen möchte, sodass A ausreichend Zeit hat sich zu verändern bevor die Abfrage von neuem beginnt.
Hier mein bisheriges Programm (eventuell unnötiger Code enthalten):
WHILE A > B DO
out := FALSE; (Ausgang soll Anfangs geschlossen sein)
TON_1(IN := NOT out, PT := T#1s);
out := TON_1.Q; (Ausgang wird geöffnet)
TON_2(IN := TON_1.Q, PT := T#5s);
out := NOT TON_2.Q; (Ausgang nach 5 Sekunden wieder geschlossen)
<<<<<<Wartezeit>>>>>>
END_WHILE;
Wie kann ich am Besten eine Wartezeit von etwa 30 Sekunden am Ende der Schleife einbauen, bevor sie wieder die Startbedingung A>B abfragt?
Ist das Programm so überhaupt funktionsfähig? Wenn nein, gibt es Verbesserungsvorschläge?