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!
ich muss hier mal eine Frage stellen, die für euch wahrscheinlich ganz einfach zu beantworten ist.
Im Anhang ist ein vi, welches die Amplitudenfrequenz anzeigen soll. Bei einer Frequenz von 100Hz, einer Abtastrate von 1000Hz und Samples von 100 bekomme ich eine ordentliche Darstellung.
Wenn ich nun die Sampleanzahl auf 105 erhöhe, bekomme ich mehrere Frequenzen. Bei Samples 110 passt die Frequenz von 100Hz wieder.
Kann mir das bitte jemand erklären, wie das zu verstehen ist?
Vielen Dank im Voraus.
MfG Hermann Prechtl
Anzeige
05.09.2011, 07:18 (Dieser Beitrag wurde zuletzt bearbeitet: 05.09.2011 07:21 von M@rRy.)
PS: Lad doch mal bitte Bilder von deinem Amplitudengang bei den verschiedenen Samples hoch. Ich glaube das einzige Problem ist hier nich das Verständnis, deshalb ist es wichtig das du besonders den Leck-Effekt (Leakage effect) verstehst, denn der ist dringend zu berücksichtigen wenn das Signal abgetastet werden soll und bekannt ist!
Nur wer neugierig ist, lernt ständig dazu.
Mythos:
Mit LabView lassen sich gut Programme leichter entwickeln
Realität:
Mit LabView lassen sich gut und schlechte Programme leichter enwickeln!
05.09.2011, 09:54 (Dieser Beitrag wurde zuletzt bearbeitet: 05.09.2011 10:10 von Lucki.)
Die von Daniel gennannten Links populärwissenschaftlich erklärt:
Bei der Fouriertranformation wird immer angenommen, daß der Zeitverlauf von t=-Inf..+Inf andauert. Der sichtbare Teil in Deinem Osziloskop wird also vorn und hinten stückweise verlängert. Und jetzt kommts: Wenn in dem Teilstück eine genau ganzzahlige Anzahl von Perioden enthalten ist, dann ergibt sich durch die Fortsetzung links und rechts ein reiner Sinus. Wenn das aber nicht der Fall ist, dann ergibt die Fortsetzung lauter Sinusstücke mit Phasensprüngen dazwischen, und das eben vom Spektrum her kein reiner Sinus.
Die Auswirkung dieser Sprünge auf das Spektrum werden durch "Fenstern" abgemildert, wenngleich nicht beseitigt. Das gelingt um so besser, je mehr Perioden im Oszilloscope-Diag enthalten sind.
Du solltest dann aber die komfortableren Funktionen zur Fourieranalyse verwenden, bei denen die Fensterfunktion gleich mit enthalten ist.
05.09.2011, 19:21 (Dieser Beitrag wurde zuletzt bearbeitet: 05.09.2011 21:17 von jg.)
PS: Lad doch mal bitte Bilder von deinem Amplitudengang bei den verschiedenen Samples hoch. Ich glaube das einzige Problem ist hier nich das Verständnis, deshalb ist es wichtig das du besonders den Leck-Effekt (Leakage effect) verstehst, denn der ist dringend zu berücksichtigen wenn das Signal abgetastet werden soll und bekannt ist!
Hallo Daniel,
danke dir für die Informationen und die interessanten Links dazu. Ich denke es schon einigermaßen verstanden haben. Ich muss das aber alles noch mathematisch verstehen, da muss ich mich morgen nochmal drüber setzen.
Ich hab dir trotzdem nochmal die zwei Beispiele als Worddatei hochgeladen. EDIT jg: Worddateien durch Bilder ersetzt!
DFT 100 Samples
DFT 105 Samples
Danke dir nochmal.
Gruß Hermann Prechtl
(05.09.2011 09:54 )Lucki schrieb: Die von Daniel gennannten Links populärwissenschaftlich erklärt:
Bei der Fouriertranformation wird immer angenommen, daß der Zeitverlauf von t=-Inf..+Inf andauert. Der sichtbare Teil in Deinem Osziloskop wird also vorn und hinten stückweise verlängert. Und jetzt kommts: Wenn in dem Teilstück eine genau ganzzahlige Anzahl von Perioden enthalten ist, dann ergibt sich durch die Fortsetzung links und rechts ein reiner Sinus. Wenn das aber nicht der Fall ist, dann ergibt die Fortsetzung lauter Sinusstücke mit Phasensprüngen dazwischen, und das eben vom Spektrum her kein reiner Sinus.
Die Auswirkung dieser Sprünge auf das Spektrum werden durch "Fenstern" abgemildert, wenngleich nicht beseitigt. Das gelingt um so besser, je mehr Perioden im Oszilloscope-Diag enthalten sind.
Du solltest dann aber die komfortableren Funktionen zur Fourieranalyse verwenden, bei denen die Fensterfunktion gleich mit enthalten ist.
Hallo Lucki,
danke dir für die Erläuterung Daniels Links. Nun weiß ich auch für was das Fenstern gut ist. Ich denke meine Anfrage ist soweit geklärt.
Habt vielen Dank dafür, war mir echt eine große Hilfe.
Werd mir das morgen nochmal näher anschauen um das mathematisch in den Griff zu kriegen. Dann werd ich ggfs. nochmal nachfragen hier.
ich möchte nochmal was ergänzen, weil ich das Gefühl habe das es hier eventuell noch Klärungsbedarf geben könnte. Fenstern ist wichtig, ja! Aber eine Fensterung sorgt nicht und niemals dafür das, weil du eine andere Anzahl von Samples wählst, das Spektrum wieder stimmt. Durch die Erhöhung der Samples (Stützstellen, wie auch immer man es nennen möchte) löst du das Spektrum feiner auf, der Fehler den du durch das nicht mit n*fsig abgetasteten Signals machst bleibt weiterhin bestehen, also die andere Frequenzanteile die du eigentlich in deinem Spektrum nicht erwartet hast, aber durch das feinere auflösen findest du das Extrema und damit die am stärksten vertretene Frequenz am leichtesten wieder. Generell ist es geschickt dann zu Fenstern wenn man sein Signal nicht kennt, das Hanning-Fenster leistet hier eigentlich gute Dienste, oder wenn sich die Frequenz ändert. Die Begründung ist einfach, wenn sich die Frequenz des Signals ändert müsste sich folglich auch die Abtastfrequenz ändern. Wenn diese aber immer gleich ist wird man zwangsläufig immer irgendwie eine Periode nicht ganz mitbekommen (Betonung auf immer!) da eine Abtastfrequenz nur für eine Signalfrequenz gültig ist (ganzzahlige vielfache sind ebenfalls möglich).
Ich packe das mal in ein Beispiel:
Signalfrequenz: 100Hz
Abtastfrequenz 10kHz
neue Signalfrequenz: 500Hz -> 10k / 500 = 20 -> ganzzahliges Vielfaches der eigentliche Signalfrequenz, hier würde die Abtastung so funktionieren und das Spektrum würde wie erwartet aussehen.
neue Signalfrequenz: 520Hz -> 10k / 520 = 19,23 -> kein ganzzahliges Vielfaches. Die "zwanzigste" Periode des eigentlichen Signals bekommen wir nicht ganz mit, da nach 23% der Periodenzeit abgebrochen wird. Da das Signal dann periodisch wiederholt wird (wie Lucki schon so schön erklärt hat :-) ) wird es hier zu einem Sprung im Zeitverlauf kommen. Das Ergebnis ist ein "Fehler" im Spektrum. Je höher hier die Samples um so besser kann das Maximum (das wahre Maximum) abgelesen werden. Sind die Samples hingegen zu gering wird man hier Probleme kriegen weil es ja sein könnte das man die echte Signalfrequenz nicht trifft, die Folge wäre eine fehlende Spektrallinie an der eigentlich erwarteten Stelle im Spektrum. (Hierzu am besten nochmal den Link mit dem Leck-Effekt anschauen, da ist das mit dem Zeitverlauf sehr schön erklärt. Wichtig auch, nicht beim Zeit- und Frequenzbereich durcheinander kommen)
Ich hoffe das hat dir geholfen. Falls du zum Thema Abtastung, Fensterung und Samples / Stützstellen noch Interesse oder Fragen hast schreib mir eine PN dann kann ich dir mal eine Studienarbeit zu kommen lassen.
Gruß
Daniel
PS: Genau das was ich zuletzt erklärt habe tritt auch in deinem zweiten Bild (mit 105 Samples) auf, du triffst die wahre Frequenz nicht, da bei 100Hz keine Frequenzanteile zu erkennen sind. Das könnte für eine weitere Nutzung natürlich unglücklich sein.
Nur wer neugierig ist, lernt ständig dazu.
Mythos:
Mit LabView lassen sich gut Programme leichter entwickeln
Realität:
Mit LabView lassen sich gut und schlechte Programme leichter enwickeln!
Zur ausführlichen Erklärung von Daniel habe ich zwar nichts hinzuzufügen, aber man sollte auch das mal sagen:
FFT funktioniert nur mit Samplezahlen von 2^N, also z. B. mit 1024 Samples. Man sollte diese Bedingung möglichst immer einhalten. Also wenn z.B die Zeitdauer der Messung vorgegeben ist, dann die Samplefrequenz so wählen, daß man 2^N Samples hat.
Allerdings funktionieren die FFT-Funktionen mit jeder Samplezahl, ich weiß aber jetzt nicht, was dann passiert. Wahrscheinlich ist dann die Ausführungszeit ist um ein "vieles Vielfaches" länger. Auf jeden Fall solle man das erst mal zu vermeiden versuchen.