STFTSpectrum (FPScript)

21.09.2021

Berechnet ein Zeit-Frequenzspektrum mittels Kurzzeit-Fourier-Transformation (STFT).

Syntax

STFTSpectrum(Signal, [ SpectrumType = SPECTRUM_DBNORM ], [ Window = WIN_HANNING ], [ Adjustment ], [ SegmentLength = 0 ], [ OverlapOrGap = 50 ], [ FFTLength = 0 ], [ dBLimit = 0 ] [ , MaxFrequencies = 0 ])

 

Die Syntax der STFTSpectrum-Funktion besteht aus folgenden Teilen:

Teil

Beschreibung

Signal

Die zu analysierenden Daten. Die Daten müssen eine konstante Abtastrate aufweisen und dürfen keine ungültigen Werte enthalten.

Erlaubte Datenstrukturen sind Datenreihe und Signal. Es sind alle reellen Datentypen erlaubt außer Kalenderzeit und Zeitspanne.

Ungültige Werte sind in diesem Argument nicht zulässig.

Für die X-Komponente gelten zusätzliche Beschränkungen.Die Werte müssen einen konstanten positiven Abstand haben. Ungültige Werte sind in diesem Argument nicht zulässig.

Ist das Argument eine Liste, dann wird die Funktion für jedes Element der Liste ausgeführt und das Ergebnis ist ebenfalls eine Liste.

SpectrumType

Der Typ des zu berechnenden Spektrums.

Das Argument SpectrumType kann folgende Werte haben:

Konstante

Bedeutung

SPECTRUM_AMPLITUDE

Amplitude

SPECTRUM_RMSAMPLITUDE

RMS-Amplitude

SPECTRUM_AMPLITUDE2

Amplitude2

SPECTRUM_DB O

Amplitude in dB (Dezibel)

O Diese Konstante steht nur zur Verfügung, wenn die Option Ordnungsanalyse oder die Option Spektralanalyse lizensiert wurde.

SPECTRUM_DBNORM O

dB (Dezibel) Spitzenwert normiert auf Null

O Diese Konstante steht nur zur Verfügung, wenn die Option Ordnungsanalyse oder die Option Spektralanalyse lizensiert wurde.

SPECTRUM_PSD O

PSD (spektrale Leistungsdichte)

O Diese Konstante steht nur zur Verfügung, wenn die Option Ordnungsanalyse oder die Option Spektralanalyse lizensiert wurde.

SPECTRUM_TISA O

TISA (zeitintegrierte Amplitude2)

O Diese Konstante steht nur zur Verfügung, wenn die Option Ordnungsanalyse oder die Option Spektralanalyse lizensiert wurde.

SPECTRUM_MSA

MSA (gemittelte Amplitude2)

SPECTRUM_SSA O

SSA (summierte Amplitude2)

O Diese Konstante steht nur zur Verfügung, wenn die Option Ordnungsanalyse oder die Option Spektralanalyse lizensiert wurde.

SPECTRUM_VARIANCE O

Leistung, normiert auf Varianz

O Diese Konstante steht nur zur Verfügung, wenn die Option Ordnungsanalyse oder die Option Spektralanalyse lizensiert wurde.

SPECTRUM_MAGNITUDE2 O

Magnitude2

O Diese Konstante steht nur zur Verfügung, wenn die Option Ordnungsanalyse oder die Option Spektralanalyse lizensiert wurde.

SPECTRUM_MAGNITUDE O

Magnitude

O Diese Konstante steht nur zur Verfügung, wenn die Option Ordnungsanalyse oder die Option Spektralanalyse lizensiert wurde.

+ SPECTRUM_NORMDATALENGTH O

Wenn diese Konstante zu einem der obigen Spektrumtypen addiert wird, dann werden die Spektren analog zum Periodogramm auf die Datenlänge statt auf die Segmentlänge normiert.

O Diese Konstante steht nur zur Verfügung, wenn die Option Ordnungsanalyse oder die Option Spektralanalyse lizensiert wurde.

Wenn das Argument nicht angegeben wird, wird es auf den Vorgabewert SPECTRUM_DBNORM gesetzt.

Window

Das anzuwendende feste oder anpassbare Fenster.

Das Argument Window kann folgende Werte haben:

Konstante

Bedeutung

WIN_RECTANGULAR

Rechteck -13 dB (Kein Fenster, Breite=1)

WIN_WELCH

