FB_CTRL_PTt

FB_CTRL_PTt 1:

Der Funktionsbaustein stellt ein PTt-Übertragungsglied im Wirkungsplan dar.

Übertragungsfunktion:

FB_CTRL_PTt 2:

Der Funktionsbaustein besitzt intern ein Array mit 500 Elementen, mit dem die Eingangswerte verzögert werden. Bei Verwendung der tCtrlCycleTime ergibt sich somit eine maximale Verzögerung von 500 * tCtrlCycleTime. Wenn diese maximale Verzögerung nicht ausreicht, wird intern die Abtastzeit vergrößert, so dass es möglich ist, die geforderte Totzeit zu erreichen. Bei dieser Vorgehensweise ist aber zu beachten, dass sich die zeitlichen Diskretisierungsstufen vergrößern. Wenn intern eine neue Abtastzeit berechnet wird, so wird dies mit einem TRUE an dem Ausgang bSampleRateChanged signalisiert.

VAR_INPUT

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

fIn : Eingangsgröße des PTt-Glieds.

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

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

eMode : Eingang, der die Betriebsart des Bausteins festlegt.

VAR_OUTPUT

VAR_OUTPUT
    fOut         : FLOAT;
    bSampleRateChanged       : BOOL;
    eErrorId         : E_CTRL_ERRORCODES;
    bError       : BOOL;
END_VAR

fOut : Ausgang des PTt-Glieds.

bSampleRateChanged : 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.

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_PTt_PARAMS;
END_VAR

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

TYPE
ST_CTRL_PTt_PARAMS :
STRUCT
    tCtrlCycleTime  : TIME     := T#0ms; (* controller cycle
time [TIME] *)
    tTaskCycleTime  : TIME     := T#0ms; (* task cycle time
[TIME] *)
    fKp         : FLOAT    := 0;     (* proportional gain
*)
    tTt         : TIME     := T#0ms; (* Tt *)
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 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.

fKp : Reglerverstärkung / Übertragungsbeiwert

tTt : Totzeit

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