Programming example

Programing Example

prg_example

Remove residual material

T9 D9                          ( Tool data )

M6                             ( Tool change )

G00 G90 M03 S6000 F5000        ( Technology data )

G00 Z100                       ( Go to z start position )

G00 X0 Y0                      ( Go to start position )

; cycle call parameter:

#VAR

V.L.SurfacePosition = 0                     ( Z position of workpiece surface )

V.L.RetractionPlane = 100                   ( Z position of retraction plane )

V.L.SafetyClearance = 10                    ( relative value of safety clearance )

V.L.FeedRateXY = 2000                       ( machining feedrate in XY )

V.L.FeedRateZ = 1000                        ( plunging feedrate )

V.L.Direction = 2                           ( clockwise machining )

V.L.DepthOfPocket = 20                      ( depth of pocket )

V.L.MaxIncrementZ = V.L.DepthOfPocket / 2   ( maximum infeed in Z )

V.L.MaxIncrementXY = V.G.WZ_AKT.R           ( maximum infeed in XY )

V.L.MachiningMode = 1                       ( roughing )

V.L.RadiusReferenceCycle = V.G.WZ_AKT.R     ( radius of reference cycle )

#ENDVAR

; circular pocket definition:

#CONTOUR BEGIN[ID = 1]

G1 G90 X50 Y0

G02 G161 X-50 Y0 I0 J0

G02 G161 X50 Y0 I0 J0

#CONTOUR END

; island (with residual material) definition:

#CONTOUR BEGIN[ID = 2]

G1 G90 X-10 Y-10

G1 X10 Y-10

G1 X10 Y-3

G1 X-5 Y-3

G1 X-5 Y3

G1 X10 Y3

G1 X10 Y10

G1 X-10 Y10

G1 X-10 Y-10

#CONTOUR END

G0 ZV.L.RetractionPlane

; pocket milling cycle call:

L CYCLE [NAME = SysMillContourPocket.ecy @P1 = V.L.SurfacePosition, \

@P2 = V.L.RetractionPlane, @P3 = V.L.SafetyClearance \

@P4 = V.L.DepthOfPocket @P5 = V.L.MachiningMode @P6 = V.L.Direction\

@P7 = V.L.MaxIncrementZ @P8 = V.L.FeedRateZ \

@P9 = V.L.MaxIncrementXY @P10 = V.L.FeedRateXY @P50= 1 @P51= 2 ]

; tool change:

T8 D8                     ( Tool data )

M6                        ( Tool change )

G00 G90 M03 S8000 F5000   ( Technology data )

; residual milling cycle call:

V.L.MaxIncrementXY = V.G.WZ_AKT.R ; adapt increment to new tool

L CYCLE [NAME = SysMillContourResidual.ecy @P1 = V.L.SurfacePosition, \

@P2 = V.L.RetractionPlane, @P3 = V.L.SafetyClearance \

@P4 = V.L.DepthOfPocket @P5 = 1 @P6 = V.L.Direction @P7 = V.L.MaxIncrementZ\

@P8 = V.L.FeedRateZ @P9 = V.L.MaxIncrementXY @P10 = V.L.FeedRateXY\

@P50= 1 @P51= 2 @P13 = V.L.RadiusReferenceCycle ]

M30