LabVIEWForum.de
Dataflow Verständnis Beispiel - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein)
+--- Thema: Dataflow Verständnis Beispiel (/Thread-Dataflow-Verstaendnis-Beispiel)



Dataflow Verständnis Beispiel - 911tom - 27.11.2017 19:57

Ich habe eine Verständnis Frage zu folgendem Fall.
Es ist nur ein Beispiel VI angehängt um es zu vereinfachen.

Eine Liste wird zeilenweise ausgelesen und auf Gemeinsamkeiten verglichen.
Dann werden die Cases ausgeführt oder nicht.

In welcher Reihenfolge werde die LEDs leuchten bzw. die Case ausgeführt wenn die Bedingungen(Vergleich) erfüllt sind ?
1 dann 2 dann 3 und dann wird die nächste Zeile ausgewertet ?


RE: Dataflow Verständnis Beispiel - Trinitatis - 27.11.2017 20:16

(27.11.2017 19:57 )911tom schrieb:  Eine Liste wird zeilenweise ausgelesen und auf Gemeinsamkeiten verglichen.
Dann werden die Cases ausgeführt oder nicht.

In welcher Reihenfolge werde die LEDs leuchten bzw. die Case ausgeführt wenn die Bedingungen(Vergleich) erfüllt sind ?
1 dann 2 dann 3 und dann wird die nächste Zeile ausgewertet ?

Hallo Tom,

erstmal musst du an die Auslesefunktion eine Zahl anbinden, damit auch wirklich mehrere Zeilen ausgelesen werden. Die könntest du dann autoindiziert an die Schleife übergeben.
Aber davon mal abgesehen gibt es keine Datenflussabhängigkeit beim Schreiben der einzelnene LEDs. Es gibt zwar eine Datenflussabhängigkeit innerhalb der Schleife, was das Parsen des Strings angeht, das Beschreiben der einzelnen LEDs erfolgt aber quasi parallel bzw. zufällig.
Man könnte höchstens einwenden, dass zum Beschreiben von LED 2+3 mehrere Parsingfunktionen durchlaufen werden müssen als für LED 1 - das ist aber nicht determiniert.


Gruß, Marko


RE: Dataflow Verständnis Beispiel - GerdW - 27.11.2017 20:40

Hallo tom,

in Ergänzung zu Markos Anmerkungen:
- momentan werden die LEDs nur angeschaltet - aber nirgends ausgeschaltet!
- ich halte es nicht für sinnvoll, in den 3 TRUE-Cases jeweils 1s zu warten…
- ich halte es nicht für sinnvoll, nur in den TRUE-Cases zu warten, sonst aber nicht…
- AutoCleanup macht dein Blockdiagramm viel schöner…
- für Stringkonstanten gibt es ein "auf Textgröße anpassen"…
- ein Test auf Gleichheit ist bei Float-Zahlen potentiell gefährlich…
- es gibt eine "=0"-Funktion…
- warum erzeugst du Float-Zahlen, wenn du bei den RegEx-Ausdrücken nur nach Ganzzahlen suchst?


RE: Dataflow Verständnis Beispiel - 911tom - 27.11.2017 21:11

@Trinitatis
Die Funktion liest doch die ganze Datei automatisch aus. Das funktioniert eigentlich und steht
so in dem Hilfetext von Labview.

@GerdW
Das Ganze ist nur ein Beispiel und dient dem Verständnis.
Caseinhalt ist egal. Es wird später etwas angesteuert, was unterschiedlich lang dauert.
Deinen letzten Satz versteh ich nicht, welcher Baustein sollte ich nehmen ?

Ich wollte eigentlich nur wissen in welcher Reihenfolge die Cases abgearbeitet werden.
Es ist doch richtig, dass erst alle Cases fertig sein müssen bevor die nächste Zeile ausgelesen wird oder ?
Möchte ich die Reihenfolge 1 2 3 haben muss ich eine Sequenz programmieren .


RE: Dataflow Verständnis Beispiel - Trinitatis - 27.11.2017 21:24

