Sequences 

Sequences are used to describe the actual NC code output. They are a series of program blocks that appear in specific places in the NC program and for specific reasons.

Each sequence is described in the POSTFORM file by giving its name, on its own line, then the line(s) for the formatted NC description. The word END on its own line, which marks the END of the sequence, is then entered. Each line is limited to 15 words. The total of all sequence lines is limited to 150 lines.

The output is defined by entering the Letter format desired with the variable required for the output code. The NC code is output with the letter entered and the data from the variable used.

Note   The sequence examples in this section were written for a standard Fanuc control. They are incorporated in the post libraries displayed in this section.

The post processor contains three basic sequence types. These are the Canned cycles, Standard, and Optional sequences.

The Standard sequences appear in all POSTFORM files. They perform the operations that are required for every machine. In addition to the standard sequences, there are optional sequences you can define. Optional sequences are denoted with an *.

   1.   1stToolChange

   20.  EndRow

   2.   BeginLeadin*

   21.  EndSideStep*

   3.   BeginLeadout*

   22.  EndZLevel*

   4.   BeginPlunge*

   23.  Index*

   5.   BeginRetract*

   24.  InFeed

   6.   BeginRow

   25.  LineCode*

   7.   BeginSideStep*

   26.  OutFeed

   8.   BeginZLevel*

   27.  RapidCode*

   9.   Between*

   28.  StartCode

   10.  CcwCode*

   29.   Stop

   11.  CwCode*

   30.  SubCall*

   12.  EdmCut*

   31.   SubEnd*

   13.  EdmPreDrillThread*

   32.  SubmergeTank*

   14.  EdmThread*

   33.  SubStart*

   15.  EndCode

   34.  Thread G33

   16.  EndLeadin*

   35.  ToolChange

   17.  EndLeadout*

   36.  Unwind

   18.  EndPlunge*

   37.  UponVariable

   19.  EndRetract*

 See Canned Cycles, below.

 

These sequences are described in alphabetical order, followed by a description of the canned cycles.

Note   When coding sequences, you must place a single space character between each output letter on the line. Subsequent letters are not output for the line when the single space is not present. If you either leave out a space or insert an extra space, you will get incorrect results. The following example shows the correct coding and the incorrect coding—two spaces are inserted.

Correct

The output code

1stToolChange

 

T[tool] M6

T1 M6

M[direct] S[speed]

M3 S2000

G0 G[work] X[h] Y[v]

G0 G54 X1. Y2.5

Z[d] H[Lcomp]

Z.1 G43

M[cool]

M7

End

 

Incorrect

The output code

1stToolChange

 

T[tool]  M6

T1

M[direct]  S[speed]

M3

G0 G[work]  X[h]  Y[v]

G0

Z[d]  H[Lcomp]

Z.1

M[cool]

M7

End

 

Standard and Optional Sequences 

1. 1stToolChange —Mill, Lathe 

This sequence describes the format for the program's FIRST tool change. This differs from the subsequent tool changes in that it is assumed that the machine is in the tool change position.

Mill

Lathe

The output code

1stToolChange

1stToolChange

 

T[tool] M6

T[tool] M6

T1 M6

M[direct] S[speed]

M[direct] S[speed]

M3 S2000

G0 G[work] X[h] Y[v]

G0 G[work] X[h] Y[v]

G0 G54 X1. Y0

Z[d] H[Lcomp]

Z[d] H[Lcomp]

Z.1 H43

M[cool]

M[cool]

M7

End

End

 

Related Sequences:  ToolChange

2. BeginLeadin —Mill, Lathe, EDM

This sequence adds G code before the leadin moves.

3. BeginLeadout —Mill, Lathe, EDM

This sequence adds G code before the leadout moves.

4. BeginPlunge —Mill, Lathe, EDM

This sequence adds G code before the plunge moves.

5. BeginRetract —Mill, Lathe, EDM

This sequence adds G code before the retract moves.

6. BeginRow —Mill 

This sequence describes the format for the beginning of each pass of a pocket cut or the beginning of each pass on a bi-directional surface cut.