Welch -21 dB (Feste Breite=1,4)

WIN_SINE

Sinus -23 dB (Feste Breite=1,5)

WIN_BISQUARE

Bi-Square oder Connes -28 dB (Feste Breite=1,8)

WIN_BARTLETT

Bartlett -27 dB (Feste Breite=2)

WIN_HANNING

Hanning Max. Rolloff -31 dB (Cosinus, Ordn. 2, Feste Breite=2)

WIN_TUKEYHANN O

Tukey-Hann -37 dB (Feste Breite=2)

O Diese Konstante steht nur zur Verfügung, wenn die Option Ordnungsanalyse oder die Option Spektralanalyse lizensiert wurde.

WIN_BARTLETTMOD O

Mod. Bartlett -39 dB (Feste Breite=2,3)

O Diese Konstante steht nur zur Verfügung, wenn die Option Ordnungsanalyse oder die Option Spektralanalyse lizensiert wurde.

WIN_HAMMING

Hamming Min. Sidelobe -43 dB (Cosinus, Ordn. 2, Feste Breite=2)

WIN_COS3MAXROLLOFF O

C3 Max. Rolloff -47 dB (Cosinus, Ordn. 3, Feste Breite=3)

O Diese Konstante steht nur zur Verfügung, wenn die Option Ordnungsanalyse oder die Option Spektralanalyse lizensiert wurde.

WIN_COS3BLACKMAN

Blackman -58 dB (Cosinus, Ordn. 3, Feste Breite=3)

WIN_COS3BHARRIS62 O

Blackman-Harris -62 dB (Cosinus, Ordn. 3, Feste Breite=3)

O Diese Konstante steht nur zur Verfügung, wenn die Option Ordnungsanalyse oder die Option Spektralanalyse lizensiert wurde.

WIN_COS3NUTALL O

C1 Nutall -64 dB (Cosinus, Ordn. 3, Feste Breite=3)

O Diese Konstante steht nur zur Verfügung, wenn die Option Ordnungsanalyse oder die Option Spektralanalyse lizensiert wurde.

WIN_COS3BLACKMANEXACT O

Blackman Exact -68 dB (Cosinus, Ordn. 3, Feste Breite=3)

O Diese Konstante steht nur zur Verfügung, wenn die Option Ordnungsanalyse oder die Option Spektralanalyse lizensiert wurde.

WIN_COS3BHARRIS68 O

Blackman-Harris -68 dB (Cosinus, Ordn. 3, Feste Breite=3)

O Diese Konstante steht nur zur Verfügung, wenn die Option Ordnungsanalyse oder die Option Spektralanalyse lizensiert wurde.

WIN_COS3MINSIDELOBE O

Nutall -71 dB (Cosinus, Ordn. 3, Feste Breite=3)

O Diese Konstante steht nur zur Verfügung, wenn die Option Ordnungsanalyse oder die Option Spektralanalyse lizensiert wurde.

WIN_COS4MAXROLLOFF O

C5 Max. Rolloff -61 dB (Cosinus, Ordn. 4, Feste Breite=4)

O Diese Konstante steht nur zur Verfügung, wenn die Option Ordnungsanalyse oder die Option Spektralanalyse lizensiert wurde.

WIN_COS4BHARRIS74 O

Blackman-Harris -74 dB (Cosinus, Ordn. 4, Feste Breite=4)

O Diese Konstante steht nur zur Verfügung, wenn die Option Ordnungsanalyse oder die Option Spektralanalyse lizensiert wurde.

WIN_COS4NUTALL83 O

C3 Nutall -83 dB (Cosinus, Ordn. 4, Feste Breite=4)

O Diese Konstante steht nur zur Verfügung, wenn die Option Ordnungsanalyse oder die Option Spektralanalyse lizensiert wurde.

WIN_COS4BHARRIS92 O

Blackman-Harris -92 dB (Cosinus, Ordn. 4, Feste Breite=4)

O Diese Konstante steht nur zur Verfügung, wenn die Option Ordnungsanalyse oder die Option Spektralanalyse lizensiert wurde.

WIN_COS4NUTALL93 O

C1 Nutall -93 dB (Cosinus, Ordn. 4, Feste Breite=4)

O Diese Konstante steht nur zur Verfügung, wenn die Option Ordnungsanalyse oder die Option Spektralanalyse lizensiert wurde.

WIN_COS4NUTALL96 O

