LabVIEWForum.de - Boolsches Array

LabVIEWForum.de

Normale Version: Boolsches Array
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Servus allerseits,

in meinem Programm sollen mehrere Kanäle gemessen werden. Die Auswahl der einzelnen Kanäle erfolgt als boolsches Array in einem SubVI, die Messung in einem anderen, in dem das Array aus einer Datei wieder ausgelesen wird.

Ich würde nun das Array einsetzen, um die gewünschten Kanäle auslesen zu lassen. Das Problem, das ich nun (eventuell) habe, ist, die True oder False Werte dem richtigen Index, das heißt Kanal, zuzuweisen. Dazu hab ich mal einen ersten Versuch gemacht.

Kann man das so machen oder gibts vielleicht eine bessere Lösung? Könnte es da möglicherweise Probleme geben, wenn man in die innerste Schleife das Messprogramm.vi (was, vielleicht nur für meine Verhältnisse, durchaus ziemlich umfangreich werden kann), ich meine zum Beispiel fehlende Abbruchmöglichkeiten oder ähnlich.

LV 71

Grüßle
S.
' schrieb:Die Auswahl der einzelnen Kanäle erfolgt als boolsches Array in einem SubVI, die Messung in einem anderen, in dem das Array aus einer Datei wieder ausgelesen wird.
Ja, das kann man so machen.

Zitat:Das Problem, das ich nun (eventuell) habe, ist, die True oder False Werte dem richtigen Index, das heißt Kanal, zuzuweisen. Dazu hab ich mal einen ersten Versuch gemacht.
Der Versuch ist erfolgreich.
Die "richtige Zuordnung zwischen T/F-Wert und dem Index" geschieht automatisch - durch die sog. Autoindizieren (das ist das leere Viereck am linken Rand der FOR-Schleife, über das das boolsche Array in die FOR-Schleife hereinkommt).
Hinweis:
Der Wert 20 am N-Eingang der FOR-Schleife ist überflüssig. Einfach weglassen. Die Anzahl der Durchläufe richtet sich nach der Länge des Arrays, das am Autoindex-Eingang angeschlossen ist.
Noch einer:
Einen Boolschen Wert muss man nicht auf true oder false vergleichen. Das Ergebnis ist selbst wieder nur ein Boolscher Wert.


Zitat:Kann man das so machen oder gibts vielleicht eine bessere Lösung?
Ob eine andere Lösung besser wäre, kann man nur entschieden, wenn man die Applikation und den allgemeinen Ablauf kennt.

Zitat:Könnte es da möglicherweise Probleme geben, wenn man in die innerste Schleife das Messprogramm.vi (was, vielleicht nur für meine Verhältnisse, durchaus ziemlich umfangreich werden kann), ich meine zum Beispiel fehlende Abbruchmöglichkeiten oder ähnlich.
Dieser Satz ist unvollständig. Demzufolge kann die Frage auch nicht zufriedenstellend beantwortet werden.

Nicht abbrechbare Schleifen, besondern innerhalb weiterer Schleifen, führen immer zu Problemen. Eine Schleife sollte nicht größer werden als der Bildschirm. Ein Programm ist schon mal dann gut, ich sag lieber mal nicht schlecht, wenn es aus vielen, vielen SubVIs besteht. Außerdem sollte unbedingt das Datenflußprinzip eingehalten werden.
' schrieb:Einen Boolschen Wert muss man nicht auf true oder false vergleichen.
Wer hat das nicht schon gemacht? Eine Rube Goldberg Machine gebaut? Ich jedenfalls bin schon über einige von mir gestolpert....
Hier gibt es eine ganze Sammlung darüber.

Ich möchte hiermit niemandem zu nahe treten! Bin diese Tage erst über oben genannten link gestolpert und wollte ihn euch nicht vorenthalten.

Gruss,
C
OK,

vielen Dank.

Dann mach ich das erstmal so weiter und berichte dann, ob es am Ende geklappt hab (auch mit den Abbruchbedingungen, da kommt sicher noch mal ne Frage nach).

Die "20" an der For-Schleife war noch dran, weil mein Array aus der Datei als 32bit gespeichert war, da muss ich dann noch die überschüssigen Elemente löschen.

Und den boolschen Vergleich kann man sich natürlich bei zweiter Überlegung schenkenTongue

Grüßle
S.
Referenz-URLs