This can be used for water jet or laser machine tools. It can also be used for the high speed machining function of a machine tool.

BeginRow

G91.1

F[Frate]

End

Related sequences:  EndRow

7. BeginSideStep —Mill, Lathe, EDM

This sequence adds G code before the side step moves.

8. BeginZLevel —Mill, Lathe, EDM

This sequence adds G code before the Z level moves.

9. Between — Mill 

This sequence defines any special code desired between the Subprogram and the main program. This could be used to enter the code for the end of all subroutines on the FADAL.

Between

M17

M30

End

The output code for this example:

 

X0 Y0

 

 

G91 G28 Z0

Subprogram end

 

M17

 

 

M30

 

 

O1234

Main program beginning

Note   See Subprogram Output.

Related sequences: SubCall, SubStart, SubEnd

10. CcwCode — Mill, Lathe, EDM 

This code is used to format counterclockwise arcs that cannot be processed by the CtrCode and CtrIncremental? commands. The ByQuadrants command is still applicable to this sequence.

CcwCode

G3 X[h] Y[v] I[ival] J[jval] F[frate]

G299

End

The output code:

G3 X1. Y1. I-1. J0 F5.

G299

Related sequences: CwCode

11. CwCode — Mill, Lathe, EDM 

This code is used to format clockwise arcs that cannot be processed by the CtrCode and CtrIncremental? commands. The ByQuadrants command is still applicable to this sequence.

CwCode

G2 X[h]    Y[v] I[ival] J[jval] F[frate]

G199

End

The output code:

G3 X1. Y1. I-1. J0 F5.

G199

Related sequences: CcwCode

12. EdmCut —EDM

This sequence adds G code to cut the wire in EDM operations.

13. EdmPreDrillThread —EDM

This sequence adds G code that will predrill thread points in EDM operations.

14. EdmThread —EDM

This sequence adds G code that will thread the wire in EDM operations.

15. EndCode — Mill, Lathe 

The EndCode sequence is used to format the end of the program. It can be used to code the tool clearance move and a tool change to the program's first tool. It will also contain the program end code, either an M2 or M30.

Mill

The output code

EndCode

 

G0 G90 G49

G0 G90 G49

M6 T[tool1]

M6 T1

X0 Y0

X0 Y0

M30

M30

%0

 

End

 

Lathe

The output code

EndCode

 

M6 T[tool1]

M6 T1

G0 G90 G49

G0 G90 G49

E0 X0 Y0

E0 X0 Y0

M30

M30

16. EndLeadin —Mill, Lathe, EDM

This sequence adds G code after the leadin moves.

17. EndLeadout —Mill, Lathe, EDM

This sequence adds G code after the leadout moves.

18. EndPlunge —Mill, Lathe, EDM

This sequence adds G code after the plunge moves.

19. EndRetract —Mill, Lathe, EDM

This sequence adds G code after the retract moves.

20. EndRow — Mill 

This sequence describes the format for the end of each pass of a pocket cut or the end of each pass on a bi-directional surface cut.

This can be used for water jet or laser machine tools. It can also be used for the high speed machining function of a machine tool.

EndRow

G91.2

F[plunge]

End

Related sequences: BeginRow

21. EndSideStep —Mill, Lathe, EDM

This sequence adds G code after the side step moves.

22. EndZLevel —Mill, Lathe, EDM

This sequence adds G code after the Z level moves.

23. Index — Mill 

The Index sequence replaces rapid moves whenever the CView changes for the cut. Since this sequence replaces rapid motion, the example below indicates the three functions that should be placed in the sequence.

Index

The output code

G0 G28 G49 Z0

G0 G28 G49 Z0

G[work] X[h] Y[v] A[rotangle]

G54 X1. Y1. A90.

G43 H[lcomp] Z[d]

G43 H1 Z.1

End

 

Related sequences: UnWind

24. InFeed — Mill, Lathe, EDM 

The InFeed sequence is used to define the format for tool motion into the part. This is usually used to define the moves to initiate cutter compensation.

 

InFeed

InFeed

 

G[side] X[h] Y[v] H[dcomp] F[frate]

