Cycle definition FANUC

Fanuc cycles implementation

Facing – complete cycle
( ******* )
({Cycle.Name} G41G42)
( ******* )
{Safe.Position}
{Tool.ToolSingleLine}
{Spindle.MaxSpeedExpression}
{Spindle.StartExpression}
{AuxiliarFunctions.ChipVacuumONCode}
(ROUGHT)
G00 G40 X{Cycle.Rough.First.X}
Z5
G00 Z{Cycle.Rough.First.Z}
{Cycle.Rough.Path}
Z5
(FINISH)
G00 G40 X[[{Material.CoverWasMachined} == 1]:::[{Material.UsefullOutside}+2]:::[{Material.Outside}+4]] F{Tool.FeedFinish}
Z5
G01 G41 Z{Cycle.Geometry.First.Z}
{Cycle.Finish.Path}
G00 G40 Z5
Facing – finish only
(******)
({Cycle.Name} G41G42 FO)
(******)
G21
{Safe.Position}
{Tool.ToolSingleLine}
{Spindle.MaxSpeedExpression}
G96 M14 S{Spindle.SpeedFinish}
G00 G40 X[[{Material.CoverWasMachined} == 1]:::[{Material.UsefullOutside}+2]:::[{Material.Outside}+4]] Z2 {AuxiliarFunctions.ChipVacuumONCode}
G00 G41 Z{Cycle.Geometry.First.Z} F{Tool.FeedFinish}
{Cycle.Finish.Path}
G00 G40 Z2
Front groove
(******)
({Cycle.Name} G41G42)
(******)
G21
{Safe.Position}
{Tool.ToolSingleLine}
{Spindle.MaxSpeedExpression}
{Spindle.StartExpression}
{AuxiliarFunctions.ChipVacuumONCode}
{Cycle.ExpandedG41G42.Path}
Inside – complete cycle
( ******* )
({Cycle.Name} G41G42)
( ******* )
{Safe.Position}
{Tool.ToolSingleLine}
{Spindle.MaxSpeedExpression}
{Spindle.StartExpression}
{AuxiliarFunctions.ChipVacuumONCode}
G40
G00 X{Cycle.Rough.First.X} Z5 F{Tool.FeedRough}
{Cycle.Rough.Path}
[[{Cycle.Skip.Finish}==0 && {Cycle.XFinish} > 0]:::(** FINISH **)]
[[{Cycle.Skip.Finish}==0 && {Cycle.XFinish} > 0]:::G00 X[{Cycle.Geometry.First.X}] Z[{Cycle.Geometry.First.Z}+2] F{Tool.FeedFinish}]
[[{Cycle.Skip.Finish}==0 && {Cycle.XFinish} > 0]:::G01 G41 X{Cycle.Geometry.First.X} Z{Cycle.Geometry.First.Z}]
[[{Cycle.Skip.Finish}==0 && {Cycle.XFinish} > 0]:::{Cycle.Finish.Path}]
[[{Cycle.Skip.Finish}==0 && {Cycle.XFinish} > 0]:::G00 X[{Cycle.Geometry.Min.X}-2 >>> {Tool.Dimension}-{Tool.Radius}] Z[{Cycle.Geometry.Last.Z}+0.2]]
G00 G40 Z5
{Cycle.Manual.Path}
Inside – finish only
( ******* )
({Cycle.Name} G41G42 FO)
( ******* )
{Safe.Position}
{Tool.ToolSingleLine}
{Spindle.MaxSpeedExpression}
{Spindle.StartExpression}
{AuxiliarFunctions.ChipVacuumONCode}
G00 X[{Cycle.Geometry.First.X}] Z[{Cycle.Geometry.First.Z}+2] F{Tool.FeedFinish}
G01 G41 X{Cycle.Geometry.First.X} Z{Cycle.Geometry.First.Z}
{Cycle.Finish.Path}
G00 X[{Cycle.Geometry.Min.X}-2 >>> {Tool.Dimension}-{Tool.Radius}] Z[{Cycle.Geometry.Last.Z}+0.2]
G00 G40 Z5
{Cycle.Manual.Path}
Outside – complete cycle
(******)
({Cycle.Name} G41G42)
(******)
{Safe.Position}
{Tool.ToolSingleLine}
{Spindle.MaxSpeedExpression}
{Spindle.StartExpression}
{AuxiliarFunctions.ChipVacuumONCode}
G40
G00 X{Cycle.Rough.First.X} Z5 F{Tool.FeedRough}
{Cycle.Rough.Path}
[[{Cycle.Skip.Finish}==0 && {Cycle.XFinish} > 0]:::(** FINISH **)]
[[{Cycle.Skip.Finish}==0 && {Cycle.XFinish} > 0]:::G00 X[{Cycle.Geometry.First.X}] Z[{Cycle.Geometry.First.Z}+2] F{Tool.FeedFinish}]
[[{Cycle.Skip.Finish}==0 && {Cycle.XFinish} > 0]:::G01 G42 X{Cycle.Geometry.First.X} Z{Cycle.Geometry.First.Z}]
[[{Cycle.Skip.Finish}==0 && {Cycle.XFinish} > 0]:::{Cycle.Finish.Path}]
[[{Cycle.Skip.Finish}==0 && {Cycle.XFinish} > 0]:::G00 X[{Cycle.Geometry.Max.X}+2] Z[{Cycle.Geometry.Last.Z}+0.2]]
G00 G40 Z5
{Cycle.Manual.Path}
Outside – finish only
(******)
({Cycle.Name} G41G42 FO)
(******)
{Safe.Position}
{Tool.ToolSingleLine}
{Spindle.MaxSpeedExpression}
{Spindle.StartExpression}
{AuxiliarFunctions.ChipVacuumONCode}
G00 X[{Cycle.Geometry.First.X}] Z[{Cycle.Geometry.First.Z}+2] F{Tool.FeedFinish}
G01 G42 X{Cycle.Geometry.First.X} Z{Cycle.Geometry.First.Z}
{Cycle.Finish.Path}
G00 X[{Cycle.Geometry.Max.X}+2] Z[{Cycle.Geometry.Last.Z}+0.2]
G00 G40 Z5
{Cycle.Manual.Path}