Introduction to Computer Numerical Control


Introduction to Computer Numerical Control


The first numerical controlled machine was developed in 1952. Instead of a sheet metal card or template, punched tape was used containing binary-coded data. For the first time a machine worked according to rules which had been condensed into a control programme. 

Introduction to Computer Numerical ControlThe computer numerical control (CNC) machine has a built-in computer, which is used to store and send instructions to different parts of the machine in the form of code. The machine responds to this coded information in a precise and ordered manner to carry out various machining functions.
1.0 Numerical Control (NC) and Computer Numerical Control (CNC)

1.1 Numerical Control (NC)

The first numerical controlled machine was developed in 1952. Instead of a sheet metal card or template, punched tape was used containing binary-coded data. For the first time a machine worked according to rules which had been condensed into a control programme. Machine movements were no longer activated by hand, but directly driven by a control programme. 

A numerical control program contains all the necessary information for manufacturing a workpiece. This information is encoded and written in tabular form according to international established guidelines. The resulting table is the actual NC program.

The “instructions” are coded in numbers and letters. Letters and numbers are necessary to differentiate between motion information (positioning, for example, the traverse path for changing a tool), geometric information (e.g. circular motion, straight line motion), and technological information (e.g. punching, nibbling).

1.2 Computer Numerical Control (CNC)

The computer numerical control (CNC) machine has a built-in computer, which is used to store and send instructions to different parts of the machine in the form of code. The machine responds to this coded information in a precise and ordered manner to carry out various machining functions. Instructions are supplied to the machine as a series of blocks of information. A block of information is a group of commands sufficient to enable the machine to carry out one individual machining operation e.g. move the cutter form position 1 to position 2 at a specified feed rate.



1.3 Machine Axis for CNC Machines

The most basic function of any CNC machine is automatic, precise, and consistent motion control. Rather than applying completely mechanical devices to cause motion as is required on most conventional machine tools, CNC machines allow motion control in a revolutionary manner. All forms of CNC equipment have two or more directions of motion, called axes. These axes can be precisely and automatically positioned along their lengths of travel. The two most common axis types are linear (driven along a straight path) and rotary (driven along a circular path).

The most common axis used in CNC machines are the X, Y and Z axis. However CNC machines are more flexible if they have a fourth axis, usually a rotary axis or even a fifth axis which offers even higher flexibility again. True complex and flexible five-axis CNC machines are usually found in the aircraft industry, where a multi-axis, simultaneous cutting motion is necessary to machine complex shapes and reach cavities and various angles. CNC machines can be constructed with special configurations to manufacture any conceivable part or product.


2.0 Terminology Used in Computer Numerical Control

2.1 Programming

The programming language that CNC uses is called G-Code. These codes actually position the parts and do the work. To be able to have a machine work properly, you have to input the correct variables such as axes and reference points.

With both NC and CNC machines, coded information is programmed into the machine controller. With CNC machines computer software is used to create a program. Programs can then be downloaded or uploaded directly between a computer and the CNC machine controller. With NC machines you need to manually enter the coded information into the machine controller.

2.2 Program Zero

The program zero point establishes the point of reference for motion commands in a CNC program. This allows the programmer to specify movements from a common location. If program zero is chosen wisely, usually coordinates needed for the program can be taken directly from the print.

2.3 Motion Types

A Computer Numerical Controlled (CNC) machine may have more than one motion type that it uses, but there are three most common motion types that are easy to remember. These are the Rapid Motion, the Straight Line Motion, and the Circular Motion.

All of these motion types may seem different but they share two things in common, which would be that they are all modal and the endpoint of each motion is specified in motion command. By being modal it means that the motion type would be in effect until changed otherwise. There are 3 main motion types:
(1) Rapid Motion Type

Rapid motion type is also called Positioning. The way this motion type is used is through utilizing the fastest rate possible of the command motion of the machine. Example uses of rapid motion are moving to clear obstructions, placing cutting tools to and from the desired position, and any program that provides non-cutting in their schemes.

The command that is usually programmed to a CNC machine is G00 because in this command, the end point for the rapid motion would be specified.

The CNC machine, with most controls given, will be able to move as fast as possible in all commanded axes. In the case of rapid motion, one axis may be able to reach its end point before other axes. Straight line movement will not occur with this type of rapid command function and the programmer of the machine must take into account that there are no obstructions to avoid. Straight line motion will happen even during rapid motion commands when done with other controls.
(2) Straight Line Motion

This type of motion would allow the programmer of the machine to command perfectly straight line movements within the machine. Unlike the rapid motion type, the straight line motion would allow the programmer to vary the rate of the motion or feed rate to be used during the movement. Examples of using straight line motion would be turning a straight diameter, taper, milling straight surfaces, and drilling. 

The common word to specify a straight line motion into a machine would be G01, for within this command the programmer will include the preferred end point within each of the axes.
(3) Circular Motion

This motion type would cause the machine to move in the direction of a circular path and is used to generate the radii in machining. When talking about points on circular motion feed rate, it is equal to that of straight line motion.

Other than that of straight line motion and rapid motion, there are two G codes that are commonly used when programming a circular motion into a machine. These are G02 and G03. G02 is used when the programmer desires a clockwise motion into the machine while G03 is used to make an anti-clockwise motion. To know which of the commands to use, the programmer must view the movement with the same perspective as to what the motion of the machine will be, may it be clockwise or anti-clockwise.

Another requirement that would be programmed into a machine that would be the radius of the arc that is to be generated. With brand new technological advances in CNC, an “R” word is now used to specify the radius.

2.4 Compensation Types.

