50% found this document useful (2 votes)
81 views

Immediate download CNC Programming Handbook A Comprehensive Guide to Practical CNC Programming 3rd Edition Edition Smid ebooks 2024

Programming

Uploaded by

kolzepermeq7
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
50% found this document useful (2 votes)
81 views

Immediate download CNC Programming Handbook A Comprehensive Guide to Practical CNC Programming 3rd Edition Edition Smid ebooks 2024

Programming

Uploaded by

kolzepermeq7
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 71

Visit https://ebookgate.

com to download the full version and


explore more ebooks

CNC Programming Handbook A Comprehensive Guide to


Practical CNC Programming 3rd Edition Edition Smid

_____ Click the link below to download _____


https://ebookgate.com/product/cnc-programming-handbook-
a-comprehensive-guide-to-practical-cnc-programming-3rd-
edition-edition-smid/

Explore and download more ebooks at ebookgate.com


Here are some recommended products that might interest you.
You can download now and explore!

CNC Programming Handbook 2nd Edition Peter Smid

https://ebookgate.com/product/cnc-programming-handbook-2nd-edition-
peter-smid/

ebookgate.com

CNC control setup for milling and turning mastering CNC


control systems 1st Edition Peter Smid

https://ebookgate.com/product/cnc-control-setup-for-milling-and-
turning-mastering-cnc-control-systems-1st-edition-peter-smid/

ebookgate.com

How to Make a Noise A Comprehensive Guide to Synthesizer


Programming Simon Cann

https://ebookgate.com/product/how-to-make-a-noise-a-comprehensive-
guide-to-synthesizer-programming-simon-cann/

ebookgate.com

A Comprehensive Guide to Coding and Programming in Stata


1st Edition Gafoor Rafael

https://ebookgate.com/product/a-comprehensive-guide-to-coding-and-
programming-in-stata-1st-edition-gafoor-rafael/

ebookgate.com
Pascal Programming A Beginners Guide to Computers and
Programming 2nd Edition Chris Hawksley

https://ebookgate.com/product/pascal-programming-a-beginners-guide-to-
computers-and-programming-2nd-edition-chris-hawksley/

ebookgate.com

Programming F A comprehensive guide for writing simple


code to solve complex problems 1st Edition Chris Smith

https://ebookgate.com/product/programming-f-a-comprehensive-guide-for-
writing-simple-code-to-solve-complex-problems-1st-edition-chris-smith/

ebookgate.com

Introduction to Java Programming Comprehensive Version


10th Edition Edition Y. Daniel Liang

https://ebookgate.com/product/introduction-to-java-programming-
comprehensive-version-10th-edition-edition-y-daniel-liang/

ebookgate.com

Matlab A Practical Introduction to Programming and Problem


Solving 1st Edition Stormy Attaway

https://ebookgate.com/product/matlab-a-practical-introduction-to-
programming-and-problem-solving-1st-edition-stormy-attaway/

ebookgate.com

Programming Logic and Design Comprehensive 7th Edition


Joyce Farrell

https://ebookgate.com/product/programming-logic-and-design-
comprehensive-7th-edition-joyce-farrell/

ebookgate.com
CNC
Programming
Handbook
Third Edition
A Comprehensive Guide to Practical CNC Programming

Peter Smid

Industrial Press, Inc.


989 Avenue of the Americas
New York, NY 10018, USA
http://www.industrialpress.com
Library of Congress Cataloging-in-Publication Data

Smid, Peter
CNC Programming Handbook: Comprehensive Guide to Practical CNC Programming/
Peter Smid.
p. cm.
ISBN 0-8311-3347-3
1. Machine-tools--Numerical Control--Programming--Handbooks, manuals, etc.,..I.
Title.

TJ1189 .S592 2000


621.9'023--dc21
00-023974

Third Edition

CNC Programming Handbook

Industrial Press, Inc.


989 Avenue of the Americas
New York, NY 10018, USA

Copyright Ó 2007. Printed in the United States of America.


All Rights Reserved.
This book or parts thereof may not be reproduced, stored in a retrieval

system, or transmitted in any form without the permission of the publishers.

1 2 3 4 5 6 7 8 9 10
TABLE OF CONTENTS
1 - NUMERICAL CONTROL 1 Quadrants . . . . . . . . . . . . . . . . . . . 16
Right Hand Coordinate System . . . . . . . . . . 17
DEFINITION OF NUMERICAL CONTROL . . . 1 MACHINE GEOMETRY . . . . . . . 17
NC and CNC Technology . . . . . . . . . . . . . 1 Axis Orientation - Milling . . . . . . . . . . . . . 17
CONVENTIONAL AND CNC MACHINING . . . 2 Axis Orientation - Turning . . . . . . . . . . . . . 18
Additional Axes. . . . . . . . . . . . . . . . . 18
NUMERICAL CONTROL ADVANTAGES . . . 2
Setup Time Reduction . . . . . . . . . . . . . . 3
Lead Time Reduction . . . . . . . . . . . . . . . 3 5 - CONTROL SYSTEM 19
Accuracy and Repeatability . . . . . . . . . . . . 3
Contouring of Complex Shapes . . . . . . . . . . . 3 GENERAL DESCRIPTION . . . . . . . 20
Simplified Tooling and Work Holding . . . . . . . . . 3 Operation Panel . . . . . . . . . . . . . . . . 20
Cutting Time and Productivity Increase . . . . . . . . 4 Screen Display and Keyboard . . . . . . . . . . . 21
TYPES OF CNC MACHINE TOOLS . . . . . 4 Handle . . . . . . . . . . . . . . . . . . . . 22
Mills and Machining Centers . . . . . . . . . . . . 4 SYSTEM FEATURES . . . . . . . . 22
Lathes and Turning Centers . . . . . . . . . . . . 5 Parameter Settings . . . . . . . . . . . . . . . 22
PERSONNEL FOR CNC . . . . . . . . 5 System Defaults . . . . . . . . . . . . . . . . 23
CNC Programmer . . . . . . . . . . . . . . . . 5 Memory Capacity . . . . . . . . . . . . . . . . 24
CNC Machine Operator . . . . . . . . . . . . . . 6 MANUAL PROGRAM INTERRUPTION . . . 25
SAFETY RELATED TO CNC WORK. . . . . 6 Single Block Operation . . . . . . . . . . . . . . 25
Feedhold . . . . . . . . . . . . . . . . . . . 25
Emergency Stop . . . . . . . . . . . . . . . . 25
2 - CNC MILLING 7 MANUAL DATA INPUT - MDI . . . . . . 26
CNC MACHINES - MILLING . . . . . . 7 PROGRAM DATA OVERRIDE . . . . . . 26
Types of Milling Machines . . . . . . . . . . . . . 7 Rapid Motion Override . . . . . . . . . . . . . . 26
Machine Axes . . . . . . . . . . . . . . . . . . 8 Spindle Speed Override . . . . . . . . . . . . . 27
Vertical Machining Centers. . . . . . . . . . . . . 8 Feedrate Override . . . . . . . . . . . . . . . . 27
Horizontal Machining Centers . . . . . . . . . . . 10 Dry Run Operation . . . . . . . . . . . . . . . 27
Horizontal Boring Mill . . . . . . . . . . . . . . 10 Z-Axis Neglect . . . . . . . . . . . . . . . . . 28
Typical Specifications . . . . . . . . . . . . . . 10 Manual Absolute Setting . . . . . . . . . . . . . 28
Sequence Return . . . . . . . . . . . . . . . . 28
Auxiliary Functions Lock . . . . . . . . . . . . . 28
3 - CNC TURNING 11 Machine Lock . . . . . . . . . . . . . . . . . 28
Practical Applications . . . . . . . . . . . . . . 29
CNC MACHINES - TURNING . . . . . . 11 SYSTEM OPTIONS . . . . . . . . 29
Types of CNC Lathes . . . . . . . . . . . . . . 11 Graphic Display. . . . . . . . . . . . . . . . . 29
Number of Axes . . . . . . . . . . . . . . . . 11 In-Process Gauging . . . . . . . . . . . . . . . 30
AXES DESIGNATION . . . . . . . . 11 Stored Stroke Limits . . . . . . . . . . . . . . . 30
Drawing Dimensions Input . . . . . . . . . . . . 30
Two-axis Lathe . . . . . . . . . . . . . . . . . 12
Machining Cycles . . . . . . . . . . . . . . . . 30
Three-axis Lathe . . . . . . . . . . . . . . . . 12
Cutting Tool Animation . . . . . . . . . . . . . . 30
Four-axis Lathe . . . . . . . . . . . . . . . . . 13
Connection to External Devices . . . . . . . . . . 30
Six-axis Lathe . . . . . . . . . . . . . . . . . 13
FEATURES AND SPECIFICATIONS . . . . 13
Typical Machine Specifications . . . . . . . . . . 13 6 - PROGRAM PLANNING 31
Control Features . . . . . . . . . . . . . . . . 14
STEPS IN PROGRAM PLANNING. . . . . 31
4 - COORDINATE GEOMETRY 15 INITIAL INFORMATION . . . . . . . 31
CNC MACHINE FEATURES . . . . . . 31
REAL NUMBER SYSTEM . . . . . . . 15 Machine Type and Size . . . . . . . . . . . . . . 31
Control System . . . . . . . . . . . . . . . . . 32
RECTANGULAR COORDINATE SYSTEM. . . 15
Axes and Planes . . . . . . . . . . . . . . . . 16 PART COMPLEXITY . . . . . . . . 32
Point of Origin . . . . . . . . . . . . . . . . . 16 MANUAL PROGRAMMING . . . . . . 32

ix
x Table of Contents

Disadvantages . . . . . . . . . . . . . . . . . 32 APPLICATIONS FOR MILLING . . . . . 51


Advantages . . . . . . . . . . . . . . . . . . 32 APPLICATIONS FOR TURNING . . . . . 53
CAD/CAM AND CNC . . . . . . . . 33 G-CODES IN A PROGRAM BLOCK . . . . 54
Integration . . . . . . . . . . . . . . . . . . 33 Modality of G-codes . . . . . . . . . . . . . . . 54
Future of Manual Programming . . . . . . . . . . 33 Conflicting Commands in a Block . . . . . . . . . 54
TYPICAL PROGRAMMING PROCEDURE . . . 33 Word Order in a Block . . . . . . . . . . . . . . 55
PART DRAWING . . . . . . . . . 34 GROUPING OF COMMANDS . . . . . . 55
Title Block . . . . . . . . . . . . . . . . . . . 34 Group Numbers . . . . . . . . . . . . . . . . 55
Dimensioning . . . . . . . . . . . . . . . . . 34 G-CODE TYPES . . . . . . . . . 56
Tolerances. . . . . . . . . . . . . . . . . . . 36
G-Codes and Decimal Point . . . . . . . . . . . . 56
Surface Finish . . . . . . . . . . . . . . . . . 36
Drawing Revisions . . . . . . . . . . . . . . . 36
Special Instructions . . . . . . . . . . . . . . . 37 9 - MISCELLANEOUS FUNCTIONS 57
METHODS SHEET . . . . . . . . . 37
MATERIAL SPECIFICATIONS . . . . . . 37 DESCRIPTION AND PURPOSE . . . . . 57
Material Uniformity . . . . . . . . . . . . . . . 37 Machine Related Functions . . . . . . . . . . . . 57
Machinability Rating . . . . . . . . . . . . . . . 37 Program Related Functions . . . . . . . . . . . . 57

MACHINING SEQUENCE . . . . . . . 38 TYPICAL APPLICATIONS . . . . . . . 58


Applications for Milling. . . . . . . . . . . . . . 58
TOOLING SELECTION. . . . . . . . 38 Applications for Turning . . . . . . . . . . . . . 58
PART SETUP . . . . . . . . . . 39 Special MDI Functions . . . . . . . . . . . . . . 58
Setup Sheet . . . . . . . . . . . . . . . . . . 39 Application Groups . . . . . . . . . . . . . . . 58

TECHNOLOGICAL DECISIONS . . . . . 39 M-FUNCTIONS IN A BLOCK . . . . . . 59


Cutter Path . . . . . . . . . . . . . . . . . . 39 Startup of M-Functions. . . . . . . . . . . . . . 60
Machine Power Rating . . . . . . . . . . . . . . 40 Duration of M-Functions . . . . . . . . . . . . . 60
Coolants and Lubricants . . . . . . . . . . . . . 40 PROGRAM FUNCTIONS . . . . . . . 60
WORK SKETCH AND CALCULATIONS . . . 41 Program Stop . . . . . . . . . . . . . . . . . 60
Identification Methods . . . . . . . . . . . . . . 41 Optional Program Stop . . . . . . . . . . . . . . 61
Program End . . . . . . . . . . . . . . . . . . 62
QUALITY IN CNC PROGRAMMING . . . . 42 Subprogram End . . . . . . . . . . . . . . . . 62
MACHINE FUNCTIONS . . . . . . . 62
7 - PART PROGRAM STRUCTURE 43 Coolant Functions . . . . . . . . . . . . . . . 62
Spindle Functions . . . . . . . . . . . . . . . . 63
BASIC PROGRAMMING TERMS . . . . . 43 Gear Range Selection . . . . . . . . . . . . . . 64
Character . . . . . . . . . . . . . . . . . . . 43 Machine Accessories . . . . . . . . . . . . . . 64
Word . . . . . . . . . . . . . . . . . . . . . 43
Block . . . . . . . . . . . . . . . . . . . . . 44
Program . . . . . . . . . . . . . . . . . . . 44
10 - SEQUENCE BLOCK 65
PROGRAMMING FORMATS . . . . . . 44 BLOCK STRUCTURE . . . . . . . . 65
WORD ADDRESS FORMAT . . . . . . 44 Building the Block Structure. . . . . . . . . . . . 65
FORMAT NOTATION . . . . . . . . 45 Block Structure for Milling . . . . . . . . . . . . 65
Short Forms . . . . . . . . . . . . . . . . . . 45 PROGRAM IDENTIFICATION . . . . . . 66
Milling System Format . . . . . . . . . . . . . . 46 Program Number . . . . . . . . . . . . . . . . 66
Turning System Format. . . . . . . . . . . . . . 46 Program Name . . . . . . . . . . . . . . . . . 66
Multiple Word Addresses . . . . . . . . . . . . . 47
SEQUENCE NUMBERS . . . . . . . 67
SYMBOLS IN CNC PROGRAMMING . . . . 47 Sequence Number Command . . . . . . . . . . . 67
Plus and Minus Sign. . . . . . . . . . . . . . . 48 Sequence Block Format . . . . . . . . . . . . . 67
TYPICAL PROGRAM STRUCTURE . . . . 48 Numbering Increment . . . . . . . . . . . . . . 68
Long Programs and Block Numbers. . . . . . . . . 68
Program Structure Benefits . . . . . . . . . . . . 49
END OF BLOCK CHARACTER . . . . . . 68
PROGRAM HEADER . . . . . . . . 50
Tool Comments . . . . . . . . . . . . . . . . 50 STARTUP BLOCK OR SAFE BLOCK . . . . 69
PROGRAM COMMENTS . . . . . . . 70
8 - PREPARATORY COMMANDS 51 CONFLICTING WORDS IN A BLOCK . . . . 70
MODAL PROGRAMMING VALUES . . . . 71
DESCRIPTION AND PURPOSE . . . . . 51 EXECUTION PRIORITY . . . . . . . 72
Table of Contents xi

MAXIMUM FEEDRATE . . . . . . . 95
11 - INPUT OF DIMENSIONS 73 Maximum Feedrate Considerations . . . . . . . . . 95

IMPERIAL AND METRIC UNITS . . . . . 73 FEEDHOLD AND OVERRIDE . . . . . . 95


Feedhold Switch . . . . . . . . . . . . . . . . 95
Comparable Unit Values . . . . . . . . . . . . . 74
Feedrate Override Switch . . . . . . . . . . . . . 95
ABSOLUTE AND INCREMENTAL MODES . . 74 Feedrate Override Functions . . . . . . . . . . . 96
Preparatory Commands G90 and G91 . . . . . . . . 75 E ADDRESS IN THREADING . . . . . . 96
Absolute Data Input - G90 . . . . . . . . . . . . 76
Incremental Data Input - G91 . . . . . . . . . . . 76
Combinations in a Single Block . . . . . . . . . . 76 14 - TOOL FUNCTION 97
DIAMETER PROGRAMMING . . . . . . 77
T-FUNCTION FOR MACHINING CENTERS . . 97
MINIMUM MOTION INCREMENT . . . . 77
Tool Storage Magazine . . . . . . . . . . . . . . 97
FORMAT OF DIMENSIONAL INPUT . . . . 77 Fixed Tool Selection . . . . . . . . . . . . . . . 98
Full Address Format . . . . . . . . . . . . . . . 78 Random Memory Tool Selection . . . . . . . . . . 98
Zero Suppression . . . . . . . . . . . . . . . . 78 Registering Tool Numbers . . . . . . . . . . . . 98
Decimal Point Programming. . . . . . . . . . . . 79 Programming Format . . . . . . . . . . . . . . 99
Input Comparison . . . . . . . . . . . . . . . . 80 Empty Tool or Dummy Tool . . . . . . . . . . . . 99
CALCULATOR TYPE INPUT . . . . . . 80 TOOL CHANGE FUNCTION - M06 . . . . 99
Conditions for Tool Change . . . . . . . . . . . . 99
12 - SPINDLE CONTROL 81 AUTOMATIC TOOL CHANGER - ATC . . . 100
Typical ATC System. . . . . . . . . . . . . . . 100
SPINDLE FUNCTION . . . . . . . . 81 Maximum Tool Diameter . . . . . . . . . . . . 101
Spindle Speed Input . . . . . . . . . . . . . . . 81 Maximum Tool Length . . . . . . . . . . . . . 101
Maximum Tool Weight . . . . . . . . . . . . . 101
DIRECTION OF SPINDLE ROTATION . . . . 81 ATC Cycle . . . . . . . . . . . . . . . . . . 102
Direction for Milling . . . . . . . . . . . . . . . 82 MDI Operation . . . . . . . . . . . . . . . . 102
Direction for Turning . . . . . . . . . . . . . . . 82
PROGRAMMING THE ATC . . . . . . 102
Direction Specification . . . . . . . . . . . . . . 83
Spindle Startup . . . . . . . . . . . . . . . . . 83 Single Tool Work . . . . . . . . . . . . . . . . 102
Programming Several Tools . . . . . . . . . . . 103
SPINDLE STOP . . . . . . . . . 84 Keeping Track of Tools . . . . . . . . . . . . . 103
SPINDLE ORIENTATION . . . . . . . 84 Any Tool in Spindle - Not the First . . . . . . . . . 103
First Tool in the Spindle . . . . . . . . . . . . . 104
SPINDLE SPEED - R/MIN . . . . . . . 85 No Tool in the Spindle. . . . . . . . . . . . . . 105
SPINDLE SPEED - SURFACE . . . . . . 85 First Tool in the Spindle with Manual Change . . . . 105
Material Machinability . . . . . . . . . . . . . . 85 No Tool in the Spindle with Manual Change . . . . . 106
Spindle Speed - Imperial Units . . . . . . . . . . . 86 First Tool in the Spindle and an Oversize Tool . . . . 106
Spindle Speed - Metric Units . . . . . . . . . . . 86 No Tool in the Spindle and an Oversize Tool . . . . . 106

CONSTANT SURFACE SPEED . . . . . 86 T-FUNCTION FOR LATHES . . . . . . 107


Maximum Spindle Speed Setting. . . . . . . . . . 88 Lathe Tool Station . . . . . . . . . . . . . . . 107
Part Diameter Calculation in CSS . . . . . . . . . . 89 Tool Indexing . . . . . . . . . . . . . . . . . 107
Cutting Speed Calculation . . . . . . . . . . . . 90 TOOL OFFSET REGISTERS . . . . . . 108
Geometry Offset. . . . . . . . . . . . . . . . 108
13 - FEEDRATE CONTROL 91 Wear Offset . . . . . . . . . . . . . . . . . 109
Wear Offset Adjustment. . . . . . . . . . . . . 110
The R and T Settings . . . . . . . . . . . . . . 110
FEEDRATE CONTROL . . . . . . . . 91
FEEDRATE FUNCTION . . . . . . . 91
Feedrate per Minute . . . . . . . . . . . . . . . 91
15 - REFERENCE POINTS 111
Feedrate per Revolution . . . . . . . . . . . . . 92
REFERENCE POINT GROUPS . . . . . 111
FEEDRATE SELECTION . . . . . . . 92 Reference Point Groups Relationship. . . . . . . . 112
ACCELERATION AND DECELERATION . . . 92 MACHINE REFERENCE POINT . . . . . 112
Exact Stop Command . . . . . . . . . . . . . . 93
Return to Machine Zero . . . . . . . . . . . . . 113
Exact Stop Mode Command . . . . . . . . . . . 93
Automatic Corner Override . . . . . . . . . . . . 93 PART REFERENCE POINT . . . . . . 113
Tapping Mode . . . . . . . . . . . . . . . . . 93 Program Zero Selection . . . . . . . . . . . . . 113
Cutting Mode . . . . . . . . . . . . . . . . . 94 Program Zero - Machining Centers . . . . . . . . 114
CONSTANT FEEDRATE . . . . . . . 94 Program Zero - Lathes . . . . . . . . . . . . . 116
Circular Motion Feedrates . . . . . . . . . . . . 94 TOOL REFERENCE POINT . . . . . . 116
xii Table of Contents

TOOL LENGTH OFFSET COMMANDS . . . 136


16 - REGISTER COMMANDS 117 Distance-To-Go in Z-axis . . . . . . . . . . . . . 136

POSITION REGISTER COMMAND . . . . 117 TOOL LENGTH SETUP . . . . . . . 137


On-Machine Tool Length Setting . . . . . . . . . 137
Position Register Definition . . . . . . . . . . . 117
Off-Machine Tool Length Setting . . . . . . . . . 138
Programming Format . . . . . . . . . . . . . . 117
Tool Length Offset Amount Register . . . . . . . . 138
Tool Position Setting . . . . . . . . . . . . . . 118
MACHINING CENTERS APPLICATION . . . 118 Z-AXIS RELATIONSHIPS. . . . . . . 138
Preset Tool Length . . . . . . . . . . . . . . . 139
Tool Set at Machine Zero . . . . . . . . . . . . 118
Tool Length by Touch Off . . . . . . . . . . . . 139
Tool Set Away from Machine Zero . . . . . . . . . 118
Using a Master Tool Length . . . . . . . . . . . 140
Position Register in Z-axis . . . . . . . . . . . . 119
G43-G44 Difference . . . . . . . . . . . . . . 140
Programming Example . . . . . . . . . . . . . 119
LATHE APPLICATION . . . . . . . 119 PROGRAMMING FORMATS . . . . . . 141
Tool Length Offset not Available . . . . . . . . . 141
Tool Setup . . . . . . . . . . . . . . . . . . 120
Tool Length Offset and G92 . . . . . . . . . . . 142
Three-Tool Setup Groups . . . . . . . . . . . . 120
Tool Length Offset and G54-G59 . . . . . . . . . 143
Center Line Tools Setup . . . . . . . . . . . . . 120
Tool Length Offset and Multiple Tools . . . . . . . 143
External Tools Setup . . . . . . . . . . . . . . 121
Internal Tools Setup . . . . . . . . . . . . . . 121 CHANGING TOOL LENGTH OFFSET . . . 144
Corner Tip Detail . . . . . . . . . . . . . . . . 121
HORIZONTAL MACHINE APPLICATION . . 145
Programming Example . . . . . . . . . . . . . 121
TOOL LENGTH OFFSET CANCEL . . . . 145
17 - POSITION COMPENSATION 123
20 - RAPID POSITIONING 147
DESCRIPTION . . . . . . . . . 123
Programming Commands . . . . . . . . . . . . 123 RAPID TRAVERSE MOTION . . . . . . 147
Programming Format . . . . . . . . . . . . . . 123 G00 Command . . . . . . . . . . . . . . . . 147
Incremental Mode . . . . . . . . . . . . . . . 124 RAPID MOTION TOOLPATH . . . . . . 148
Motion Length Calculation . . . . . . . . . . . . 124
Single Axis Motion . . . . . . . . . . . . . . . 148
Position Compensation Along the Z-axis . . . . . . 126
Multiaxis Motion. . . . . . . . . . . . . . . . 148
Using G47 and G48 . . . . . . . . . . . . . . 126
Straight Angular Motion in Rapid Mode. . . . . . . 150
Face Milling - One Possible Application . . . . . . . 126
Reverse Rapid Motion . . . . . . . . . . . . . 150
TYPE OF MOTION & TIME COMPARISON . . 150
18 - WORK OFFSETS 127
REDUCTION OF RAPID MOTION RATE . . . 151
WORK AREAS AVAILABLE . . . . . . 127 RAPID MOTION FORMULAS . . . . . 151
Additional Work Offsets . . . . . . . . . . . . . 128 APPROACH TO THE PART . . . . . . 152
WORK OFFSET DEFAULT AND STARTUP . . 128
Work Offset Change . . . . . . . . . . . . . . 129 21 - MACHINE ZERO RETURN 153
Z-axis Application . . . . . . . . . . . . . . . 130
HORIZONTAL MACHINE APPLICATION . . 131 MACHINE REFERENCE POSITION . . . . 153
EXTERNAL WORK OFFSETS . . . . . 132 Machining Centers . . . . . . . . . . . . . . . 153
Lathes . . . . . . . . . . . . . . . . . . . . 154
LATHE APPLICATIONS . . . . . . . 132 Setting the Machine Axes . . . . . . . . . . . . 154
Types of Offsets . . . . . . . . . . . . . . . . 132 Program Commands . . . . . . . . . . . . . . 155
Geometry Offset. . . . . . . . . . . . . . . . 132 Command Group . . . . . . . . . . . . . . . 155
Wear Offset . . . . . . . . . . . . . . . . . 133
Tool and Offset Numbers . . . . . . . . . . . . 133
RETURN TO PRIMARY MACHINE ZERO . . 155
Intermediate Point . . . . . . . . . . . . . . . 155
TOOL SETUP . . . . . . . . . . 133 Absolute and Incremental Mode . . . . . . . . . 156
Center Line Tools . . . . . . . . . . . . . . . 133 Return from Z-depth Position . . . . . . . . . . . 157
Turning Tools . . . . . . . . . . . . . . . . . 134 Axes Return Required for the ATC . . . . . . . . . 159
Boring Tools . . . . . . . . . . . . . . . . . 134 Zero Return for CNC Lathes . . . . . . . . . . . 159
Command Point and Tool Work Offset . . . . . . . 134
RETURN POSITION CHECK COMMAND . . 160
RETURN FROM MACHINE ZERO POINT . . 161
19 - TOOL LENGTH OFFSET 135
RETURN TO SECONDARY MACHINE ZERO . 162
GENERAL PRINCIPLES . . . . . . . 135
Actual Tool Length . . . . . . . . . . . . . . . 135 22 - LINEAR INTERPOLATION 163
Gauge Line . . . . . . . . . . . . . . . . . . 135
Table Top Face . . . . . . . . . . . . . . . . 136 LINEAR COMMAND . . . . . . . . 163
Table of Contents xiii

