Programmierung
2.2 G-Befehle
2.2.12
G60 gerichtete Positionierung
G60 wird in ISO-Dialekt-Original zum Kompensieren einer Lose verwendet. In der Sinumerik
wird dies mit der internen Losekompensation erreicht, deshalb gibt es im Siemens-Modus
keine G-Funktion, die G60 im ISO-Dialekt-Original entspricht.
Es ist nicht möglich, G60 durch einen G-Makroaufruf zu ersetzen, da in einem NC-Satz
keine zwei Unterprogrammaufrufe ausgeführt werden können. Da die gerichtete
Positionierung (Lose) vor der Bearbeitung des NC-Satzes herausgefahren werden muss,
würde der Aufruf eines G-Makros am Satzende zu spät erfolgen.
Da G60 als Losekompensation dient und diese Funktion über das axiale Maschinendatum
$MA_BACKLASH[ ] aktiviert werden kann, wird G60 im ISO-Modus überlesen ohne eine
Reaktion auszulösen.
Soll bei der Abarbeitung von Hüllzyklen die Programmierung von G60 berücksichtigt werden,
wird diese Information in der Zyklenvariablen $C_G60_PROG zur Verfügung gestellt. Ist G60
programmiert, wird $C_G60_PROG = 1 gesetzt, mit dem Unterprogrammrücksprung wird
$C_G60_PROG wieder gelöscht. Benötigt man in einem Satz außerdem die Information, ob
auch der Zyklenaufruf programmiert ist, erhält man die Information aus der Zyklenvariablen
$C_G_PROG. Mit den Informationen aus diesen beiden Systemvariablen kann in den
Hüllzyklen eine G60-Funktionalität ergänzt werden. Die Information, ob ein modaler Zyklus
aktiv ist, erhält man auch aus der Systemvariablen $P_MC ($P_MC = 1 -> es ist ein modales
Unterprogramm aktiv).
$C_G60_PROG wird nur dann auf 1 gesetzt, wenn G60 in einem NC-Satz programmiert ist,
so als wäre G60 eine satzweise wirksame G-Funktion.
Beispiel:
N32 G00 X0. Y0. Z0. R0.
N33 G60 X11.8407 Y2.4418
N34 G60 G83 X11.8407 Y2.4418 Z-6.9051 R-5.9 Q0.25F8
N35 G60 X9.3969 Y2.6099
N36 X6.4128 Y2.4511
N37 G60 X4.0368 Y2.3131
N38 G60 X1.3995 Y2.5461
N39 G80
cycle383m.spf
PROG CYCLE383M
....
IF $C_G60_PROG == 1
;G60-Funktionalität
ENDIF
;weiter mit der Hüllzyklenfunktionalität
36
;$C_G60_PROG = 1, $C_G_PROG = 0, $P_MC = 0
;$C_G60_PROG = 1,
;$C_G_PROG = 1, $P_MC = 1
;$C_G60_PROG = 1, $C_G_PROG = 0, $P_MC = 1
;$C_G60_PROG = 0, $C_G_PROG = 0, $P_MC = 1
;$C_G60_PROG = 1, $C_G_PROG = 0, $P_MC = 1
:$C_G60_PROG = 1, $C_G_PROG = 0, $P_MC = 1
;$C_G60_PROG = 0, $C_G_PROG = 0, $P_MC = 0
Funktionshandbuch, 02/2012, 6FC5397-7BP40-3AA0
ISO-Dialekte