NC Programming for PUMA Turning Centers Equipped with Live Tools, Sub Spindle, Y- Axis

Similar documents
SHOP NOTES. GPocket Guide and Reference Charts. for CNC Machinists. Made in the U.S.A.

NZX NLX

Fixed Headstock Type CNC Automatic Lathe

527F CNC Control. User Manual Calmotion LLC, All rights reserved

Turning and Lathe Basics

Miyano Evolution Line

The enriched system configuration designed based on the loader head accommodates a wide range of automation needs.

Table of Contents. Preface 9 Prerequisites 9. Key Concept 1: Know Your Machine From A Programmer s Viewpoint 13. Table of Contents

Lathe Series Training Manual. Live Tool for Haas Lathe (including DS)

SAMSUNG Machine Tools PL2000SY CNC TURNING CENTER

Figure 1: NC Lathe menu

Mach4 CNC Controller Lathe Programming Guide Version 1.0

Table 5.1: Drilling canned cycles. Action at the bottom of the hole. Cancels drilling canned cycle Intermittent or continuous feed.

PROGRAMMING January 2005

CNC Turning Center with 2 Spindles, 2 Turrets and 1 Y-axis Slide BNE-34/51

Prof. Steven S. Saliterman Introductory Medical Device Prototyping

CNC TURNING CENTER 3. (06. 07) Head Office. Seoul Office. Head Office & Factory. HYUNDAI - KIA MACHINE AMERICA CORP. (New Jersey Office)

Fixed Headstock Type CNC Automatic Lathe

Computer Numeric Control

Fixed Headstock Type CNC Automatic Lathe

COMPUTER INTEGRATED MANUFACTURING LABORATORY (14AME31)

CNC LATHE TURNING CENTER PL-20A

FNL-220Y / 220SY / 200LS Series CNC Turning-Milling Machines Linear Way

Chapter 22 MACHINING OPERATIONS AND MACHINE TOOLS

Basic NC and CNC. Dr. J. Ramkumar Professor, Department of Mechanical Engineering Micro machining Lab, I.I.T. Kanpur

SAMSUNG Machine Tools

4. (07. 03) CNC TURNING CENTER

Touch Probe Cycles TNC 426 TNC 430

HAAS AUTOMATION, INC.

BHARATHIDASAN ENGINEERING COLLEGE NATTRAMPALLI DEPARTMENT OF MECHANICAL ENGINEERING LABORATORY MANUAL ME6411-MANUFACTURING TECHNOLOGY LAB- II

G02 CW / G03 CCW Circular Interpolation Motion (Group 01) - Mill

Improved productivity for complex machining. Sliding Headstock Type CNC Automatic Lathe

KDL 30M HORIZONTAL TURNING CENTER

Table of Contents. Table of Contents. Preface 11 Prerequisites... 12

Cincom Evolution Line

Motion Manipulation Techniques

Techniques With Motion Types

Projects. 5 For each component, produce a drawing showing the intersection BO.O. C'BORE 18 DIA x 5 DEEP FROM SECTION ON A - A

Touch Probe Cycles itnc 530

HAAS AUTOMATION, INC.

CNC TURNING CENTRES B1200-M-Y

BNA-42MSY2. Fixed Headstock Type Automatic CNC Lathe BNA

OmniTurn Start-up sample part

MACHINIST S REFERENCE GUIDE

Servomill. Multipurpose Milling Machine Servomill. Conventional Multipurpose Milling Machine.

1640DCL Digital Control Lathe

SAMSUNG Machine Tools

Lathe Series Training Manual. Haas CNC Lathe Programming

High Precision CNC Lathe

Multipurpose Milling Machine Servomill 700. Conventional Multipurpose Milling Machine.

CAD/CAM/CAE Computer Aided Design/Computer Aided Manufacturing/Computer Aided Manufacturing. Part-10 CNC Milling Programming

Prof. Steven S. Saliterman Introductory Medical Device Prototyping

Cincom Evolution Line

High Precision, High Productivity Swiss Type Turning Center

CNC TURNING CENTRES B750 B1250

This just may be the Rotary Transfer machine you ve been waiting for.

Cincom Evolution Line

