Prüfen der Zustände der Achskompensation im NC-Programm
V.A.-Variablen
Mit folgenden V.A.-Variablen lässt sich aus dem NC-Programm heraus prüfen, ob eine über den COMP-Befehl programmierbare Kompensation für eine bestimmte Achse initialisiert oder bereits aktiv ist und welchen Wert die Korrektur hat.
Hinweis
Ein lesender Zugriff auf die Variablen mit der Kennzeichnung LFlush bewirkt ein Leeren des NC-Kanals.
Ein Leeren des NC-Kanals kann z.B. bei aktiver Werkzeugradiuskorrektur (G41/G42) zum Fehler ID 20651 führen.
Prüfen auf Initialisierung:
CROSS_COMP_INIT.X | Kreuzkompensation für die Achse initialisiert? Wenn ja, dann 1 | Boolean | 0 , 1 | LFlush |
PLANE_COMP_INIT.X | Flächenkompensation für die Achse initialisiert? Wenn ja, dann 1 | Boolean | 0 , 1 | LFlush |
LEAD_COMP_INIT.X | Spindelsteigungsfehlerkompensation für die Achse? Wenn ja, dann 1 | Boolean | 0 , 1 | LFlush |
TEMP_COMP_INIT.X | Temperaturkompensation für die Achse initialisiert? Wenn ja, dann 1 | Boolean | 0 , 1 | LFlush |
FRICT_COMP_INIT.X | Reibungskompensation für die Achse initialisiert? Wenn ja, dann 1 | Boolean | 0, 1 | LFlush |
CROSSTALK_COMP_INIT.X | Nickkompensation für die Achse initialisiert? Wenn ja, dann 1 | Boolean | 0, 1 | LFlush |
Prüfen auf Aktivierung:
CROSS_COMP_ACTIVE.X | Kreuzkompensation für die Achse aktiv? Wenn ja, dann 1 | Boolean | 0 , 1 | LFlush |
PLANE_COMP_ACTIVE.X | Flächenkompensation für die Achse aktiv? Wenn ja, dann 1 | Boolean | 0 , 1 | LFlush |
LEAD_COMP_ACTIVE.X | Spindelsteigungsfehlerkompensation für die Achse aktiv? Wenn ja, dann 1 | Boolean | 0 , 1 | LFlush |
TEMP_COMP_ACTIVE.X | Temperaturkompensation für die Achse aktiv? Wenn ja, dann 1 | Boolean | 0 , 1 | LFlush |
FRICT_COMP_ACTIVE.X | Reibungskompensation für die Achse aktiv? Wenn ja, dann 1 | Boolean | 0, 1 | LFlush |
CROSSTALK_COMP_ACTIVE.X | Nickkompensation für die Achse aktiv? Wenn ja, dann 1 | Boolean | 0, 1 | LFlush |
BACKLASH_COMP_ACTIVE.X | Losekompensation für die Achse aktiv? Wenn ja, dann 1 | Boolean | 0, 1 | LFlush |
Lesen aktueller Korrekturwerte:
Ab CNC-Version V2.11.2810 sind folgende V.A.-Variablen der aktuellen Korrekturwerte verfügbar. | ||||
LEAD_COMP_CURR.X | Aktueller Korrekturwert der SSFK für die Achse | Real | [mm, inch] | LFlush |
CROSS_COMP_CURR.X | Aktueller Korrekturwert der Kreuzkompensation für die Achse | Real | [mm, inch] | LFlush |
PLANE_COMP_CURR.X | Aktueller Korrekturwert der Flächenkompensation für die Achse | Real | [mm, inch] | LFlush |
TEMP_COMP_CURR.X | Aktueller Korrekturwert der Temperaturkompensation für die Achse | Real | [mm, inch] | LFlush |
FRICT_COMP_CURR.X | Aktueller Korrekturwert der Reibungskompensation für die Achse | Real | [mm, inch] | LFlush |
CROSSTALK_COMP_CURR.X | Aktueller Korrekturwert der Nickkompensation für die Achse | Real | [mm, inch] | LFlush |
BACKLASH_COMP_CURR.X | Aktueller Korrekturwert der Losekompensation für die Achse | Real | [mm, inch] | LFlush |
Programmierbeispiel
Prüfen der Zustände der Achskompensation
N010 G74 X1 Y2 Z3
N020 $IF V.A.CROSS_COMP_INIT.X != TRUE
N030 #MSG ["Cross_Comp for X not init."]
N040 $ENDIF
N050 $IF V.A.TEMP_COMP_INIT.X != TRUE
N060 #MSG ["Temp_Comp for X not init."]
N070 $ENDIF
N080 X [ COMP ON CROSS TEMP ]
N090 $IF V.A.CROSS_COMP_ACTIVE[0] != TRUE
N100 #MSG ["Cross_Comp for X not active"]
N110 $ENDIF
N120 $IF V.A.TEMP_COMP_ACTIVE[0] != TRUE
N130 #MSG ["Temp_Comp for X not active"]
N140 $ENDIF
N150 ...