Ich hab einen Sinus mit Hilfe einer DFT in den Frequenzbereich
überführt.
Dies hab ich mit Matlab realisiert.
Nun ist es in der Realität ja so, dass die Messdauer nicht unendlich ist
sondern nur für eine bestimmte kurze Zeit Tm. Dies bedeutet doch, dass
ich im Zeitberich den abgetasteten Sinus mit einer Fensterfunktion r(t)
multiplizieren muss. Im Frequenzbereich entspricht dies ja einer
Faltung.
Wie kann man dies in Matlab realisieren?
Wenn ich nun zur Fensterung ein Blackman-Fenster benutzen will, wie kann
man dies in Matlab realisieren?
Wenn ich zum Beispiel für die Fensterung das Hanning-Fenster verwenden
möchte, dann müsste man doch das abgetastete Signal x(k) (z.B. von einem
Sinus) mit der Fensterfunktion f(k) multiplizieren.
X1(k)=x(k)f(k)
Das x(k) von einem Sinus:
Im Netz hab ich ein Beispiel gefunden. Sobald ich aber für die
Fensterung ein Rechteck benutze, ist der Amplitudengang viel besser wie
z.B. beim Hanning-Fenster.Das verstehe ich nicht.
Verhält sich genauso. Wie müsste ich mein Matlab Programm "DFT_SINUS.M"
erweitern, damit ich den Effekt einer Fensterung in Frequenzbereich
sehen kann?
Ganz oben hab ich mal testweise geschrieben:
y = a1*sin(2*pi*f1*0.793*t); % y-Vektor
Wenn man dann unten das rectwin durch z.b. hann ersetzt, sieht man ein
schärferes Spektrum. Vor allem in der Figure8 wird das deutlich.
Vielen Dank! Wie müsste ich das MAtlab-Programm "DFT_SINUS.m" abändern,
damit die Fensterung funktioniert und das man z.B. den Unterschied
zwischen einem Rechteck und Hanning Fenster sehen kann?
Zeile 19 durch
y = a1*sin(2*pi*f1*0.793*t); % y-Vektor
oder
y = a1*sin(2*pi*f1*0.092*t); % y-Vektor
ersetzen. Zusätzlich in Zeile 100 halt nen anderen Fenstertyp einsetzen.
Was ich dan nicht so ganz verstehe ist, warum hast du die Frequenz f1 um
den Faktor 0.793 bzw. 0.092 verkleinert?
Nun ist es in der Realität ja so, dass die Messdauer nicht unendlich ist
sondern nur für eine bestimmte kurze Zeit Tm. Dies bedeutet doch, dass
ich im Zeitbereich den abgetasteten Sinus mit einer Fensterfunktion r(t)
multiplizieren muss. Im Frequenzbereich entspricht dies ja einer
Faltung.Bin mir nicht sicher ob dies so korrekt ist.
Stichwort "Leakage". Wenn du ein Rechteckfenster nimmst, kriegst du ja
ein si-Spektrum.
Ist dein Rechteckfenster so lang, dass eine ganzzahlige Anzahl von
Perioden erfasst wird, fallen die Nullstellen vom si genau mit den
periodischen Wiederholungen zusammen. Dann hast du kein Problem und auch
keine Verbesserung durch eine andere Fensterung.
Ist dies nicht der Fall, sind die Nullstellen der si eben nicht mehr auf
den Wiederholungen und du kriegst Nebenlinien. Jetzt hilft es, ein
"sanfteres" Fenster zu nehmen, dessen Welligkeit im Spektrum nicht so
ausgeprägt ist und eher einem Hügel ähnelt. Das sind dann hamming, hann
usw. Dann ist die genaue Lage der periodischen Wiederholungen egal, weil
die Amplitude des Fensterspektrums in diesem Bereich Null ist und dabei
kaum mehr Wellen hat.
Ich hätte die Frequnz auch vergrößern können, habe mir dein file aber
nicht genau angeschaut und wollte keine Probleme mit der Nyquist-Grenze
kriegen. Es kommt vor allem darauf an, dass der Sinus irgendwo mitten in
der Periode "abgehackt" wird, dass man einen Effekt zugunsten der
"sanften" Fenster sieht.
In der Realität ist es ja so, dass die Messdauer nicht unendlich ist
sondern nur für eine bestimmte kurze Zeit Tm. Dies bedeutet doch, dass
ich im Zeitberich den abgetasteten Sinus mit einer Fensterfunktion r(t)
multiplizieren muss, oder?. Im Frequenzbereich entspricht dies ja einer
Faltung.
Was würde es bringen, wenn ich auf f(t) ein Fenster drüberlege?
Also ich meine mit einem Hanning-Fenster multipliziere?
Oder müsste ich das Hanning-Fenster nur über den Sinus legen?
In der Praxis nimmt man einen Satz aus Messwerten fester Länge, z.B.
512. Das entspricht einer Multiplikation des abgetasteten Sinus im
Zeitbereich mit einem Rechteckfenster entsprechender Länge.
Dann kann man sich entscheiden, ob man es dabei belässt
(-->Rechteckfenster) oder ob man zur Vermeidung des Leakage zusätzlich
ein sanftes Fenster draufmultipliziert (-->Hann, Hamming,...) und damit
die Messwerte entsprechend der Fensterfunktion gewichtet.
Es sind also auf den abgetasteten Sinus eine bis zwei Fensterfunktionen
anzuwenden. Das Rechteck ist fix, und gegen Leakage kann man noch mit
einem sanften Fenster angehen.
Ich möchte mit Matlab einen Sinus, der mit einem Rechteckfenster
überlagert ist, im Frequenzbereich darstellen.Wie bekomme ich dies mit
Matlab hin, so das ich ein sin(x)/x Darstellung, wie im Bild vom Anhang
bekomme?