INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.


Antwort schreiben 

Kreuzkorrelation



Wenn dein Problem oder deine Frage geklärt worden ist, markiere den Beitrag als "Lösung",
indem du auf den "Lösung" Button rechts unter dem entsprechenden Beitrag klickst. Vielen Dank!

17.05.2017, 08:12
Beitrag #1

Robo Offline
LVF-Grünschnabel
*


Beiträge: 19
Registriert seit: Apr 2017

2014 SP1
2017
DE



Kreuzkorrelation
Guten Morgen,

ich befasse mich zur Zeit mit der Laufzeitmessung eines Signals. Dafür nutze ich die Kreuzkorrelationsfunktion, was jedoch nur bedingt funktioniert.
Bei unregelmäßigen Signalen, die ich mit zwei Mikrofonen erfasse, lässt sich der Zeitversatz ohne Probleme bestimmen.
Verwende ich jetzt jedoch ein periodisches Signal, wie einen Sinus, dann ist das Ergebnis stark frequenzabhängig.
Woran liegt diese Frequenzabhängigkeit und wie könnte man den Sinus anpassen, damit eine korrekte Messung durchgeführt wird?

Grüße,
Robo
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
17.05.2017, 09:28
Beitrag #2

kpa Offline
LVF-Stammgast
***


Beiträge: 385
Registriert seit: Mar 2007

2019
2002
DE

88***
Deutschland
RE: Kreuzkorrelation
Hallo Robo,

bei einem unregelmäßigen Signal kannst Du eine markante Stelle finden (z.B. einen Peak) und herausfinden wann dieser Peak am einen und am anderen Mikrofon ankommt. Bei einem regelmäßigen Signal (z.B. Sinus) kannst Du nicht sagen welcher Teilabschnitt vom Sinus an einem Mikrofon zu welchem am anderen Mikrofon passt. Du müsstest z.B. den Sinus pulsen oder Zufallswerte addieren damit Du Unterschiede der einzelnen Perioden finden kannst.

Grüße

kpa
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
17.05.2017, 11:04 (Dieser Beitrag wurde zuletzt bearbeitet: 17.05.2017 11:36 von Robo.)
Beitrag #3

Robo Offline
LVF-Grünschnabel
*


Beiträge: 19
Registriert seit: Apr 2017

2014 SP1
2017
DE



RE: Kreuzkorrelation
Hallo kpa,

vielen Dank schon einmal. Nachdem ich mich über die Funktionsweise von GPS informiert habe, bin ich auch auf dieses Prinzip der zufälligen Ausgabe gestoßen.
Bei der Umsetzung hat sich bisher ergeben, dass sowohl die Änderung von Amplitude, als auch Lautstärke keinen Effekt zeigt.
Die Änderung der Frequenz hat funktioniert. Dabei bin ich aber auch auf ein Problem gestoßen.
Und zwar gebe ich pro Schleife 5000 Samples weiter an die Audioausgabe. Für diese 5000 Samples wird dann eine zufällige Frequenz gewählt..
Dadurch lässt sich die Zeitmessung wesentlich verbessern, aber es gibt doch diese Intervalle von 5000 Samples, in denen man mittels Kreuzkorrelation kein eindeutiges Ergebnis erzielt.
Wie lässt sich die Frequenz innerhalb der Schleife ändern? Die Samplerate lässt sich ja nicht unbegrenzt herabsetzen.. Das etwas angepasste Beispiel-VI ist angehängt.

Grüße

Robo


Angehängte Datei(en)
14.0 .vi  GenerateSound.vi (Größe: 37,06 KB / Downloads: 377)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
17.05.2017, 14:30
Beitrag #4

kpa Offline
LVF-Stammgast
***


Beiträge: 385
Registriert seit: Mar 2007

2019
2002
DE

88***
Deutschland
RE: Kreuzkorrelation
Hallo Robo,

erzeuge eine Sinuskurve und addiere jedem einzelnen Amplitudenwert einen Zufallswert (ca. 1/10 von der Sinusamplitude). Wenn Du nur alle 5000 Samples eine Änderung (zb Frequenz) dann sind das 44100/5000 (~9) Änderungen/s. Wenn Du jeden Sample-Wert änderst dann hast Du 44100 Änderungen/s.

Grüße

kpa
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
18.05.2017, 09:13
Beitrag #5

Robo Offline
LVF-Grünschnabel
*


Beiträge: 19
Registriert seit: Apr 2017

2014 SP1
2017
DE



RE: Kreuzkorrelation
Hallo,

das Addieren eines Zufallwertes auf jeden einzelnen Wert funktioniert zwar, aber dadurch entsteht einfach ein verrauschter Sinus, den die Mikrofone noch deutlich als solchen wahrnehmen. Die Zeitmessung zeigt dabei keinen Unterschied zum Test mit dem reinen Sinus.
Durch den regelmäßigen Wechsel der Frequenz war das Ergebnis bisher am besten. Aber das muss sich ja noch genauer und besonders frequenzunabhängig lösen lassen.

Grüße

Robo
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
18.05.2017, 13:44
Beitrag #6

Robo Offline
LVF-Grünschnabel
*


Beiträge: 19
Registriert seit: Apr 2017

2014 SP1
2017
DE



RE: Kreuzkorrelation
Bei einem gepulsten Signal sieht das Ergebnis wie folgt aus..
Dabei lässt sich wieder kein eindeutiges Maximum feststellen und die Werte weichen wieder stark von der Realität ab.

Die Werte der Kreuzkorrelation werte ich aus, indem ich mir den Index des Maximums ausgeben lasse. Sollte kein zeitlicher Versatz vorhanden sein, wäre das Maximum genau in der Mitte, daher subtrahiere ich die Anzahl der Samples pro Kanal von dem Index. Was überbleibt sollte dann der zeitliche Versatz sein, welchen ich mit dem gegebenen dt multipliziere.

Grüße


Angehängte Datei(en) Thumbnail(s)
       
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
30
Antwort schreiben 


Gehe zu: