Hallo zusammen.
Ich bin ein Neuling im DSP-Bereich (nicht beruflich, rein privat) und
versuche gerade den Durchblich bei den ganzen Transformationen von Zeit
in Spektrum (Frequenz) und zurück zu bekommen.
Da gibt es ja die Laplace und z-Transformation, ebenso die Fourier mit
den Inversen. Letztere, also die DFT oder FFT bzw. IFFT scheint ja (ist
es wirklich so?) meist genutzte Transformation auf einem Rechenwerk
(CPU, DSP) zu sein. In den Büchern der Nachrichtentechnik geht ohne
FFT/IFFT ja gar nichts, verständlich, aber ich suche auch nach
Anwendungen der z- bzw. Laplace auf DSPs. Warum hat die FFT hier so
einen scheinbaren Vorsprung gegenüber den anderen Transformationen? Ist
diese rechentechnisch leichter zu implementieren?
Entschuldigt diese - für die Profis sicher dumm anmutende Frage -, aber
wir fingen ja alle mal klein an und ich versuche die (scheinbare?)
Dominanz der FFT in praktischen Anwendungen zu verstehen.
Vielen Dank für Eure Antworten,
Markus
Die Z-Transformation ist die diskrete Laplace-Transformation.
Sie spielt eine gewisse Rolle bei der Charakterisierung von
Impulsantworten von z.B. Filtern oder Übertragungskanälen.
Die Substitution z -> exp(j omega/Omega) in der Impulsantwort liefert
den Frequenzgang entlang des Einheitskreises.
DFT bzw. IDFT ist das diskrete Analogon der Fouriertransformation.
Sie liefert zu einem diskreten Zeitsignal die spektrale
Leistungsdichteverteilung.
Es gibt nicht die FFT, sondern verschiedene Implementierungen der DFT
bzw. IDFT, die gegenüber der formellen DFT deutlich performanter sind.
FFT hat Vorteile gegenüber der Faltung mit der Impulsantwort: Signal
FFT-en, mit Übertragungsfreqeuenzgang des Filters multiplizieren, zurück
IFFT-en ist deutlich performanter, als im Zeitbereich das Signal mit
Impulsantwort zu falten. Stichwort: "Fast Convolution".
Alles in Allem ein schönes Thema, aber leider sehr mathematik-lastig.
Markus schrieb:> Letztere, also die DFT oder FFT bzw. IFFT scheint ja (ist> es wirklich so?) meist genutzte Transformation auf einem Rechenwerk> (CPU, DSP) zu sein.
Ich kenne keine Statistik die zeigt welche Transformation am häufigsten
verwendet wird.
Aber was glaubst du zum Beispiel wie oft dir schon eine diskrete
Kosinustransformation (DCT) über den Weg gelaufen ist ohne das du es
gemerkt hast? Die diversen DCT-Varianten sind in fast allen Audio- und
Bildkompressionsalgorithmen im Einsatz, wie MP3 und JPEG.
> In den Büchern der Nachrichtentechnik geht ohne> FFT/IFFT ja gar nichts, verständlich, aber ich suche auch nach> Anwendungen der z- bzw. Laplace auf DSPs.
Zum Beispiel wird die Z-Transformation bei FIR und IIR Filter verwendet.
Dann gibt es ein paar Differenzengleichung die sich gut mit der
Z-Transformation rechnen lassen. Da die Mathematiker fleißig waren gibt
es über die Chirp Z-Transformation (CZT) und dem Bluestein-Algorithmus
eine Verbindung zur DFT (die DFT als spezieller Fall der CZT).
> Warum hat die FFT hier so> einen scheinbaren Vorsprung gegenüber den anderen Transformationen? Ist> diese rechentechnisch leichter zu implementieren?
Nützlich und praktisch anwendbar. Die DFT ist vom Aufbau ziemlich
einfach und lässt sich dank der diversen FFT-Algorithmen gut
implementieren. Natürlich verwendet man die.
Vielleicht sollte man aber mal klar sagen dass der normale
Nachrichtentechnik-Ingenieur sich nicht ausdenkt welche Transformation
wann wofür verwendet wird. Das entnimmt er der Fachliteratur.
Mathematiker formulieren die Transformationen, ein paar helle Lichter
finden Anwendungen dafür und fügen sie damit dem Wissensbestand der
Nachrichtentechnik hinzu. Daraus wiederum einwickelt sich in der Praxis
wie man etwas macht dass es funktioniert. Das landet dann in
Lehrbüchern.
Es ist ein ganz wichtiger Punkt in Ingenieurwissenschaften das
weiterzutragen und ausbauen was sich bewährt hat. Im Gegensatz zur
Informatik, wo die einen das mit dem Arsch abreißen was die anderen
gerade aufgebaut haben. Die Informatik versagt furchtbar darin zu
erkennen wann sie einen "Gewinner" haben.
> Entschuldigt diese - für die Profis sicher dumm anmutende Frage -, aber> wir fingen ja alle mal klein an und ich versuche die (scheinbare?)> Dominanz der FFT in praktischen Anwendungen zu verstehen.
Du beantwortest dir deine Frage selber: Man hat viele praktische
Anwendungen gefunden, die DFT ist ein "Gewinner". Also lehrt man sie
folgerichtig als wichtige Grundlage. Was dann wieder dazu führt das die
nächste Ingenieurgeneration sie auch verwendet und mehr Anwendungen
gefunden werden.
Hat man damit immer "die beste" Lösung? Wahrscheinlich nicht. Mir dreht
sich immer der Magen um wenn jemand nach der besten Lösung, dem besten
Produkt etc. fragt. Technische Lösungen sind immer ein Kompromiss. Die
DFT hat sich in vielen Anwendungen als guter Kompromiss bewährt.
Hannes J. schrieb:> Im Gegensatz zur> Informatik, wo die einen das mit dem Arsch abreißen was die anderen> gerade aufgebaut haben. Die Informatik versagt furchtbar darin zu> erkennen wann sie einen "Gewinner" haben.
Hast du ein Beispiel dafür?
Die DFT /FFT kann für gegebene Abtast -Werte (einer als periodisch
angenommenen Zeitfunktion) berechnet werden. Diese Transformation ergibt
die komplexen Fourier -Koeffizienten
Die Laplace -Transformation wird nicht auf Abtast -Werte, sondern für
als Ausdruck gegebene Funktionen angewendet. Damit kann man dann z. B.
Differerential -Gleichungen lösen.
Um diese Funktionen zu verstehen und nachvollziehen zu koennen sollte
man Physik, oder Mathematik studiert haben. Die anderen muessen's
einfach glauben.
Markus schrieb:> Warum hat die FFT hier so> einen scheinbaren Vorsprung gegenüber den anderen Transformationen? Ist> diese rechentechnisch leichter zu implementieren?
Meine persönlichen Erfahrungen:
- Mit FFT habe ich meist bei der Echtzeit-Datenverarbeitung zu tun.
- Mit Laplace hatte ich bisher nur bei der Charakterisierung von
Systemen zu tun, also etwas, was man in aller Ruhe mit Papier und
Bleistift durchführen kann. Das Ergebnis kann z.B. eine
Übertragungsfunktion sein, welche man wiederum in der
Echtzeitdatenverarbeitung verwenden kann, oder z.B.
Stabilitätskriterien, damit man weiß, in welchen Rahmenbedienungen man
das System sicher betreiben kann.
Purzel H. schrieb:> Um diese Funktionen zu verstehen und nachvollziehen zu koennen> sollte man Physik, oder Mathematik studiert haben. Die anderen muessen's> einfach glauben.
Blödsinn. Als E Techniker maße ich mir an, es trotzdem zu verstehen
Laplace und Z-Transformation ermöglichen es elegant Differenzial- bzw.
Differenzengleichungen zu lösen. Insbesondere im Filterdesign und in der
Reglerauslegung zeigen sie ihre Stärke und ermöglichen recht einfach
Stabilitätsbetrachtungen usw. Im Gegensatz zur Fouriertransformation
eignen sie sich das Abkling- bzw. Aufschwingverhalten von Systemen zu
modellieren.
Eine Filterauslegung geschieht klassischerweise offline, im DSP landen
in vielen Fällen nur die vorab berechneten Koeffizienten. Längere
FIR-Filter sind aber von ihrer Rechenkomplextität her sehr aufwendig.
Und hier kommt die diskrete Fouiertransformation (DFT). In der
DFT-Domäne nämlich wird die aufwendige Faltung der Komplexität O(N^2) zu
einer einfachen Multiplikation. Und die DFT lässt sich mittels der FFT
mit einer geringen Komplexität von O(N log N) berechnen. Das ganze nennt
sich schnelle Faltung [1] und ist vermutlich mit Abstand der wichtigste
Grund für ihre ungemein weite Verbreitung der FFT in der praktischen
DSP-Anwendung.
[1] https://de.wikipedia.org/wiki/Schnelle_Faltung
Frager schrieb:> Blödsinn. Als E Techniker maße ich mir an, es trotzdem zu verstehen
Me2. Hatten aber auch mit den Physikern zusammen Mathe ;)
Aber: ich maße mir nicht an, die mathematische Theorie nachvollziehen zu
können. Dafür braucht man Topologie/Gruppentheorie, Distributionen
Theorie, das ganze "Standardzeug" über die Konvergenzsätze in
verschiedenen Räumen und zu Integralen (kA, zu welcher Gruppe das
gehört).
Was aber E-Techniker gut erklären können sind die Zusammenhänge, wie das
Spektrum zu interpretieren ist etc, denn es gibt sehr viele praktische
Anwendungen.
Michael schrieb:> Z-TransformationMichael schrieb:> Reglerauslegung
etwas zusammengekürzt ;)
Kenne ich auch nur aus dem Bereich Reglerauslegung wo die Totzeiten der
Regelschleife ein Thema sind.
Das ganze wird selbst an ein paar FHs so gelehrt, dass man es versteht.
ich sach mal so... laplace begegnet dir maximal wenn du sowas viele
jahre beruflich machst, und FFTs brauchst du, wenn es hoch kommt, für 5%
aller denkbaren audio effekte.
i.e. es gibt viele andere sachen, die man viel häufiger benötigt... die
vielleicht keine transnformationen im mathematischen sinn darstellen,
aber mit diesen gemeinsam haben, dass man dort hin encoded und wieder
decoden kann, als da wären mid/side (sum/difference), symetrierung
(hilbert transform), sowie das aufsplitten in frequenzbänder oder das
erzeugen komplexer signale (also z.b. ein musiksignal, was logisch mit
einer davon abgeleiteten steuerspannung zusammenhängt.
ja, fft ist verhältnismäßg einfach, hat aber den nachteil hoher latenz,
was im echtzeitbetrieb eines prozesses (also bei der üblichen art von
audiosoftware) nicht so lustig ist.
nicht zu vergessen die vectorisierung (signale werden oft in chunks
berechnet) und natürlich die allgegenwärtige formatkonvertierung (also
änderung der kanäle, gewichtung, kompressionsverfahren, sowei änderung
der samplingrate oder bittiefe.)