Start and End of the Linear Motion . . . . . . . . 163 GENERAL RULES . . . . . . . . 184
Single Axis Linear Interpolation . . . . . . . . . . 163 ABSOLUTE AND INCREMENTAL INPUT . . 185
Two Axes Linear Interpolation . . . . . . . . . . 164
Three Axis Linear Interpolation . . . . . . . . . . 164 INITIAL LEVEL SELECTION . . . . . . 185
PROGRAMMING FORMAT . . . . . . 164 R-LEVEL SELECTION . . . . . . . 186
LINEAR FEEDRATE . . . . . . . . 165 Z-DEPTH CALCULATIONS . . . . . . 186
Feedrate Range . . . . . . . . . . . . . . . . 165 DESCRIPTION OF FIXED CYCLES . . . . 187
Individual Axis Feedrate . . . . . . . . . . . . . 165 G81 - Drilling Cycle . . . . . . . . . . . . . . . 187
PROGRAMMING EXAMPLE . . . . . . 166 G82 - Spot Drilling Cycle (Drilling with Dwell) . . . . 188
G83 - Deep Hole Drilling Cycle - Standard . . . . . . 188
G73 - Deep Hole Drilling Cycle - High Speed . . . . . 188
23 - BLOCK SKIP FUNCTION 167 G84 - Tapping Cycle - Standard . . . . . . . . . . 190
G74 - Tapping Cycle - Reverse . . . . . . . . . . 190
TYPICAL APPLICATIONS . . . . . . 167 G85 - Boring Cycle . . . . . . . . . . . . . . . 191
G86 - Boring Cycle . . . . . . . . . . . . . . . 191
BLOCK SKIP SYMBOL . . . . . . . 167 G87 - Backboring Cycle . . . . . . . . . . . . . 192
CONTROL UNIT SETTING . . . . . . 167 G88 - Boring Cycle . . . . . . . . . . . . . . . 192
G89 - Boring Cycle . . . . . . . . . . . . . . . 193
BLOCK SKIP AND MODAL COMMANDS . . 168 G76 - Precision Boring Cycle . . . . . . . . . . . 193
PROGRAMMING EXAMPLES . . . . . 169 FIXED CYCLE CANCELLATION . . . . . 194
Variable Stock Removal . . . . . . . . . . . . . 169
Machining Pattern Change . . . . . . . . . . . . 170 FIXED CYCLE REPETITION . . . . . . 194
Trial Cut for Measuring . . . . . . . . . . . . . 172 The L or K Address . . . . . . . . . . . . . . . 194
Program Proving . . . . . . . . . . . . . . . . 173 L0 or K0 in a Cycle . . . . . . . . . . . . . . . 195
Barfeeder Application . . . . . . . . . . . . . . 174 RIGID TAPPING . . . . . . . . . 195
Numbered Block Skip. . . . . . . . . . . . . . 174
Comparison - Standard vs. Rigid Tapping . . . . . . 195
Rigid Tapping - Fixed Cycles . . . . . . . . . . . 195
24 - DWELL COMMAND 175 Rigid Pecking Cycle . . . . . . . . . . . . . . 196
Cancellation . . . . . . . . . . . . . . . . . 196
PROGRAMMING APPLICATIONS . . . . 175
Applications for Cutting . . . . . . . . . . . . . 175 26 - MACHINING HOLES 197
Applications for Accessories . . . . . . . . . . . 175
DWELL COMMAND . . . . . . . . 175 SINGLE HOLE EVALUATION . . . . . 197
Dwell Command Structure . . . . . . . . . . . . 176 Tooling Selection and Applications. . . . . . . . . 197
Program Data . . . . . . . . . . . . . . . . . 200
DWELL TIME SELECTION . . . . . . 176
DRILLING OPERATIONS . . . . . . . 200
SETTING MODE AND DWELL . . . . . 177
Types of Drilling Operations . . . . . . . . . . . 200
Time Setting . . . . . . . . . . . . . . . . . 177 Types of Drills . . . . . . . . . . . . . . . . . 200
Number of Revolutions Setting . . . . . . . . . . 177 Programming Considerations. . . . . . . . . . . 201
MINIMUM DWELL . . . . . . . . 177 Nominal Drill Diameter . . . . . . . . . . . . . 201
Practical Considerations . . . . . . . . . . . . . 177 Effective Drill Diameter . . . . . . . . . . . . . 201
Drill Point Length . . . . . . . . . . . . . . . 201
NUMBER OF REVOLUTIONS . . . . . 178 Center Drilling. . . . . . . . . . . . . . . . . 202
System Setting . . . . . . . . . . . . . . . . 178 Spot Drilling . . . . . . . . . . . . . . . . . 203
Time Equivalent . . . . . . . . . . . . . . . . 178 Blind Hole Drilling . . . . . . . . . . . . . . . 203
LONG DWELL TIME . . . . . . . . 179 Through Hole Drilling . . . . . . . . . . . . . . 204
Flat Bottom Holes . . . . . . . . . . . . . . . 204
Machine Warm-Up . . . . . . . . . . . . . . . 180 Indexable Insert Drilling . . . . . . . . . . . . . 205
X Axis is the Dwelling Axis . . . . . . . . . . . . 180
Safety and Dwell. . . . . . . . . . . . . . . . 180 PECK DRILLING . . . . . . . . . 206
FIXED CYCLES AND DWELL . . . . . 180 Typical Peck Drilling Application . . . . . . . . . . 206
Calculating the Number of Pecks . . . . . . . . . 207
Selecting the Number of Pecks . . . . . . . . . . 207
25 - FIXED CYCLES 181 Controlling Breakthrough Depth. . . . . . . . . . 207
REAMING. . . . . . . . . . . 208
POINT-TO-POINT MACHINING . . . . . 181 Reamer Design . . . . . . . . . . . . . . . . 208
Single Tool Motions vs. Fixed Cycles . . . . . . . . 182 Spindle Speeds for Reaming . . . . . . . . . . . 209
Basic Concept. . . . . . . . . . . . . . . . . 182 Feedrates for Reaming . . . . . . . . . . . . . 209
FIXED CYCLE SELECTION . . . . . . 182 Stock Allowance . . . . . . . . . . . . . . . . 209
Other Reaming Considerations . . . . . . . . . . 209
PROGRAMMING FORMAT . . . . . . 183
SINGLE POINT BORING . . . . . . . 209
xiv Table of Contents

Single Point Boring Tool . . . . . . . . . . . . . 209 Milling Mode . . . . . . . . . . . . . . . . . 237


Spindle Orientation. . . . . . . . . . . . . . . 210 Number of Cutting Inserts . . . . . . . . . . . . 238
Block Tools . . . . . . . . . . . . . . . . . . 211
PROGRAMMING TECHNIQUES . . . . . 238
BORING WITH A TOOL SHIFT . . . . . 211 Single Face Mill Cut . . . . . . . . . . . . . . 239
Precision Boring Cycle G76 . . . . . . . . . . . 211 Multiple Face Mill Cuts . . . . . . . . . . . . . 240
Backboring Cycle G87 . . . . . . . . . . . . . 211
USING POSITION COMPENSATION . . . 241
Programming Example . . . . . . . . . . . . . 212
Precautions in Programming and Setup. . . . . . . 212
ENLARGING HOLES . . . . . . . . 212 29 - CIRCULAR INTERPOLATION 243
Countersinking . . . . . . . . . . . . . . . . 213
Maximum Spot Drill Depth for CSINK . . . . . . . 214 ELEMENTS OF A CIRCLE . . . . . . 243
Counterboring. . . . . . . . . . . . . . . . . 214 Radius and Diameter . . . . . . . . . . . . . . 243
Spotfacing . . . . . . . . . . . . . . . . . . 214 Circle Area and Circumference . . . . . . . . . . 244
MULTI Z-DEPTH DRILLING . . . . . . 215 QUADRANTS . . . . . . . . . . 244
WEB DRILLING . . . . . . . . . 216 Quadrant Points . . . . . . . . . . . . . . . . 244
TAPPING . . . . . . . . . . . 216 PROGRAMMING FORMAT . . . . . . 245
Tap Geometry . . . . . . . . . . . . . . . . . 217 Arc Cutting Direction . . . . . . . . . . . . . . 245
Tapping Speed and Feedrate . . . . . . . . . . . 218 Circular Interpolation Block . . . . . . . . . . . 245
Pipe Taps . . . . . . . . . . . . . . . . . . 219 Arc Start and End Points. . . . . . . . . . . . . 246
Tapping Check List . . . . . . . . . . . . . . . 219 Arc Center and Radius . . . . . . . . . . . . . 246
Arc Center Vectors . . . . . . . . . . . . . . . 246
HOLE OPERATIONS ON A LATHE . . . . 220 Arc in Planes . . . . . . . . . . . . . . . . . 247
Tool Approach Motion . . . . . . . . . . . . . 221
Tool Return Motion . . . . . . . . . . . . . . . 221
RADIUS PROGRAMMING . . . . . . 248
Drilling and Reaming on Lathes . . . . . . . . . . 222 Blend Radius . . . . . . . . . . . . . . . . . 248
Peck Drilling Cycle - G74. . . . . . . . . . . . . 222 Partial Radius . . . . . . . . . . . . . . . . . 248
Tapping on Lathes . . . . . . . . . . . . . . . 223 FULL CIRCLE PROGRAMMING . . . . . 248
Other Operations . . . . . . . . . . . . . . . 224
Boss Milling . . . . . . . . . . . . . . . . . 250
Internal Circle Cutting - Linear Start . . . . . . . . 251
27 - PATTERN OF HOLES 225 Internal Circle Cutting - Circular Start . . . . . . . . 251
Circle Cutting Cycle . . . . . . . . . . . . . . 252
TYPICAL HOLE PATTERNS . . . . . . 225 ARC PROGRAMMING . . . . . . . 253
RANDOM HOLE PATTERN . . . . . . 225 FEEDRATE FOR CIRCULAR MOTION . . . 253
STRAIGHT ROW HOLE PATTERN . . . . 226 Feedrate for Outside Arcs . . . . . . . . . . . . 254
Feedrate for Inside Arcs . . . . . . . . . . . . . 254
ANGULAR ROW HOLE PATTERN . . . . 226
Pattern Defined by Coordinates . . . . . . . . . . 226
Pattern Defined by Angle . . . . . . . . . . . . 227 30 - CUTTER RADIUS OFFSET 255
CORNER PATTERN . . . . . . . . 228
MANUAL CALCULATIONS . . . . . . 255
GRID PATTERN . . . . . . . . . 228 Cutter Path Center Points . . . . . . . . . . . . 256
Angular Grid Pattern . . . . . . . . . . . . . . 229 Cutter Radius . . . . . . . . . . . . . . . . . 257
ARC HOLE PATTERN. . . . . . . . 230 Center Points Calculation . . . . . . . . . . . . 257

BOLT HOLE CIRCLE PATTERN . . . . . 231 COMPENSATED CUTTER PATH . . . . . 258


Bolt Circle Formula . . . . . . . . . . . . . . . 232 Types of Cutter Radius Offset . . . . . . . . . . 258
Pattern Orientation . . . . . . . . . . . . . . . 232 Definition and Applications . . . . . . . . . . . 258

POLAR COORDINATE SYSTEM . . . . . 233 PROGRAMMING TECHNIQUES . . . . . 259


Plane Selection . . . . . . . . . . . . . . . . 234 Direction of Cutting Motion . . . . . . . . . . . 259
Order of Machining . . . . . . . . . . . . . . 234 Left or Right - not CW or CCW . . . . . . . . . . 259
Offset Commands . . . . . . . . . . . . . . . 260
Radius of the Cutter . . . . . . . . . . . . . . 260
28 - FACE MILLING 235 History of Offset Types . . . . . . . . . . . . . 261
Programming Format . . . . . . . . . . . . . . 261
FACE MILL SELECTION . . . . . . . 235 Address H or D ? . . . . . . . . . . . . . . . 261
Geometry and Wear Offsets . . . . . . . . . . . 262
Basic Selection Criteria . . . . . . . . . . . . . 235
Face Mill Diameter . . . . . . . . . . . . . . . 235 APPLYING CUTTER RADIUS OFFSET . . . 262
Insert Geometry . . . . . . . . . . . . . . . . 236 Startup Methods. . . . . . . . . . . . . . . . 262
CUTTING CONSIDERATIONS . . . . . 236 Offset Cancellation . . . . . . . . . . . . . . . 264
Cutter Direction Change . . . . . . . . . . . . . 265
Angle of Entry . . . . . . . . . . . . . . . . . 237
Table of Contents xv

HOW CUTTER RADIUS OFFSET WORKS . . 265 In and Out Ramping . . . . . . . . . . . . . . 289
Look-Ahead Offset Type . . . . . . . . . . . . . 265 Direction of Cut . . . . . . . . . . . . . . . . 289
Rules for Look-Ahead Cutter Radius Offset . . . . . 266 Width and Depth of Cut . . . . . . . . . . . . . 290
Radius of the Cutter . . . . . . . . . . . . . . 267 CORNER RADIUS CALCULATION . . . . 290
Radius Offset Interference . . . . . . . . . . . . 268
Single vs. Multiaxis Startup . . . . . . . . . . . 269
OVERVIEW OF GENERAL RULES . . . . 270 33 - SLOTS AND POCKETS 291
PRACTICAL EXAMPLE - MILLING . . . . 271
OPEN AND CLOSED BOUNDARY . . . . 291
Part Tolerances . . . . . . . . . . . . . . . . 271
Open Boundary . . . . . . . . . . . . . . . . 291
Measured Part Size. . . . . . . . . . . . . . . 271
Closed Boundary . . . . . . . . . . . . . . . 291
Programmed Offsets . . . . . . . . . . . . . . 272
D-offset Amount - General Setting. . . . . . . . . 272 PROGRAMMING SLOTS . . . . . . . 291
Offset Adjustment . . . . . . . . . . . . . . . 273 Open Slot Example. . . . . . . . . . . . . . . 291
Offsets for External Cutting . . . . . . . . . . . 273 Closed Slot Example . . . . . . . . . . . . . . 293
Offsets for Internal Cutting. . . . . . . . . . . . 273
One Offset or Multiple Offsets?. . . . . . . . . . 274 POCKET MILLING . . . . . . . . 294
Preventing a Scrap . . . . . . . . . . . . . . . 274 General Principles . . . . . . . . . . . . . . . 294
Program Data - Nominal or Middle? . . . . . . . . 274 Pocket Types . . . . . . . . . . . . . . . . . 295
TOOL NOSE RADIUS OFFSET . . . . . 275 RECTANGULAR POCKETS . . . . . . 295
Tool Nose Tip . . . . . . . . . . . . . . . . . 275 Stock Amount . . . . . . . . . . . . . . . . . 296
Radius Offset Commands . . . . . . . . . . . . 275 Stepover Amount . . . . . . . . . . . . . . . 296
Tool Tip Orientation . . . . . . . . . . . . . . 275 Length of Cut . . . . . . . . . . . . . . . . . 297
Effect of Tool Nose Radius Offset . . . . . . . . . 276 Semifinishing Motions . . . . . . . . . . . . . 297
Sample Program . . . . . . . . . . . . . . . . 276 Finishing Toolpath . . . . . . . . . . . . . . . 297
Minimum Clearance Required . . . . . . . . . . 277 Rectangular Pocket Program Example . . . . . . . 298
Retraction from a Bored Hole. . . . . . . . . . . 277 CIRCULAR POCKETS . . . . . . . 299
Change of Motion Direction . . . . . . . . . . . 278
Minimum Cutter Diameter . . . . . . . . . . . . 299
Method of Entry . . . . . . . . . . . . . . . . 299
31 - PLANE SELECTION 279 Linear Approach . . . . . . . . . . . . . . . . 299
Linear and Circular Approach . . . . . . . . . . . 300
Roughing a Circular Pocket . . . . . . . . . . . 301
WHAT IS A PLANE? . . . . . . . . 279
MACHINING IN PLANES. . . . . . . 279 CIRCULAR POCKET CYCLES . . . . . 302
Mathematical Planes . . . . . . . . . . . . . . 279
Machine Tool Planes . . . . . . . . . . . . . . 280 34 - TURNING AND BORING 303
Program Commands for Planes Definition. . . . . . 280
Default Control Status . . . . . . . . . . . . . 281 TOOL FUNCTION - TURNING . . . . . 303
STRAIGHT MOTION IN PLANES . . . . 281 T-Address . . . . . . . . . . . . . . . . . . 303
CIRCULAR INTERPOLATION IN PLANES . . 281 LATHE OFFSETS . . . . . . . . . 304
G17-G18-G19 as Modal Commands . . . . . . . . 282 Offset Entry . . . . . . . . . . . . . . . . . 304
Absence of Axis Data in a Block. . . . . . . . . . 282 Independent Tool Offset. . . . . . . . . . . . . 304
Cutter Radius Offset in Planes . . . . . . . . . . 283 Tool Offset with Motion . . . . . . . . . . . . . 305
PRACTICAL EXAMPLE . . . . . . . 283 Offset Change . . . . . . . . . . . . . . . . 305

FIXED CYCLES IN PLANES . . . . . . 284 MULTIPLE OFFSETS . . . . . . . . 305


General Approach . . . . . . . . . . . . . . . 306
Diameter Tolerances . . . . . . . . . . . . . . 306
32 - CONTOUR MILLING 285 Shoulder Tolerances . . . . . . . . . . . . . . 307
Diameter and Shoulder Tolerances . . . . . . . . 307
END MILLS . . . . . . . . . . 285 OFFSET SETTING . . . . . . . . 308
High Speed Steel End Mills . . . . . . . . . . . 286
Solid Carbide End Mills . . . . . . . . . . . . . 286
FUNCTIONS FOR GEAR RANGES . . . . 308
Indexable Insert End Mills . . . . . . . . . . . . 286 AUTOMATIC CORNER BREAK . . . . . 309
Relief Angles . . . . . . . . . . . . . . . . . 286 Chamfering at 45 Degrees . . . . . . . . . . . . 309
End Mill Size . . . . . . . . . . . . . . . . . 286 Blend Radius at 90 Degrees . . . . . . . . . . . 311
Number of Flutes . . . . . . . . . . . . . . . 287 Programming Conditions . . . . . . . . . . . . 311
SPEEDS AND FEEDS . . . . . . . . 287 Programming Example . . . . . . . . . . . . . 311
Coolants and Lubricants. . . . . . . . . . . . . 288 ROUGH AND FINISHED SHAPE . . . . . 312
Tool Chatter . . . . . . . . . . . . . . . . . 288 Rough Operations . . . . . . . . . . . . . . . 312
STOCK REMOVAL . . . . . . . . 289 Finish Operations . . . . . . . . . . . . . . . 313
Stock and Stock Allowance . . . . . . . . . . . 313
Plunge Infeed . . . . . . . . . . . . . . . . . 289
xvi Table of Contents

PROGRAMMING A RECESS . . . . . . 314


SPINDLE SPEED IN CSS MODE . . . . . 315
36 - GROOVING ON LATHES 333
LATHE PROGRAM FORMAT . . . . . . 316 GROOVING OPERATIONS . . . . . . 333
Program Format - Templates . . . . . . . . . . . 316 Main Grooving Applications . . . . . . . . . . . 333
General Program Format . . . . . . . . . . . . 316 Grooving Criteria. . . . . . . . . . . . . . . . 333
Approach to the Part . . . . . . . . . . . . . . 316
GROOVE SHAPE . . . . . . . . . 333
Nominal Insert Size. . . . . . . . . . . . . . . 334
35 - LATHE CYCLES 317 Insert Modification . . . . . . . . . . . . . . . 334
GROOVE LOCATION. . . . . . . . 334
STOCK REMOVAL ON LATHES . . . . . 317
Simple Cycles . . . . . . . . . . . . . . . . . 317 GROOVE DIMENSIONS . . . . . . . 334
Complex Cycles . . . . . . . . . . . . . . . . 317 Groove Position . . . . . . . . . . . . . . . . 335
Groove Depth . . . . . . . . . . . . . . . . . 335
PRINCIPLES OF LATHE CYCLES . . . . 317
SIMPLE GROOVE PROGRAMMING . . . . 335
G90 - STRAIGHT CUTTING CYCLE . . . . 318
Cycle Format . . . . . . . . . . . . . . . . . 318 PRECISION GROOVING TECHNIQUES . . . 336
Straight Turning Example . . . . . . . . . . . . 319 Groove Width Selection . . . . . . . . . . . . . 337
Taper Cutting Example . . . . . . . . . . . . . 319 Machining Method . . . . . . . . . . . . . . . 337
Straight and Taper Cutting Example . . . . . . . . 321 Finishing Allowances . . . . . . . . . . . . . . 338
Groove Tolerances . . . . . . . . . . . . . . . 339
G94 - FACE CUTTING CYCLE . . . . . 322 Groove Surface Finish. . . . . . . . . . . . . . 340
Cycle Format . . . . . . . . . . . . . . . . . 322
MULTIPLE GROOVES . . . . . . . 340
MULTIPLE REPETITIVE CYCLES . . . . 323
FACE GROOVES . . . . . . . . . 340
General Description . . . . . . . . . . . . . . 323
Cycle Format Types . . . . . . . . . . . . . . 323 Radial Clearance . . . . . . . . . . . . . . . . 341
Cutting Cycles and Part Contour . . . . . . . . . 323 Face Grooving Program Example . . . . . . . . . 341
Chipbreaking Cycles . . . . . . . . . . . . . . 323 CORNER GROOVES / NECK GROOVES . . 342
CONTOUR CUTTING CYCLES . . . . . 324 GROOVING CYCLES . . . . . . . . 342
Boundary Definition . . . . . . . . . . . . . . 324 G75 Cycle Applications . . . . . . . . . . . . . 342
Start Point and the Points P and Q . . . . . . . . . 324 Single Groove with G75 . . . . . . . . . . . . . 343
TYPE I AND TYPE II CYCLES . . . . . 325 Multiple Grooves with G75. . . . . . . . . . . . 343
Programming Type I and Type II Cycles . . . . . . . 325 SPECIAL GROOVES . . . . . . . . 343
Cycle Formatting. . . . . . . . . . . . . . . . 325 GROOVES AND SUBPROGRAMS . . . . 344
G71 - STOCK REMOVAL IN TURNING . . . 325
G71 Cycle Format - 6T/10T/11T/15T . . . . . . . . 326 37 - PART-OFF 345
G71 Cycle Format - 0T/16T/18T/20T/21T . . . . . . 326
G71 for External Roughing . . . . . . . . . . . . 326
G71 for Internal Roughing . . . . . . . . . . . . 327
PART-OFF PROCEDURE . . . . . . . 345
Direction of Cutting in G71 . . . . . . . . . . . . 327 Parting Tool Description . . . . . . . . . . . . . 345
Tool Approach Motion . . . . . . . . . . . . . 346
G72 - STOCK REMOVAL IN FACING . . . 327 Stock Allowance . . . . . . . . . . . . . . . . 347
G72 Cycle Format - 6T/10T/11T/15T . . . . . . . . 327 Tool Return Motion . . . . . . . . . . . . . . . 347
G72 Cycle Format - 0T/16T/18T/20T/21T . . . . . . 328 Part-off with a Chamfer . . . . . . . . . . . . . 347
G73 - PATTERN REPEATING CYCLE . . . 328 Preventing Damage to the Part . . . . . . . . . . 348
G73 Cycle Format - 6T/10T/11T/15T . . . . . . . . 328
G73 Cycle Format - 0T/16T/18T/20T/21T . . . . . . 329 38 - SINGLE POINT THREADING 349
G73 Example of Pattern Repeating . . . . . . . . 329
G70 - CONTOUR FINISHING CYCLE . . . 330 THREADING ON CNC LATHES . . . . . 349
G70 Cycle Format - All Controls . . . . . . . . . . 330 Form of a Thread . . . . . . . . . . . . . . . 349
Threading Operations . . . . . . . . . . . . . . 350
BASIC RULES FOR G70-G73 CYCLES . . . 331
G74 - PECK DRILLING CYCLE . . . . . 331 TERMINOLOGY OF THREADING . . . . 350
G74 Cycle Format - 6T/10T/11T/15T . . . . . . . . 331 THREADING PROCESS . . . . . . . 351
G74 Cycle Format - 0T/16T/18T/20T/21T . . . . . . 331 Steps in Threading . . . . . . . . . . . . . . . 351
Spindle Synchronization . . . . . . . . . . . . . 351
G75 - GROOVE CUTTING CYCLE . . . . 332
Individual Threading Motions . . . . . . . . . . . 351
G75 Cycle Format - 6T/10T/11T/15T . . . . . . . . 332 Thread Start Position . . . . . . . . . . . . . . 353
G75 Cycle Format - 0T/16T/18T/20T/21T . . . . . . 332 Thread Cutting Diameter and Depth . . . . . . . . 353
BASIC RULES FOR G74 AND G75 CYCLES . . 332 Number of Threading Passes . . . . . . . . . . . 353
Thread Depth Calculation . . . . . . . . . . . . 354
Table of Contents xvii

Thread Depth Constants . . . . . . . . . . . . 354


