MC_PositionCorrectionLimiter

MC_PositionCorrectionLimiter 1:

Mit dem Funktionsbaustein MC_PositionCorrectionLimiter wird ein Korrekturwert (PositionCorrectionValue) auf die Istposition einer Achse geschrieben. Abhängig vom Korrekturmodus werden die Daten entweder unmittelbar oder gefiltert in die Achse eingespeist.

MC_PositionCorrectionLimiter 2:

Um diesen Funktionsbaustein erfolgreich nutzen zu können, muss der Parameter „Positionskorrektur“ im System Manager aktiviert werden. Der Funktionsbaustein sollte nur auf freigegebenen Achsen ausgeführt werden.

MC_PositionCorrectionLimiter 3: Eingänge

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

Name

Typ

Beschreibung

Enable

BOOL

Aktiviert das kontinuierliche Schreiben des Korrekturwerts „PositionCorrectionValue“. Muss TRUE sein, solange neue Korrekturwerte akzeptiert werden sollen.

PositionCorrectionValue

LREAL

Korrekturwert, der zum Istwert der Achse addiert werden soll.

CorrectionMode

E_AxisPositionCorrectionMode

Abhängig von diesem Modus wird der Korrekturwert „PositionCorrectionValue“ entweder unmittelbar oder gefiltert geschrieben.

Acceleration

LREAL

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.

Maximal zulässiger Korrekturwert Positionsdelta = Beschleunigung * (SPS-Zykluszeit)2.

Wenn Acceleration gleich 0.0 parametriert wird, wird die Positionskorrektur nicht begrenzt.

CorrectionLength

LREAL

Wird aktiv, wenn der „CorrectionMode“ mit PositionCorrectionMode_FullLength übereinstimmt. Eine Änderung beim „PositonCorrectionValue“ wird auf dieser Korrekturlänge aufgeteilt.

MC_PositionCorrectionLimiter 4: Ein-/Ausgänge

VAR_IN_OUT
    Axis : AXIS_REF;
END_VAR

Name

Typ

Beschreibung

Axis

AXIS_REF

Achsdatenstruktur, welche eine Achse eindeutig im System adressiert. Sie enthält unter anderem den aktuellen Status der Achse, wie Position, Geschwindigkeit oder Fehlerzustand.

MC_PositionCorrectionLimiter 5: Ausgänge

VAR_OUTPUT
    Busy     :    BOOL;
    Error    :    BOOL;
    ErrorID  :    UDINT;
    Limiting :    BOOL;
END_VAR

Name

Typ

Beschreibung

Busy

BOOL

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

Error

BOOL

TRUE, wenn ein Fehler auftritt.

ErrorID

UDINT

Liefert bei einem gesetzten Error-Ausgang die Fehlernummer.

Limiting

BOOL

TRUE, wenn der geforderte Korrekturwert „PositionCorrectionValue“ noch nicht vollständig akzeptiert ist.

Voraussetzungen

Entwicklungsumgebung

Zielplattform

Einzubindende SPS-Bibliotheken

TwinCAT v3.0.0

PC oder CX (x86 oder x64)

Tc2_MC2