LabVIEWForum.de - DAQ Timeout erkennen

LabVIEWForum.de

Normale Version: DAQ Timeout erkennen
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo,

ich würde gerne die Timeout-Funktion des DAQmx Lesen-vi nutzen.
Das an sich ist ja über den Variableneingang relativ einfach machbar.
Mein Problem ist, dass ich nicht weiß, wie ich den Timeout wieder abfragen kann. Gibt es eine Funktion, eine missglückte Triggerung zu erkennen?
Weil in dem bisherigen vi die Daten trotzdem als 1KB große Datei gespeichert werden, auch wenn gar keine vorhanden sind. Außerdem würde ich bei Erkennung eines Timeout gerne die Schleifenanzahl erhöhen.

Falls ihr mein spezielles vi braucht kann ich euch einen Screenshot senden.
Ich hoffe jemand ist da schlauer als ich Smile
Hallo yowa,

den Timeout erkennst du über eine entsprechende Fehlermeldung des DAQmxRead…
Immer den Error-Draht benutzen! Big Grin
(04.03.2016 13:26 )yowa schrieb: [ -> ]Weil in dem bisherigen vi die Daten trotzdem als 1KB große Datei gespeichert werden, auch wenn gar keine vorhanden sind. Außerdem würde ich bei Erkennung eines Timeout gerne die Schleifenanzahl erhöhen.
Wenn man an den Fehlerausgang eines SubVIs oder einer Funktion keinen Draht anschließt und es kommt zum Fehler, dann stoppt das ganze VI und meldet den Fehler.
Wenn das bei Dir nicht passiert, dann hast Du an das Lesen-VI zwar einen Fehlerdraht angeschlossen, aber letztlich damit keine entsprechende Fehlerbehandlung gemacht.
Einfach einen Case einrichten, der die Fehlernummer für den Timeout behandelt.
Oh, danke. Hätte eigentlich von selbst drauf kommen müssen, immerhin hab ích ja den Fehler immer in einem Feld anzeigen lassen.
Ja, also den Fehlerdraht abfragen. Fehlernummer sollte ja eigentlich einfach zu erkennen sein. Ich melde mich wieder, wenn's was Neues gibt - danke soweit erstmal.

Achso, kann ich innerhalb einer Schleife die Anzahl der Schleifendurchläufe erhöhen?
Hallo Yowa,

Zitat:Achso, kann ich innerhalb einer Schleife die Anzahl der Schleifendurchläufe erhöhen?
Wie soll diese Frage denn zu verstehen sein?
Wenn du eine Schleife mit zu Schleifenstart unbekannter Anzahl Iterationen haben willst, dann solltest du eine WHILE-Loop verwenden.
Wenn die (maximale) Anzahl der Schleifeniterationen vor Start der Schleife bekannt ist: FOR-Loop!
Ich glaube, das ist alles, was man zu dieser Frage wissen muss…
Referenz-URLs