FB_WritePositionCorrection
[Dies ist die vorläufige Dokumentation, Änderungen sind vorbehalten.]
Der Funktionsbaustein FB_WritePositionCorrection schreibt ein Offset (PositionCorrectionValue) auf die Nennposition einer Achse. Abhängig vom Korrekturmodus werden die Daten unmittelbar oder „gefiltert“ auf das zyklische Achsinterface geschrieben.
VAR_INPUT
VAR_INPUT
Enable : BOOL;
PositionCorrectionValue: LREAL;
CorrectionMode : E_PositionCorrectionMode;
Acceleration : LREAL;
CorrectionLenght : LREAL;
END_VAR
Enable: Das kontinuierliche Schreiben von PositionCorrectionValue wird durch eine steigende Flanke an diesem Eingang aktiviert. Er muss TRUE sein, solange neue Korrekturwerte akzeptiert werden sollen.
PositionCorrectionValue: Der Korrekturwert, der auf das zyklische Achsinterface geschrieben werden soll
CorrectionMode: Abhängig von diesem Modus wird der PositionCorrectionValue unmittelbar oder „gefiltert“ geschrieben. Für eine ausführliche Beschreibung siehe E_PosiitonCorrectionMode
Acceleration: Abhängig vom CorrectionMode wird hier die maximale Beschleunigung zur Erreichung 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
CorrectionLength: Wenn der CorrectionMode mit dem PositionCorrectionMode_FullLength übereinstimmt, wird dieser Parameter aktiv. Eine Änderung beim PositonCorrectionValue wird auf dieser Korrekturlänge aufgeteilt
VAR_IN_OUT
VAR_IN_OUT
AxisRefIn : NCTOPLC_AXLESTRUCT;
AxisRefOut : NCTOPLC_AXLESTRUCT;
END_VAR
AxisRefIn : Achsstruktur der NC.
AxisRefOut : Achsstruktur der SPS.
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.
Hinweis:
Um diesen Funktionsbaustein erfolgreich zu nutzen, muss Istpositionskorrektur im System Manager aktiviert werden.
Voraussetzungen
Entwicklungsumgebung | Zielplattform | Einzubindende SPS Bibliotheken |
---|---|---|
ab TwinCAT v2.10 Build 1330 | PC (i386) | TcNc.Lib (Version >= 1.0.42) |