Calculation of Threading Passes . . . . . . . . . 355 39 - SUBPROGRAMS 383
Thread Cutting Motion . . . . . . . . . . . . . 356
Retract from Thread . . . . . . . . . . . . . . 357 MAIN PROGRAM AND SUBPROGRAMS . . 383
Return to Start Position . . . . . . . . . . . . . 357 Subprogram Benefits . . . . . . . . . . . . . . 383
THREADING FEED AND SPINDLE SPEED . . 357 Identification of Subprograms . . . . . . . . . . 384
Threading Feedrate Selection. . . . . . . . . . . 358 SUBPROGRAM FUNCTIONS . . . . . 384
Spindle Speed Selection. . . . . . . . . . . . . 359 Subprogram Call Function . . . . . . . . . . . . 384
Maximum Threading Feedrate . . . . . . . . . . 359 Subprogram End Function . . . . . . . . . . . . 384
Lead Error . . . . . . . . . . . . . . . . . . 360 Block Number to Return to. . . . . . . . . . . . 385
Rounding Error . . . . . . . . . . . . . . . . 360 Number of Subprogram Repetitions . . . . . . . . 385
E-address . . . . . . . . . . . . . . . . . . 361 L0/K0 in a Subprogram Call . . . . . . . . . . . 386
TOOL REFERENCE POINT . . . . . . 361 SUBPROGRAM NUMBERING . . . . . 387
BLOCK-BY-BLOCK THREADING. . . . . 361 Organized Approach . . . . . . . . . . . . . . 388
Protected Subprograms . . . . . . . . . . . . . 389
BASIC THREADING CYCLE - G92 . . . . 362
SUBPROGRAM DEVELOPMENT . . . . 389
MULTIPLE REPETITIVE CYCLE - G76. . . . 363
Repeating Pattern Recognition . . . . . . . . . . 389
G76 Cycle Format - One Block Format . . . . . . . 364
Tool Motion and Subprograms . . . . . . . . . . 390
G76 Cycle Format - Two Block Format . . . . . . . 364
Modal Values and Subprograms . . . . . . . . . 391
One-Block vs Two-Block Format. . . . . . . . . . 365
Programming Examples . . . . . . . . . . . . . 365 MULTI LEVEL NESTING . . . . . . . 392
First Thread Diameter Calculation . . . . . . . . . 366 One Level Nesting . . . . . . . . . . . . . . . 392
THREAD INFEED METHODS . . . . . . 366 Two Level Nesting . . . . . . . . . . . . . . . 392
Three Level Nesting . . . . . . . . . . . . . . 393
Radial Infeed (Straight Infeed) . . . . . . . . . . 367
Four Level Nesting . . . . . . . . . . . . . . . 393
Compound Infeed (Flank Infeed) . . . . . . . . . 367
Nesting Applications . . . . . . . . . . . . . . 393
Thread Insert Angle . . . . . . . . . . . . . . 367
Thread Cutting Type - Address P . . . . . . . . . 368 CONTOURING WITH A SUBPROGRAM. . . 394
COMPOUND INFEED CALCULATIONS . . . 368 TOOL CHANGE SUBPROGRAM . . . . . 395
Initial Considerations . . . . . . . . . . . . . . 368 100 000 000 HOLE GRID . . . . . . . 395
Z-axis Start Position Calculation . . . . . . . . . . 369
THREAD RETRACT MOTION . . . . . 370 40 - DATUM SHIFT 397
Thread Pullout Functions . . . . . . . . . . . . 370
Single Axis Pullout . . . . . . . . . . . . . . . 371
DATUM SHIFT WITH G92 OR G50 . . . . 397
Two-Axis Pullout . . . . . . . . . . . . . . . . 371
Program Zero Shift . . . . . . . . . . . . . . . 397
HAND OF THREAD . . . . . . . . 371
LOCAL COORDINATE SYSTEM . . . . . 399
Configurations for Hand of Thread. . . . . . . . . 372
G52 Command . . . . . . . . . . . . . . . . 400
THREADING TO A SHOULDER . . . . . 373
MACHINE COORDINATE SYSTEM . . . . 400
Insert Modification . . . . . . . . . . . . . . . 373
Program Testing . . . . . . . . . . . . . . . . 375 DATA SETTING . . . . . . . . . 402
OTHER THREAD FORMS. . . . . . . 375 Data Setting Command . . . . . . . . . . . . . 402
Coordinate Mode . . . . . . . . . . . . . . . 402
Thread Depth - ACME example . . . . . . . . . . 375
WORK OFFSETS . . . . . . . . . 402
TAPERED THREAD . . . . . . . . 376
Standard Work Offset Input . . . . . . . . . . . 402
Depth and Clearances . . . . . . . . . . . . . 376
Additional Work Offset Input . . . . . . . . . . . 403
Taper Calculation . . . . . . . . . . . . . . . 376
External Work Offset Input . . . . . . . . . . . . 403
Block by Block Taper Thread . . . . . . . . . . . 377
Tapered Thread Using a Simple Cycle . . . . . . . 378 TOOL LENGTH OFFSETS . . . . . . 403
Tapered Thread and G76 Cycle . . . . . . . . . . 378 Valid Input Range . . . . . . . . . . . . . . . 404
MULTISTART THREAD . . . . . . . 379 CUTTER RADIUS OFFSETS . . . . . . 404
Threading Feedrate Calculation . . . . . . . . . . 380 LATHE OFFSETS . . . . . . . . . 404
Shift Amount . . . . . . . . . . . . . . . . . 380
Application Example . . . . . . . . . . . . . . 381 MDI DATA SETTING . . . . . . . . 405
Quality of Multistart Threads . . . . . . . . . . . 381 PROGRAMMABLE PARAMETER ENTRY . . 405
THREAD RECUTTING . . . . . . . 382 Modal G10 Command . . . . . . . . . . . . . 405
Before Part Removal . . . . . . . . . . . . . . 382 Parameters Notation . . . . . . . . . . . . . . 406
After Part Removal . . . . . . . . . . . . . . . 382 Program Portability . . . . . . . . . . . . . . . 406
Bit Type Parameter . . . . . . . . . . . . . . . 407
Effect of Block Numbers . . . . . . . . . . . . 408
xviii Table of Contents

ADDITIONAL OPTIONS . . . . . . . 430


41 - MIRROR IMAGE 409 Part Catcher or Part Unloader . . . . . . . . . . . 430
Continuous Operation . . . . . . . . . . . . . 430
BASIC RULES OF MIRROR IMAGE . . . . 409 Parts Counter . . . . . . . . . . . . . . . . . 431
Toolpath Direction . . . . . . . . . . . . . . . 409 Pull-Out Finger . . . . . . . . . . . . . . . . 431
Original Toolpath. . . . . . . . . . . . . . . . 410 PROGRAMMING EXAMPLE . . . . . . 431
Mirror Axis . . . . . . . . . . . . . . . . . . 410
Sign of Coordinates . . . . . . . . . . . . . . 410
Milling Direction . . . . . . . . . . . . . . . . 411 45 - HELICAL MILLING 433
Arc Motion Direction . . . . . . . . . . . . . . 411
Program Start and End . . . . . . . . . . . . . 411 HELICAL MILLING OPERATION . . . . . 433
MIRROR IMAGE BY SETTING . . . . . 411 Helical Interpolation . . . . . . . . . . . . . . 433
Control Setting . . . . . . . . . . . . . . . . 411 Programming Format . . . . . . . . . . . . . . 433
Programming - Manual Mirror Setting . . . . . . . 412 Arc Vectors for Helical Interpolation . . . . . . . . 434
Applications and Usage . . . . . . . . . . . . . 434
PROGRAMMABLE MIRROR IMAGE . . . . 412
Mirror Image Functions . . . . . . . . . . . . . 412 THREAD MILLING . . . . . . . . 434
Simple Mirror Image Example . . . . . . . . . . 413 Applying Thread Milling . . . . . . . . . . . . . 434
Complete Mirror Image Example . . . . . . . . . 414 Conditions for Thread Milling . . . . . . . . . . . 434
Thread Milling Tool . . . . . . . . . . . . . . . 435
MIRROR IMAGE ON CNC LATHES . . . . 414 Premachining Requirements . . . . . . . . . . . 435
Clearance Radius . . . . . . . . . . . . . . . 435
42 - COORDINATE ROTATION 415 Productivity of Thread Milling. . . . . . . . . . . 435
THE HELIX . . . . . . . . . . 435
ROTATION COMMANDS . . . . . . 415 THREAD MILLING EXAMPLE . . . . . 437
Center of Rotation . . . . . . . . . . . . . . . 415 Straight Thread . . . . . . . . . . . . . . . . 437
Radius of Rotation . . . . . . . . . . . . . . . 415 Initial Calculations . . . . . . . . . . . . . . . 437
Coordinate Rotation Cancel . . . . . . . . . . . 417 Starting Position . . . . . . . . . . . . . . . . 438
Common Applications . . . . . . . . . . . . . 417 Motion Rotation and Direction . . . . . . . . . . 438
PRACTICAL APPLICATION . . . . . . 417 Lead-In Motions . . . . . . . . . . . . . . . . 440
Thread Rise Calculation . . . . . . . . . . . . . 441
Milling the Thread . . . . . . . . . . . . . . . 441
43 - SCALING FUNCTION 421 Lead-Out Motions . . . . . . . . . . . . . . . 442
Complete Program . . . . . . . . . . . . . . . 442
DESCRIPTION . . . . . . . . . 421 External Thread Milling . . . . . . . . . . . . . 442
Scaling Function Usage . . . . . . . . . . . . . 421 Tapered Thread Milling . . . . . . . . . . . . . 442
Further Considerations . . . . . . . . . . . . . 443
PROGRAMMING FORMAT . . . . . . 421
THREAD MILLING SIMULATION METHOD . . 443
Scaling Center . . . . . . . . . . . . . . . . 422
Scaling Factor . . . . . . . . . . . . . . . . . 422 HELICAL RAMPING . . . . . . . . 444
Rounding Errors in Scaling . . . . . . . . . . . . 423
PROGRAM EXAMPLES . . . . . . . 423 46 - HORIZONTAL MACHINING 445

44 - CNC LATHE ACCESSORIES 425 INDEXING AND ROTARY AXES . . . . . 445


INDEXING TABLE (B-AXIS) . . . . . . 445
CHUCK CONTROL . . . . . . . . 425 Units of Increment . . . . . . . . . . . . . . . 445
Chuck Functions . . . . . . . . . . . . . . . . 425 Direction of Indexing . . . . . . . . . . . . . . 446
Chucking Pressure . . . . . . . . . . . . . . . 426 Table Clamp and Unclamp Functions . . . . . . . . 446
Chuck Jaws . . . . . . . . . . . . . . . . . 426 Indexing in Absolute and Incremental Mode . . . . . 446
TAILSTOCK AND QUILL . . . . . . . 426 B-AXIS AND OFFSETS . . . . . . . 447
Tailstock Body. . . . . . . . . . . . . . . . . 426 Work Offset and B-axis . . . . . . . . . . . . . 447
Quill. . . . . . . . . . . . . . . . . . . . . 427 Tool Length Offset and B-axis . . . . . . . . . . 448
Center . . . . . . . . . . . . . . . . . . . . 427 RETURN TO MACHINE ZERO . . . . . 450
Quill Functions . . . . . . . . . . . . . . . . 427
Programmable Tailstock . . . . . . . . . . . . . 427 INDEXING AND A SUBPROGRAM . . . . 450
Safety Concerns . . . . . . . . . . . . . . . . 427 COMPLETE PROGRAM EXAMPLE . . . . 452
BI-DIRECTIONAL TURRET INDEXING . . . 428 AUTOMATIC PALLET CHANGER - APC . . . 453
Programming Example . . . . . . . . . . . . . 428 Working Environment . . . . . . . . . . . . . . 454
BARFEEDER ATTACHMENT . . . . . . 429 Types of Pallets . . . . . . . . . . . . . . . . 454
Programming Commands . . . . . . . . . . . . 455
Bar Stopper. . . . . . . . . . . . . . . . . . 429
Pallet Changing Program Structure . . . . . . . . 455
Table of Contents xix

HORIZONTAL BORING MILL . . . . . 455


50 - PROGRAM VERIFICATION 479
47 - LIVE TOOLING ON LATHES 457 DETECTION OF ERRORS . . . . . . 479
Preventive Measures . . . . . . . . . . . . . . 479
TURN-MILL OR MILL-TURN . . . . . . 457 Corrective Measures . . . . . . . . . . . . . . 479
Programming Issues . . . . . . . . . . . . . . 457
General Terms. . . . . . . . . . . . . . . . . 457 GRAPHIC VERIFICATION . . . . . . 480
MACHINE DESIGN . . . . . . . . 458 AVOIDING ERRORS . . . . . . . . 480
Features . . . . . . . . . . . . . . . . . . . 458 Syntax Errors . . . . . . . . . . . . . . . . . 481
Benefits . . . . . . . . . . . . . . . . . . . 458 Logical Errors . . . . . . . . . . . . . . . . . 481

C-AXIS PROGRAMMING . . . . . . 458 COMMON PROGRAMMING ERRORS . . . 482


XZ + C Axes . . . . . . . . . . . . . . . . . 458 Program Input Errors . . . . . . . . . . . . . . 482
Calculation Errors . . . . . . . . . . . . . . . 482
FIXED CYCLES . . . . . . . . . 459 Hardware Errors . . . . . . . . . . . . . . . . 482
M-functions and C-axis . . . . . . . . . . . . . 460 Miscellaneous Errors . . . . . . . . . . . . . . 482
Drilling on Face . . . . . . . . . . . . . . . . 460
Drilling on Diameter . . . . . . . . . . . . . . 461
General Considerations . . . . . . . . . . . . . 461 51 - CNC MACHINING 483
Y-AXIS PROGRAMMING. . . . . . . 462 MACHINING A NEW PART . . . . . . 483
Plane Selection . . . . . . . . . . . . . . . . 463
Setup Integrity . . . . . . . . . . . . . . . . 484
Additional Axes . . . . . . . . . . . . . . . . 463
Program Integrity . . . . . . . . . . . . . . . 484
POLAR COORDINATE INTERPOLATION . . 463 RUNNING THE FIRST PART . . . . . . 485
Polar Coordinate Mode . . . . . . . . . . . . . 463
Approximation Method . . . . . . . . . . . . . 464 PROGRAM CHANGES . . . . . . . 486
Program Upgrading . . . . . . . . . . . . . . 486
CYLINDRICAL INTERPOLATION . . . . 465 Program Updating . . . . . . . . . . . . . . . 487
Z + C-axis . . . . . . . . . . . . . . . . . . 465 Documentation Change . . . . . . . . . . . . . 487
Practical Example . . . . . . . . . . . . . . . 465
ALTERNATE MACHINE SELECTION . . . 487
MACHINE WARM UP PROGRAM . . . . 488
48 - WRITING A CNC PROGRAM 467
CNC MACHINING AND SAFETY. . . . . 488
PROGRAM WRITING . . . . . . . . 467 SHUTTING DOWN A CNC MACHINE . . . 489
Legibility of Handwriting. . . . . . . . . . . . . 468 Emergency Stop Switch . . . . . . . . . . . . . 489
Programming Forms . . . . . . . . . . . . . . 468 Parking Machine Slides . . . . . . . . . . . . . 490
Confusing Characters . . . . . . . . . . . . . . 468 Setting the Control System . . . . . . . . . . . 490
Turning the Power Off . . . . . . . . . . . . . 490
PROGRAM OUTPUT FORMATTING . . . . 469
LONG PROGRAMS . . . . . . . . 471 EQUIPMENT MAINTENANCE . . . . . 490
Program Length Reduction. . . . . . . . . . . . 471
Memory Mode and Tape Mode . . . . . . . . . . 472 52 - INTERFACING TO DEVICES 491

49 - PROGRAM DOCUMENTS 473 RS-232C INTERFACE. . . . . . . . 491


PUNCHED TAPE . . . . . . . . . 492
DATA FILES . . . . . . . . . . 473 Tape Reader and Puncher . . . . . . . . . . . . 492
Leader and Trailer . . . . . . . . . . . . . . . 494
PROGRAM DOCUMENTATION . . . . . 474
Tape Identification . . . . . . . . . . . . . . . 494
External Documentation . . . . . . . . . . . . . 474 Non-printable Characters . . . . . . . . . . . . 494
Internal Documentation . . . . . . . . . . . . . 474 Storage and Handling . . . . . . . . . . . . . . 494
Program Description . . . . . . . . . . . . . . 475
DISTRIBUTED NUMERICAL CONTROL . . . 494
SETUP AND TOOLING SHEETS . . . . . 475
Setup Sheet . . . . . . . . . . . . . . . . . 476
TERMINOLOGY OF COMMUNICATIONS . . 495
Tooling Sheet . . . . . . . . . . . . . . . . . 476 Baud Rate . . . . . . . . . . . . . . . . . . 495
Coordinate Sheet . . . . . . . . . . . . . . . 477 Parity . . . . . . . . . . . . . . . . . . . . 495
Data Bits . . . . . . . . . . . . . . . . . . . 495
DOCUMENTATION FILE FOLDER . . . . 477 Start and Stop Bits . . . . . . . . . . . . . . . 495
Identification Methods . . . . . . . . . . . . . 477
Operator’s Suggestions . . . . . . . . . . . . . 478
DATA SETTING . . . . . . . . . 495
Filing and Storage . . . . . . . . . . . . . . . 478 CONNECTING CABLES . . . . . . . 496
Null Modem . . . . . . . . . . . . . . . . . 496
Cabling for Fanuc and PC . . . . . . . . . . . . 496
xx Table of Contents

POST PROCESSORS . . . . . . . . 514


53 - MATH IN CNC PROGRAMMING 497 Customizing Post Processor . . . . . . . . . . . 514

BASIC ELEMENTS . . . . . . . . 497 IMPORTANT FEATURES . . . . . . . 515


Input from User . . . . . . . . . . . . . . . . 515
Arithmetic and Algebra . . . . . . . . . . . . . 497
Machining Cycles . . . . . . . . . . . . . . . 515
Order of Calculations . . . . . . . . . . . . . . 497
User Interface . . . . . . . . . . . . . . . . . 515
GEOMETRY . . . . . . . . . . 498 CAD Interface . . . . . . . . . . . . . . . . . 515
Circle . . . . . . . . . . . . . . . . . . . . 498 SUPPORT AND MANAGEMENT . . . . . 515
PI Constant . . . . . . . . . . . . . . . . . . 499
Training . . . . . . . . . . . . . . . . . . . 516
Circumference of a Circle . . . . . . . . . . . . 499
System Management . . . . . . . . . . . . . . 516
Length of Arc . . . . . . . . . . . . . . . . . 499
Technical Support . . . . . . . . . . . . . . . 516
Quadrants . . . . . . . . . . . . . . . . . . 499
POLYGONS . . . . . . . . . . 500 THE END AND THE BEGINNING . . . . 516
TAPERS . . . . . . . . . . . 501
Taper Definition . . . . . . . . . . . . . . . . 501 A - REFERENCE TABLES 517
Taper Per Foot. . . . . . . . . . . . . . . . . 502
Taper Ratio . . . . . . . . . . . . . . . . . . 502 Decimal Equivalents . . . . . . . . 517
Taper Calculations - Imperial Units . . . . . . . . . 502 Imperial Threads - UNC/UNF . . . . . 520
Taper Calculations - Metric Units . . . . . . . . . 502
Straight Pipe Taps NPS . . . . . . . 520
CALCULATIONS OF TRIANGLES . . . . 503
Types of Angles and Triangles . . . . . . . . . . 503
Taper Pipe Taps NPT. . . . . . . . 521
Right Triangles . . . . . . . . . . . . . . . . 504 Metric Coarse Threads . . . . . . . 521
Similar Triangles . . . . . . . . . . . . . . . . 504 Metric Fine Threads . . . . . . . . 521
Sine - Cosine - Tangent . . . . . . . . . . . . . 505
Inverse Trigonometric Functions . . . . . . . . . 506
Degrees and Decimal Degrees . . . . . . . . . . 506 B - SPEEDS AND FEEDS 523
Pythagorean Theorem . . . . . . . . . . . . . 506
Solving Right Triangles . . . . . . . . . . . . . 507 SURFACE SPEED AND SPINDLE SPEED . . 523
ADVANCED CALCULATIONS . . . . . 508 CHIPLOAD . . . . . . . . . . 524
CONCLUSION . . . . . . . . . 508 BASIC FORMULAS . . . . . . . . 524
RELATED FORMULAS . . . . . . . 524
54 - CNC AND CAD/CAM 509 Tapping Feedrate . . . . . . . . . . . . . . . 524
Z-depth for Spot Drilling . . . . . . . . . . . . . 524
PROGRAMMING MANUALLY ? . . . . . 509 Z-depth for Drilling (Through Hole) . . . . . . . . . 525
CAM Software . . . . . . . . . . . . . . . . 509 Dwell Time Calculation . . . . . . . . . . . . . 525
Desktop Computer Programming . . . . . . . . . 509 Cutting Time . . . . . . . . . . . . . . . . . 525
TOOLPATH GEOMETRY DEVELOPMENT . . 510
TOOL PATH GENERATION . . . . . . 510 C - NCPlot FEATURES 527
COMPLETE ENVIRONMENT. . . . . . 510
Full Featured Text Editor . . . . . . 527
Multi Machine Support . . . . . . . . . . . . . 511
Associative Operations . . . . . . . . . . . . . 511 Program Formatting Tools . . . . . . 527
Job Setup . . . . . . . . . . . . . . . . . . 511 Program Translation Tools . . . . . . 527
Tooling List and Job Comments. . . . . . . . . . 511
Connection Between Computers . . . . . . . . . 511 Advanced G-code Backplotter . . . . . 527
Program Text Editor . . . . . . . . . . . . . . 512 Flexible Viewport Controls . . . . . . 528
Printing Capabilities . . . . . . . . . . . . . . 512
View Controls . . . . . . . . . 528
Pen Plotting . . . . . . . . . . . . . . . . . 512
CAD Software Access . . . . . . . . . . . . . 512 Calc Tools . . . . . . . . . . 528
Support for Solids . . . . . . . . . . . . . . . 512 DXF Importing / Exporting . . . . . . 528
Software Specifications . . . . . . . . . . . . . 513
Hardware Specifications. . . . . . . . . . . . . 513 Other Tools . . . . . . . . . . 528
Typical Hardware / Software Requirements . . . . . 514
Utilities and Special Features . . . . . . . . . . . 514
Index . . . . . . . . . . 529
1 NUMERICAL CONTROL

Numerical Control technology as known today, emerged u NC and CNC Technology


in the mid 20th century. It can be traced to the year of 1952,
the U.S. Air Force, Massachusetts Institute of Technology In strict adherence to terminology, there is a difference in
in Cambridge, MA, USA, and the name of John Parsons the meaning of abbreviations NC and CNC. The NC stands
(1913-2007), who is closely associated with the invention for the older and original Numerical Control technology,
of numerical control. It was not applied in production man- whereby the abbreviation CNC stands for the newer Com-
ufacturing until the early 1960’s. The real boom came in puterized Numerical Control technology - a modern suc-
the form of CNC, around the year of 1972, and a decade cessor to its older relative. However, in everyday practice,
later with the introduction of affordable micro computers. CNC is the preferred abbreviation. To clarify the proper us-
History and development of this fascinating technology age of each term, look at the major differences between NC
has been well documented in many publications. and CNC systems.

In manufacturing field, and particularly in the area of Both systems perform the same tasks, namely manipula-
metal working, Numerical Control technology has caused tion of data for the sole purpose of machining a part. In
something of a revolution. Even in the days before comput- both cases, the control system internal design contains all
ers became standard fixtures in every company and many logical instructions that process the input data. At this point
homes, machine tools equipped with Numerical Control the similarity ends.
system found their special place in many machine shops. The NC system (as opposed to the CNC system) uses a
The relatively recent evolution of micro electronics and the fixed logical functions, those that are built-in and perma-
never ceasing computer development, including its impact nently wired within the control unit. These functions can-
on Numerical Control, has brought enormously significant not be changed by the part programmer or the machine op-
changes to manufacturing sector in general and metal- erator. Because of the fixed wiring of control logic, NC
working industry in particular. control system is synonymous with the term ‘hardwired’.
The system can interpret a part program, but it does not al-
DEFINITION OF NUMERICAL CONTROL low any changes to the program at the control (using the
control features). All required program changes must be
In various publications and articles, many descriptions made away from the control, typically in an office environ-
have been used during the years, to define what Numerical ment. Also, NC system typically requires the compulsory
Control actually is. It would be pointless to try to find yet use of punched tapes for input of the program information.
another definition, just for the purpose of this handbook. The modern CNC system (but not the old NC system),
Many of these definitions share the same idea, same basic uses an internal micro processor (i.e., a computer). This
concept, just use different wording. computer contains memory registers storing a variety of
The majority of all the known definitions can be summed routines that are capable of manipulating logical functions.
up into a relatively simple statement: That means the part programmer or machine operator can
change any program at the control unit (at the machine),
Numerical Control can be defined as an operation of with instantaneous results. This flexibility is the greatest
machine tools by means of specifically coded advantage of CNC systems and probably the key element
instructions to the machine control system that contributed to such a wide use of the technology in
modern manufacturing. Typically, CNC programs and the
The 'specifically coded instructions' are combinations of logical functions are stored on special computer chips, as
the letters of alphabet, digits and selected symbols, for ex- software instructions, rather than used by the hardware
ample, a decimal point, the percent sign, or the parenthesis connections, such as wires, that control the logical func-
symbols. All instructions are written in a logical order and tions. In contrast to the NC system, the CNC system is syn-
in predetermined form. The collection of all instructions onymous with the term ‘softwired’.
necessary to machine a single part or operation is called an When describing a particular subject that relates to nu-
NC Program, CNC Program, or a Part Program. Such a merical control technology, it is customary to use either the
program can be stored for future use and used repeatedly to term NC or CNC. Keep in mind that NC can also mean
achieve identical machining results at any time. CNC in everyday talk, but CNC can never refer to the older

1
2 Chapter 1