FBL-250Y/320Y/SY Series. CNC Turning-Milling Machines Linear/Box Way

Preview Sample. Date: September 1, 2010 Author: Matthew Manton and Duane Weidinger ISBN:

Single Spindle Gang Tool Lathe

HNK VERTICAL TURNING CENTERS R Series

FANUC SERIES 21i/18i/16i TA. Concise guide Edition 03.01

Trade of Toolmaking. Module 6: Introduction to CNC Unit 2: Part Programming Phase 2. Published by. Trade of Toolmaking Phase 2 Module 6 Unit 2

NUMERICAL CONTROL.

Manual Guide i. Lathe Training Workbook. For. Lathe Turning & Milling

Lathe. A Lathe. Photo by Curt Newton

WINMAX LATHE NC PROGRAMMING

Mill Series Training Manual. Haas CNC Mill Programming

SAMSUNG Machine Tools PL 1600G/1600CG GANG CNC TURNING CENTER

BNA42. Fixed Headstock Type CNC Automatic Lathe

KTM-16/20 TECHNICAL DATA

Machine Tool Technology/Machinist CIP Task Grid

CNC Barwork Turning Center. Sales Manual

High Performance Vertical Turning Center

Maier ML20D - Technical Details. for illustration purposes only. Maier CNC Swiss Type Lathe ML20D ProLine

Lesson 2 Understanding Turning Center Speeds and Feeds

SL 3500Y series Y-AXIS HORIZONTAL TURNING CENTER

Turning Center. Tan-Tzu Factory No.1, Lane 113, An-Ho Road, Tan-Tzu Hsiang, Taichung Hsien, Taiwan 427, R.O.C.

Broderik Engineering UK Limited Unit B, Buxton Rd Leek, Staffordshire ST13 6EJ

Getting Started. Terminology. CNC 1 Training

High Precision CNC Lathe

Study of Vee Plate Manufacturing Method for Indexing Table

Turning Center ACCUWAY MACHINERY CO., LTD. ISO 9001 FM

Sliding Headstock Type Automatic CNC Lathe M16-III / M16-V. "Evolution and Innovation" is the Future

SAMSUNG Machine Tools PL35 CNC TURNING CENTER

CNC Programming Guide MILLING

sliding head machine, furthers the quest for cost and performance featuring the ability to switch between guide bush and non-guide bush types.

Introduction to Machining: Lathe Operation

Module 2. Milling calculations, coordinates and program preparing. 1 Pepared By: Tareq Al Sawafta

ROOP LAL Unit-6 Drilling & Boring Mechanical Engineering Department

PL 35/35M/40 CNC TURNING CENTER

LAB MANUAL / OBSERVATION

SLV 1000/1000M VERTICAL TURNING CENTER

BNJ51 Fixed Headstock Type CNC Automatic Lathe

OmniTurn Training. Jeff Richlin OmniTurn Training Manual Richlin Machinery - (631)

Application and Technical Information Thread Milling System (TMS) Minimum Bore Diameters for Thread Milling

CHAPTER 6 EXPERIMENTAL VALIDATION AND RESULTS AND DISCUSSIONS

ROOP LAL Unit-6 Lathe (Turning) Mechanical Engineering Department