G[side] X[h] Y[v] H[dcomp] F[frate]

 

End

End

The output code for these examples:

G41 X1. Y1. H1 F5.

Note   The InFeed sequences can only be 1 block long for 4 axis Wire EDM.

Related sequences: OutFeed

25. LineCode — Mill, Lathe 

This sequence can be used to create non-standard linear moves.

LineCode

The output code

G1 X[h] Y[v] Z[d]

G1 X1. Y1. Z.1

G499

G499

End

 

26. OutFeed — Mill, Lathe, EDM 

This sequence is used to define the tool motion away from the part. This usually consists of the moves to deactivate cutter compensation.

Mill

Lathe

OutFeed

OutFeed

G1 G40 X[h] Y[v]

G1 G40 X[h] Y[v]

End

 

The output code for these examples:

G1 G40 X0 Y0

Note   The OutFeed sequences can only be 1 block long for 4 axis Wire EDM.

Related sequences: InFeed

27. RapidCode — Mill, Lathe, EDM 

This sequence is used to define a non-standard rapid code.

RapidCode

G0 X[h] Y[v] Z[d]

G399

End

The output code:

G0 X1. Y1. Z.1

G399

28. StartCode — Mill, Lathe, EDM 

This sequence is used to define the beginning lines of the program. They usually contain a percent sign followed by the program number. The initializing modal G codes can also be added.

Mill

StartCode

%0

