LabVIEWForum.de
Cluster reference an subpanel übergeben - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein)
+--- Thema: Cluster reference an subpanel übergeben (/Thread-Cluster-reference-an-subpanel-uebergeben)



Cluster reference an subpanel übergeben - Mazubi - 09.09.2013 09:47

Hallo zusammen
Ich steh da momentan aufm Schlauch und weiss nicht wie weiter. Wenn man ein VI in ein Subpanel lädt kann man ja mit
dem "LoadAndRun_byName.vi" Werte in Controls schreiben und somit ein Übergabe vom Haupt VI zum Subpanel machen.
Bis dahin alles kein Problem. Nun möchte ich aber eine Referenz über diesen Weg übergeben was aber fehlschlägt.
Das Subpanel schmeisst immer folgenden Fehler raus: "Object reference is invalid". Sprich bei der Übergabe läuft irgendwas schief.
Kann mir jemand sagen was ich falsch mache?

Danke schon im voraus.

P.S. .vit Dateien sind nicht erlaubt?!?


RE: Cluster reference an subpanel übergeben - jg - 09.09.2013 10:09

THINK Dataflow!

"LoadAndRun_byName.vi" ( offtopic: das muss man auch erst mal per Google finden, ...\National Instruments\LabVIEW xxxx\examples\general\controls\subpanel.llb ) startet erst dein VI. Das VI läuft in deinem Bsp genau 1x durch. Aber erst danach setzt du das Control mit der Refnum. Im ersten VI-Durchlauf enthält also das Refnum Control in deinem Subpanel eine ungültige Referenz, also Fehler!

Erweitere dein Subpanel-VI mal so:
[attachment=46215]
Dann wird irgendwann die Refnum korrekt gelesen.

Alternative: VI nur einfügen (also False am Eingang von Load&Run), und das RunVI später ausführen.

Gruß, Jens


RE: Cluster reference an subpanel übergeben - Mazubi - 09.09.2013 10:51

Sorry das mit der Library hätte ich genauer schreiben können. Danke für deine Erläuterung, das ist natürlich genau so wie du
es gesagt hast. Ich würde aber nicht unbedingt mit Zeitbasis auf etwas warten, das man unbedingt benötigt.
Meine Verbesserung würde folgendermassen aussehen:

Besten Dank


RE: Cluster reference an subpanel übergeben - GerdW - 09.09.2013 11:37

Hallo Mazubi,

deine "Verbesserung" bewirkt, dass die Schleife so schnell abgearbeitet wird wie nur möglich und damit mindestens 1 Core komplett auslastet...

Die wirkliche Verbesserung wurde schon genannt: RaceConditions per Dataflow verhindern, indem man das VI erst lädt, alle Werte setzt und dann startet!