Вы находитесь на странице: 1из 55

NC Programming for PUMA Turning Centers

Equipped with
Live Tools, Sub Spindle, Y- Axis

For PUMA all Single Path Turning Centers


with FANUC 31i, 32i controls

1
TABLE OF CONTENTS

ROTARY AXIS FUNCTIONS .................................................................................................................... 6

C - Axis .......................................................................................................................................................... 6

Rotary Axis Mode ......................................................................................................................................... 6

Changing the Rotary Axis Name ................................................................................................................. 6

C-axis locking function................................................................................................................................. 7

Normal Rotary Axis Assignment for PUMA 1500, 2000, 2500 YS Models ............................................. 7

A - Axis .......................................................................................................................................................... 8

A-axis locking function................................................................................................................................. 8

Switching the Rotary Axis Names by M-Code ........................................................................................... 8

Switching the Rotary Axis Clamp M-Code ................................................................................................ 8

Feed Rate Calculation for Linear Interpolation with Rotary Axis .......................................................... 9

SPINDLE MODE AND ROTARY AXIS MODE COMMANDS ............................ 11


Main Spindle Mode .................................................................................................................................... 11

For turning operations on the main spindle, the commands as shown in the table, below are
applicable. These commands may be used at the initial program start-up in Turning-Mode or when
switching from Live Tool-Mode to Turning-Mode. ................................................................................. 11

SPINDLE DESIGNATION, P- ASSIGNMENTS .................................................. 11


Rotary axis mode (C-Axis or A-Axis connected) ..................................................................................... 12

M-Codes for switching the Rotary axis Name.......................................................................................... 13

ANGULAR POSITIONING FUNCTION FOR SPINDLES ................................... 14


Spindle orientation ..................................................................................................................................... 14

Parameter Settings related to Spindle Orientation ................................................................................. 14

Angular spindle positioning ....................................................................................................................... 14

Angular Spindle positioning and spindle locking .................................................................................... 15

DRILLING AND TAPPING WITH LIVE TOOLS ON THE C-AXIS ..................... 16


Canned cycles for hole machining with the C and Z-axis ....................................................................... 16

2
Z-axis peck drilling, C-axis positioning .................................................................................................... 16

Z-axis tapping ............................................................................................................................................. 16

Example: Drilling and Tapping on the Front Face of a part .................................................................. 16

Canned cycles for hole machining with the C and X-axis ....................................................................... 17

X-axis peck drilling, C-axis positioning .................................................................................................... 17

X-axis tapping ............................................................................................................................................. 17

Example: Drilling and Tapping on the OD of a part............................................................................... 17

DRILLING AND TAPPING WITH LIVE TOOLS ON THE SUB SPINDLE ......... 18
Z-axis peck drilling on the sub spindle ..................................................................................................... 18

Z-axis tapping ............................................................................................................................................. 18

Example: Drilling and Tapping on the Face of a part using Sub Spindle positioning. ........................ 18

X-axis peck drilling on the sub spindle ..................................................................................................... 19

X-axis tapping on the sub spindle ............................................................................................................. 19

Example: Drilling and Tapping on the OD of a part using Sub Spindle positioning. .......................... 19

POLAR COORDINATE INTERPOLATION FUNCTION G12.1 .......................... 20


Layout of the X-C coordinate system plane ............................................................................................. 20

Notes on programming with the G12.1 function ...................................................................................... 21

Programming example ............................................................................................................................... 24

CYLINDRICAL INTERPOLATION ..................................................................... 28


Principle of Operation ................................................................................................................................ 28

Layout of the Z-C Coordinate system....................................................................................................... 28

Programming Notes.................................................................................................................................... 28

Formula for converting the length of an arc to degrees of rotation ....................................................... 29

Cylindrical Interpolation Example ........................................................................................................... 30

Y-AXIS PROGRAMMING FOR PUMA TURNING CENTERS ........................... 32


Y - Axis Design ............................................................................................................................................ 32

3
X-Y Plane Layout ....................................................................................................................................... 33

Y- Z Plane Layout ...................................................................................................................................... 34

Notes for Y-axis operation ......................................................................................................................... 34

WORK PIECE TRANSFER BETWEEN MAIN AND SUB SPINDLE.................. 36


Parameter Settings related to Spindle Synchronization.......................................................................... 37

Setting the orientation angle for Spindle Synchronization ..................................................................... 37

Oriented spindle synchronization command............................................................................................ 38

Synchronized spindle stop command ........................................................................................................ 38

Non- oriented spindle synchronization command ................................................................................... 38

Caution with G96 in Spindle Synchronization Mode .............................................................................. 38

TORQUE CONTROL FUNCTIONS FOR B-AXIS .............................................. 40


Live center support with Sub Spindle....................................................................................................... 40

Cutoff Confirmation................................................................................................................................... 41

Sample Program1: Spindle Synchronization, Cutoff and Parts Transfer to Sub Spindle ................... 42

Sample Program 2: Spindle Synchronization, Cutoff and Parts Transfer to Sub Spindle .................. 43

BAR FEED OPERATION ................................................................................... 44


M-codes used for the bar feed operation .................................................................................................. 44

Bar feed sub programs ............................................................................................................................... 44

Bar Stopper (Tool for stopping the bar) ................................................................................................... 44

Top cutting the front face of a new bar .................................................................................................... 44

End of bar-signal ........................................................................................................................................ 45

Timer Setting (M50/M51 time-out) ........................................................................................................... 45

Inserting the bar feed command into the machining program............................................................... 45

Bar Feed Sub Program Call ...................................................................................................................... 45

Bar Reload Sub Program Call ................................................................................................................... 45

Program Examples for use with bar feeder.............................................................................................. 45

4
M-CODE LIST FOR DOOSAN PUMA-TURNING CENTERS ............................ 47

MISCELLANEOUS PROGRAMMING INFORMATION ...................................... 51


G76 – THREADING CYCLE – TWO LINE FORMAT ........................................................................ 51

Right hand thread / left hand thread ........................................................................................................ 52

Thread height / depth of first pass ............................................................................................................ 52

G76 – THREADING CYCLE - SINGLE LINE FORMAT .................................................................... 54

5
ROTARY AXIS FUNCTIONS
When machining with live tools a rotary-axis allows angular positioning of the
work piece between zero and 360 degrees. The CNC system converts one of the
lathe spindles into a rotary axis.

C - Axis
PUMA Turing centers equipped with a turret and driven tools normally employ a
rotary axis, called the C-axis. The main spindle motor drives the rotary axis. A
position-encoding device attached to the spindle provides for positioning of the
rotary axis at 0.001-degree resolution. Linear interpolation with the rotary axis,
together with any other axis is possible. For circular interpolation between a
rotary axis and a linear axis, special control functions such as polar coordinate
interpolation or cylindrical interpolation is applied.
The rotary axis is switched ON or OFF by M-codes, alternating between normal
spindle operation and C-axis operation.

Rotary Axis Mode


M35 Turns ON the C-axis (rotary-axis).
On machines that are equipped with a rotary axis on both, the main as well as
the sub spindle, additional M-codes are used as follows:
M35 followed by M135 turns ON the rotary axis on the sub spindle.

• M34 disconnects the rotary axis from the main spindle, letting it “free-
wheel”
• M134 disconnects the rotary axis from the Sub spindle, letting it “free-
wheel”

Changing the Rotary Axis Name


On machines equipped with two rotary axis, Macro call M-codes M290 and M291
are used for re-naming the rotary axis.
M290 sets the C-axis on the main spindle and the A-axis on the sub spindle.
M291 reverses the above name assignment.

Reference Return Command: G28 H0, (or G30 H0)


C-axis positioning Command: G0 C180.000 – Absolute command, degrees
G0 H180.000 - Incremental command, degrees

Work offsets G54 through G59 or the coordinate system setting command G50
sets the work coordinates for the rotary axis. System parameter 1240 & 1250
sets the reference point (Home position) for the C-axis.

6
Linear Interpolation command:
G98 G1 C___(H___) F___ (F = degrees of rotation per minute)
G99 G1 C___(H___) F___ (F = degrees of rotation per tool revolution)

C-axis locking function


During machining with live tools, locking of the C-axis can provide improved
stability.

High-pressure clamp M89 (fixed at maximum hydraulic system pressure)


Rapid positioning axis interpolation is disabled while M89 is active.

Unlock command M90


Front view of Main and Sub spindle, PUMA 2500SY

C- AXIS
A - AXIS

Normal Rotary Axis Assignment for PUMA 1500, 2000, 2500 YS Models

The C-Axis (also referred to as C1-axis) normally assigned to the Main Spindle,
on left side. The A-Axis (also referred to as C2-axis) normally assigned to the
Sub Spindle, on right side.

7
A - Axis
PUMA Turning centers that are equipped with a sub spindle and Y-axis include a
rotary axis each on the main and on the sub spindle. The rotary axis on the sub
spindle is assigned as the A-axis. NC programming for the A-axis is done same
way as on the C-axis, except as noted, below.

Reference Return Command: G28 A0, (or G30 A0)


A-axis positioning Command: G0 A180.000 (Absolute position, degrees)
No incremental command is available for A

A-axis locking function

High-pressure clamp M189 (fixed at maximum hydraulic system pressure)


Rapid positioning axis interpolation is disabled while M189 is active.

A-axis unclamp command M190

Switching the Rotary Axis Names by M-Code


For programmer’s convenience, the following M-Codes are used for re-naming
the rotary axis:

M290 This M-Code restores the normal axis name assignment, setting the C-
axis on the main spindle and the A-axis on the sub spindle.

M291 This M-Code inverts the normal axis name assignment, setting the C-axis
on the sub spindle and the A-axis on the main spindle.

Switching the Rotary Axis Clamp M-Code


