Nullpunktverschiebungen

In TwinCAT NC I stehen eine Reihe von Nullpunktverschiebungen zur Verfügung. Hiermit wird der Abstand zwischen dem Werkstück- und dem Maschinennullpunkt beschrieben.

Unterdrückung der Nullpunktverschiebung

Befehl

G53 (Standardeinstellung)

Aufhebung

G54 bis G59

Mit G53 wird die Nullpunktverschiebung modal unterdrückt. Dabei wirkt sich die Unterdrückung sowohl auf die einstellbare, wie auch auf die programmierbare Nullpunktverschiebung aus.

Einstellbare Nullpunktverschiebung

Befehl

G54

G55

G56

G57

Aufhebung

G53

oder Anwahl einer anderen einstellbaren Nullpunktverschiebung

Im NC-Programm kann über die Befehle G54 bis G57 zwischen den Nullpunktverschiebungen hin- und hergeschaltet werden.

Parametrierung

Die einstellbare Nullpunktverschiebung kann auf unterschiedliche Weise parametriert werden

  1. SPS-Funktionsbaustein ItpWriteZeroShiftEx (empfohlener Standard)
  2. XAE Interpreter-Element
  3. aus dem DIN-Programm

Die Parameter werden für jeden Interpolationskanal einzeln gesichert. D.h. die einstellbaren Nullpunktverschiebungen sind kanalabhängig.

Hinweis Die Anwahl der einstellbaren Nullpunktverschiebung muss in einem eigenen Satz erfolgen. Damit die Verschiebung auch wirklich herausgefahren wird, müssen in einem folgenden Geometriesatz wenigstens die betroffenen Achsen genannt werden.

Beispiel 1:

N10 G01 X100 Y0 Z0 F6000
N20 G54 (activates adjustable zero offset shift (NPV))
N30 G01 X Y Z
N40 M30

In Beispiel 1 werden in Zeile 30 alle beteiligten Achsen genannt. Dies bewirkt, dass die Nullpunktverschiebungen für alle Achsen herausgefahren werden.

Beispiel 2:

N10 G01 X100 Y0 Z0 F6000
N20 G54 (activates adjustable zero offset shift (NPV))
N30 G01 X200 Y

In Beispiel 2 wird in Zeile 30 die X-Achse an die Position 200 + Verschiebung in X-Richtung verfahren. Bei der Y-Achse wird lediglich die Verschiebung herausgefahren und die Z-Achse wird nicht bewegt.

Parametrierung aus dem DIN-Programm

Befehl

#set paramZeroShift( G<n>; <value x>; <value y>; <value z> )#

Parameter G<n>

Nullpunktverschiebung die parametriert werden soll (G54..G59)

Parameter <value>

Koordinaten der Nullpunktverschiebung

Mit '#set paramZeroShift(..)#' wird die NPV parametriert aber noch nicht aktiviert. Dafür muss der G-Code noch explizit programmiert werden.

Beispiel 3:

N10 G01 X100 Y0 Z0 F6000
N20 R12=200
N30 #set paramZeroShift( G54; 100.0; R12; -20)#
N40 G54 (activates adjustable zero offset shift (NPV))
N50 G01 X200 Y Z

Programmierbare Nullpunktverschiebung

Befehl

G58 oder G59

Aufhebung

G53

Neben der einstellbaren existieren auch noch programmierbare Nullpunktverschiebungen. Diese Art der Nullpunktverschiebung wird direkt aus dem NC-Programm beschrieben.

Nullpunktverschiebungen 1:

Addition der Nullpunktverschiebungen

Die programmierbare Nullpunktverschiebung wirkt nur bei aktiver einstellbarer Nullpunktverschiebung. D.h. die gesamte Verschiebung ist die Summe aus

• eingestellter Nullpunktverschiebung(G54, G55, G56 oder G57)

• erster programmierbarer Nullpunktverschiebung (G58)

• zweiter programmierbarer Nullpunktverschiebung (G59)

Beispiel 4:

N10 G01 X100 Y0 Z0 F6000
N20 G54 (activates adjustable zero offset shift (NPV))
N30 G58 X0.5 Y0.5 Z0.5 (1st prg. zero offset shift)
N50 X Y Z (movements for the zero offset shift)
...
M30

Verhalten bei Kettenmaßangabe

Standardverhalten

Eine Veränderung des Nullpunktes wirkt sich auch im Kettenmaß aus.

Beispiel 5:

N10 G01 X100 Y0 Z0 F6000
N20 G54 (activates adjustable zero offset shift (NPV))
N25 G58 X10 Y10 Z0
N30 G91 (Incr. dimensions)
N40 G01 X200 Y0
N50 ...

In N40 verfährt Y im Basis-Koordinatensystem auf 10. Mit der Verschiebung des Nullpunktes, verschiebt sich auch der Bezugspunkt für die Kettenmaßprogrammierung, womit sich für Y dann ein Verfahrweg ergibt.

Auf diese Weise kann eine Kontur, die komplett im Kettenmaß programmiert ist, durch eine Nullpunktverschiebung an beliebiger Stelle abgefahren werden.

Das Verhalten von G91 ist parametrierbar.

Befehl

Beschreibung

ZeroShiftIncOn

Auch unter G91 werden die Nullpunktverschiebungen herausgefahren, wenn die Achse genannt wird. (Standardeinstellung)

ZeroShiftIncOff

Unter G91 wird die Nullpunktverschiebung nicht herausgefahren.

Beispiel 6:

N10 G01 X100 Y0 Z0 F6000
N15 ZeroShiftIncOff
N20 G54 (activates adjustable zero offset shift (NPV))
N25 G58 X10 Y10 Z0
N30 G91 (Incr. dimensions)
N40 G01 X200 Y
N50 ...

Da im Beispiel 6 'ZeroShiftIncOff' eingestellt ist, wird die X-Achse in N40 um 200mm unabhängig von der neuen Nullpunktverschiebung verfahren. Für die Y-Achse wurde keine Zielkoordinate programmiert, die Achse bleibt also stehen.

Vergl. auch ToolOffsetIncOn/Off