ST_PMA_Harmonics_InitPars

Bausteinspezifische Struktur mit Initialisierungsparametern, die bei der Initialisierung der Bausteine FB_PMA_Harmonics_1Ph und FB_PMA_Harmonics_3Ph ausgewertet wird.

Syntax

Definition:

TYPE ST_PMA_HarmonicAnalysis_InitPars :
STRUCT
    fSampleRate          : LREAL := 1000;    // Sample rate
    fBaseFreq            : LREAL := 50.0;    // Multiple of base frequence is used for band limit definition
    nFFT_Length          : UDINT := 512;     // Length of FFT
    nWindowLength        : UDINT := 400;     // Length of FFT window
    nNumBands            : UDINT := 10;      // Number of bands
    fBandwidth           : LREAL := 4.0;     // Whole bandwidth for each frequency band, min 1.0
    eWindowType          : E_PMA_WindowType := E_PMA_WindowType.HannWindow; // Window  function used
    bTransformToDecibel  : BOOL  := TRUE;    // Transform result to decibel
    fDecibelThreshold    : LREAL := 1.3E-308;// Logarithm threshold for decibel transformation
    bTransformToPercent  : BOOL := FALSE;    // Transform result to percent (1st harmonic=100%)
END_STRUCT
END_TYPE

Parameter

Name

Typ

Parameter

fSampleRate

LREAL

Gibt die Abtastrate (Samples pro Sekunde) des Eingangssignals an.

fBaseFreq

LREAL

Frequenz der ersten Harmonischen.

nFFT_Length

UDINT

Länge der FFT. Sie muss größer als Eins und eine ganzzahlige Potenz von Zwei sein.

nWindowLength

UDINT

Länge des Analysefensters in Samples. Die Länge muss größer als eins und eine gerade Zahl sein.

nNumBands

UDINT

Gibt die Anzahl an Bändern an, für die der RMS berechnet wird.

fBandwidth

LREAL

Gesamte Bandweite der einzelnen RMS-Bänder

eWindowType

E_PMA_WindowType

Definiert die verwendete Fensterfunktion. Ein guter Standardwert ist der Fenstertyp „HannWindow“. Die Fensterung kann durch die Verwendung des Fenstertyps „RectangularWindow“ abgeschaltet werden. Weitere Erläuterungen und die Liste von möglichen Fensterfunktionen finden sich im einleitenden Teil im Abschnitt „Fensterfunktionen“.

bTransformToDecibel

BOOL

Boolescher Wert, der angibt, ob das Ergebnis der FFT in die Dezibel-Skala transformiert werden soll, entsprechend der Transformation x → 20 * log10(x).

fDecibelThreshold

LREAL

Sehr kleiner Fließkommawert größer als Null. Werte, die kleiner als diese Zahl sind, werden vor einer Transformation in die Dezibel-Skala durch diesen Wert ersetzt, da der Logarithmus von Null mathematisch nicht definiert ist. Der kleinste mögliche Wert ist 3.75e-324.

bTransformToPercent

BOOL

Boolescher Wert, der angibt, ob das Ergebnis in Prozent ausgegeben werden soll. Dabei entspricht die erste Harmonische 100%.

ST_PMA_Harmonics_InitPars 1:

Fensterlänge

Der Wert von nWindowLength muss kleiner oder gleich dem Wert von nFFT_Length sein. Die Länge der FFT kann sich an der benötigten Frequenzauflösung orientieren. Typischerweise wird ein Wert von ca. 3/4 der FFT-Länge als Fensterlänge verwendet.

Wenn nFFT_Length größer ist als nWindowLength, wird die Frequenzauflösung der FFT (und damit auch die Länge des Vektors der Rückgabewerte) vergrößert. Die Differenz der Länge wird vor der Fourier-Transformation mit Nullen aufgefüllt. Dies kann sinnvoll sein, um eine höhere Frequenzauflösung zu erreichen oder um, z. B. bei der Berechnung mit Rücktransformation in den Zeitbereich, zirkuläres Aliasing zu vermeiden. Das Ergebnis enthält trotz der höheren Frequenzauflösung allerdings nicht mehr Informationen.