LabVIEWForum.de
Datenübergabe von einem VI zum anderen - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein)
+--- Thema: Datenübergabe von einem VI zum anderen (/Thread-Datenuebergabe-von-einem-VI-zum-anderen)



Datenübergabe von einem VI zum anderen - Bettina - 09.02.2007 09:59

Hallo, ich habe ein Problem.

Nun, so sieht das Blockdiagramm von meinem Titel.vi aus:

[attachment=5142]

Ich möchte nun vom einen VI zum anderen (siehe Verbindung) Daten übertragen (in diesem Fall wären das Strings und der VISA-Ressourcenname).
Wie stelle ich das am besten an?

lg
Bettina


Datenübergabe von einem VI zum anderen - Mr.T - 09.02.2007 10:04

Hallo!

So wie ich das sehe, möchtest Du die Daten via Knopfdruck übertragen?
Dat Problem is: Wenn Du vorher nicht das untere VI ausgeführt hast, kann das Obere VI nur "Standardwerte" bekommen - das möchtest Du bestimmt nicht, oder?

Lagere die Ressourcen doch aus und mache ein VI, welches diese Daten für beide zur Verfügung stellt.

Da ich jetzt den Ablauf net weiss, solltest Du vielleicht noch etwas dazuschreiben! Evtl. ist der Ablauf ja so, dass Du diese VIs hintereinander ausführen sollst und kannst, dann sind z.B. Sequenzen oder Statemachienes sinnvol!

Erzähl einfach ma´, worum´s geht!Big Grin

Gruß


Datenübergabe von einem VI zum anderen - Bettina - 09.02.2007 10:21

Also, das untere VI ist ein Konfigurationsmenü.
Dort wird ein Spectrumanalyzer konfiguriert und wichtige Daten zur Messung (Messort, Projektname, usw.) eingetragen,
die danach im oberen VI (MessVI) unter dem Diagramm dargestellt werden sollen. Die Werte die man einträgt sollen erhalten bleiben im Konfigurationsmenü.

Und dann soll eben gemessen werden.

Soweit der Aufbau. Noch konkrete Fragen?

lg Bettina


Datenübergabe von einem VI zum anderen - Mr.T - 09.02.2007 19:14

Hallo!

Tja, so richtig viel habe ich da jetzt nicht herausziehen können...:[list]-Konkreter Ablauf? (zuerst das, dann dies und evtl. jenes, dann wieder das, aber auf keinen Fall das andere vorher..)
-Muss das VI an Schaltfläche 2 zuallererst ausgeführt werden?
-Was soll passieren, wenn zuerst Schaltflache 1 betätigt wird, ohne vorher jemals eine andere betätigt zu haben?
-...<>
[st]Als Tipp: Baue eine State Machine. Dort erzwingst Du zuallererst die Konfiguration, dann als nächster State wäre eine Ereignisstruktur gut, um den nächsten Schritt einzuleiten (z.B. bei Klick "messen", oder "rekonfigurieren"...).
Die eingestellten und erfassten Daten gibst Du mit einem schieberegister weiter...

Gruß


Datenübergabe von einem VI zum anderen - Bettina - 15.02.2007 08:56

Naja, zuerst kommt die Kalibrierung. Hier soll der Umfang des Rades am Messwagen eingegeben werden um das Diagramm anpassen zu können.
Dieser Vorgang wird nur einmal bei einem Messfahrzeugwechsel gemacht und soll dann gespeichert werden.
Es ist das dritte VI im Menü.

Dann kommt die Konfiguration. Diese muss auf jeden Fall vor der Messung gestartet und alle Einstellungen vollzogen werden. es ist das zweite Menü.

Und zu guter letzt kommt dann die Messung wo alle Daten aufgenommen werden sollen und dann in einer Datei sämtliche Konfigurationen samt dem Diagramm abgespeichert werden sollen.

Was ist eine State Machine? Arbite mit der deutschen Version von LV.

lg Bettina


Datenübergabe von einem VI zum anderen - Achim - 15.02.2007 09:08

Hi Bettina,

eine State Machine ist eine "Programmiertechnik", das nennt man in Deutsch manchmal auch "Zustandsautomat".

Schau mal hier:

http://www.LabVIEWforum.de/index.php...ost&p=15729

Weiter Beispiele im Forum oder auch im Example Finder in LV!


Das Prinzip funktioniert in LV so:

Man platziert eine Case-Struktur in einer While-Schleife und springt in jedem Schleifendurchlauf immer wieder in den gleichen State (Case), bis eine Übergangsbedingung erfüllt ist. Das kann die Überschreitung eines Grenzwertes oder auch ein Tastendruck (Event) sein. Ist die geschehen, wird bei der nächsten Iteration in einen anderen State gesprungen. In welchen wurde im Schritt zuvor "mitgeteilt". Die Information, welcher State der nächste ist, wird mittels Schieberegister in den nächsten Durchlauf geschleift!

Gruss
Achim