[ means: One-stop shop. EMCOMAT FB-450 L / FB-600 L. Universal milling machines with Heidenhain TNC 320 or EMCO Easy Cycle

the Art of turning 2017/3

Transcription:

NC Programming for PUMA Turning Centers Equipped with Live Tools, Sub Spindle, Y- Axis For PUMA Turning Centers 200M, 200MS, 230M, 230MS, 240M, 240MS, 300M, 300MS 1500Y/SY, 2000Y/SY, 2500Y/SY 1

TABLE OF CONTENTS ROTARY AXIS FUNCTIONS...6 C - Axis... 6 C-axis locking function... 6 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 (C-Axis Disconnected)... 11 Sub Spindle Mode (C-Axis Disconnected)... 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 Simplified canned cycles for hole machining with C and Z-axis... 16 Z-axis peck drilling, C-axis positioning... 16 Z-axis tapping... 16 Example: Drilling and Tapping on the Front Face of a part... 16 Simplified canned cycles for hole machining with the C and X-axis... 17 2

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 Principle of Operation... 20 Layout of the X-C coordinate system... 20 Programming Notes... 20 Polar Coordinate Interpolation Example... 21 Geometry Layout... 21 Cutter Compensation / Tool Offset... 21 NC Program for Sample Part... 22 CYLINDRICAL INTERPOLATION...23 Principle of Operation... 23 Layout of the Z-C Coordinate system... 23 Programming Notes... 23 Formula for converting the length of an arc to degrees of rotation... 24 Cylindrical Interpolation Example... 25 Y-AXIS PROGRAMMING FOR PUMA TURNING CENTERS...27 Y - Axis Design... 27 3

X-Y Plane Layout... 28 Y- Z Plane Layout... 29 Notes for Y-axis operation... 29 WORK PIECE TRANSFER BETWEEN MAIN AND SUB SPINDLE...31 Parameter Settings related to Spindle Synchronization... 32 Setting the orientation angle for Spindle Synchronization... 32 Oriented spindle synchronization command... 33 Synchronized spindle stop command... 33 Non- oriented spindle synchronization command...33 Caution with G96 in Spindle Synchronization Mode... 34 TORQUE CONTROL FUNCTIONS FOR B-AXIS...35 Live center support with Sub Spindle... 35 Cutoff Confirmation... 36 Sample Program1: Spindle Synchronization, Cutoff and Parts Transfer to Sub Spindle... 37 Sample Program 2: Spindle Synchronization, Cutoff and Parts Transfer to Sub Spindle... 38 BAR FEED OPERATION...39 M-codes used for the bar feed operation... 39 Bar feed sub programs... 39 Bar Stopper (Tool for stopping the bar)... 39 Top cutting the front face of a new bar... 39 End of bar-signal... 40 Timer Setting (M50/M51 time-out)... 40 Inserting the bar feed command into the machining program... 40 Bar Feed Sub Program Call... 40 Bar Reload Sub Program Call... 40 Program Examples for use with bar feeder... 40 4

M-CODE LIST FOR DAEWOO PUMA-TURNING CENTERS...42 M-Codes for switching the Rotary axis Name... 46 MISCELLANEOUS PROGRAMMING INFORMATION...47 G76 THREADING CYCLE TWO LINE FORMAT... 47 Programming Examples, using the G76-Thread Cutting Cycle... 48 G76 THREADING CYCLE - SINGLE LINE FORMAT... 50 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: Main Spindle Mode: Sub Spindle Mode: M-codes M33, M34, M35 switch the C-axis, ON M-codes M3, M4, M5 switch the C-axis, OFF M-codes M103, M104, M105 switch the C-axis, OFF 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. 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. There are two different locking functions available: Low-pressure clamp M88 (Pressure is adjustable. Normal setting is ~125 PSI) X/C axis interpolation is enabled while M88 is active. Rapid positioning is disabled. High-pressure clamp M89 (fixed at maximum hydraulic system pressure) Both, rapid positioning axis interpolation are disabled while M89 is active. Unlock command M90 Front view of Main and Sub spindle, PUMA 2500SY 6

+ + 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 Low-pressure clamp M188 (Pressure is adjustable. Normal setting~125 PSI) Axis interpolation is enabled while M88 is active. Rapid positioning is disabled. High-pressure clamp M189 (fixed at maximum hydraulic system pressure) Both, rapid positioning axis interpolation are disabled while M89 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 M390 sets the condition so that M89 clamps the C-Axis, M189 clamps the A- axis M391 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 (C-Axis Disconnected) 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 startup in Turning-Mode or when switching from Live Tool-Mode to Turning-Mode. Command M5,M3 or M4 G0 G18G40 G80 G99 G96 S G97 S Explanation These commands are normally used for starting or stopping the main spindle. In addition, they will automatically disconnect the C-axis. When the C-axis happens to be clamped, at the time unclamping will be done, automatically by these commands. Use these G-codes at the beginning of any program segment where Canned cycles G81through G88 or cutter compensation G41, G42 is used. G18 (X-Z Plane select, default on power up) IPR-feed mode should always be used for turning. (G99-mode is set as default on power-up) Constant surface speed control command is used for turning only. Not to be used for drilling, tapping, milling or thread cutting. Constant (RPM) control command. Use G97 for drilling, tapping milling or thread cutting. (G97-mode is set as default on powerup). Sub Spindle Mode (C-Axis Disconnected) For turning operations on the sub spindle, the commands as shown in the table, below are applicable. Command M105,M103 or M104 Explanation These commands are normally used for starting or stopping the sub spindle. In addition, they will automatically disconnect the C-axis. When the C-axis happens to be clamped, at the time unclamping will be done, automatically by these commands. 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 Live tool spindle rotation-stop command and C-axis-selection. This command is used for switching from Turning-Mode to Live- Tooling 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 M33, Constant (RPM) control command must be used always when M34 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 Sub spindle positioning (when applicable) M33 M34 M88 M89 G99 G98 Live tool spindle-forward rotation command. Also activates the C-axis. Live tool spindle-reverse rotation command. Also activates the C-axis. C-axis low pressure clamp. Use only when necessary. C-axis clamping may be required for heavy milling, drilling or broaching operations on relatively large diameters. C-axis high pressure clamp. Use only when necessary. (See above) IPR-feed mode may be used for any live tool operation, except on machines built before 1998. (G99 set default on power-up). 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 M289 M389 M290 M291 Description Sets the C-axis clamp M-Code as M89 (normal) The A-axis clamp M-code is M189 M289 Calls program O9001 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 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 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 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: Sub Spindle: #4077 S1 #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 180-degree angle: G97 S1800 M19 (multiply positioning angle by 10) Any angle: G97 S3599 M19 (not to exceed 3600 units) Once commanded, the spindle is held in position under power by the spindle motor. The M3, M4 or M5-command cancels spindle positioning. 14

System parameter 4077 S-1 sets the reference angle for the main spindle. Angular positioning of the Sub spindle The command for sub spindle positioning is as follows: Zero-degree angle: G97 S0 M119 180-degree angle: G97 S1800 M119 (multiply positioning angle by 10) Any angle: G97 S3599 M119 (not to exceed 3600 units) The M103, M104 or M105-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 Simplified canned cycles for hole machining with 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 G97S2500M33 G0C0Z.5 G0C0Z.5 X1.5 M8 X1.5 M8 Z.1 Z.1 G97S1000M29 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.M35 X8.Z4.M35 M1 M1 16

Simplified 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 the (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 G97S2500M33 G0C0Z.5 G0C0Z.5 X2.25 M8 X2.15 M8 Z-.5 Z-.5 G97S1000M29 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.M35 X8.Z4.M35 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 M35 M35 T0707 T0808 G97S2500M33 G0Z.-5 M206 X1.5 M8 G0Z-.5 Z.-1 X1.5 M8 S0M119 Z.-1 M98P1235 S0M119 S900M119 M98P1234 M98P1235 S900M119 S1800M119 M98P1234 M98P1235 S1800M119 S2700M119 M98P1234 M98P1235 S2700M119 G0G80 Z-.5 G0G80 Z-.5 X8.Z4.M35 X8.Z4.M35 M1 TAPPING SUB PROGRAM M1 DRILLING SUB PROGRAM O1235 O1234 M189G98 M189G98 G97S1000M29 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 G97S2500M33 G0Z-.1 M206 X2.25 M8 G0Z-.1 Z.5 X2.15 M8 S0M119 Z.5 M98P1235 S0M119 S900M119 M98P1234 M98P1235 S900M119 S1800M119 M98P1234 M98P1235 S1800M119 S2700M119 M98P1234 M98P1235 S2700M119 G0G80 Z-.5 G0G80 Z-.5 X8.Z4.M35 X8.Z4.M35 M1 TAPPING SUB PROGRAM M1 DRILLING SUB PROGRAM O1235 O1234 M189G90 M189G98 G97S1000M29 G87x1.3Q1250F12.5 G88x1.3F50. G80Z-.1 G80Z-.1 M99 M99 19

POLAR COORDINATE INTERPOLATION FUNCTION G12.1 Principle of Operation The polar coordinate interpolation function G12.1 simplifies programming of linear and circular interpolation between the X-axis and a rotary axis. Programming is done using Cartesian coordinates that are converted into polar coordinates by the control. Layout of the X-C coordinate system Programming Notes G12.1 activates the polar coordinate interpolation function. In this mode, the rotary axis C is programmed the same way as if it were a linear axis. Input of degree-units is no longer valid for the C-axis at this time. G13.1 cancels the polar coordinate interpolation function, restoring the rotary axis function back to degree-input. In G12.1-mode, a coordinate along the horizontal axis X is expressed as a diameter (twice the actual distance from origin). A coordinate along the vertical axis C is expressed as the actual, linear distance from origin. The origin (zero point) of the X-C coordinate system is fixed at the center point of the rotary axis. The origin cannot be changed. Syntax for Linear Interpolation command: G1 X C F Syntax for Circular Interpolation command: 20

G2 (G3) X C R (I ) (J ) F Programming of arcs is done the normal way. Letters I and or J, or letter R is used for arc specification. Z-axis moves must be commanded in a block separately from X-C moves. Cutter radius compensation commands (G40, G41 and G42) must be commanded during G12.1-mode only. The cutter radius as registered under R on the tool-offset tables is applied for cutter radius compensation automatically. The letter D for cutter radius compensation is not used. The tool-vector T at the tool-offset tables is set at zero when a milling cutter is used. Positioning command G0 is not allowed in G12.1-mode Plane select command G18 is used in G12.1-mode. Parameters #5460 & #5461 set the interpolation axis names for polar coordinate interpolation. Polar Coordinate Interpolation Example The sketch, above shows two flat surfaces to be milled onto a 1.232 outside diameter. The flat surfaces start at the front-face (Z0), ending at Z-0.625. A ¾ -diameter end mill is to be used for cutting the flats. Points 1 through 6 describe the tool path. The coordinates X1.950, C0.5339 represent the start point of the tool path. Geometry Layout When preparing a layout for the tool path geometry, it is advisable to start the tool path on the positive side of the X-axis. The negative side of X as a start point should be avoided. This is due to the limited travel of the X-axis on the negative side. A NC program for polar coordinate interpolation may include negative X- coordinates. The X-axis will not actually travel to the negative side of X0. Instead, the part is rotated around. In the example shown, no cutting is done on the 1.025-arc between points 3 and 4. The arc has been added, so that both flats can be machined in a continuous path. Since the arc is not actually machined, a high feed rate is applied going around the arc. Cutter Compensation / Tool Offset The sketch, above shows the dimensions for the tool-center path. In theory, cutter compensation might not be needed, in this case. However, it is advantageous to apply the cutter compensation function, regardless. Cutter compensation allows the operator to control the size of the entities machined by changing the R -value of the tool offset. 21

A ramp-on-move must be programmed, together with the cutter compensation command G41 or G40. A line perpendicular to the flat is to be constructed for the ramp-on move. Ramp-on Distance=0.1 when the tool center path is programmed. Ramp-on Distance=0.1 plus cutter radius, when the part geometry only is programmed. A ramp-off-move is required for cancellation of the cutter compensation, G40. A line in the same amount as shown, above, perpendicular away from the flat is to be programmed. In polar coordinate interpolation, size control cannot be achieved by adjusting the X-axis tool offset. Adjusting the R-value for the cutter compensation does size control. The X-axis offset represents the diametrical distance between the x-axis origin and the cutter center position. This offset value is usually zero, in case of a standard axial milling attachment. Once it is set correctly, the value must not be changed. Faulty tool offset data or faulty coordinate data may result in concave or convex shapes, instead of straight, linear shapes. NC Program for Sample Part (Note: The R -offset for this tool is set = 0 prior to cutting the part. After checking the part size, adjust R plus or minus, as needed for size control) M35 G40 G13.1 G30 U0 W0 G28 H0 T0808 (3/4 DIA. CUTTER) G97 S2000 M33 G0Z.1 C0 M8 X2.1 G12.1 G1 G98 X1.950 C.5339 F60. (Point 1) G1 Z-0.625 F10. G1 G41 X1.750 F7. (Point 2) G1 C-.5339 (Point 3) G2 X-1.75 R1.025 F60. (Point 4) (No cutting is done on the arc) G1 C.5339 F7. (Point 5) G1 G40 X-1.950 F60. (Point 6) G13.1 G99 G0 X2.5 Z.1 M35 G30 U0 W0. M9 M1 22

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. 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. 23

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 radian. C º = L / R x 57.29578 When diameter D is used to define the circle, use this formula: 114.59156 = two radians. C º = L / D x 114.59156 24

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. Converting linear coordinates to degrees of rotation 25

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 G97M33S4000 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 G30U0M35 G30W0 M1 26

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. 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. 27

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. 28

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 M33, M34, M35 switch the rotary axis ON, allowing Y-axis operation in automatic mode or in MDImode. During machining operations with non-rotating tools, the Y-axis must remain parked at its home position. M-codes M3, M4, M5, M103, M104, M105 switch the rotary-axis OFF, prohibiting commands for Y-axis movement. 29

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. 30

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) 31

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 a) Setting the data of keep relay K0, bit 0 decides the type of spindle synchronization that is performed. Non-oriented spindle synchronization: K0.0 = 1 Oriented spindle synchronization: K0.0 = 0 b) 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. Set keep relay 0.0=0 2. 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. 3. Execute following commands, either in MDI-mode or Auto-mode, single block: M131 M169 G97 S0 M203 -Sub Spindle Chuck interlock bypass command -opens the sub spindle chuck -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. 32

