Instrucción FOR (FOR)
Esta información corresponde a los controladores CompactLogix 5370, ControlLogix 5570, Compact GuardLogix 5370, GuardLogix 5570, Compact GuardLogix 5380, CompactLogix 5380, ControlLogix 5580, GuardLogix 5580 y ControlLogix 5590.
La instrucción FOR ejecuta una rutina repetidamente.
Si se habilita, la instrucción FOR ejecuta la Rutina repetidamente hasta que el valor Index excede el Terminal value. Esta instrucción no pasa parámetros a la rutina.
El valor del paso puede ser positivo o negativo. Si es negativo, el lazo finaliza cuando el índice sea menor que el valor terminal. Si es positivo, el lazo finaliza cuando el índice es mayor que el valor terminal.
Cada vez que la instrucción FOR ejecuta la rutina, añade el Step size al Index.
Procure no hacer demasiados lazos en un solo escaneado. Un número excesivo de repeticiones puede provocar que la vigilancia de control exceda el tiempo de espera, lo que provocaría un fallo mayor.
Idiomas disponibles
Diagrama de lógica de escalera

Operandos
Diagrama de lógica de escalera
Operando | Tipo | Formato | Descripción |
|---|---|---|---|
Routine name | ROUTINE | etiqueta | Subrutina que se invoca cada vez que se ejecuta el lazo FOR. |
Index | DINT | etiqueta | Cuenta las veces que se ha ejecutado una rutina |
Initial value | SINT INT DINT | inmediato etiqueta | Valor en el que comienza el índice |
Terminal value | SINT INT DINT | inmediato etiqueta | Valor en el que se detiene la ejecución de la rutina |
Step size | SINT INT DINT | inmediato etiqueta | Cantidad que se añade al índice cada vez que la instrucción FOR ejecuta la rutina |
Afecta a las marcas de estado matemáticas
No
Fallos mayores/menores
Se producirá un fallo mayor si: | Tipo de fallo | Código de fallo |
|---|---|---|
Límite del nivel de anidamiento > 25 | 4 | 94 |
la subrutina es un SFC y ya se está ejecutando (llamada recursiva) | 4 | 82 |
Consulte Atributos comunes para ver los fallos relacionados con el operando.
Ejecución
Condición/estado | Action |
|---|---|
Pre-escaneado | La instrucción hará un pre-escaneado de la subrutina nombrada si no ha sido preescaneado antes.
CONSEJO:
Si existen instrucciones FOR recursivas o múltiples instrucciones FOR (no recursivas) para la misma subrutina, la subrutina será preescaneada solo una vez. Esto ocurrirá también si la subrutina ha sido preescaneada por JSR.
|
La condición de entrada de renglón es falsa | N/A |
La condición de entrada de renglón es verdadera | Véase el Diagrama de flujo FOR (Verdadero). |
Post-escaneado | La instrucción postescaneará la subrutina nombrada exactamente una vez. |
Diagrama de flujo de FOR (Verdadero)

Ejemplos
Si se habilita, la instrucción FOR ejecuta repetidamente routine_2 e incrementa value_2 cada vez en uno. Cuando el value_2 es > 50000 o se habilita una instrucción BRK, la instrucción FOR deja de ejecutar routine_2.

Entregue su opinión