LabVIEWForum.de
Erfassung von Mikrofondaten mit NI-DAQmx wie VI erstellen? - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein)
+---- Forum: Datenerfassung (DAQ) (/Forum-Datenerfassung-DAQ)
+---- Thema: Erfassung von Mikrofondaten mit NI-DAQmx wie VI erstellen? (/Thread-Erfassung-von-Mikrofondaten-mit-NI-DAQmx-wie-VI-erstellen)

Seiten: 1 2 3 4


RE: Erfassung von Mikrofondaten mit NI-DAQmx wie VI erstellen? - GerdW - 23.10.2012 10:04

Hallo dut,

hast du dir mal mein Bild Snippet oben angeschaut?
Der Teil:
Code:
if (current_measure == 20-1) {
current_measure = 0;
} else{
current_measure++;
wird durch ein i MOD 20 ersetzt.
Jetzt musst du nur das Schieberegister mit einem 2D-Array (Größe 20,20000) initialisieren und statt BuildArray nun ReplaceArraySubset verwenden. Fertig!

So sieht das als Bild aus:
[attachment=41961]


RE: Erfassung von Mikrofondaten mit NI-DAQmx wie VI erstellen? - dut42 - 23.10.2012 13:36

Ok ich hab jetzt schon einige Zeit versucht das zum Laufen zu kriegen nun erstmal so, wie auf dem "Snippet"!

Allerdings bleibt das Ausgangs-Array immer mit "0"en gefüllt und der Labview-Speicher läuft voll!???

In Array2 also Ausgang des Devices stehen aber die Messdaten an!


RE: Erfassung von Mikrofondaten mit NI-DAQmx wie VI erstellen? - dut42 - 23.10.2012 14:36

Also bei Anschluss eines einfachen 1x20000 Array in den Eingang Array an den Eingang des Element "in Array einfügen" wird der Inhalt dieses Arrays in das Gesamt-Array hinzugefügt.
Was kann mit den Daten aus dem DAQ falsch sein?


RE: Erfassung von Mikrofondaten mit NI-DAQmx wie VI erstellen? - GerdW - 23.10.2012 15:06

Hallo dut,

1) Du fügst ein Array of DBL in ein Array of INT ein. Das geht selbst in C meistens schief...
Wenn deine Messdaten als DBL vorliegen, solltest du dein Datenarray auch mit DBL initialisieren. Hatte ich auch so gezeigt!!!

2) 11. Gebot bei Arrayverwendung: Du sollst nicht einfügen, sondern ReplaceArraySubset nehmen!!! Smile
Hatte ich sowohl gezeigt als auch geschrieben!!!


RE: Erfassung von Mikrofondaten mit NI-DAQmx wie VI erstellen? - dut42 - 23.10.2012 15:26

sorry war zu blöd gleich replace array subset zu finden (heißt hier "Teil-Array ersetzen) so jetzt tritt zumindest der Fehler mit dem vollen LabView-Speicher nicht mehr auf!

Leider schreibt der das Array trotzdem noch nicht voll, sondern nur wenn ich direkt ein "Test-Array" erstelle und einfüge aber das mit den DAQ-Daten geht noch immer nicht es bleiben nur die initialisierten 0en stehen?


RE: Erfassung von Mikrofondaten mit NI-DAQmx wie VI erstellen? - GerdW - 23.10.2012 15:31

Hallo dut,

Zitat: war zu blöd gleich replace array subset zu finden (heißt hier "Teil-Array ersetzen)
Die Kontexthilfe zeigt auch die englischen Bezeichnungen an...

Zitat:Leider schreibt der das Array trotzdem noch nicht voll, sondern nur wenn ich direkt ein "Test-Array" erstelle und einfüge aber das mit den DAQ-Daten geht noch immer nicht es bleiben nur die initialisierten 0en stehen?
VI anhängen!?


RE: Erfassung von Mikrofondaten mit NI-DAQmx wie VI erstellen? - dut42 - 23.10.2012 15:36

hi hier mal die VI ich hoffe das hilft!


RE: Erfassung von Mikrofondaten mit NI-DAQmx wie VI erstellen? - GerdW - 23.10.2012 15:36

Hallo dut,

bitte für ältere LV-Version konvertieren, siehe mein Profil...


RE: Erfassung von Mikrofondaten mit NI-DAQmx wie VI erstellen? - dut42 - 23.10.2012 15:43

Ok hier für LV 8.6


RE: Erfassung von Mikrofondaten mit NI-DAQmx wie VI erstellen? - jg - 23.10.2012 17:17

- Dein 2D-Array innerhalb der While-Schleife ist weiterhin ein Arry of Integer.
- Am Anfang vom Thread stand mal, dass du immer 20000 Samples auf einmal aufnehmen willst. Wieso ist dann im DAQ-Assi unter SamplesToRead eine 3 eingetragen, und keine 20000 ?
- Wenn du immer 20k Samples ausliest, dann solltest du dein 2D-Array auf 20x20.000 vordefinieren, nicht 20x200.000 .

Gruß, Jens