LabVIEWForum.de
Im Zeitbereich Fenstern - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein)
+---- Forum: Grafik & Sound (/Forum-Grafik-Sound)
+---- Thema: Im Zeitbereich Fenstern (/Thread-Im-Zeitbereich-Fenstern)



Im Zeitbereich Fenstern - Olombo - 03.05.2014 22:19

Hallo Zusammen,

leider sehr lange wenig mit LabView gemacht, aber nun endlich ein sinnvolles (Privat-)Projekt gefunden zum spielen, lernen und üben.

Ich möchte im Prinzip ein kleines Audio-Messsystem aufbauen. Mit dem Sound&Vibration Express VIs bekomme ich auch meinen Sinus-Sweep generiert und das Spektrum bzgl. Gain und Phasendifferenz (zur Simulation generiere ich 2 Sweeps und spiel mit Filtern, Phasen etc) auswerten klappt auch. Später dann eben über Soundinterface ausgeben und aufnehmen. Da ich einkanalig messen will muss später entsprechend die Signallaufzeit noch beachtet werden bzgl. relativer Phasenmessung, aber eine Baustelle nach der anderen ;-)

Mein aktuelles (verständniß-?)problem: In einem Raum habe ich Reflexionen; diese Möchte ich nicht mit messen. Also will ich wenn der Sweep nun Beispielsweise gerade 100Hz ausgibt sämtliche Anteile dieser Frequenz nur für x Millisekunden (oder samples) beachten, damit nach der FFT der Gesamtgain einer jeweiligen Frequenz durch Reflexionen nicht erhöht wird (negativer Einfluss auf Phase mal ganz außen vor gelassen).

Wie gehe ich das an? Ich dachte ja an Fenstern, aber das kann ich nur für das gesamte Spektrum.

Suche habe ich nicht wirklich was gefunden und bei den Beispiel VIs auch nicht; ich vermute die Antwort ist recht easy und ich stehe einfach auf dem Schlauch...

Danke!
Ron


RE: Im Zeitbereich Fenstern - Lucki - 04.05.2014 16:43

Wie Du ganz richtig vermutest, ist die Antwort easy: Es geht so nicht. Man kann nicht mit irgendwelchen Phasen-Trixereien die Refexionen ausschalten. Aber anders geht es, und es gibt Geräte für elekroakustische Messungen, die auf diesen Prinzip beruhen: Der Sender sendet nur einen scharfen Impuls, und die Messzeit ist so bemessen, dasss nur der Direktschlall am Empfänger gemessen wird, nicht aber der später eintreffende reflektierte Schall. Das klappt aber leider nur bei höheren Frequenzen. Man braucht ja als Messzeit mindestens ein volle Periode der tiefsten zu messenden Frequenz. Bei 50Hz wären das 20ms, in Weg umgerechnet 6m. Da müßte der Raum schon sehr groß sein, damit in der Messzeit keine Refexionen ankommen.


RE: Im Zeitbereich Fenstern - Olombo - 04.05.2014 17:44

Hi,

also mit "geht nicht" kann ich mich hier nicht abfinden ;-)

Wenn ich einen Sweep aussende, dann ist es ja ähnlich einem "scharfem Impuls" für jede einzelfrequenz. Und ich weis, das z.B. ARTA (akustik-Messproggi) es macht (hab ich hier, kann ich mit rum spielen).

Wie wäre es denn, wenn ich einen entsprechend steilen Bandpass rund um meine "aktuelle" Frequenz des Sweep lege und den Bandpass mitlaufen lasse? Durch Breite des Bandpasses kann ich die zeitliche Fensterung (eben weil er mitgezogen wird) anpassen.

Grüße
Ron


RE: Im Zeitbereich Fenstern - GerdW - 04.05.2014 17:51

Hallo,

um Ludwigs Antwort noch etwas zu erweitern:
Es gibt auch Messgeräte, die eben diese Echos gezielt zur Messung verwenden (Stichwort z.B. CSAM)!
Hier geht es darum, das aufgenommene Signal (mit beliebig vielen Echos) zeitlich zu fenstern, um darüber nur bestimmte Bereiche des Messobjekts zu untersuchen.

Wikipedia gibt da gute Erläuterungen zum Messprinzip, der Hersteller solcher Geräte erläutert es auch. Wichtig dabei: mit einem scharfen Impuls arbeiten, dann alle Echos messen und zeitlich fenstern…


RE: Im Zeitbereich Fenstern - Olombo - 04.05.2014 18:37

Hi,

wäre das nicht meine Lösung?

http://zone.ni.com/reference/en-XX/help/372416A-01/svtconcepts/perform_stft_time/

Abhängig von der Samplerate kann ich ja entsprechend kurze Blöcke rein geben?

Grüße
Ron


RE: Im Zeitbereich Fenstern - GerdW - 05.05.2014 07:57

Hallo Olombo,

dieses Toolkit habe ich nicht (installiert) und auch keine Erfahrung damit…


RE: Im Zeitbereich Fenstern - Olombo - 05.05.2014 20:04

Hi,

ich glaub ich weis wie ich es am geschicktesten mache: Messung und Auswertung trennen. Wenn ich die Messdaten habe, kann ich schauen wo das erste mal eine Frequenz auftritt (entweder durch Messung gesamtlaufzeit oder Blockweise FFT). Ab diesem Zeitpunkt weis ich, dass ich nur x samples nutzen darf vor der ersten reflexion. Also nur diese Werte benutzen; Amplitude für die Frequenz bestimmen und einzeln abspeichern. So das Ganze durch gehen. Bei gängigen Räumen kann man hier ca. 3ms nutzen; sind bei 48kHz dann somit 144 Werte. Mal sehen ob das für ne anständige, reproduzierbare FFT reicht, andernfalls gehe ich eben auf 96kHz.

Ich lasse euch wissen ob es klappt!

Danke!
Ron


RE: Im Zeitbereich Fenstern - Lucki - 06.05.2014 06:46

(05.05.2014 20:04 )Olombo schrieb:  Bei gängigen Räumen kann man hier ca. 3ms nutzen; sind bei 48kHz dann somit 144 Werte. Mal sehen ob das für ne anständige, reproduzierbare FFT reicht, andernfalls gehe ich eben auf 96kHz.

Ja, da wollen so wir doch gleich mal sehen:

3ms Beobachtungszeit, 48kHz Samplingrate:
Daraus erhält man ein Amplitudenspektrum mit den Werten: 333Hz, 667Hz, 1kHz ... 24kHz (72 Werte)

3ms Beobachtungszeit, 96kHz Samplingrate:
Daraus erhält man ein Amplitudenspektrum mit den Werten: 333Hz, 667Hz, 1kHz ... 48kHz (144 Werte).

Also so richtig scheint Deine Idee, mit ein paar Rechentricks bei elekroakustischen Messungen einen schalltoten Raum einzusparen, noch nicht zu funktionieren...


RE: Im Zeitbereich Fenstern - Olombo - 06.05.2014 14:05

Hi,

hm...verdammt! Das Argument muss ich wohl gelten lassen ;-)

Dann mal weiter grübeln.... wenn es andere machen muss es ja irgendwie gehen....

Grüße
Ron