Ich übergebe in C die rohdaten als int16_t die so direkt vom Sensor kommen. Ich muss das noch normieren mit (RANGE / 32768) damit physikalisch sinnvolle Werte rauskommen
Meine Python FFT dient mir nun als eine Referenz-FFT ( siehe blau ) für meine eigentliche FFT auf einem Mikrocontroller ( siehe rot ). Es fällt auf, dass die FFT im µC ( siehe in rot ) mit ziemlich genau 2.384E-07 skaliert und nicht mit 2/N - wie kann dieser merkwürdige Faktor plausibel ...
Das zweite Signal ist die gemessene konstante Erdbeschleunigung in g mit einem Beschleunigungssensor. Also konstant ca. |1|, die FFT müsste dann ja bei 0Hz auch ~1 liefern, was sie auch macht, allerdings nur ohne den Faktor 2 und dann stimmts bei dem Sinus nicht mehr ( siehe Code )
Um zum Thema Auswertung einer FFT, gibt es da etwas mit dem ich die verschiedenen Peaks finden kann? Stelle mir das recht komplex vor, wenn ich das selbst schreiben müsste
Das Ergebnis sollte ungefähr so aussehen:
Peak 1 bei X Hz mit Y Amplitude Peak 2 bei X Hz mit Y Amplitude Peak 3 bei X Hz mit ...