Numerical control allows machines to produce parts with high accuracy, and good surface finishes, with less human intervention, and lower processing time.
But operating and maintaining a numerical control system requires skilled operators who have experience programming the NC machine tools.
Numerical control (NC), commonly known as computer numerical control (CNC), is a technology that allows the automation of machine tools. It uses programmable machine controller units and software to efficiently produce parts with high precision and speed.
This article discusses numerical control in detail by looking at its basic working principles, components, applications, and more.
MellowPine is reader-supported. When you buy through links on my site, I may earn an affiliate commission at no extra cost to you.
What is Numerical Control?
In manufacturing, the designs developed using CAD (Computer-Aided Design) operation need to be converted to a format that machines can understand.
Here's where Numerical Control (NC) comes in. NC is the bridge that connects CAD and manufacturing.
In NC, the geometrical data from the design is extracted and converted to an alphanumerical code (it also uses symbols).
Generally, a CAM (Computer-Aided Manufacturing) software is used to analyze the design and generate such alphanumerical codes.
Sometimes manual coding is also employed to optimize the manufacturing process.
The code below is an example of a program used for controlling CNC machines.
N15 G50 G10 N20 M06 T4 N25 M03 S1450 N30 G00 X1 Y0 N35 Z0.1 N45 G01 Z-0.125 F10 N50 X3 Y2 F15 N55 G02 Z1 N60 X0 Y1 N65 M03 N70 M30
An NC code contains sequential commands of cutter location data (CLData). Programmable machines use this data to adjust their cutting tool and workbed.
Numerical control is the automation of a machine's mechanical movement to effectively remove (in subtractive manufacturing) or add (in additive manufacturing) material to make a product.
Components of a Numerical Control System
The components in a basic numerical control system are the instruction program, the machine control unit, and the machine.
The instruction program or part program has all the necessary commands needed to control the cutting tool in the machine.
For example, it has commands to control the spindle speed, transmission rate, power, etc.
The machine control unit reads the instruction program and sends necessary electrical signals to the machine.
Upon receiving the signals, the programable machine performs mechanical movements with the help of actuation devices.
Numerical Control Coordinate System
In multiaxis machining, the NC program code uses the Cartesian coordinate system to command the machine's motion on different axes.
Generally, the axis systems used for flat and rotational workpieces are different.
Depending on the machine's configuration, it can be two axes, three axes, or more.
|Total Axes||No. of Linear Axes||No. of Rotational Axes||Machine Examples|
|2||2 (X, Y)||0||Lathe, Punch Press, Laser, Plasma|
|3||3 (X, Y, Z)||0||Routers, Mills, Drills|
|4||3 (X, Y, Z)||1 (A)||Lathe with milling attachments|
|5||3 (X, Y, Z)||2 (A, B)||Industrial Mills|
Axes and machine examples
Considering the axes of a machine is critical in NC programming as it defines the position of the tool head relative to the workpiece.
Computer Numerical Control
NC and CNC, What's the Difference?
Before introducing Microcontroller Units (MCUs) in programmable manufacturing machines, they used hardwired control units that work using combinational logic.
On such programmable machines, punch tapes were used to feed the program data required for its operation. These machines were called numerical control machines (NC machines).
Later, when industries started using microcontrollers (micro-computer) on manufacturing machines, numerical control came to be known as Computer Numerical Control (CNC) and such machines as CNC machines.
On these computer-controlled machines, binary cutter location data are fed using part programs like G-codes, NC codes, and M-codes.
After NC and CNC, DNC was introduced, which works similar to a CNC machine, but instead of having an individual computer for each machine, DNC provides the ability to control many machines by one computer system.
Components of a CNC
The machine control unit of a CNC machine consists of a CPU, memory, input/output interface, basic controls, and sequence controls.
Central Processing Unit (CPU) is the brain of a machine control unit, and all process execution happens here.
It will have a control section, Arithmetic Logic Unit (ALU), and immediate access memory.
The immediate access memory refers to the primary storage i.e. ROM (Read-only Memory) and RAM (Random Access Memory).
Sometimes machines can also have secondary storage devices to store files. These files can be later sent to the main memory for processing.
With this additional memory, storage of multiple part programs is possible in CNC unlike in NC.
The input/output (I/O) interface on the machine control unit connects and communicates with different external and internal components of a CNC machine system.
For example, an external computer, stepper motor, spindle, water pump, air pump, etc.
Controls can be software-based or hardware-based. It includes controls like program run, stop, jog, spindle speed, power, coolant on/off, exhaust, etc.
Open Loop and Closed Loop Control System
The drive mechanisms used on a numerical control system can have an open or closed-loop configuration.
Open-loop systems are used in CNC machines that perform basic operations which require a simple actuating mechanism.
Closed-loop systems are used on machines that perform complex tasks. It uses an analog or digital feedback mechanism to detect and correct errors (missteps or stalls).
With the feedback data fed to the controller, a closed-loop numerical control system allow the machine to work with high accuracy and repeatability.
Direct Numerical Control
Direct/Distributed Numerical Control (DNC) is the networking and controlling of multiple CNC machines using a mainframe computer.
DNC eliminates the requirement of spacious memories built-in on CNC machines as the programs can be sent from a unified control center.
The program files used for machining complex parts are memory intensive, and providing each machine with separate inputs won't be an efficient option. In such a case, DNC is very helpful.
Also, in a DNC network, machine feedback is processed almost in real-time. This helps effectively monitor the machines and detect errors.
Switching networks and Local Area Networks (LAN) are the two prominent DNC networking configurations.
In a switching network, data switching boxes are used as interlinks between the CNC machines and the master computer.
In LAN, the mainframe DNC computer is linked to multiple branch computers that are connected to different CNC machines.
Wireless DNC is becoming more prominent than hard-wired versions as it eliminates complex wirings and related networking issues.
Input Data for a CNC Machine
A set of information is fed to CNC machines for their operation through part programs and manual inputs.
It includes preparatory data, coordinates, tool data, machining parameters, attachment controls, and other miscellaneous controls.
|Information Type||Information Fed|
|Preparatory data||Work units, Zero point, Target point, workpiece probing, etc.|
|Coordinates||X, Y, Z, RX, RY, RZ|
|Tool data||tool diameter, length, type|
|Machining parameters||Speed, feed, power|
|Attachment controls||On/off command for coolant, air assist, etc.|
|Miscellaneous controls||Turning on and off of spindle, rotation direction, etc.|
Information fed to CNC machines
Applications of Numerical Control
Numerical control is used mainly in machine tool control for manufacturing applications.
It is used to operate CNC machines like lathes, vertical machining centers (VMCs), mills, automatic tool changers, routers, drills, grinders, CNC plasma cutters, electric discharge machines (EDMs), water-jet cutters, laser cutters, 3D printers, coordinate measuring machine, etc.
Some of the non-machine tool applications of numerical control are home automation, robotics, and other computer-aided engineering technologies.
Frequently Asked Questions
What software is used to generate program codes for CNC?
What is D in CNC programming?
D in CNC programming is a tool address character used to feed the tool diameter.
What is ATC in CNC?
ATC in CNC is short for Automatic Tool Changer. ATCs are automated and are used to swap the cutting tools used in CNC machines effectively. It is used when you part you are making requires multiple tool changes to obtain the final product. It greatly boosts the productivity of a CNC.