Computer Numerical Control
Chapter Contents
7.1 Fundamentals of NC Technology
7.1.1 Basic Components of an NC System
7.1.2 NC Coordinate Systems
7.1.3 Motion Control Systems
7.2 Computers and Numerical Control
7.2.1 The CNC Machine Control Unit
7.2.2 CNC Software
7.2.3 Distributed Numerical Control
7.3 Applications of NC
7.3.1 Machine Tool Applications
7.3.2 Other NC Applications
7.3.3 Advantages and Disadvantages of NC
7.4 Analysis of Positioning Systems
7.4.1 Open-Loop Positioning Systems
7.4.2 Closed-Loop Positioning Systems
7.4.3 Precision in Positioning Systems
7.5 NC Part Programming
7.5.1 Manual Part Programming
7.5.2 Computer-Assisted Part Programming
7.5.3 CAD/CAM Part Programming
7.5.4 Manual Data Input
Appendix 7A: Coding for Manual Part Programming
149
,150 Chap. 7 / Computer Numerical Control
Numerical control (NC) is a form of programmable automation in which the mechani-
cal actions of a machine tool or other equipment are controlled by a program containing
coded alphanumeric data. The alphanumeric data represent relative positions between a
work head and a work part as well as other instructions needed to operate the machine.
The work head is a cutting tool or other processing apparatus, and the work part is the
object being processed. When the current job is completed, the program of instructions
can be changed to process a new job. The capability to change the program makes NC
suitable for low and medium production. It is much easier to write new programs than to
make major alterations in the processing equipment.
Numerical control can be applied to a wide variety of processes. The applications
divide into two categories: (1) machine tool applications, such as drilling, milling, turning,
and other metal working; and (2) other applications, such as assembly, rapid prototyp-
ing, and inspection. The common operating feature of NC in all of these applications is
control of the work head movement relative to the work part. The concept for NC dates
from the late 1940s. The first NC machine was developed in 1952 (Historical Note 7.1).
Historical Note 7.1 The First NC Machines [1], [4], [7], [9]
The development of NC owes much to the U.S. Air Force and the early aerospace industry.
The first work in the area of NC is attributed to John Parsons and his associate Frank Stulen
at Parsons Corporation in Traverse City, Michigan. Parsons was a contractor for the Air
Force during the 1940s and had experimented with the concept of using coordinate posi-
tion data contained on punched cards to define and machine the surface contours of airfoil
shapes. He had named his system the Cardamatic milling machine, since the numerical data
was stored on punched cards. Parsons and his colleagues presented the idea to the Wright-
Patterson Air Force Base in 1948. The initial Air Force contract was awarded to Parsons
in June 1949. A subcontract was awarded by Parsons in July 1949 to the Servomechanism
Laboratories at the Massachusetts Institute of Technology to (1) perform a systems engi-
neering study on machine tool controls and (2) develop a prototype machine tool based on
the Cardamatic principle. Research commenced on the basis of this subcontract, which con-
tinued until April 1951, when a contract was signed by MIT and the Air Force to complete
the development work.
Early in the project, it became clear that the required data transfer rates between the
controller and the machine tool could not be achieved using punched cards, so it was pro-
posed to use either punched paper tape or magnetic tape to store the numerical data. These
and other technical details of the control system for machine tool control had been defined
by June 1950. The name numerical control was adopted in March 1951 based on a contest
sponsored by John Parsons among “MIT personnel working on the project.” The first NC
machine was developed by retrofitting a Cincinnati Milling Machine Company vertical
Hydro-Tel milling machine (a 24@in * 60@in conventional tracer mill) that had been donated
by the Air Force from surplus equipment. The controller combined analog and digital com-
ponents, consisted of 292 vacuum tubes, and occupied a floor area greater than the machine
tool itself. The prototype successfully performed simultaneous control of three-axis motion
based on coordinate-axis data on punched binary tape. This experimental machine was in
operation by March 1952.
A patent for the machine tool system entitled Numerical Control Servo System was
filed in August 1952, and awarded in December 1962. Inventors were listed as Jay Forrester,
William Pease, James McDonough, and Alfred Susskind, all Servomechanisms Lab staff
,Chap. 7 / Computer Numerical Control 151
during the project. It is of interest to note that a patent was also filed by John Parsons and
Frank Stulen in May 1952 for a Motor Controlled Apparatus for Positioning Machine Tool
based on the idea of using punched cards and a mechanical rather than electronic controller.
This patent was issued in January 1958. In hindsight, it is clear that the MIT research pro-
vided the prototype for subsequent developments in NC technology. As far as is known, no
commercial machines were ever introduced using the Parsons–Stulen configuration.
Once the NC machine was operational in March 1952, trial parts were solicited from
aircraft companies across the country to learn about the operating features and economics
of NC. Several potential advantages of NC were apparent from these trials. These included
good accuracy and repeatability, reduction of noncutting time in the machining cycle, and the
capability to machine complex geometries. Part programming was recognized as a difficulty
with the new technology. A public demonstration of the machine was held in September
1952 for machine tool builders (anticipated to be the companies that would subsequently
develop products in the new technology), aircraft component producers (expected to be the
principal users of NC), and other interested parties.
Reactions of the machine tool companies following the demonstrations “ranged from
guarded optimism to outright negativism” [9, p. 61]. Most of the companies were concerned
about a system that relied on vacuum tubes, not realizing that tubes would soon be displaced
by transistors and integrated circuits. They were also worried about their staff’s qualifications
to maintain such equipment and were generally skeptical of the NC concept. Anticipating
this reaction, the Air Force sponsored two additional tasks: (1) information dissemination to
industry and (2) an economic study. The information dissemination task included many visits
by Servo Lab personnel to companies in the machine tool industry as well as visits to the Lab
by industry personnel to observe demonstrations of the prototype machine. The economic
study showed clearly that the applications of general-purpose NC machine tools were in low-
and medium-quantity production, as opposed to Detroit-type transfer lines, which could be
justified only for very large quantities.
In 1956, the Air Force decided to sponsor the development of NC machine tools at several
aircraft companies, and these machines were placed in operation between 1958 and 1960. The
advantages of NC soon became apparent, and the aerospace companies began placing orders
for new NC machines. In some cases, they even built their own units. This served as a stimulus
to the remaining machine tool companies that had not yet embraced NC. Advances in computer
technology also stimulated further development. The first application of the digital computer
for NC was part programming. In 1956, MIT demonstrated the feasibility of a computer-aided
part programming system using an early digital computer prototype that had been developed at
MIT. Based on this demonstration, the Air Force sponsored development of a part program-
ming language. This research resulted in the development of the APT language in 1958.
The automatically programmed tool system (APT) was the brainchild of mathematician
Douglas Ross, who worked in the MIT Servomechanisms Lab at the time. Recall that this
project was started in the 1950s, a time when digital computer technology was in its infancy,
as were the associated computer programming languages and methods. The APT project was
a pioneering effort, not only in the development of NC technology, but also in computer pro-
gramming concepts, computer graphics, and computer-aided design (CAD). Ross envisioned
a part programming system in which (1) the user would prepare instructions for operating the
machine tool using English-like words, (2) the digital computer would translate these instruc-
tions into a language that the computer could understand and process, (3) the computer would
carry out the arithmetic and geometric calculations needed to execute the instructions, and (4)
the computer would further process (post-process) the instructions so that they could be in-
terpreted by the machine tool controller. He further recognized that the programming system
should be expandable for applications beyond those considered in the immediate research at
MIT (milling applications).
, 152 Chap. 7 / Computer Numerical Control
Ross’s work at MIT became a focal point for NC programming, and a project was initi-
ated to develop a two-dimensional version of APT, with nine aircraft companies plus IBM
Corporation participating in the joint effort and MIT as project coordinator. The 2D-APT sys-
tem was ready for field evaluation at plants of participating companies in April 1958. Testing,
debugging, and refining the programming system took approximately three years. In 1961, the
Illinois Institute of Technology Research Institute (IITRI) was selected to become responsible
for long-range maintenance and upgrading of APT. In 1962, IITRI announced the completion
of APT-III, a commercial version of APT for three-dimensional part programming. In 1974,
APT was accepted as the U.S. standard for programming NC metal cutting machine tools. In
1978, it was accepted by the ISO as the international standard.
Numerical control technology was in its second decade before computers were
employed to actually control machine tool motions. In the mid-1960s, the concept of direct
numerical control (DNC) was developed, in which individual machine tools were controlled
by a mainframe computer located remotely from the machines. The computer bypassed the
punched tape reader, instead transmitting instructions to the machine control unit (MCU) in
real time, one block at a time. The first prototype system was demonstrated in 1966 [4]. Two
companies that pioneered the development of DNC were General Electric Company and
Cincinnati Milling Machine Company (which changed its name to Cincinnati Milacron in
1970). Several DNC systems were demonstrated at the National Machine Tool Show in 1970.
Mainframe computers represented the state of the technology in the mid-1960s. There
were no personal computers or microcomputers at that time. But the trend in computer tech-
nology was toward the use of integrated circuits of increasing levels of integration, which
resulted in dramatic increases in computational performance at the same time that the size
and cost of the computer were reduced. At the beginning of the 1970s, the economics were
right for using a dedicated computer as the MCU. This application came to be known as
computer numerical control (CNC). At first, minicomputers were used as the controllers;
subsequently, microcomputers were used as the performance/size trend continued.
7.1 Fundamentals of NC Technology
This section identifies the basic components of an NC system. Then, NC coordinate sys-
tems in common use and types of motion controls are described.
7.1.1 Basic Components of an NC System
An NC system consists of three basic components: (1) a part program of instructions, (2)
a machine control unit, and (3) processing equipment. The general relationship among
the three components is illustrated in Figure 7.1.
The part program is the set of detailed step-by-step commands that direct the
actions of the processing equipment. In machine tool applications, the person who pre-
pares the program is called a part programmer. In these applications, the individual
commands refer to positions of a cutting tool relative to the worktable on which the
work part is fixtured. Additional instructions are usually included, such as spindle
speed, feed rate, cutting tool selection, and other functions. The program is coded on
a suitable medium for submission to the machine control unit. For many years, the
common medium was 1-in wide punched tape, using a standard format that could be in-
terpreted by the machine control unit. Today, punched tape has largely been replaced
by newer storage technologies in modern machine shops. These technologies include
magnetic tape, diskettes, and electronic transfer of part programs from a computer.