MC_AxCtrlSlowDownOnPressureEx_BkPlcMc

Der Funktionsbaustein bremst eine Achse so ab, dass der Istwert in Actual den in Setpoint vorgegebenen Sollwert nicht überschreitet.
Die Erfassung des Istdrucks bzw. der Istkraft kann in den meisten Fällen mit Bausteinen vom Typ MC_AxRtReadPressureSingle_BkPlcMc oder MC_AxRtReadPressureDiff_BkPlcMc bzw. MC_AxRtReadForceSingle_BkPlcMc oder MC_AxRtReadForceDiff_BkPlcMc erfolgen.
Eingänge
VAR_INPUT
Enable: BOOL:=FALSE;
EnableRelief: BOOL:=FALSE;
Setpoint: LREAL;
Actual: LREAL;
FeedVelocity: LREAL:=0.0;
pParam: POINTER TO ST_TcPctrlParam:=0;
END_VAR
Name | Typ | Beschreibung |
---|---|---|
Enable | BOOL | Durch ein TRUE an diesem Eingang wird der Regler freigegeben. |
EnableRelief | BOOL | Durch ein TRUE an diesem Eingang wird dem Regler erlaubt, bei Bedarf aktiv zurückzuweichen. |
Setpoint | LREAL | Der Sollwert für den zu begrenzenden Istwert. |
Actual | LREAL | Der aktuelle Wert der zu begrenzenden Größe. |
FeedVelocity | LREAL | Wenn sich das Objekt, gegen das der Druck bzw. die Kraft ausgeübt wird, bewegt, kann dessen Geschwindigkeit hier vorgesteuert werden. |
pParam | POINTER TO ST_TcPctrlParam | Hier kann die Adresse einer Struktur vom Typ ST_TcPctrlParam übergeben werden. Wird dieser Eingang nicht oder mit 0 belegt werden die Regel-Parameter aus den Parametern der Achse verwendet. |
Ein-/Ausgänge
VAR_INOUT
Axis: Axis_Ref_BkPlcMc;
END_VAR
Name | Typ | Beschreibung |
---|---|---|
Axis | Axis_Ref_BkPlcMc | Hier ist die Adresse einer Variablen vom Typ Axis_Ref_BkPlcMc zu übergeben. |
Ausgänge
VAR_OUTPUT
Busy: BOOL;
Active: BOOL;
Error: BOOL;
ErrorID: UDINT;
END_VAR
Name | Typ | Beschreibung |
---|---|---|
Busy | BOOL | Ein TRUE an diesem Ausgang signalisiert, dass der Baustein freigegeben ist. Dies bedeutet nicht unbedingt, dass er aktiv in das Verhalten der Achse eingreift. |
Active | BOOL | Ein TRUE an diesem Ausgang signalisiert, dass der Baustein freigegeben ist und aktiv in das Verhalten der Achse eingreift. |
Error | BOOL | Hier wird das Auftreten eines Fehlers signalisiert. |
ErrorID | UDINT | Hier wird eine codierte Fehlerursache bereitgestellt. |
Verhalten des Bausteins
Durch ein FALSE an Enable oder bei fehlender Reglerfreigabe der Achse wird der Baustein in einen Ruhezustand versetzt. Dann sind Busy, Active und Error := FALSE.
Bei Enable = TRUE wird eine Reihe von Voraussetzungen überprüft.
- Setpoint muss sich erkennbar von 0.0 unterscheiden.
- Die Achse muss weggesteuert betrieben werden.
- Die Achse darf nicht mit externer Sollwertgenerierung betrieben werden.
- Das Produkt aus Setpoint und kP des Reglers darf nicht unter die Schleichgeschwindigkeit der Achse fallen. In diesem Fall wäre die Achse nicht mehr in der Lage, sich sinnvoll zu bewegen.
Ist eine dieser Voraussetzungen nicht erfüllt sind Busy und Active = FALSE und Error = TRUE. Andernfalls ist Busy = TRUE.
Das Vorzeichen von Setpoint entscheidet über die Arbeitsrichtung des Bausteins. Ist er positiv greift er ein, wenn sich Actual dem Sollwert von unten in steigender Richtung nähert. Nur wenn der Baustein eingreift ist Active = TRUE.
Der Baustein ermittelt unter Berücksichtigung der Arbeitsrichtung den Abstand zwischen Sollwert und Istwert und errechnet mit dem kP aus der verwendeten Parameterstruktur die noch zulässige Geschwindigkeit. Übersteigt die Sollgeschwindigkeit diesen Wert wird Active = TRUE und die Geschwindigkeit wird limitiert.
Wenn der Istwert den Sollwert erreicht wird die noch zulässige Geschwindigkeit = 0.0 und die Achse sollte spätestens jetzt zum Stehen kommen. Steigt der Istwert weiter wird nur bei EnableRelief eine entgegengesetzte Bewegung ausgelöst.
In einigen Anwendungen muss eine Kraft oder ein Druck gegen ein sich bewegendes Objekt ausgeübt werden. In diesem Fall kann die Genauigkeit der Regelung verbessert werden, indem der Regler an FeedVelocity eine geeignete Vorsteuerung erhält.
Integration des Bausteins in die Applikation
Ein Baustein dieses Typs muss nach der Istwert- und Istdruck-Erfassung und nach der Stellwert-Generierung aufgerufen werden. Werden Bausteine zur Geschwindigkeit- oder Positionsregelung aufgerufen sind diese ebenfalls vor dem Druckregler-Baustein zu platzieren. Der nach dem Reglerbaustein zu platzierende MC_AxRtFinish_BkPlcMc Baustein berücksichtigt die Reaktion dann automatisch.