LabVIEWForum.de - Probleme Datenerfassung Abtastwerte nicht erfasst

LabVIEWForum.de

Normale Version: Probleme Datenerfassung Abtastwerte nicht erfasst
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo Miteinander

Ich bin recht unerfahren, was Labview betrifft. Ich beschäftige mich seit einigen Monaten damit, kenne mich aber noch nicht wirklich gut aus. Ich freue mich auf Hilfe aus diesem Forum

Meine Aufgabe lautet vorerst nur ein Messwert aus dem DAQmx (Karte NI9205) auszulesen. Dabei habe ich bisher immer die Assistenten verwendet. Da ich mit diesen aber nicht glücklich bin, habe ich das ganze selber nachgebaut.

Ich bin soweit recht gut vorangekommen, aber ich habe immer noch Fehler in meinem Programm. Ich möchte auf dem gleichen Kanal den ich auslese analog triggern. Könntet ihr überprüfen, ob das richtig gemacht wurde. Steigende Flanke und 3V müssten stimmen.

Mein grosses Problem ist, dass ich nach jeder versuchten Messung folgenden Fehler erhalten

Code: 200284

Beschreibung:

Es wurden einige oder alle der angeforderten Abtastwerte noch nicht erfasst.

Verwenden Sie ein längeres Lese-Timeout oder lesen Sie die Daten später in Ihrem Programm, um zu warten, bis die Abtastwerte zur Verfügung stehen. Um die Abtastwerte früher verfügbar zu machen, können Sie die Abtastrate erhöhen. Wenn Ihr Task einen Starttrigger verwendet, stellen Sie sicher, das dieser korrekt konfiguriert ist. Es ist auch möglich, dass Sie den Task für ein externes Timing konfiguriert haben, ohne eine Taktquelle zur Verfügung zu stellen. Wenn dies der Fall ist, stellen Sie bitte eine Taktquelle zur Verfügung.

Ich habe im Internet und auch in diesen Foren, tonnenweise Artikel mit dem selben Fehler durchgelesen, ich konnte mein Problem jedoch nicht lösen. Ich wäre euch dankbar, wenn ihr mir ein paar Tipps hättet und das Programm anschauen könntet. Das VI findet ihr im Anhang.

Die Version, die ich euch angehängt habe ist die 2009er Version
Lv09_img2
Hallo Samel,

erstmal Tipps:
- Task erstellen und löschen macht man üblicherweise außerhalb der Schleife.
- Parameter für SampleTiming etc. erstellt man per Rechtsklick auf den entsprechenden Eingang->Konstante erstellen. Dann erhält man selbsterklärende Enums/Rings statt einfacher Zahlenwerte...

Ich könnte mir vorstellen, dass du nicht auf dem gleichen Kanal den Trigger haben kannst, mit dem du dann die Werte lesen willst: DAQmx wartet mit dem Einlesen von Werten auf einen Trigger, der Trigger wartet auf das Einlesen von Werten. (Nur so eine Idee.)

Vorschlag:
- Es gibt Beispiele zum Umgang mit (analogen) Triggern. Hast du die angeschaut/verwendet?
- Du kannst doch mehr als nur einen Kanal nutzen, das Modul sollte noch mehr Kanäle bereithalten...
Hallo GerdW

Vielen dank für deine Tipps. Also heisst das, dass ich in diesem Beispiel die ganze Schleife entfernen kann, oder über welche Teile brauche ich die Schlaufe noch?

Das wegen den Enums ist ein guter Tipp. Das macht das ganze viel einfacher zum lesen.

Ich habe irgendwo auf der Labview Seite gelesen, dass man auf dem gleichen Kanal triggern kann. Im Assistenten funktioniert das auch. Wenn ich jetzt aber den Kanal ändere, was ich ohne Probleme kann, bekomme ich wieder eine Fehlermeldung, dass die Triggereinstellungen falsch sind. Vielleicht hätte da jemand eine Lösung. Wenn ich mich eben noch richtig errinnere, muss man auf dem Channel 0 triggern, kann mich aber täuschen.

Ich habe so viele LabView Beispiele angesehen und ausprobiert, ich bin immer noch nicht auf einen grünen Zweig gekommen. Sowohl die auf dem PC, als auch die im Internet oder in diveresen Foren.

Im Anhang eine korrigierte Version.

Vielen Dank für eure Unterstützung

Grüsse Samel.
Referenz-URLs