technology, described in this handbook under the abbrevia- typical problems encountered in conventional machining.
tion of NC. The letter ‘C’stands for Computerized, and it is Individual machinists may have their own 'time proven’
not applicable to the hardwired system. All control systems methods, different from those of their fellow colleagues.
manufactured today are of the CNC design. Abbreviations Combination of these and other factors create a large field
such as C&C or C’n’C are not correct and reflect poorly on of inconsistency.
anybody that uses them.
Machining under numerical control does away with the
majority of inconsistencies. It does not require the same
CONVENTIONAL AND CNC MACHINING physical involvement as manual machining. Numerically
controlled machining does not need any levers or dials or
What makes CNC machining methods superior to con- handles, at least not in the same sense as conventional ma-
ventional methods? Are they superior at all? Where are the chining. Once the part program has been proven, it can be
main benefits? While comparing CNC and conventional used any number of times over, always returning consistent
machining processes, common general approach to ma- results. That does not mean there are no limiting factors.
chining a typical part will emerge: Cutting tools do wear out, material blank in one batch is not
identical to the material blank in another batch, setups may
1. Obtain and study the engineering drawing vary, etc. These factors should be considered and compen-
2. Select the most suitable machining method sated for, whenever necessary.
3. Decide on the setup method (work holding)
4. Select cutting tools and holders Emergence of numerical control technology does not
5. Establish spindle speeds and cutting feedrates mean an instant - or even a long term - demise of all manual
6. Machine the part machines. There are times when a traditional machining
method is preferable to a computerized method. For exam-
This general approach is the same for both types of ma- ple, a simple one time job may be done more efficiently on
chining. One major difference is how various data are in- a manual machine than on a CNC machine. Certain types
put. A feedrate of 10 inches per minute (10 in/min) is the of machining jobs will benefit from manual, semiautomatic
same in manual or CNC applications, but the method of ap- or automatic machining, rather than machining under nu-
plying it is not. The same can be said about a coolant - it can merical control. CNC machine tools are not meant to re-
be activated by physically turning a knob, pushing a switch place every manual machine, only to supplement them.
or programming a special code. All these actions will result
in coolant rushing out of a nozzle. In both kinds of machin- In many instances, the decision whether certain machin-
ing, a certain amount of knowledge by the user is required. ing will be done on a CNC machine or not is based on the
After all, metal working, and metal cutting specifically, is number of required parts and nothing else. Although the
mainly a skill, but it is also, to a great degree, an art and a volume of parts machined as a batch is always an important
profession of large number of people. So is the application criteria, it should never be the only factor. Consideration
of Computerized Numerical Control. Like any skill, or art, should also be given to the part complexity, its tolerances,
or profession, mastering it to the last detail is necessary to the required quality of surface finish, etc. Often, a single
be successful. It takes a lot more than just technical knowl- complex part will benefit from CNC machining, while fifty
edge to be a CNC machinist, operator or CNC programmer. relatively simple parts will not.
Work experience, intuition, and what is sometimes called a
‘gut-feel’, are much needed supplements to any skill. Keep in mind that numerical control has never machined
a single part by itself. Numerical control is only a process
In conventional machining, the operator sets up the ma- or a method that enables a machine tool to be used in a pro-
chine and moves each cutting tool, using one or both ductive, accurate and consistent way.
hands, to produce the required part. Design of a manual
machine tool offers many features that help the process of
machining a part - levers, handles, gears and dials, to name
NUMERICAL CONTROL ADVANTAGES
just a few. The same body motions are repeated by the op-
erator for every part machined. However, the word ‘same’ What are the main advantages of numerical control?
in this context really means ‘similar’rather than ‘identical’.
Humans are not capable to repeat every process exactly the It is important to establish which areas of machining will
same at all times - that is the job of machines. People can- benefit from it and which are better done the conventional
not work at the same performance level all the time, with- way. It is absurd to think that a two horse power CNC mill
out a rest. All of us have some good and some bad mo- will win over jobs that are currently done on a twenty times
ments. Such moments, when applied to machining a part, more powerful manual mill. Equally unreasonable are ex-
are difficult to predict. There will always be some differ- pectations of super improvements in cutting speeds and
ences and inconsistencies within each batch of parts. Parts feedrates over a conventional machine. If the machining
will not always be exactly the same. Maintaining dimen- and tooling conditions are the same, the total cutting time
sional tolerances and surface finish quality are the most will always be very close in both cases.
NUMERICAL CONTROL 3

A list of some major areas where CNC users can and Long lead time, required to design and manufacture sev-
should expect improvement includes: eral special fixtures for conventional machines, can often
be reduced by using simplified fixturing.
n Setup time reduction
n Lead time reduction u Accuracy and Repeatability
n Accuracy and repeatability The high degree of accuracy and repeatability of modern
n Contouring of complex shapes CNC machines has been the single major benefit to many
users. Whether part program is stored on a disk or in the
n Simplified tooling and work holding computer memory, or even on a tape (the original method,
n Consistent cutting time now obsolete), it always remains the same. Any program
can be changed at will, but once proven, no changes are
n General productivity increase usually required any more. A given program can be reused
Each area offers only a potential improvement. Individ- as many times as needed, without losing a single bit of data
ual CNC users will experience different levels of actual it contains. True, program has to allow for such changeable
improvement, depending on the product manufactured, factors as tool wear and operating temperatures, it has to be
CNC machine used, setup methods applied, complexity of stored safely, but generally very little interference from the
fixturing, quality of cutting tools, management philosophy CNC programmer or operator will be required. The accu-
and engineering design, experience level of the workforce, racy of modern CNC machines and their repeatability al-
individual attitudes, and many others. lows high quality parts to be produced consistently, time
after time.
u Setup Time Reduction u Contouring of Complex Shapes
In many cases, actual setup times for CNC machines can
be reduced, sometimes quite dramatically. It is important to CNC lathes and machining centers are capable of con-
realize that setup is a manual operation, greatly dependent touring a large variety of different shapes. Many CNC us-
on the performance of CNC operators, the type of fixturing ers acquired their machines only to be able to handle com-
and general machine shop practices. Setup time is unpro- plex parts. A good examples are CNC applications in the
ductive, but necessary - it is part of the overall costs of do- aircraft and automotive industries. Any use of some kind of
ing business. To keep setup time to minimum should be the computerized programming is virtually mandatory for any
primary consideration of any machine shop supervisor, three dimensional tool path generation.
programmer and operator. Complex shapes, such as molds, manifolds, dies, etc., can
Because of the design of CNC machines, real setup time be manufactured without the additional expense of making
should not be a major problem. Modular fixturing, stan- a model for tracing. Mirrored parts can be achieved literally
dardized tooling, fixed locators, automatic tool changing, at the switch of a button. Storage of part programs is a lot
pallets, and other advanced features, make the setup time simpler than storage of paper patterns, templates, wooden
more efficient than a comparable setup of conventional models, and other pattern making tools.
machines. With good knowledge of modern manufactur-
u Simplified Tooling and Work Holding
ing, productivity can be increased quite significantly.
The number of parts machined in a single setup is also Non-standard and ‘homemade’ tooling that clutters the
important, in order to assess the actual cost of setup time. If benches and drawers around a conventional machine can
a great number of parts is machined in one setup, the setup be eliminated by using standard tooling, specially designed
cost per part can be rather insignificant. A very similar re- for numerical control applications. Multi-step tools such as
duction can be achieved by grouping several different op- pilot drills, step drills, combination tools, counter borers
erations into a single setup. Even if the setup time is longer, and others, are replaced with several individual standard
it may be justified when compared to the time required to tools. These tools are often cheaper and easier to replace
setup several conventional machines and operations. than special and non-standard tools. Cost-cutting measures
have forced many tool suppliers to keep a low or even a
u Lead Time Reduction nonexistent inventory, while increasing delivery time to the
customer. Standard, off-the-shelf tooling can usually be
Once a part program is written and proven correct, it is obtained faster then non-standard tooling.
ready to be used again in the future, even at a short notice.
Although the first run lead time is usually longer, it is virtu- Fixturing and work holding for CNC machines have only
ally nil for all subsequent runs. Even if an engineering one major purpose - to hold the part rigidly and in the same
change of the part design requires program modification, it position for all parts within a batch. Fixtures designed for
can be done usually quickly, reducing the lead time. CNC work do not normally require special jigs, pilot holes
and other hole locating aids.
4 Chapter 1

u Cutting Time and Productivity Increase n Boring mills and Profilers


Cutting time on a CNC machine is commonly known as n EDM wire machines
the cycle time - and is always consistent. Unlike a conven- n Punch presses and Shears
tional machining, where the operator’s skill, experience
and personal fatigue are subject to changes, CNC machin- n Flame cutting machines
ing is under the control of a computer. Only a small amount n Routers
of manual work is restricted to the setup and part loading
and unloading. For large batch runs, the high cost of unpro- n Water jet and Laser profilers
ductive time is spread among many parts, making it less n Cylindrical grinders
significant. The main benefit of a consistent cutting time is
for repetitive jobs, where production scheduling and work n Welding machines
allocation to individual machine tools can be done very ef- n Benders, Winding and Spinning machines, etc.
ficiently and accurately.
Without a doubt, CNC machining centers and lathes
One of the main reasons companies often purchase CNC dominate the number of installations in industry. These two
machines is strictly economic - it is a serious investment groups share the market just about equally. Some industries
with great potential. Also, having a competitive edge is al- may have a higher need for a particular type of machines,
ways on the mind of every plant manager. Numerical depending on their needs. One must remember there are
control technology offers excellent means to achieve sig- many models of lathes available and equally many differ-
nificant improvements in manufacturing productivity and ent models of machining centers. However, the program-
increasing the overall quality of manufactured parts. Like ming process for a vertical machine is similar to the one for
any means to an end, it has to be used wisely and knowl- a horizontal machine or even a simple CNC mill, for
edgeably. When more and more companies use CNC tech- example. Even between different machine groups, there is
nology, just having a CNC machine does not offer the extra a great amount of general applications, while the program-
edge anymore. Companies that grow and get forward are ming process is generally unchanged. For example, a con-
those where the use of technology is managed efficiently, tour milled with an end mill has a lot in common with a
with the goal to be competitive in the global economy. contour cut with a wire on an EDM machine.
To reach the goal of major increase in productivity, it is
u Mills and Machining Centers
essential that users understand the fundamental principles
on which CNC technology is based. These principles take Minimum number of axes on a milling machine is three -
many forms, for example, understanding the electronic cir- the X, Y and Z axes. Part set on a milling machine is always
cuitry, complex ladder diagrams, computer logic, metrol- stationary, mounted on a moving machine table. The cut-
ogy, machine design, machining principles and practices, ting tool rotates, it can move up and down (or in and out),
and many others. Each discipline has to be studied and but it does not physically follow the tool path.
mastered by all persons in charge. In this handbook, the
main emphasis is on topics relating directly to CNC pro- CNC mills - sometimes called CNC milling machines -
gramming and understanding the most common CNC ma- are usually small, simple machines, without a tool changer
chines - Machining Centers and Lathes (sometimes called or other automatic features. Their power rating is often low.
Turning Centers). Part quality consideration should be In industry, they are used for toolroom work, maintenance
very important to every programmer and machine operator purposes, or small part production. They are usually de-
and this goal is also reflected in the handbook approach as signed for simple contouring, unlike CNC drills.
well as in numerous examples.
CNC machining centers are far more popular and effi-
cient than drills and mills, mainly for their flexibility. The
TYPES OF CNC MACHINE TOOLS main benefit users get out of a CNC machining center is the
ability to group several diverse operations into a single
Different types of CNC machines cover rather large vari- setup. For example, drilling, boring, counter boring, tap-
ety. Number of installations is rapidly increasing, and the ping, spot facing and contour milling can be incorporated
technology development advances at a rapid pace. It is into a single CNC program operation. In addition, the flexi-
impossible to identify all possible applications, they would bility is enhanced by automatic tool changing, using pallets
make a long list. Here is a brief list of some of the groups to minimize idle time, indexing to a different face of the
CNC machines can be part of: part, using a rotary movement of additional axes, and num-
ber of other time saving features. CNC machining centers
n Mills and Machining centers can be equipped with special software that controls cutting
n Lathes and Turning centers speeds and feeds, life of the cutting tool, automatic in-pro-
cess gauging, broken tool detection, offset adjustment and
n Drilling machines other production enhancing and time saving devices.
NUMERICAL CONTROL 5

There are two basic designs of a typical CNC machining PERSONNEL FOR CNC
center. They are vertical and horizontal machining centers.
The major difference between the two types is the nature of
work that can be done on them efficiently. For a vertical Computers and machine tools have no intelligence. They
CNC machining center, the most suitable type of work are cannot think, they cannot evaluate a situation in a rational
flat parts, either mounted to the table fixture, or held in a way. Only people with certain skills and knowledge can do
vise or a chuck. The work that requires machining on two that. In the field of numerical control, the skills are usually
or more faces (sides) in a single setup is more desirable to in the hands of two key people - one doing the program-
be done on a CNC horizontal machining center. A good ex- ming, the other doing the actual setup and machining. Their
ample is a pump housing and other cubic-like shapes, often respective numbers and duties typically depend on com-
irregular. Some multi-face machining of small parts can pany preferences, its size, as well as the product manufac-
also be done on a CNC vertical machining center equipped tured there. However, each position is quite distinct, al-
with a rotary table. though many companies combine the two functions into a
one, often called a CNC Programmer/Operator.
Programming process is the same, but an additional axis
(usually B axis) is added to the horizontal version. This u CNC Programmer
axis is either a simple table positioning axis (indexing
axis), or a fully rotary axis for simultaneous contouring. CNC programmer is usually a person who has the most
responsibility in the CNC machine shop. This person is of-
This handbook concentrates on CNC vertical machining ten responsible for the success of numerical control tech-
centers applications, with a special section dealing with the nology in whole the plant. Equally, this person is also held
uniqueness of horizontal setup and machining. Suggested responsible for problems related to CNC and related opera-
programming methods are also applicable to small CNC tions. Although duties may vary, the programmer is also re-
mills or drilling and/or tapping machines, but the part pro- sponsible for a variety of tasks relating to the effective us-
grammer has to consider their often severe restrictions. age of one or more CNC machines. In fact, this person is
often accountable for the production and quality parts from
u Lathes and Turning Centers all CNC operations.
A CNC lathe in its basic form is a machine tool with two Many CNC programmers are experienced machinists
axes, vertical X axis and horizontal Z axis. The main fea- who have had a practical, hands-on experience as machine
ture of a lathe that distinguishes it from a mill is that the part tool operators. They know how to read technical drawings
is rotating about the machine center line. In addition, the and they can comprehend engineering intent behind the de-
cutting tool is normally stationary, mounted in a sliding tur- sign. This practical experience is the main foundation for
ret. Cutting tool follows the contour of the programmed the ability to ‘machine’ a part in an off-machine environ-
tool path. Many modern CNC lathes are much more than ment. A good CNC programmer must be able to visualize
just turning centers - with a simple milling attachment, the all tool motions and recognize all restricting factors that
so called live tooling, the milling cutter has its own motor may be involved. The programmer must be able to collect,
and rotates while the spindle is stationary. More complex analyze, process and logically integrate all collected data
designs incorporate off-center milling, double spindles, into a single, cohesive and safe part program. In simple
double turrets, part transfer, and many other efficiency im- terms, the CNC programmer must be able to decide upon
proving features. These machines are generally called the the best manufacturing methodology in all respects.
mill-turn centers or sometimes the turn-mill centers.
In addition to machining skills, the CNC programmer has
Modern lathe design can be horizontal or vertical. Hori- to have a good understanding of mathematical principles,
zontal type is far more common than vertical type, but both mainly application of equations, solution of arcs and an-
designs have their purpose in manufacturing. Several dif- gles. Equally important is the knowledge of trigonometry.
ferent designs exist for either group. For example, a typical Even with computerized programming, the knowledge of
CNC lathe of the horizontal group can be designed with a manual programming methods is absolutely essential to
flat bed or a slant bed, as a bar type, chucker type or a uni- deep and thorough understanding of computer output and
versal type. Added to these combinations are many acces- to assure control over such output.
sories that make a CNC lathe an extremely flexible ma-
chine tool. Typically, accessories such as tailstock, steady The last important quality of a truly professional CNC
rests or follow-up rests, part catchers, pullout-fingers and a programmer is his or her ability to listen to other people -
third axis milling attachment are popular components of the engineers, CNC operators, managers. Good listening
CNC lathes. A CNC lathe can be very versatile - so versa- skills are the first prerequisites to become flexible. Any
tile in fact, that it is often called a CNC Turning Center. All professional CNC programmer must be flexible in order to
text and program examples in this handbook use the more offer high quality in programming.
traditional term CNC lathe, yet still recognizing all its mod-
ern functions.
6 Chapter 1

u CNC Machine Operator are based on past tragic occurrences - many laws, rules and
The CNC machine tool operator is a complementary po- regulations have been written as a result of inquests and in-
sition to that of CNC programmer. The programmer and quiries into serious accidents.
the operator may exist in a single person, as is common in At first sight, it may seem that in CNC work, safety is a
many smaller shops. Although the majority of duties per- secondary issue, not as important as in manual machining.
formed by a conventional machine operator has been trans- There is a lot of automation in CNC, a part program that is
ferred to CNC programmer, CNC operator also has many used over and over again, tooling that has been used in the
unique responsibilities. In typical cases, the operator is re- past, a simple setup, etc. All this can lead to complacency
sponsible for tool and machine setup, for changing of com- and false assumption that safety is taken care of. This is a
pleted parts, often even for some in-process inspection. wrong view that can have serious consequences.
Many companies expect quality control at the machine -
and the operator of any machine tool, manual or computer- Safety is quite a large subject but a few points that relate
ized, is also responsible for the quality of work done on that to CNC environment are very important. Every machinist
machine. One of the most important responsibilities of should know the hazards of mechanical and electrical de-
CNC machine operator is to report findings about each pro- vices. The first step towards a safe work place is with a
gram to the programmer. Even with the best knowledge, clean work area, where no chips, oil spills and other debris
skills, attitudes and good intentions, the ‘final’program can are allowed to accumulate on the floor. Taking care of per-
always be improved. CNC operator, being the one who is sonal safety is equally important. Loose clothing, jewelry,
the closest to actual machining, knows precisely what ex- ties, scarfs, unprotected long hair, improper use of gloves
tent such improvements can be. and similar infractions, is dangerous in any machining en-
vironment. Protection of one's eyes, ears, hands and feet is
SAFETY RELATED TO CNC WORK strongly recommended.
While a machine is operating, protective devices should
On the walls of many machine shops may hang a safety be in place and no moving parts should be exposed. Special
poster with a simple, yet very powerful message: care should be taken around rotating spindles and auto-
matic tool changers. Other devices that could pose a hazard
The first rule of safety is to follow all safety rules are pallet changers, chip conveyors, high voltage areas,
hoists, etc. Disconnecting any interlocks or other safety
The heading of this section does not indicate whether features is dangerous - and also illegal, without appropriate
safety is oriented at the programming or the machining skills and authorization.
level. There is no reason for it - safety is totally independ- Modern technology has brought machines that may have
ent. It stands on its own and it governs behavior and activi- nine or more axes, tight work areas, special tool indexing,
ties of everybody in machine shop and outside of it. At first part transfers, etc. While these features dramatically in-
sight, it may appear that safety is something related to ma- crease company productivity, they also require additional
chining and machine operations, perhaps to the machine safety training - and practicing all safety rules.
setup as well. That is definitely true but hardly presents a
complete picture. In CNC programming (manual or computer based), ob-
servation of safety rules is equally important. A tool motion
Safety is the most important element in programming, can be programmed in many ways. Speeds and feeds have
setup, machining, tooling, fixturing, inspection, shipping, to be realistic, not just mathematically ‘correct’. Depth of
and you-name-it operation within a typical machine shop cut, width of cut, various tool characteristics, they all have
daily work. Safety should never be compromised and can- a profound effect on overall safety in the shop.
not be overemphasized. Companies talk about safety, con-
duct safety meetings, display posters, make speeches, call All these ideas are just a very short summary and a re-
experts. This mass of information and instructions is pre- minder that safety should be taken seriously at all times.
sented to all of us for some very good reasons. Quite a few
2 CNC MILLING

Many different types of CNC machines are used in in- u Types of Milling Machines
dustry - the majority of them are CNC machining centers
and CNC lathes. They are followed by wire EDM, fabricat- Milling machines can divided into three categories:
ing machines and machines of special designs. Although n By the number of axes - two, three or more
the focus of this handbook is on the two types that domi-
nate the market, many general ideas can be applied to other n By the orientation of axes - vertical or horizontal
CNC equipment. n By the presence or absence of a tool changer

CNC MACHINES - MILLING Milling machines where the motion of a spindle is up and
down, are categorized as vertical machines. Milling ma-
chines where the spindle motion is in and out, are catego-
Description of CNC milling machines is so large, it can rized as horizontal machines - see Figure 2-1 and 2-2.
fill a thick book all by itself. All machine tools from a sim-
ple knee type milling machine up to a five axis profiler can
be included in this category. They vary in size, features,
suitability for certain work, etc., but they do all have one
common denominator - their primary axes are X and Y
axes - and for this reason, they are called the XY machines.
In the category of XY machines are also wire EDM ma-
chine tools, laser and water jet cutting machines, flame cut-
ters, burners, routers, etc. Although they do not qualify as
milling type machine tools, they are mentioned because the
majority of programming techniques applicable to milling
can be applied to these machine types as well. The best ex-
ample is a contouring operation, a process common to
many CNC machines.
For the purpose of this handbook, a milling machine can
be defined: Figure 2-1
Schematic representation of a CNC vertical machining center
Milling machine is a machine capable of a simultaneous
cutting motion, using an end mill as the primary cutting tool,
along at least two axes at the same time

This definition eliminates all CNC drill presses, since


their design covers positioning but not contouring. The
definition also eliminates wire EDM machines and a vari-
ety of burners, since they are capable of a contouring action
but not with an end mill. Users of these machine tools will
still benefit from the many subjects covered here. General
principles are easily adaptable to the majority of CNC ma-
chine tools. For example, a wire EDM uses a very small
cutter diameter, in the form of a wire. A laser cutting ma-
chine uses laser beam as its cutter, also having a known dia-
meter but the term kerf is used instead. The focus will be
concentrated on metal cutting machine tools, using various
styles of end mills as the primary tool for contouring. Since
an end mill can be used in many ways, first look will be at Figure 2-2
the various types of available milling machines. Schematic representation of a CNC horizontal machining center

7
8 Chapter 2

These simplified definitions do not reflect reality of the Each machining center is described by its specifications
current state of art in machine tool design. Machine tool in- as provided by the machine tool manufacturer. Manufac-
dustry is constantly changing. New and more powerful ma- turers list many specifications as a quick method of com-
chines are designed and produced by many manufacturers parison between one machine and another. It is not unusual
in several countries, with more features and flexibility. to find a slightly biased information in the descriptive bro-
chure - after all, it is a sales tool.
The majority of modern machines designed for milling
are capable of doing a multitude of machining tasks, not In the area of milling systems, three most common ma-
only the traditional milling. These machines are also capa- chine tools are available:
ble of many other metal removing operations, mainly drill-
ing, reaming, boring, tapping, profiling, thread cutting and
n CNC Vertical Machining Center ... VMC
many others. They may be equipped with a multi-tool mag- n CNC Horizontal Machining Center ... HMC
azine (also known as a carousel), a fully automatic tool n CNC Horizontal Boring Mill
changer (abbreviated as ATC) and a pallet changer (abbre-
viated as APC), a powerful computerized control unit (ab- Programming methods do not vary too much for either
breviated as CNC), and so on. Some machine models may type, except for special accessories and options. Some of
have additional features, such as adaptive control, robot in- the major differences will be orientation of machine axes,
terface, automatic loading and unloading, probing system, additional axis for indexing or full rotary motion, and the
high speed machining features, and other marvels of mod- type of work suitable for individual models. Description of
ern technology. The question is - can machine tools of these the most common type of a machining center - Vertical Ma-
capabilities be classified as simple CNC milling machines? chining Center (VMC) - presents a fairly accurate sample
In two words - certainly not. Milling machines that have at of describing other machines of the above group.
least some of the advanced features built-in (usually many
features), are known as a separate category of machines - u Vertical Machining Centers
they are called CNC Machining Centers. This term is
strictly CNC related - a manual machining center is a de- Vertical machining centers are mainly used for flat type
scription that does not exist. of work, such as plates, where the majority of machining is
done on only one face of the part in a single setup.
u Machine Axes
A vertical CNC machining center can also be used with
Milling machines and machining centers have at least an optional fourth axis, usually a rotary head mounted on
three axes - X, Y and Z. These machines become even the main table. Rotary head can be mounted either verti-
more flexible if they have a fourth axis, usually an indexing cally or horizontally, depending on the desired results and
or a rotary axis (A-axis for vertical models or B-axis for the model type. This fourth axis can be used either for in-
horizontal models). Even higher level of flexibility can be dexing or a full rotary motion, depending on the design
found on machines with five or more axes. A simple ma- purchased. In combination with a tailstock (usually sup-
chine with five axes may be a boring mill that has three ma- plied), the fourth axis in vertical configuration can be used
jor axes, plus a rotary axis (usually B-axis) and an axis par- for machining long parts that need support at both ends.
allel to the Z-axis (usually W-axis). However, true complex
and flexible five-axis profiling milling machine is the type The majority of vertical machining centers most opera-
used in aircraft industry, where a multi-axis, simultaneous tors work with are those with an empty table and three-axes
cutting motion is necessary to machine complex shapes configuration.
and reach cavities and various angles. From the programming perspective, there are at least two
At times, the expression two and a half axis machine or a items worth mentioning:
three and a half axis machine is used. These terms refer to n ONE - Programming always takes place from the viewpoint
those types of machines, where simultaneous cutting mo- of the spindle, not the operator’s. That means the view is
tion of all axes has certain limitations. For example, a as if looking straight down, at ninety degrees towards
four-axis vertical machine has X, Y and Z-axis as primary the machine table for development of the toolpath motion.
axes, plus an indexing table, designated as an A-axis. The Programmers always view the top of part !
indexing table is used for positioning, but it cannot rotate n TWO - Various markers located somewhere on the
simultaneously with the motion of primary axes. That type machine show positive and negative motion of the
of a machine is often called a 'three and a half axis' ma- machine axes. For programming, these markers should be
chine. By contrast, a more complex but similar machine ignored! These indicate operating directions, not
that is equipped with a fully rotating table, is designed as a programming directions. As a matter of fact, typically
true four-axis machine. Rotary table can move simulta- the programming directions are exactly opposite
neously with the cutting motion of the primary axes. This is of the markers on the machine tool
a good example of a true 'four axis' machine tool.
CNC MILLING 9