M289 sets the condition so that M89 clamps the C-Axis, M189 clamps the A-axis
M389 sets the condition so that M189 clamps the C-Axis. M89 clamps the A-axis.

8
Feed Rate Calculation for the Rotary Axis

The feed rate for a rotary-axis is specified in units of angular velocity,


either in degrees per minute or in degrees per tool revolution.

To convert the tangential feed rate on the circumference of a circle that is defined
by the radius R from inches per minute (IPM) into degrees per minute (°PM), the
following formula is applied:
F ° per minute =F (IPM) x 57.296 / R

To convert a feed rate from inches per revolution (IPR) into degrees per tool
rotation (°/ REV) the formula is the same:

F ° per revolution =F (IPR) x 57.296 / R

The above formulas calculate the feed velocity for moving the rotary axis alone,
not together with another axis.

For example: Suppose that machining is done on the OD of a 1.5” diameter part,
rotating the C-axis only. The tangential feed rate desired is 5” per minute. What is
the required feed rate in degrees per minute?

Answer: Feed rate required=5 x 57.296 / 0.75=382 degrees per minute

Feed Rate Calculation for Linear Interpolation with Rotary Axis


Caution concerning the feed rate must be applied when linear interpolation
between the rotary axis and the Z-axis is done. The tangential feed rate along the
tool path becomes high when the arc length of the rotary axis move is relatively
short in comparison to the travel distance along the Z-axis. The feed rate must be
reduced, accordingly. It can be calculated as shown in the example, below.

Example: Machining is done on the OD of a 1.5” diameter part, rotating the C-


axis Angle = 30° while moving the Z-axis minus 1”, at the same time.
The desired feed rate along the tool path F = 5”/minute.
Calculate the feed rate to be used for the interpolation command: G1G98 H60.
W-1.0 F___?

Steps for calculation of the tangential feed rate:

1. Calculate the length of the 30° arc segment on the periphery of a 1.5”
diameter circle: Arc length=2Rxπ/360x60=2x0.75x3.14/360x30=0.392”

2. Calculate the length of the tool path: L= Square root of (0.392²+1²)=1.07”

9
3. Calculate the time it should take for the 1.07” long cut, applying the feed rate
of 5” per minute. Time = 60/5x1.07=12.84 seconds.
4. Calculate the feed rate in degrees per minute that is required for a rotation of
30 degrees in12.8 seconds: F=30/12.8*60=141 degrees per minute.

Or apply the following formula, where: F = feed rate in inches per minute,
A= C-axis rotation angle
L = Length of the tool path

F ° per minute =F (IPM) x A / L

Feed rate in degrees per minute =5 x 30 / 1.07=141 degrees per minute

Command line for above example: G1G98 H60.0 W-1.0 F141.

10
SPINDLE MODE AND ROTARY AXIS MODE COMMANDS

For PUMA Lathes, equipped with a C-axis, the program commands as shown
below apply. Commands are shown for turning mode and for live tool mode,
separately.

Main Spindle Mode

For turning operations on the main spindle, the commands as shown in the
table, below are applicable. These commands may be used at the initial
program start-up in Turning-Mode or when switching from Live Tool-Mode
to Turning-Mode.

Spindle designation, P- Assignments

Spindle speed calls must also include the spindles address as follows:

Main Spindle P11 (M03 S1000 P11) (M04 S1000 P11) (M05 P11)
Sub-Spindle P13 (M03 S1000 P13) (M04 S1000 P13) (M05 P13)
Live tool P12 (M03 S1000 P12) (M04 S1000 P12) (M05 P12)

Command Explanation
M5, M3 or M4 These commands are normally used for starting or
Must be used with:
stopping the main and sub spindle.
P11 for Main Spindle
P13 for Sub Spindle
G0 G18 G40 Use these G-codes at the beginning of any program segment
G80 where “Canned cycles” G81through G88 or cutter
compensation G41, G42 is used. G18 (X-Z Plane select,
default on power up)
G99 IPR-feed mode should always be used for turning. (G99-
mode is set as default on power-up)
G96 S__P__ Constant surface speed control command is used for turning
only. Not to be used for drilling, tapping, milling or thread
cutting.
G97 S__P__ Constant (RPM) control command. Use G97 for drilling,
tapping milling or thread cutting. (G97-mode is set as default
on power-up).

11
Rotary axis mode (C-Axis or A-Axis connected)
For Live Tool operations, the commands as shown in the table, below are
applicable. These commands may be used at the initial program start-up in Live
Tool-Mode or when switching from Turning-Mode to Live Tool Mode.

Command Remarks
M35 This command is used for switching from Turning-Mode
to C-Axis Mode.
The main spindle now serves as the C-axis.
G0 G40 G80 Use these G-codes at the beginning of any program segment
where “Canned cycles” G81through G88 or cutter
compensation G41, G42 is used.
M90 C-axis unclamp-command. Use at the beginning of any
program segment where C-axis clamp function (M88 or M89)
is used.
G28 H0 C-axis Reference-point-return command. This command
should be used always after the C-axis has been newly
activated.
G50 C__ G50 “C “only! No other axis. This may be used to pre-set the
C-axis coordinates, at the reference point, if desired.
G97 S__M03 P__, or Constant (RPM) control command must be used always
M04 P__ when C-axis is active. (G97-mode is set as default on power-
up).
Note: The G96 command must never be used in Live
Tooling Mode.
M206 Allows simultaneous spindle rotation of more than one
spindle at a time. This command is used just after sub spindle
positioning is done. It will keep the live tool spindle running.
G97 S__M119 P13 Sub spindle positioning (when applicable)

M03 P12 Live tool spindle-forward rotation command.


M04 P12 Live tool spindle-reverse rotation command.

M89 C-axis high pressure clamp. Use only when necessary.


(See above)
G99 IPR-feed mode may be used for any live tool operation,
except on machines built before 1998. (G99 set default on
power-up).
G98 IPM-feed mode may be used for any live tool operation.
Preferably, the IPR (G99) feed mode should be used, if
possible. For machines built before 1998, the IPM-feed mode
must be applied for Live-Tooling operations.

12
M-Codes for switching the Rotary axis Name
The table below shows special M-codes that apply for PUMA 1500SY, 2000SY
and 2500SY models, only. These M-codes simplify programming by re-naming
the rotary axis name assignment and the rotary axis-axis clamp M-codes. These
M-codes call the sub programs as registered in NC-parameter tables # 6071
through # 6079.

M-Code Description
M289 Sets the C-axis clamp M-Code as M89 (normal)
The A-axis clamp M-code is M189
M289 Calls program O9001
M389 Sets the C-axis clamp M-Code as M189
The A-axis clamp M-code is M89
(used when the C-axis is switched from the main spindle to the
sub spindle)
M389 Calls program O9002
M290 Sets the normal rotary axis assignments:
The C-axis is located at the main spindle.
The A-axis is located at the sub spindle.
M290 Calls program O9003
M291 Inverts the rotary axis assignments:
The C-axis is located at the main spindle.
The A-axis is located at the sub spindle.
M291Calls program O9004

13
ANGULAR POSITIONING FUNCTION FOR SPINDLES
Angular positioning function for spindles can be utilized for machining with live
tools. Angular positioning is applied typically on the sub spindle for the PUMA
MS-series turning centers.

Spindle orientation
When the spindle orientation option is provided the command M19 S0 P11 is
used for positioning the main spindle at a preset rotation angle. Spindle
orientation is used for applications such as bar pulling of polygon shaped stock,
in-feeding of polygon shaped bar material from a bar feeding device, positioning
of the chuck for loading of work pieces, etc.

Parameter Settings related to Spindle Orientation


Entering data at system parameter 4077 does setting of the orientation reference
angle.

Main Spindle: #4077 S1


Sub Spindle: #4077 S3

