Tooling & Production June 2003

"Shop Talk with Steve Rose"

Threading Methods

There are three programming methods available for programming on Fanuc based controls. We’ll look at the benefits of each method in the next few articles of Shop Talk.
     The production of an external or internal thread requires several passes with a single-point threading tool. The deeper the thread, the greater the number of passes required to produce that thread.
     The traditional threading method uses G32/G33 codes. These commands require four lines of program code for each thread pass. For example, machining a 3/4 - 10 external thread could require 10 - 14 threading passes resulting in 40 - 56 lines of code.
     Typically in a single pass threading routine the depth is reduced in each pass as the diameter gets smaller. Reducing the depth in this manner is necessary to balance the load on the insert. As the insert goes deeper into the material the area of contact between the tool and the part increases. To minimize this contact area, smaller pass depths are programmed as the insert approaches its final depth. Your insert supplier’s catalog has information regarding the number of passes needed for a specific thread.
     There are two alternative programming methods to reduce the programming effort. Today we’ll review G76; this canned cycle method is very popular and suitable for many threading applications. Only 1-2 lines of information must be programmed, depending upon the type of control.
     A Fanuc 0/18/21 control is often programmed with 2 lines of code as follows. Let’s use a 7/8 - 9 TPI thread in a modal program as an example. First, use the Machinist Handbook to determine the major (outside) and minor (root) diameter of the thread. Then, calculate the thread depth as follows.

thread depth = (major ø - minor ø ) ÷ 2

1111  (thread 7/8 - 9 TPI) ;
N10   G00   G40   G99 ;
N20   G97   S1090   M13 ;      (spindle direction & coolant)
N30   T0303 ;       (tool & offset)
N40   X0.955   Z0.444 ;       (start position)
N50   G76   P010060   Q0050 R0.0005 ;
N60   G76   X0.7387   Z-1.50 P0.06815 Q0060;
N70   G00   X1.  Z1.   M09 ; (clearance position)
In this 7 line program, 2 lines of code produce the 7/8-9 thread. Let’s review each segment of these codes, we’ll start with program line N50.

Program Explanation
     N50 = program line identification

     G76 = canned cycle routine


     The first two digits (P010060) represent the number of spring (finish) passes. In this example, there is one finish pass.
     The second two digits (P010060) represent the chamfer amount pull out. The 00 in this example program a straight pull out.
     To calculate the chamfer pull out, multiplying the two-digit value by the thread pitch. Ex: P010560 = 05 x 0.111 = 0.0556 chamfer length.
     The final two digits (P010060) represent the thread angle. This value can be changed to suit the thread angle required. A 00 would represent a plunge (straight) in-feed angle.
     Q0050 = minimum pass depth
          Note, this value is programmed without a decimal point.
     R0.0005 = depth of last threading pass
     N60 = program line identification
     G76 = canned cycle routine
     X0.7387 = minor diameter from machinist handbook
     Z-1.500 = ending Z axis position
     P0.06815 = total thread depth (amount per side)
     Q0080 = maximum pass depth
          This value programmed without a decimal point.
     F0.1111 = lead of thread pitch = 1 ÷ 9

     The Z start position (shown in line N40) is recommended as Z0.300 or a minimum of 4 multiplied by the pitch dimension. Ex: 7/8 - 9 TPI thread = 4 x 0.111 = Z0.444 dimension. This approach allows the machine to accelerate to the correct axis velocity before the insert enters the material.
     An alternative method of thread programming is to use the G92/G76 commands. Check back next month when we discuss use of these codes and programming tapered pipe threads.