Vertical and Horizontal Machining Center - Typical Specifications

Description Vertical Machining Center Horizontal Machining Center


Number of axes 3 axes (XYZ) 4 axes (XYZB)

Table dimensions 780 x 400 mm 500 x 500 mm


31 x 16 inches 20 x 20 inches

Number of tools 20 36

Maximum travel - X axis 575 mm 725 mm


22.5 inches 28.5 inches

Maximum travel - Y axis 380 mm 560 mm


15 inches 22 inches

Maximum travel - Z axis 470 mm 560 mm


18.5 inches 22 inches

Spindle speed 60-8000 rpm 40 - 4000 rpm

Spindle output AC 7.5/5.5 kW AC 11/8 kW


AC 10/7 HP AC 15/11 HP

Spindle nose-to-table distance - Z axis 150 - 625 mm 150 - 710 mm


6 - 24.6 inches 6 - 28 inches

Spindle center-to-column distance - Y axis 430 mm 30 - 560 mm


17 inches 1.2 - 22 inches

Spindle taper No. 40 No. 50

Tool shank size BT40 CAT50

Number of pallets N/A 2

Pallet type N/A Rotary shuttle

Pallet change time N/A 5 seconds

Pallet indexing angle N/A 0.001 degree

Feedrate range 2 - 10000 mm/min 1 - 10000 mm/min


0.100 - 393 in/min 0.04 - 393 in/min

Rapid traverse rate 40000 mm/min (XY) - 35000 mm/min (Z) 30000 mm/min (XY) - 24000 mm/min (Z)
1575 in/min (XY) - 1378 in/min (Z) 1181 in/min (XY) - 945 in/min (Z)

Tool selection Random memory Random memory

Maximum tool diameter 80 mm (150 w/empty pockets) 105 mm


3.15 inches (5.9 w/empty pockets) 4.1 inches

Maximum tool length 300 mm 350 mm


11.8 inches 13.75 inches

Tool change time (chip-to-chip) 2.5 seconds 4 seconds


10 Chapter 2

u Horizontal Machining Centers tal boring mills - if the quill were to be very long, it would
Horizontal CNC Machining Centers are also categorized lose its strength and rigidity. The better way was to split the
as multi-tool and versatile machines, and are used for cu- traditional single Z-axis movement into two - the quill ex-
bical parts, where the majority of machining has to be done tension along Z-axis will move only part of the way to-
on more than one face in a single setup. wards the table and the table itself - the new W-axis - will
move another part of the way towards the spindle. They
There are many applications in this area. Common exam- both meet in the area of the part that could be machined us-
ples are large parts, such as pump housings, gear cases, ing all other machine tool resources.
manifolds, engine blocks and so on. Horizontal machining
centers always include a special indexing table and are Horizontal boring mill may be called a 3-1/2 axis CNC
often equipped with a pallet changer and other features. machine, but certainly not a 5-axis CNC machine, even if
the number of programmed axes is five. Programming pro-
Because of their flexibility and complexity, CNC hori- cedures for CNC boring mills are very similar to the hori-
zontal machining centers are priced significantly higher zontal and vertical CNC machining centers.
than vertical CNC machining centers.
u Typical Specifications
From programming point of view, there are several
unique differences, mainly relating to the Automatic Tool On the preceding page is a comprehensive chart showing
Changer, the indexing table, and - in some cases - to the ad- typical specifications of a CNC Vertical Machining Center
ditional accessories, for example, pallet changer. All differ- and a CNC Horizontal Machining Center. These specifica-
ences are relatively minor. Writing a program for horizon- tions are side by side in two columns, strictly for conven-
tal machining centers is no different than writing a program ience, not for any comparison purposes. These are two dif-
for vertical machining centers. ferent machine types and comparison is not possible for all
features. In order to compare individual machine tools
u Horizontal Boring Mill within a certain category, machine tool specifications prov-
ided by machine manufacturer often serve as the basis for
Horizontal boring mill is just another CNC machine. It comparison. These specifications are contained in a list of
closely resembles a CNC horizontal machining center, but verifiable data, mainly technical in nature, that describes
it does have its own differences. Generally, a horizontal the individual machine by its main features. Machine tool
boring mill is defined by the lack of some common fea- buyers frequently compare many brochures of several dif-
tures, such as the Automatic Tool Changer. As the name of ferent machines as part of the pre-purchase process. Man-
the machine suggests, its primary purpose is boring opera- agers and process planners compare individual machines in
tions, mainly lengthy bores. For that reason, the spindle the machine shop and assign any available workload to the
reach is extended by a specially designed quill. Another most suitable machine.
common feature is an axis parallel to the Z-axis, called the
W-axis. Although this is, in effect, the fifth axis designation A fair and accurate comparison can be made between two
(X, Y, Z, B, W), a horizontal boring mill cannot be called a vertical machining centers or between two horizontal ma-
true five axis machine. Both the Z-axis (quill) and the chining centers, but cannot be done fairly to compare be-
W-axis (table) work in opposite directions - towards each tween any two different machine types.
other - so they can be used for large parts and most of
hard-to-reach areas. It also means, that during drilling, the In a typical machine specification chart, additional data
machine table moves against an extended quill. Quill is a may be listed, not included in the earlier chart, depending
physical part of the spindle. It is in the spindle where the on the exact features. In this handbook, the focus is on only
cutting tool rotates - but the in-and-out motions are done by those specifications that are of interest to a CNC program-
the table. Think of the alternate method offered on horizon- mer and, to a large extent, a CNC operator.
3 CNC TURNING

CNC MACHINES - TURNING u Number of Axes


The most common distinction of different CNC lathes is
Conventional engine lathe or a turret lathe is a common by the number of programmable axes. Vertical CNC lathes
machine in just about every machine shop. A lathe is used have two axes in most designs available. The much more
for machining cylindrical or conical work, such as shafts, common CNC horizontal lathes, commonly designed with
rings, wheels, bores, threads, etc. The most common lathe two programmable axes, are also available with three, four,
operation is removal of material from a round stock, using six, and more axes, thus adding extra flexibility to manu-
a turning tool for external cutting. A lathe can also be used facturing of more complex parts.
for internal operations such as boring, as well as for facing,
grooving, threading, etc., if a proper cutting tool is used. A typical horizontal CNC lathe can further be described
Turret lathes are usually weaker in machining power than by the type of engineering design:
engine lathes, but they do have a special holder that stores
several mounted cutting tools. An engine lathe has often
n FRONT lathe ... an engine lathe type
only one or two cutting tools mounted at a time, but has n REAR lathe ... a unique slant bed type
more machining power.
Slant bed type is very popular for general work, because
Typical lathe work controlled by a CNC system uses ma- its design allows cutting chips to fall away from the CNC
chines known in industry as the CNC Turning Centers - or operator and, in case of an accident, forces the part to fall
more commonly - CNC lathes. down into a safe area, towards chip conveyer.
The term 'turning center' is rather unpopular, but an ac- Between the categories of flat bed and slant type lathes,
curate overall description of a computerized lathe (a CNC front and rear lathes, horizontal and vertical lathe designs,
lathe) that can be used for a great number of machining op- there is another variety of a lathe. This category describes
erations during single setup. For example, in addition to the CNC lathes by the number of axis, which is probably the
standard lathe operations such as turning and boring, CNC simplest and most common method of lathe identification.
lathe can be used for drilling, grooving, threading, knurling
and even burnishing. It can also be used in different modes, AXES DESIGNATION
such as chuck and collet work, barfeeder, or between cen-
ters. Many other combinations also exist. CNC lathes are
designed to hold several tools in special turrets, they can A typical CNC lathe is designed with two standard axes -
have a milling attachment (live tooling), indexable chuck, a one axis is the X-axis, the other axis is the Z-axis. Both
sub-spindle, tailstock, steady rest and many other features axes are perpendicular to each other and represent the typi-
not always associated with a conventional lathe design. cal two-axis lathe motions. X-axis also represents cross
Lathes with more than four axes are also common. With travel of the cutting tool, Z-axis represents its longitudinal
constant advances in machine tool technologies, more motion. All varieties of cutting tools are mounted in a turret
CNC lathes appear on the market that are designed to do a (a special tool magazine) and can be external or internal.
number of operations in a single setup, many of them tradi- Because of this design, a turret loaded with all cutting tools
tionally reserved for a mill or machining center. moves along both X and Z axes, which means all tools are
in the work area at all times.
u Types of CNC Lathes Following the established standards of milling machines
Basically, CNC lathes can be categorized by the type of and machining centers, the only machine axis capable of
design and by the number of axes. The two basic types are a making a hole by methods of drilling, boring, piercing or
vertical CNC lathe and a horizontal CNC lathe. Of the two, punching, is the Z-axis.
the horizontal type is by far the most common in manufac- In CNC lathe work, the traditional axis orientation for a
turing and machine shops. A vertical CNC lathe (incor- horizontal type of lathe is upwards and downwards motion
rectly called a vertical boring mill) is somewhat less com- for the X-axis, and left and right motion for the Z-axis,
mon but is irreplaceable for a large diameter work. For when looking from the machinist’s position. This view is
CNC programmer, there are no significant differences in shown in the following three illustrations Figure 3-1, Fig-
programming approach between the two lathe types. ure 3-2, and Figure 3-3.

11
12 Chapter 3

In addition to the X and Z primary axes, the multi-axis


Headstock Turret lathes have individual descriptions of each additional axis,
for example, the C-axis or Y-axis, used for milling opera-
Chuck tions, using the so called live tooling (see page 457). More
details on the subject of coordinate system and machine ge-
Jaws ometry are available in the next chapter.
Tool
X+ u
Tailstock Two-axis Lathe
C Z- Z+ This is the most common type of CNC lathes. The work
L holding device, usually a chuck, is mounted on the left side
Center
of the machine (as viewed by the operator). Rear type, with
X- Quill slant bed, is the most popular design for general work. For
some special work, for example in the petroleum industry
Figure 3-1 (where turning tube ends is a common work), a flat bed is
Typical configuration of a two axis slant bed CNC lathe - rear type usually more suitable. Cutting tools are held in a specially
designed indexing turret that can hold four, six, eight, ten,
X+ twelve and more tools. Many such lathes also have two tur-
rets, one on each side of the spindle center line.
Z- Z+ Advanced machine tool designs incorporate tool storage
away from the work area, similar to design of machining
X- centers. Tens and even hundreds of cutting tools may be
stored and used for a single CNC program. Many lathes
X- also incorporate a quick changing tooling system.

u Three-axis Lathe
Z- Z+
Three-axis lathe is essentially a two-axis lathe with an ad-
ditional axis. This axis has its own designation, usually as a
X+ C-axis in absolute mode (H-axis in incremental mode), and
Figure 3-2
is fully programmable. Normally, the third axis is used for
cross-milling operations, slot cutting, bolt circle holes drill-
Typical configuration of a CNC lathe with two turrets ing, hex faces, side faces, helical slots, etc. This axis can re-
place some simple operations on a milling machine, reduc-
Z+ ing the setup time for the job. Some limitations do apply to
many models, for example, the milling or drilling opera-
tions can take place only at positions projecting from the
X- X+ tool center line to the spindle center line (within a machin-
ing plane), although others offer off-center adjustments.
Z- The third axis has its own power source but the power
rating is relatively lower when compared with the majority
of machining centers. Another limitation may be the small-
est increment of the third axis, particularly on the early
three axis lathes. Smallest increment of one degree is cer-
tainly more useful than an increment of two or five degrees.
Even better is an increment of 0.1°, 0.01°, and commonly
0.001° on the latest models. Usually, lathes with three axes
offer a very fine radial increment that allows a simulta-
Figure 3-3 neous rotary motion. Those with low increment values are
Schematic representation of a vertical CNC lathe usually designed with an oriented spindle stop only.
This is true for both front and rear lathes, and for lathes From the perspective of CNC part programming, the ad-
with three or more axes. Chuck face is oriented vertically to ditional knowledge required is a subject not difficult to
the horizontal spindle center line for all horizontal lathes. learn. General principles of milling apply and many pro-
Vertical lathes, due to their design, are rotated by 90°, gramming features are also available, for example, fixed
where the chuck face is oriented horizontally to the vertical cycles and other shortcuts.
spindle center line.
CNC TURNING 13

u Four-axis Lathe However, there is more in a promotional brochure than


By design, a four-axis CNC lathe is a totally different just attractive illustrations - in fact, a well designed bro-
concept than a three-axis lathe. As a matter of fact, to pro- chure offers a wealth of technical information, describing
gram a four-axis lathe is nothing more than programming the machine tool in many details. These are features and
two two-axis lathes at the same time. That may sound specifications the CNC machine tool manufacturer consid-
strange at first, until the principle of a four-axis CNC lathe ers important to the customer.
becomes clearer. In the majority of brochures, there are practical data that
There are actually two controls and two sets of XZ axes, can be used in programming a particular CNC machine, a
one for each pair (set) of axes. Only one program may be lathe in the example.
used to do the external - or outside - diameter roughing
u Typical Machine Specifications
(OD) and another program to do the inside - or internal -
roughing (ID). Since a four-axis lathe can work with each A typical horizontal CNC lathe, with two axes and a slant
pair of axes independently, the OD and ID can be machined bed design, may have the following specifications (taken
at the same time, doing two different operations simulta- from an actual brochure):
neously. The main keys to a successful 4-axis lathe pro-
gramming is coordination of the tools and their operations, Description Specification
timing of the tool motions and a generous sense of healthy
compromise. Number of axes Two (X, Z) or three (X, Z and C)

Maximum swing over bed 560 mm


For several reasons, both pairs of axes cannot work all 22.05 inches
the time. Because of this restriction, special programming Maximum turning diameter 350 mm
13.76 inches
features such as synchronized waiting codes (typically
Maximum turning length 550 mm
Miscellaneous Function), the ability to estimate how much 21.65 inches
time each tool requires to complete each operation, etc., are 85 mm
Spindle bore 3.34 inches
required. There is a level of compromise here, because only
one spindle speed can be used for both active cutting tools, Bar capacity 71 mm
2.79 inches
although feedrate is independent for both pairs of axes.
This means that some machining operations simply cannot Number of tools 12

be done simultaneously. Tool size square 25 mm


1 inch
Not every lathe job benefits from 4-axis machining. Tool size round Æ40 mm
Æ1.57 inches
There are cases when it is more costly to run a job on a
4-axis lathe inefficiently and it may be very efficient to run Indexing time 0.15 second

the same job on a 2-axis CNC lathe. Axis travel in X-axis 222 mm
8.75 inches
Axis travel in Z-axis 635 mm
u Six-axis Lathe 25 inches
Rapid traverse rate X-axis 16000 mm/min
Six-axis CNC lathes are specially designed lathes with a 629 in/min
twin turret and a set of three axes per turret. This design in- Rapid traverse rate Z-axis 24000 mm/min
944 in/min
corporates many tool stations, many of them power driven,
Cutting feedrate 0.01 - 500 mm/rev
as well as back-machining capabilities. Programming these 0.0001 - 19.68 in/rev
lathes is similar to programming a three-axis lathe twice. 254 mm
Chuck size 10 inches
Control system automatically provides synchronization,
when necessary. Main spindle motor AC 15/11kW
AC 20/14.7HP
A small to medium size six-axis CNC lathe is popular Spindle speed 35 - 3500 rpm
choice of screw machine shops and industries with similar Minimum input increment 0.001 mm
small parts and large volume applications. 0.0001 inch

Motorized head:
FEATURES AND SPECIFICATIONS Number of rotating tools 12

Rotating tool speed 30 - 3600 r/min


A look at a typical promotional brochure describing a
CNC machine tool is very useful in many respects. In most Milling motor AC 3.7/2.2 kW
AC 5/2.95 HP
cases, the artwork quality is impressive, the printing, pho- 1 - 16 mm
tographs, paper selection and the use of colors is equally Collet size 0.04 - 0.63 inches
well done. It is the purpose of the brochure to make a good Tap size M3 - M16 metric
#5 - 5/8 inches
marketing tool and attract the potential buyer.
14 Chapter 3

It is very important to understand all specifications and n Thread cutting of various forms (including taper and
features of the CNC machine tools in the shop. Many fea- circular) can be performed, depending on the control
tures relate to the control system, many others to the ma- model
chine tool itself. In CNC programming, many important n Dwell can use the P, U or X address (G04)
decisions are based on one or several of these features, for
example number of tool stations available, maximum spin- n Tool selection uses 4-digit identification
dle speed and others. n Feedrate selection (normal) is in mm/rev or in/rev

u Control Features n Feedrate selection (special) is in m/min or in/min


n Rapid traverse rate different for X and Z axes
The last item in understanding the overall description of a
CNC lathe is a look at some control features unique to n Multiple repetitive cycles for turning, boring, facing,
lathes and how they differ form a typical milling control. contour repeat, grooving, and threading are available
The subject of control features is described in more detail, n Feedrate override is common from 0 to 200% in 10%
starting on page 19. increments (on some lathes only from 0 to 150%)
At this time, some features and program codes may not n X-axis can be mirrored
make much sense - they are included for reference only. n Tailstock can be programmable
Common and typical features are listed:
n Automatic chamfering and corner rounding using
n X-axis represents a diameter, not a radius C and R (or I / K) addresses in G01 mode
n Constant surface speed (CSS) - also known as cutting n Thread cutting feedrate available with six-decimal
speed (CS) - is standard control feature place accuracy (for inch units)
(G96 for cutting speed and G97 for spindle speed)
n Thread cutting feedrate available with five-decimal
n Absolute programming mode is X or Z or C place accuracy (for metric units) - seldom needed
n Incremental programming mode is U or W or H n Least input increment in X-axis is 0.001 mm or 0.0001
inches on diameter - one half of that amount per side
4 COORDINATE GEOMETRY

One of the first major steps towards basic understanding Length of each division on the scale represents the unit of
of CNC principles and geometrical concepts is thorough measurement in a convenient and generally accepted scale.
understanding of a subject known in mathematics as the It may come as a surprise that this concept is used every
system of coordinates. System of coordinates is founded on day. For example, a simple ruler used in schools is based on
a number of mathematical principles dating back over four the number scale concept, regardless of measuring units.
hundred years. The most important of these principles are Weight scales using tons, pounds, kilograms, grams and
those that can be applied to CNC technology of today. In similar units of mass are other examples. A simple house-
various publications on mathematics and geometry, these hold thermometer uses the same principle. Other similar
principles are often listed under the headings such as the examples are available as well.
real number system and the rectangular coordinates.
RECTANGULAR COORDINATE SYSTEM
REAL NUMBER SYSTEM
Rectangular coordinate system is a concept used to de-
One main key to understanding rectangular coordinates fine a planar 2D point (two dimensions), using the XY co-
is understanding of basic math - arithmetic, algebra and ge- ordinates, or a spacial 3D point (three dimensions), using
ometry. The key knowledge in this area is knowledge of the the XYZ coordinates. This system was first defined in the
real number system. Within the real number system, there 17th century by a French philosopher and mathematician
are ten available numerals (digits), 0 to 9 (zero to nine), that Rene Descartes (1596-1650). His name is used as an alter-
can be used in any of the following groups: native name of the rectangular coordinate system, it is
called the Cartesian Coordinate System - see Figure 4-2.
n Zero integer … 0
n Positive integers … 1, 2, +3, 10, 12943, +45
(with or without sign)
n Negative integers … -4, -381, -25, -77
(minus sign required)
n Fractions … 1/8, 3/16, 9/32, 35/64
n Decimal fractions … 0.185, 0.2, 0.546875, 3.5, 15.0
All groups are used on a daily basis. These groups repre-
sent the mainstream of just about all applications of num-
bers in modern life. In CNC programming, the primary
goal is to use numbers to ‘translate’ engineering drawing -
based on its dimensions - into a specific cutter path.
Computerized Numerical Control means control by the Figure 4-2
numbers using a computer. All drawing information has to Rectangular coordinate system = Cartesian coordinate system
be translated into CNC program, using primarily numbers.
Numbers are also used to describe commands, functions, The concepts used in design, drafting and in numerical
comments, and so on. The mathematical concept of a real control are over 400 years old. A given point can be mathe-
number system can be expressed graphically on a horizon- matically defined on a plane (two coordinate values) or in
tal or a vertical line, called the number scale, where all divi- space (three coordinate values). The definition of one point
sions have the same length - Figure 4-1. is relative to another point as a distance parallel with one of
three axes that are perpendicular to each other. In a plane,
only two axes are required, in space, all three axes must be
specified. In programming, point represents an exact loca-
tion. If such a location is on a plane, the point is defined as a
Figure 4-1
2D point, along two axes. If the location is in space, the
point is defined as a 3D point, along three axes.
Graphical representation of the Number Scale

15
16 Chapter 4

When two number scales that intersect at right angles are u Point of Origin
used, mathematical basis for a rectangular coordinate sys- Another term that emerges from the rectangular coordi-
tem is created. Several terms emerge from this representa- nate system is called the point of origin, or just origin. It is
tion, and all have an important role in CNC programming. the exact point where the two perpendicular axes intersect.
Their understanding is very important for further progress. This point has a zero coordinate value in each axis, speci-
fied as planar X0Y0 and spacial X0Y0Z0 - Figure 4-4.
u Axes and Planes
Each major line of the number scale is called an axis. It Y-axis
could have either vertical or horizontal orientation. This
very old principle, when applied to CNC programming,
means that at least two axes - two number scales - will be
used. This is the mathematical definition of an axis:

An axis is a straight line passing through X-axis


the center of a plane or a solid figure,
around which the parts are symmetrically arranged
Origin
This definition can be enhanced by a statement that an
axis can also be a line of reference. In CNC programming,
an axis is used as a reference all the time. The definition
also contains the word ‘plane’. A plane is a term used in 2D
Figure 4-4
applications, while a solid object is used in 3D applica-
tions. Mathematical definition of a plane is: Point of origin - intersection of axes

This intersection called origin has a rather special mean-


A plane is a surface in which a straight line joining
any two of its points will lie wholly on the surface
ing in CNC programming. This origin point acquires a new
name, one typically called the program reference point.
Other terms are also used: program zero, part reference
From the top viewpoint of the observer, looking straight point, workpiece zero, part zero, and probably a few others
down on the illustration Figure 4-3, a viewing direction is - all with the same meaning and same purpose.
established. This is often called viewing a plane.
u Quadrants
Y-axis Viewing the two intersecting axes and the new plane,
four distinct areas can be clearly identified. Each area is
bounded by two axes. These areas are called quadrants.
Mathematically defined,

X-axis A quadrant is any one of the four parts of the plane


formed by the system of rectangular coordinates

The word quadrant, from Latin word quadrans or quad-


rantis, means the fourth part. It suggests four uniquely de-
fined areas or quadrants. Looking down in the top view at
the two intersecting axes, the following definitions apply to
quadrants. They are mathematically correct and are used in
Figure 4-3 all CNC/CAD/CAM applications:
Axis designation - viewing a plane
Mathematical designation is fully implemented in CNC Quadrant I UPPER RIGHT
Quadrant II UPPER LEFT
A plane is a 2D entity - the letter X identifies its horizon-
tal axis, the letter Y identifies its vertical axis. Such plane is Quadrant III LOWER LEFT
called the XY plane. Defined mathematically, the horizon-
tal axis is always listed as the first letter of the pair. In draft- Quadrant IV LOWER RIGHT
ing and CNC programming, this plane is also known as the
Top View or a Plan View. Other planes are also used in Quadrants are always defined in the counterclockwise di-
CNC, but not to the same extent as in CAD/CAM work. rection, from the horizontal X-axis and the naming conven-
tion uses Roman - not Arabic - numbers normally used.
COORDINATE GEOMETRY 17

Numbering of quadrants always starts at the positive side Y+ P3


of the horizontal axis. Figure 4-5 illustrates the definitions.
P2
Y-axis
P6
Quadrant II Quadrant I X- X+
X-Y+ X+Y+ P1

X-axis
P4
Quadrant III Quadrant IV P5
X-Y- X+Y- Y-
P1 = X0.0 Y0.0 P4 = X4.0 Y-3.0
Figure 4-5 P2 = X0.0 Y4.0 P5 = X-5.0 Y-4.5
Quadrants in the XY plane and their identification P3 = X5.5 Y5.0 P6 = X-5.0 Y0.0
Figure 4-7
Any point coordinate value can be positive, negative or
zero. All point coordinates are determined solely by their Coordinate definition of points within rectangular coordinate system
Point P1 = Origin = X0Y0
location in a particular quadrant and individual distances
along an axis, again, relative to origin - Figure 4-6.
If these directions were superimposed over a human right
Coordinate hand, they would correspond to the direction from the root
Point location of thumb or finger towards its tip. Thumb would point in
X-axis Y-axis
the X+ direction, index finger in the Y+ direction and mid-
Quadrant I + + dle finger in the Z+ direction.
Quadrant II - + CNC machines are normally programmed using the so
called absolute coordinate method, that is based on the
Quadrant III - - point of origin being X0Y0Z0. This absolute programming
method follows very strictly the rules of rectangular coor-
Quadrant IV + - dinate geometry and all concepts covered in this chapter.
Figure 4-6
Algebraic signs for a point location in plane quadrants MACHINE GEOMETRY
n IMPORTANT: Machine geometry defines the relationship of distances
… If the defined point lies exactly on the X-axis, and dimensions between fixed point of the machine and
it has the Y value equal to zero (Y0) selectable point of the part. Typical geometry of CNC ma-
… If the point lies exactly on the Y-axis,
it has the X value equal to zero (X0) chines uses the right hand coordinate system. Positive and
… If the point lies exactly on both X and Y axes, negative axis direction is determined by an established
both X and Y values are zero (X0 Y0). viewing convention. The general rule for Z-axis is that it is
always the axis along which a simple hole can be machined
X0Y0Z0 is the point of origin. In part programming, pos- with a single point tool, such as a drill, reamer, wire, laser
itive values are written without the plus sign - Figure 4-7. beam, etc. Figure 4-8 on the next page illustrates standard
orientation of planes for XYZ type machine tools.
u Right Hand Coordinate System
u Axis Orientation - Milling
In all illustrations of number scale, quadrants and axes,
the origin divides each axis into two portions. The zero A typical vertical machining center has three controlled
point - the point of origin - separates the positive section of axes, defined as X-axis, Y-axis, and Z-axis. X-axis is paral-
an axis from the negative section. In the right-hand coordi- lel to the longest dimension of machine table, Y-axis is par-
nate system, the positive axis starts at origin and is directed allel to the shortest dimension of the table and Z-axis is the
towards the right for X-axis, upwards for Y-axis and to- spindle movement. On a vertical CNC machining center,
wards the perpendicular viewpoint for Z-axis. Opposite di- X-axis is the table longitudinal direction, Y-axis is the sad-
rections are always negative. dle cross direction, and Z-axis is the spindle direction.
18 Chapter 4

