Everything you need to know about

G76 Screw Thread Cycle

The above video lesson is part of a series of videos I made for Practical Machinist available here

When machining a screw thread on a CNC lathe we have a few options. Depending on the version of the FANUC controls, we can use one line of code or two. Both methods use the G76 command and contain information that tells the machine controls the details of the thread that we wish to cut. Thread cutting can also be performed using a G32 G Code and G92. We will take a look at how these works along with the more common G76.


G76 - Single line thread cutting

G76 Single line thread cutting

G76 X, Z, I, K, D, A, F;

  • X = Minor dia of thread
  • Z = End point of thread
  • I = Taper
  • K = Depth of thread
  • D = Depth of first pass
  • A = Angle of thread
  • F = Pitch of thread
  • Example:
    T1212 M06;
    G97 S400 M03;
    G76 X18.2 Z-18.0 I-0.1 K900 D100 A60 F1.5;
    G00 X25.0 Z10.0;

    This cycle contains a lot of information within the G76 line. The X dimension is the core diameter of the thread, the distance between the bottom of the thread tooth to the centreline multiplied by 2. The Z dimension is the distance to the end of the thread from the datum position. We are assuming that the datum is on the front face of the part on our example.

    'I' tells the machine the amount of taper that is applied to the thread over the full length. We often need to add a taper to be able to cut a parallel thread especially if it is a long thread on a small diameter. This is due to the material reflecting. This is adjusted during setup if the thread gauge is tight or lose at one end of the thread. This value can also be used to cut a tapered thread if required.

    The 'K' Value is used to tell the controls the depth of the tooth of the thread. This information can be found in thread charts such as the charts available in my free ebook.

    'D' Designates the depth of the first cut, the depth automatically gets smaller as the thread is cut due to more material being removed on each pass. When using a single line G76 the controls work this out using built-in functions.

    'A' defines the angle of the tooth of the thread. For example, A standard metric thread is 60 degrees while an imperial BSF thread would be 55 degrees.

    Finally 'F' is used to tell the controls the pitch of the thread. The distance between each tooth.


    G76 - Two-line thread cycle

    G76 - Two line screw thread cycle

    G76 P(1)(2)(3), Q, R;
    G76 X, Z, P, Q, F;

    First line

  • P(1) = Spring passes
  • P(2) = Chamfer
  • P(3) = Angle of thread
  • Q = Minimum cut
  • R = Finish allowance
  • Second line
  • X = Minor (core) dia of thread
  • Z = Endpoint of thread
  • P = Depth of thread
  • Q = Depth of first cut
  • F = Pitch of thread
  • Example:
    T1212 M06;
    G97 S400 M03;
    G76 P040060 Q100 R0.2
    G76 X18.2 Z-18.0 P180 Q160 F1.5;
    G00 X25.0 Z10.0;

    The two-line G76 method gives us a bit more control over machining the thread, some versions of the FANUC controls allow us to use this style of thread cutting.

    The 'P' word gives us three commands in one, each value is a two digit number. The first defines the number of spring passes that the machine will take once the thread is cut to depth. This helps with surface finish and repeatability to help our threads remain in tolerance over many parts. The second value defines the angle of runout chamfer at the end of the thread while the third is the angle of the teeth of the thread (i.e. 60 degrees for a metric thread or 55 degrees for a BSF thread)

    The 'Q' word defines our minimum cut. This is so the machine does not start taking 0.001mm cuts as it approaches the core diameter.

    'R' is the amount of material we leave on before the finishing pass(es) are performed

    X and Z is the core diameter of the thread and the endpoint of the thread from the datum respectively.

    The 'P' word on the second line is the depth of thread in microns and the 'Q' defines the depth of the first cut.

    Finally, we tell the control the pitch of the thread using the 'F' value. With the G76 active the machine knows that we are using feed per revolution and not feed per minute.

    G32 - Thread Cutting

    The G32 screw thread cutting G-Code is not a canned cycle. It is used as a way to lock the rotation of the chuck to the pitch of the lead screw to enable us to have full control over the depth of each pass. It acts more like a G01 command where each line needs to be programmed separately but allows us to set a pitch. This is classed as a model operation. The G32 can also be used for face tapping operations.

    Example:
    G00 X8.0 Z5.0; (Start position)
    G32 X5.0 F0.8; (First thread pass depth and pitch)
    Z-15.0; (Endpoint of the thread in Z)
    G00 X8.0; (Retract in X)
    G00 Z5.0; (Retract in Z)
    G32 X4.8 F0.8; (Second thread pass depth and pitch)
    Z-15.0; (Endpoint of the thread in Z)
    G00 X8.0; (Retract in X)
    G00 Z5.0; (Retract in Z)
    G32 X4.6 F0.8; (Third thread pass depth and pitch)
    Z-15.0; (Endpoint of the thread in Z)
    Etc.

    More about the G32 cycle here

    G92 - Thread Cycle

    The G92 is a screw cutting cycle that allows us to program the depth of each pass. It gives us full control over the X diameter for each cut, This has to be programmed for each pass as shown below.

    Example:
    G00 X5.0 Z5.0; (Start position)
    G92 X5.0 Z-15.0 F0.8; (Thread OD, end point of thread and pitch)
    X4.8; (Second pass)
    X4.65; (Third pass)
    X4.5; (Fourth pass)
    X4.4; (Fifth pass)
    Etc.

    Share this article

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

    The quickest way to learn CNC Programming