Delay Step
Este bloque de función retrasa la señal entrante por un paso de ejecución. Devuelve el valor previo recibido en el conector Input y actualiza su memoria interna con la entrada actual para la siguiente ejecución. Usa este bloque cuando necesites un desfase de un paso en el procesamiento de señales o para romper bucles de realimentación inmediata.
📥 Entradas
Input — Señal de entrada genérica a retrasar. Acepta cualquier tipo de dato.
📤 Salidas
Output — El valor proporcionado en el paso de ejecución anterior. En la primera ejecución puede estar vacío (sin valor previo).
🕹️ Controles
No hay controles interactivos ni widgets para este bloque.
⚙️ Mecanismo de ejecución
En cada ciclo de ejecución el bloque:
Devuelve el valor que almacenó del ciclo anterior a través de
Output.Sustituye su valor almacenado con la
Inputactual para usarlo en el siguiente ciclo.
Este comportamiento crea un retardado estable de un solo paso entre entrada y salida sin modificar el contenido de la señal.
🎯 Características
Retardo simple y fiable de un paso para datos genéricos.
Útil para crear relaciones temporales entre señales.
Ayuda a romper bucles de realimentación inmediata en grafos que requieren actualizaciones de estado secuenciales.
📝 Instrucciones de uso
Conecta cualquier bloque que produzca señal al conector
Input.Usa el
Outputdonde necesites el valor del paso anterior.Si el valor vacío de la primera ejecución no es aceptable, trátalo con un bloque como
Replace Noneo inicializa condicionalmente los datos aguas arriba.
💡 Consejos y trucos
Combínalo con
Edge RisingoEdge Fallingpara detectar transiciones con historial de un paso, útil para antirrebotes o detección de secuencias.Úsalo con
Set - ResetoCounterpara construir máquinas de estado simples o lógica de conteo que requiera información del estado previo.Inserta antes de bloques lógicos como
And/Orcuando necesites sincronizar el timing entre múltiples señales.Empléalo junto con
Data MemoryoData Write Local/Data Read Localal construir sistemas con estado más complejos o cuando necesites preservar valores a través de múltiples pasos o subsistemas.Colócalo antes de
Demux/MuxoBatch Processingal retrasar estructuras de datos compuestas para mantener la alineación de la secuencia.Si tu flujo de trabajo usa interruptores manuales, asócialo con
Logic Inputpara crear temporización manual por pasos con historial de un paso.
🛠️ Solución de problemas
La salida aparece vacía en la primera ejecución: esto es esperado. Para evitar problemas, inicializa los datos aguas arriba o usa
Replace Nonepara sustituir con un valor por defecto.Las señales parecen desincronizadas: recuerda que las salidas siempre van un paso de ejecución por detrás de las entradas. Asegúrate de que otros bloques del flujo estén alineados o introduce bloques adicionales de
Delay Stepdonde sea necesario.Bucles de realimentación inesperados: usa este bloque para romper ciclos inmediatos; colocar un retraso de un solo paso suele resolver problemas de estabilidad y orden.
Última actualización