Nutall -96 dB (Cosinus, Ordn. 4, Feste Breite=4)

O Diese Konstante steht nur zur Verfügung, wenn die Option Ordnungsanalyse oder die Option Spektralanalyse lizensiert wurde.

WIN_FLATTOP

Flattop -68 dB (Cosinus, Ordn. 5, Feste Breite=5)

WIN_BETA O

Beta, Max. Rolloff (Anpassb. Breite=1,5-6)

O Diese Konstante steht nur zur Verfügung, wenn die Option Ordnungsanalyse oder die Option Spektralanalyse lizensiert wurde.

WIN_COSMAXROLLOFF O

Cosinus Max. Rolloff (Anpassb. Breite=1,5-6)

O Diese Konstante steht nur zur Verfügung, wenn die Option Ordnungsanalyse oder die Option Spektralanalyse lizensiert wurde.

WIN_KAISERBESSEL

Kaiser-Bessel (Feste Breite=3, Anpassb. Breite=1,5-6 bei installierter Option Spektralanalyse)

WIN_VANDERMAAS O

VanderMaas (Anpassb. Breite=1,5-6)

O Diese Konstante steht nur zur Verfügung, wenn die Option Ordnungsanalyse oder die Option Spektralanalyse lizensiert wurde.

WIN_CHEBYSHEV O

Chebyshev (Anpassb. Breite=1,75-5,75)

O Diese Konstante steht nur zur Verfügung, wenn die Option Ordnungsanalyse oder die Option Spektralanalyse lizensiert wurde.

WIN_CHEBYSHEVAPPROX O

Chebyshev Approx. (Anpassb. Breite=2,1-5)

O Diese Konstante steht nur zur Verfügung, wenn die Option Ordnungsanalyse oder die Option Spektralanalyse lizensiert wurde.

WIN_SLEPIAN O

Slepian DPSS-1 (Anpassb. Breite=2-5)

O Diese Konstante steht nur zur Verfügung, wenn die Option Ordnungsanalyse oder die Option Spektralanalyse lizensiert wurde.

WIN_GAUSS O

Gaussian (Anpassb. Breite=2-6)

O Diese Konstante steht nur zur Verfügung, wenn die Option Ordnungsanalyse oder die Option Spektralanalyse lizensiert wurde.

WIN_COSTAPER O

Tapered Cosine (Anpassb. Breite=1-2)

O Diese Konstante steht nur zur Verfügung, wenn die Option Ordnungsanalyse oder die Option Spektralanalyse lizensiert wurde.

+ WIN_NORMALIZEAMPLITUDE

Wenn diese Konstante zu einer der obigen Fensterkonstanten addiert wird, dann erfolgt nach der Fensterbewertung eine Amplitudennormierung. Hierbei auf den Gewinn der verwendeten Fensterfunktion normiert, d. h. die Summe aller Werte der Fensterfunktion, dividiert durch deren Anzahl. Dies kompensiert die durch die Fensterbewertung der Daten erfolgende Dämpfung der Amplituden und eignet sich daher insbesondere zum Ausmessen von Peaks im Spektrum.

+ WIN_NORMALIZEPOWER O

Wenn diese Konstante zu einer der obigen Fensterkonstanten addiert wird, dann erfolgt nach der Fensterbewertung eine Leistungsnormierung. Dadurch wird der Leistungsverlust kompensiert, d. h. es wird das Verhältnis der Summe der Quadrate der Daten vor und nach der Fensterbewertung als Normierungsfaktor verwendet.

O Diese Konstante steht nur zur Verfügung, wenn die Option Ordnungsanalyse oder die Option Spektralanalyse lizensiert wurde.

Wenn das Argument nicht angegeben wird, wird es auf den Vorgabewert WIN_HANNING gesetzt.

Adjustment

Die einseitige Fourier-Breite als Vielfache des Frequenzintervalls. Der gültige Bereich ist fensterabhängig und liegt zwischen 1,0 und 6,0. Die Vorgabe ist 1,5 für ein Tapered Cosine Fenster und 3,0 für alle anderen anpassbaren Fenster.

Erlaubte Datenstrukturen sind Einzelwert. Es sind alle reellen Datentypen erlaubt.

SegmentLength

Die Länge der einzelnen Datensegmente. Der gültige Bereich liegt zwischen 2 und der Datenlänge / 2. Der Vorgabewert 0 setzt die Segmentlänge auf das Doppelte der Quadratwurzel der Datenlänge, aufgerundet auf die nächste Zweierpotenz.

