FB_CTRL_I_WITH_DRIFTCOMPENSATION
Der Funktionsbaustein stellt ein I-Übertragungsglied mit einer Driftkompensation dar.
Wirkungsplan

Eingänge
VAR_INPUT
fIn : FLOAT;
fManSyncValue : FLOAT;
bSync : BOOL;
eMode : E_CTRL_MODE;
bHold : BOOL;
END_VAR
Name | Typ | Beschreibung |
---|---|---|
fIn | FLOAT | Eingang des I-Glieds |
fManSyncValue | FLOAT | Eingang, auf den das I-Glied synchronisiert werden kann, oder dessen Wert im Manual-Mode am Ausgang anliegt. |
bSync | BOOL | Mit einer steigenden Flanke an diesem Eingang wird der Integrator auf den Wert „fManSyncValue“ gesetzt. |
eMode | E_CTRL_MODE | Eingang, der die Betriebsart des Bausteins festlegt. |
bHold | BOOL | Ein TRUE an diesem Eingang hält den Integrator unabhängig von dem Eingang |
Ausgänge
VAR_OUTPUT
fOut : FLOAT;
bARWactive : BOOL;
eState : E_CTRL_STATE;
eErrorId : E_CTRL_ERRORCODES;
bError : BOOL;
END_VAR
Name | Typ | Beschreibung |
---|---|---|
fOut | FLOAT | Ausgang des I-Gliedes |
bARWactive | BOOL | Ein TRUE an diesem Ausgang signalisiert, dass sich der Integrator in der Begrenzung befindet. |
eState | E_CTRL_STATE | State des Funktionsbausteins |
eErrorId | E_CTRL_ERRORCODES | Liefert bei einem gesetzten |
bError | BOOL | Wird TRUE, sobald ein Fehler eintritt. |
Ein-/ Ausgänge
VAR_IN_OUT
stParams : ST_CTRL_I_WITH_DRIFTCOMPENSATION_PARAMS;
END_VAR
Name | Typ | Beschreibung |
---|---|---|
stParams | ST_CTRL_I_ | Parameterstruktur des I-Glieds |
stParams
besteht aus den folgenden Elementen:
TYPE
ST_CTRL_I_WITH_DRIFTCOMPENSATION_PARAMS:
STRUCT
tCtrlCycleTime : TIME := T#0ms;
tTaskCycleTime : TIME := T#0ms;
tTi : TIME := T#0ms;
fOutMaxLimit : FLOAT := 1E38;
fOutMinLimit : FLOAT := -1E38;
fDampingCoefficient : FLOAT := 0.0;
tAveragingTime : TIME := T#0ms;
pWorkArray_ADR : POINTER TO FLOAT := 0;
nWorkArray_SIZEOF : UINT := 0;
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. |
tTi | TIME | Integrationszeit des I-Glieds |
fOutMaxLimit | FLOAT | Oberes Limit, an dem die Integration angehalten wird (ARW-Maßnahme). Das Erreichen dieses Limits wird durch ein TRUE an dem Ausgang |
fOutMinLimit | FLOAT | Unteres Limit, an dem die Integration angehalten wird (ARW-Maßnahme). Das Erreichen dieses Limits wird durch ein TRUE an dem Ausgang |
fDampingCoefficient | FLOAT | Faktor kd im Wirkungsplan |
tAveragingTime | TIME | Zeit, über die das gleitende Mittelwertfilter den Mittelwert bildet. |
pWorkArray_ADR | POINTER TO FLOAT | Adresse eines Array of FLOAT der Größe |
nWorkArray_SIZEOF | UINT | Größe eines Array of FLOAT der Größe |