auf Flanke warten, während dessen etwas anderes tun - Druckversion +- LabVIEWForum.de (https://www.labviewforum.de) +-- Forum: LabVIEW (/Forum-LabVIEW) +--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein) +---- Forum: Datenerfassung (DAQ) (/Forum-Datenerfassung-DAQ) +---- Thema: auf Flanke warten, während dessen etwas anderes tun (/Thread-auf-Flanke-warten-waehrend-dessen-etwas-anderes-tun) Seiten: 1 2 |
RE: auf Flanke warten, während dessen etwas anderes tun - S.D. - 29.08.2013 10:28 Hallo zusammen. Ich greife das Thema hier noch einmal auf, da ich für mich noch keine zufriedenstellende Lösung gefunden habe bezüglich dem Abbrechen des Lesens eines Tasks, wenn ich also auf ein Triggersignal warte. Habe auch hier gelesen, aber dort steht eben nur, dass man präventiv dafür sorgen sollte nicht beim "Warten" hängenzubleiben. Konkret mein Problem: Ich möchte über ein Triggersignal eine Aufnahme von Bildern starten. Habe das Auslesen bzw. warten auf den Trigger in einer parallelen Schleife zu meinen anderen Abläufen, sodass diese nicht beeinflusst werden. Das Problem ist aber, dass beim Beenden des Programms die Schleife des Triggers nicht beendet wird, da immer noch auf ein Signal gewartet wird. Ein entsprechendes Timeout zu nutzen kommt für mich nicht in Frage, da ich dann beim normalen Betrieb nicht sicher sein kann auch wirklich jedes Triggersignal zu erfassen. Wäre für jeden Denkanstoß dankbar. Gruß RE: auf Flanke warten, während dessen etwas anderes tun - S.D. - 03.09.2013 10:56 Hallo nochmal, ich habe eine Lösung gefunden, die ich mal hier poste, falls jemand ein ähnliches Problem hat. An sich ganz simpel. Es gibt das VI "DAQmx Control Task", mit welchem man verschiedene Aktionen bezogen auf einen Task ausführen kann: [attachment=46136] Unter anderem "Abort", dadurch wird der Task abgebrochen, was bei einem "Read", welches wie in meinem Fall auf einen Trigger wartet zu einem Error (-88709 bzw. -88710) führt. Mit einem geeignetem Error-Handler kann man dann bei Auftreten dieses speziellen Fehlers den Error-Cluster löschen und man hat seinen Trigger unterbrochen. Gruß |