Beispiel 2:
Programmumgebung beeinflusst Positionierweg der Positionierachse
(keine G-Funktion im Aktionsteil der Synchronaktion):
Programmcode
N100 R1=0
N110 G0 X0 Z0
N120 WAITP(X)
N130 ID=1 WHENEVER $R==1 DO POS[X]=10
N140 R1=1
N150 G71 Z10 F10
N160 G70 Z10 F10
N170 G71 Z10 F10
N180 M30
G71 im Aktionsteil der Synchronaktion bestimmt den Positionierweg der Positionierachse
eindeutig (metrisch), unabhängig von der Programmumgebung:
Programmcode
N100 R1=0
N110 G0 X0 Z0
N120 WAITP(X)
N130 ID=1 WHENEVER $R==1 DO G71 POS[X]=10
N140 R1=1
N150 G71 Z10 F10
N160 G70 Z10 F10
N170 G71 Z10 F10
N180 M30
Soll die Achsbewegung nicht mit Satzanfang gestartet werden, kann der Override für die
Achse aus einer Synchronaktion bis zum gewünschten Startzeitpunkt auf 0 gehalten werden:
Programmcode
WHENEVER $A_IN[1]==0 DO $AA_OVR[W]=0 G01 X10 Y25 F750 POS[W]=1500 FA=1000
Arbeitsvorbereitung
Programmierhandbuch, 06/2009, 6FC5398-2BP20-0AA0
Kommentar
; Z=10mm X=10mm
; Z=254mm X=254mm
; Z=10mm X=10mm
Kommentar
; Z=10mm X=10mm
; Z=254mm X=10mm (X positioniert immer auf 10mm)
; Z=10mm X=10mm
Kommentar
; Die Positionierachse wird so lange angehalten,
solange der digitale Eingang 1=0.
Bewegungssynchronaktionen
10.4 Aktionen in Synchronaktionen
687