MC_AxUtiSlidingAverage_BkPlcMc (ab V3.0)

MC_AxUtiSlidingAverage_BkPlcMc (ab V3.0) 1:

Der Funktionsbaustein ermittelt einen gleitenden Mittelwert.

MC_AxUtiSlidingAverage_BkPlcMc (ab V3.0) 2: Eingänge

VAR_INPUT
    Input:      LREAL:=0.0;
    MinIdx:     DINT:=0;
    MaxIdx:     DINT:=0;
    pBuffer:    POINTER TO LREAL:=0;
END_VAR

Name

Typ

Beschreibung

Input

LREAL

Der Roh-Wert der zu filternden Größe.

MinIdx

DINT

Der Index des ersten zu verwendenden Elements des Filterpuffers.

MaxIdx

DINT

Der Index des letzten zu verwendenden Elements des Filterpuffers.

pBuffer

POINTER

Die Adresse des ersten Elements des Filterpuffers.

MC_AxUtiSlidingAverage_BkPlcMc (ab V3.0) 3: Ausgänge

VAR_OUTPUT
    Output:     LREAL:=0.0;
END_VAR

Name

Typ

Beschreibung

Output

LREAL

Output: Der gefilterte Wert.

Verhalten des Bausteins

Bei jedem Aufruf überprüft der Baustein die Adresse des Filterpuffers pBuffer und die Indices der zu verwendenden Elemente MinIdx und MaxIdx. Sind die übergebenen Werte erkennbar unsinnig wird Input als Output ausgegeben. Andernfalls wird bei jedem Aufruf Input in den Filterpuffer eingetragen und der Mittelwert über den im Puffer verfügbaren Wertevorrat gebildet und als Output zurückgegeben.

MC_AxUtiSlidingAverage_BkPlcMc (ab V3.0) 4:

Der Wertevorrat für die Mittelwertbildung umfasst (MaxIdx - MinIdx + 1) Werte. Die Filterzeit ergibt sich durch Multiplikation dieser Anzahl mit der Zykluszeit.

MC_AxUtiSlidingAverage_BkPlcMc (ab V3.0) 5:

Das Prinzip der gleitenden Mittelwertbildung führt zu einer Verzögerung in Höhe der halben Filterzeit. Wird die gefilterte Größe in einem Regelkreis verwendet kann die dadurch verursachte frequenzabhängige Phasenverschiebung Einschränkungen bei der Parameterwahl verursachen.

MC_AxUtiSlidingAverage_BkPlcMc (ab V3.0) 6:

Der Baustein hat keine Möglichkeit, die übergebenen Werte von pBuffer, MinIdx und MaxIdx vollständig zu überprüfen. Es ist besonders darauf zu achten, dass diese Werte gefahrlos verwendet werden können. Andernfalls kann es zu nicht vorhersagbarem Verhalten (Überschreiben von Speicher) oder zum Abbrechen des PLC-Betriebs kommen.