Data range for parameter setting: zero ~ 4096, positive or negative value.
One full rotation (360 degrees)=4096 units. One unit equals 0.088 degrees.
(360/4096=0.088 degrees) One degree equals 11.3636 units.
(4096=1000 Hexadecimal value, or 4096=Bit 12 =1 Binary value
(1’0000’0000’0000)

Caution: Parameter 4077 S2 must not be changed. This parameter sets the
live tool spindle orientation position that is critical about alignment of the drive
coupling.

Angular spindle positioning


On machines where the spindle positioning option is available, positioning at a
spindle rotation angle is possible in angular increments of 0.1 degrees. This
function cannot do interpolation with another axis.

Angular positioning of the main spindle


The command for main spindle positioning is as follows:
Zero-degree angle: G97 S0 M19 P11
180-degree angle: G97 S1800 M19 P11 (multiply positioning angle by 10)
Any angle: G97 S3599 M19 P11 (not to exceed 3600 units)

Once commanded, the spindle is held in position under power by the spindle
motor. The M3 S__ P11, or M4 S__ P11 command cancels spindle positioning.

System parameter 4077 S-1 sets the reference angle for the main spindle.

14
Angular positioning of the Sub spindle
The command for sub spindle positioning is as follows:
Zero-degree angle: G97 S0 M119 P13
180-degree angle: G97 S1800 M119 P13 (multiply positioning angle by 10)
Any angle: G97 S3599 M119 P13 (not to exceed 3600 units)

The M3 S__ P13, or M4 S__ P13 command cancels spindle positioning.

System parameter 4077 S-3 sets the reference angle for the sub spindle.

Angular Spindle positioning and spindle locking


When the spindle locking option is provided, angular positioning and locking of
the spindle is possible. Spindle locking is available on the sub spindle for all
PUMA MS-type turning centers. Angular positioning of the sub spindle is done
the same way as described, above. However, locking of the spindle is available
at 5° intervals, only. Hence, the angular positioning command is to be done in 5-
degree increments from zero (S-command in 50-unit increments).

• Once the spindle has been positioned at the desired angle, it can be firmly
locked by the M-code M189. The teeth of a gear attached to the spindle will
be in alignment with the hydraulically powered locking pin every 5 degrees.

• No M-Code is used for unlocking the spindle. Spindle positioning or


spindle rotation command unlocks the spindle, automatically.

• System parameter 4077 S3 is used for adjustment and setting the alignment
between the gear teeth and the locking pin.

15
DRILLING AND TAPPING WITH LIVE TOOLS ON THE C-AXIS

Canned cycles for hole machining with the C and Z-axis

Z-axis peck drilling, C-axis positioning

G83 C___Z___Q___ P___F___

Z-axis tapping

G84 C___Z___F___

Notes: C = C-axis position, X = X-end position, (diameter), Q = peck distance (No


decimal point allowed with the Q. Repeat Q on each subsequent line), P = Dwell,
F = Feed Rate.
C-axis clamping command M89 is optional. It can be added to the cycle, as
shown in the example, below.

Example: Drilling and Tapping on the Front Face of a part


Drill (4) Holes, diameter 0.201 on the front face equally spaced on a 1.5”
Diameter circle, 0.45” deep. Peck depth is 0.125”. Clamp the C-axis during
drilling. Tap the 4 holes, ¼-20-UN, and 0.35 deep.

Peck Drilling Program Tapping Program (Rigid Mode)


G0G40G80G99 G0G40G80G99
M90 M90
M35 M35
G28 H0 G28 H0
T0707 T0808
G97S2500M03P12 G0C0Z.5
G0C0Z.5 X1.5 M8
X1.5 M8 Z.1
Z.1 G97S1000M29P12
G83C0Z-.45.Q1250F.005M89 G84C0Z-.35F.05M89
C90.Q1250M89 C90. M89
C180.Q1250M89 C180. M89
C270.Q1250M89 C270.M89
G0G80Z.5M90 G0G80Z.5M90
X8.Z4.M05P12 X8.Z4.M05
M34 M34
M1 M1

16
Canned cycles for hole machining with the C and X-axis

X-axis peck drilling, C-axis positioning

G87 C___X___Q___ P___F___

X-axis tapping

G88 C___X___F___

Notes: C = C-axis position, Z = Z-end position, Q = peck distance (No decimal


point allowed with the Q. Repeat Q on each subsequent line), P = Dwell, F =
Feed Rate.
C-axis clamping command M89 is optional. It can be added to the cycle, as
shown in the example, below.

Example: Drilling and Tapping on the OD of a part


Drill (4) Holes, diameter 0.201, located at Z (minus)-0.5”. Holes equally spaced
around a 2” OD. Drill through into the 1.5” diameter bore. Peck depth is 0.125”.
Clamp the C-axis during drilling. Tap (4) holes ¼-20-UN, 0.35 deep from the OD.

Peck Drilling Program Tapping Program (Rigid Mode)


G0G40G80G99 G0G40G80G99
M90 M90
M35 M35
G28 H0 G28 H0
T0909 T1010
G97S2500M03P12 G0C0Z.5
G0C0Z.5 X2.25 M8
X2.15 M8 Z-.5
Z-.5 G97S1000M29P12
G87X1.3C0Q1250F.005M89 G88X1.3C0F.05M89
C90.Q1250M89 C90. M89
C180.Q1250M89 C180. M89
C270.Q1250M89 C270.M89
G0G80X2.15 G0G80X2.2
Z.5 Z.5
X8.Z4.M05P12 X8.Z4.M05P12
M34 M34
M1 M1

17
DRILLING AND TAPPING WITH LIVE TOOLS ON THE SUB
SPINDLE
The canned cycles shown below can be applied for drilling and tapping
operations on the sub spindle on PUMA-MS type machines. Angular spindle
positioning is applied.

Z-axis peck drilling on the sub spindle


G83 Z___Q___ P___F___

Z-axis tapping
G84 Z___F___

Example: Drilling and Tapping on the Face


of a part using Sub Spindle positioning.

Drill (4) Holes, diameter 0.201 on the face equally spaced on a 1.5” Diameter
circle, 0.45” deep. Peck depth is 0.125”. Clamp the C-axis during drilling. Tap
holes ¼-20-UN, 0.35 deep.

Peck Drilling Program Tapping Program (Rigid Mode)


G0G40G80G98 G0G40G80G98

T0707 T0808
G97S2500M03P12 G0Z.-5
M206 X1.5 M8
G0Z-.5 Z.-1
X1.5 M8 S0M119P13
Z.-1 M98P1235
S0M119P13 S900M119P13
M98P1234 M98P1235
S900M119P13 S1800M119P13
M98P1234 M98P1235
S1800M119P13 S2700M119P13
M98P1234 M98P1235
S2700M119P13 G0G80 Z-.5
G0G80 Z-.5 X8.Z4.M05P12
X8.Z4.M05P13 M01
M01
TAPPING SUB PROGRAM
DRILLING SUB PROGRAM O1235
O1234 M189G98
M189G98 G97S1000M29P12
G83Z.45Q1250F12.5 G84Z.45F50.
G80Z-.1 G80Z-.1
M99 M99

18
The canned cycles shown below can be applied for drilling and tapping
operations on the sub spindle on PUMA-MS type machines. Angular spindle
positioning is applied.

X-axis peck drilling on the sub spindle


G87 X___Q___ P___F___

X-axis tapping on the sub spindle


G88 X___F___

Example: Drilling and Tapping on the OD of


a part using Sub Spindle positioning.

Drill (4) Holes, diameter 0.201, located at Z 0.5”. Holes equally spaced around a
2” OD. Drill through into the 1.5” diameter bore. Peck depth is 0.125”. Clamp the
C-axis during drilling. Tap the (4) holes ¼-20-UN, 0.35 deep from the OD.

Peck Drilling Program Tapping Program (Rigid Mode)


G0G40G80G98 G0G40G80G98
M35 M35
T0707 T0808
G97S2500M03P12 G0Z-.1
M206 X2.25 M8
G0Z-.1 Z.5
X2.15 M8 S0M119P13
Z.5 M98P1235
S0M119P13 S900M119P13
M98P1234 M98P1235
S900M119P13 S1800M119P13
M98P1234 M98P1235
S1800M119P13 S2700M119P13
M98P1234 M98P1235
S2700M119P13 G0G80 Z-.5
G0G80 Z-.5 X8.Z4.M05P12
X8.Z4.M05P12 M1 TAPPING SUB PROGRAM
M1 DRILLING SUB PROGRAM O1235
O1234 M189G98
M189G98 G97S1000M29P12
G87x1.3Q1250F12.5 G88x1.3F50.
G80Z-.1 G80Z-.1
M99 M99

19
POLAR COORDINATE INTERPOLATION FUNCTION G12.1

On a Turning Center that is equipped with a C-axis


(rotary axis), interpolation between the linear axis
“X” and the rotary axis “C” is possible by use of
the G12.1-function. This function simplifies
programming of shapes to be machined on the
front face of a part, such as the rectangular shape
with rounded corners as shown here.
Machining of such shapes is accomplished by use
of an end mill that is attached to a “Z-axis live tool
attachment”, with the end mill pointing toward the
front face of the part.

Programming with the G12.1-function is done on the X-C coordinate system


plane. In this coordinate system plane the C–axis is regarded as a linear axis
instead of a virtual rotary axis.
Programming is done similar to the
way it is done on a basic X-Y plane.
Linear or circular interpolation can
be done. Cartesian coordinates are
used for defining either the part
shape or the tool path geometry. In
the G12.1-mode the control
converts Cartesian coordinates to Polar coordinates, automatically.

Layout of the X-C coordinate system plane

• The diagram above shows the X-C coordinate system plane as viewed
when looking at the front face of the main spindle.
• The address “X” defines a point by the distance from origin horizontally on
diameter (Positive or negative value). “On diameter” means: twice the
actual distance from origin.
• The address “C” defines a point by the actual distance vertically from
origin (Positive or negative value). “C” is defined in linear units of
measurement, not in angular units.

20
Notes on programming with the G12.1 function

• Plane selection
The G18-plane select command must be active in G12.1-mode. On
turning centers the X-Z coordinate system plane (G18) is set as the
default plane. System parameter settings related to the G12.1-funtion are
normally set to allow polar coordinate interpolation in the G18-plane.

• Coordinate system origin


The Origin of the X-C coordinate system is fixed at the center of the
revolving work spindle. The origin (X0, C0) must not be shifted.

• Angular orientation of the X-C coordinate system plane


Angular orientation is set by the absolute C-axis (angle) that exists at the
time when entering the G12.1 – mode. For example: when G0 C60.0 has
been commanded before entering the G12.1-mode, the X-C coordinate
system plane is set on a 60° angle relative to both the horizontal and
vertical axis.

• Positioning command
“G0” cannot be used in G12.1-mode. Positioning is done in G1- mode,
using a feed rate of around 30” to 60” per minute, depending on
application.

• Feed command
In the G12.1-mode the feed velocity can be specified either by units of
linear distance per minute (G98-mode) or by units of linear distance per
spindle revolution (G99-mode). Use of excessive feed rate can adversely
influence the accuracy of a machined shape. Recommend range of feed
rates for polar coordinate interpolation is from 1” to around 10” per minute,
depending on application. Feed rate must be reduced in case when
circular interpolation is done near the X-C zero point. Velocity of the rotary
axis may become excessive and as a result, servo errors or servo
overload may occur.

• Incremental axis move command


Address “U” can be used for incremental move command along the X-
axis. U= horizontal distance from a current point to the next point – on
diameter.
Address “H” can be used for incremental move command along the C-
axis. H= vertical distance from a current point to the next point.

• Linear interpolation command


G1 X__C__F__ (absolute) or: U__H__ F__ (incremental)

21
Interpolation between X and Z or between C and Z cannot be done. Z-axis
move command must be specified in a separate block, not together with
X-axis or C-axis commands.

• Circular Interpolation command


(G2 or G3) X__C__R__F__ (absolute) or: U__H__R__F__ (incremental)
Addresses X and C define the end point of an arc. The address “R”
defines the radius of an arc when the included angle of the arc segment is
180° or less.
Addresses “I” and “J” can be used for defining the arc center.
Address “I” specifies the actual distance and direction (+/-) from the start
point of the arc to the arc center along the X-axis.
Address “J” specifies the actual distance and direction (+/-) from the start
point of the arc to the arc center along the C-axis.
Command for arc of less than 360°: (G2 or G3) X_ C_ I_ J_
Command used for full circle: (G2 or G3) I_ or: J_

• Cutter compensation function


In polar coordinate interpolation the cutter compensation function should
always be used, regardless of programming method. Size control on a
machined shape is done by use of the cutter compensation function, not
by changing the X-offset data.

G40 must be active at the time when entering the G12.1-mode.


G41 or G42 must be commanded after the G12.1- command.
G40 should be commanded before canceling the G12.1-mode.

Cutter compensation commands should be done together with a G1-


command, moving the tool onto the part or away from it. For example:
G1 G41 X_ or C_ F_ (“Ramp-ON”)
G1 G40 X_ or C_ F_ (“Ramp-OFF”)
When ramping ON or OFF along the X-axis the moving distance must be
greater than or equal to twice the “R-data”. When ramping ON or OFF
along the C-axis the moving distance must be greater than or equal to the
“R-data”.

• Cutter compensation data setting


Cutter compensation data (R-offset) must be set under column “R” located
in the tool offset data tables. Data setting depends on the programming
method that has been used:
a) When the program-coordinates represent the geometry of the tool
center-path, the R-data is set at zero, initially.
b) When the program-coordinates represent the geometry of the actual
part shape, the actual cutter radius must be input on the R-data.

