REPEAT-Anweisung in ST

Syntax
REPEAT
...
UNTIL ...
END_REPEAT;

Bedeutung

Mit der REPEAT-Anweisung bestimmen Sie, dass eine Gruppe von Anweisungen (nach REPEAT bis zu UNTIL eingegeben) wiederholt ausgeführt wird (zumindest einmal), bis der damit verknüpfte Boolesche →Ausdruck (nach UNTIL eingegeben) mit Wert TRUE (oder einer Entsprechung) ausgewertet wird. Wird die Bedingung bereits zu Anfang mit Wert FALSE (oder einer Entsprechung) ausgewertet, dann wird die Gruppe von Anweisungen genau einmal ausgeführt.

Beispiel
FUNCTION_BLOCK ExampleRepeatDocumentation
VAR
count, sum, I : INT;
END_VAR
count := 1;
sum := 0;
REPEAT
sum := ADD(sum, count);
count := ADD(count, 1);
UNTIL GT(count, 10)
END_REPEAT; (* Die Variable 'sum' entspricht '55'. *)
END_FUNCTION_BLOCK

Keine Erkennung von Endlosschleifen

Endlosschleifen werden von logi.CAD 3 nicht erkannt und verhindert. Geben Sie deshalb Code in Ihrer Anwendung (z.B. Abbruchbedingungen mit Hilfe von IF-Anweisungen) ein, mit denen Endlosschleifen verhindert werden.