Temporizador de retardo a la desconexión (TOF)
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 TOF es un temporizador no retentivo que acumula tiempo cuando la instrucción está activada (la condición de entrada de reglón es falso).
Idiomas disponibles
Diagrama de lógica de escalera

Bloque de funciones
Esta instrucción no está disponible en el bloque de funciones.
Texto estructurado
Esta instrucción no está disponible en texto estructurado.
Operandos
IMPORTANTE:
Puede ocurrir un funcionamiento inesperado si:
- Los operandos de etiqueta de salida se sobrescriben.
- Los miembros de un operando de estructura se sobrescriben.
- A no ser que se especifica, los operandos de estructura son compartidos por varias instrucciones.
Diagrama de lógica de escalera
Operando | Tipo de datos | Formato | Descripción |
|---|---|---|---|
Timer | TIMER | etiqueta | Estructura de temporizador |
Preset | DINT | inmediato | Valor de Timer.PRE |
Accum | DINT | inmediato | Valor de Timer.ACC |
Operando | Tipo de datos de los controladores CompactLogix 5380, ControlLogix 5580, Compact GuardLogix 5380, GuardLogix 5580 y ControlLogix 5590 | Formato | Descripción |
|---|---|---|---|
Timer | TIMER_T | etiqueta | Estructura de Timer_T |
Accum | TIME | inmediato | Valor de Timer.ACC |
Preset | TIME | inmediato | Valor de Timer.PRE |
Preestablecido y Acumulador (correspondientes a .PRE y .ACC en la etiqueta del temporizador) son pseudo-operandos. Para obtener más información, consulte Inicialización del pseudo-operando.
Estructura TIMER
Mnemónico | Tipo de datos | Descripción |
|---|---|---|
.EN | BOOL | El bit de habilitación contiene una condición de entrada de reglón de cuando la instrucción se ejecutó por última vez. |
.TT | BOOL | Cuando el bit de temporización se establece, indica que la operación de conteo está en proceso. |
.DN | BOOL | Cuando el bit de efectuado está borrado, indica que la operación de temporización se ha completado (o pausado). |
.PRE | DINT | El valor preestablecido indica el valor (en unidades de 1 milisegundo) al que debe llegar el valor acumulado antes de que la instrucción indique que está finalizada. |
.ACC | DINT | El valor acumulado indica el número de milisegundos que han pasado desde que se activó la instrucción TOF. |
Estructura de TIMER_T
Mnemónico | Tipo de datos | Descripción |
|---|---|---|
.EN | BOOL | El bit de habilitación contiene una condición de entrada de reglón de cuando la instrucción se ejecutó por última vez. |
.TT | BOOL | Cuando el bit de temporización se establece, indica que la operación de conteo está en proceso. |
.DN | BOOL | Cuando el bit de efectuado se establece, indica que la operación de temporización se ha completado (o pausado). |
.ACC | TIME | El valor acumulado especifica el tiempo transcurrido con fidelidad de microsegundos desde que se activó la instrucción. |
.PRE | TIME | El valor preestablecido especifica con fidelidad de microsegundos el valor acumulado que debe alcanzarse antes de que la instrucción indique que se ha finalizado. |
Descripción
La instrucción TOF acumula tiempo hasta que:
- Se deshabilita el temporizador
- El temporizador se completa
La base de tiempo es siempre 1 milisegundo. Por ejemplo, para poner un temporizador de 2 segundos, hay que introducir 2000 en el valor .PRE.
El temporizador borrará el bit .DN a falso cuando el temporizador se completa.
Cuando está activado, el temporizador se puede pausar al borrar el bit .DN a falso y se reanuda al establecer el bit .DN en verdadero.

Cómo se ejecuta un temporizador
Un temporizador funciona restando el tiempo del último escaneado desde el tiempo actual:
ACC = ACC + (current_time - last_time_scanned)
Tras actualizar el ACC, el temporizador establece last_time_scanned = current_time. Esto hace que el temporizador se prepare para el siguiente escaneado.
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 |
|---|---|---|
.PRE < 0 | 4 | 34 |
.ACC < 0 | 4 | 34 |
Consulte para ver los fallos de indexación de matrices.
Ejecución
Diagrama de lógica de escalera
Condición/estado | Acción realizada |
|---|---|
Pre-escaneado | El bit .EN se borra y se establece en falso. El bit .TT se borra y se establece en falso. El bit .DN se borra y se establece en falso. El valor .ACC se establece para ser igual el valor .PRE. |
La condición de entrada de renglón es falsa | Establecer la condición de salida de renglón a condición de entrada de renglón. Consulte el diagrama de flujo TOF (Falso). |
La condición de entrada de renglón es verdadera | Establecer la condición de salida de renglón a condición de entrada de renglón. El bit .EN se establece en verdadero. El bit .TT se borra y se establece en falso. El bit .DN se establece en verdadero. El valor .ACC se borra a 0. |
Post-escaneado | El bit .EN se borra y se establece en falso. El bit .TT se borra y se establece en falso. El bit .DN se borra y se establece en falso. El valor .ACC se establece para ser igual el valor .PRE. |
Diagrama de flujo de TOF (Falso)

Ejemplo
Diagrama de lógica de escalera

Cuando se borra limit_switch_9, se enciende light_8 durante 180 milisegundos (timer_2 cuenta el tiempo). Cuando timer_2.acc llega a 180, se apaga light_8 y se enciende light_4. Light_4 permanece encendida hasta que se habilita la instrucción TOF. Si se establece en verdadero limit_switch_9 mientras timer_2 cuenta, se apaga light_8.

Cuando tglTest21 se borra, timing21
(con tipo TIMER_T)
se activa durante 20 milisegundos y 100 microsegundos (timer21 cuenta el tiempo). Cuando timer21.acc alcanza los 20 milisegundos y 100 microsegundos, timing21 se desactiva y done21 se activa. Done21 permanece activa hasta que se habilite la instrucción TOF. Si tglTest21 es verdadero mientras timer21 está contando, timing21 se desactiva.Entregue su opinión