MC_SetPosition
Mit diesem FB lässt sich die aktuelle Position der Achse auf einen absoluten Wert setzen oder um eine relative Position verschieben. Der Nullpunkt wird im Maschinenmaßsystem festgelegt und der Status "Referenz bekannt" gesetzt.
- Die Achse führt dabei keine Bewegung aus.
- Ein evtl. anstehender Schleppfehler bleibt erhalten.
- Das Setzen der Position ist in jedem Achsenzustand (auch "Disabled" und "ErrorStop") möglich. Somit lässt sich mit Hilfe dieses FB eine "Fliegende Referenzierung" während einer Bewegung realisieren.
Hinweis:
Die Funktion MC_SetPostion auf die Achse, die von Leitwert geführt ist, führt zu Ausgleichsbewegung durch Lagererkennung!
Parallel mit den Funktionen:
- L_MC1P_FollowSetValues
- MC_GearInPos
- Technologiemodule die MasterValues folgen
Wenn die Achse bereits einem Leitwert folgt und parallel dazu die Funktion MC_SetPosition ausgeführt wird, führt dies zur Referenzierung der Istposition. Die Sollposition folgt weiterhin dem Leitwert und wird von MC_SetPosition nicht beeinflusst. Es entsteht ein Schleppfehler, da die Istposition durch MC_SetPosition und die Sollposition durch den Leitwert bestimmt ist.
Die resultierende Situation kann mit einem Sprung in der Sollposition verglichen werden. Der Schleppfehler wird durch die Antriebsregelung ausgeglichen. Die Ausgleichsbewegung wird je nach Einstellung des Antriebsreglers ruckartig ausgeführt und kann im ungünstigsten Fall zu mechanischen Schäden führen.
Wird die Referenz gesetzt, so erfolgt automatisch ein Eintrag in das Logbuch der Steuerung. Ist dies nicht gewünscht, weil die Position z. B. zyklisch verschoben wird, so kann die Generierung des Logbucheintrags durch das Property DisableLogMessages deaktiviert werden.
|
|
|
|
MC_SetPosition |
|
|
|
|
|---|---|---|---|---|---|---|---|
|
AXIS_REF |
- |
Axis |
Done |
- |
BOOL |
||
|
BOOL |
- |
Execute |
Busy |
- |
BOOL |
||
|
LREAL |
- |
Position |
DisableLogMessage |
- |
BOOL |
||
|
BOOL |
- |
Relative |
Error |
- |
BOOL |
||
|
MC_EXECUTION_MODE |
- |
ExecutionMode |
ErrorID |
- |
L_IE1P_Error |
||
|
BOOL |
- |
Restart Positioning |
|||||
|
|
|
|
|
|
|
|
|
Eingänge
|
Name Datentyp |
Info/Einstellmöglichkeiten
|
|
|---|---|---|
|
Axis |
Übergabe der Achsdatenstruktur |
|
|
Execute BOOL |
FALSEäTRUE |
Achsposition setzen. |
|
Position LREAL |
Absolute Position oder Distanz in [Units] |
|
|
Relative BOOL |
FALSE |
Die Achsposition wird auf die absolute Position Position gesetzt. |
|
TRUE |
Die Achsposition wird um die Distanz Position verschoben. |
|
|
ExecutionMode |
Ausführungsmodus:
|
|
|
Restart Positioning BOOL |
FALSE |
Bei einer aktiven Positionierung wird das Bewegungsprofil nicht neu berechnet, sondern es wird die ursprüngliche Distanz zur beauftragten Zielposition verfahren. Dies führt unter Umständen dazu, dass eine absolte Positionierung der Achse nicht auf der beauftragten Position beendet wird (da währenddessen eine Verschiebung des Referenzoffsets stattgefunden hat) |
|
TRUE |
Bei einer aktiven Positionierung wird das Bewegungsprofil automatisch neu berechnet. Dies führt dazu, dass eine absolute Positionierung der Achse auf der beauftragten absoluten Position beendet wird (mit Bezug auf den neuen Nullpunkt) |
|
|
UseSettingsFromHomeMode BOOL |
FALSE |
Zum Setzen der Referenzposition werden die an den Eingängen des FBs anliegenden Werte verwendet. |
|
Ist im HomeMode (Subindex 70) der verbunden Achse der Modus 97 oder 98 ausgewählt, so wird entsprechend des ausgewählten Modus die Referenz aus den in Subindex 84 bzw. 86 eingestellten Werten gesetzt. |
||
Motion-Achsen (AXIS_REF)