Programmierbeispiel
Programmierbeispiel
Zyklusaufruf mit Aufrufmuster
Das folgende Beispiel beschreibt das Fräsen einer Rechtecktasche an drei verschiedenen Positionen mit Hilfe des Aufrufmuster-Aufrufs. Die zweite Aufrufmusterdefinition beinhaltet zudem eine Rotation, wodurch die Rechtecktasche an dieser Position um 60 Grad um die Z-Achse gedreht wird.
T8 D8 ( Tool data )
M6 ( Tool change )
G54 G90 S6000 M03 ( Technology data )
#VAR
; parameters for pattern:
V.CYC.PatternRetract = 100
V.CYC.PatternID = 1
; input parameters:
V.L.SurfacePosition = 0 ( Z-Position of workpiece surface )
V.L.RetractionPlane = 50 ( Z-Position of retraction plane )
V.L.SafetyClearance = 2 ( relative value of safety clearance in Z)
V.L.DepthOfPocket = 12 ( depth of pocket )
V.L.MaxIncrementZ = 4 ( maximal infeed in Z )
V.L.MaxIncrementXY = V.G.WZ_AKT.R ( maximal infeed in XY )
V.L.FeedRateXY = 6000 ( machining feedrate in XY )
V.L.FeedRateZ = 4000 ( plunging feedrate )
V.L.MachiningMode = 1 ( machining mode )
V.L.PocketLength = 20 ( length of the pocket )
V.L.PocketWidth = 20 ( width of the pocket )
#ENDVAR
; pattern data
#PATTERN BEGIN [ID=V.CYC.PatternID]
#AT [100, 0, 0]
#AT [100, 100, 5, 0, 0, 60]
#AT [0 , 100, 10]
#PATTERN END
; polynomial contouring for smooth movements
#CONTOUR MODE [DEV, PATH_DEV = V.G.WZ_AKT.R / 100]
G261
G00 Z60
G00 X50 Y50 ( Positioning to the starting point )
L CYCLE [NAME=SysMillRectangularPocket.ecy \
@P1 = V.L.SurfacePosition \
@P2 = V.L.RetractionPlane \
@P3 = V.L.SafetyClearance \
@P4 = V.L.DepthOfPocket \
@P5 = V.L.MaxIncrementZ \
@P6 = V.L.MaxIncrementXY \
@P20 = V.L.FeedRateXY \
@P21 = V.L.FeedRateZ \
@P31 = V.L.MachiningMode \
@P72 = V.L.PocketLength \
@P73 = V.L.PocketWidth \
PATTERN_ID = V.CYC.PatternID \
PATTERN_RETRACT = V.CYC.PatternRetract \
]
G260
M05
M30