> 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/edge-falling.md).

# Edge Falling

Este bloque de función detecta un flanco de bajada (transición de True a False) en una señal booleana y genera un pulso corto cuando ocurre esa transición. Úsalo para convertir señales booleanas continuas en eventos de un solo paso para bloques posteriores.

## 📥 Entradas

`Boolean`\
Recibe la señal booleana que se supervisará en busca de un flanco de bajada.

## 📤 Salidas

`Boolean`\
Emite un pulso corto True solo cuando la entrada cambia de True a False. En caso contrario, emite False.

## 🕹️ Controles

Este bloque no tiene controles configurables en la interfaz. Funciona automáticamente una vez que se conecta una entrada booleana.

## ⚙️ Mecanismo de funcionamiento

* El bloque mantiene internamente el estado previo de la entrada.
* En cada ejecución compara la entrada actual con el estado previo almacenado.
* Si el estado anterior era True y el estado actual es False, el bloque emite un único pulso True durante ese paso de evaluación.
* En la primera evaluación (sin estado previo), el bloque no emite pulso; inicializa su estado interno con el primer valor de entrada.

## ✨ Características

* Detección fiable de flancos de bajada para disparar acciones.
* Salida mínima y predecible: un único pulso por cada transición descendente.
* Útil para des rebote (debounce) y para convertir señales de nivel en eventos.

## 📝 Uso

1. Conecta un bloque que produzca booleanos a la entrada `Boolean` (por ejemplo un `Logic Input` manual o un bloque de sensor/condición).
2. Usa la salida `Boolean` del bloque para activar acciones posteriores (registro, guardado, cambio de estado, etc.).
3. Combínalo con bloques de temporización o debounce si es necesario para evitar múltiples disparos por entradas ruidosas.

## 💡 Tips and Tricks

* Combínalo con `Rising Edge` cuando necesites detectar ambas transiciones y tratarlas de forma distinta.
* Usa `Delay Step`, `ON Delay` u `OFF Delay` para añadir temporización simple o debounce antes o después del disparo por flanco descendente.
* Empareja la salida con `Set - Reset` o `Counter` para bloquear un estado o contabilizar eventos de bajada.
* Usa bloques lógicos como `And`, `Or` y `Not` para construir condiciones de disparo más complejas alrededor del flanco descendente.
* Dispara exportaciones y notificaciones conectando la salida a bloques como `Image Logger`, `Image Write`, `Record Video`, `Send Mail` o `MQTT Publish` para capturar o notificar el evento.
* Para flujos basados en imágenes, usa una entrada de cámara (por ejemplo `Camera USB` o `Camera IP (ONVIF)`) alimentando una visualización o registro — usa la salida del flanco descendente para capturar un solo fotograma con `Image Logger` o abrir un visor con `Show Image` únicamente cuando ocurra el evento.

## 🛠️ Solución de problemas

* Si no ves pulsos, verifica que el bloque aguas arriba esté produciendo valores booleanos y que realmente ocurran transiciones de True a False.
* Para señales con ruido que generan pulsos no deseados, añade debounce con `Delay Step`, `OFF Delay` o prefiltra la señal con bloques lógicos.
* Si necesitas un disparo más largo que un pulso de un solo paso, usa la salida del flanco descendente para habilitar un bloque de temporización posterior (por ejemplo `ON Delay` o un pequeño subsistema temporizador).
