Everything you need to know about

G72 facing cycle on a CNC Lathe

G72 facing cycle

Not only can we rough turn along the Z-Axis using the G71 roughing cycle we can also rough turn on the X-Axis using the G72 facing cycle. The G72 works in much the same way as the G71 but cuts in a facing direction towards the centre line of the part.


What is the G72 facing cycle?

With this cycle, the tool will cut along the X-Axis towards the centreline of the component. This is used when we wish to turn a spigot at the front of the part or that we wish to remove material in that direction. The cycle will follow the contour of the profile by using a subroutine that we place between 'N' numbers then recall that subroutine using the G72 command. Finishing allowances are added by using 'U' and 'W' to leave material on for a finishing pass that will clean up the surface of the part.

G72 facing roughing cycle

G72 facing cycle on a CNC lathe

The G72 cycle uses two lines of G-Code to tell our Lathe how we wish the cycle to perform. Some machines may use the one line version that I mention at the end of this article

Each command or word in these two lines are broken down and explained below.

G72 W(1) R;
G72 P Q U W(2) F;




G72 - FACING CYCLE
W(1) - DEPTH OF CUT
R - RETRACT VALUE
P - FIRST LINE OF SUBROUTINE
Q - LAST LINE OF SUBROUTINE
U - AMOUNT LEFT ON FOR FINISHING IN X
W(2) - AMOUNT LEFT ON FOR FINISHING IN Z
F - FEED RATE

G72 is our G-Code that tells the machine that we wish to use the roughing facing cycle that cuts towards the centreline of the part.

The 'W' on the first line is the depth of cut in Z-axis. The' R' refers to the distance that the tool pulls off of the material when moving in rapid to the next starting point.

The 'P' and 'Q' values define the start and end point of our subroutine respectively. These values can be any value as long as it matches the 'N' numbers of the subroutine. This will look like the code below.

N200;
SUBROUTINE OF PROFILE;
N300;

In the above example, 'P' would be P200 and 'Q' would be Q300 so they match the 'N' numbers.

The 'U' on the second G71 line defines the amount of material we wish to leave on for a finish cut in X.

The 'W' on the second line is the amount of material we wish to leave on for a finish cut in Z.

And 'F' is our feed rate.


G72 Program example

G72 Program example

G72 W0.8 R2.0;
G72 P200 Q300 U1.0 W0.5 F0.2;
N200 G00 Z1.0;
G01 G41 Z0.0;
X20.0 Z-0.5;
Z-20.0;
X40.0 Z-30.0;
N300 G40 X70.0 Z5.0 F200;




G72 W0.8 R2.0;

This first line tells us that we are taking a 0.8mm depth of cut and the tool is retracting 2.0mm from the material before returning to the next start point.

G72 P200 Q300 U1.0 W0.5 F0.2;

The 'P' value matches the N number at the start of the subroutine that we wish to cut and 'Q' matches the N number at the end of our subroutine.

U1.0 will leave 1.0mm on the diameter of the part for our finishing tool to remove in a later operation.

W0.5 will leave 0.5mm on the face of the part for our finishing operation.

F defines the feed rate. F0.2 will feed at 0.2mm per revolution of the spindle/part.

N100 G00 Z1.0;

N defines the first line of the subroutine, the following code is the profile of the part that we wish to cut. G00 Z1.0 moves the tool into the start position to machine the 45 degrees chamfer at the front of the part. (The Z position is assumed to be already given in the program at a previous point)

G01 G41 Z0.0;

G01 selects linear feed rate movement, G41 turns on tool nose radius compensation, Z moves the tool to the front of the part and finally, we give a feed rate of 0.2mm per revolution.

X20.0 Z-0.5;
Z-20.0;
X40.0 Z-30.0;

These blocks of G-Code tell the machine the shape of the profile that we wish to cut.

N300 G40 X70.0 Z5.0 F200;

We end our profile subroutine by giving the 'N' number that we have chosen to define the end point of the subroutine. G40 is used to cancel our tool nose radius compensation, Z5.0 moves our tool to 5mm away from the front face of our part. This line can also be programmed using a G00 rapid move.

Single line G72 example

Some CNC controls such as the Fanuc 10T, use the single line version of this cycle, This is technique is explained below.

  • G72 P200 Q300 U0.0 W0.0 D2.0 F.02;
  • The main difference with this style of programming is that we have now moved our depth of cut value which was 'W' on the two line version. It is now called 'D' and lives on the same line as the rest of the information.

    G72 is our facing cycle, P and Q values are still the start and end point of our subroutine.

    The U and W values define our finish allowance or amount that we leave on for a finishing cut.

    'D' is now our retract value, this tells the control how far to move away from the material between cuts.

    And of course, our feed rate is 'F'

    Everything else remains the same as our examples above.





    Share this article

    For a complete tutorial on CNC Lathe Programming check out my course.

    The quickest way to learn CNC Programming