FB_CTRL_TuTg

FB_CTRL_TuTg 1:

Der Funktionsbaustein stellt ein TuTg-Übertragungsglied (Totzeit-Verzögerungs-Glied) im Wirkungsplan dar.

Übertragungsfunktion:

FB_CTRL_TuTg 2:

FB_CTRL_TuTg 3:

VAR_INPUT

VAR_INPUT
    fIn         : FLOAT;
    fManSyncValue   : FLOAT;
    bSync       : BOOL;
    eMode       : E_CTRL_MODE;
    bHold       : BOOL;
END_VAR

fIn : Eingangsgröße des TuTg-Glieds.

fManSyncValue : Eingangsgröße, auf die das TuTg-Glied gesetzt werden kann, oder die im Manual-Mode am Ausgang ausgegeben wird.

bSync : Mit einer steigenden Flanke an diesem Eingang wird das TuTg-Glied auf den Wert fManSyncValue gesetzt.

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;
    bSampleRateChanged       : BOOL;
    eState       : E_CTRL_STATE;
    eErrorId         : E_CTRL_ERRORCODES;
    bError       : BOOL;
END_VAR

fOut : Ausgang des TuTg-Glieds.

bSmpleRateChanged : Ausgang der anzeigt, ob der Baustein intern die Abtastrate reduziert hat, da das Array zur Verzögerung des Eingangssignals sonst nicht genügend Platz bietet.

eState : State des Funktionsbausteins.

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

bError : Wird TRUE, sobald ein Fehler eintritt.

VAR_IN_OUT

VAR_IN_OUT
    stParams        : ST_CTRL_TuTg_PARAMS;
END_VAR

stParams : Parameterstruktur des TuTg-Glieds. Diese besteht aus den folgenden Elementen:

TYPE
ST_CTRL_TuTg_PARAMS :
STRUCT
    tCtrlCycleTime  : TIME     := T#0ms; (* controller cycle
time [TIME] *)
    tTaskCycleTime  : TIME     := T#0ms; (* task cycle time
[TIME] *)
    fKp         : FLOAT    := 0;     (* proportional gain
*)
    tTu         : TIME     := T#0ms; (* dead time *)
    tTg         : TIME     := T#0ms; (* delay time
*)END_STRUCT
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 in 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.

fKp : Reglerverstärkung / Übertragungsbeiwert

tTu : Totzeit

tTg : Zeitkonstante

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