Die Funktion „order_fft“ berechnet das Ordnungs-Spektrum eines Signals bezüglich einer Referenz-Frequenz.


Ein mit der Funktion „order_fft“ berechnetes Ordnungs-Spektrum ist ähnlich wie ein mit der Funktion „fft“ berechnetes Frequenz-Spektrum, allerdings ist die X-Achse anders skaliert. Während die X-Achse bei „fft“ in Hertz („Hz“) skaliert ist, ist die X-Achse bei „order_fft“ auf Ordnung bzw. Order („Ord“) bezüglich der Referenz-Frequenz, bzw. auf das Verhältnis zur Referenz-Frequenz, skaliert.


Ein Signal-Anteil bei der Referenz-Frequenz erscheint dabei bei Ordnung 1, ein Signal-Anteil beim doppelten der Referenz-Frequenz erscheint bei Ordnung 2, usw.


Dazu im nachfolgenden Bild ein Beispiel eines Signals mit einer Grundfrequenz von 100 Hz (obere Grafik) mit Oberwellen bei 300, 500, 700, usw. Hz (mittlere Grafik), was der 3-fachen, 5-fachen, 7-fachen, usw. Frequenz der Grundwelle entspricht. Die Frequenz-Anteile bei 100, 300, 500, 700 usw. Hz erscheinen im Ordnungs-Spektrum (untere Grafik) dann als Ordnung 1, 3, 5, 7, usw.




Für die Berechnung des Ordnungs-Spektrums muss die Grundfrequenz bekannt sein. Gegenüber einem Frequenz-Spektrum liegt der wesentliche Unterschied in dem Verhalten bei sich ändernder Grundfrequenz. Beim Frequenz-Spektrum wandern die Linien der Vielfachen der Grundfrequenz mit der sich ändernden Grund­frequenz mit, während die Vielfachen der Grundfrequenz beim Ordnungs-Spektrum unabhängig von der Grundfrequenz fest stehen bleiben.


Das Ordnungs-Spektrum findet Anwendung insbesondere bei drehenden Maschinen, um ein von der Drehgeschwindigkeit unabhängiges Bild zu erhalten.


Intern berechnet die Funktion „order_fft“ zunächst ein Frequenz-Spektrum wie bei „fft“, rechnet dieses dann aber auf Ordnungen, also auf Vielfache der angegebenen Grundfrequenz um.


Die Berechnung des Ordnungs-Spektrums erfolgt mit der Funktion ‚order_fft‘, die zwei bis vier Parameter haben kann, so dass der Aufruf dann wie in einer der drei nachfolgenden Zeilen aussieht:


       order_fft ( data, freq )

       order_fft ( data, freq, max_ord )

       order_fft ( data, freq, max_ord, res )


Dabei ist für den Parameter ‚data‘ der Name des Eingangs-Signals einzusetzen.


Für den Parameter ‚freq‘ ist eine Variable einzusetzen, die die Grundfrequenz in Hz enthält. Diese kann z. B. aus einem Drehzahlmesser stammen, der zusätzlich zu den Messwerten in ‚data‘ bemessen wird. Der Wert von ‚freq‘ darf sich im Laufe einer Messung ändern.


Für den Parameter ‚max_ord‘ ist eine Variable oder Zahl einzusetzen, die die maximale Ordnung enthält, die berechnet werden soll. In obigem Beispiel ist dies der Wert 10. Dieser Parameter kann während einer laufenden Messung nicht verändert werden.

Fehlt der Parameter ‚max_ord‘, so wird als Default-Wert max_ord = 10 angenommen.


Für den Parameter ‚res‘ ist eine Variable oder Zahl einzusetzen, die Auflösung, also die Anzahl Schritte pro Ordnung enthält, die in dem berechneten Ordnungs-Spektrum enthalten sein sollen. In obigem Beispiel ist dies der Wert 100. Dieser Parameter kann während einer laufenden Messung nicht verändert werden.

Fehlt der Parameter ‚res‘, so wird als Default-Wert res = 20 angenommen.


Für die Parameter ‚max_ord‘ und ‚res‘ gibt es die Einschränkung, dass  max_ord * res nicht größer als die Hälfte der Blockgröße von ‚data‘ sein darf.


Der Parameter ‚freq‘ muss immer im Bereich zwischen Null und der Hälfte der Abtastrate bleiben. Damit Anteile bis zur Ordnung ‚max_ord‘ noch dargestellt werden können, sollte auch der Wert max_ord * freq unterhalb der Hälfte der Abtastrate bleiben.


In der Praxis können diese Einschränkungen durch geeignete Wahl von Abtastrate und Blockgröße der Messung eingehalten werden.


Hinweis: Anteile des Frequenz-Spektrums können für das Ordnungs-Spektrum je nach Lage der Dinge aufgeteilt oder zusammengefasst werden. Dadurch kann die Höhe der Amplituden im Ordnungs-Spektrum von der im Frequenz-Spektrum abweichen.