WHILE: Ejecutar cuando se cumpla la condición (S7-300, S7-400) - STEP 7

SCL (S7-300, S7-400)

ft:publication_title
SCL (S7-300, S7-400)
Product
STEP 7
Version
V20
Publication date
11/2024
Language
es-ES
WHILE: Ejecutar cuando se cumpla la condición

Descripción

La instrucción "Ejecutar cuando se cumpla la condición" permite procesar un bucle mientras se cumpla una condición de ejecución. La condición es una expresión con un valor booleano (TRUE o FALSE). Como condición se pueden indicar expresiones lógicas o expresiones de comparación.

Al ejecutar la instrucción, se evalúan las expresiones indicadas. Si el valor de una expresión es TRUE, la condición se considera cumplida; en el caso de FALSE se considera que la condición no se cumple.

Los bucles también se pueden anidar. Dentro de un bucle se pueden programar otros bucles con otras variables de contaje.

La ejecución actual de un bucle se puede finalizar con la instrucción "Verificar condición de bucle" (CONTINUE). La instrucción "Abandonar el bucle inmediatamente" (EXIT) permite finalizar el procesamiento de todo el bucle. Encontrará más información al respecto en "Consulte también".

La instrucción se puede declarar del siguiente modo:

WHILE <condición> DO <instrucciones>;

END_WHILE;

Parámetros

La tabla siguiente muestra los parámetros de la instrucción:

Parámetro

Tipo de datos

Área de memoria

Descripción

<Condición>

BOOL

I, Q, M, D, L

Expresión que se evalúa antes de cada ejecución del bucle.

<Instrucciones>

-

 

Instrucciones que se ejecutan si se cumple la condición. Si no se cumple la condición, el procesamiento del programa continúa después de END_WHILE.

Encontrará más información sobre los tipos de datos válidos en "Consulte también".

Ejemplo

El siguiente ejemplo muestra el funcionamiento de la instrucción:

SCL Copia el código de programa siguiente en el portapapeles.

WHILE

      "Tag_Value1" <> "Tag_Value2"

      DO "Tag_Result"

      := "Tag_Input";

END_WHILE:

Mientras difieran los valores de los operandos "Tag_Value1" y "Tag_Value2", al operando "Tag_Result" se le asignará el valor del operando "Tag_Input".