X+ Rear lathe Z+
c

b
Z+ X+ Front lathe

Z+

a
X+ Vertical lathe

Figure 4-10
Typical machine axis orientation for various CNC lathes

Figure 4-8 Another lathe variety, a vertical CNC lathe, is basically a


Standard orientation of planes and CNC machine tool axes horizontal lathe rotated 90°. Typical axes for horizontal and
vertical machine axes, as applied to turning, are illustrated
For CNC horizontal machining centers, the terminology in Figure 4-10.
is changed due to design of these machines. X-axis is the
table longitudinal direction, Y-axis is the column direction u Additional Axes
and Z-axis is the spindle direction. Horizontal machine can
be viewed as a vertical machine rotated in space by ninety A CNC machine of any type can be designed with one or
degrees. Additional feature of a horizontal machining cen- more additional axes, normally designated as the second-
ter is indexing B-axis. Typical machine axes applied to ary - or parallel - axes using the U, V and W letters. These
CNC vertical machines are illustrated in Figure 4-9. axes are normally parallel to the primary X, Y and Z axes
respectively. For a rotary or an indexing applications, addi-
tional axes are defined as A, B and C axes, as being rotated
about the X, Y and Z axes, again in their respective order.
Y+ Positive direction of a rotary (or an indexing) axis is the di-
rection required to advance a right handed screw in the
positive X, Y or Z axis. Relationship between the primary
and supplementary axes is shown in Figure 4-11.

X+ Primary
axes
Secondary
Top view Isometric view axes
Arc center
Figure 4-9 vectors
Basic axes of a typical vertical CNC machining center Rotary
axes
u Axis Orientation - Turning
Standard CNC lathes have two axes, X and Z. More axes X-axis Y-axis Z-axis
related related related
are available, but they are not important at this point.
Special additional axes, such as C-axis and Y-axis, are de- Figure 4-11
signed for milling operations (live tooling) and require Relationship of primary and supplementary machine axes
unique version of a standard CNC lathe.
What is much more common for CNC lathes in industry, Arc center modifiers (sometimes called arc center vec-
is the double orientation of XZ axes. CNC lathes are sepa- tors) are not true axes, yet they are also related to primary
rated as front and rear lathes. An example of a front lathe is axes XYZ. This subject will be described in the section on
similar to the conventional engine lathe. All slant bed lathe Circular Interpolation, starting on page 243.
types are of the rear kind. Identification of axes in industry
have not always followed mathematical principles.
5 CONTROL SYSTEM

A machine unit equipped with a computerized numerical In order to fully understand CNC programming process,
control system is commonly known as a CNC machine. In it is important to understand not only the intricacies of how
an analogy of the machine tool being the body of a CNC to machine a part, what tools to select, what speeds and
machine system, the control unit is its brain, its nerve cen- feeds to use, how to setup the job and many other features.
ter. There are no levers, no knobs and no handles on a CNC It is equally important to know how the computer, the CNC
machine the way they function on conventional milling unit, actually works without the need to be an expert in
machines and lathes. All machine speeds, feeds, axes mo- electronics or a computer scientist. Figure 5-1 shows an ac-
tions and hundreds of other tasks are programmed by a tual Fanuc control panel.
CNC programmer and controlled by a computer that is ma-
jor part of the CNC unit. To make a program for a CNC ma- Machine manufacturers add their own operation panel,
chine tool means to make a program for the control system. with all switches and button needed to operate their CNC
True, the machine tool is a major consideration as well, but machine and all its features. A typical operation panel is il-
it is the control unit that determines the program format, its lustrated in Figure 5-2. Another item required for the sys-
structure and its syntax. tem, the handle, will be described as well.

CRT DISPLAY SCREEN RESET KEY EDIT KEYS

HELP KEY ADDRESS NUMERIC


KEYBOARD KEYBOARD

GE Fanuc Series 16-M


RESET O( N ) GE P C 7 8 9 ALTER

X U Y V ZW Q ? 4 5 6 INSERT

ON
HELP I , J A K@ R 1 2 3 DELETE

OFF
M# S = T L + - 0 .
*
SHIFT F [ D ] H & BSP / EOB CAN INPUT

OFFSET
POS PROG CUSTOM
PAGE SETTING

PAGE

FUNCTION OPERATION SELECTION KEYS


MENU KEY
SOFT KEYS SHIFT KEY
MENU KEY
CURSOR KEYS

ON / OFF BUTTONS END-OF-BLOCK KEY


PAGE CHANGE KEYS CANCEL KEY
INPUT KEY

Figure 5-1
A typical example of a Fanuc control panel - actual layout and features will vary on different models (Fanuc 16M)

19
20 Chapter 5

GENERAL DESCRIPTION The control unit - the CNC system - contains features that
only work in conjunction with the program, it does not do
anything useful on its own. Some features can be used only
Even a brief look at any control unit reveals that there are
if the program itself supports them. All switches and buttons
two basic components - one is the operation panel, full of
and keys are used by the machine operator, to exercise con-
rotary switches, toggle switches and push buttons. The
trol over program execution and machining process.
other component is the display screen with a keyboard or a
keypad. A programmer who does not normally work on the u Operation Panel
CNC machine will seldom, if ever, have a reason to use ei-
ther the operation panel or the display screen. They are Depending on CNC machine type, the following table
available at the machine to the CNC machine operator, and covers the most typical and common features found on
used for machine setup as well as to control the activities of modern operation panel. There are some small differences
the machine. for operation of a machining center and a lathe, but both
operation panels are similar. As with any general reference
Should the CNC programmer be at least interested in the book, it is always a good idea to double check with the
machine operation? Is it necessary for the programmer to manufacturer specifications and recommendations. It is
know and understand all functions of the control system? common that many machines used in the shop have some
There is only one answer to both questions - definitely yes. special features.

ZERO RETURN CYCLE END ERRORS


ALARM LUBE POWER ON READY
X Y Z 4 M00 M01 M30

OPTIONAL SINGLE BLOCK M-S-T Z-AXIS MACHINE DRY MANUAL AUTO COOLANT
STOP BLOCK SKIP LOCK NEGLECT LOCK RUN ABSOLUTE POWER FUNCTION
ON ON ON ON ON ON ON ON ON ON
OFF
OFF OFF OFF OFF OFF OFF OFF OFF OFF AUTO

RAPID MDI 90 100 110


80 120
JOG TAPE 175 70 130
150 200 60 140
HANDLE MEM 125 250 50 150
100 300 40 160
HOME EDIT 80 400 30 170
60 500 20 180
10 190
SELECT MODE 40 600 0 200
30 800
20 1000 FEEDRATE %
Y Z 15 1200
X
OFF ON
4 10 1500
5 2000
0 4000 CW STOP CCW

SELECT AXIS EDIT KEY JOG mm/min SPINDLE

25 50 80 90
70 100
F1 100 60 110

50 120 CYCLE START FEEDHOLD


RAPID OVERRIDE % SPINDLE OVERRIDE % AUTO EMG STOP

Figure 5-2
A typical operation panel of a CNC machining center - actual layout and features will vary on different models
CONTROL SYSTEM 21

Feature Description Feature Description


ON / OFF Power and control switch for AUTO Mode Allows automatic operations
switch the main power and control unit
MEMORY Allows program execution from
Starts program execution mode memory of the CNC unit
Cycle Start
or MDI command
TAPE / EXT Allows program execution from an
Emergency Stops all machine activity and external device, such as a desktop
Stop turns off power to the control unit or DNC mode computer (DNC) or a punched tape

Feedhold Temporarily stops motion of all axes EDIT Allows changes to be made to a
mode program stored in CNC memory
Single Block Allows program run one block at a time
MANUAL
Temporarily stops program Allows manual operations during setup
Optional Stop Mode
execution (M01 required in program)
JOG Mode Selects jog mode for setup
Ignores blocks preceded with
Block Skip
a forward slash ( / ) in the program RAPID Mode Selects rapid mode for setup
Enables program testing at fast Memory
Dry Run Key (switch) to allow program editing
feedrates (without a mounted part) Access
Spindle Overrides programmed spindle speed, Error Lights Red light indicating an error
Override usually within 50-120% range

Feedrate Overrides programmed feedrate, Even if some features may not be listed, virtually all of
Override usually within 0-200% range those in the table are somewhat related to CNC program.
Many control systems have unique features of their own.
Chuck Shows current status of the chuck These features must be known to the CNC operator. The
Clamp clamping (Outside / Inside clamping) program supplied to the machine should be flexible, not
rigid - it should be 'user friendly'.
Table Clamp Shows current status of table clamping
u Screen Display and Keyboard
Coolant
Coolant control ON / OFF / AUTO
Switch Screen display is the 'window' to control operation. Any
Gear Shows current status of working
active program can be viewed, including the control status,
Selection gear range selection current tool position, various offsets, parameters, even a
graphic representation of the toolpath. On all CNC units,
Spindle Indicates spindle rotation direction individual monochrome or color screens can be selected to
Rotation (clockwise or counterclockwise) have the desired display at any time, using the input keys
(keyboard pads and soft keys). Setting for international
Spindle languages is also possible.
Manual orientation of the spindle
Orientation
Keyboard pads and soft keys are used to input instruc-
Tool Change Switch allowing a manual tool change tions to the control. Existing programs can be modified or
deleted, new programs can be added. Using keyboard in-
Reference Switches and lights relating to setup put, not only the machine axes motion can be controlled,
Position of machine, from reference position but the spindle speed and feedrate as well. Changing inter-
Manual Pulse Generator (MPG), nal parameters and evaluating various diagnostics are more
Handle (MPG) used for Axis Select and Handle specific means of control, often restricted to service people.
Increment switches Keyboard and screen are used to set program origin and to
hook up to external devices, such as a connection with an-
Tailstock Tailstock and/or quill switch to manually other computer. There are many other options, particularly
Switch position the tailstock for multi axis machines. Every keyboard allows the use of
letters, digits and symbols for data entry. Not every key-
Indexing Manually indexes machine table board allows the use of all alphabet letters or all available
Table Switch during setup symbols. Some control panel keys have a description of an
MDI Mode Manual Data Input mode operation, rather than a letter, digit or symbol, for example,
Read and Punch keys or the Offset key.
22 Chapter 5

u Handle SYSTEM FEATURES


For setup purposes, each CNC machine has a rotary han-
dle that can move one selected axis by as little as the least CNC unit is nothing more than a sophisticated special
increment of the control system. The official Fanuc name purpose computer. The 'special purpose' in this case is a
for the handle is Manual Pulse Generator. Associated with computer capable of controlling the activities of a machine
the handle is Axis Select switch (often duplicated on the op- tool, such as lathe or machining center. It means the com-
eration panel as well as on the handle) and the range of in- puter has to be designed by a company that has expertise in
crement (that is the least increment X1, X10 and X100). this type of special purpose computers. Unlike many busi-
The letter X in this case is the multiplier and stands for 'X ness types of computers, each CNC unit is made for a par-
times'. One handle division will move the selected axis by ticular customer. The customer is typically a machine man-
X times the minimum increment of active units of measure- ufacturer, not the end user. The manufacturer specifies
ment. Handles with digital display on a small screen are certain requirements that the control system has to meet, re-
also available. In Figure 5-3 and the following table are de- quirements that reflect uniqueness of the machines they
tails of a typical traditional handle. build. Basic control does not change, but some customized
features may be added (or taken away) for a specific ma-
chine. Once a control system is sold to the machine manu-
Y Z facturer, more features are added to the whole system.
X 4 AXIS They relate to the design and capabilities of the machine.
SELECT
A good example is a CNC unit for two machines that are
the same in all respects except one. One machine has a
x1 x10 manual tool changer, the other has an automatic tool
changer. In order to support the automatic tool changer, the
x100 CNC unit must have special features built-in, that are not
RANGE required for a machine without the tool changer. The more
complex a CNC system is, the more expensive it is. Users
that do not require all sophisticated features, do not pay a
premium for features they do not need.

u Parameter Settings
0
90
10 Information that establishes the built-in connection be-
tween the CNC control and the machine tool is stored as
special data in internal registers, called system parameters.
20

80

Some of the information in this handbook is quite special-


ized and listed for reference only. Programmers with lim-
ited experience do not need to know system parameters in a
30

70

great depth. Original factory settings are sufficient for most


40
60 machining jobs.
When the parameter screen is displayed, it shows the pa-
rameter number with some data in a row. Each row of num-
bers represents one byte, each digit in the byte is called a
Figure 5-3 bit. The word bit is made from the words Binary digIT and
is the smallest unit of a parameter input. Numbering of bits
An example of a detached handle, called the Manual Pulse Generator
(MPG), with a typical layout and features. starts with 0, read from the right to the left:
Layout and features may vary on different machine models.
Number #7 #6 #5 #4 #3 #2 #1 #0

One handle division motion is … xxxx 0 1 1 0 1 0 0 1


Handle
multiplier for metric units for imperial units Fanuc control system parameters belong to one of three
groups, specified within an allowed range:
X1 0.001 mm 0.0001 inch n Binary codes
X10 0.010 mm 0.0010 inch n Units inputs
X100 0.100 mm 0.0100 inch n Setting values
CONTROL SYSTEM 23

These groups use different input values. The binary input Parameters related to High-Speed Skip Signal Input
can only have an input of a 0 or 1 for the bit data format, 0 Parameters related to Automatic Tool Compensation
to +127 for the byte type. Units input has a broader scope - Parameters related to Tool Life Management
units can be in mm, inches, mm/min, in/min, degrees, milli- Parameters related to Turret Axis Control
seconds, etc. A value can also be specified within a given Parameters related to High Precision Contour Control
range, for example, a number within the range of 0-99, or Parameters related to Service … and other
0-99999, or +127 to -127, etc. parameters
A typical example of a binary input is a selection between Quite a few parameters have nothing to do with daily
two options. For instance, a feature called dry run can be programming and are listed only as an actual example. All
set only as effective or ineffective. To select a preference, an system parameters should be set or changed only by a qual-
arbitrary bit number of a parameter has be set to 0 to make ified person, such as an experienced service technician. A
the dry run effective and to 1 to make it ineffective. programmer or operator should not modify any parameter
settings. These changes require not only qualifications but
Units input, for example, is used to set the increment sys- authorization as well. Keep the list of original parameter
tem - the dimensional units. Computers in general do not settings away from the control, in a safe place, just in case.
distinguish between imperial and metric units, just num-
bers. It is up to the user and the parameter setting, whether Take care when changing control system parameters !
the control will recognize 0.001 mm or 0.0001 inches as
the least increment. Another example is a parameter setting Many parameters are periodically updated during pro-
that stores the maximum feedrate for each axis, the maxi- gram processing. CNC operator is usually not aware that
mum spindle speed, etc. Such values must never be set this activity is going on at all. There is no real need to moni-
higher than the machine itself can support. An indexing tor this activity. The safest rule to observe is that once the
axis with a minimum increment of 1°, will not become a ro- parameters have been set by a qualified technician, any
tary axis with 0.001° increment, just because the parameter temporary changes required for a given work should be
is set to a lower value, even if it is possible. Such a setting done through the CNC program. If permanent changes are
is wrong and can cause serious damage! required, an authorized person should be assigned to do
them - nobody else. Some parameters may be changed -
To better understand what CNC system parameters can very carefully - through the program - see page 405.
do, here is an abbreviated listing of parameter classification
for a typical Fanuc control system (many of them are u
meaningful to the service technicians only):
System Defaults
Many parameter settings stored in control at the time of
Parameters related to Setting
Parameters related to Axis Control Data purchase have been entered by the manufacturer as either
Parameters related to Chopping the only choices, the most suitable choices, or the most
Parameters related to the Coordinate System common selections. That does not mean they will be the
Parameters related to Feedrate preferred settings - it means they were selected on the basis
Parameters related to Acceleration/Deceleration Control of their common usage. Many settings are rather conserva-
Parameters related to Servo tive in their values, for safety reasons.
Parameters related to DI/DO The set of parameter values established at the time of in-
Parameters related to MDI, EDIT, and CRT stallation are called the default settings. The English word
Parameters related to Programs 'default' is a derivative of a French word 'defaut', that can
Parameters related to Serial Spindle Output be translated as 'assumed'. When main power to the control
Parameters related to Graphic Display
is turned on, there are no set values passed to parameters
Parameters related to I/O interface
Parameters related to Stroke Limit from a program, since no program has yet been used. How-
Parameters related to Pitch Error Compensation ever, certain settings become active automatically, without
Parameters related to Inclination Compensation an external program. For instance, a cutter radius offset is
Parameters related to Straightness Compensation automatically canceled at the control system startup. Also
Parameters related to Spindle Control canceled are the fixed cycle mode and tool length offset.
Parameters related to Tool Offset The control 'assumes' that certain conditions are preferable
Parameters related to Canned Cycle to others. Many operators will agree with most of these ini-
Parameters related to Scaling and Coordinate Rotation tial settings, although not necessarily with all of them.
Parameters related to Automatic Corner Override Some settings are customizable by a change of a parameter
Parameters related to Involute Interpolation settings. Such settings will become permanent and create a
Parameters related to Uni-directional Positioning new 'default'.
Parameters related to Custom Macro (User Macro)
Parameters related to Program Restart Always document any changes made to parameters !
24 Chapter 5

A computer is fast and accurate but has no intelligence. Modern methods of measuring memory capacity prefer
People are often slow and make errors, but have one unique to use bytes as the unit, rather that a length of an obsolete
ability - they think. A computer is just a machine that does tape. A byte is the smallest unit of storage capacity and is
not assume anything, does not consider, does not feel - very roughly equivalent to one character in the program.
computer does not think. A computer does not do anything
that a human effort and ingenuity has not done during the Memory capacity of the control system should be large
design process, in form of hardware and software. enough to store the longest CNC program expected on a
regular basis. That requires some planning before the CNC
When a CNC machine is powered, its internal software machine is purchased. For example, in three dimensional
sets certain existing parameters to their default condition, mold work or high speed machining, the cost of additional
designed by engineers. Not all system parameters, only memory capacity may be very high. Although any cost is a
certain parameters can have an assumed condition - a con- relative term, there are reliable and inexpensive alterna-
dition that is known as the default value (condition). tives, well worth looking into.
For example, a tool motion has three basic modes - a One alternative is running the CNC program from a per-
rapid motion, a linear motion and a circular motion. The sonal computer. An inexpensive communication software
default motion setting is controlled by a parameter. Only and cabling is required to connect the computer with the
one setting can be active at the startup. Which one? The an- CNC system. The simplest version is to transfer a CNC
swer depends on the parameter setting. Many parameters program from one computer to the other. More sophisti-
can be preset to a desired state. Only the rapid or linear cated possibility includes software and cables that can ac-
mode can be set as default in the example. Since rapid mo- tually run the machine from a personal computer, without
tion is the first motion in most programs, it seems to make loading it into the CNC memory first. This method is often
sense to make it a default - but wait! called 'drip-feeding' or 'bitwise input'. When operated from
a personal computer, the CNC program can be as long as
Most controls are set to linear motion as the default (G01 the storage device capacity, typically the hard drive.
command) to be in effect at the start - strictly for safety rea-
sons. When machine axes are moved manually, the param- Most CNC programs will fit into the CNC internal mem-
eter setting has no effect. If a manual input of an axis com- ory. Many controls use the number of available characters
mand value takes place, either through the program or from or the equivalent length of tape. Here are some formulas
the control panel, a tool motion results. If a motion com- that can be used to get at least approximate memory capac-
mand is not specified, CNC system will use the command ity calculations:
mode that had been preset as the default in the parameters.
Since the default mode is linear motion G01, the result is an ò Formula 1 :
error condition, faulting the system for the lack of feed-
rate! There is no cutting feedrate in effect, which the G01 To find the program length in meters, when the capacity
requires. Had the default setting been rapid motion G00, a is known in characters, use the following formula:
rapid motion would be performed, as it does not need pro-
grammed feedrate. S m = N c ´ 0.00254
It is beneficial to know the default settings of all controls
in the shop. Unless there is a good reason to do otherwise, + where . . .
defaults for similar controls should be the same.
Sm = Storage capacity in meters
Nc = Memory capacity (number of characters)
u Memory Capacity
CNC programs can be stored in the control memory. Pro- ò Formula 2 :
gram size is only limited by the control internal capacity. To find the length of program in feet, when the capacity is
This capacity is measured in variety of ways, originally as known in characters, use the following formula:
the equivalent length of tape in meters or feet, lately as the
number of bytes or the number of screen pages. A common
Nc
minimum memory capacity of a small CNC lathe control Sf =
may be 20m of tape (66 ft). This is an old fashioned method 120
that somehow persisted in staying with us. On CNC milling
systems, the memory requirements based on the same crite-
ria are generally larger and the typical minimum memory + where . . .
capacity is 80 m or about 263 ft. Optionally, larger memory
Sf = Storage capacity in feet
capacity can be added to any control system. The minimum Nc = Memory capacity (number of characters)
memory capacity of a control varies from one machine to
another - always check control specifications carefully.
CONTROL SYSTEM 25

ò Formula 3 : block are processed as a single instruction. The blocks are


received by the control system in sequential order, from top
To find the number of characters in a given program, if down and in the order they appear in the program. Nor-
the system memory capacity is known in meters: mally, a CNC machine is run in a continuous mode, while
all blocks are processed automatically, one after another.
m This continuity is important for production, but not practi-
C = cal when proving a new program, for example.
0.00254
To disable continuous program execution, a Single Block
switch is provided on the operation panel. In the single
+ where . . .
block mode, only one program block will be processed
C = Number of available characters each time the Cycle Start key is pressed. On the operation
m = Memory capacity in meters panel, single block mode can be used separately or in com-
bination with other settings that make program proving
Virtually the same results can be achieved by a slightly faster and more accurate.
restructured formula:
u Feedhold
m ´ 1000
C = Feedhold is a special push button located on the opera-
2.54 tion panel, usually close to the Cycle Start button. When
this button is pressed during a rapid, linear or circular axes
ò Formula 4: motion, it will immediately stop the motion. Such action
applies to all axes active at the time. This feature is conve-
To find the number of characters, if the system memory nient for machine setup or first part run. Some types of mo-
capacity is known in feet, use the following formula: tion restrict the feedhold function or disable it altogether.
For example, threading or tapping modes make the switch
inoperative.
C = f ´ 120
Activating feedhold at the machine will not change any
+ where . . . other program values - it will only affect axis motion. Feed-
hold switch will be illuminated (in red light), as long as it is
C = Number of available characters effective. CNC programmer can override feedhold from
f = Memory capacity in feet within the program, for special purposes.
Latest Fanuc controls show the available memory as the u
number of free screen display pages. This type of data is
Emergency Stop
not as easy to convert as the others. Every CNC machine has at least one special mushroom
shaped push button, red in color, that is located in an acces-
In cases where the available memory capacity is too
sible place on the machine. It is marked as the Emergency
small to accept large programs, several techniques are
Stop or E-stop. When this button is pressed, all machine
available to minimize the problem, for example, eliminat-
activities will cease immediately. The main power supply
ing leading zeros or removing all or some block numbers.
will be interrupted and the machine will have to be re-
started. Emergency stop switch is a mandatory safety fea-
MANUAL PROGRAM INTERRUPTION ture on all CNC machines.
Pressing the emergency stop button is not always the best
If a program needs to be interrupted in the middle of pro- or even the only way to stop a machine operation. In fact,
cessing, control system offers several ways to do that, us- the latest controls offer other features, far less severe, de-
ing the machine operation panel. The most common fea- signed to prevent a collision between cutting tool and part
tures of this type are toggle switches or push buttons for a or fixture. Previously discussed feedhold button is only one
single block operation, feedhold and emergency stop. option, along with several other features. If the emergency
u
stop must be used at all, it should be used only as the last
Single Block Operation resort, when any other action would require unacceptably
The normal purpose of a program is to control the ma- longer time. There is no need for panic, if something does
chine tool automatically and sequentially in a continuous go wrong.
mode. Every program is a series of formatted commands - For some machine actions, the effect of Emergency Stop
or instructions - written as individual lines of code, called is not always apparent. For example, the spindle requires a
blocks. Blocks and their concepts will be described in the certain time for deceleration to stop.
following chapters. All program commands in a single
26 Chapter 5

