FB_CTRL_ACTUAL_VALUE_FILTER

FB_CTRL_ACTUAL_VALUE_FILTER 1:

Der Funktionsbaustein ermöglicht eine Plausibilitätskontrolle und Filterung einer gemessenen Eingangsgröße.

Verhalten des Ausgangs

FB_CTRL_ACTUAL_VALUE_FILTER 2:

Mit diesem Baustein kann eine Plausibilitätskontrolle einer gemessenen Eingangsgröße vorgenommen werden. Wenn die Differenz zweier aufeinander folgender Abtastwerte (Messwerte) größer als die vorgegebene Schranke fDeltaMax ist, wird der aktuelle Eingangswert für maximal drei Zyklen unterdrückt. Während dieser Zeit wird der Ausgangswert aus den zurückliegenden Eingangswerten extrapoliert. Wenn die vorgegebene Schranke länger als 3 Zyklen überschritten wird, folgt der Ausgang wieder der Eingangsgröße. Das Verhalten des Ausgangs ist in dem obigen Bild dargestellt.

FB_CTRL_ACTUAL_VALUE_FILTER 3: VAR_INPUT

VAR_INPUT
    fIn        : FLOAT;
    fManValue  : FLOAT;
    eMode      : E_CTRL_MODE;
END_VAR

Name

Typ

Beschreibung

fIn

FLOAT

Eingangsgröße des Filters

fManValue

FLOAT

Eingangsgröße, dessen Wert im Manual-Mode ausgegeben wird.

eMode

E_CTRL_MODE

Eingang, der die Betriebsart des Bausteins festlegt.

FB_CTRL_ACTUAL_VALUE_FILTER 4: VAR_OUTPUT

VAR_OUTPUT
    fOut      : FLOAT;
    eState    : E_CTRL_STATE;
    eErrorId  : E_CTRL_ERRORCODES;
    bError    : BOOL;
END_VAR

Name

Typ

Beschreibung

fOut

FLOAT

Ausgang des Funktionsbausteins

eState

E_CTRL_
STATE

State des Funktionsbausteins

eErrorId

E_CTRL_
ERROR
CODES

Liefert bei einem gesetzten bError-Ausgang die Fehlernummer.

bError

BOOL

Wird TRUE, sobald ein Fehler eintritt.

VAR_IN_OUT

VAR_IN_OUT
    stParams    : ST_CTRL_ACTUAL_VALUE_FILTER_PARAMS;
END_VAR

Name

Typ

Beschreibung

stParams

ST_CTRL_ACTUAL_VALUE_FILTER_
PARAMS

Parameterstruktur des Actual-Value-Filter-Glieds

stParams besteht aus den folgenden Elementen:

TYPE
ST_CTRL_ACTUAL_VALUE_FILTER_PARAMS:
STRUCT
    tCtrlCycleTime    : TIME := T#0ms;
    tTaskCycleTime    : TIME := T#0ms;
    fDeltaMax         : FLOAT;
END_STRUCT
END_TYPE

Name

Typ

Beschreibung

tCtrlCycleTime

TIME

Zykluszeit, mit der der Regelkreis bearbeitet wird. Diese muss größer oder gleich der TaskCycleTime sein. Der Funktionsbaustein berechnet mit dieser Eingangsgröße intern, ob die Zustands- und Ausgangsgrößen im aktuellen Zyklus aktualisiert werden müssen.

tTaskCycleTime

TIME

Zykluszeit, mit der der Funktionsbaustein aufgerufen wird. Diese entspricht der Task-Zykluszeit der aufrufenden Task, wenn der Baustein in jedem Zyklus aufgerufen wird.

fDeltaMax

FLOAT

Maximale Differenz zweier aufeinander folgender Eingangswerte. Siehe Beschreibung oben.