22
The “Tool nose type”- data (located at the column “T” at the tool-offset
tables) is part of the cutter compensation data. On the offset number that
is used for a milling cutter the “T” data must be set = 0.
Tool offset data, including the “R” and “T”-data are activated by the tool
offset command. (The “D”-command, such as used in machining center
programming cannot be used).

• Adjusting the part size


Suppose that an external hexagon shape was machined over-size by
0.005” (measurement across the flats). Under the condition that the cutter
compensation function has been properly applied in the program, size
adjustment on this part can be done by reducing the “R”-data in the tool
offset table by the amount of -0.005”. Size control cannot be accomplished
by adjusting the X-axis offset.

• Tool types to be used / touching-off tools


Machining in the G12.1-mode is normally done by use of a flat bottom end
mill that is pointing toward the end-face of the part. This tool must be
touched off (along the X-axis) at the cutter center, not at the periphery of
the tool. Once the X-axis tool-offset for a given tool has been established
accurately, it must not be modified later in attempting to control the size of
the machined part. (Please refer to paragraph above). Erroneous tool
offset data causes faulty part geometry.

In polar coordinate interpolation, a flat bottom end mill that is pointing


toward the OD of the part cannot produce an acceptable part shape. On
some applications, a ball-nose end mill that is pointing toward the OD of
the part can be used. This type of tool must be touched off along the X-
axis at the center of the ball-nose.

• Programming the Tool approach point


Caution must be used when positioning the milling cutter near the OD of a
part. The X-axis tool offset data is based on the cutter center, not the
periphery. The tool approach point for the X-axis is calculated as follows:
X= Part OD + Cutter diameter + clearance.

23
Programming example

The figure above left shows two flat surfaces to be machined on the front face of
a 1.25” diameter part. A clearance diameter of 1.300” that intersects with both of
the flats has been added to the figure on the right. The coordinates (X 1.0,
C0.4153) located at the upper right corner and (X1.0, C-0.4153) located at the
lower right corner will be used for preparing the machining program. The axial
depth of the flats is assumed to be at Z-0.375” from the front face. A ½” diameter
end mill is used for machining the two flats.

Hints on programming and machining with the polar coordinate


interpolation function

• Before programming the part, a simple part layout should be prepared. An


end-view of the part should be drawn, showing the part just the way it is
held by the chuck as viewed when looking toward the face of the chuck on
the main spindle. In this layout the X-coordinates run horizontally and the
C-coordinates run vertically. X-plus direction runs to the right of X0, C-plus
direction runs from zero to 12 o’clock. The X-coordinates are specified on
diameter, C-coordinates are specified as actual distance. Radii are
specified as actual distance.
• For programming purposes it is assumed that the cutter approaches the
part always from the 3 o’clock position (X- axis plus side) on your layout.
When deciding the cutting start point it is recommended placing it at the
plus-side of the X-axis.
• During machining of the flat surfaces as shown in the above example, the
cutter does not actually move in a vertical direction. In the G12.1-mode,
machining of a contour shape is accomplished by moving the cutter
horizontally along the X-axis and by rotating the C-axis, synchronously.
• When negative X-axis coordinates are commanded in the program the
cutter center will not actually travel past the minus side of X0. Instead, the
C-axis is rotated around automatically so that machining on the negative
quadrant is accomplished with the cutter always remaining on the plus-
side of the X-axis.

24
Deciding the machining method
The milling operation on this part can be programmed in various different ways.
Examples for three different programming methods A, B and C are shown.

Programming Method “A”


The figure on right shows
programming of the tool center-
path. The cutter to be used is ½”
on diameter. The X and C
coordinates must be calculated,
considering both the part
geometry as well as the cutter
radius. This programming method
is used mostly by CAM software
programming systems.

Both surfaces are being machined


by use of a continuous tool path.
No actual machining is done on
the 0.650”-radius. The cutter will
clear the 1.25” part diameter. Hence the cutter can be moved around the arc at a
high feed rate.
The cutter compensation function should be applied, always. However the cutter
radius amount entered in the tool-off data should be set either at zero or at a
small (plus) amount which will make the part come out slightly oversize, initially.

Programming example, using programming method “A”

M5P11 Stop the main spindle


M35 C-axis select command
G40 Cutter comp cancel command
G13.1 Polar coordinate interpolation cancel command
G30 U0 W0 Tool exchange point
G28 H0 Zero return C-axis
T0808 (3/4” DIA. CUTTER) When the cutter center path is programmed the R-
offset for the tool is set = 0, initially. After
inspecting the first part, adjust the R either plus or
minus, as needed for size control.
When
G97 S2000 M03P12 Live tool spindle ON
G0Z.1 C0 M8 Z-approach, C-axis at zero degrees
X2.15 X-approach (1.3+0.75+0.1=2.15)
G12.1 Polar coordinate interpolation ON
G1 G98 C.5339 F60. C-axis position at the first point of the contour
shape, use IPM - feed mode, if desired (Note: the
C-command at this time represents a linear

25
dimension – not degrees)
G1 G41 X1.75F7. (1) Cutter comp ON
X-axis position at the first point of the contour
shape
Z-.88 Move the Z-axis to the desired depth on the part
G1 C-.5339 (2) C-axis position at the second point of contour
G2 X-1.75 R1.025 F60. (3) X-axis position at the third point of the contour (No
cutting is done on the arc, a high feed rate is used
for the arc move )
G1 C.5339 F7. (4) Fourth point of the contour
G1 G40 X-2.15 F60. Cutter comp OFF
The X-axis must move at least two times the “R”-
value that is used in the tool offset
G13.1 Polar coordinate interpolation OFF
G99 G0 X2.5 Retract X-axis & switch back to IPR- feed mode
Z.1 M05P12 Retract Z-axis and stop milling spindle
G30 U0 W0. M9 Second reference point return
M34 Release C-Axis mode
M1 Optional stop

Programming Method “B”

By this method, both surfaces are being machined in one


continuous path similar to example “A”, above. However,
in this case the X-C coordinates used for programming
are the same as the actual part geometry, as shown on
the figure on right. The cutter compensation function must
be applied in this case, without fail. The cutter radius
amount entered in the tool-off data must be the same as
the actual cutter radius to be used, or slightly larger to
produce a slightly oversized part.

Programming Method “C”

By this method, each one of the flats is


programmed separately. One of the
surfaces is machined at 0-degree angle
first as shown on the left figure. Next,
the part is rotated 180° then the other
surface is machined as shown on the
figure on right. The cutter
compensation function must be applied
in this case, without fail.

26
Preparing the machining program for methods “B” and “C”
“Climb Cutting” is done in both cases. Hence the cutting start point coordinates in
both cases are at X1.0 C0.4153. The automatic cutter compensation function
G41 is applied. The cutting start point is located on the top right corner on each
of the figures shown. The part dimensions as shown on the sketches can be
‘plugged’ directly into the program.

Programming Method “B” Programming Method “C”

NC Program –machining both of the NC Program – doing each flat


flats in one continuous path, using a separately, using a 1/2”-diameter
1/2”-diameter cutter. cutter.

