Guten Tag,
ich habe eine Frage bezüglich der Programmierung in ST.
Wenn ich z.b. einen DigtalOut 500ms ansteuern möchte kann ich das ja nicht so einfach über das Zeitrelai machen, da ich mir ja einen extra Merker setzen muss dass das Zeitrelai einmal ausgeführt wurde, sonst wird es ständig beschaltet, richtig?
// MW100 ist die Zeit wie lange Q1 angesteuert wird, 500 der Sollwert
IF MW100 = 500 THEN
M1 := TRUE; // Schritt auf fertig setzen
Q1 := FALSE; // Signal aus
ELSIF
M1 := FALSE; // Schritt auf nicht fertig setzen
Q1 := TRUE; // Signal an
MW100 + 1;
END_IF;
Das würde ja anhand der Zyklustakte das ganze 500 Zyklen an schalten, geht das auch irgendwie mit millisekunden?
Die SPS müsste doch einen internen Zähler als Variable oder sowas haben dachte ich mir...
Oder wie wäre das ganze am geschicktesten, so das man es auch zurücksetzen kann und später nochmals 500ms ansteuern kann.
Sorry ich bin noch ganz neu, programmiere normalerweise andere Sachen und muss mich erst noch rein finden in die Welt in der nicht alles von einer Programmiersprache vorgegeben wird