Array über VI-Aufruf als Referenz ans SubVI übergeben - Druckversion +- LabVIEWForum.de (https://www.labviewforum.de) +-- Forum: LabVIEW (/Forum-LabVIEW) +--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein) +--- Thema: Array über VI-Aufruf als Referenz ans SubVI übergeben (/Thread-Array-ueber-VI-Aufruf-als-Referenz-ans-SubVI-uebergeben) |
Array über VI-Aufruf als Referenz ans SubVI übergeben - NafeZ - 27.08.2009 11:02 Hallo Leute, mir stellt sich dezeit folgende Frage. Ich habe ein MainVI in dem der Benutzer rumpfuschen kann. In diesem werden aufgrund verschiedenster Events dann VIs aufgerufen. In einem der SubVIs rufe ich das unterste VI, nicht wie normal durch reinziehen ins Blockdiagramm, sondern über den Namen auf und öffne es, damit der Bediener prallel in Main- und SubVI arbeiten kann. Im aufgerufenen SubVI steuere ich nun meine Hardware an. Dafür brauche ich Informationen über Subdevice, Channels usw. Ich muss also ein mehrdimensionales Array zur Verfügung stellen. Kann ich dieses Array nun einfach als Referenz vom Main ans SubVI übergeben? Und wenn ja, wie? Als Value? Danke schonmal im voraus. Gruß, NafeZ Array über VI-Aufruf als Referenz ans SubVI übergeben - IchSelbst - 27.08.2009 12:00 ' schrieb:Kann ich dieses Array nun einfach als Referenz vom Main ans SubVI übergeben?Klar. Das Array als (stricten) Typ definieren. Das hat bei späteren Anpassungen Vorteile. Vom Bedien/AnzeigeElement des Arrays eine Referenz erstellen. An dieser Referenz ein Bedienelement erstellen. Dieses Element in das SubVI kopieren und als Eingang deklarieren. Dann kannst du mit dieser Referenz praktisch arbeiten wie mit einen Datendraht. Ich würde aber von dieser Methode abraten - und lieber eine FGV verwenden. Array über VI-Aufruf als Referenz ans SubVI übergeben - NafeZ - 27.08.2009 12:13 ' schrieb:Das Array als (stricten) Typ definieren.Wie? ' schrieb:Ich würde aber von dieser Methode abraten - und lieber eine FGV verwenden.FGV? MFG & WTF? Array über VI-Aufruf als Referenz ans SubVI übergeben - IchSelbst - 27.08.2009 12:38 ' schrieb:Wie?Kontextmenü des Elements öffnen. Dort Fortgeschritten>Anpassen ... auswählen. Zitat:FGVFunktionale, globale Variable. Guckst du die Themen, die darüber gerade geführt werden. FGVs sind Datenspeicher in SubVIs (Case-Sequenz in While-Schleife mit Schieberegister). Du kannst also in deinem MainVI die Variable beschreiben und in deinem SubVI auslesen. Und noch eins: Rumfpuschen macht sich in technischen Beschreibungen ganz schlecht. Davon bekommt man meistens Kopfschmerzen. Array über VI-Aufruf als Referenz ans SubVI übergeben - NafeZ - 27.08.2009 12:51 ' schrieb:Kontextmenü des Elements öffnen. Dort Fortgeschritten>Anpassen ... auswählen.Danke! ' schrieb:Funktionale, globale Variable.Also würde ich so drum rum kommen alle meine SubVIs durch die ensprechenenden Referenzen für mein Feld zu ergänzen. Seh ich das richtig? Somit könnte ich mir eine Menge Arbeit und Zeit sparen. Kennst du ein gutes Tutorial zu FGV? ' schrieb:Und noch eins:Ich werds beim nächsten mal beherzigen. Array über VI-Aufruf als Referenz ans SubVI übergeben - NafeZ - 27.08.2009 13:09 Hab selber was gefunden! Danke digga! Array über VI-Aufruf als Referenz ans SubVI übergeben - IchSelbst - 27.08.2009 13:53 ' schrieb:Also würde ich so drum rum kommen alle meine SubVIs durch die ensprechenenden Referenzen für mein Feld zu ergänzen. Seh ich das richtig?Jawohl. Zitat:Somit könnte ich mir eine Menge Arbeit und Zeit sparen.Und wie viel Arbeit und Zeit! Es ist nicht nämlich nicht gerade trivial, mittels einer Referenz auf ein Array, das auch noch Cluster enthält, die gewünschten Daten aus dem Cluster zu holen. |