MANUAL DATA INPUT - MDI Override switches can be used individually or together.
They are available on the control to make work easier for
both the operator and the programmer. Operator does not
A CNC machine is not always operated by the means of a need to 'experiment' with speeds and feeds by constantly
program. During part setup, the CNC operator has to do a editing the program and the programmer has a certain lati-
number of operations that require physical movements of tude in setting reasonable values for cutting feedrates and
machine slides, rotation of spindle, tool change, etc. There spindle speed. The presence of override switches is not a
are no mechanical devices on a CNC machine. The handle licence to program unreasonable cutting values. Overrides
(Manual Pulse Generator) is an electronic, not a mechani- are fine tuning tools only - part program must always re-
cal unit. In order to operate a CNC machine without con- flect the machining conditions of the work. Usage of over-
ventional mechanical devices the control system offers a ride switches does not make any program changes, but
feature called Manual Data Input - or MDI. gives the CNC operator an opportunity to edit the program
Manual Data Input enables the input of program data later to reflect all optimum cutting conditions. Used prop-
into the system one program instruction at a time. If too erly, override switches can save a great amount of valuable
many instructions were to be input repeatedly, such as a programming time as well as setup time at CNC machine.
long program, the procedure would be very inefficient.
During setup and for similar purposes, one or a few instruc- u Rapid Motion Override
tions at a time will benefit from MDI. Rapid motions are selected in the CNC program by a pre-
To access MDI mode, the MDI key on the operation paratory command without a specified feedrate. If a ma-
panel must be selected. That opens the screen display with chine is designed to move at 985 in/min (25000 mm/min)
the current system status. Not all, but the majority of pro- in the rapid mode, this rate will never appear in the pro-
gramming codes are allowed in the MDI mode. Their for- gram. Instead, the rapid motion mode is called by program-
mat is identical to the format of a CNC program in written ming a special preparatory command G00. During pro-
form. This is one area where CNC operator acts as a CNC gram processing, all motions in G00 mode will be at the
programmer. It is very important that the operator is trained manufacturer’s fixed rate. The same program will run
at least in the basics of CNC programming, certainly to the faster on a machine with a high rapid motion rating then on
point of being able to handle the setup instructions for a machine with a low rapid motion rating.
Manual Data Input. During setup, the rapid motion rate may require some
control for program proving, when very high rapid rates
PROGRAM DATA OVERRIDE are uncomfortable to work with. After a program had been
proven, rapid rate can be applied at its maximum. CNC ma-
All CNC units are designed with a number of special ro- chines are equipped with a rapid override switch to allow
tary switches that share one common feature - they allow temporary rapid motion settings. Located on the machine
the CNC operator to override programmed spindle speed control panel, this switch can be set to one of four settings.
or programmed speed of an axis motion. For example, a 15 Three of them are usually marked as the percentage of the
in/min feedrate in the program produces a slight chatter. A maximum rate, typically as 100%, 50% and 25%. By
knowledgeable operator will know that by increasing the switching to one of them, the rapid motion rate changes.
feedrate or decreasing the spindle speed, the chatter may be For example, if the maximum rapid rate is 985 in/min or
eliminated. It is possible to change the feedrate or the spin- 25000 mm/min, the actual reduced rates are 493 in/min or
dle speed by editing the program, but this method is not 12500 mm/min at the 50% setting and 246 in/min or 6250
very efficient. A certain 'experimentation' may be neces- mm/min at the 25% setting. Each of the reduced rates is
sary during actual cut to find the optimum setting value. more comfortable to work with during setup.
Manual override switches come to the rescue, because they The fourth position of the switch often has no percentage
can be used by trial during operation. There are four over- assigned and is identified as an F1 or by a small symbol. In
ride switches found on most control panels: this setting, the rapid motion rate is even slower than that of
n Rapid feedrate override (rapid traverse) 25% setting. Why is it not identified as 10% or 15%, for ex-
(modifies the rapid motion of a machine tool) ample? The reason is simple - control system allows a cus-
tomized selection as to what the setting will be. It may be a
n Spindle speed override setting of between 0 and 100%. The default setting is also
(modifies the programmed spindle r/min)
the most logical - usually 10% of the maximum rapid tra-
n Feedrate override (cutting feedrate) verse rate. This setting should never be higher than 25%
(modifies the programmed feedrate) and can be done only through setting of a system parame-
n Dry run mode ter. Make sure that all persons who work on such a machine
(changes cutting motions to a variable speed) are aware of the changes.
CONTROL SYSTEM 27

u Spindle Speed Override u Feedrate Override


The same logic used for the application of rapid rate Probably the most commonly used override switch is one
override can be used for the spindle speed override. The re- that changes programmed feedrates. For milling controls,
quired change can be established during actual cutting by the feedrate is programmed in in/min or m/min. For lathe
using the spindle speed override switch, located on the ma- controls, the feedrate is programmed in in/rev or in mm/rev.
chine control panel. For example, if the programmed spin- Feedrate per minute on lathes is used only in cases when
dle speed of 1000 r/min is too high or too low, it may be the spindle is not rotating and the feedrate needs to be
changed temporarily by the switch. During actual cutting, controlled.
the CNC operator may experiment with the spindle speed
override switch to find the optimum speed for given cutting The new feedrate calculation, based on the overridden
conditions. This method is a much faster than 'experiment- feedrate setting, is similar to that for spindle speed:
ing' with the program values.
Fn = Fp ´ p ´ 0.01
Spindle speed override switch can be continuous on
some controls or selectable in increments of 10%, typically
within the range of 50-120% of the programmed spindle + where . . .
speed. A spindle programmed at 1000 r/min can be over-
ridden during machining to 500, 600, 700, 800, 900, 1000, Fn = Optimized - or NEW - feedrate
Fp = Originally programmed feedrate
1100 and 1200 r/min. This large range allows the CNC op-
p = Percentage of feedrate override
erator certain flexibility of optimizing spindle rotation to
suit given cutting conditions. There is a catch, however. Feedrate can be overridden within a large range, typically
The optimized spindle speed change may apply to only one from 0% to 200% or at least 0% to 150%. When the
tool of the many often used in the program. No CNC opera- feedrate override switch is set to 0%, the CNC machine
tor can be expected to watch for that particular tool and will stop the cutting motion. Some CNC machines do not
switch the speed up or down when needed. A simple hu- have the 0% percent setting and start at 10%. This can be
man oversight may ruin the part, the cutting tool or both. change by a system parameter. The maximum of 150% or
The recommended method is to find out the optimum 200% cutting feedrate will cut 1.5´ or 2´ faster than the
speed for each tool, write it down, then change the program programmed feedrate amount.
accordingly, so all tools can be used at the 100% spindle
override setting for production. There are situations, where the use of a feedrate override
would damage the part or the cutting tool - or both. Typical
Comparison of the increments on the spindle override examples are various tapping cycles and single point
switch with the increments on switches for rapid traverse threading. These operations require spindle rotation syn-
override (described earlier) and the feedrate override (de- chronized with the feedrate. In such cases, the feedrate
scribed next), offers much more limited range. The reason override will become ineffective. Feedrate override will be
for the spindle speed range of 50% to 120% is safety. To il- effective, if standard motion commands G00 and G01 are
lustrate with a rather exaggerated example, no operator used to program any tapping or thread cutting motions.
would want to mill, drill or cut any material at 0 r/min (no Single point threading command G32, tapping fixed cycles
spindle rotation), possibly combined with a heavy feedrate. G74 and G84, as well as lathe threading cycles G92 and
In order to change the selected override setting into 100% G76 have feedrate override cancellation built into the soft-
speed in the program, a new spindle speed has to be calcu- ware. All these and other related commands are described
lated. If a programmed spindle speed of 1200 r/min for a tool later in the handbook, in more detail.
is always set to 80%, it should be edited in the program to
u Dry Run Operation
960 r/min, then used at 100%. The formula is quite simple:
Dry run is a special kind of override. It is activated from
S n = S p ´ p ´ 0.01 the control panel by the Dry Run switch. It only has a direct
effect on the feedrate and allows much higher feedrate than
that used for actual machining. In practice, it means the
+ where . . . program can be executed much faster than using a feedrate
Sn = Optimized - or NEW - r/min override at the maximum setting. No actual machining
Sp = Originally programmed r/min takes place when the dry run switch is in effect.
p = Percentage of spindle override
What is the purpose of the dry run and what are its bene-
Overriding the programmed spindle speed on CNC ma- fits? Its purpose is to test the program integrity before the
chines should have only one purpose - to establish spindle CNC operator cuts the first part. Benefits are mainly in the
speed rotation for the best cutting conditions. time saved during program proving when no machining
takes place. During dry run, part is normally not mounted
28 Chapter 5

in the machine. If the part is mounted in a holding device u Sequence Return


and the dry run is used as well, it is very important to pro- Sequence Return is a special function controlled by a
vide sufficient clearances. Usually, it means moving the switch or a key on the control panel. Its purpose is to enable
tool away from the part. Program is then processed 'dry', the CNC operator to start a program from the middle of an
without actual cutting, without a coolant, just in the air. Be- interrupted program. Certain programmed functions are
cause of the heavy feedrates in dry run, no part can be ma- memorized (usually the last speed and feed), others have to
chined safely. During dry run, the program can be checked be input by the Manual Data Input key. Operation of this
for all possible errors except those that relate to the actual function is closely tied to actual machine tool design. More
contact of cutting tool with the material. information on the usage can be found in the machine tool
Dry run is a very efficient setup aid to prove overall in- manual. This function is very handy when a tool breaks
tegrity of a CNC program. Once a program is proven dur- during processing of very long programs. It can save valu-
ing dry run, CNC operator can concentrate on those sec- able production time, if used properly.
tions of the program that contain actual machining. Dry run
can be used in combination with several other features of u Auxiliary Functions Lock
the operation panel. There are three functions available to the operation of a
CNC machine that are part of 'auxiliary functions' group.
Make sure to disable dry run before machining !
These functions are:
u Z-Axis Neglect
Miscellaneous functions lock Locks 'M' functions
Another very useful tool for testing unproven programs
on CNC machining centers (not lathes) is a toggle switch Spindle functions lock Locks 'S' functions
located on the operation panel called Z-axis Neglect or
Tool functions lock Locks 'T' functions
Z-axis Ignore. As either name suggests, when this switch is
activated, any motion programmed for the Z-axis will not
be performed. Why the Z-axis? Since the X and Y axes are As described later in this chapter, auxiliary functions
used to profile a part shape (the most common contouring generally relate to technological aspects of CNC program-
operations), it would make no sense to temporarily cancel ming. They control such machine functions as spindle rota-
either one of these axes. By temporarily neglecting, that is tion, spindle orientation, coolant selection, tool changing,
disabling, the Z-axis temporarily, CNC operator can con- indexing table, pallets and many others. To a lesser degree,
centrate on proving the accuracy of the part contour, with- they also control some program functions, such as compul-
out worrying about depth motions. Needless to say, this sory or optional program stop, subprogram flow, program
method of program testing must take place without a closing and others.
mounted part, and normally without a coolant as well. Be
careful here! It is important to enable or disable the switch When auxiliary functions are locked, all machine related
at the right time. If the Z-axis motion is disabled before the miscellaneous functions M, all spindle functions S and all
Cycle Start key is pressed, all following Z-axis commands tool functions T will be temporarily suspended. Some ma-
will be ignored. If the motion is enabled or disabled during chine manufacturers prefer the name MST Lock rather than
program processing, the position of Z-axis may be inaccu- Auxiliary Functions Lock. MST is an acronym of the first
rate. letters from the words Miscellaneous, Spindle and Tool, re-
ferring to the program functions that will be locked.
Z-axis neglect switch may be used in both manual and
automatic modes of operation. Just make sure that the mo- Applications of these locking functions are limited to job
tion along the Z-axis is changed back to the enabled mode, setup and program proving only and are not used for pro-
once the program proving is completed. Some CNC ma- duction machining.
chines require resetting of the Z-axis position settings.
u Machine Lock
u Manual Absolute Setting
Machine Lock function is yet another control feature for
Some older CNC machines had a toggle switch identified program proving. So far, we have looked at the Z-axis Ne-
as Manual Absolute, that could be set to ON or OFF posi- glect function and locking of the auxiliary functions. Re-
tion. If installed, its purpose is simple - if a manual motion member that the Z-axis Neglect function will disable the
is made during program processing, for example to move a motion of Z-axis only and the Auxiliary Functions Lock
drill to inspect a hole, work coordinates are updated if the (also known as MST lock) locks miscellaneous functions,
switch is ON, but they are not updated if the switch is OFF. spindle functions and tool functions. Another function,
In practice, this switch should always be ON - and for that also available through the control panel, is called Machine
reason, most controls do not have this switch anymore. Lock. When this function is enabled, motion of all axes is
locked.
CONTROL SYSTEM 29

It may seem strange to test a program by locking all tool Once the machine operator finds what values must be
motions, but there is a good reason to use this feature. It gives changed in the program itself, this program must be edited
the CNC operator a chance to test the program with virtually no to reflect these changes. Not only for the job currently
chance of a collision. worked on, but also for any repetition of the same job in the
future. After all, it should be the goal of every programmer
When machine lock is enabled, only the axis motion is and CNC operator, to run any job at one hundred percent
locked. All other program functions are available, includ- efficiency. This efficiency is most likely reached as a com-
ing tool change and spindle functions. This function can be bined effort of the operator and the programmer. Good
used alone or in combination with other functions in order CNC programmer will always make the effort to reach
to discover possible program errors. The most typical er- 100% efficiency at the desk and then improve the program
rors are syntax errors and the various tool offset functions. even further.
u Practical Applications
SYSTEM OPTIONS
Many of the control features described in this chapter, are
used in conjunction with each other. A good example is Optional features on a CNC system are like options on a
Dry Run used in conjunction with the Z-axis Neglect or the car. What is an option at one dealership, maybe a standard
Auxiliary Functions Lock. By knowing what function are feature at another. Marketing strategies and corporate phi-
available, CNC operator makes a choice to suit the needs of losophies have a lot to do with this approach.
the moment. There are many areas of equal importance on
which the CNC operator has to concentrate when setting up Here is a look at some control features that may or may
a new job or running a new program. Many features of the not be classified as optional on a particular system. But
control unit are designed to make operator’s job easier. some important disclaimer first:
They allow a focus on one or two items at a time rather than
the complexity of the whole program. These features have This handbook covers subject matter relating
been covered in a reasonable detail, now is the time to look to the majority of control features, regardless of whether they
at some practical applications. are sold as a standard or an optional feature of the system.
It is up to the user to find out what exact options
During initialization of a new program run, a good CNC are installed on a particular control system
operator will take certain precautions as a matter of fact.
For example, the first part of the job will most likely be u Graphic Display
tested with a rapid motion set to 25% or 50% of the avail-
able rapid rate. This reduced setting allows the operator to Graphic representation of toolpath on the display screen
monitor the program integrity, as well as specific details. is one of the most important, as well as sought after, control
These details may include items such as a possibility of in- options. Do not confuse this option with any type of con-
sufficient clearance between tool and stock, checking if the versational programming, which also uses a graphic tool-
toolpath looks reasonable, and so on. path interface. In the absence of a computer assisted pro-
gramming (CAM), graphic display on the control panel is a
CNC operator will have a number of tasks to perform si- major benefit. Whether in monochrome or color, the con-
multaneously. Some of these tasks include monitoring venience of seeing the tool motions before actual machin-
spindle speed, feedrate, tool motions, tool changes, cool- ing is much appreciated by CNC operators and program-
ant, etc. A careful and conscious approach results in build- mers alike.
ing the confidence in the integrity of a CNC program. It
may be the second or even the third part of the job when A typical graphics option shows machine axes and two
CNC operator starts thinking of the optimization of cutting cursors for zooming. When the toolpath is tested, individ-
values, such as spindle speed and cutting feedrates. This ual tools are distinguished by different colors, if available,
optimization will truly reflect the ideal speeds and feeds for or different intensity. Rapid motions are represented by a
a particular part under given setup. dashed line type, cutting motions by a continuous line type.
If the graphics function is applied during machining, tool
Production supervisor should not arbitrarily criticize an motions can be watched on the display screen - very help-
override setting less than 100%. Many managers consider ful for those CNC machines that have dirty, oily and often
the CNC program as an unchangeable and perfect docu- scratched safety shields.
ment. They take the attitude that what is written is infallible
- which is not always true. Often, the CNC operator may Upwards or downwards scaling of the display allows for
have no other choice but to override programmed values. evaluation of a tool motion overall or for detail areas. Many
What is most important, is modification of the program that controls also include actual toolpath simulation, where the
reflects the optimized cutting conditions. part shape and the cutting tool can be set first, then seen on
the screen.
30 Chapter 5

u In-Process Gauging u Machining Cycles


During many unattended machining operations, such as Both milling and turning controls offer a variety of ma-
in manufacturing cells or Agile manufacturing, a periodic chining cycles. Typical machining cycles for milling oper-
checking and adjusting dimensional tolerances of the part ations are called fixed cycles, also known as canned cycles.
is imperative. As the cutting tool wears out, or perhaps be- They simplify simple point-to-point machining operations
cause of other causes, the dimensions may fall into the such as drilling, reaming, boring, back boring and tapping.
'out-of-tolerance' zone. Using a probe device and a suitable Some CNC systems also offer cycles for face milling,
program, In-Process Gauging option offers quite a satis- pocket milling, various hole patterns, etc.
factory solution. CNC part program for the In-Process
Gauging option will contain some quite unique format fea- CNC lathes also have many machining cycles available
tures - it will be written parametrically, and will be using to remove material by automatic roughing, profile finish-
another option of the control system - the Custom Macros ing, facing, taper cutting, grooving and threading. Fanuc
(sometimes called the User Macros), which offer variable controls call these cycles Multiple Repetitive Cycles.
and parametric type programming. All these cycles are designed for easier programming and
If a company or machine shop is a user of In-Process faster changes at the machine. They are built in the control
Gauging option, there are good chances that other control and cannot be changed. Programmer supplies the cutting
options are also installed and available to the CNC pro- values during program preparation by using an appropriate
grammer. Some of the most typical options are probing cycle call command. All processing is done automatically,
software, tool life management, macros, etc. This technol- by the CNC system. Of course, there will always be special
ogy goes a little too far beyond standard CNC program- programming projects that cannot use any cycles, at least
ming, although it is closely related and frequently used. not effectively, and have to be programmed manually or
Companies that already use the numerical control technol- with the use of an external computer and CAM software.
ogy, will be well advised to look into these options to re-
u Cutting Tool Animation
main competitive in their field.
Many of the graphic toolpath displays defined earlier, are
u Stored Stroke Limits represented by simple lines and arcs. Current tool position
Definition of an area on CNC lathes or a cube on CNC is usually the location of a line or arc endpoint on the
machining centers that is safe to work within, can be stored screen. Although this method of displaying cutting tool
as a control system parameter called stored stroke limit. motion graphically is certainly useful, there are two disad-
These stored stroke limits are designed to prevent a colli- vantages to it. The cutting tool shape and the material being
sion between the cutting tool and a fixture, machine tool or removed cannot be seen on the screen, although toolpath
part. The area (2D) or the cube (3D) can be defined as ei- simulation may help a bit. Many modern controls incorpo-
ther enabled for the cutter entry or disabled for the cutter rate graphic feature called Cutting Tool Animation. If avail-
entry. It can be set manually on the machine or, if available, able on the control, it shows the part blank, the mounting
by a program input. Some controls allow only one area or device and the tool shape. As the program is processed,
cube to be defined, others allow more. CNC operator has a reasonably accurate visual aid in pro-
gram proving. Each graphic element is identified by a dif-
When this option is in effect and the CNC unit detects a ferent color, for even a better appearance. The blank size,
motion in the program that takes place within the forbidden mounting device and tool shape can be preset for exact pro-
zone, an error condition results and the machining is inter- portions and a variety of tool shapes can be stored for re-
rupted. A typical applications may include zones occupied petitive use. This option is a good example of CAD/CAM-
by a tailstock, a fixture, a chuck, a rotary table, and even an like features built into a stand-alone control system.
unusually shaped part.
u Connection to External Devices
u Drawing Dimensions Input
CNC computer (control) can be connected to an external
An option that seems somewhat neglected, is the pro- device, usually another computer. Every CNC unit has one
gramming method by using input of dimensions from an or more connectors, specifically designed for interfacing to
engineering drawing. The ability to input known coordi- peripheral devices. The most common device is called
nates, radiuses, chamfers and given angles directly from RS-232 (EIA standard), designed for communications be-
the drawing makes it an attractive option. This ability is tween two computers. Setting up the connection with ex-
somewhat overshadowed by poor program portability. ternal devices is a specialized application. CNC operator
Such an option must be installed on all machines in the uses such a connection to transfer programs and other set-
shop, in order to use the programmed features efficiently. tings between two computers, usually for storage and
This is not a common feature and is not covered in this backup purposes. Devices other than RS-232 are also
handbook. available - check with the machine vendor.
6 PROGRAM PLANNING

Development of any CNC program should always begin Part drawing and material data are the primary sources of
with a very carefully planned process. Such process typi- information about a specific part to be machined. They de-
cally starts with an engineering drawing (also called a blue- fine the starting point of program planning. The objective
print or a technical print) of the required part, released for of such a plan is to collect all available data and use all ini-
production. Before any machining process can be com- tial information for one purpose - to establish grounds for
pleted, several steps have to be considered and carefully the most efficient method of machining, along with all re-
evaluated. Placing a greater effort into program planning lated considerations - mainly part accuracy, productivity,
will yield better program and better machined part. safety and convenience.
Drawing and material data provide much of initial infor-
STEPS IN PROGRAM PLANNING mation, but they are not the only source. A great part of
what is needed to develop a part program is not found in the
Individual steps required in program planning are gener- drawing directly, but in other documentation. For example,
ally determined by the nature of part to be machined. There a process sheet (routing sheet) provides many engineering
is no magic overall formula available for all jobs, but some requirements not covered in the drawing, such as pre- and
basic steps are quite common and should always be consid- post- machining operations, grinding allowances, assem-
ered carefully: bly features, requirements for hardening, next machine
setup, and many others. Collecting relevant information
n Initial information provided / Machine tools features from all available sources provides enough groundwork to
n Part complexity / Evaluation of machining features start planning a CNC program development.
n Manual programming / Computerized programming
CNC MACHINE FEATURES
n Typical programming procedure / Program structure
n Part drawing / Engineering data No amount of initial information is much useful if the se-
n Methods sheet / Material specifications lected CNC machine is not suitable for a particular job.
During program planning, CNC programmer concentrates
n Machining sequence - Operations / Tool order on a particular machine tool with a particular CNC system.
n Tooling selection / Cutting Holders / Inserts / HSS Tools These two major parts of a CNC machine are always con-
nected and they must always be considered in any single
n Part setup / Part holding / Fixtures CNC machine definition. It is just not enough to select a
n Technological decisions / Cutting conditions special fixture or a special setup - the CNC machine itself
has to be suitable to handle any required setup.
n Work sketch and individual calculations
n Quality considerations in CNC programming
Modern technology offers a large number of special fea-
tures that can be purchased as options for the selected CNC
All steps in the list are suggestions only - they are guide- machine. These options are too numerous to list, but any
lines. Individual steps should always be flexible, so they manufacturer's or dealer's web sites specify all details.
can be adapted for any job and its unique requirements. When a CNC machine is purchased and delivered, the ma-
chine shop needs and requirements should be satisfied, at
INITIAL INFORMATION least for a few years. Very few companies go and buy a new
CNC machine just to suit a particular job, although that is
not an uncommon situation. Yet, such cases are rather rare
The main purpose of most engineering drawings is to de- and happen only if they make strong economic sense.
fine the part shape, individual dimensions, and relation-
ships between part features. Some drawings may also in- u Machine Type and Size
clude data about the initial blank material (stock), such as
type, size, and shape. In CNC programming, good famil- Possibly the two most important steps in program plan-
iarity with various materials is important. For program- ning relate to the type and size of CNC machine, particu-
ming purposes, materials used to machine a part are evalu- larly its work space or work area. Other features, equally
ated by their size, type, shape, condition, hardness, etc. important, are machine power rating, spindle speed and

31
Random documents with unrelated
content Scribd suggests to you:
"I'm not arguing, Baby. I'm trying to keep this thing within the bounds
of reason. We haven't a single bit of evidence yet to prove it isn't a
natural disease, so why go overboard?"
"The structure of the virus isn't normal."
"So far, that seems to be so, but that doesn't prove it's synthetic
either."
"But what if it does cause permanent damage to the ovaries?"
"Then, Toots, this old continent of North America is in one hell of a
fix."
"I can't imagine how I'd feel if I got a disease and knew I could never
have children."
"There are plenty of people that way now."
"Not millions of them, and not me! I always wanted babies but my
husband wanted to wait. He was too busy making money ... and
having a good time."
"A good time with whom?"
"That's the question that finally broke it up. It's just as well there were
no children, I suppose." She leaned over towards me and put her
hands on mine. "If I ever marry again, I want a man who wants
children."
This time I looked straight at her, and the hell with my blood pressure.
"I want your kids," I said, and pulled her down into my arms.
She broke loose after a while, though I could feel her quivering. It was
always the same. I had never been able to break down that last little
bit of resistance, that fear of being hurt again. Maybe I never would. I
sighed resignedly and sat up.
"Might as well go fishing," I said and I went to lay out the lines and
hoist the mainsail.
The wall of fog had been moving towards us over the empty sea like
a great, flat-topped Antarctic iceberg, shining whitely in the gold light
of the Western sun. Beside me, the mainsail hung slackly from the
mast, the edge flipping idly in a stray puff of wind. Slowly the white
cliff approached, and as slowly changed to an amoeboid mass of
vapor, tumbling lazily, sending out streamers that twisted and
vanished as they reached too far from the cool mother mist. One,
stronger than the rest, waved a filmy pseudopod over my head and,
for an instant, the gold light whitened. Another came, and another,
and then we were gone, into the soft wet coolness of the seaborne
cloud. The light faded, both from the fog blanket and from the setting
of the sun. I hauled in the fishing lines and stowed them. I lit the
running lights. I was shivering as I secured the sail, checked the gear
and went below.
In the little triangular cabin, tucked under the forepart of the sloop,
Pat was busy. The hissing of the pressure lamp and the crackling of
hamburgers on the stove made a pleasant, home-like sound. It was
cosy and warm here, in contrast to the fog-chill above. The smell of
onions and beef drifted back to where I stood and I sniffed hungrily.
She'd be a good wife, I thought as I watched her, and a good mistress
too. She was still wearing her bathing suit and, as I looked from her
full brown thighs up over the curving hip-line to the small breasts
pushing against the thin bra, I felt the slow pounding pulse and deep
excitement of desire. Quietly I came close behind her. She started as
my cold hands touched her, the instant of realization passed, and
then she came back hard against me and her eyes were on mine as
she turned her lips for my kiss. For a moment only she stayed, then,
with a backward shove of her body, she tried to push me away.
"Look, darling, this is all very nice, but the hamburgers are burning."
"Let them," I whispered, my hands roving a bit. "I'm burning too."
"That can wait." Her eyes seemed to promise me as she brushed at a
stray brown curl with the back of her hand. The spatula, waving
above her head, flashed in the flickering gas light. I let her go.
"Why don't you fix us a drink? There's time before we eat."
"If I drink too much I won't want you or the hamburgers either," I
complained, but I went to the cooler and pulled out the gin and
vermouth. "Someday," I thought morosely, "someday, she must give
in."
I put her drink in the shelf where she could reach it as she worked
and squeezed between the bench seat and the folding table while I
watched her toss a salad. As a medical technician she was good, and
the same thoroughness and skill went into her cooking; into
everything she did for that matter.
The drink was good and the salad sat before me in its green
crispness. Pat was lifting the hamburgers off the fire and, as the
cracking ceased, I felt a low, insistent, base rumble rise above the
hissing of the lamp. The night was quiet, no foghorns because there
were no ships near enough. We had drifted fairly close to the
mainland, behind some small islands, off the usual channels. The
auxiliary motor was still shut down and for a moment I wondered if
the currents had carried us in towards the rocks; but the noise was
not the splash of waves on shore, it was too steady. Now Pat was
standing, frying pan and spatula in either hand, and her straight dark
eyebrows down in a frown of concentration.
"Do you hear it too?"
She nodded.
"Keep the hamburgers warm, I'm going up to have a look."
She moved back to the stove as I climbed up into the cockpit.