Erlaubte Datenstrukturen sind Einzelwert. Es sind alle ganzzahligen Datentypen erlaubt.

Wenn das Argument nicht angegeben wird, wird es auf den Vorgabewert 0 gesetzt.

OverlapOrGap

Wird dieses Argument als positive Zahl angegeben, dann legt es die prozentuale Überlappung der einzelnen Datensegmente fest. Wird es als negative Zahl angegeben, dann legt deren Betrag die Lücke zwischen den einzelnen Datensegmenten in Abtastpunkten fest.

Erlaubte Datenstrukturen sind Einzelwert. Es sind alle reellen Datentypen erlaubt.

Der Wert muss kleiner gleich 95 sein.

Wenn das Argument nicht angegeben wird, wird es auf den Vorgabewert 50 gesetzt.

FFTLength

Die Länge der einzelnen Fourier-Transformationen. Wenn die angegebene FFT-Länge größer als die Segmentlänge ist, dann werden Nullen angehängt. Der gültige Bereich liegt zwischen Segmentlänge und der maximalen Länge für die FFT. Ein Wert von 0 setzt die FFT-Länge auf die Segmentlänge.

Erlaubte Datenstrukturen sind Einzelwert. Es sind alle ganzzahligen Datentypen erlaubt.

Der Wert muss größer gleich 0 und kleiner gleich 2147483648 sein.

Wenn das Argument nicht angegeben wird, wird es auf den Vorgabewert 0 gesetzt.

dBLimit

Die dB-Basislinie, welche auf das Spektrum angewendet werden soll. Der Bereich liegt zwischen 1,0 dB und 120,0 dB oder 0 für keine Basislinie.

Erlaubte Datenstrukturen sind Einzelwert. Es sind alle reellen Datentypen erlaubt. Das Argument wird auf die Einheit dB transformiert.

Der Wert muss größer gleich 0,0 dB und kleiner gleich 120,0 dB sein.

Wenn das Argument nicht angegeben wird, wird es auf den Vorgabewert 0 gesetzt.

MaxFrequencies

Die maximale Anzahl von Frequenzwerten in der STFT (nur leistungsnormiertes PSD-Spektrum). Der Bereich liegt zwischen 10 und 10000, 0 für keine Begrenzung.

Erlaubte Datenstrukturen sind Einzelwert. Es sind alle reellen Datentypen erlaubt.

Wenn das Argument nicht angegeben wird, wird es auf den Vorgabewert 0 gesetzt.

Anmerkungen

Das Ergebnis hat immer die Datenstruktur Signalreihe mit Z-Komponente.

Die X-Komponente enthält die Frequenz und die Z-Komponente die Anfangszeiten der Segmente. Wenn das Argument Signal eine Datenreihe ist, dann enthält die X-Komponente des Ergebnisses die Nyquist-normierten Frequenzen und die Z-Komponente enthält die Indexwerte der Segmentanfänge.

Nachfolgende Grafik visualisiert die Einstellungen für Segmentlänge, Überlappung und FFT-Länge:

Verfügbarkeit

FlexPro Professional, Developer Suite

Beispiele

TransposeMatrix(STFTSpectrum(Signal, SPECTRUM_DBNORM, WIN_HANNING + WIN_NORMALIZEPOWER, 2, 256, 50, 0, 20, 0))

Berechnet das STFT-Spektrum eines Signals und transponiert anschließend das Ergebnis, so dass die Frequenzen der Z-Komponente zugeordnet sind. Als Spektrumtyp wird dB normiert gewählt. Das verwendete Fenster ist Cos2 Hanning -31 dB W=2. Die FFT-Länge wird auf die Segmentlänge gesetzt, die den Wert 256 hat. Dies ist ein Beispiel aus dem Tutorial Zeit-Frequenz Spektralanalyse.

Siehe auch

CWTSpectrum-Funktion

FFTn-Funktion

FourierSpectrum-Funktion

Periodogram-Funktion

Option Spektralanalyse

Analyseobjekt Zeit-Frequenz Spektralanalyse

Kurzzeit Fourier-Transformation (STFT)

Bewertungsfenster

Tutorial Zeit-Frequenz Spektralanalyse

Artikel teilen oder als Email versenden:

Diese Beiträge könnten Sie ebenfalls interessieren