MC_PositionCorrectionLimiter

MC_PositionCorrectionLimiter 1:

Der Funktionsbaustein MC_PositionCorrectionLimiter schreibt einen Korrekturwert (PositionCorrectionValue) auf die Istposition einer Achse. Abhängig vom Korrekturmodus werden die Daten entweder unmittelbar oder gefiltert in die Achse eingespeist.

VAR_INPUT


VAR_INPUT
Enable                  : BOOL;
PositionCorrectionValue : LREAL;
CorrectionMode          : E_AxisPositionCorrectionMode;
Acceleration            : LREAL;
CorrectionLenght        : LREAL;
END_VAR

Enable

Das kontinuierliche Schreiben des PositionCorrectionValue wird durch diesen Eingang aktiviert. Er muss TRUE sein, solange neue Korrekturwerte akzeptiert werden sollen.

PositionCorrectionValue

Der Korrekturwert, der zum Istwert der Achse addiert werden soll.

CorrectionMode

Abhängig von diesem Modus wird der PositionCorrectionValue entweder unmittelbar oder gefiltert geschrieben. Für eine ausführliche Beschreibung siehe E_AxisPositionCorrectionMode.

Acceleration

Abhängig vom CorrectionMode wird hier die maximale Beschleunigung zum Erreichen des neuen Korrekturwerts vorgegeben. Bei PositionCorrectionMode_Fast hat dieser Wert einen unmittelbaren Einfluss auf das Positionsdelta per PLC-Tick.
Max. zulässiger Korrekturwert Positionsdelta = Beschleunigung * (SPS-Zykluszeit)^2.
Falls Acceleration gleich 0.0 parametriert wird, wird die Positionskorrektur nicht begrenzt.

CorrectionLength

Wenn der CorrectionMode mit PositionCorrectionMode_FullLength übereinstimmt, wird dieser Parameter aktiv. Eine Änderung beim PositonCorrectionValue wird auf dieser Korrekturlänge aufgeteilt.

VAR_IN_OUT


VAR_IN_OUT
Axis    : AXIS_REF;
END_VAR

Axis

Achsdatenstruktur AXIS_REF

VAR_OUTPUT


VAR_OUTPUT
Busy      : LREAL;
Error    : BOOL;
ErrorId  : UDINT;
Limiting : BOOL;
ND_VAR

Busy

Wird TRUE, sobald der Funktionsbaustein aktiv ist und FALSE, wenn er in den ursprünglichen Zustand zurückgekehrt.

Error

Wird TRUE, sobald ein Fehler auftritt.

ErrorId

Wenn der Fehlerausgang gesetzt ist, liefert dieser Parameter die Fehlernummer.

Limiting

Wird TRUE, wenn der geforderte PositionCorrectionValue noch nicht vollständig akzeptiert ist.

MC_PositionCorrectionLimiter 2:

Um diesen Funktionsbaustein erfolgreich zu nutzen, muss der Parameter Positionskorrektur im System Manager aktiviert werden.