N100 (MILL TWO FLATS N100 (MILL TWO FLATS)


CONTINUOUS PATH) G40
G40 G13.1
G13.1 T0101
T0101 M05P11
M05P11 M35
M35 G28 H0
G28 H0 G97 S1000 M03 P12
G97 S1000 M03 P12 G0 Z.1 C0
G0 Z.1 C0 X1.8
X1.8 G12.1 (FLAT #1)
G12.1 G1 G98 C0.4153 F20.
G1 G98 C0.4153 F20. G1 G41 X1.0 F5.
G1 G41 X1.0 F5. Z - .375 (depth of cut)
Z - .375 (depth of cut) C-0.4153
C-0.4153 G40 X1.8 F20.
G2 X-1.0 R.650 F60. G13.1
G1 C0.4153 F5. G0 Z0.1
G40 X-1.8 G0 C180.
G13.1 G12.1 (FLAT #1)
G0 Z0.1 G1 G98 C0.4153 F20.
G0 X—Z—M35 G1 G41 X1.0 F5.
M34 Z - .375 (depth of cut)
M1 C-0.4153
G40 X1.8 F20.
G13.1
G0 Z0.1
G0 X—Z—M35
M34
M1

27
CYLINDRICAL INTERPOLATION

Principle of Operation
The cylindrical interpolation function “G7.1” allows circular interpolation between
the Z-axis and a rotary axis. Programming is done using Cartesian coordinates
for the Z-axis and degrees of rotation for the rotary axis. Arc specifications are
given in units of linear measurement. Typical applications for this function include
engraving operation for lettering or for milling of cam shapes on the
circumference of a cylinder.

Layout of the Z-C Coordinate system


The sketch below shows the Z-C coordinate system.

Programming Notes
• Plane Select Command: G18

• G7.1H < 0 or G7.1 C < 0 activates the cylindrical interpolation function. An H-


value or a C-value greater than zero specifies the radius of the cylinder to be
machined.
For example: Cylindrical interpolation mode is set by this command:
G1 G18 W0 H0 followed by G7.1 H0.75 in separate block.

• G7.1 H0 or G7.1 C0 cancels the cylindrical interpolation function.

28
• Z-coordinates specify absolute dimensions parallel to the length of the
cylinder. The letter “W” can be used for incremental specification along the Z-
axis.
• C- axis rotation is specified as an absolute angle in degrees. The letter “H”
for incremental angle specification can be used, instead.

• X-coordinates specify absolute dimensions on the OD of the cylinder. The


letter “U” can be used for incremental specification along the X-axis.

• Positioning G0 cannot be done when cylindrical interpolation mode is active.

• Linear interpolation G1 is possible with all three axes, simultaneously.

• Circular interpolation (G2, G3) between Z-linear coordinates and C- angular


coordinates is performed automatically by the control using the G7.1-function.
Circular interpolation between X and C axis cannot be done.

• Arc radius specification. The letter “R” must be used for arc specifications.
Letters I J or K cannot specify an arc radius in cylindrical interpolation.

• Cutter Radius Compensation Functions (G40, G41and G42) can be


applied. The cutter radius as registered under “R” on the tool-offset tables is
applied for cutter radius compensation automatically.

• Tool path: For programming purposes, the surface on the circumference of a


cylinder is laid out in the shape of a rectangle whose length is equal to the
cylinder diameter times pi. The height equals the height of the cylinder. The
tool path is then projected onto this rectangle. Horizontal dimensions are to
be converted from linear to angular C axis coordinates. The Vertical
dimensions represent Z-axis coordinates. The zero point of the coordinate
system can be decided at an arbitrary location.

Formula for converting the length of an arc to degrees of rotation


The use of RADIANS can simplify conversion from linear units to degree-units.
To convert the length of an arc for a segment of a circle into degrees of rotation,
the following formula is applied:

C = Degrees of rotation, L = linear distance


R = radius of the circle, 57.29578° = one C º = L / R x 57.29578°
radian.

C º = L / D x 114.59156°

29
When diameter “D” is used to define the circle, use this formula:
114.59156° = two radians.

Cylindrical Interpolation Example


The letters “J and R” to be engraved around the OD of a 2.9”-diameter part,
using cylindrical interpolation-function G7.1 A 1/32-radius ball-nose end mill is
used for engraving the letters. In order to define the tool path, coordinates X, C
and Z for every point on the entities are required.

Layout of tool path


In order to simplify programming the cylindrical surface of the part to be
machined is represented in form of a flat sheet that measures the equivalent of
the part’s circumference vertically and the part’s length in horizontal direction.
Orientation of the part is the same as viewed looking down from the operator’s
side of the machine when the part is clamped in the chuck.

30
Converting linear coordinates to degrees of rotation

For the sample part at hand the factor for converting linear units into degrees is
calculated as follows: 1 / 2.9 x 114.59156 = 39.514331º per 1” of linear distance

C º = L x 39.5143º

The table below shows the start-points and end-points for the lettering

X Z C
Start point of letter J 2.9 - 0.7 0.4 * 39.5143 = 15.806º
End point of letter J 2.9 -.45 15.806
Start point of letter R 2.9 -0.3 -0.1 * 39.5143 = -3.951º
End point of letter R 2.9 -.3 -0.4 * 39.5143 = -15.806º

N100 (ENGRAVING LETTERS J & R )


G0G80G40G18
M35
G7.1H0
G28H0
T1111
G97M03S4000P12
G0Z-.7
G0X3.1.C15.806 M8
G1G98
G18W0H0
G7.1H1.45
X2.9F5.
C3.951
Z-.45
G3Z-.45C15.805R.15
G1X3.5F200.
Z-.3C-3.951
G1X2.9F5.
Z-.7
C-10.8664
G3Z-.45C-10.866R.125
G1C-3.9514
C-10.866
G1Z-.3C-15.8057
G1X3.1F200.
G7.1H0
G30U0M05P12
G30W0
M34
M1

31
Y-AXIS PROGRAMMING FOR PUMA TURNING CENTERS

Instructions shown here apply for PUMA CNC Turning Centers, series 1500Y,
2000Y and 2500 Y or SY with FANUC-control models 18i –T and 31i.

Y - Axis Design
In theory, the Y-axis on a Turning Center runs perpendicular to the X and the Z-
axis. Machining on three planes is possible by use of live tools. On the machine
models as listed, above, the Y-axis virtually runs on a 30-degree angle to the X-
axis. This design allows for compact construction and improved stability. When
Y-axis movement is commanded, both the X-axis and the Y-axis are moving
automatically synchronized so that the resultant tool path of the Y-axis is
perpendicular to the X-axis.

32
X-Y Plane Layout

Note:

Travel on the negative side of the X-axis is restricted due to limitation of the X-
axis stroke. The X-axis will let the cutter center travel approximately 2 inches
maximum, radially past the spindle center. However, the interference between
the turret body and the sub spindle body varies, depending on the position of the
Z and B-axis. The safe maximum travel past center is only 0.1 inch, radially.

33
Y- Z Plane Layout

Note:

Part Layout for programming purpose is done, looking at the part from the back
of the cutter, not from the front of the machine. Positioning of the cutter in axial
direction is done by the X-axis. Dimensions specified on diamter.

Notes for Y-axis operation

• During manual Zero-return mode the Y-axis first then the X-axis must be
“homed”, independently in this order.

• The rotary axis must be active in order to command Y-axis operation in


automatic mode or in MDI-mode. M-codes M35 or, M135 switch the
rotary axis ON, allowing Y-axis operation in automatic mode or in MDI-
mode.

• During machining operations with non-rotating tools, the Y-axis must


remain “parked” at its home position. M34 and M134 switch the rotary-
axis OFF, prohibiting commands for Y-axis movement.

34
• Reference Return Command for Y-axis: G28 V0, (or G30 V0)

• Y-axis positioning Command: G0 Y___ (+/-) Absolute command


G0 V___ (+/-) Incremental command

• The zero point for the Y axis can be shifted by work offsets G54 through
G59 or by coordinate system setting command G50.

• Plane select command G17 allows circular interpolation between the X


and Y-axis. Due to limitation of the X-axis movement at negative
coordinates, please pay attention, avoiding collision that may occur
between the turret and sub spindle body.

• Plane select command G18 (default on power up) allows circular


interpolation between the X and the Z-axis.

• Plane select command G19 allows circular interpolation between the Y


and the Z-axis

• Helical interpolation between Y and Z-axis with the X-axis used for the
axial dimension of the helix is possible when the “3-D Helical
Interpolation Option” is available on the system.

• Diameter programming is used. All X-coordinates are “on diameter”.

35
WORK PIECE TRANSFER BETWEEN MAIN AND SUB SPINDLE

Transferring a work piece from one spindle to the other is done with the B-axis
that transports the sub spindle. Moving the sub-spindle onto the main spindle
allows “handing-over” the work piece from one spindle to the other. Normally,
machining is done on the main spindle at first then the part is transferred to the
sub spindle for additional machining to be done on the back-end of the part.

The following aspects need to be considered for work transfer operations:

• Chucking equipment on the sub-spindle.


The sub-spindle that normally serves as the “Receiver” of the transferred part
uses either a three-jaw chuck or a True-Length type collet chuck. No axial
movement of the collet must occur while closing the chuck, such as is the
case with a standard collet chuck. The use of compactly designed collet
chucks is preferred. For example: Type 3-J DL, with reduced collet nose
diameter is best. Larger chucks cause interference with turret and cutting
tools during parts transfer.

• Chucking equipment on the main-spindle.


The main-spindle can use either a three-jaw chuck or a standard collet
chuck, for most applications. The use of compactly designed collet chucks is
preferred. For applications that employ the sub spindle for advancing
(“pulling”) of bar stock, either a three-jaw chuck or a True-Length type collet
chuck is required.

• Non oriented, synchronized spindle rotation.


This feature allows synchronizing the spindle rotation with both spindles
engaged on the work piece at the same time. Synchronization can be done
from spindle stopped condition. Both spindles operate in unison, at precisely
synchronized rotation. This type of synchronization is applied typically for
turning of long shafts that are clamped by the chucks at each end.
Alternatively, it can be used for cutting off a part from the bar stock then
transferring it to the sub spindle. Timing or orientation between the two
spindles in this case is at random. (See details for parameter settings, below)

• Oriented and synchronized spindle rotation.


Synchronization of the spindle rotation angle on each spindle is done before
commencement of synchronized rotation. This function establishes and
maintains the rotation angle relationship between entities machined
separately on the main spindle and on the sub spindle. The condition for
using this feature is that only one spindle is connected to the work piece. The
chuck on the other spindle needs to be opened, before synchronization can
occur. (See details for parameter settings, below)

36
• B-axis torque control functions.
a) B-axis torque skip function. This function allows seating of the sub spindle
chuck in axial direction firmly against the work piece to be transferred,
before closing the chuck.
b) Cutoff confirmation. B-axis torque control function is used for checking the
actual separation between work piece and bar stock after cutoff.

