Delay Step
Ce bloc de fonction décale le signal entrant d'une exécution (une étape). Il renvoie la valeur reçue précédemment sur la prise Input et met à jour sa mémoire interne avec l'entrée courante pour la prochaine exécution. Utilisez ce bloc lorsque vous avez besoin d'un décalage d'une étape dans le traitement des signaux ou pour rompre des boucles de rétroaction immédiates.
📥 Entrées
Input — Signal d'entrée générique à retarder. Accepte n'importe quel type de donnée.
📤 Sorties
Output — La valeur fournie lors de l'étape d'exécution précédente. Lors de la toute première exécution, cette valeur peut être vide (pas de valeur précédente).
🕹️ Contrôles
Aucun contrôle interactif ou widget pour ce bloc.
⚙️ Mécanisme d'exécution
À chaque cycle d'exécution, le bloc :
Renvoie via
Outputla valeur qu'il a stockée lors du cycle précédent.Remplace la valeur stockée par l'
Inputcourant pour l'utiliser lors du cycle suivant.
Ce comportement crée un délai stable d'une étape entre l'entrée et la sortie sans modifier le contenu du signal.
🎯 Fonctionnalités
Délai simple et fiable d'une étape pour des données génériques.
Utile pour créer des relations temporelles entre signaux.
Aide à rompre les boucles de rétroaction immédiates dans les graphes nécessitant des mises à jour d'état séquentielles.
📝 Instructions d'utilisation
Connectez n'importe quel bloc producteur de signal à la prise
Input.Utilisez la prise
Outputlà où vous avez besoin de la valeur de l'étape précédente.Si la valeur vide du premier passage n'est pas acceptable, gérez-la avec un bloc tel que
Replace Noneou initialisez conditionnellement les données en amont.
💡 Astuces
Combinez avec
Edge RisingouEdge Fallingpour détecter des transitions en vous appuyant sur l'historique d'une étape (utile pour le rebond ou la détection de séquences).Utilisez avec
Set - ResetouCounterpour construire des machines à états simples ou une logique de comptage nécessitant l'information d'état précédent.Insérez avant des blocs logiques comme
And/Orlorsque vous avez besoin d'aligner temporellement plusieurs signaux.Utilisez conjointement avec
Data MemoryouData Write Local/Data Read Localpour construire des systèmes à états plus complexes ou pour préserver des valeurs sur plusieurs étapes ou sous-systèmes.Placez avant
Demux/MuxouBatch Processinglorsque vous retardez des structures de données composites afin de garder l'alignement des séquences.Si votre flux de travail utilise des bascules manuelles, associez à
Logic Inputpour créer un timing manuel par étapes avec historique d'une étape.
🛠️ Dépannage
La sortie apparaît vide au premier lancement : c'est normal. Pour éviter les problèmes, initialisez les données en amont ou utilisez
Replace Nonepour substituer une valeur par défaut.Les signaux semblent désynchronisés : rappelez-vous que les sorties sont toujours en retard d'une étape par rapport aux entrées. Assurez-vous que les autres blocs du flux soient alignés ou insérez des blocs
Delay Stepsupplémentaires si nécessaire.Boucles de rétroaction inattendues : utilisez ce bloc pour rompre les cycles immédiats ; l'ajout d'un délai d'une étape résout souvent les problèmes de stabilité et d'ordre d'exécution.
Mis à jour