# Programmierung

Die Programmierung orientiert sich an der Syntax für unabhängige Achsen. Beim Aktivieren der Funktion können notwendige Parametereinstellungen festgelegt werden. Die getroffenen Einstellungen bleiben bis Programmende wirksam, anschließend gelten wieder die Standardbelegungen aus der Achsparameterliste. Für nicht angegebene Parameter wird die zuletzt im NC-Programm vorgegebene Einstellung verwendet. Falls der Parameter im NC-Programm bisher noch nicht angegeben wurde, gilt die Standardeinstellung aus der Achsparameterliste.

Beim Aktivieren der Funktion muss für die Achse immer auch eine Verfahrinformation mit angegeben werden. Dies kann eine Bahn- oder unabhängige Achsbewegung sein. Ansonsten generiert die Steuerung die Fehlermeldung ID 21966.

An der Bewegung im Anfahrsatz können beliebig viele Achsen beteiligt sein und gegen einen Festanschlag überwacht werden. Ein Verfahren von Achsen ohne Überwachung ist ebenfalls möglich. Die Anfahrbewegung stoppt, sobald alle gegen Festanschlag zu überwachenden Achsen den Festanschlag detektiert haben. Anschließend verwirft die Steuerung den Restweg des Anfahrsatzes und setzt die Bearbeitung mit dem nächsten NC-Satz fort.

Syntax:
<Achsname> [ FIXED_STOP [ON | OFF] [TORQUE_LIMIT=..] [POS_LAG_LIMIT=..] [CYCLES=..] [WINDOW=..] [START=..] [END=..] [ERR_NOT_DETECTED=..] { \ } ]

<Achsname> | Name der Achse, auf die die Funktion „Fahren auf Festanschlag“ angewendet werden soll.
FIXED_STOP | Kennung für die Funktionalität „Fahren auf Festanschlag“. Muss immer als erstes Schlüsselwort programmiert sein.
ON | Aktivieren der Funktion „Fahren auf Festanschlag“ für diese Achse. Für die Achse muss zusätzlich Verfahrinformation vorgegeben werden.
OFF | Deaktivieren der Funktion „Fahren auf Festanschlag“. Zusätzlich sollte für die Achse eine Bewegung programmiert sein, die vom Festanschlag wegführt.
TORQUE_LIMIT=.. | Vorgabe des Drehmomentgrenzwerts beim Fahren auf den Festanschlag. Die Skalierung wird durch die Parametrierung der Funktion „Fahren auf Festanschlag“ aus den Achsparametern der Achse bestimmt (s. P-AXIS-00724). Normalerweise ist dies in Prozent [%] vom Nennmoment des Antriebs.
Falls im NC-Programm für die Achse kein Drehmomentwert vorgegeben ist, wird der Standardwert aus dem Achsparameter P-AXIS-00729 des Drehmomentgrenzwerts verwendet.

POS_LAG_LIMIT=.. | Grenzwert für den Schleppabstand in [mm, inch, °]. Wird dieser Grenzwert überschritten, wechselt die CNC nach den in CYCLES angegebenen LR-Zyklen in den Zustand „Festanschlag erreicht“. Falls im NC-Programm für die Achse kein Schleppabstandslimit vorgegeben wurde, wird der Standardwert aus dem Achsparameter P-AXIS-00712 verwendet.
CYCLES=.. | Anzahl von Lagereglerzyklen, in denen der Schleppabstand über dem vorgegebenen Limit POS_LAG_LIMIT liegen muss, bevor die Steuerung in den Zustand „Festanschlag erreicht“ wechselt. Falls für die Achse im NC-Programm die Anzahl der Lagereglerzyklen nicht angegeben sind, wird der Standardwert aus dem Achsparameter P-AXIS-00714 verwendet.
WINDOW=.. | Toleranzfenster für Position des Festanschlags in [mm, inch, °]. Nachdem der Festanschlag erreicht ist, prüft die Steuerung, ob die Istposition des Antriebs das vorgegebene Toleranzfenster verlässt, um ein Losbrechen des Anschlags zu detektieren.
Falls im NC-Programm für die Achse kein Toleranzfenster angegeben ist, wird der Standardwert aus dem Achsparameter P-AXIS-00713 verwendet.
Bei einem Wert von 0 ist die Überwachung abgeschaltet.

START=.. | Die Überwachung auf Erreichen des Festanschlags kann über diesen Parameter um einen Prozentwert [%] bezogen auf den Bahnfahrweg verzögert werden, um beim Losfahren der Achse eine falsche Detektion eines Anschlags aufgrund von Reibung etc. zu verhindern.
Falls im NC-Programm dieser Parameter nicht angegeben ist, erfolgt die Überwachung immer von Beginn der Bewegung (START = 0%)