Parameter Settings related to Spindle Synchronization

Phase synchronization angle (orientation) is shifted by following system


parameters:

Main Spindle: System parameter #4034-S1


Sub Spindle: System parameter #4034-S3

Data range for parameter setting: zero ~ 4096, positive or negative value.
One full rotation (360 degrees)=4096 units. One unit equals 0.088 degrees.
(360/4096=0.088 degrees) One degree equals 11.3636 units.

Setting the orientation angle for Spindle Synchronization

When a part is to be transferred from the main to the sub spindle, precise
alignment with the jaws or collet chuck on the sub spindle may be required. For
example: when gripping on a polygon shape with the sub-spindle chuck, the
following procedure is used for checking and setting the synchronized orientation
position.

1. In handle mode, move the B-Axis with the sub spindle chuck as close to the
face of the part. Both spindles must be allowed to rotate freely, without
touching the part.
2. Execute following commands, either in MDI-mode or Auto-mode, single block:

M131 -Sub Spindle Chuck interlock bypass command


M169 -opens the sub spindle chuck
G97 S0 M213 P11 -synchronizes orientation on both spindles by rotating
each of the spindles at their respective orientation
position, as set by parameter #4034. Both spindles are
now locked in position by the spindle motor.

3. At this time, the synchronized orientation position can be checked. Alignment


error is measured by use of the C-axis position display.
4. Set “Origin” to“H”, on the “Relative” position display for the C-axis.

37
5. Switch to handle mode. The motor releases both spindles at this time. Do not
touch or move the spindles. Activate the C-axis mode by pushing the C-axis
button on the operation panel.
6. Find the angular mismatch between jaws and the work piece by rotating the
C-axis until the sub spindle jaw lines up with the part.
7. Adjust data setting on parameter #4034, accordingly. Repeat steps 2 to 8 until
perfect alignment is established.

Oriented spindle synchronization command


• The jaws or collet of one of the two chucks must be opened before the
spindle synchronization command. This will allow each spindle to perform
orientation, independently, without being connected to each other by the work
piece.

The following series of commands are used in the order as shown when
synchronizing the spindles:

M131 Sub Spindle Chuck interlock bypass command


M169 opens the sub spindle chuck
G97 S1000 M213 P11 Synchronizes spindles at 1000 RPM with
or M214 P11 simultaneous acceleration or deceleration.

Synchronized spindle stop command

When both spindles are running in synchronized mode, it is possible to do a


synchronized stop. Both spindles come to a stop, synchronously. The
synchronized spindle stop command is used only when both spindles are
engaged with the work piece.

M205 P11 Synchronized stop command

Non- oriented spindle synchronization command


Synchronization command is possible with both chucks engaged with the work
piece.

G97 S1000 M203 P11 Synchronizes spindles at 1000 RPM with


M204 P11 simultaneous acceleration or deceleration.

Caution with G96 in Spindle Synchronization Mode

The G96-command may cause erratic acceleration or deceleration when


machining is done on relatively small work diameter. This is typically the case
during cutoff operation where the cutoff tool is moved to X0. Consequently,
slippage between the sub spindle chuck and the work piece may occur, when

38
both chucks are engaged with the work piece. Slippage causes error in angular
relationship between entities that are machined on each spindle separately.

It is best to do the cutoff operation as follows:

1. Position the cutoff tool a little above the bar stock diameter with the Z-axis at
the correct position for cutting off.
2. Start-up the main-spindle in G96-mode and move the B-axis close to the part.
3. Cut a groove to the smallest possible part diameter, leaving enough material
so that the part will not break away from the bar stock. At the bottom of the
groove, slightly retract the tool. (“U0.01)
4. Synchronize both spindles in G97-mode at the desired RPM. Then gripping
the part with the sub spindle, completing the cutoff operation.

For reliable operation in spindle synchronization mode, the spindle speed should
be kept between 60 and 2500 RPM.

39
Torque Control Functions for B-axis

The table below shows special G-codes that apply for PUMA 1500SY, 2000SY
and 2500SY models, only. These G-codes command B-axis torque control
functions. G-codes call the sub programs as registered in NC-parameter tables #
6050 through # 6059.

Live center support with Sub Spindle

G-Code Description
G300 Live-Center Support with B-axis “ON”
G300 Calls program O9010

Program Example:
Attach a suitable work support device to the sub spindle, such as a live-
center. Then insert the following commands into the program:
1. G0 B___ ---Position the B-axis within 0.1” to 0.2”, clear of the end of
the work-piece that is to be supported. Synchronize the spindle RPM
for main and sub spindle, if desired.
2. G300 B-200. –G300 calls the sub program. The “B”-command sets
the torque for the B-axis. “B-200.” Means 20% of the available torque
applied on the B-axis in “minus” direction. The B-axis now
commences to move in negative direction, pushing the live center
onto the work, applying the specified torque.
3. X__Z__ Start the machining operation with live center in place.
4. G301 --G301 Calls the sub program O901, canceling the torque
control mode. This command is required before positioning the B-
axis.

G301 Center Support “OFF” (cancel)


G301 Calls program O9011, canceling the torque control function.

40
Cutoff Confirmation

G-Code Description
G350 Cutoff confirmation
G350 Calls program O9011
Use the cutoff confirmation command for cutoff operation in combination
with work piece transfer from main to sub spindle only.

Program Example:
Upon separation of the work-piece from the bar stock, retract the cutoff
tool with the X-axis, so that the tool clears the OD of the bar stock. Now,
insert the following commands into the program:

1. G350----Calls the sub program O9012. The B-axis will now attempt
to close the gap that exists between the bar stock and the work
piece, automatically. When the movement of the B-axis is less than
0.04”, an alarm occurs, signaling that the work piece has not been
separated from the bar stock. When the movement is greater than
0.04, no alarm will occur.
2. G4 U0.5---A dwell time of 0.5 seconds is required.
3. G0 B___ Positioning command, clearing the sub spindle out of the
way.

41
Sample Program1: Spindle Synchronization, Cutoff and Parts Transfer to
Sub Spindle

Program includes torque-skip function.

N1400( CUTOFF & TRANSFER)


G0G40G80G99
G50S3000M31 M31= main spindle interlock bypass
G53 B0M131 M131=sub spindle interlock bypass
G30U0W0
T0303
M169 M169=open sub spindle Chuck
G97S1000M203 P11 M203= spindle synchronization-command
G0X3.Z-2.250S1500 P11 Positioning the cutoff tool at cutoff position
G0B-15.2 S2000 P11 Step up rpm & bring sub chuck to within 0.1”
to face of part
M86 Torque Skip data setting
G31G98B-15.8 0 F30. Command the B-axis to move by 0.1” past the
point where the shoulder on the chuck
bottoms out on the face of the part.
G99M168 M168= close sub chuck
M87 Torque Skip data setting cancel
G0X2.1M8 Final approach with cutoff tool
G1X0 F.002 Cutoff
Part in sub spindle is now separated from bar
stock. Sub spindle axial pressure releases,
pushing slightly against cutoff tool.
M5 Stop main spindle. This twist-off any
remaining material
G0B-3.5 Retract sub spindle
G0X3.M9 Retract cutoff tool
G30U0W0
M05 P13 Stop sub spindle
M1

42
Sample Program 2: Spindle Synchronization, Cutoff and Parts Transfer to
Sub Spindle

Program includes torque-skip function, pickup position check and cutoff


confirmation G350.

N200(CUTOFF & TRANSFER)


