LabVIEWForum.de
20 kHz mit DAXmx in Datei schreiben - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein)
+---- Forum: Datenerfassung (DAQ) (/Forum-Datenerfassung-DAQ)
+---- Thema: 20 kHz mit DAXmx in Datei schreiben (/Thread-20-kHz-mit-DAXmx-in-Datei-schreiben)



20 kHz mit DAXmx in Datei schreiben - fenix - 16.11.2005 18:06

Moinsen

Hab ein kleines Problem. Bin jetzt vom alten DAQ Treiber auf den neuen DAQmx umgestigen und hab da so einige Probleme mit.

Ziel ist es, ein 20 kHz Signal aus der Messkarte zu lesen, jeden Messwert mit der Aufnahmezeit zu vesehen und zwar so lange, bis man auf stopp drückt. Anschließend sollen die ganzen Daten in eine Datei geschrieben werden.

Eigentlich sollte das ja nicht das Prob sein. Eben ein Standartproblem. hab mir auch schon z.B. das Bsp NIexamplesDAQmxVoltageVoltage to File (Binary) angesehen und hab versucht das umzuprogrammieren. Aber das funzt hinten und vorne nicht.
Zum eine weiß ich nicht genau, wie ich die Daten des DAQmx behandeln soll, weil es irgendwie eine Mischung aus Teit und Daten sind. Kann man die irgendwie in ein einzelne Arrays trennen?
Dann schreibt er in die Datei immer nur N Messwerte und fängt dann bei den nächsten in einer neuen Spalte an. Wie krieg ich die untereinander
Dann feht in der Datein die Zeit, und ich kann sie irgendwie nicht hinzufügen.

Wäre schön wenn ihr mir helfen könntet.
Gibt es übrigens irgendwo ein PDF in der die Funktionsweisen der DAQmx Komponenten ein wenig besser beschrieben werden als in der Hilfe?

Fenix


20 kHz mit DAXmx in Datei schreiben - fenix - 25.11.2005 17:23

Moisen

hat mich dann doch ein wenig verwundert das da einfach nichts kam. War die Frage zu einfach???

ich hab mal ein wenig rumgespielt und ein kleines Programm geschrieben um genauere Fragen zu stellen:

1) Wie kann ich das Datei-Schreiben Express VI durch Standart Komponenten ersetzen?
2) Wie kann ich meine Zeit kontinuierlich mitlaufen lassen? Bei jedem Schleifendurchlauf wird meine Zeit wieder auf Null gesetzt.
3) Kann ich die Messdaten und die Zeit trennen. Die sind jetzt ja wahrscheinlich in einem Cluster / Array zusammengefasst.

Fenix


20 kHz mit DAXmx in Datei schreiben - Biks - 27.01.2006 15:27

1.
z.B. Funktionen/Signalverlauf/Datei-I/O(Signalverlauf)/
damit kannst du die signalverläufe speichern und laden.

2.
hm, verstehe ich nicht ganz. eine idee: alleinlaufende time loop, darin Datum-/Zeit-String lesen (aus Zeit & Dialog) mit string-anzeige verknüpfen.

3.
ja, ganz einfach: schau mal in SIGNALVERLAUF

Ich glaube zwar nicht, dass das den Autor der Frage noch interessiert hat, aber vielleicht hilft es ja jemand anderen.


20 kHz mit DAXmx in Datei schreiben - fenix - 13.02.2006 09:42

Moinsen

Da sich ja doch noch einige dieses Thema angeschaut haben, poste ich mal meine Lösung. Sie ist nicht so sonderlich gut gelungen, aber die funktioniert:

Vom DAQ Assistenten (den ich noch unbedingt rausschmeißen muss) habe ich aus dem dynamischen Array die Zeitachse extrahiert (gibts ein VI dafür, das aber nach der Systemzeit arbeitet und nicht nach start der Messung) und habe die allererste Zeit als Referenzzeit von allen anderen abgezogen. Anschließend habe ich das dynamische Array nach Kanälen aufgeteilt und zu statischen umgewandelt. Dann kommt alles in ein Array (also Zeit + Messkanäle) und wird in eine Binär-Datei geschrieben bzw angehängt (Binärdatein sind wesentlich schneller als Spreadsheet. Wenn die Messung beendet ist, öffne ich die B-Datei und schreibe alles in eine Spread-Datei um.

Bei 2 Sekunden Messung enstehen so ca. 150 bis 250 MB Daten

ich hoffe ich konnte euch helfen

Fenix