24.08.2011, 09:25
24.08.2011, 09:40
Hier ist alles dran....
24.08.2011, 09:45
Hallo Dennis,
DATAFLOW!
Dein subVI liefert erst Daten, wenn es abgearbeitet ist. Bevor dein subVI nicht beendet ist, wirst du nie eine Ausgabe von ihm erhalten...
DATAFLOW!
Dein subVI liefert erst Daten, wenn es abgearbeitet ist. Bevor dein subVI nicht beendet ist, wirst du nie eine Ausgabe von ihm erhalten...
24.08.2011, 09:47
Ja das weiss ich mittlerweile, aber WANN ist es denn abgearbeitet? Fuer mich ist das nach "Save" fertig wenns wieder in den Idle Modus geht....


24.08.2011, 09:51
Hallo Dennis,
ein subVI ist fertig, wenn es beendet wird.
Solange du noch in deiner Statemachine rotierst, läuft es doch noch!
Plastischer Vergleich: Beendest du Word allein durch Schließen des Dokuments?
ein subVI ist fertig, wenn es beendet wird.
Solange du noch in deiner Statemachine rotierst, läuft es doch noch!
Plastischer Vergleich: Beendest du Word allein durch Schließen des Dokuments?
24.08.2011, 09:54
Nein, dazu schalte ich den PC aus 
Ne mal im Ernst ich habs verstanden. Es ist also nie fertig da ich immer in der StateMachine rumeier... eine neue frage: Wie kann ich die beenden nach "Save"?

Ne mal im Ernst ich habs verstanden. Es ist also nie fertig da ich immer in der StateMachine rumeier... eine neue frage: Wie kann ich die beenden nach "Save"?
24.08.2011, 09:55
Hallo Dennis,
indem du einen State "Quit" einführst, in dem die Statemachine beendet wird...
indem du einen State "Quit" einführst, in dem die Statemachine beendet wird...
25.08.2011, 09:44
Hallo GerdW,
also die Methode mit dem Quit klappt beinahe....zumindest ein durchlauf. Ich habe in der StateMachine eine Variable erstellt die sich auf den Stop-Knopf der While-Schleife bezieht. Wird mein Case abgearbeitet, wird der Stop-Knopf auf TRUE gesetzt und das VI ist beendet....mein Zaehl-VI wartet dann wieder x-Minuten und startet das Mess-VI erneut, allerdings ist da jetzt der Stop-Knopf noch gedrueckt und es bricht natuerlich sofort ab.
Ich habe versucht den Stop-Knopf zu bearbeiten (mechanical action) auf "Latch when pressed" aber das laesst er nicht zu, da kommt immer ein Error:
"If a Boolean control has associated local variables, it cannot use latch mechanical action. The first local variable to read a Boolean control with latch action would reset its value to the default."
Die Fehlermeldung verstehe ich, ich weiss mir aber anders leider nicht zu helfen!
Kann jemand vielleicht eine einfache State-Machine aufbauen die in einem State die While-Schleife drum herum beendet wie ich es brauche?
Problem: Beim ersten durchlauf klappt es ja, nur beim zweiten hat sich das SubVI "gemerkt" das Stop gedrueckt wurde und ist immer noch gedrueckt und somit wird das SubVI natuerlich sofort beendet.
also die Methode mit dem Quit klappt beinahe....zumindest ein durchlauf. Ich habe in der StateMachine eine Variable erstellt die sich auf den Stop-Knopf der While-Schleife bezieht. Wird mein Case abgearbeitet, wird der Stop-Knopf auf TRUE gesetzt und das VI ist beendet....mein Zaehl-VI wartet dann wieder x-Minuten und startet das Mess-VI erneut, allerdings ist da jetzt der Stop-Knopf noch gedrueckt und es bricht natuerlich sofort ab.
Ich habe versucht den Stop-Knopf zu bearbeiten (mechanical action) auf "Latch when pressed" aber das laesst er nicht zu, da kommt immer ein Error:
"If a Boolean control has associated local variables, it cannot use latch mechanical action. The first local variable to read a Boolean control with latch action would reset its value to the default."
Die Fehlermeldung verstehe ich, ich weiss mir aber anders leider nicht zu helfen!
Kann jemand vielleicht eine einfache State-Machine aufbauen die in einem State die While-Schleife drum herum beendet wie ich es brauche?
Problem: Beim ersten durchlauf klappt es ja, nur beim zweiten hat sich das SubVI "gemerkt" das Stop gedrueckt wurde und ist immer noch gedrueckt und somit wird das SubVI natuerlich sofort beendet.
25.08.2011, 09:46
Hallo Dennis,
wenn du schon mit lokalen Variablen arbeitest, kannst du die doch beim Aufruf des subVI "händisch" wieder auf FALSE zurücksetzen!? (Da du ja schon eine Statemachine hast: sowas macht man typischerweise im INIT-State...)
wenn du schon mit lokalen Variablen arbeitest, kannst du die doch beim Aufruf des subVI "händisch" wieder auf FALSE zurücksetzen!? (Da du ja schon eine Statemachine hast: sowas macht man typischerweise im INIT-State...)
25.08.2011, 12:22
Es funktioniert! Ole ole 

Einziger schoenheitsfehler ist noch, das bei jedem Start der Messung ein Dialogfenster auf geht, wo ich den Dateinamen auswaehlen muss...das muss ich noch irgendwie automatisieren mit aktuellem datum und uhrzeit, zb. 110825-1326 oder so....aber dafuer gibts bestimmt auch eine Loesung hier!


Einziger schoenheitsfehler ist noch, das bei jedem Start der Messung ein Dialogfenster auf geht, wo ich den Dateinamen auswaehlen muss...das muss ich noch irgendwie automatisieren mit aktuellem datum und uhrzeit, zb. 110825-1326 oder so....aber dafuer gibts bestimmt auch eine Loesung hier!