G0G18G40G99
G53B0
G30U0
G30W0M131 Interlock bypass
T0303
G0Z-2.895M114 Move Z at cutoff position
Clean sub spindle chuck
G97S1275M03P11X2.1 Start main spindle, move X to part
X1.2
G0B-14.986(1-INCH CLR.OF FACE) Move B close to part
G96S400P11M8 CSS & coolant on
G1G99X.25F.002 Pre-cutoff
U.02 Tool release
G97S1500P11M169 Fixed spindle rpm
M203 P11 Synchronize spindles
G4U1.
G0B-17.386(.1CLR) B within 0.1” clear of shoulder
M86 Torque skip on
G31G98P99B-17.9F5. (B-17.811) B to to skip position
G99M87 Torque skip off
WHILE[#5104NE0]DO1 Wait until B quits moving
END1
#100=0 Set alarm flag at zero
#524=#5024 Store the current machine Coordinates
of the B-axis.
#525=#524+17.811 Calculate the difference between actual
and theoretical pickup position.
#525=ABS[#525] Make it a positive number
IF[#525GT0.005]GOTO205 Check the tolerance. Skip to N205 if
not in tolerance. If within tolerance, do
next line.
M168 Close the sub chuck
M8
G1G99X-.01F.002 Cutoff all the way
X2.1F.01 Feed the tool back out (B-axis may
exert pressure onto the tool)
G0X4. Clear the tool away from stock

43
N206G350(CUTOFF B axis attempts to close the gap left by
CONFIRMATION) the cutoff tool. If it cannot move at least
0.05”, alarm occurs.
G4U.5 Must have dwell command here
GOTO206 Skip the alarm flag
N205#100=1 Set the alarm flag
N206G53B0M105 Retract B axis
G30U0M9 Retract X
G30W0M5 Retract Z, main spindle off
IF[#100NE1]GOTO208 If alarm flag not set, skip to N208
#3000=1(PICKUP N0 GOOD) Alarm condition. #525 shows the
deviation from the expected pickup
position
N208M1

Bar Feed Operation

M-codes used for the bar feed operation


M05 P11 Stop the spindle
M9 Stop the coolant
M31 Chuck interlock bypass (allows operation in auto mode with chuck open)
M69 Open the chuck
M50 (M51) Bar-push command (M50 or M51 depending on wiring connections)
M68 Close the chuck

Bar feed sub programs


Using separate sub-programs that contain all the necessary commands for the
bar feed operation is recommended. (See sample programs O7000 and O7001
shown below)

Bar Stopper (Tool for stopping the bar)


When a SERVO-type bar feeder is at hand, ordinarily no bar stopper is required.
However, in some cases the user may choose to use a bar-stopper anyway for
improved accuracy and reliability. When a bar stopper is used, the bar-feed
program needs to be modified, accordingly.

Top cutting the front face of a new bar


The front end-face of a new bar in some cases may have to be cutoff or
machined separately from the normal machining operation. In this case, the top
cutting can be included in the bar-reload sub program if desired.

44
End of bar-signal
The bar feeder sends a signal to the NC at the time when there is not enough
material left for the next bar-advance. The bar-end signal operates the Block-
Skip Switch “/ 2” on the NC. This feature allows the NC to distinguish between
normal bar feed out and bar reload operation. When M50 is commanded at the
time the bar-end signal is “ON” the bar feeder ejects the remnant material first,
then automatically loads a new bar. The bar stopper must not block the front of
the spindle at this time.

Timer Setting (M50/M51 time-out)


Timer T32 in the PMC-Parameters sets the time-out for the M50 & M51 function.
Standard setting is 20 seconds. When the bar feed out or bar reload, time
exceeds the set time an alarm occurs.

Inserting the bar feed command into the machining program


In a bar-machining program, the bar feeding operation is done typically after all
machining operations have been completed. The bar feed command is normally
inserted into the machining program near the bottom.

Bar Feed Sub Program Call


N7000 M98 P7000 (Bar feed sub program call.) Insert this command near the
bottom the machining program.

Bar Reload Sub Program Call


/2M98 P7001 (Bar reload sub program call.) This command is needed only for
applications where a bar-stopper is used or when top cutting is done. Insert this
command into the bar feed sub program O7000.

Program Examples for use with bar feeder


Example 1: Bar Feed Sub Program, for use without bar stopper or without top
cutting.

O7000 (Bar Feed)


M05 P11 (Spindle stop)
M9 (Coolant off)
M31 (Chuck Interlock-bypass command)
M69 (Open chuck)
M50 (M51) (Bar-push command)
M68 (Close chuck)
M99 (Return to Main Program)

45
Example 2: Bar Feed Sub Programs, for use with bar stopper, without top cutting.

O7000 (Bar Feed with bar stopper) O7001 (Bar Reload)


M05 P11 (Spindle stop) M50(M51)
M9 (Coolant off) M68
T0707 (Bar stopper) M99
M31 (Chuck interlock-bypass
command)
M69 (Open chuck)
/2 M98 P7001 (If bar-end, go to reload program)
G0 *Z1. (Positioning Z)
X0 (Positioning X)
G1G98 *Z0.02 *F100. (Feed to bar stop position)
M50(M51) (Bar-push command)
M68 (Close chuck)
G0 W1. (Retract Z)
*X6. (Retract X)
M99 (Return to Main Program)

*Note* Please modify the Z-coordinates and feed rate shown above to suit the
application.

Example 2: Bar Feed Sub Programs, for use with bar stopper, with top cutting.

O7000 (Bar Feed with bar stopper) O7001 (Reload & top cut)
M05 P11 (Spindle stop) M50(M51)
M9 (Coolant off) M68
M31 (Chuck interlock-bypass M68
command)
M69 (Open chuck) T0505 (Cutoff tool)
/2 M98 P7001 (If bar-end, go to reload program) G96 S500 M3
T0707 (Bar stopper) G0 Z-.5 M8
G0 *Z1. (Positioning Z) X1.1
X0 (Positioning X) G1 G99 X-.02 F.002
G1G98 *Z0.02 *F100. (Feed to bar stop position) G0 X6. M9
M50(M51) (Bar-push command) Z1. M5
M68 (Close chuck) M99
G0 G99 W1. (Retract Z)
X6. (Retract X)
M99 (Return to Main Program)

46
M-Code List for DOOSAN PUMA-Turning Centers
The table below shows M-codes that apply for most PUMA models
manufactured from year 2009 and up. Gantry-loader models are not
included in this list. Actual availability of the M-codes as shown may vary,
depending on machine type and optional equipment furnished.
In order to verify the existence of an M-code within the PMC; please use the
search-function in the PMC-Ladder. Press “Search” then key-in the M-code
then press “Search”, again. When the function is not present, the message:
“Symbol not found” is displayed. Please note that some of the M-codes
that exist in the PMC will not work unless the necessary peripheral devices
or Control Option for a specific M-function has been installed.

Note for programming of M-Codes: In a NC program, one M-code only is allowed


per block. An M-code can be specified on the same block, together with other NC-
commands.

Feature Code: S= Standard M-code for all machines


B= Standard M-code for Machines with B-axis & Sub Spindle
C= Standard M-code for Machines with C-axis
Y= Standard M-code for Machines with Y-axis
Option = Peripheral device and or Control Option is required

** M-Codes with same number but different function, or for different machine type

M-Code Description Feature


M00 Program Stop S
M1 Optional Stop S
M2 Program Reset or Rewind and Reset S
M3 Main Spindle Forward S
M4 Main Spindle Reverse S
M5 Main Spindle Stop S
M7 High Pressure Coolant Option
M8 Flood Coolant On S
M9 Coolant Off S
M10 Parts Catcher Advance Option
M11 Parts Catcher Retract Option
M14 Main Spindle Air Blow ON B
M15 Main Spindle Air Blow OFF B
M17 Machine Lock ON S
M18 Machine Lock OFF S
**M19 P11 Main Spindle Orientation S
**M19 P11 360° Spindle Positioning, Spindle Indexing using S- Option
command, 0.1° increment. G97S1800M119P13=180°
Indexing command (FANUC Control Option Required

47
M-Code Description Feature
M20 Loader-Call, Robot Call Option
M21 Optional Block Skip ON Y
M22 Optional Block Skip Cancel Y
M24 Chip Conveyor Run Option
M25 Chip Conveyor Stop Option
M28 Polygon Mode ON (FANUC Control Option Required) C
**M29 Rigid Tapping, Main Spindle rotation (Option)
**M29 Rigid Tapping, Live Tool Spindle rotation C
**M29 Rigid Tapping, Sub Spindle rotation B
M30 Program End With Rewind and reset S
M31 Interlock by-pass (Cycle operation with main chuck in S
open condition or Tailstock advance / retract with
spindle running)
M34 C1-Axis Select Off C
M35 C1-Axis Select On C
M36 Auto Steady Rest Base Unclamp Option
M37 Auto Steady Rest Base Clamp Option
M38 Steady Rest Right (1) Clamp Option
M39 Steady Rest Right (1) Unclamp Option
M40 Gear Change Neutral
Machines
with
Spindle
Drive Gear
Box
M41 Gear Change Low
Option
M42 Gear Change Middle
M43 Gear Change High
Option

M48 Tapping mode select (Override Invalid)


M49 Tapping mode cancel (Override Valid) S
M50 Bar Feeder Command 1
M51 Bar Feeder Command 2
M54 Parts Count
M55 Cycle Repeat after M02 / M30 S
M58 Steady Rest Left (2) Clamp Option
M59 Steady Rest Left (2) Unclamp Option
M66 Left Chucking Low Pressure Option
M67 Left Chucking High Pressure Option
M68 Main-Chuck Clamp S
M69 Main-Chuck Unclamp S
M70 Dual-Pressure Tailstock, Quill Advance with Low Option

48
M-Code Description Feature
M73 Touch Probe Off Option
M74 Touch Probe On Option
M76 Q-Setter Swing Arm Up Option
M77 Q-Setter Swing Arm Down Option
M78 Tailstock Quill Advance Option
M79 Tailstock Quill Retract Option
M80 Z-Axis Mirror Image Off S
M83 Z-Axis Mirror Image On S
M86 Torque Skip Active (M86 P99) S
M87 Torque Skip Cancel S

**M89 Main Spindle High Pressure Clamp, (C-axis) S


**M89 Main Spindle Locking, in 5-degree intervals S
(Standard on PUMA 160G only)
M90 Main Spindle Unclamp (160G and C-axis, standard) B
M91 User M-code, finish signal by external switch Option
M92 User M-code, finish signal by external switch Option
M93 User M-code, finish signal by timer on PMC Option
M94 User M-code, finish signal by timer on PMC Option

M98 Sub-Program Call S

M99 End of Sub-Program / Return to main program S


M108 Sub Spindle TSC-Coolant ON B
M109 Sub Spindle TSC-Coolant OFF B
M110 Interference Check OFF Option
M111 Interference Check ON Option
M114 Sub-Spindle Air Blow On B
M115 Sub-Spindle Air Blow Off B
M116 Part Eject (Work piece eject) B
**M119 P13 Sub-Spindle Orientation B
**M119 P13 Sub-Spindle Positioning using S-command, 0.1° B&C
increment
M131 Interlock By-pass (Cycle operation with Sub-Spindle B
chuck in open condition)
M134 C-2 Axis Select Off Option
M135 C-2 Axis Select On Option
M138 Bed Shower Coolant On S
M139 Bed Shower Coolant Off S
M161 Right Spindle Winding Change Low Speed B
M162 Right Spindle Winding Change High Speed B
M166 Sub Chuck Low Pressure Clamp Option
M167 Sub Chuck High Pressure Clamp Option

49
M-Code Description Feature
M168 Sub-Chuck Clamp B
M169 Sub-Chuck Unclamp B

**M189 Sub Spindle Locking, in 5-degree intervals B&C


**M189 Sub Spindle (A –axis) High pressure Clamp Y&B
**M190 Sub Spindle Unclamp (A-axis) Y&B
M200 Tool Load Monitor Off Option
M201 Tool Load Monitor On Option
M203 P11 Spindle Forward, Main & Sub Synchronization (non B
oriented)
M204 P11 Spindle Reverse, Main & Sub Synchronization (non B
oriented)
M205 P11 Spindle Synchronous Stop B
M206 Spindle Rotation Release, Two Spindle Control B or C
Main, Sub or Live Tool Spindle independent speed
command during simultaneous spindle operation.
M213 P11 Spindle Forward, Main & Sub Phase Synchronization B
(with orientation)
M214 P11 Spindle Reverse, Main & Sub Phase Synchronization B
(with orientation)
M250 Service Mode Option
Allows restricted machine operation for service or
setup purposes while the safety door is open.
M289 Canned Cycle Auto-Unlock M89 on Left Spindle Option
M389 Canned Cycle Auto-Unlock M89 on Right Spindle Option
M290 Normal, C-Axis Assignment, C on Left A on Right Option
M291 A-Axis Assignment on Left C-Axis on Right Option

50
Miscellaneous programming information

G76 – THREADING CYCLE – TWO LINE FORMAT


This format is applicable with Fanuc Controls, T series, systems 0, 16, 18, 21 and 30
series. Also: Mitsubishi 500L, 50, 64.

FIRST COMMAND LINE: G76 P021060 Q05 R10 (see details, below)

P 02 10 60 Specify “P”, followed by a six digit number.

02 =Number of finishing passes at the bottom of the thread (02 means 2


finishing passes) (Sets PAR 5142– see note 1)
10 =Chamfer-width or pullout-width at the “Z” end position of the thread.
Chamfer size is expressed in1/10th fractions of the lead. 10: means the
chamfer-width equals one lead. 05: means the chamfer width equals ½ of
lead. 00: means no chamfer. See note 3, below. (Sets PAR 5130)
60 =The included angle between the thread flanks. This decides the in-feed
angle for the tool. In-feed angle = ½ of the input angle. Normally, 60° is
used for standard threads. Other angles, such as: 80°, 60°, 55°, 30°, 29°
or 0° can be specified (Sets PAR 5143)

Q05 =Minimum cutting depth. The system automatically calculates the


depth of cut, which becomes progressively smaller with each pass.
It rounds off the depth for the last pass to the Q-value. (Sets PAR
5140)
R10 =Material allowance for finishing passes at bottom of thread (Sets
PAR 5141)

SECOND COMMAND LINE: G76 X__ Z__ P__ Q__ R__ F__ (see details,
below)

X =Diameter of the thread. For an external Thread – specify the minor diameter.
For an internal Thread - specify the major diameter. In case of taper threads,
specify the diameter at the opposite end from the start point.

Z =End position of the thread.

P =Height of the thread. Calculation: Major diameter minus minor diameter,


divided by 2 (Radius value, without decimal point) See note 2 below.

Q =Depth of the first cut. If “P” and “Q” are the same, the thread is cut in a single
pass. (Radius value without decimal point) See note 2, below

R =Taper: Radial height difference of taper slope. Calculate the height


difference for the taper as follows: I =TAN [taper angle per side] times thread

51
length + Z-clearance at start of thread]. Specify a negative value for OD taper
thread. Specify a positive value for ID taper thread.

F =Lead. Distance between two threads. (1 divided by the pitch), six digits
allowed after the decimal point.

NOTES:
1.) Upon execution of the G76-cycle all data contained on the first G76-
command line is automatically stored in the parameter tables.
2.) 2.) Specify values for “P” and “Q” without a decimal point. For
example: 0.0001”=1, 0.001”=10 0.01”=100 0.1”=1000
1.0”=10000
3.) Specifying a chamfer (pullout distance) reduces possible damage to
the last thread lead near the Z-end position.