4. At this time, the synchronized orientation position can be checked. Alignment error is measured by use of the C-axis position display. 5. Set Origin to H, on the Relative position display for the C-axis. 6. 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. 7. 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. 8. Adjust data setting on parameter #4034, accordingly. Repeat steps 2 to 8 until perfect alignment is established. Oriented spindle synchronization command Set Keep Relay 0.0 =zero. 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 M203 (M204) Synchronizes spindles at 1000 RPM with 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 Synchronized stop command Non- oriented spindle synchronization command Set Keep Relay 0.0=1 Keep relay is set 1for applications where machined entities on each spindle have no relationship concerning rotation angle to each other. Synchronization command is possible with both chucks engaged with the work piece. G97 S1000 M203 (M204) Synchronizes spindles at 1000 RPM with simultaneous acceleration or deceleration. 33

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 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. 34

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 G300 Description 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 livecenter. 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. 35

Cutoff Confirmation G-Code G350 Description 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. 36

Sample Program1: Spindle Synchronization, Cutoff and Parts Transfer to Sub Spindle Program includes torque-skip function. N1400( CUTOFF & TRANSFER) G0G40G80G99 G50S3000M31 G53 B0M131 G30U0W0 T0303 M169 G97S1000M203 G0X3.Z-2.250S1500 M31= main spindle interlock bypass M131=sub spindle interlock bypass M169=open sub spindle Chuck M203= spindle synchronization-command Positioning the cutoff tool at cutoff position G0B-15.2 S2000 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 M87 G0X2.1M8 G1X0 F.002 M5 G0B-3.5 G0X3.M9 G30U0W0 M105 M1 M168= close sub chuck Torque Skip data setting cancel Final approach with cutoff tool Cutoff Part in sub spindle is now separated from bar stock. Sub spindle axial pressure releases, pushing slightly against cutoff tool. Stop main spindle. This twist-off any remaining material Retract sub spindle Retract cutoff tool Stop sub spindle 37

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 G97S1275M3X2.1 Start main spindle, move X to part X1.2 G0B-14.986(1-INCH CLR.OF FACE) Move B close to part G96S400M8 CSS & coolant on G1G99X.25F.002 Pre-cutoff U.02 Tool release G97S1500M169 Fixed spindle rpm M203 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 38

N206G350(CUTOFF CONFIRMATION) G4U.5 GOTO206 N205#100=1 N206G53B0M105 G30U0M9 G30W0M5 IF[#100NE1]GOTO208 #3000=1(PICKUP N0 GOOD) N208M1 B axis attempts to close the gap left by the cutoff tool. If it cannot move at least 0.05, alarm occurs. Must have dwell command here Skip the alarm flag Set the alarm flag Retract B axis Retract X Retract Z, main spindle off If alarm flag not set, skip to N208 Alarm condition. #525 shows the deviation from the expected pickup position Bar Feed Operation M-codes used for the bar feed operation M5 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. 39

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) M5 (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) 40