FB_CTRL_STEP_PID

Der Funktionsbaustein regelt eine digital manipulierte Größe zur Integration von Aktoren. Er basiert auf einem Standard-PID-Regler mit einem zusätzlichen binären Ausgangssignal zusammen mit dem analogen Ausgang und funktioniert ohne ein präzises Positionsrückmeldesignal.
Das zur Berechnung des Reglerausgangs erforderliche Positionsrückmeldesignal wird mithilfe der begrenzenden Werte und der zum Erreichen dieser Grenzen erforderlichen Zeit geschätzt. Der Funktionsbaustein generiert dann Impulse, die zum Antrieb des Aktors als Servomotor erforderlich sind.
Eingänge
VAR_INPUT
fSetpointValue : LREAL;
fActualValue : LREAL;
bLimitSwitchPos : BOOL;
bLimitSwitchNeg : BOOL;
bAutoReset : BOOL;
nSensorType : E_CTRL_STEP_SENSORTYPES;
fDisturbanceValue : REAL;
bManualDigitalPos : BOOL;
bManualDigitalNeg : BOOL;
eMode : E_CTRL_MODE;
END_VAR
Name | Typ | Beschreibung |
---|---|---|
fSetpointValue | LREAL | Sollwert der Regelgröße |
fActualValue | LREAL | Ist-Wert der Regelgröße |
bLimitSwitchPos | BOOL | Endschalter, wird TRUE, wenn der obere Anschlag erreicht wurde. |
bLimitSwitchNeg | BOOL | Endschalter, wird TRUE, wenn der untere Anschlag erreicht wurde. |
bAutoReset | BOOL | Wenn die Variable TRUE ist, stellt sie den Regler auf Anfangsbedingungen zurück. |
nSensorType | E_CTRL_STEP_ | Ermöglicht die Auswahl des korrekten Thermoelementtyps. |
fDisturbance | REAL | Ist-Wert der Störgröße |
bManualDigital | BOOL | Wenn die Variable TRUE ist, stellt den Motor manuell in die positive Richtung |
bManualDigital | BOOL | wenn TRUE, stellt den Motor manuell in die negative Richtung |
eMode | E_CTRL_MODE | Eingabe, die die Betriebsart des Reglers spezifiziert |
Ausgänge
VAR_OUTPUT
bCtrlDigitalPos : BOOL;
bCtrlDigitalNeg : BOOL;
fCtrlAnalog : LREAL;
eState : E_CTRL_STATE;
eErrorId : E_CTRL_ERRORCODES;
bError : BOOL;
bBusy : BOOL;
bMinLimitNeg : BOOL;
bMinLimitPos : BOOL;
bARWActive : BOOL;
END_VAR
Name | Typ | Beschreibung |
---|---|---|
bCtrlDigitalPos | BOOL | Ausgang erforderlich, um den Motor in eine positive Richtung laufen zu lassen. |
bCtrlDigitalNeg | BOOL | Ausgang erforderlich, um den Motor in eine negative Richtung laufen zu lassen. |
fCtrlAnalog | LREAL | Analogausgang des Reglers |
eState | E_CTRL_STATE | Ist-Zustand des Reglers |
eErrorId | E_CTRL_ERRORCODES | Liefert die Fehlernummer, wenn |
bError | BOOL | TRUE, wenn ein Fehler im Funktionsbaustein auftritt. |
bBusy | BOOL | TRUE, wenn der Funktionsbaustein aktiv ist. |
bMinLimitNeg | BOOL | Ein TRUE an diesem Ausgang zeigt an, dass der Regler seinen Mindestgrenzwert erreicht hat. |
bMinLimitPos | BOOL | Ein TRUE an diesem Ausgang zeigt an, dass der Regler seinen Höchstgrenzwert erreicht hat. |
bARWActive | BOOL | Ein TRUE an diesem Ausgang zeigt an, dass der Regler derzeit eingeschränkt ist. |
Ein-/ Ausgänge
VAR_IN_OUT
stCtrlParams : ST_CTRL_STEP_PID_PARAMS;
END_VAR
Name | Typ | Beschreibung |
---|---|---|
stCtrlParams | ST_CTRL_STEP_PID_PARAMS | Parameterstruktur des Reglers |
stCtrlParams
besteht aus den folgenden Elementen:
TYPE ST_CTRL_STEP_PID_PARAMS:
STRUCT
tCtrlCycleTime : TIME;
tTaskCycleTime : TIME;
fKp : REAL;
fTn : REAL;
fTv : REAL;
fTd : REAL;
fTM : REAL;
fDeadBandWidth : REAL;
tMinimumPulseTime : TIME;
tFilterTime : TIME;
fWmax : REAL;
fWmin : REAL;
fYMax : REAL;
fYMin : REAL;
END_STRUCT
END_TYPE
Name | Typ | Beschreibung |
---|---|---|
tCtrlCycleTime | TIME | Zykluszeit, mit der der Regelkreis verarbeitet wird. Diese muss größer oder gleich der TaskCycleTime sein. Der Funktionsbaustein verwendet diese Eingabegröße zur internen Berechnung, ob der Zustand und die Ausgangsgrößen im aktuellen Zyklus aktualisiert wurden. |
tTaskCycleTime | TIME | Zykluszeit, mit der der Funktionsbaustein aufgerufen wird. Wenn der Baustein in jedem Zyklus aufgerufen wird, entspricht diese der Taskzykluszeit der aufrufenden Task. |
fKp | REAL | Reglerverstärkung oder Proportionalverstärkung |
fTn | REAL | Nachstellzeit: Der I-Anteil ist deaktiviert, wenn dieser Parameter null ist. |
fTv | REAL | Vorhaltzeit, der D-Anteil ist deaktiviert, wenn dieser Parameter null ist. |
fTd | REAL | Dämpfungszeit |
fTM | REAL | Digitale Ventilbetätigungszeit in Sekunden |
fDeadBandWidth | REAL | Zulässige Breite der Reglerabweichung |
tMinimumPulse | TIME | Mindestimpulszeit für Impulsgeber |
tFilterTime | TIME | Filterzeit für Ist-Wert-Filter |
fWmax | REAL | Maximalwert des Sollwerts in °C |
fWmin | REAL | Minimalwert des Sollwerts in °C |
fYMax | REAL | Maximalwert des Reglerausgangs |
fYMin | REAL | Minimalwert des Reglerausgangs |