HaasRoughingFinishing - rmu75/linuxcnc-wiki GitHub Wiki


date: '2007-04-29T07:43:44' title: HaasRoughingFinishing

Lathe Roughing and Finishing canned cycles

Notes - This writing is based on the behavior of the Haas CNC control on a SL-10 lathe. This is an enclosed lathe with a 3 jaw, hydraulically controlled chuck. It has a slant bed and a tool holder turret and is equipped for flood coolant. There are 2 canned cycle G codes on the lathe to first rough out stock to a given geometry with a specific amount of material remaining and a second cycle to finish to size. Both cycles use block numbers to define the geometry of the part. The initial position is significant as it is used to deduce if it will be a boring cycle or a turning cycle.

Keep in mind all X axis call outs on a lathe are in diameter.

1. Roughing

The roughing cycle is invoked by G71. It takes the following parameters: P/Q This is the beginning and ending block numbers to describe the geometry.

        U/W

This is the X and Y amount of material to leave on the part.

        I/K

Haas defines this as the last pass amount with direction. I have never used this personally and cannot comment on it. This is an optional parameter.

        D

This is the depth of cut per pass.

        F

This is a feed rate to use when roughing. It overrides feed rates provided in the geometry blocks.

        S

This is an optional spindle speed override while roughing.

        T

This is an optional tool to use while roughing. A typical all out for G71 is:

        G71 P25 Q28 U0.01 W0.02 D0.125 F0.007

The P and Q define the beginning and ending blocks that define the geometry. U and W define the amount of stock to leave behind in the X and Y directions. D defines the maximum death of cut on each pass. F defines the feed rate to use when roughing. F can override the feed rate defined between blocks called out by P and Q.

If the position of the tool is on the center line side of the geometry, a boring operation is assumed. A turning operation is will be used if the initial position is outside of the part. Note that this operation will not drill the stock for clearance of a boring bar. Typically a boring operation requires a prior drilling operation. Furthermore, the initial position is used for the retract between passes. As such, the initial position may not be on the center line as the back of the boring bar needs to clear!

2. Finishing

        The finishing cycle is invoked by G70. It takes exactly two parameter, P/Q block numbers defining the geometry.

A typical call out for G70 is: G70 P25 Q28

This will cut the part to the geometry defined between blocks called out by P and Q. A single pass using the feed rates called out by the block will be used.

This is a sample program that uses the G70 and G71 codes on a lathe to create ER32 lathe chuck blanks.

% O01016 (ER32 Lathe chuck) (T4 .75 in drill) (T6 spotting drill) (T9 Turning tool) (T2 Boring bar) (T8 Outside Threading tool) N10 G18 G20 G40 G54 G80 G97 G99 (Insurance line) G28 (Home turret) (Face and turn to size) N20 T909 G50 S1500 (Cap speed at 1500RPM) G96 S100 M03 (100 SFPM) G00 X2.125 Z1. M08 G00 Z0.1 G01 Z0. F0.007 G01 X0. F0.007 G00 Z0.1 G00 X0. G01 Z0. F0.007 G01 X2.125 G71 P25 Q28 U0.01 W0.02 D0.05 F0.007 N25 G01 X1.525 F0.002 G01 Z-0.05 F0.002 X1.5748 G01 Z-0.77 G01 X1.725 N28 G01 Z-2.125 G70 P25 Q28 G28 T900 M01 (Spot drill) N30 T606 G50 S1500 (Cap speed at 1500RPM) G97 S1200 M03 (Spindle on) G00 X0. Z1. M08 G00 X0. Z0.1 G01 Z-0.125 F0.001 G00 Z0.1 G28 (Home turret) T600 M01 (Drill out to 0.75, 1.25 deep) N40 T404 G50 S1500 G97 S533 M03 (Spindle on - 100SFPM) G00 X0. Z1. M08 G00 X0. Z0.1 (Drill down -1.5) G01 Z-0.25 F0.005 G00 Z0.1 G01 Z-0.5 F0.005 G00 Z0.1 G00 Z-0.375 G00 Z-0.625 F0.005 G00 Z0.1 G00 Z-0.5 G01 Z-0.75 F0.005 G00 Z0.1 G00 Z-0.675 G01 Z-0.875 F0.005 G00 Z0.1 G00 Z-0.75 G01 Z-1. F0.005 G00 Z0.1 G00 Z-0.875 G01 Z-1.125 F0.005 G00 Z0.1 G00 Z-1. G01 Z-1.25 F0.005 G00 Z0.1 G00 Z-1.125 G01 Z-1.375 F0.005 G00 Z0.1 G00 Z-1.25 G01 Z-1.5 F0.005 G00 Z0.1 G28 T400 M01 (Bore out inside taper) N50 T202 G50 S1500 G96 S40 M03 G00 X0.6 Z1. M08 G00 X0.6 Z0.1 G01 Z0. F0.002 G71 P55 Q58 U0.01 W0.02 D0.02 F0.007 N55 G01 X1.26 F0.002 N58 G01 X0.94 Z-1.138 G70 P55 Q58 G00 Z0.1 G28 T200 M01 (Thread the outside M40-1.5) N60 T808 G50 S1500 G97 S200 M03 G00 Z1. G00 X1.65 G00 Z0.1 M08 G76 D0.01 F0.05906 K0.0362 Z-0.75 X1.491 G00 X1.775 G00 Z1. G28 T800 M01 M05 M30 %