Wenn dein Problem oder deine Frage geklärt worden ist, markiere den Beitrag als "Lösung",
indem du auf den "Lösung" Button rechts unter dem entsprechenden Beitrag klickst. Vielen Dank!
Hi Leute,
habe um mein Hauptprogramm eine For-Schleife über die ich meine gewünschten Durchläufe vorgeben kann.
Nachdem die Schleife z.B. meine gewünschte 3 mal Durchlaufen wurde, stoppt das Programm wie gewünscht.
Allerdings bleibt mein Ventil dann bei der Spannung, bei welcher der letzte Durchlauf endet.
Jetzt zu meiner Frage:
Da ich mein Ventil schützen will, damit es nicht ewig auf möglicherweise 5V oder ähnlichem stehen bleibt, möchte ich, dass das ganze Programm dann auf einen beliebigen Wert, z.B. 1V oder 0V, schaltet und nicht auf dem letzten Wert des letzten Durchlauf´s bleibt.
Hoffe es ist etwas verständlich, sonst einfach Fragen.
Zitat:möchte ich, dass das ganze Programm dann auf einen beliebigen Wert, z.B. 1V oder 0V, schaltet und nicht auf dem letzten Wert des letzten Durchlauf´s bleibt.
Du willst etwas nach Ablauf der Schleife erledigen: dann musst du es auch programmieren!
Deshalb wie gezeigt: nach der Loop einfach einen Wert ausgeben…
Der Fehler ist, dass Du die LV-Beispiele DAQmx/Ausgabe nicht angeschaut hast. Ausgabe funktioniert so: Erst mit DAQmxWrite Daten bereitstellen, dann starten. Nicht umgekehrt.
Man kann übrigens beim Beenden des VI das DAQmx-Gerät rücksetzen. Dafür gibt es eine Funktion. Dann muß man nicht den Wert 0 übergeben. Das Rücksetzen betrifft die ganz Karte mit allem was drauf ist.
Problem ist, dass du an der markierten Stelle die Task-ID verlierst.
Wenn die Schleife zwecks Auto-Indexing 0x ausgeführt wird, dann die die Task-Refnum am Ausgang ungültig.
Ersetze den Tunnel durch eine Schieberegister, dann funktioniert es auch bei 0x Schleifenausführung.
Gruß, Jens
Wer die erhabene Weisheit der Mathematik tadelt, nährt sich von Verwirrung. (Leonardo da Vinci)
!! BITTE !! stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort!
Den Auto-Indexed Tunnel ersetzen oder den Loop Tunnel?!
Habe nach der Funktion für das zurückseten des DAQmx-Gerät gesucht aber das klappt auch nicht...
Den Tunnel für die DAQmx Task-Refnum durch ein Schieberegister ersetzen, also so:
Think Dataflow: Wenn die Schleife zwecks Autoindexing kein einziges Mal ausgeführt wird, dann wird ohne Schieberegister am Ausgang der Schleife der Default-Wert für die Task-Refnum ausgegeben, und das ist eine "ungültige" Task-Refnum.
Gruß, Jens
Wer die erhabene Weisheit der Mathematik tadelt, nährt sich von Verwirrung. (Leonardo da Vinci)
!! BITTE !! stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort!