Hallo, ich habe eine Signal mit einer Abtastfrequenz von 25 kHz gegeben und nun soll das Betragsspektrum im Frequenzbereich zwischen 100 Hz und 1000Hz dargestellt werden. Ich weiß dass man mit der ftt-Matlabfunktion das ganze transformieren kann. Jedoch ist mir unklar wie man das Betragsspektrum in dem Frequenzbereich darstellt. MFG
Die FFT zerlegt das Signal in einzelne Frequenz-"Bins". Für jede dieser Frequenzen erhältst du einen 2-dimensionalen Vektor, dessen Länge du einfach mittels Satz des Pythagoras berechnen kannst.
Hallo, ich möchte die frequenzbins umwandeln in hz(hertz). Ich möchte eine frequenz-achse in hz haben. Da weiß ich nicht wie man das umrechnet.
dsp_noob schrieb: > Ich weiß dass man mit der ftt-Matlabfunktion das ganze transformieren > kann. > Jedoch ist mir unklar wie man das Betragsspektrum in dem Frequenzbereich > darstellt. Wenn sämtliches Grundverständnis für die Mühle fehlt, die du da anschmeißt, könntest du ein Sinussignal bekannter Frequenz messen und dir das Spektrum ansehen. Tip: Die Spektrallinien der FFT sind äquidistant.
Es gibt fertige FFT Funktionen im Netz, meistens gibt man zwei array reins (real und imag anteil) und bekommt zwei arrays zurück (auch real und imag). Du nimmst dein Signal für einen bestimmten Zeitraum auf, z.B. 100 ms und übergibst diese Samples als Block der FFT Funktion als Realanteil. Das Array das du zurück bekommst ist dann dein (gespiegeltes) Spektrum. Je nachdem was du für eine Ssamplingfrequenz hattest und wie lange du aufgenommen hast stehen dann die Werte über die Frequenz an bestimmten Stellen in deinem Array. Deinen index musst du dir dann ausrechnen je nachdem welche Frequenz du betrachten willst, und natürlich sqrt(real^2 + imag^2) nicht vergessen
dsp_noob schrieb: > ich möchte die frequenzbins umwandeln in hz(hertz). > Ich möchte eine frequenz-achse in hz haben. > Da weiß ich nicht wie man das umrechnet. > Du transformierst z.B. 1024 Werte mit einer festen Sampling-Frequenz Sf, das dauert die Zeit T. Die transformierten Werte im Array haben den Frequenzabstand 1/T beginnend bei 0 Hz. Damit kannst du dir deine Frequenzachse ausrechnen. Gerhard
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.