Fanuc Nullpunkt-Parameter – G54 bis G59 per Makrovariable

Fanuc-Nullpunkte G54 bis G59 per Makrovariable lesen und schreiben: Variablentabellen #5221–#5325, Formel für G54.1 P1–P48 und G-Code-Beispiele aus der Praxis.

Auf Fanuc-Steuerungen lassen sich die Nullpunktverschiebungen G54 bis G59 über Makrovariablen lesen und schreiben. Die folgenden Tabellen zeigen die Variablennummern pro Achse; für die erweiterten Nullpunkte G54.1 P1 bis P48 wird die Variablennummer berechnet. Eine Übersicht aller G-Codes bietet die Fanuc G-Code-Referenz.

G54 bis G59

G54

VariablennummerAchse
#5221X
#5222Y
#5223Z
#52244
#52255

G55

VariablennummerAchse
#5241X
#5242Y
#5243Z
#52444
#52455

G56

VariablennummerAchse
#5261X
#5262Y
#5263Z
#52644
#52655

G57

VariablennummerAchse
#5281X
#5282Y
#5283Z
#52844
#52855

G58

VariablennummerAchse
#5301X
#5302Y
#5303Z
#53044
#53055

G59

VariablennummerAchse
#5321X
#5322Y
#5323Z
#53244
#53255

G54.1 P1 bis G54.1 P48

Die Daten der Werkstücknullpunkte von P1 bis P48 werden in den Variablennummern #7001 bis #7945 gespeichert. Hier bietet sich eine entsprechende Berechnung der Variablennummer an:

Berechnung

Variablennummer = 7000 + (P-Nummer - 1) * 20 + Achsennummer

Beispiel für G54.1 P33

Die folgenden Zeilen zeigen die Variablennummern, die sich aus der Formel ergeben – es ist kein lauffähiger NC-Code:

#1 = 33
#[7001 + [[#1 - 1] * 20]] (X)
#[7002 + [[#1 - 1] * 20]] (Y)
#[7003 + [[#1 - 1] * 20]] (Z)
#[7004 + [[#1 - 1] * 20]] (1)
#[7005 + [[#1 - 1] * 20]] (2)

Erläuterung

Zur einfacheren Wiederverwendbarkeit wurde die Nullpunktnummer in der Variable #1 zwischengespeichert. Die Achsennummer ist bei den Werten von 7001 bis 7005 bereits verrechnet und wird nicht zusätzlich addiert.

Anwendungsbeispiel: Schreiben

Schreiben von Werten in G54.1 P33:

#1 = 33
#[7001 + [[#1 - 1] * 20]] = 55.32 (X)
#[7002 + [[#1 - 1] * 20]] = 352.887 (Y)
#[7003 + [[#1 - 1] * 20]] = -487.995 (Z)

Anwendungsbeispiel: Lesen

Auslesen der Werte von G54.1 P33 und Speichern in die Variablen #11, #12 und #13:

#1 = 33
#11 = #[7001 + [[#1 - 1] * 20]] (X)
#12 = #[7002 + [[#1 - 1] * 20]] (Y)
#13 = #[7003 + [[#1 - 1] * 20]] (Z)