LabVIEWForum.de - SUB-VI parallel aktualisieren

LabVIEWForum.de

Normale Version: SUB-VI parallel aktualisieren
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo Leute,

ich hab da ein Problem und ich komm nicht drauf, hoffentlich kann mir jemand helfen.
Ich programmieren eine Ergometeransteuerung. Ein Modul davon ist die Anzeige der Trittfrequenz und ein paar anderer Daten in einem eigenen Fenster. Hierzu habe ich ein eigenes VI erstellt und möchte dies nun einmal öffnen (bei klick auf "Ampel") und alle 500ms aktualisieren, d.h. die Werte neu übergeben.

So wie es jetzt ist, öffnet das VI nicht und das VI von dem aufgerufen wird angehalten. Warum ist das so?
Bitte mein Unvermögen zu entschuldigen, bin ein Neuling.
Ich nehme an, dass das VI immer wieder geöffnet wird, und deswegen alles hängt.

wie folgt rufe ich das VI auf:
[attachment=34422]

Wie löse ich das am besten?

DANKE!
Ganz blicke ich noch nicht so ganz durch bei dir, aber soweit ich das sehe hast du 2 Endlosschleifen, die erste ist die While-Schleife von der aus du dein Ampel.vi ausführst. wenn du einmal in der schleife bist kommst du nicht mehr heraus, es sei denn du setzt dein True an der Schleifenbedingung auf False. Die zweite Endlosschleife befindet sich in der Ampel Vi selbst, das heißt: du führst das gesamte Packet ein einiges mal aus. 1. Du öffnest dein Ampel.Vi und verbleibst da drin für alle Ewigkeit, leider wartet dein Haupt-Vi aber darauf das das Sub-Vi beendet wird, pausiert also...
Hy frankyp,

danke für die Antwort.
Ja das sehe ich ein, die beiden Schleifen sind eindeutig zu viel. Hab die Endlosschleife im Hauptprogramm jetzt entfernt.

Warum wartet eigentlich das Haupt-VI bis das Sub-VI beendet wird? Gibt es eine Möglichkeit, dass beide VI's parallel laufen? Ich möchte dass beide Fenster gleichzeitig angezeigt werden, und auch die ganze Zeit aktualisiert werden.
D.h. dass das Haupt-VI nicht angehalten wird und das Sub-VI die ganze Zeit (alle 500 - 1000ms würde reichen) Daten vom Haupt-VI erhält und dann immer aktualisiert wird.
Sollte ich da mit globalen Variablen arbeiten? Oder gibt es eine Möglichkeit einen Teil des Haupt-VI's in einem Eigenen Frontpanel anzuzeigen und so auf das Sub-VI zu verzichten um zu verhindern dass das HauptVI angehalten wird?

Danke!
Hab jetzt die Daten die ich übergeben möchte in eine globale Variable gespeichert in der Hoffnung dass es dann funktioniert. Leider kein Erfolg. Das Haupt-VI wird durch den Aufruf des Sub-VI's immer noch angehalten, das Sub-VI erhält dadurch keine neuen Daten und wird dadurch nicht mehr beendet.
Kann man da vielleicht irgendwelche Einstellungen verändern?
Muss ich mein SUB-VI dynamisch starten? Hab da jetzt nach längerem suchen ein paar Hinweise darauf gefunden. Leider weiß ich aber nicht wie das geht.
Hab den Link dazu gefunden: http://LabVIEWportal.eu/viewtopic.php?f=33&t=147

Is das die Lösung meines Problems?
Hey,

Im Anhang findest du zwei VIs, in dennen ich einfach parallel ein SubVi öffne.

Einstellungen sind sonst nur bei Rechtsklick auf SubVI-> SubVI Einstellungen gemacht.

Vllt hilft dir das weiter.
danke, leider kann ich die dateien nicht öffnen, hab die 2009er version.
trotzdem vielen dank!
Sry, ncht drauf geachtet.

Hier als 2009 gespeichert(Hoffe es hat geklappt. Smile )
Referenz-URLs