(27.11.2017 21:11 )911tom schrieb:  @Trinitatis
Die Funktion liest doch die ganze Datei automatisch aus. Das funktioniert eigentlich und steht
so in dem Hilfetext von Labview.

Auszug aus der Hilfe:
Anzahl ist die maximale Anzahl an Zeichen oder Zeilen, die von der Funktion gelesen werden sollen. Die Funktion liest weniger Zeichen oder Zeilen, wenn vorher das Ende der Datei erreicht wird. Wenn Anzahl <0 ist, liest die Funktion die gesamte Datei beginnend bei der aktuellen Dateiposition aus. Per Voreinstellung wird eine Zeile ausgelesen, wenn Sie den Kontextmenüpunkt Zeilen lesen ausgewählt haben. Anderenfalls wird die gesamte Datei gelesen.

...und wenn du eine mit CR zeilengetrennte Datei hast, dann wird wie in der Hilfe beschrieben nur eine Zeile ausgelesen.


(27.11.2017 21:11 )911tom schrieb:  Ich wollte eigentlich nur wissen in welcher Reihenfolge die Cases abgearbeitet werden.
Es ist doch richtig, dass erst alle Cases fertig sein müssen bevor die nächste Zeile ausgelesen wird oder ?
Möchte ich die Reihenfolge 1 2 3 haben muss ich eine Sequenz programmieren .

...so hatte ich es dir ausführlich beschrieben, (gesetzt den Fall, du liest Zeilen aus)


RE: Dataflow Verständnis Beispiel - 911tom - 27.11.2017 22:02

Also habs ich jetzt verstanden. Think Dataflow Angel_not

Zum Thema Datei lesen:
Wenn ich nichts anschliesse lieste er zeilenweise die ganze Datei aus. Das passt so.

Noch ne Frage zum Dataflow.
Wenn ich eine Num. Anzeige bauen möchte die Nonstop Livewerte auf dem Frontpanel anzeigen soll.
Wo muss diese am besten hin bzw. welche Position funktioniert. Der Wert ändert sich nonstop.
Z.B. soll der Wert live weiter anzeigen auch wenn das Programm 10sek in dem Case Fall steckt.


RE: Dataflow Verständnis Beispiel - GerdW - 27.11.2017 22:05

Hallo tom,

Zitat:Also habs ich jetzt verstanden. Think Dataflow
Noch ne Frage zum Dataflow.
Wenn ich eine Num. Anzeige bauen möchte die Nonstop Livewerte auf dem Frontpanel anzeigen soll.
Wo muss diese am besten hin bzw. welche Position funktioniert. Der Wert ändert sich nonstop.
Z.B. soll der Wert live weiter anzeigen auch wenn das Programm 10sek in dem Case Fall steckt.
Hast du es jetzt verstanden - oder doch nicht?
THINK DATAFLOW!

Wenn etwas unabhängig von anderen Strukturen laufen soll, muss es parallel (ohne Datenflussabhängigkeit) programmiert werden…


RE: Dataflow Verständnis Beispiel - 911tom - 27.11.2017 23:08

Also das vorige Beispiel ja.

Zum letzten, bitte um Korrektur falls ich daneben liege:
3 wird nur einmal angezeigt
1 wird bei jedem schleifendurchgang aktualisiert
2 wird nur aktualisiert wenn der Case abläuft


RE: Dataflow Verständnis Beispiel - Trinitatis - 27.11.2017 23:12

(27.11.2017 23:08 )911tom schrieb:  Zum letzten, bitte um Korrektur falls ich daneben liege:
3 wird nur einmal angezeigt
1 wird bei jedem schleifendurchgang aktualisiert
2 wird nur aktualisiert wenn der Case abläuft

...prinzipiell JA


RE: Dataflow Verständnis Beispiel - GerdW - 28.11.2017 07:54

Hallo tom,

Zitat:Z.B. soll der Wert live weiter anzeigen auch wenn das Programm 10sek in dem Case Fall steckt.
Das trifft auf keine der 3 Anzeigen zu…