Right hand thread / left hand thread


Right hand or left hand thread cutting is decided by the direction of spindle
rotation (M3 or M4) and by the cutting direction (Z- minus or Z-plus).
Additionally, please apply the following rule:
“Right hand Thread – use right hand tool” - “Left hand thread – use left hand tool”

Right hand thread on Main Spindle: Left hand thread on Main Spindle:
Use a right hand tool, insert down Use a left hand tool, insert up
Spindle rotation direction = M03 P11. Spindle rotation direction = M04 P11
Cutting direction Z-minus Cutting direction Z-minus

Right hand thread on Sub Spindle: Left hand thread on Sub Spindle:
Use a right hand tool, insert up Use a left hand tool, insert down
Spindle rotation direction = M04 P13. Spindle rotation direction = M03 P13
Cutting direction Z-plus Cutting direction Z-plus

Thread height / depth of first pass


In the G76 Cycle the depth of the first pass decides the number of passes
Calculation of either the number of passes or the depth of the first pass is
possible by applying one of the formulas as shown below:

D = the depth of the first pass.


P = the radial height of a single thread.
N = Number of passes (minus spring passes)

52
Example 1: Cutting a 1”-10 UNS -external thread:

Action Program
1. Enter modal commands G0 G18G40 G97 G99
2. Enter the tool and tool offset command T0101
3. Enter the Spindle command G97 S100 M03 P11 (M04 P11)
(Always use G97, NEVER G96)
4. Turn ON the coolant M8
5. Move the tool to the start position of the
thread
For “Z”, allow 125 % of the Lead for G0Z0.125
start-up clearance away from the thread
Move “Z” fist, then “X”.
For “X”, allow 0.05” ~ 0.1” diametrical X1.075
clearance above the major diameter
(OD)
6. Enter the thread cutting cycle G76 P020560 Q05 R0
G76 X0.875 Z-1.0 P625 Q250 F0.1
7. Return the tool to the tool exchange point G0 X___
Move the “X”-axis first, then “Z” G0 Z___
Optional stop M1

Example 2: Cutting a 1”-10 UNS -internal thread:

Action Program
1. Enter modal commands G0 G18 G40 G97 G99
2. Enter the tool and tool offset command T0101
3. Enter the Spindle command G97 S100 M03 P11(M04 P11)
(Always use G97, NEVER G96)
4. Turn ON the coolant M8
5. Move the tool to the start position of the thread
For “Z”, allow 125 % of the Lead for start-up G0Z0.125
clearance away from the thread
Move “Z” fist, then “X”.
For “X”, allow 0.05” ~ 0.1” diametrical X0.800
clearance below the minor diameter (I.D.)
6. Enter the thread cutting cycle G76 P020560 Q05 R0
G76 X1.0 Z-1.0 P500 Q150 F0.1
7. Move the tool out of the bore, clearing the face G0 Z___
8. Return the tool to the tool exchange point G0 X___
Move the “X”-axis first, then “Z” G0 Z___
Optional stop M1

53
G76 – THREADING CYCLE - SINGLE LINE FORMAT
(Applicable with Fanuc Controls, T series, systems 10, 11, 12 AND 15T)

Fanuc Controls, system 0, 16, 18 and 21 T-series can use this format when the
tape format setting option is available. In this case, please display the “SETTING
PAGE”, then check the “TAPE-F” -setting. When “TAPE-F” is set = 0, the two-
line format is valid (see previous page). When it is set = 1, the single-line format
is valid. This setting will affect all G70-series canned cycles, not just the
threading.

Cycle Format: G76 X__ Z__ I__ K__ D__ F__ A__ P__ Q__

X =Diameter of the thread. For an external Thread – specify the minor


diameter.
For an internal Thread - specify the major diameter.
In case of taper threads, specify the diameter at the opposite end from the
cutting start point.

Z =End position of the thread.

I =Taper: Radial height difference of taper slope. Calculate the height


difference for the taper as follows: I =TAN [taper angle per side] times
thread length + Z-clearance at start of thread]. Specify a negative value for
OD taper thread. Specify a positive value for ID taper thread.

K =Height of the thread, radius value. Calculation: Major diameter minus


minor diameter, divided by 2.

D =Depth of the first cut (Radius value). When “K” and “D” are the same, the
thread is `cut in a single pass.

F =Lead: distance between two threads. (1 divided by the pitch), six digits
allowed after the decimal point.

A =Tool nose angle or angle between thread flanks. This decides the in-feed
angle for the tool, feeding in at ½ of the input angle. Normally, 60° is used
for standard threads. (Range: 0 to 120 degrees, in 1-degree increments).
When “A” is omitted it is regarded as 0, straight in-feed is applied.

P =Cutting method:
P1=constant chip load, single edge cutting
P2=constant chip load, zigzag in-feed, alternating cutting edges
P3=constant cut depth, single edge cutting
P4=constant cut depth, zigzag in-feed

54
Q =Spindle rotation shift angle. Data range is from 0 to plus or minus 360000
(360 degrees = 360000, without decimal point). This function is used for
cutting of multiple-Lead threads. For example: in case of a 3-start thread
the shift angle is 120 degrees between each thread. Hence, the first
thread lead is cut, using Q=0, the second at Q=120000 and the third at
Q=240000, where the Z-axis start position remains the same for each
thread.

Example:

Program for cutting a 1”-10 two-start external thread:

G0 G18 G40 G97 G99


T0101
G97 S100 M03 P11 (M04 P11)
M8

G0Z0.125
X0.800
G76 X0.875 Z-1.0 K0.0625 D0.025 F0.2 A60 P1 Q0 (FIRST THREAD)
G76 X0.875 Z-1.0 K0.0625 D0.025 F0.2 A60 P1 Q180000 (SECOND THREAD)
G0 X___
G0 Z___
M1

NOTE: The thread lead for multi start threads is calculated as follows:

Lead = Number of Starts


X Pitch .

Example:

For the 1”-10 two start thread above:

Pitch = (1 ÷ 10 TPI) = 0.1


Number Of Starts (2) X Pitch (.1) = .2
F=0.2

55

Вам также может понравиться