END=.. | Die Überwachung auf Erreichen des Festanschlags kann über diesen Parameter um einen Prozentwert [%] bezogen auf den Bahnfahrweg vorzeitig beendet werden, um beim Bremsen der Achse auf den Zielpunkt eine falsche Detektion eines Anschlags zu verhindern.
Falls dieser Parameter im NC-Programm nicht angegeben ist, erfolgt die Überwachung immer bis zum Zielpunkt des Bewegungssatzes (END = 100%)

ERR_NOT_DETECTED=.. | Mit diesem Parameter kann die Ausgabe der Fehlermeldung ID 50886 bei nicht erfasstem Anschlag in der Anfahrbewegung unterdrückt werden. Dadurch können z.B. mit dem „Fahren auf Festanschlag“ einfache Messvorgänge ausgeführt werden. 0: Fehlermeldung ID 50886 nicht ausgeben.

1: Fehlermeldung ID 50886 ausgeben (Standard).

\ | Trennzeichen (Backslash") für übersichtliche Programmierung des Befehls über mehrere Zeilen

## Achtung

Zusammen mit dem Deaktivieren der Funktion „Fahren auf Festanschlag“ sollte immer auch eine Bewegung für die Achse programmiert werden. Diese muss vom Anschlag wegführen. Ansonsten sind Beschädigungen an der Maschine möglich, falls weiter in Richtung des Anschlags gefahren wird.

## V.RTA-Variablen

Im NC-Programm können Zustandsinformationen über die Funktion „Fahren auf Festanschlag“ einer Achse abgerufen werden. Da es sich bei den V.RTA Variablen um Variablen aus dem Interpolatorkontext handelt, ist beim Zugriff ein Vorlaufstopp notwendig.

V.RTA sind achsspezifische Variablen, daher ist beim Zugriff die Angabe einer Achsinstanz in Form des Achsnamens oder des Achsindizes in der Achsgruppe des NC-Kanals notwendig.

Beispiel für die Y-Achse auf Achsindex 1:

V.RTA.FIXED_STOP.DETECTED.Y

V.RTA.FIXED_STOP.DETECTED[1]

Mit Aktivieren der Funktion „Fahren auf Festanschlag“ werden die Informationen in den V.RTA.FIXED_STOP Variablen zurückgesetzt.

Variablenname | Bedeutung | Datentyp | Einheit | Erlaubter Zugriff
Dekoder | Echtzeit-Zyklus
V.RTA.FIXED_STOP.ACTIVE.X | Fahren auf Festanschlag aktiv | Boolean | - | L | L
V.RTA.FIXED_STOP. DETECTED.X | Fahren auf Festanschlag erkannt | Boolean | - | L | L
V.RTA.FIXED_STOP.ACS.POS.X | Erfasste Anschlagposition im Achskoordinatensystem | SGN64 | [mm, inch] | L | L

## Restweglöschen im Anfahrsatz mit unbeteiligten Bahn-Achsen

Die Funktion „Fahren auf Festanschlag“ kann in beliebig vielen Achsen gleichzeitig aktiv sein. Zusätzlich können im Anfahrsatz weitere Achsen mitbewegt werden, die nicht auf Anschlag fahren.

Falls alle Achsen des Anfahrsatzes den Festanschlag detektiert haben, wird der Restweg des Satzes verworfen. Sind weitere Achsen an der Bewegung beteiligt, die nicht auf Anschlag fahren, fahren diese Achsen ausgehend von der Abbruchbewegung weiter auf den Zielpunkt des nächsten Bewegungssatzes.

## Programmierbeispiel

Verwerfen des Restwegs

N10 G01 X10 Y10 Z0 F1000

N20 G01 X100 Z100 Z[FIXED_STOP ON TORQUE_LIMIT10]

N30 G01 Y100

Abb.: Restweg verwerfen

Eine dem Anfahrsatz nachfolgende Kreisbewegung wird dadurch in eine Linearbewegung konvertiert, die Achsen fahren direkt den Zielpunkt des ursprünglichen Kreissegments an, wie es in nachfolgendem Beispiel gezeigt ist.

## Programmierbeispiel

Kreisbewegung wird zur Linearbewegung

N10 G01 X10 Y10 Z0 F1000

N20 G01 X100 Z100 Z[FIXED_STOP ON TORQUE_LIMIT10]

N30 G03 Y70 J+30

Abb.: Kreisbewegung wird zur Linearbewegung

Achsen, die mit einer unabhängigen Verfahrbewegung (INDP_SYN / INDP_ASYN) gegen den Festanschlag fahren, haben auf die Bahnbewegung anderer Achsen keinen Einfluss.