All types of CNC machine tools require some form/s of compensation. Though applied for different reasons on different machine types, all forms of compensation allow the CNC user to allow for unpredictable conditions related to tooling as the program is developed. Here are some compensations found on CNC machines:

· Tool length compensation.

· Cutter radius compensation.

· Dimensional tool (wear) offsets.

· Tool nose radius compensation.


2.5 Offset Adjustments

All forms of compensation work with offsets. Offsets in a CNC control are storage locations into which numerical values can be placed. The numerical value of an offset has no meaning until it is referenced by a CNC program.

Offsets can be used for several purposes depending on the style of machine tool and type of compensation being used. Here are some of the more common applications for offsets:

· To allow sizing on turning centres

· To assign program zero

· To specify the radius of the cutting tool

· To specify each tool’s length

2.6 Program Verification

Syntax Mistakes

These are "silly" mistakes on the programmer's part that cause a program to be unacceptable to the control. For example, maybe the programmer meant to type G01," but instead typed "G10." These mistakes are usually very easy to find, since the control will go into alarm state as soon as the command is read.
Motion Mistakes

This kind of mistake is usually harder to find and correct. It could be caused by transposing numbers or letter addresses, but is usually the result of an incorrect calculation for coordinates to be used in the program. In some cases, the program will cause motion that appears to be correct, but does not machine the workpiece correctly.
Setup Mistakes

Even a perfectly prepared program will behave poorly if setup mistakes are made. For example, the measurements of the program zero position and tool lengths must be correctly made and entered. Even something as basic as loading the tools into the proper stations should not be taken for granted.
Cutting Condition Mistakes

Though the program's motions may be correct, the operator must be on guard for cutting condition problems. Feeds and speeds must be properly applied. While machining the first workpiece with any program, the operator must be very cautious, watching for possible machining problems.




Prior to letting a program cause motion, it is wise to let the control check the program for syntax mistakes. With Machine Lock and Dry Run turned on, the operator can rest assured that the axes of the machine will not move. When the program is executed, the control will scan the program for basic mistakes. If the control determines a problem, it will go into alarm state. While there could still be serious problems if the control completes the program, the operator can rest assured that at least the program is acceptable to the control. This program verification is vitally important to ensure that damage cannot be caused to the machine.


3.0 Advantages of Computer Numerical Control

3.1 Advantages of CNC Machining: High Accuracy and Repeatability, Production Times, Safety

Once the program has been written and proved, parts can be consistently machined to a high degree of accuracy and consistency. Production time can also be reduced due the fact that the tool can be feed at a rapid feed rate to the work. Also complex form tools are not required as the CNC machine can generate the required profile. Safety has also been improved as most CNC machines have built in safety features such as fixed guards, light guards and pressure mats to protect the operator.

3.2 Elimination of Special Jigs and Fixtures

Production time can also be reduced and costs reduced due the fact that writing a part program is quicker and cheaper than manufacturing jigs and fixtures.

3.3 Reduction of Machine Set Up Times

Setup times can be reduced when compared to the setup times on conventional machines due to the fact that equipment such as, the rotary table, jigs, fixtures, form tools etc., do not need to setup.

3.4 Flexibility in Changes of Component Design

When the program is written to the drawing dimensions, a trial part is machined to prove the program. The machined part is rarely correct on the first run, therefore modifications will need to be made to the program to bring some features within the required tolerance band. This is easily done by calling up the program, which will be displayed on the screen. The operator then scrolls down to the line where the value needs to be changed. When the change is made the program can be run again. Also future design changes can be made in the same way.

3.5 Reduction of Operation Error

Provided that the program is correct and the cutting tools are setup properly no errors will occur in the work. As explained above, the program is normally proved in advance of production. Operator fatigue, boredom or inattention will not affect the quality or the duration of machine as can occur when machining on a conventional machine.

3.6 Complex One-Off Components and Small Batch Quantities

CNC machines are ideal for one-off components and small batch quantities. The fast change over times that can be achieved by the CNC machine means that small batches can be machined economically. The program needs to be prepared on a separate computer so that the CNC machine can remain in production. The program can be stored on the CNC machine and called up when required again in the future.

3.7 Guarding Arrangements for CNC Machines

Safety has also been improved when compared to conventional machines, as most CNC machines have safety features such as guards. The machine is only accessible through the sliding doors that are closed prior to the machine starting up. Safety switches are placed behind the sliding doors will not allow the machine program to run until the doors are closed. Also, if the doors are opened the machine will switch off.

Summary

The computer numerical control (CNC) machine has a built-in computer, which is used to store and send instructions to different parts of the machine in the form of code. The machine responds to this coded information in a precise and ordered manner to carry out various machining functions. Instructions are supplied to the machine as a series of blocks of information. A block of information is a group of commands sufficient to enable the machine to carry out one individual machining operation e.g. move the cutter form position 1 to position 2 at a specified feed rate. 

The conventional machine is designed to have an operator standing directly in front controlling the machine. For the CNC machine this is no longer required as the machine is operating under program control. CNC machines have more rigid construction when compared to the conventional machine. The slide ways, guide and spindles of the CNC machine all look over proportioned when compared to the conventional machine. The structure of the CNC machine is therefore designed to cope with the tensional forces and heavy duty cutting imposed on these machines. 

Once the program has been written and proved, parts can be consistently machined to a high degree of accuracy and consistency. Production time can also be reduced due the fact that the tool can be feed at a rapid feed rate to the work. Also complex form tools are not required as the CNC machine can generate the required profile. Safety has also been improved as most CNC machines have safety features such as guards.