O[program#]

G90 G80 G40 G17

End

The output code:

%

O1234

G90 G80 G40 G17

Lathe

StartCode

%0

O[Program#]

G90 G80 G40 G17

End

The output code:

%

O1234

G90 G80 G40 G17

29. Stop — EDM

This sequence is used to post the Stop variable, M00 or M01.

Stop

M[Stop]

End

30. SubCall — Mill 

This sequence defines the details of the Subprogram call in the main program.

SubCall

E[work] X[h] Y[v]

M98 P[sub] L[times]

End

The output code for this example follows. The P word is the Subprogram number called. The L word is the number of repetitions for the Subprogram.

G1 X1. Y1.

M98 P1 L5

Note   See Subprogram Output.

Related sequences: Between, SubEnd, SubStart

31. SubEnd — Mill 

This sequence defines the end of the Subprogram.

SubEnd

M99

End

The output code for this example follows. This code is placed at the end of the Subprogram code by the post processor.

M99

Note   See Subprogram Output.

Related sequences: Between, SubCall, SubStart

32. SubmergeTank — EDM

This sequence adds G code to fill the tank in EDM operations.

33. SubStart — Mill 

This sequence defines the beginning of the Subprogram.

SubStart

O[sub]

End

The output code for this example follows. This code is placed at the beginning of the Subprogram by the post processor.

O1

Note   See Subprogram Output.

Related sequences: Between, SubCall, SubEnd

34. Thread G33  — Lathe

For lathes that do NOT support AutoThread (G76 style) automatic threading cycles, LPost calculates individual threading passes and output them (typically with G33 codes).

If the post contains “THREAD G33” line AND an AutoThread sequence, AutoThread will take precedence (LPost will output the AutoThread cycle and ignore the G33).

G33 X-1.44 Z-1.75 I0 F0.0625

X-1.4151

X-1.3961

X-1.38

X-1.3658

X-1.353

X-1.3413

35. ToolChange — Mill, Lathe 

This sequence describes the format for all subsequent tool changes after the first tool change. It usually contains the same format as the first tool change with the addition of the move to the tool change position.

Mill

ToolChange

The output code

G49 G0 Z0 M9

G49 G0 Z0 M9

T[tool] M6

T1 M6

M[direct] S[speed] G0 X[h] Y[v]

M3 S2000 G0 X1. Y1.

G43 Z[d] H[lcomp]

G43 Z.1 H1

M[cool]

M7

End

 

Lathe

ToolChange

The output code

N[block] T[tool] M6

N100 T1 M6

M[direct] S[speed] G0 X[h] Y[v]

M3 S2000 G0 X1. Y1.

G43 Z[d] H[lcomp]

G43 Z.1 H1

M[cool]

M7

End

 

Related sequences: 1stToolChange

36. UnWind — Mill 

When the rotary axis is limited in travel, it may become necessary to unwind the axis before continuing machining. This is accomplished with the Unwind sequence. It is used to lift the tool, unwind the axis, plunge into the part, and continue movement. The sequence can be described as follows:

Unwind

The output code

G0 G28 G49 Z0

G0 G28 G49 Z0

G0 G90 A0

G0 G90 A0

G43 H[lcomp] Z[d]

G43 H1 Z.1

G0 X[lasth] Y[lastv] A[lastrotangle]

G0 X0 Y0 A90.

G1 Z[lastd]

G1 Z.1

End

 

Related sequences: Index

37. Upon Variable — Mill 

This sequence can be used to output specific code whenever a variable changes. Each time the variable changes, the Upon sequence is called. It can also be used to output a specific set of codes every time the variable is encountered. The example below indicates the sequence to use when the Work variable is changed.

Upon [work]

The output code

G91 G28 Z0

G91 G28 Z0

G[work]

G55

X[h] Y[v] Z[d]

X1. Y1. Z.1

G90

G90

End

 

Note   When the variable does not change and the next line or sequence uses the variable, this sequence is not output.

The example below is used every time the Tool variable is encountered by the post processor.

Upon Every [tool]

G91 G28 Z0

G90

End

The output code:

G91 G28 Z0

G90 

Canned Cycles 

You can create a series of blocks that will be repeated to do the same operation at each point of the cycle. The definable canned cycles are listed below. These cycles can be used as a Machine cycle, an Emulated cycle, or an Advanced cycle.

1.  AutoThread

 

2.  Back

9.   Drill

3.  Bore

10.  LTap

4.  Cancel

11.  Peck

5.   CanThread

12. Chipbreak

6.   Custom1

13.  Ream

7.   Custom2

14.  Tap

8.   Custom3

15.   Thread G33

 

  

The three Custom cycles can be used to modify an existing machine tool cycle to enhance the machine capabilities. These cycles are user defined and can be single or multiple line sequences.

   Machine cycles

Canned cycles can be used to access the machine's built-in canned cycles or to create user defined cycles. When a machine canned cycle is accessed, the Cancel code should be used to stop execution of the machine cycle.

Note   This is accomplished by entering Cancel at the end of the End line in the canned cycle sequence. See Cancel — Mill, Lathe.

This example uses the Drill sequence to access a machine drill cycle.

Drill

G81 X[h] Y[v] Z[d] R[vclear] F[frate]

End Cancel

The output code:

G81 X1. Y1. Z-.5 R.1 F5.

X2. Y3.

X3. Y4.

G80

   Emulated cycles

When built-in machine code is not used, the cycles can include any desired code that is to be repeated at each location. Since these cycles are not built-in canned cycles, the machine tool does not require a Cancel code. Define a straight drilling cycle by describing the Drill sequence as follows:

Drill

 

G0 X[h] Y[v] Z[rplane]

# Rapid to position RPlane.

Z[vclear]

# Rapid down to clearance.

G1 Z[d] F[plunge]

# Feed down to bottom.

G0 Z[rplane]

# Rapid out to Rplane level.

End

 

The output code:

G0 X1. Y1. Z.2

Z.1

G1 Z-.5 F5.

G0 Z.2

G0 X2. Y3. Z.2

Z.1

G1 Z-.5 F5.

G0 Z.2

G0 X3. Y4. Z.2

Z.1

G1 Z-.5 F5.

G0 Z.2

   Advanced cycles

You can control the number of lines to output for the first location and subsequent locations. You can output setup moves for the cycles and repeat only the moves necessary at each location. This is accomplished by placing a number after the cycle sequence name.

This example uses the Advanced cycle method to define a specific output for the first drill location while outputting less code for the subsequent locations.

Back 3

# Initial Cycle.

F[frate]

 

G306 Z0

 

G308 Z[d]

 

G323 P.5

# Secondary cycles.

G85 X[h] Y[v]

 

End Cancel

 

The output code:

F5.

G306 Z0

G308 Z-.5

G323 P.5

G85 X1. Y1.

G323 P.5

G85 X2. Y3.

G323 P.5

G85 X3. Y4.

G80

1. AutoThread — Lathe 

This cycle is used for the Lathe automatic threading cycles.

AutoThread

G76 A[tparams] Q[vbite] R0

G76 X[v] Z[h] P[peck1] Q[vleave] R0 F[frate]

End

The sequence below is for the Fanuc OT control.

p[v] Z[h] R[startang] P[depth] q[peck1] F[frate]

End

These cycles require the use of additional letter formats. Listed below are samples of the letter formats required for these cycles.

I->3.>4

# Arc centers and <taper> value.

A010360

# Used for <tparams> in G76 cycle.

P ->34

# Depth of first threading pass.

Q ->3.>4

# Used for minimum depth of threading pass.

F >3.>6

# Check number of places of trailing

 

# decimal for accurate threading.

2. Back bore — Mill 

This cycle is used to feed the boring tool in and out of the hole.

   Machine cycle

Back

The output code

G87 X[h] Y[v] Z[d] R[vclear] F[frate]

G87 X1. Y1. Z-.5 R.1 F5.

End Cancel

X2. Y3.

 

X3. Y4.

 

G80

 

   Emulated cycle

Back

The output code

G0 X[h] Y[v]

G0 X1. Y1.

Z[rplane]

Z.1

G1 Z[d]F[plunge]

G1 Z-.5 F5.

G0 Z[rplane]

G0 Z.1

End Cancel

G0 X2. Y3.

 

Z.1

 

G1 Z-.5 F5.

 

G0 Z.1

 

G0 X3. Y4.

 

Z.1

 

G1 Z-.5 F5.

 

G0 Z.1

   Advanced cycle

Back 4

# Initial Cycle.

The output code

F[frate]

 

F5.

G306 Z0

 

G306 Z0

G308 Z[d]

 

G308 Z-.5

G323 P.5

# Secondary cycles.

G323 P.5

G85 X[h] Y[v]

 

G85 X1. Y1.

End Cancel

 

G85 X2. Y3.

 

 

G85 X3. Y4.

 

 

G80

3. Bore — Mill, Lathe 

This cycle is used for a standard boring cycle. The tool is feed to the hole depth, then rapids to the clearance plane.

   Machine cycle

Bore

The output code

G86 X[h] Y[v] Z[d] R[vclear] F[frate]

G86 X1. Y1. Z-.5 R.1 F5.

End Cancel

X2. Y3.

 

X3. Y4.

 

G80

   Emulated cycle

Bore

The output code

G0 X[h] Y[v]

G0 X1. Y1.

Z[rplane]

Z.1

G1 Z[d]F[plunge]

G1 Z-.5 F5.

Z[rplane]

Z.1

End Cancel

G0 X2. Y3.

 

Z.1

 

G1 Z-.5 F5.

 

Z.1

 

G0 X3. Y4.

 

Z.1

 

G1 Z-.5 F5.

 

Z.1

   Advanced cycle

Back 4

# Initial Cycle.

The output code

F[frate]

 

F5.

G306 Z0

 

G306 Z0

G308 Z[d]

 

G308 Z-.5

G323 P.5

# Secondary Cycles.

G323 P.5

G85 X[h] Y[v]

 

G85 X1. Y1.

End Cancel

 

G85 X2. Y3.

 

 

G85 X3. Y4.

 

 

G80

4. Cancel — Mill, Lathe 

This command is used to describe how a canned cycle is canceled. Usually a single line with a G80 is used.

Cancel

G80

End

Drill

G81 G99 R[vclear] Z[d] X[h] Y[v] F[frate]

End Cancel

The output code for this example follows when a machine cycle is used. The Cancel code is entered on the End line of the canned cycle sequence.

G81 G99 R.1 Z-.5 X1. Y1. F5.

X2. Y3.

X3. Y4.

G80

When the Cancel code is not entered on the End line of the single line sequence, the line is repeated for each location.

This example shows the same code without the Cancel sequence used.

Drill

G81 G99 R[vclear] Z[d] X[h] Y[v] F[frate]

End

The output code:

G81 G99 R.1 Z-.5 X1. Y1. F5.

G81 G99 R.1 Z-.5 X2. Y3. F5.

G81 G99 R.1 Z-.5 X3. Y4. F5.

5. CanThread — Lathe

You can put this sequence in your template instead of the AutoThread sequence.

CanThread 1

G92 Z[H] X[V] I[Taper] F[FRate]

X[V]

End

Note   The “1” means 1 line starts the cycle.

6. Custom1 — Mill, Lathe 

7. Custom2 — Mill, Lathe

8. Custom3 — Mill, Lathe

The above commands are used to describe a machine's canned cycle that is not defined by the other available canned cycles. The example used, is a standard Peck cycle for the FADAL machine tool while the G83 cycle is a deep hole cycle.

When the Custom cycles are coded, you can enter a comment on the sequence name line to identify the cycle type. This comment must be a minimum of three spaces after the sequence name.

   Machine cycle

Custom1

The output code

G73 X[h] Y[v] Z[d] Q[vbite] R[vclear] F[frate]

G73 X1. Y1. Z-.5 Q.2 R.1 F5.

End Cancel

X2. Y3.

 

X3. Y4.

 

G80

   Emulated cycle

Custom1

The output code

G0 X[h] Y[v] Z[rplane]

G0 X1. Y1. Z.2

Z[vclear]

Z.1

G1 Z[d] F[plunge]

G1 Z-.5 F5.

G0 Z[rplane]

G0 Z.2

End

G0 X2. Y3. Z.2

 

Z.1

 

G1 Z-.5 F5.

 

G0 Z.2

 

G0 X3. Y4. Z.2

 

Z.1

 

G1 Z-.5 F5.

 

G0 Z.2

   Advanced cycle

Custom1

# Initial Cycle.

The output code

G83 G99 R[vclear] Z[d] X[h] Y[v] F[frate]

 

G83 G99 R.1 Z-.5 X1. Y1. F5.

Z[d] R[vclear] X[h] Y[v].

# Secondary Cycles.

Z-.5 R.1 X2. Y3.

End Cancel

 

Z-.5 R.1 X3. Y4.

 

 

G80

9. Drill — Mill, Lathe 

The Drill sequence describes the straight drilling cycle the machine tool uses. This code is usually coded as a G81 cycle.

   Machine cycle

Drill

The output code

G81 X[h] Y[v] Z[d] R[vclear] F[frate]

G81 X1. Y1. Z-.5 R.1 F5.

End Cancel

X2. Y3.

 

X3. Y4.

 

G80

   Emulated cycle

Drill

The output code

G0 X[h] Y[v] Z[rplane]

G0 X1. Y1. Z.2

Z[vclear]

Z.1

G1 Z[d] F[plunge]

G1 Z-.5 F5.

G0 Z[rplane]

G0 Z.2

End

G0 X2. Y3. Z.2

 

Z.1

 

G1 Z-.5 F5.

 

G0 Z.2

 

G0 X3. Y4. Z.2

 

Z.1

 

G1 Z-.5 F5.

 

G0 Z.2

   Advanced cycle

Drill 1

# Initial Cycle.

The output code

G81 X[h] Y[v] Z[d] R[vclear] F[frate]

 

G81 X1. Y1. Z-.5 R.1 F5.

Z[d] R[vclear] X[h] Y[v]

# Secondary Cycles.

Z-.5 R.1 X2. Y3.

End Cancel

 

Z-.5 R.1 X3. Y4.

 

 

G80

10. LTap — Mill 

This cycle is used for left hand threading.

   Machine cycle

LTap

The output code

G74 X[h] Y[v] Z[d] R[vclear] F[speed] Q[vbite]

G74 X1. Y1. Z-.5 R.1 F5. Q.2

End Cancel

X2. Y3.

 

X3. Y4.

 

G80

   Emulated cycle

LTap

The output code

G0 X[h] Y[v] Z[rplane]

G0 X1. Y1. Z.4

G1 Z[d] F[frate]

G1 Z-.5 F5.

Z[rplane]

Z.4

End

G0 X2. Y3. Z.4

 

G1 Z-.5 F5.

 

Z.4

 

G0 X3. Y4. Z.4

 

G1 Z-.5 F5.

 

Z.4

   Advanced cycle

LTap 6

# Initial Cycle.

The output code

F[frate]

 

F5.

G300 P[rplane]

 

G300 P.1

G306 Z0

 

G306 Z0

G308 Z[d]

 

G308 Z-.5

G323 P.5

 

G323 P.5

G84

 

G84

X[h] Y[v]

 

X1. Y1.

End Cancel

 

X2. Y3.

 

 

X3. Y4.

 

 

G80

11. Peck — Mill, Lathe 

This cycle is used to break the drill chips. It is often referred to as a deep hole drilling cycle. It can be either a G73 or G83 code. Check the machine tool specification for the proper cycle codes.

   Machine cycle

Peck

The output code

G83 X[h] Y[v] Z[d] Q[vbite] R[vclear] F[frate]

G83 X1. Y1. Z-.5 Q.2 R.1 F5.

End Cancel

X2. Y3.

 

X3. Y4.

 

G80

   Emulated Cycle

When the machine tool does not have a Peck drilling cycle, the following example can be used to create this cycle. The post processor will automatically output the Feed and Rapid moves to synthesize a Peck drilling cycle. The moves output by this cycle are defined by the FeedCode, Feed, and Rapid commands in the POSTFORM file. Typically the FeedCode command identifies the feedrate moves with the letter F. The Feed command identifies the feed move as being a G1 and the Rapid identifies the rapid moves as being G0. These can be changed by you as the machine tool requires. During the cycle the tool is moved at rapid motion to .05 of the last drill depth. Then the feed motion begins.

Peck

None

End

The output below shows this cycle output for two holes .375 deep with a .125 Peck increment.

%

O1

M6 T1 ( Tool Diam: 0.0625

G0 G90 S2000 M3 E1 X3.4875 Y5.3

H1 M7 Z1.

G0 Z0.1

G1 Z-0.025 F20.

G0 Z0.1

Z0.025

G1 Z-0.15

G0 Z0.1

Z-0.1

G1 Z-0.275

G0 Z0.1

Z-0.225

G1 Z-0.375

G0 Z1.

X4.8875 Y5.1875

Z0.1

G1 Z-0.025 F20.

G0 Z0.1

Z0.025

G1 Z-0.15

G0 Z0.1

Z-0.1

G1 Z-0.275

G0 Z0.1

Z-0.225

G1 Z-0.375

G0 Z1.

X4.9 Y4.425

Z0.1

G1 Z-0.025 F20.

G0 Z0.1

Z0.025

G1 Z-0.15

G0 Z0.1

Z-0.1

G1 Z-0.275

G0 Z0.1

Z-0.225

G1 Z-0.375

G0 Z1.

M5 M9

G0 G49 G90 Z0

E0 X0 Y0

M6 T1

M2

%

   Advanced cycle

Peck 6

# Initial Cycle.

The output code

F[frate]

 

F5.

G300 P[rplane]

 

G300 P.1

G306 Z0

 

G306 Z0

G307 U[vbite]

 

G307 U.125

G308 Z[d]

 

G308 Z-.5

G83

 

G83

X[h] Y[v]

# Secondary cycles.

X1. Y1.

End Cancel

 

X2. Y3.

 

 

X3. Y4.

 

 

G80

12. Chip Break — Mill, Lathe 

This cycle is used to break the drill chips. On most NC machines it is a G73 code.

   Machine cycle

Chip Break

The output code

G73 X[h] Y[v] Z[d] Q[vbite] R[vclear] F[frate]

G73 X1. Y1. Z-.5 Q.2 R.1 F5.

End Cancel

X2. Y3.

 

X3. Y4.

 

G80

13. Ream — Mill, Lathe 

This cycle is used for a standard reaming cycle. The tool feeds in and out of the hole.

   Machine cycle