In a rising breeze the mist was swirling and, from the east, as the fog
patches thinned out, the lighter cloud showed where a full moon lay
hidden. The noise was louder now, and coming fast, a beat of
engines rising above the splash of wavelets against the bow of the
sloop. I couldn't see where the ship was. There was no foghorn;
neither the doleful groaning of the deep sea ships nor the sharp
cough of the coastal steamer, bouncing its sound waves off the island
hills, told me where it lay.
"The stupid oaf," I muttered to myself. "What's he doing in this
deserted channel, and why doesn't he signal?"
There was no time to wonder. I jumped to the stern and grasped the
tiller while I pushed down firmly on the starter button. The engine was
cold and coughed reluctantly in the foggy air. I was still prodding the
starter and working the throttle when the fog bank broke apart.
Above, to the east, the mottled moon, pale grey and blue like a
Danish cheese, had risen over the Coast Range. Across the waters
of the channel ran a rippling bar of light, cutting in half the white-
walled arena of fog as the late afternoon sun pierces the dust of a
Mexican corrida. Charging out of the misty north, like a Miura bull
from the gate, came a black, high-prowed ship, moving fast through
its phosphorescent bow wave. It came on, straight for us, and the
sputtering motor still did not respond. I stood up and worked the tiller
back and forth, trying to scull with the rudder and swing our bow to
starboard.
"Pat, Pat, for God's sake get on deck! It's a collision!"
I was still yelling when the thick black mass rose over me and the
bowsprit of the sloop splintered and buckled. The jolt threw me to my
knees but I held the rudder hard over and we slid by, bumping and
scraping along the port side of the vessel.
It was not a big ship, but bigger than a halibut boat. It seemed about
the size and shape of those floating canneries I'd seen in Hokkaido
when I'd worked with the Japanese National Police in 1952. I don't
know whether that thought was first in my mind or whether it came
later but I do know, in the middle of all the confusion I heard a
command screamed out in Japanese, and the answering "Hai"
barked back as only the Japs can say it. I thought I must have been
mistaken when, a moment later, I saw the man. The moon was full on
his face as he leaned out over the side, near the stern. For an instant
we were quite close as I stood up, cursing the stupid so-and-so's who
were ruining the beautiful woodwork of my boat. He was fair-haired,
with a short brush cut. The eyes were deep set and shadowed too
much to see the color. His face was broad, with high cheek bones,
and the mouth wide and heavy under a short nose. I couldn't tell his
height, but he looked strong and stocky. His hands, gripping the rail,
seemed powerful even in that light. As we passed, the moonlight
caught them and was reflected in a dull red glow from some large
stone, a ring I presumed, on the back of his left hand. He didn't move
or speak and I lost sight of him a second later when the pitching of
the yacht in the stern wash threw me again to the deck. By the time I
recovered, the steamer was across the open space and plunging
back into the fog. In the swirling mist of its passage the flag at the
stern fluttered out straight. It looked like a red ball on a white field.
"The hamburgers! My God, the hamburgers are on fire!"
I turned around, still dazed, to see Pat unscramble herself in the
cockpit and drop back into the galley. I left her to it while I checked
the wreckage of the port side fittings. We weren't holed, thank
Goodness, so we could run for home under our own power. I steered
in close to the shore of one of the islands where the fog had lifted,
and dropped anchor. Then I went below. Pat was at the stove again.
A new batch of hamburgers was under way and only a stain on the
floor showed what had happened to the first lot.
"Mix us a drink, a big drink," was all she said, then.

The hamburgers were gone and we sat over our coffee. I was drowsy
from the warmth and the hot sweetness of the Drambuie felt good as
I took it slowly. Pat was rolling hers around the liqueur glass and
watching the oily liquid slide back to the bottom. A quiet woman
ordinarily, she was extremely so this night.
"Why so quiet, darling?" I reached for her hand. She looked at me
and said nothing.
"Is it that damned ferret again?"
She nodded.
"Don't let it worry you so much, sweet. It's only a hunch and I don't
think he's right."
"What if he is right, what then?" She went on without waiting for an
answer. "I want children, I don't want to be sterile."
"Well you aren't, or at least I don't suppose so. Probably you won't
be."
She looked at me scornfully. "What chance have I of avoiding the flu
when millions of others are getting it?"
"Oh Lord, you women! Can't you see there's absolutely no evidence
for this silly fear of yours? Damn Hallam and his wild ideas! Why don't
you forget it?"
"Because I think he's right, that's why." She stood up abruptly. "Let's
go on deck."
I followed her out into the cockpit. We were still at anchor, intending
to start back after a few hours sleep. The sloop was as quiet as a
resting seabird in the black shadow of a rocky point. It was cold. In a
few minutes Pat shivered and came close to me, her arms about my
waist. The keen air had awakened me, and, as I caressed her,
smoothing away the little pebbles of gooseflesh on her shoulders and
back, her warm body against mine stirred again the desire I had felt
before the collision. She must have known. Slowly her arms came up
and around my neck. Her head, cushioned on my chest, lifted and her
full lips brushed mine lightly. For a moment I hesitated. Through the
thin suit she felt naked under my hands, trembling with cold and
excitement.
"I can't take much more of this, Pat," I whispered. "Either you quit
right now or you go down to bed."
Her eyes opened. She looked straight at me for a long moment.
"Will your bunk hold both of us?" she asked as her lips closed hard
on mine.

CHAPTER 4
We came back through the big glass doors hand in hand. The night
watchman, making his last round, nodded and smiled at us as we
wound up the stairs to the penthouse. We went through the showers
together since nobody else was about. I scrubbed her back to get rid
of the salt sea crystals and was rewarded with a warm, wet kiss. We
reached the living room just as Dr. Hallam, freshly shaven and bright,
came in for his breakfast.
"Welcome back, kids!" he boomed at us. "Did you have a good time?"
He looked closely at Pat.
A slow flush deepened the color of her cheeks and he grinned
elfishly. "I see you did. Well, let's have some breakfast. I have news
for you and plenty of work, so eat heartily."
He pushed the toaster buttons and the bread dropped out of the
cooler-keeper and lowered itself into the heating element. I set three
cups and three glasses under the dispenser and dialled tomato juice
and medium strong coffee. Pat cracked six eggs into three plates,
added bacon and pushed them into the slots in the electronic oven. A
minute later, with his mouth full of toast and egg, Hallam mumbled,
"After you left I waited for about two hours before Smith phoned. He
had a preliminary report on the female ferrets. You'll be glad to hear
this, both of you. He couldn't find a thing on any of them."
"Wonderful!" Pat breathed, and smiled at me radiantly.
"What about the pregnant one?" I said.
"There were only the usual changes in the ovaries associated with
pregnancy. Mind you," he went on, "even with the new techniques,
frozen sections are far from perfect, but I must admit I'd be
disappointed if I weren't so relieved."
"Did the male ferrets show anything?" I said.
"He wasn't sure. He thought there were some inflammatory changes
in the testicles but he wanted to wait for the paraffin sections to
confirm it."
"Was there anything else?" Pat asked.
"Nothing except bronchial irritation, which one would expect."
It was eight o'clock when the telephone rang and I picked it up.
"Dr. Macdonald here," I said.
"Mac, is the boss in?" Smith asked.
"He's busy right now. Can I take a message?"
"Yes. Tell him the H and E's on those ferrets show only mild ovarian
inflammation. The testicles are definitely inflamed ... a low grade thing
with a lot of lymphocytes. There is swelling and some degeneration of
the sperm cells but it doesn't seem to affect the hormone secreting
elements."
"What about other organs?"
"Aside from nasal and bronchial inflammation, essentially negative."
"Have you any suggestions?"
"It's too early to come to any conclusions but I'd like to follow up on
this. How about taking biopsies on the male ferrets rather than
sacrificing them. Then maybe we can see what is happening, I mean
what the progression of the disease is, in the same animal. You could
snip out a piece of ovary on some females too!"
"It isn't easy but we can do it."
"How about the other animals?"
"Some of the mice look a bit sick this morning, but the monkeys are
still healthy."
"Well, if you can get the biopsies to us soon, we should have a good
idea, late tonight or tomorrow morning, of what's going on. Say, I just
had a thought! Didn't George inoculate some ferrets when the
epidemic first broke out?"
"I wasn't here but I believe he did. Why don't you ask Harry? He was
working with the Chief when I was away. All those animals are in the
other section anyway."
"I'll do that. With yours in the acute stage and the others
convalescent, we should get a good idea of the progress of the
disease. I'll let you know later."
Hallam was in the ferret room. I joined him there and told him of
Smith's suggestions.
"This is going to be quite a day," he grinned wryly.

He was so right. It took several hours, and innumerable bites and


scratches from indignant animals, fortunately the plastic gloves were
tough enough not to tear, before the last snarling male writhed back
into his cage to lick his smarting personal property. We stopped for
lunch and went back to the more complicated task of operating on the
females in the afternoon.
In the meantime, the testicular biopsies, in their fluid-filled bottles,
were on their way to Tissue Path., to join those that Smith and his
residents were already preparing from the convalescent ferrets.
Speaking into Dictape machines, the junior residents described and
numbered the specimens while deft-fingered girl technicians wrapped
them in little packets and put those in tiny perforated boxes. They
dropped the boxes into beakers filled with fixative which they then set
up on the Technicon machines. The dials were set, the clock ticked,
and hour by hour, as the timer clicked into the grooves of the wheel,
the arms of the Technicon lifted, dangling their clusters of dripping
boxes, turned like soldiers on parade, and dropped them again into
the next beaker. On they went through the fixative that preserved the
cells as they had been in life, the alcohols that slowly and carefully
removed the water, the xylol that replaced the alcohol and, finally, the
hardened shreds of tissue lay in melted paraffin, ready for the cutting.
But first they had to be embedded in paper boats full of melted wax
which, when it hardened, held them securely. Then, in millionths of a
metre, the incredibly fine edge of the microtome sliced off a ribbon of
tissue, as a bacon slicer cuts pork. The technician laid the ribbons on
a bowl of warm water, separated off each individual slice with her
needle and guided it on to a prepared glass slide which was then laid
aside to dry. That was not all. Now the process had to be reversed,
the paraffin removed with xylol, the xylol with alcohol, the alcohol with
water, before the pale white dots of tissue could be stained. There
was no way of hurrying the process. Chemicals need time to react,
and time they took, regardless of our impatience. At last the blue
color of the Hematoxylin and the red of the eosin had been added in
their turn and taken up by the tissues; the protective balsam and the
slip cover had been placed over the sections; the slides had
hardened enough to be put under the microscope.
With mounting excitement, Smith and his senior residents racked
down the binocular microscopes to focus on the minute blue and red
dots that lay beneath. Silently they looked, moving the slides jerkily
but accurately with their fingers to view all the sections. Still silent,
they swapped slides to check and re-check their findings. At last
Smith straightened up and removed his spectacles. He rubbed his
eyes wearily. He looked along the table at the three young men who
had worked with him.
"Any doubts about this?" he said.
Three heads shook slightly. There was nothing to say. They were too
tired for casual chatter. He pushed the Intercom switch.
"Dr. Hallam. Smith calling."
The sound came into the living room as we sat at midnight coffee.
The rasping voice jarred us out of the apathy of exhaustion.
"This is Hallam."
"George, we've just read those testicular biopsies. There's a sub-
acute inflammation in those with the flu, as we saw before; in the
convalescent ferrets there is complete absence of spermatozoa with
no evidence of new formation."
I looked at Pat. "Now who should be worried?"
"I've never heard of this before in ferrets with the flu," Hallam was
saying. "I'd think of mumps except that it isn't easily transmitted to the
weasel tribe and this isn't like mumps clinically."
"What do you propose to do now?"
Hallam thought for a moment. "Carry on with our animal experiments;
but we can't afford to wait for the monkeys. We shall have to start
working on people."
"How?"
"Get in touch with the Public Health Department and see if you can
round up volunteers for testicular biopsy in convalescents from the
first attack. If they don't want a biopsy maybe you can persuade them
to give us a sperm count."
"You know we can't keep this hushed up if we do that. The papers are
bound to get hold of it."
"I realize that," Hallam said grimly, "but they're going to know sooner
or later. Maybe this will soften the blow when it does come."
"OK George, you're the boss. We can't do anything until morning. I'm
going to close up shop and let everybody get some sleep."
"Good idea. Keep away from the flu if you can."
"Huh, fat chance. I've got my family anyway. It's my kids I'm worried
about."
"There are times when I'm glad I'm a bachelor," Hallam replied and
shut off the speaker.
"Doesn't look too good, does it?" I said.
"We'll know by tomorrow night, I hope."
"I can't figure this thing at all. An inflammation that destroys the
testicular cells should give a lot of swelling and pain. Those ferrets
were frisky enough and they didn't show any signs of orchitis."
"Neither did most of the human victims," Hallam said.
"Perhaps it's only a temporary arrest in the maturation of the sperm
rather than destruction of the spermatogonia themselves. That could
be the explanation for the low grade inflammation and the minimal
symptoms."
"You mean there might be some interference with an enzyme
system?" Pat said.
"Yes. We see it in anemias where the cells don't mature properly
because of a lack of some vitamin like B12. The same sort of thing
could be happening here, I suppose."
"Then it might be only temporary?"
"I sincerely hope so, especially if Smith finds the same in man as he
reports in the ferrets."
"I wish I could share your optimism John," the Director said, "but if
this is a weapon it won't have just a temporary effect. There would be
no point to that." He yawned. "Sufficient unto the day is the evil
thereof, as the Good Book says. Let's go to bed."

The alarm jarred me out of deep sleep. As I groped beside the bed
for the still vibrating clock, I regretfully abandoned my dreams for the
austere grey walls of my temporary room, and the dreary window
view of a wet Vancouver dawn. The tide was out and the slimy green-
spattered mud and rocks of the estuary looked like a surrealistic
painting of a hangover. At the water's edge, a school of fishing boats
angled in the mud, their tilted trolling masts reminding me of the
broken antennae of some strange crayfish, stranded and dead on a
fishmarket floor. And dead they were. No smoke came from their
humpbacked little cabins; no fisherman climbed the slanted decks.
I wondered if the epidemic had silenced their motors, or was it just
not the season for fishing. Were the lusty trollers and seiners worrying
about their lost virility and gone home to test it out? The newspapers
had been asked to play down their sterility stories, which had caused
so much consternation yesterday, but even so it was common
knowledge that those who had had involvement of the sex glands
might be sterile.
I turned down the corridor to the kitchen and started the coffee
dispenser. Pat was still asleep after a late night coaxing reluctant
male and female ferrets into the same cage and to be friends instead
of messily murdering each other. Chivalry among ferrets is not highly
regarded, even with females in season. We wanted to see if they
could produce families, not to see which one was the stronger sex.
Tranquillizers are fine for the purpose but it takes a neat balance to
eliminate the fight and keep the desire. Hallam was not around. He
was an early riser and could probably be found watching the
monkeys if I cared to go there. They had shown no symptoms as yet.
Probably the incubation period was about the same as in man, and if
so there had not been time for the fever to start.
I moved on again to the shower, taking it cool to clear my fuzzy head.
Now there was little to do but wait; wait for the ferrets to get amorous;
wait for the chattering monkeys to fall ill; wait for more biopsies of the
human volunteers out there beyond the virus-proof walls of our
chosen prison. I thought of the previous day, the second after our
brief excursion. After breakfast we had rechecked the animals while
Pat had transferred cultures, brought our records up to date and then
Hallam and I sat in the living room playing cribbage while we waited
for Smith's reports.
As he had predicted, the newspapers soon heard of the new
investigations and the noon headlines, shown over the TV, were large
and frightening. "Are Flu Victims Sterile?" the Daily Mail screamed
hysterically in three inch letters and went into a long discourse based
only on a cautious statement, attributed to Dr. Smith, that some
experimental animals, after the flu, showed a decrease in procreative
powers. The Sun was more cautious but the tune was the same. An
hour after the papers appeared, Hallam ordered all telephone lines to
the Laboratory shut down and a short dictated speech, intended to
calm the hysteria, was played continuously over the trunks and
repeated on both radio and TV.
The mayor came to the hospital, as mad as a clucking hen whose
eggs have been disturbed, as indeed they had. She cooled off
considerably after Hallam spoke to her on the inside telephone, and,
in cooperation with the local director of the RCMP, the head of the
Metropolitan School Board, the Medical Officer of Health and various
other officials summoned to the spot, agreed to form a Public Safety
Committee to take immediate action if the need arose. They too, after
their meeting, could only sit and wait for Smith's report.
"Why didn't you go down and talk to them sir?" I said later.
"I don't want to get the flu."
I smiled condescendingly. "Oh? I didn't think it would mean that much
to you."
"It doesn't," he said levelly, "but it would to you and Pat if I brought it
back up here with me."
There was nothing I could say. I have seldom felt so foolish.

Later in the day, I played a lazy game of cribbage with Hallam while
Pat knitted and watched TV at the other end of the room. Deciding to
have some fun, as the Chief dealt a new hand, I picked up the paper
that was lying on the table.
"Say, Pat, here's a little item that should interest you," I said, and
pretended to read. "Lovely woman scientist, possible Nobel prize
winner, knits little things and dreams of rose-covered cottage. I
always wanted at least ten children, our reporter quotes Mrs.—" I
started loudly, cocking one eye over the top of the paper; but I didn't
finish.
Pat got up abruptly. For an instant I thought she would throw the wool
at me, needles and all.
"You stinker ... you absolute stinker," she spat at me, and almost ran
from the room.
"Lord! She must be getting stir crazy," I said, bewildered.
"John, sometimes I think you spent too many years overseas,"
Hallam said quietly. "You still can't imagine how a woman thinks."
That broke up the crib game. Neither of us had the heart to continue.
For the first time I really began to imagine a world full of sterile
people; the falling population; the frustrated family life; the emptying
houses; the already empty schools.
"God, what a dreary prospect," I said aloud. "And we were worrying
about overpopulation."
The Chief caught my train of thought but he just nodded. There was
no answer.
An hour later the phone rang. He answered it and then turned to me
with a smile. "That was a report from Smith about the ovaries of those
convalescent ferrets I inoculated with the first cases of flu. They seem
OK. Maybe it affects only a few females after all."
"Well, we can't go peeking into the tummies of all the ladies in
Vancouver just to find out," I said.
"No, but we could try to get permission to biopsy ovaries on women
who have abdominal operations in the city hospitals. Many of them
have had the flu. It should tell us something."
He turned back to the telephone and in a matter of minutes Bruce
Thompson had agreed to cooperate and to pass the word on to the
surgical departments of the other hospitals in town.
Pat showed up to make us afternoon tea but she was clearly
disturbed ... even more so when she heard the news.
"I thought you'd have been pleased to hear about the females," I said
dubiously.
"Suppose it does apply to women. What good are active ovaries to a
prospective mother if all the men are sterile?" she said, scornfully.
"Well, you could always marry a Russian, when they take over the
world."
"Fool," she sneered. "That probably will be years from now, and I'll be
too old. For another thing, I don't want to be part of anybody's harem,
even for a baby."
"Where do you get that harem stuff?" I grunted. "The Russkis aren't
Moslems."
"This isn't your good day, John," Hallam interrupted. "It is obvious that
there will be a tremendous demand for fertile males, and I can even
visualise the female voters of this country and the United States
demanding a quota for Russian immigrants to this continent. Just how
the disgruntled American males would react I don't know. It could lead
to a very nasty situation, and maybe to that retaliatory war the Reds
are trying to avoid. Of course, it could also mean civil war ... a war
between the sexes ... with our males trying to revenge themselves on
the Russians and our more realistic females trying to prevent it so
they could use the Slavs to rebuild the nation ... on Communist terms
of course."
"Boy, this is really science fiction gone wild," I said. "Seems as if I
picked the wrong place to live, unless I can avoid the flu."
Pat didn't even look at me after that crack. The day dragged on.
Radio reports came every few minutes and the interruptions of the TV
programs to announce the spread of the epidemics were almost as
frequent as the commercials.

By now the Chinese had admitted that thousands were dying in the
big cities of Peiping and Shanghai, while panic had disrupted
communications to the interior. The first frightened reports were in
from India, where efforts to block the Himalayan passes were too late
and refugees had spread the deadly "measlepox", as it was now
called, to Assam and Upper Bengal. There were rumors of flu in
Texas and the Rangers had redoubled their efforts to keep the
Mexican "wetbacks" from sneaking across the Rio Grande. All trans-
Pacific air travel was cancelled.
About that time, the Intercom lit up again.
"Are you there, George?" It was Dr. Smith.
"Yes. What have you found?"
"We have the reports on thirty sperm counts taken today from
professional personnel in this hospital. They are all negative."
"You mean normal, I hope."
"I mean negative for sperm. Three are from doctors who are just over
the fever. They show a few abnormal forms in the secretion but no
live ones. All the others are several days convalescent and show
nothing but epithelial cells, a few polymorphs and more lymphocytes."
"What about the biopsies?"
"We have half a dozen that we rushed through. The slides aren't the
best but it's perfectly obvious that something serious is happening.
The spermatogonia are degenerating. The Sertoli cells seem all right
and the interstitial cells are apparently untouched."
"What's he mean?" Pat whispered to me.
"He means the cells that form the sperm are dying but the ones that
give a man his masculinity are intact."
"How many more biopsies have you?" said the Chief.
"About fifty."
"That's not enough. We're going to need at least several hundred.
There must be absolutely no doubt in anyone's mind that this is a
national emergency when we present the facts to the Government. I
know that the statisticians can prove that this present number is
highly significant but a politician is much more impressed with a lot of
people than with a small group."
Joe Armstrong came on the line. "George, I'm convinced now that
this virus does have serious after-effects. Let me talk to the other
hospitals. We can get enough specimens in another twenty-four
hours to prove your point." He paused, obviously considering his
words. "I can't go along with this secret weapon idea yet.... I don't
think there's enough evidence. What do you say?"
"There isn't any evidence for the weapon theory," Hallam admitted,
"but Gordon is well on the way to showing that the structure of the
virus is synthetic. What I mean is that it looks more like a crazy
mixture of mumps and flu than like any of the natural viruses or their
known mutations."
"I still don't think we'd better let that story get out. There'll be enough
hell raised as it is."
"All right ... just as long as we stop this thing."
"How do you suggest we go about it?"
"Joe, there isn't time to search for a way of preventing it by vaccines.
It will take months to manufacture enough, even if we succeed. Our
only hope is to alert the civil authorities to its after-effects and get a
strict quarantine set up. Frankly, I think it's almost hopeless by now.
The Eastern Seaboard started reporting cases just a short time ago.
Agents must be working in seaport cities like Montreal, New York,
Charleston and all the others. I'm afraid we're licked except for
isolated communities in the far north or in some rural areas which can
be ringed around with guards to prevent contamination. Every male
we can save must be protected either until the disease dies out or we
can devise a vaccine."
"Do you have any other ideas?"
"You could get a Blood Donor Program going to collect blood from
those who have had the flu. We might be able to separate out
antibodies from convalescent serum strong enough to give a
temporary protection to those who haven't had the disease ... and
then hope for a vaccine."
"OK, George," said the Intercom. "Why don't you three stay in there
and work on the vaccine since you haven't had the flu yet. I'll alert the
Minister of Health. The Public Safety Committee is already back in
session."
"Do that, Joe," Hallam said, "and tell Harry Cope and Polly Cripps to
stay on call. We're going to need help with the electron pictures and
other procedures."
So that day had gone by and here was another one, a day of coffee
drinking and waiting, a day of writing reports, of listening to the
mounting clamor in the outside world. In the Vancouver area, schools
were closed at noon. The Public Safety Committee, impressed
sufficiently by yesterday's preliminary reports, barred all public
meetings and ordered theatres, bars and dance halls to close.
Families not yet affected by the flu were urged to stock up on
supplies and then remain home. Quarantine regulations were put in
effect to protect them. This reversal of the usual procedure in which
those who had not had the disease were kept isolated, was explained
as necessary since the majority of the people had already been
victims and therefore were unsalvageable. By nightfall the day's
biopsy reports were coming in from all the city hospitals. There was
no doubt. Every male who had had the flu was sterile!
The extras hit the streets an hour after dark. The Lieutenant Governor
came on the TV and radio to declare a state of emergency. Curfew
was to be enforced, beginning the next night, for all except essential
medical services and food supply. At least the country was aroused.
All trace of former unconcern had disappeared.
I went to bed early. There was nothing more I could do.

CHAPTER 5
At midnight I awoke suddenly. My mind was alert and bright, with that
extreme clarity which comes sometimes after working hard on a
problem. The moon was pouring a pale light over the window sill. It
bathed my face in its lambent glow as I lay there for a moment,
wondering what chemical time bomb had exploded in my brain. I
looked at my watch. It was midnight.
I got up and looked out. Spreading up from the delta, curling over the
fishing fleet and the canneries, flowing between the houses and filling
the streets as the incoming tide runs in the channels and covers the
stones of a rocky shore, the fog filled the hollows and smoothed over
Welcome to our website – the ideal destination for book lovers and
knowledge seekers. With a mission to inspire endlessly, we offer a
vast collection of books, ranging from classic literary works to
specialized publications, self-development books, and children's
literature. Each book is a new journey of discovery, expanding
knowledge and enriching the soul of the reade

Our website is not just a platform for buying books, but a bridge
connecting readers to the timeless values of culture and wisdom. With
an elegant, user-friendly interface and an intelligent search system,
we are committed to providing a quick and convenient shopping
experience. Additionally, our special promotions and home delivery
services ensure that you save time and fully enjoy the joy of reading.

Let us accompany you on the journey of exploring knowledge and


personal growth!

ebookgate.com

You might also like