Hallo zusammen
Zitat:Genau das leistet doch die normale gepufferte Datenerfassung völlig kostenlos ohne jegliche.
Programmierarbeit.
Man sampled kontinuierlich mit einer konstanten Datenrate, also z.B. 25kHz.
Die Daten kommen dann erst mal in einen FIFO-Buffer - das ist Standard.
Ob Du diese Daten dann mit DAQmx Read in einer Schleife als Datensätze (Arrays) von je 10 oder 100 Stück oder aber als Einzelwerte ausliest (und jeden sofort verarbeitest), ist Deine Sache.
Der Werte "verfallen" durch Auslesen aus dem Buiffer - dann sind sie nämlich nicht mehr drin.
Ich bin aber nicht auf Express-VIs geeicht. Ob Deine Express-Vis in dieser Hinsicht korrigierbar sind, kann ich nicht sagen
Erst mal danke für die schnelle Antwort. Wir haben das schon mit dem DAQ Assistenten versucht. Mit einer kontinuierlichen Aufzeichenung und 1 Sample, nur bei einer Abtastrate von 25khz bekommen wir immer diesen fehler:
Fehlercode 200279
Wenn wir die Rate runtersetzten läuft wie es soll, da wir keinen Überlauf des Puffers bekommen. Dies können wir aber nicht machen da die Tastrate für unsere Anwendung zu gering ist.
Das Express-Vi das wir verwenden ist unter anderm aus dem DAQmx Read aufgebaut. Daher denken wir nicht das sich das Problem damit beheben lässt wenn wir das Express vi "nachbauen"
DAQ Assisten im Anhang mit Einzel Vis aufgebaut
Ich versuche an dieser Stelle das Problem nochmal an Hand einiger Beispielwerte zu erklären:
Unser problem ist das wir am Eingang unsers Vis zum vergleich einen einzelenen Wert brauchen. Da mit der kontinuierlichen
Aufzeichnung nicht jeder Wert des Samples sonder nur der zu letzte aufgezeichete Wert ausgewertet wird.
Samplegröße: 10
Gesampelte Analogwerte: 3.2,3.19,2.7,1.87,0.94,0.36,0.334,1.3,2.7,3.2
Nun wollen wir alle Werte die im Sample stehen am Eingang prüfen, in unserm Fall wir aber nur der letzte wert also 3.2 ausgewertet
und unser Programm erkennt nicht das der Taster betätigt wurde. Erst wenn wir jeden Wert einzelt vergleichen haben, kann das Programm
verstellen ob der Taster betätigt (wenn der anstehende Wert kleiner ist als der eingestellte Wert von 2,7)
worden ist und die dementsprächende Auswertung (nach einem weitern Vergleich ob dieser Wert zu dieser Zeit in der Toleranz liegt) beginnen.
Daher ist unser Frage wie können wir das machen??
MfG JackBlack