> For the complete documentation index, see [llms.txt](https://docs.augelab.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.augelab.com/spanish/function-blocks/blocks-reference/data-logic/signal-operators/off-delay.md).

# OFF Delay

Este bloque de función mantiene una señal booleana en True durante un tiempo configurable cuando la entrada cambia de True a False. Úsalo para evitar que pulsos breves y falsos apaguen inmediatamente una salida.

## 📥 Entradas

`Input Signal`\
Una señal booleana que controla el bloque. Proporciona valores `True`/`False` (o conecta un bloque que genere booleanos).

## 📤 Salidas

`Output Signal`\
La señal booleana resultante después de aplicar la lógica de retardo al apagado. Cuando la entrada cae de True a False, esta salida permanece en True hasta que transcurre el tiempo de retardo configurado.

## 🕹️ Controles

`Delay Time (seconds)`\
Define cuánto tiempo permanece True la salida tras la transición de la entrada a False. Ingresa la duración en segundos (se aceptan valores decimales).

## ⚙️ Mecanismo de funcionamiento

* El bloque vigila la señal booleana entrante y recuerda su estado reciente.
* Cuando la entrada hace la transición de True a False, se inicia un temporizador interno y el bloque mantiene `Output Signal` en True.
* Si el tiempo de retardo configurado transcurre sin que la entrada vuelva a True, el bloque pone `Output Signal` en False.
* Si la entrada vuelve a True antes de que finalice el retardo, el temporizador se cancela y la salida sigue a la entrada inmediatamente.
* Al iniciarse por primera vez, el bloque espera el primer cambio de entrada para comenzar su operación normal.

## 🎯 Características

* Evita que pulsos falsos de corta duración activen o desactiven la lógica aguas abajo.
* Control numérico simple para la duración del retardo en segundos.
* Funciona con cualquier bloque o señal que genere booleanos en tu escenario.
* Sin estado persistente al eliminarse: libera temporizadores internos cuando se quita del flujo.

## 📝 Instrucciones de uso

1. Conecta una fuente booleana (por ejemplo, un interruptor manual o un bloque que genere lógica) a `Input Signal`.
2. Ajusta `Delay Time (seconds)` al tiempo que deseas que la salida permanezca True después de un flanco de bajada.
3. Usa `Output Signal` para alimentar lógica o indicadores aguas abajo.

## 💡 Tips y trucos

* Para pruebas manuales, usa el bloque `Logic Input` como fuente booleana controlable.
* Si necesitas añadir también un retardo en el flanco de subida, combina este bloque con el bloque `ON Delay` para un comportamiento simétrico.
* Detecta transiciones únicas y retrasa la caída combinándolo con el bloque `Rising Edge` aguas arriba.
* Usa combinaciones lógicas como `And`, `Or` o `Set - Reset` con este bloque para crear flujos de control más avanzados (por ejemplo, exigir varias condiciones a True antes de permitir el comportamiento de retardo).
* Conecta la salida a `Led Output` o `Scope` para visualizar o indicar el estado retardado en la interfaz.

## 🛠️ Resolución de problemas

* Si la salida nunca pasa a False: verifica el valor en `Delay Time (seconds)` y confirma que la entrada realmente hace la transición a False.
* Si la salida cae inmediatamente: comprueba que la entrada haya ido de True a False y que no haya bloques aguas arriba (por ejemplo, un generador de pulsos) que estén forzando la entrada a low brevemente.
* Si quieres ignorar señales espurias, considera añadir un breve `ON Delay` antes de este bloque o prefiltrar con condiciones lógicas.
