Welcome to our new forum
All users of the legacy CODESYS Forums, please create a new account at account.codesys.com. But make sure to use the same E-Mail address as in the old Forum. Then your posts will be matched.
Close
ich möchte Timer mit "Neustart" realisieren. Wenn die Taste "START" betätigt worden ist, läuft die Zeit z.B. 30 Sec. Wenn die Taste "START" noch betätigt worden ist, dann sofort einen neuen Start für Timer( egal 30 Sec. ist vorbei oder nicht).
Wie kann ich diese Aufgabe in FUP oder ST realisieren?
Danke schön im Voraus!
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Hallo,
ich möchte Timer mit "Neustart" realisieren. Wenn die Taste "START" betätigt worden ist, läuft die Zeit z.B. 30 Sec. Wenn die Taste "START" noch betätigt worden ist, dann sofort einen neuen Start für Timer( egal 30 Sec. ist vorbei oder nicht).
Wie kann ich diese Aufgabe in FUP oder ST realisieren?
Danke schön im Voraus!
wenn du einen TOF timer nimmst und vor dem IN Eingang
ein R_Trig einbaust, sollte der Timer nachtriggerbar sein.
Gruß
Jürgen
Hallo
Wenn Du das in ST versuchen willst, so kannst Du es mit einem FB so probieren:
(Deklarationsteil)
FUNCTION_BLOCK NachTrigTimer
VAR_INPUT
END_VAR
VAR_OUTPUT
END_VAR
VAR
END_VAR
(Codeteil)
IF (TRIGGER = TRUE AND FLANKE = FALSE) THEN (Steigende flanke an TRIGGER erkennen)
ELSE
END_IF
FLANKE := TRIGGER; (Flankenmerker zurücksetzen)
T_OF; (TOF-Instanz am laufen halten)
OUT := T_OF.Q ; (Ausgangssignal zuweisen)
Ungetestet! Sollte aber so funktionieren.
Viel Spass beim Ausprobieren.
Mit freundlichen Grüssen! Pitsch
du kannst dir auch den baustein tp_x aus der oscat lib ansehen das ist ein retriggerable timer der genau das macht was du suchst.
w www.oscat.de w die lib ist open source
Danke für die Hilfe!