FB_CTRL_LEAD_LAG

FB_CTRL_LEAD_LAG 1:

Der Funktionsbaustein stellt ein digitales Lead-Lag-Filter dar.

Übertragungsfunktion:

FB_CTRL_LEAD_LAG 2:

Sprungantwort mit T2 > T1:

FB_CTRL_LEAD_LAG 3:

Sprungantwort mit T1 > T2:

FB_CTRL_LEAD_LAG 4:

Die Höhe der Sprungantwort zum Zeitpunkt T=0 ergibt sich zu T1 / T2.

VAR_INPUT

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

fIn : Eingangsgröße des Notch-Filters.

fManSyncValue : Eingangsgröße die im Manual-Mode am Ausgang ausgegeben wird.

bSync : Reserve.

eMode : Eingang, der die Betriebsart des Bausteins festlegt.

bHold : Ein TRUE an diesem Eingang hält den internen Zustand und somit auch den Ausgang unabhängig von der Eingangsgröße konstant auf dem aktuellen Wert.

VAR_OUTPUT

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

fOut : Ausgang des Lead-Lag-Filters.

eState : State des Funktionsbausteins.

eErrorId : Liefert bei einem gesetzten bError-Ausgang die Fehlernummer.p>

bError : Wird TRUE, sobald ein Fehler eintritt.

VAR_IN_OUT

VAR_IN_OUT
    stParams        : ST_CTRL_LEAD_LAG_FILTER_PARAMS;
END_VAR

stParams : Parameterstruktur des Lead-Lag-Filters. Diese besteht aus den folgenden Elementen:

TYPE
ST_CTRL_LEAD_LAG_FILTER_PARAMS:STRUCT    tCtrlCycleTime : TIME :=
T#0ms; (* controller cycle time [TIME] *)    tTaskCycleTime : TIME :=
T#0ms; (* task cycle time [TIME] *)    tT1        : TIME :=
T#0ms; (* T1 *)

    tT2        : TIME := T#0ms; (* T2 *)END_TYPE

tCtrlCycleTime : 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 : Zykluszeit, mit der der Funktionsbaustein aufgerufen wird. Diese entspricht der Task-Zykluszeit der aufrufenden Task, wenn der Baustein in jedem Zyklus aufgerufen wird.

tT1 : T1, siehe G(s)

tT2 : T2, siehe G(s)

Voraussetzungen

Entwicklungsumgebung

Zielplattform

Einzubindende SPS Bibliotheken

TwinCAT v2.8

PC (i386)

TcControllerToolbox.lib

TwinCAT v2.9 ab Build 947

BC

TcControllerToolbox.lb6

TwinCAT v2.9 ab Build 956

BX

TcControllerToolbox.lbx