Rückkopplungsknoten
- Aktualisiert2025-08-27
- 6 Minute(n) Lesezeit
Mit einem Rückkopplungsknoten können Daten für die nächste Blockdiagrammausführung oder Schleifeniteration gespeichert werden. Der Knoten speichert also Zustandsdaten aus einer Ausführung für die Weiterverwendung in der nächsten Ausführung.
Die Daten werden dabei nicht angetastet. Der Knoten empfängt einen Wert vom Initialisierungsanschluss und leitet diesen Wert an den nächsten Eingangsanschluss weiter. Wenn ein Rückkopplungsknoten einen neuen Wert empfängt, speichert der Knoten den Wert so lange, bis er an den nächsten Eingangsanschluss weitergegeben wird. Ein Rückkopplungsknoten entspricht einem z-1-ten Block in der Regelkreistheorie und der digitalen Signalverarbeitung.
Erstellen von Rückkopplungsknoten
Ein Rückkopplungsknoten (siehe folgende Abbildung) wird automatisch angezeigt, wenn Sie den Ausgang eines SubVIs, einer Funktion oder einer Gruppe von SubVIs oder Funktionen mit dem Eingang desselben VIs oder derselben Gruppe verbinden und wenn Sie die Option Rückkopplungsknoten automatisch in Schleifen einfügen auf der Seite Blockdiagramm im Dialogfeld Optionen aktivieren. Die Option Rückkopplungsknoten automatisch in Schleifen einfügen ist per Standardeinstellung aktiviert.
Sie können den Rückkopplungsknoten auch per Hand über die Palette Funktionen auswählen.
Beispiele für Rückkopplungsknoten finden Sie im VI "Feedback Node - Building an Array.vi" im Verzeichnis Structures\Feedback Node.
Initialisierungsanschlüsse
Mit dem Initialisierungsanschluss wird der Anfangswert des Rückkopplungsknotens festgelegt. Die Darstellung des Initialisierungsanschlusses (siehe Abbildung) ändert sich je nach Konfiguration des Rückkopplungsknotens.
Beim Einfügen eines Rückkopplungsknotens in das Blockdiagramm bleibt der Initialisierungsanschluss mit dem Knoten verbunden und der Knoten wird bei jedem Kompilieren oder Laden eines VIs global initialisiert. Der Anfangswert des Rückkopplungsknotens für die erste Ausführung entspricht dem Standardwert für den Datentyp. Sie können aber auch einen benutzerdefinierten Anfangswert festlegen. Wenn Sie einen Anfangswert festlegen, wird der Rückkopplungsknoten beim ersten Aufruf des VIs während der Ausführung auf diesen Wert initialisiert. Bei jeder weiteren Ausführung des VIs, ist der letzte Wert der vorherigen Ausführung der Ausgangswert. Bei Verwendung eines Rückkopplungsknotens in einer Schleife können Sie den Initialisierungsanschluss an den linken Rand der Schleife verschieben, um den Knoten so zu konfigurieren, dass dieser bei jeder Schleifenausführung initialisiert wird.
Aktivierungsanschluss
Über den Aktivierungsanschluss (siehe Abbildung) werden Rückkopplungsknoten aktiviert oder deaktiviert.
Die Option wird angezeigt, indem Sie mit der rechten Maustaste auf den Rückkopplungsknoten klicken und Aktivierungsanschluss aus dem Kontextmenü wählen. Wenn "Aktivierungsanschluss" TRUE lautet, wird der Rückkopplungsknoten gemäß Ihrer Konfiguration im Dialogfeld Eigenschaften ausgeführt. Bei FALSE gibt der Knoten so lange den letzten Wert der vorigen Ausführung oder Iteration aus, bis Sie "Aktivierungsanschluss" wieder auf TRUE setzen.
Werte
Per Voreinstellung speichert ein Rückkopplungsknoten nur den Wert der vorherigen Ausführung oder Iteration. Sie können ihn aber auf der Seite Konfiguration im Dialogfeld Eigenschaften so konfigurieren, dass Werte von mehreren aufeinanderfolgenden Ausführungen oder Iterationen gespeichert werden, indem Sie eine Verzögerung angeben. Wenn Sie eine Verzögerung von mehr als einer Ausführung oder Iteration angeben, wird nur der Anfangswert ausgegeben, bis die angegebene Verzögerung abgelaufen ist. Dann gibt der Knoten die gespeicherten Werte der Reihe nach einzeln aus.
| (FPGA Module) Wenn Sie die Option Ignore FPGA reset method auf der Seite FPGA Implementation im Dialogfeld Properties aktivieren, entfernt das LabVIEW FPGA Module das Zurücksetzen aus den Registerexemplaren. Dadurch hat der Compiler die Möglichkeit, die Pausen mit Hilfe von Zuordnungstabellen für Schieberegister (SRL) statt mit Flipflops zu implementieren. Mit SRLs werden mehrere Verzögerungen in einer Zuordnungstabelle (LUT) zusammengefasst, wodurch sich die Ressourcenauslastung des FPGAs stark verringert, anders als bei Verwendung von Flipflops. |
Wenn Sie beispielsweise eine Verzögerung von 3 wählen, gibt der Rückkopplungsknoten den Anfangswert für drei Schleifeniterationen aus. Bei der nächsten Iteration gibt der Rückkopplungsknoten den Wert von der ersten Iteration (Iteration 0) aus, dann den Wert von der zweiten Iteration u.s.w. Das folgende Blockdiagramm demonstriert das Verhalten eines Rückkopplungsknotens mit dem Anfangswert 0 und einer Verzögerung von 3.
| Schleifeniteration | Ausgabe des Rückkopplungsknotens | Endwert | Vom Rückkopplungsknoten gespeicherte Werte |
|---|---|---|---|
| Vor der Ausführung oder Iteration 0 | k. A. | k. A. | 0, 0, 0 |
| 0 | 0 | 0 | 0, 0, 0 |
| 1 | 0 | 1 | 0, 0, 1 |
| 2 | 0 | 2 | 0, 1, 2 |
| 3 | 0 | 3 | 1, 2, 3 |
| 4 | 1 | 5 | 2, 3, 5 |
| 5 | 2 | 7 | 3, 5, 7 |
| 6 | 3 | 9 | 5, 7, 9 |
| 7 | 5 | 12 | 7, 9, 12 |
Im vorigen Blockdiagramm gibt der Rückkopplungsknoten den Anfangswert 0 dreimal aus, bevor der erste empfangene Wert (0) ausgegeben wird.
| Hinweis Wenn Sie Verzögerung auf zwei oder mehr Ausführungen oder Iterationen setzen, können Sie ein Array mit dem Initialisierungsanschluss verbinden, um jedes Verzögerungselement auf einen beliebigen Wert zu initialisieren. |
Pfeilrichtung
Sie können die Richtung des Pfeils an einem Rückkopplungsknoten zur Anzeige der Datenflussrichtung entlang der Verbindung ändern, indem Sie mit der rechten Maustaste auf den Knoten klicken und aus dem Kontextmenü die Option Richtung ändern auswählen. Durch Änderung der Pfeilrichtung wird nur die Darstellung des Rückkopplungsknotens und der Verbindungen im Blockdiagramm geändert. Die Datenflussrichtung ändert sich nicht.
Z-Transformationsansicht
Zur Anzeige eines Rückkopplungsknotens in Z-Transformationsansicht klicken Sie mit der rechten Maustaste auf den Knoten und wählen Sie Z-Transformationsansicht aus dem Kontextmenü. Daraufhin wird der Knoten wie ein z-1-Block in der Regelkreistheorie und der digitalen Signalverarbeitung dargestellt. Der Wechsel in diese Ansicht ändert nur die Darstellung des Rückkopplungsknotens und nicht seine Funktionsweise.
Frontpanel-Anzeigeelemente und Rückkopplungsknoten
Frontpanel-Anzeigeelemente, die mit der gleichen Schleife verbunden sind wie der Rückkopplungsknoten, zeigen entsprechend ihrer Position an der Verbindung relativ zum Rückkopplungsknoten unterschiedliche Werte an. Im folgenden Blockdiagramm sehen Sie einen Rückkopplungsknoten, der den Ausgangswert an den nächsten Eingangsknoten leitet. Dieser Knoten führt eine Operation an dem Ausgangswert durch und sendet das Ergebnis an das Anzeigeelement und zurück zum Rückkopplungsknoten.
Im vorhergehenden Blockdiagramm führt die Funktion Inkrementieren eine Operation am Anfangswert 4 durch, bevor der Wert an das Anzeigeelement weitergeleitet wird. Daher gibt die Frontpanel-Anzeige den Wert 5 aus. Im folgenden Blockdiagramm sendet der Rückkopplungsknoten den gleichen Datenwert an die Inkrement-Funktion, das Anzeigeelement zeigt jedoch einen anderen Wert an.
Im vorhergehenden Blockdiagramm erreicht der Anfangswert 4 des Rückkopplungsknotens das Anzeigeelement vor der Inkrement-Funktion. Obwohl der Endwert, der von der Inkrement-Funktion an den Rückkopplungsknoten gesendet wird, 5 lautet, zeigt das Frontpanel-Anzeigeelement den Ausgangswert 4 an.