Reading Materials for
IC Training Modules
Computer
Numerical
Control
(CNC)
IC PROFESSIONAL TRAINING SERIES
Last updated at AUGUST 2009
Copyright reserved by INDUSTRIAL CENTRE, THE HONG KONG POLYTECHNIC UNIVERSITY
Computer Numerical Control (CNC)
Page 1
IC Professional Training
Objectives:
9 To understand the working principle and applications of CNC machines.
9 To be able to prepare CNC part programmes for machining 2-D
workpieces.
9 To understand the structure and flow of a CAM system.
Content:
Chapter 1 Numerical Control Fundamentals
Chapter 2 CNC Part Programming
Chapter 3 Computer Aided Manufacturing
Introduction
Computer Numerical Control (CNC) is a specialized and versatile form of Soft
Automation and its applications cover many kinds, although it was initially
developed to control the motion and operation of machine tools.
Computer Numerical Control may be considered to be a means of operating a
machine through the use of discrete numerical values fed into the machine, where
the required 'input' technical information is stored on a kind of input media such
as floppy disk, hard disk, CD ROM, DVD, USB flash drive, or RAM card etc. The
machine follows a predetermined sequence of machining operations at the
predetermined speeds necessary to produce a workpiece of the right shape and
size and thus according to completely predictable results. A different product can
be produced through reprogramming and a low-quantity production run of
different products is justified.
C
Co
om
mp
pu
ut
te
er
r N
Nu
um
me
er
ri
ic
ca
al
l
C
Co
on
nt
tr
ro
ol
l (
(C
CN
NC
C)
)
Computer Numerical Control (CNC)
Page 2
IC Professional Training
Fig.1-1 CNC Machine Centre (Courtesy of Agie Charmilles)
The definition of CNC given by Electronic Industry Association (EIA) is as follows:
A system in which actions are controlled by the direct insertion of numerical
data at some point. The system must automatically interpret at least some
portion of this data.
In a simple word, a CNC system receives numerical data, interpret the data and
then control the action accordingly.
Chapter 1. Computer Numerical Control Fundamentals
Objectives:
9 To understand the working principle of CNC machines.
9 To understand the characteristics of the driving systems.
9 To understand the characteristics of the feedback devices.
9 To understand the applications of CNC machines.
1.1 Control Systems
1.1.1 Open Loop Systems
Open loop systems have no access to the real time data about the performance of
the system and therefore no immediate corrective action can be taken in case of
system disturbance. This system is normally applied only to the case where the
output is almost constant and predictable. Therefore, an open loop system is
unlikely to be used to control machine tools since the cutting force and loading of
a machine tool is never a constant. The only exception is the wirecut machine for
which some machine tool builders still prefer to use an open loop system because
there is virtually no cutting force in wirecut machining.
Computer Numerical Control (CNC)
Page 3
IC Professional Training
Fig.1-2(a) Block Diagram of an Open Loop System
1.1.2 Close Loop Systems
In a close loop system, feed back devices closely monitor the output and any
disturbance will be corrected in the first instance. Therefore high system accuracy
is achievable. This system is more powerful than the open loop system and can be
applied to the case where the output is subjected to frequent change. Nowadays,
almost all CNC machines use this control system.
Fig.1-2(b) Block Diagram of a Close Loop System
1.2 Elements of a CNC System
A CNC system consists of the following 6 major elements:
a. Input Device
b. Machine Control Unit
c. Machine Tool
d. Driving System
e. Feedback Devices
f. Display Unit
Computer Numerical Control (CNC)
Page 4
IC Professional Training
Fig.1-3 Working Principles of CNC Machines
1.2.1 Input Devices
a. Floppy Disk Drive
Floppy disk is a small magnetic storage device for CNC data input. It has been the
most common storage media up to the 1970s, in terms of data transfer speed,
reliability, storage size, data handling and the ability to read and write.
Furthermore, the data within a floppy could be easily edited at any point as long
as you have the proper program to read it. However, this method has proven to be
quite problematic in the long run as floppies have a tendency to degrade
alarmingly fast and are sensitive to large magnetic fields and as well as the dust
and scratches that usually existed on the shop floor.
Fig.1-4 Floppy Disk Drive on a CNC machine
b. USB Flash Drive
A USB flash drive is a removable and rewritable portable hard drive with compact
size and bigger storage size than a floppy disk. Data stored inside the flash drive
Computer Numerical Control (CNC)
Page 5
IC Professional Training
are impervious to dust and scratches that enable flash drives to transfer data from
place to place. In recent years, all computers support USB flash drives to read and
write data that make it become more and more popular in CNC machine control
unit.
Fig.1-5 USB Flash Drive on a CNC machine
c. Serial communication
The data transfer between a computer and a CNC machine tool is often
accomplished through a serial communication port. International standards for
serial communications are established so that information can be exchanged in an
orderly way. The most common interface between computers and CNC machine
tools is referred to the EIA Standard RS-232. Most of the personal computers and
CNC machine tools have built in RS232 port and a standard RS-232 cable is used
to connect a CNC machine to a computer which enables the data transfer in
reliable way. Part programs can be downloaded into the memory of a machine
tool or uploaded to the computer for temporary storage by running a
communication program on the computer and setting up the machine control to
interact with the communication software.
Fig.1-6 Serial communication port on a CNC machine
Direct Numerical Control is referred to a system connecting a set of numerically
controlled machines to a common memory for part program or machine program
storage with provision for on-demand distribution of data to the machines. (ISO
2806:1980) The NC part program is downloaded a block or a section at a time into
Computer Numerical Control (CNC)
Page 6
IC Professional Training
the controller. Once the downloaded section is executed, the section will be
discarded to leave room for other sections. This method is commonly used for
machine tools that do not have enough memory or storage buffer for large NC
part programs.
Distributed Numerical Control is a hierarchical system for distributing data
between a production management computer and NC systems. (ISO 2806:1994)
The host computer is linked with a number of CNC machines or computers
connecting to the CNC machines for downloading part programs. The
communication program in the host computer can utilize two-way data transfer
features for production data communication including: production schedule, parts
produced and machine utilization etc.
Fig.1-7 Serial communication in a Distributed Numerical Control system
d. Ethernet communication
Due to the advancement of the computer technology and the drastic reduction of
the cost of the computer, it is becoming more practical and economic to transfer
part programmes between computers and CNC machines via an Ethernet
communication cable. This media provides a more efficient and reliable means in
part programme transmission and storage. Most companies now built a Local Area
Network (LAN) as their infrastructure. More and more CNC machine tools provide
an option of the Ethernet Card for direct communication within the LAN.
Computer Numerical Control (CNC)
Page 7
IC Professional Training
Fig.1-8 Ethernet port on a CNC machine
Fig.1-9 Ethernet network in a Distributed Numerical Control system
e. Conversational Programming
Part programmes can be input to the controller via the keyboard. Built-in
intelligent software inside the controller enables the operator to enter the required
data step by step. This is a very efficient way for preparing programmes for
relatively simple workpieces involving up to 2½ axis machining.
Fig.1-10 Conversational Programming in a CNC controller
Computer Numerical Control (CNC)
Page 8
IC Professional Training
1.2.2 Machine Control Unit (MCU)
The machine control unit is the heart of the CNC system. There are two sub-units
in the machine control unit: the Data Processing Unit (DPU) and the Control Loop
Unit (CLU).
a. Data Processing Unit
On receiving a part programme, the DPU firstly interprets and encodes the part
programme into internal machine codes. The interpolator of the DPU then
calculate the intermediate positions of the motion in terms of BLU (basic length
unit) which is the smallest unit length that can be handled by the controller. The
calculated data are passed to CLU for further action.
b. Control Loop Unit
The data from the DPU are converted into electrical signals in the CLU to control
the driving system to perform the required motions. Other functions such as
machine spindle ON/OFF, coolant ON/OFF, tool clamp ON/OFF are also controlled
by this unit according to the internal machine codes.
1.2.3 Machine Tool
This can be any type of machine tool or equipment. In order to obtain high
accuracy and repeatability, the design and make of the machine slide and the
driving leadscrew of a CNC machine is of vital importance. The slides are usually
machined to high accuracy and coated with anti-friction material such as PTFE and
Turcite in order to reduce the stick and slip phenomenon. Large diameter
recirculating ball screws are employed to eliminate the backlash and lost motion.
Other design features such as rigid and heavy machine structure; short machine
table overhang, quick change tooling system, etc also contribute to the high
accuracy and high repeatability of CNC machines.
Fig.1-11(a) Ball Screw in a CNC machine Fig.1-11(b) Ball screw structure
Computer Numerical Control (CNC)
Page 9
IC Professional Training
1.2.4 Driving System
The driving system is an important component of a CNC machine as the accuracy
and repeatability depend very much on the characteristics and performance of the
driving system. The requirement is that the driving system has to response
accurately according to the programmed instructions. This system usually uses
electric motors although hydraulic motors are sometimes used for large machine
tools. The motor is coupled either directly or through a gear box to the machine
leadscrew to moves the machine slide or the spindle. Three types of electrical
motors are commonly used.
a. DC Servo Motor
This is the most common type of feed motors used in CNC machines. The principle
of operation is based on the rotation of an armature winding in a permanently
energised magnetic field. The armature winding is connected to a commutator,
which is a cylinder of insulated copper segments mounted on the shaft. DC current
is passed to the commutator through carbon brushes, which are connected to the
machine terminals. The change of the motor speed is by varying the armature
voltage and the control of motor torque is achieved by controlling the motor's
armature current. In order to achieve the necessary dynamic behaviour it is
operated in a closed loop system equipped with sensors to obtain the velocity and
position feedback signals.
Fig.1-12 DC Servo Motor (Courtesy of Flexible Automation)
b. AC Servo Motor
In an AC servomotor, the rotor is a permanent magnet while the stator is
equipped with 3-phase windings. The speed of the rotor is equal to the rotational
frequency of the magnetic field of the stator, which is regulated by the frequency
converter.
AC motors are gradually replacing DC servomotors. The main reason is that there
is no commutator or brushes in AC servomotor so that maintenance is virtually not
required. Furthermore, AC servos have a smaller power-to-weight ratio and faster
response.
Computer Numerical Control (CNC)
Page 10
IC Professional Training
Fig.1-13 AC Servo Motor (Courtesy of Flexible Automation)
c. Stepping Motor
A stepping motor is a device that converts the electrical pulses into discrete
mechanical rotational motions of the motor shaft. This is the simplest device that
can be applied to CNC machines since it can convert digital data into actual
mechanical displacement. It is not necessary to have any analog-to-digital
converter nor feedback device for the control system. They are ideally suited to
open loop systems.
However, stepping motors are not commonly used in machine tools due to the
following drawbacks: slow speed, low torque, low resolution and easy to slip in
case of overload. Examples of stepping motor application are the magnetic head
of floppy-disc drive and hard disc drive of computer, daisy-wheel type printer, X-Y
tape control, and CNC EDM Wire-cut machine.
Fig.1-14 Stepping Motor (Courtesy Real-Time Microcomputer)
d. Linear Motor
A linear electric motor is an AC rotary motor laid out flat. The same principle used
to produce torque in rotary motors is used to produce force in linear motors.
Through the electromagnetic interaction between a coil assembly and a
permanent magnet assembly, the electrical energy is converted to linear
mechanical energy to generate a linear motion. As the motion of the motor is
linear instead of rotational, therefore it is called linear motor. Linear motors have
the advantages of high speeds, high precision and fast response. In the 1980s,
Computer Numerical Control (CNC)
Page 11
IC Professional Training
machine tool builders started using linear motors with the common motion
control servo drives in the machine tool design.
Fig.1-15 Linear Motor (Courtesy of Renishaw)
Among different designs of linear motors, permanent magnet brushless motors
demonstrate a high force density, high maximum speed, and stable force constant.
The lack of a brushed commutator assembly has the advantages of fewer
maintenance, higher reliability and better smoothness.
An iron core brushless linear motor is similar to a conventional brushless rotary
motor slit axially and then rolled out flat. The unrolled rotor is a stationary plate
consisting of magnets tiled on an iron back plate and the unrolled stator is a
moving coil assembly consisting of coils wound around a laminated steel core. Coil
windings are typically connected in conventional 3 phase arrangement and
commutation is often performed by Hall-effect sensors or sinusoidal. It has high
efficiency and good for continuous force.
An ironless linear motor consists of a stationary U shaped channel filled with
permanent magnets tiled along both interior walls. A moving coil assembly
traverses between two opposing rows of magnets. Commutation is done
electronically either by Hall-effect sensors or sinusoidal. The ironless linear motor
has the advantages of lower core mass, lower inductance and no cogging for
smooth motion as the ironless motors have no attractive force between the
frameless components.
Fig.1-16 Ironcore and Ironless Linear Motor (Courtesy of ETEL)
Computer Numerical Control (CNC)
Page 12
IC Professional Training
1.2.5 Feedback Device
In order to have a CNC machine operating accurately, the positional values and
speed of the axes need to be constantly updated. Two types of feed back devices
are normally used, positional feed back device and velocity feed back device.
a. Positional Feed Back Devices
There are two types of positional feed back devices: linear transducer for direct
positional measurement and rotary encoder for angular or indirect linear
measurement.
Linear Transducers - A linear transducer is a device mounted on the
machine table to measure the actual displacement of the slide in such a
way that backlash of screws; motors, etc would not cause any error in the
feed back data. This device is considered to be of the highest accuracy and
also more expensive in comparison with other measuring devices mounted
on screws or motors.
Fig.1-17 Linear Transducer (Courtesy of Heidenhain)
Rotary Encoders - A rotary encoder is a device mounted at the end of the
motor shaft or screw to measure the angular displacement. This device
cannot measure linear displacement directly so that error may occur due to
the backlash of screw and motor etc. Generally, this error can be
compensated for by the machine builder in the machine calibration
process.
Computer Numerical Control (CNC)
Page 13
IC Professional Training
Fig.1-18 Incremental and Absolute Rotary Encoder
b. Velocity Feedback Device
The actual speed of the motor can be measured in terms of voltage generated
from a tachometer mounted at the end of the motor shaft. DC tachometer is
essentially a small generator that produces an output voltage proportional to the
speed. The voltage generated is compared with the command voltage
corresponding to the desired speed. The difference of the voltages can is then
used to actuate the motor to eliminate the error.
Fig.1-19 Tachogenerator (Courtesy of Callan)
1.2.6 Display Unit
The Display Unit serves as an interactive device between the machine and the
operator. When the machine is running, the Display Unit displays the present
Computer Numerical Control (CNC)
Page 14
IC Professional Training
status such as the position of the machine slide, the spindle RPM, the feed rate,
the part programmes, etc.
In an advanced CNC machine, the Display Unit can show the graphics simulation
of the tool path so that part programmes can be verified before the actually
machining. Much other important information about the CNC system can also
displayed for maintenance and installation work such as machine parameters, logic
diagram of the programmer controller, error massages and diagnostic data.
Fig.1-20 Display Unit for CNC machines (Courtesy of Heidenhain)
1.3 Applications of CNC Machines
CNC machines are widely used in the metal cutting industry and are best used to
produce the following types of product:
• Parts with complicated contours
• Parts requiring close tolerance and/or good repeatability
• Parts requiring expensive jigs and fixtures if produced on
conventional machines
• Parts that may have several engineering changes, such as during
the development stage of a prototype
• In cases where human errors could be extremely costly
• Parts that are needed in a hurry
• Small batch lots or short production runs
Some common types of CNC machines and instruments used in industry are as
following:
• Drilling Machine
• Lathe / Turning Centre
• Milling / Machining Centre
• Turret Press and Punching Machine
• Wirecut Electro Discharge Machine (EDM)
• Grinding Machine
• Laser Cutting Machine
• Water Jet Cutting Machine
• Electro Discharge Machine
• Coordinate Measuring Machine
• Industrial Robot
Computer Numerical Control (CNC)
Page 15
IC Professional Training
Chapter 2. CNC Part Programming
Objectives:
9 To understand the Dimension Systems in CNC Part Programming.
9 To understand the structure of a CNC Part Programme.
9 To understand the G-codes and other functions of a CNC Part
Programme.
2.1 Axis of motion
In generally, all motions have 6 degrees of freedom. In other words, motion can
be resolved into 6 axes, namely, 3 linear axes (X, Y and Z axis) and 3 rotational
axes (A, B, and C axis).
Fig.2-1 Axis of Motion
2.2 Dimension Systems
2.2.1 Incremental System
This type of control always uses as a reference to the preceding point in a
sequence of points. The disadvantage of this system is that if an error occurs, it
will be accumulated.
Y
X
Z
Computer Numerical Control (CNC)
Page 16
IC Professional Training
Fig.2-2 Incremental System
2.2.2 Absolute System
In an absolute system all references are made to the origin of the co ordinate
system. All commands of motion are defined by the absolute coordinate
referred to the origin.
Fig.2-3 Absolute System
2.3 Definition of Programming
NC programming is where all the machining data are compiled and where the
data are translated into a language which can be understood by the control
system of the machine tool. The machining data is as follows:
a. Machining sequence classification of process, tool start up point, cutting
depth, tool path etc.
b. Cutting conditions spindle speed, feed rate, coolant, etc.
c. Selection of cutting tools.
Computer Numerical Control (CNC)
Page 17
IC Professional Training
2.4 Programme Structure
Program
start
Block
#1
Block
#2
Block
#30
Block
#31
End of
Programme
Sequence
Number
Word
#1
Word
#2
N002 G01 X12.0
Address Value
G 01
X 12.0
Fig.2-4 Structure of CNC Part Programme
A CNC programme consists of blocks, words and addresses.
a. Block
A command given to the control unit is called a block.
b. Word
A block is composed of one or more words. A word is composed of an
identification letter and a series of numerals, e.g. the command for a feed
rate of 200mm/min is F200.
c. Address
The identification letter at the beginning of each word is called address.
The meaning of the address is in accordance with EIA (Electronic
Industries Association) standard RS-274-D. The most common 'addresses'
are listed below:
Function Address
Sequence number N
Preparatory function G
Co ordinate word X, Y, Z
Parameters for Circular Interpolation I, J, K
Feed function F
Spindle function S
Tool function T
Miscellaneous function M
An example of a programme is as follows:
N20 G01 X20.5 F200 S1000 M03
N21 G02 X30.0 Y40.0 I20.5 J32.0
Computer Numerical Control (CNC)
Page 18
IC Professional Training
2.5 Explanation of Words
2.5.1 Sequence Number (N Address)
A sequence number is used to identify the block. It is always placed at the
beginning of the block and can be regarded as the name of the block. The
sequence numbers need not be consecutive. The execution sequence of the
programme is according to the actual sequence of the block and not the
sequence of the number. In fact some CNC systems do not require sequence
numbers.
2.5.2 Preparatory Function (G Address)
A preparatory function determines how the tool is to move to the programmed
target. The most common G addresses are listed below:
Code Function
G00 Point to point position at rapid feed
G01 Linear interpolation
G02 Circular interpolation, clockwise
G03 Circular interpolation, anti clockwise
G40 Cutter compensation cancel
G41 Cutter compensation, Left
G42 Cutter compensation, Right
G45 - G48 Other cutter compensation, if used
G70 - G79 Milling and turning cycle
G80 - G89 Drilling and tapping cycle
G90 Absolute dimensioning
G91 Incremental dimensioning
2.5.3 Co-ordinate Word (X/Y/Z Address)
A co-ordinate word specifies the target point of the tool movement (absolute
dimension system) or the distance to be moved (incremental dimension). The
word is composed of the address of the axis to be moved and the value and
direction of the movement.
Example: X100 Y-200
represents the movement to (100, 200). Whether the dimensions
are absolute or incremental will have to be defined previously
(using G90 or G91).
2.5.4 Parameter for Circular Interpolation (I/J/K Address)
These parameters specify the distance measured from the start point of the arc
to the centre. Numerals following I, J and K are the X, Y and Z components of the
distance respectively.
Computer Numerical Control (CNC)
Page 19
IC Professional Training
2.5.5 Spindle Function (S Address)
The spindle speed is commanded under an S address and is always in revolution
per minute. It can be calculated by the following formula:
(mm)
meter
Cutter Dia
1000
(m/min)
Speed
Cutting
Surface
=
Speed
Spindle
Ă—
Ă—
Ď€
The following table gives the surface cutting speeds for some common materials:
Example: S2000 represents a spindle speed of 2000rpm
2.5.6 Feed Function (F Address)
The feed is programmed under an F address except for rapid traverse. The unit
may be in mm per minute (in the case of milling machine) or in mm per
revolution (in the case of turning machine). The unit of the feedrate has to be
defined at the beginning of the programme. The feed rate can be calculated by
the following formula:
Feed Rate = Chip Load / tooth No of Tooth Spindle Speed
Ă— Ă—
The following table gives the chip load per tooth of milling cutters cutting some
common materials:
Milling Cutter Chip load per tooth (mm/rev)
Material Al alloy Brass Cast Iron Mild Steel
HSS 0.28 0.18 0.20 0.13
Sintered Carbide 0.25 0.15 0.25 0.25
Example: F200 represents a feed rate of 200mm/min
2.5.7 Tool Function (T Address)
The selection of tool is commanded under a T address.
Example: T02 represents tool number 2
Cutting tool Workpiece material
Material Al alloy Brass Cast Iron Mild Steel
HSS 120 75 18 30
Carbide 500 180 120 200
Computer Numerical Control (CNC)
Page 20
IC Professional Training
2.5.8 Miscellaneous Function (M Address)
The miscellaneous function is programmed to control the machine operation
other than for co ordinate movement. The most common M functions are as
follows:
Code Function
M00 Programme stop
M03 Spindle rotation clockwise
M04 Spindle rotation counterclockwise
M05 Spindle STOP
M06 Change of Tool
M08 Coolant ON
M09 Coolant OFF
M10 Clamp
M11 Unclamp
M30 Programme end and ready for another start
2.6 Steps for CNC Programming and Machining
The following is the procedures to be followed in CNC programming and
machining. The most important point is to verify the programme by test run it on
the machine before the actual machining in order to ensure that the programme
is free of mistakes.
a. Study the part drawing carefully.
b. Unless the drawing dimensions are CNC adapted, select a suitable
programme zero point on the work piece. The tool will be
adjusted to this zero point during the machine set up.
c. Determine the machining operations and their sequence.
d. Determine the method of work clamping (vice, rotary table,
fixtures etc).
e. Select cutting tools and determine spindle speeds and feeds.
f. Write programme (translate machining steps into programme
blocks). If many solutions are possible, try the simplest solution
first. It is usually longer, but better to proceed in this way.
g. Prepare tool chart or diagram, measure tool geometry (lengths,
radii) and note.
h. Clamp work piece and set up machine.
i. Enter compensation value if necessary.
j. Check and test programme. It is a good practice to dry run the
programme (i) without the workpiece, (ii) without the cutting
tools, or (iii) by raising the tool to a safe height.
If necessary, correct and edit programme and check again.
k. Start machining.
Computer Numerical Control (CNC)
Page 21
IC Professional Training
2.7 G-codes in Part Programming
2.7.1 Absolute and Incremental Dimensioning (G90/G91)
G90 and G91 are used to control the dimensioning system that will be used in
the data input. In G90 mode, the dimensions will be recognized as absolute while
in G91 will be incremental.
2.7.2 Rapid Positioning (G00)
This is to command the cutter to move from the existing point to the target
point at the fastest speed of the machine.
Programme Format
G00
X
Y
Z
Fig.2-5 Rapid Positioning
2.7.3 Linear Interpolation (G01)
This is to command the cutter to move from the existing point to the target
point along a straight line at the speed designated by the F address.
Programme Format
G01
X
Y
Z
F
X
Y
Z
Rapid
Traverse
Computer Numerical Control (CNC)
Page 22
IC Professional Training
Fig.2-6 Linear Interpolation
2.7.4 Circular Interpolation (G02/G03)
This is to command the cutter to move from the existing point to the target
point along a circular arc in clockwise direction (G02) or counterclockwise
direction (G03).
In this case, beside the target point, the radius or the centre of the arc is also
required. Most of the CNC systems nowadays still require the data of the arc
centre rather than the radius.
The parameters of the centre of the circular arc is designated by the I, J and K
addresses. I is the distance along the X axis, J along the Y, and K along the Z. This
parameter is defined as the vector (magnitude and direction) from the starting
point to the centre of the arc.
Programme Format
(Clockwise Direction)
G02
X
Y
I (XC - XS)
J (YC - YS)
Where
XC and YC is the coordinate of the centre, and
XS and YS is the coordinate of the start point of the arc.
X
Y
Z
At Designated
Speed
Computer Numerical Control (CNC)
Page 23
IC Professional Training
Fig.2-7 Circular Interpolation - Clockwise
Programme Format
(Counterclockwise Direction)
G03
X
Y
I
J
Fig.2-8 Circular Interpolation - Counterclockwise
2.7.5 Cutter Compensation (G40/G41/G42)
In CNC machining, if the cutter axis is moving along the programmed path, the
dimension of the workpiece obtained will be incorrect since the diameter of the
cutter has not be taken into account.
Modern CNC systems are capable of doing this type of calculation which is
known as cutter compensation. What the system requires are the programmed
path, the cutter diameter and the position of the cutter with reference to the
contour. Normally, the cutter diameter is not included in the programme. It has
to be input to the CNC system in the tool setting process.
(Xc, Yc)
Start point
(Xs, Ys)
End
X
Y I
J
(Xc, Yc)
Start point
(Xs, Ys)
End
point
X
Y I
J
Computer Numerical Control (CNC)
Page 24
IC Professional Training
Fig.2-9 Comparison of Tool Path with and without Cutter Compensation
If the cutter is on the left of the contour, G41 is used. If the cutter is on the right
of the contour, G42 will be used. G40 is to cancel the compensation calculation.
Cutter on the Right of the contour, use G42
Fig.2-10 Direction of Cutter Compensation
Final contour does not
Match with programme path
Final contour matches
with programme path
Cutter path offset from
the programme path
Programme
Cutter on the Left of the contour, use G41
Computer Numerical Control (CNC)
Page 25
IC Professional Training
Programme Example 1
Programme Explanation
N01 G90 Absolute Dimensioning
N02 G00 X-30 Y-30 Z100 Rapid move to (X-30, Y-30, Z100)
N03 T01 Using Tool Number 1
N04 G00 Z5 S1000 M03 Rapid move to Z5;
start spindle clockwise at 1000rpm
N05 G01 Z-10 F100 Feed to Z-10 at 100mm/min
N06 G41 G01 X0 Y15 F200 Call up compensation,
cutter on the left feed to
(X0, Y15) at 200mm/min
N07 G01 Y66.564 From N07 to N15 is the contour cutting
N08 G02 X16.111 Y86.183
I20 J0
N09 G02 X93.889 Y86.183
I38.889 J-196.183
N10 G02 X110 Y66.564
I-3.889 J-19.619
N11 G01 Y26.247
N12 G02 X98.882 Y11.758
I-15 J0
N13 G01 X55 Y0
N14 G01 X15
N15 G02 X0 Y15
I0 J15
Computer Numerical Control (CNC)
Page 26
IC Professional Training
N16 G40 X-30 Y-30 Cancel of compensation;
feed to (X-30, Y-30)
N17 G00 Z100 M30 Rapid move to Z100; programme end
Programming Example 2
Programme Explanation
N01 G28 U0.1 W0.1; Return to Machine Zero
N02 G00 U-60.0 W-40.0; Rapid move to Tool Changing position
N03 G50 X200.0 Z100.0;Assign the Programme Zero
N04 G97 S2000; Assign revolution speed as 2000 rpm
N05 M03; Switch on spindle,
turning in forward direction
N06 T0101; Select Tool Number T1 and call tool offset
N07 G00 X0 Z42.0; Rapid move to (X0, Z42.0)
N08 M08; Switch coolant on
N09 G69 F0.15; Assign feed to be 0.15 mm/rev
N10 G01 Z40.45; Start cutting the Contour along path A
N11 G03 X 9.217 Z31.13 R5.8;
N12 X8.955 Z29.465 R1.556;
N13 G02 X 9.6 Z29.1 R1.48;
N14 G01 X11.142;
PARTING OFF TOOL
LEFT-HAND
TURNING TOOL
RIGHT-HAND
TURNING TOOL
T3
T2
T1
PATH ?A?
PATH ?B ?
T1
T2
T3
MACHINE ZERO
40,30 FROM
TOOL CHANGING
POSITION
TOOL CHANGING POSITION
100,200 FROM PROGRAMME ZERO
Z
X
PROGRAMME
ZERO
Computer Numerical Control (CNC)
Page 27
IC Professional Training
N15 G03 X 11.142 Z25.4 R2.398;
N16 G01 X16.6 Z9.385;
N17 Z8.5;
N18 X20.6;
N19 Z-3.0; Finish Contouring
N20 G00 X200.0 Z100.0; Rapid move to Tool Changing Position
N21 T0100; Cancel tool offset
N22 T0202; Select Tool Number T2 and call tool offset
N23 G00 X21.0 Z9.385; Rapid move to (X21.0 Z3.985)
N24 G01 X16.6 F0.15; Start cutting contour along path B,
in 0.15mm/rev feed
N25 G03 X9.6 Z24.203 R34.2;
N26 G01 Z25.4;
N27 X14.0; Finish contouring
N28 G00 X200.0 Z100.0;Rapid move to Tool Changing position
N29 T0200; Cancel tool offset
N30 T0303; Select Tool Number T3 and call tool offset
N31 G00 X24.0 Z0; Rapid move to (X24.0 Z0)
N32 G01 X-0.5 F0.06; Part off in feedrate 0.06 mm/rev
N33 G00 X200.0 Z100.0;Rapid move to Tool Changing position
N34 T0300; Cancel tool offset;
N35 M30; Programme end
2.7.6 Other Functions
Modern CNC systems have some specially designed functions to simplify the
manual programming. However, since most of these functions are system
oriented, it is not intended to discuss them here in detail. The following
paragraphs give a brief description of commonly used functions in modern CNC
systems. The user should refer to the programming manuals of the machine for
the detail programming and operation.
Computer Numerical Control (CNC)
Page 28
IC Professional Training
a. Mirror Image
This is the function that converts the programmed path to its mirror
image, which is identical in dimensions but geometrically opposite about
one or two axes.
b. Programme Repetition and Looping
In actual machining, it is not always possible to machine to the final
dimension in one go. This function enables the looping of a portion of
the programme so that the portion can be executed repeatedly.
c. Pocketing Cycle
Pocketing is a common process in machining. This is to excavate the
material within a boundary normally in zigzag path and layer by layer. In
a pocketing cycle, the pattern of cutting is pre-determined. The user is
required to input parameters including the length, width and depth of the
pocket, tool path spacing, and layer depth. The CNC system will then
automatically work out the tool path.
d. Drilling, Boring, Reaming and Tapping Cycle
This is similar to pocketing cycle. In this function, the drilling pattern is
pre-determined by the CNC system. What the user has to do is to input
the required parameters such as the total depth of the hole, the down
feed depth, the relief height and the dwell time at the bottom of the hole.
Computer Numerical Control (CNC)
Page 29
IC Professional Training
Chapter 3. Computer Aided Manufacturing
Objectives:
9 To understand the flow of a Computer Aided Manufacturing System.
9 To understand the characteristics of the process Tool Motion Definition
in a CAM system.
9 To understand the characteristics of the process Data Transmission in a
CAM system.
3.1 Computer Aided Part Programming
In manual preparation of a CNC part programme, the programmer is required to
define the machine or the tool movement in numerical terms. If the geometry is
complicated 3D surfaces cannot be programmed manually.
Over the past years, lot of effort is devoted to automate the part programme
generation. With the development of the CAD/CAM system, interactive graphic
system is integrated with the CNC part programming. Graphic based software
using menu driven technique improves the user friendliness. The part
programmer can create the geometrical model in the CAM package or directly
extract the geometrical model from the CAD/CAM data base. Built in tool
motion commands can assist the part programmer to calculate the tool paths
automatically. The part programmer can verify the tool paths through the
graphic display using the animation function of the CAM system. It greatly
enhances the speed and accuracy in tool path generation.
3.2 Flow of A Computer Aided Manufacturing System
There are several computer aided manufacturing or CAD/CAM system available
in the market. Their basic features can be summarized below:
a. Geometric Modeling / CAD Interface
b. Tool Motion definition
c. Data Processing
d. Post Processing
e. Data Transmission
Computer Numerical Control (CNC)
Page 30
IC Professional Training
Fig.3-1 Flow Chart of a CAM System
3.2.1 Geometric Modeling / CAD Interface
The geometry of the workpiece can be defined by basic geometrical elements
such as points, lines, arcs, splines or surfaces. The two dimensional or three
dimensional geometrical elements are stored in the computer memory in forms
of a mathematical model. The mathematical model can be a wire frame model, a
surface model, or a solid model.
In addition, the geometric models can be imported from other CAD/CAM system
through standard CAD/CAM interface formats such as Initial Graphic Exchange
Specification (IGES). Initial Graphic Exchange Specification (IGES)
IGES is a graphic exchange standard jointly developed by industry and the
National Bureau of Standards with the support of the U.S. Air Force. It provides
transportability of 3-dimensional geometry data between different systems.
Throughout this system, geometrical elements from one system can be
translated into a neutral file standard and then from this standard into other
format.
3.2.2 Tool Motion Definition
After the geometric modeling, machining data such as the job setup, operation
setup and motion definition are input into the computer to produce the cutting
location file (CL file) for machining the workpiece.
Tool Motion definition
CAD/CAM /Copy
Machining
Parameter
CAM
3D Geometry
Construction
Tool Motion Definition
Sequence
Operation
Post
Processing
CNC Machine
NC
Program
Data
Processing
Geometry
Files
Scanning
/Copy Mill
CAD/CAM
Interface
Computer Numerical Control (CNC)
Page 31
IC Professional Training
a. Job setup
This is to input the machine datum, home position, and the cutter
diameters for the CL file.
b. Operation setup
This is to input into the system the operation parameters such as the feed
rate, tolerance, and approach / retract planes, spindle speed, coolant
ON/OFF, stock offset and the tool selection etc.
c. Motion definition
Built in machining commands are used to control the tool motion to
machine the products. This includes the hole processing, profile
machining, pocketing, surface machining, gouge checking, etc.
Fig.3-2 CAM System
3.2.3 Data Processing
The input data is translated into computer usable format. The computer will
process the desired part surface, the cutter offset surface and finally compute the
paths of the cutter which is known as the cutter location data file (CL file). The
tool paths can normally be animated graphically on the display for verification
purpose.
Furthermore, production planning data such as tool list, set up sheet, and
machining time is also calculated for users' reference.
3.2.4 Post Processing
Different CNC machines have different features and capabilities, the format of
the CNC program may also vary from each other. A process is required to
change the general instructions from the cutter location file to a specific format
for a particular machine tool and this process is called post processing.
Post processor is a computer software which converts the cutter location data
files into a format which the machine controller can interpret correctly.
Generally, there are two types of post processor.
Computer Numerical Control (CNC)
Page 32
IC Professional Training
a. Specific Post Processor
This is a tailor-made software which output the precise code for a specific
CNC machine. The user is not required to change anything in the
programme.
b. Generic (Universal) Post Processor
This is a set of generalized rules which needs the user to customize into
the format that satisfies the requirements of a specific CNC machine.
3.2.5 Data Transmission
After post processing, the CNC programme can be transmitted to the CNC
machines either through the off line or on line process.
a. Off Line Processes
Data carriers are used to transmit the CNC programme to the CNC
machines. It includes paper tapes, magnetic tape or magnetic disc.
b. On Line Processes
On line processes is commonly used in DNC operation and data is
transferred either serially or parallel using data cables.
Serial Transmission
Asynchronous serial transmission is most widely used in data
transmission and RS232C is the most popular asynchronous
standard. Built in RS232C serial port (9 pins or 25 pins) is available
in many computers. RS232C is inexpensive; easy to program and
with a baud rate up to 38400. However, its noise margin is limited
up to 15 meters.
Parallel Transmission
Parallel transmission is commonly used in data transmission
between computers and external devices such as sensors,
programmable logic controllers (PLC) or actuators. One common
standard is IEEE488. It contains a 24 lines bus with 8 for data, 8
for controls and 8 for ground. It can transfer data up to 1 Mbps
for a 20-meter cable.
Local Area Networks
To enable the CAD/CAM facilities to run smoothly, it is desirable
for the facilities to be linked together. In the local-area network,
terminals can access any computer on the network or devices on
the shop floor without a physical hardwire with speed up to 300
Computer Numerical Control (CNC)
Page 33
IC Professional Training
megabits per second. For instance, Ethernet runs at 100Mbps
which is much faster than an RS232 serial communication
(115.2kbps).
A LAN consists of both software and hardware design, which
governed by a set of rules called protocol. The design of software
enable controls of data handling and error recovery, while
hardware generates and receives signals, and media that carries
the signals. The protocol defines the logical, electrical, and
physical specifications of the network. The same protocol must
be followed in order to have an effective communication with
each other in the network.
Computer Numerical Control (CNC)
Page 34
IC Professional Training
References
• Computer Numerical Control of Machine Tools, G.E.Thyer,
Heinemann Professional Publishing 1988
• The CNC Workshop, Frank Nanfara, Tony Uccello, Derek
Murphy, Prentice-Hall 2002
• CNC Programming, Michael Mattson, Delmar Cengage
Learning, 2010
• The Machining of Metals, Armsrego E. J. A., R. H. Brown,
Englewood Cliffs, N.J., Prentice-Hall 1969
• Managing Computer Numerical Control Operations, Mike
Lynch, Society of Manufacturing Engineers 1995
• International Standard ISO2806 Industrial Automation System –
Numerical Control of Machines – Vocabulary, International
Organization for Standardization

More Related Content

PPT
4944324.ppt
PDF
Chapter 6 computer and controls systems within manufacturing
PDF
DOCX
Plc on cnc
PDF
IRJET- Analysis of File Conversion Program Used for CNC Machine
PPT
Lo #5 manufacturing technology (jan 2016)
DOCX
Approximation in 2D CNC Motion
4944324.ppt
Chapter 6 computer and controls systems within manufacturing
Plc on cnc
IRJET- Analysis of File Conversion Program Used for CNC Machine
Lo #5 manufacturing technology (jan 2016)
Approximation in 2D CNC Motion

Similar to CNC Basic For Manufacturing Processes Subject (20)

PPT
1 cam intro
DOCX
Training report
DOCX
NC MACHINE UPDATED TO CNC MACHINE
PPTX
CNC_lecture01.pptxsrc="https://image.slidesharecdn.com/emphysema1-23032507193...
PPTX
Cad seminar (2)
PPTX
DNC SYSTEMS
PPTX
DNC SYSTEMS
PPTX
PDF
Components of CNC Machine _ Parts of CNC Machine - Engineering Learn.pdf
PPT
Part programming for nc machines
PDF
Design and research of CNC platform based on CAN bus
PDF
Unit III Learning Material NUMERIC CONTROL
PDF
NC CNC DNC - A K Mansuri
PPTX
BHEL CNC MACHINE TRAINING REPORT
PDF
bhel6-171106130647.pdf
DOC
Km60 3 d printer new (wecompress)
PPTX
DISTRIBUTED NUMERICAL CONTROL
PPTX
CNC Plotter Machine
PDF
CAD/CAM/CIM (18ME72) Module -4 Part-A
PDF
DISTRIBUTED CONTROL SYSTEMS
1 cam intro
Training report
NC MACHINE UPDATED TO CNC MACHINE
CNC_lecture01.pptxsrc="https://image.slidesharecdn.com/emphysema1-23032507193...
Cad seminar (2)
DNC SYSTEMS
DNC SYSTEMS
Components of CNC Machine _ Parts of CNC Machine - Engineering Learn.pdf
Part programming for nc machines
Design and research of CNC platform based on CAN bus
Unit III Learning Material NUMERIC CONTROL
NC CNC DNC - A K Mansuri
BHEL CNC MACHINE TRAINING REPORT
bhel6-171106130647.pdf
Km60 3 d printer new (wecompress)
DISTRIBUTED NUMERICAL CONTROL
CNC Plotter Machine
CAD/CAM/CIM (18ME72) Module -4 Part-A
DISTRIBUTED CONTROL SYSTEMS
Ad

Recently uploaded (20)

PDF
UEFA_Embodied_Carbon_Emissions_Football_Infrastructure.pdf
PDF
Unit1 - AIML Chapter 1 concept and ethics
PDF
MLpara ingenieira CIVIL, meca Y AMBIENTAL
PDF
First part_B-Image Processing - 1 of 2).pdf
PPTX
Feature types and data preprocessing steps
PPTX
Management Information system : MIS-e-Business Systems.pptx
PPTX
Module 8- Technological and Communication Skills.pptx
PPTX
mechattonicsand iotwith sensor and actuator
 
PDF
Computer System Architecture 3rd Edition-M Morris Mano.pdf
PDF
Java Basics-Introduction and program control
PPTX
Measurement Uncertainty and Measurement System analysis
PPTX
ai_satellite_crop_management_20250815030350.pptx
PDF
Computer organization and architecuture Digital Notes....pdf
PPTX
AUTOMOTIVE ENGINE MANAGEMENT (MECHATRONICS).pptx
PDF
Abrasive, erosive and cavitation wear.pdf
PDF
August -2025_Top10 Read_Articles_ijait.pdf
 
PPTX
Petroleum Refining & Petrochemicals.pptx
PDF
Soil Improvement Techniques Note - Rabbi
PPTX
Sorting and Hashing in Data Structures with Algorithms, Techniques, Implement...
PDF
Influence of Green Infrastructure on Residents’ Endorsement of the New Ecolog...
UEFA_Embodied_Carbon_Emissions_Football_Infrastructure.pdf
Unit1 - AIML Chapter 1 concept and ethics
MLpara ingenieira CIVIL, meca Y AMBIENTAL
First part_B-Image Processing - 1 of 2).pdf
Feature types and data preprocessing steps
Management Information system : MIS-e-Business Systems.pptx
Module 8- Technological and Communication Skills.pptx
mechattonicsand iotwith sensor and actuator
 
Computer System Architecture 3rd Edition-M Morris Mano.pdf
Java Basics-Introduction and program control
Measurement Uncertainty and Measurement System analysis
ai_satellite_crop_management_20250815030350.pptx
Computer organization and architecuture Digital Notes....pdf
AUTOMOTIVE ENGINE MANAGEMENT (MECHATRONICS).pptx
Abrasive, erosive and cavitation wear.pdf
August -2025_Top10 Read_Articles_ijait.pdf
 
Petroleum Refining & Petrochemicals.pptx
Soil Improvement Techniques Note - Rabbi
Sorting and Hashing in Data Structures with Algorithms, Techniques, Implement...
Influence of Green Infrastructure on Residents’ Endorsement of the New Ecolog...
Ad

CNC Basic For Manufacturing Processes Subject

  • 1. Reading Materials for IC Training Modules Computer Numerical Control (CNC) IC PROFESSIONAL TRAINING SERIES Last updated at AUGUST 2009 Copyright reserved by INDUSTRIAL CENTRE, THE HONG KONG POLYTECHNIC UNIVERSITY
  • 2. Computer Numerical Control (CNC) Page 1 IC Professional Training Objectives: 9 To understand the working principle and applications of CNC machines. 9 To be able to prepare CNC part programmes for machining 2-D workpieces. 9 To understand the structure and flow of a CAM system. Content: Chapter 1 Numerical Control Fundamentals Chapter 2 CNC Part Programming Chapter 3 Computer Aided Manufacturing Introduction Computer Numerical Control (CNC) is a specialized and versatile form of Soft Automation and its applications cover many kinds, although it was initially developed to control the motion and operation of machine tools. Computer Numerical Control may be considered to be a means of operating a machine through the use of discrete numerical values fed into the machine, where the required 'input' technical information is stored on a kind of input media such as floppy disk, hard disk, CD ROM, DVD, USB flash drive, or RAM card etc. The machine follows a predetermined sequence of machining operations at the predetermined speeds necessary to produce a workpiece of the right shape and size and thus according to completely predictable results. A different product can be produced through reprogramming and a low-quantity production run of different products is justified. C Co om mp pu ut te er r N Nu um me er ri ic ca al l C Co on nt tr ro ol l ( (C CN NC C) )
  • 3. Computer Numerical Control (CNC) Page 2 IC Professional Training Fig.1-1 CNC Machine Centre (Courtesy of Agie Charmilles) The definition of CNC given by Electronic Industry Association (EIA) is as follows: A system in which actions are controlled by the direct insertion of numerical data at some point. The system must automatically interpret at least some portion of this data. In a simple word, a CNC system receives numerical data, interpret the data and then control the action accordingly. Chapter 1. Computer Numerical Control Fundamentals Objectives: 9 To understand the working principle of CNC machines. 9 To understand the characteristics of the driving systems. 9 To understand the characteristics of the feedback devices. 9 To understand the applications of CNC machines. 1.1 Control Systems 1.1.1 Open Loop Systems Open loop systems have no access to the real time data about the performance of the system and therefore no immediate corrective action can be taken in case of system disturbance. This system is normally applied only to the case where the output is almost constant and predictable. Therefore, an open loop system is unlikely to be used to control machine tools since the cutting force and loading of a machine tool is never a constant. The only exception is the wirecut machine for which some machine tool builders still prefer to use an open loop system because there is virtually no cutting force in wirecut machining.
  • 4. Computer Numerical Control (CNC) Page 3 IC Professional Training Fig.1-2(a) Block Diagram of an Open Loop System 1.1.2 Close Loop Systems In a close loop system, feed back devices closely monitor the output and any disturbance will be corrected in the first instance. Therefore high system accuracy is achievable. This system is more powerful than the open loop system and can be applied to the case where the output is subjected to frequent change. Nowadays, almost all CNC machines use this control system. Fig.1-2(b) Block Diagram of a Close Loop System 1.2 Elements of a CNC System A CNC system consists of the following 6 major elements: a. Input Device b. Machine Control Unit c. Machine Tool d. Driving System e. Feedback Devices f. Display Unit
  • 5. Computer Numerical Control (CNC) Page 4 IC Professional Training Fig.1-3 Working Principles of CNC Machines 1.2.1 Input Devices a. Floppy Disk Drive Floppy disk is a small magnetic storage device for CNC data input. It has been the most common storage media up to the 1970s, in terms of data transfer speed, reliability, storage size, data handling and the ability to read and write. Furthermore, the data within a floppy could be easily edited at any point as long as you have the proper program to read it. However, this method has proven to be quite problematic in the long run as floppies have a tendency to degrade alarmingly fast and are sensitive to large magnetic fields and as well as the dust and scratches that usually existed on the shop floor. Fig.1-4 Floppy Disk Drive on a CNC machine b. USB Flash Drive A USB flash drive is a removable and rewritable portable hard drive with compact size and bigger storage size than a floppy disk. Data stored inside the flash drive
  • 6. Computer Numerical Control (CNC) Page 5 IC Professional Training are impervious to dust and scratches that enable flash drives to transfer data from place to place. In recent years, all computers support USB flash drives to read and write data that make it become more and more popular in CNC machine control unit. Fig.1-5 USB Flash Drive on a CNC machine c. Serial communication The data transfer between a computer and a CNC machine tool is often accomplished through a serial communication port. International standards for serial communications are established so that information can be exchanged in an orderly way. The most common interface between computers and CNC machine tools is referred to the EIA Standard RS-232. Most of the personal computers and CNC machine tools have built in RS232 port and a standard RS-232 cable is used to connect a CNC machine to a computer which enables the data transfer in reliable way. Part programs can be downloaded into the memory of a machine tool or uploaded to the computer for temporary storage by running a communication program on the computer and setting up the machine control to interact with the communication software. Fig.1-6 Serial communication port on a CNC machine Direct Numerical Control is referred to a system connecting a set of numerically controlled machines to a common memory for part program or machine program storage with provision for on-demand distribution of data to the machines. (ISO 2806:1980) The NC part program is downloaded a block or a section at a time into
  • 7. Computer Numerical Control (CNC) Page 6 IC Professional Training the controller. Once the downloaded section is executed, the section will be discarded to leave room for other sections. This method is commonly used for machine tools that do not have enough memory or storage buffer for large NC part programs. Distributed Numerical Control is a hierarchical system for distributing data between a production management computer and NC systems. (ISO 2806:1994) The host computer is linked with a number of CNC machines or computers connecting to the CNC machines for downloading part programs. The communication program in the host computer can utilize two-way data transfer features for production data communication including: production schedule, parts produced and machine utilization etc. Fig.1-7 Serial communication in a Distributed Numerical Control system d. Ethernet communication Due to the advancement of the computer technology and the drastic reduction of the cost of the computer, it is becoming more practical and economic to transfer part programmes between computers and CNC machines via an Ethernet communication cable. This media provides a more efficient and reliable means in part programme transmission and storage. Most companies now built a Local Area Network (LAN) as their infrastructure. More and more CNC machine tools provide an option of the Ethernet Card for direct communication within the LAN.
  • 8. Computer Numerical Control (CNC) Page 7 IC Professional Training Fig.1-8 Ethernet port on a CNC machine Fig.1-9 Ethernet network in a Distributed Numerical Control system e. Conversational Programming Part programmes can be input to the controller via the keyboard. Built-in intelligent software inside the controller enables the operator to enter the required data step by step. This is a very efficient way for preparing programmes for relatively simple workpieces involving up to 2½ axis machining. Fig.1-10 Conversational Programming in a CNC controller
  • 9. Computer Numerical Control (CNC) Page 8 IC Professional Training 1.2.2 Machine Control Unit (MCU) The machine control unit is the heart of the CNC system. There are two sub-units in the machine control unit: the Data Processing Unit (DPU) and the Control Loop Unit (CLU). a. Data Processing Unit On receiving a part programme, the DPU firstly interprets and encodes the part programme into internal machine codes. The interpolator of the DPU then calculate the intermediate positions of the motion in terms of BLU (basic length unit) which is the smallest unit length that can be handled by the controller. The calculated data are passed to CLU for further action. b. Control Loop Unit The data from the DPU are converted into electrical signals in the CLU to control the driving system to perform the required motions. Other functions such as machine spindle ON/OFF, coolant ON/OFF, tool clamp ON/OFF are also controlled by this unit according to the internal machine codes. 1.2.3 Machine Tool This can be any type of machine tool or equipment. In order to obtain high accuracy and repeatability, the design and make of the machine slide and the driving leadscrew of a CNC machine is of vital importance. The slides are usually machined to high accuracy and coated with anti-friction material such as PTFE and Turcite in order to reduce the stick and slip phenomenon. Large diameter recirculating ball screws are employed to eliminate the backlash and lost motion. Other design features such as rigid and heavy machine structure; short machine table overhang, quick change tooling system, etc also contribute to the high accuracy and high repeatability of CNC machines. Fig.1-11(a) Ball Screw in a CNC machine Fig.1-11(b) Ball screw structure
  • 10. Computer Numerical Control (CNC) Page 9 IC Professional Training 1.2.4 Driving System The driving system is an important component of a CNC machine as the accuracy and repeatability depend very much on the characteristics and performance of the driving system. The requirement is that the driving system has to response accurately according to the programmed instructions. This system usually uses electric motors although hydraulic motors are sometimes used for large machine tools. The motor is coupled either directly or through a gear box to the machine leadscrew to moves the machine slide or the spindle. Three types of electrical motors are commonly used. a. DC Servo Motor This is the most common type of feed motors used in CNC machines. The principle of operation is based on the rotation of an armature winding in a permanently energised magnetic field. The armature winding is connected to a commutator, which is a cylinder of insulated copper segments mounted on the shaft. DC current is passed to the commutator through carbon brushes, which are connected to the machine terminals. The change of the motor speed is by varying the armature voltage and the control of motor torque is achieved by controlling the motor's armature current. In order to achieve the necessary dynamic behaviour it is operated in a closed loop system equipped with sensors to obtain the velocity and position feedback signals. Fig.1-12 DC Servo Motor (Courtesy of Flexible Automation) b. AC Servo Motor In an AC servomotor, the rotor is a permanent magnet while the stator is equipped with 3-phase windings. The speed of the rotor is equal to the rotational frequency of the magnetic field of the stator, which is regulated by the frequency converter. AC motors are gradually replacing DC servomotors. The main reason is that there is no commutator or brushes in AC servomotor so that maintenance is virtually not required. Furthermore, AC servos have a smaller power-to-weight ratio and faster response.
  • 11. Computer Numerical Control (CNC) Page 10 IC Professional Training Fig.1-13 AC Servo Motor (Courtesy of Flexible Automation) c. Stepping Motor A stepping motor is a device that converts the electrical pulses into discrete mechanical rotational motions of the motor shaft. This is the simplest device that can be applied to CNC machines since it can convert digital data into actual mechanical displacement. It is not necessary to have any analog-to-digital converter nor feedback device for the control system. They are ideally suited to open loop systems. However, stepping motors are not commonly used in machine tools due to the following drawbacks: slow speed, low torque, low resolution and easy to slip in case of overload. Examples of stepping motor application are the magnetic head of floppy-disc drive and hard disc drive of computer, daisy-wheel type printer, X-Y tape control, and CNC EDM Wire-cut machine. Fig.1-14 Stepping Motor (Courtesy Real-Time Microcomputer) d. Linear Motor A linear electric motor is an AC rotary motor laid out flat. The same principle used to produce torque in rotary motors is used to produce force in linear motors. Through the electromagnetic interaction between a coil assembly and a permanent magnet assembly, the electrical energy is converted to linear mechanical energy to generate a linear motion. As the motion of the motor is linear instead of rotational, therefore it is called linear motor. Linear motors have the advantages of high speeds, high precision and fast response. In the 1980s,
  • 12. Computer Numerical Control (CNC) Page 11 IC Professional Training machine tool builders started using linear motors with the common motion control servo drives in the machine tool design. Fig.1-15 Linear Motor (Courtesy of Renishaw) Among different designs of linear motors, permanent magnet brushless motors demonstrate a high force density, high maximum speed, and stable force constant. The lack of a brushed commutator assembly has the advantages of fewer maintenance, higher reliability and better smoothness. An iron core brushless linear motor is similar to a conventional brushless rotary motor slit axially and then rolled out flat. The unrolled rotor is a stationary plate consisting of magnets tiled on an iron back plate and the unrolled stator is a moving coil assembly consisting of coils wound around a laminated steel core. Coil windings are typically connected in conventional 3 phase arrangement and commutation is often performed by Hall-effect sensors or sinusoidal. It has high efficiency and good for continuous force. An ironless linear motor consists of a stationary U shaped channel filled with permanent magnets tiled along both interior walls. A moving coil assembly traverses between two opposing rows of magnets. Commutation is done electronically either by Hall-effect sensors or sinusoidal. The ironless linear motor has the advantages of lower core mass, lower inductance and no cogging for smooth motion as the ironless motors have no attractive force between the frameless components. Fig.1-16 Ironcore and Ironless Linear Motor (Courtesy of ETEL)
  • 13. Computer Numerical Control (CNC) Page 12 IC Professional Training 1.2.5 Feedback Device In order to have a CNC machine operating accurately, the positional values and speed of the axes need to be constantly updated. Two types of feed back devices are normally used, positional feed back device and velocity feed back device. a. Positional Feed Back Devices There are two types of positional feed back devices: linear transducer for direct positional measurement and rotary encoder for angular or indirect linear measurement. Linear Transducers - A linear transducer is a device mounted on the machine table to measure the actual displacement of the slide in such a way that backlash of screws; motors, etc would not cause any error in the feed back data. This device is considered to be of the highest accuracy and also more expensive in comparison with other measuring devices mounted on screws or motors. Fig.1-17 Linear Transducer (Courtesy of Heidenhain) Rotary Encoders - A rotary encoder is a device mounted at the end of the motor shaft or screw to measure the angular displacement. This device cannot measure linear displacement directly so that error may occur due to the backlash of screw and motor etc. Generally, this error can be compensated for by the machine builder in the machine calibration process.
  • 14. Computer Numerical Control (CNC) Page 13 IC Professional Training Fig.1-18 Incremental and Absolute Rotary Encoder b. Velocity Feedback Device The actual speed of the motor can be measured in terms of voltage generated from a tachometer mounted at the end of the motor shaft. DC tachometer is essentially a small generator that produces an output voltage proportional to the speed. The voltage generated is compared with the command voltage corresponding to the desired speed. The difference of the voltages can is then used to actuate the motor to eliminate the error. Fig.1-19 Tachogenerator (Courtesy of Callan) 1.2.6 Display Unit The Display Unit serves as an interactive device between the machine and the operator. When the machine is running, the Display Unit displays the present
  • 15. Computer Numerical Control (CNC) Page 14 IC Professional Training status such as the position of the machine slide, the spindle RPM, the feed rate, the part programmes, etc. In an advanced CNC machine, the Display Unit can show the graphics simulation of the tool path so that part programmes can be verified before the actually machining. Much other important information about the CNC system can also displayed for maintenance and installation work such as machine parameters, logic diagram of the programmer controller, error massages and diagnostic data. Fig.1-20 Display Unit for CNC machines (Courtesy of Heidenhain) 1.3 Applications of CNC Machines CNC machines are widely used in the metal cutting industry and are best used to produce the following types of product: • Parts with complicated contours • Parts requiring close tolerance and/or good repeatability • Parts requiring expensive jigs and fixtures if produced on conventional machines • Parts that may have several engineering changes, such as during the development stage of a prototype • In cases where human errors could be extremely costly • Parts that are needed in a hurry • Small batch lots or short production runs Some common types of CNC machines and instruments used in industry are as following: • Drilling Machine • Lathe / Turning Centre • Milling / Machining Centre • Turret Press and Punching Machine • Wirecut Electro Discharge Machine (EDM) • Grinding Machine • Laser Cutting Machine • Water Jet Cutting Machine • Electro Discharge Machine • Coordinate Measuring Machine • Industrial Robot
  • 16. Computer Numerical Control (CNC) Page 15 IC Professional Training Chapter 2. CNC Part Programming Objectives: 9 To understand the Dimension Systems in CNC Part Programming. 9 To understand the structure of a CNC Part Programme. 9 To understand the G-codes and other functions of a CNC Part Programme. 2.1 Axis of motion In generally, all motions have 6 degrees of freedom. In other words, motion can be resolved into 6 axes, namely, 3 linear axes (X, Y and Z axis) and 3 rotational axes (A, B, and C axis). Fig.2-1 Axis of Motion 2.2 Dimension Systems 2.2.1 Incremental System This type of control always uses as a reference to the preceding point in a sequence of points. The disadvantage of this system is that if an error occurs, it will be accumulated. Y X Z
  • 17. Computer Numerical Control (CNC) Page 16 IC Professional Training Fig.2-2 Incremental System 2.2.2 Absolute System In an absolute system all references are made to the origin of the co ordinate system. All commands of motion are defined by the absolute coordinate referred to the origin. Fig.2-3 Absolute System 2.3 Definition of Programming NC programming is where all the machining data are compiled and where the data are translated into a language which can be understood by the control system of the machine tool. The machining data is as follows: a. Machining sequence classification of process, tool start up point, cutting depth, tool path etc. b. Cutting conditions spindle speed, feed rate, coolant, etc. c. Selection of cutting tools.
  • 18. Computer Numerical Control (CNC) Page 17 IC Professional Training 2.4 Programme Structure Program start Block #1 Block #2 Block #30 Block #31 End of Programme Sequence Number Word #1 Word #2 N002 G01 X12.0 Address Value G 01 X 12.0 Fig.2-4 Structure of CNC Part Programme A CNC programme consists of blocks, words and addresses. a. Block A command given to the control unit is called a block. b. Word A block is composed of one or more words. A word is composed of an identification letter and a series of numerals, e.g. the command for a feed rate of 200mm/min is F200. c. Address The identification letter at the beginning of each word is called address. The meaning of the address is in accordance with EIA (Electronic Industries Association) standard RS-274-D. The most common 'addresses' are listed below: Function Address Sequence number N Preparatory function G Co ordinate word X, Y, Z Parameters for Circular Interpolation I, J, K Feed function F Spindle function S Tool function T Miscellaneous function M An example of a programme is as follows: N20 G01 X20.5 F200 S1000 M03 N21 G02 X30.0 Y40.0 I20.5 J32.0
  • 19. Computer Numerical Control (CNC) Page 18 IC Professional Training 2.5 Explanation of Words 2.5.1 Sequence Number (N Address) A sequence number is used to identify the block. It is always placed at the beginning of the block and can be regarded as the name of the block. The sequence numbers need not be consecutive. The execution sequence of the programme is according to the actual sequence of the block and not the sequence of the number. In fact some CNC systems do not require sequence numbers. 2.5.2 Preparatory Function (G Address) A preparatory function determines how the tool is to move to the programmed target. The most common G addresses are listed below: Code Function G00 Point to point position at rapid feed G01 Linear interpolation G02 Circular interpolation, clockwise G03 Circular interpolation, anti clockwise G40 Cutter compensation cancel G41 Cutter compensation, Left G42 Cutter compensation, Right G45 - G48 Other cutter compensation, if used G70 - G79 Milling and turning cycle G80 - G89 Drilling and tapping cycle G90 Absolute dimensioning G91 Incremental dimensioning 2.5.3 Co-ordinate Word (X/Y/Z Address) A co-ordinate word specifies the target point of the tool movement (absolute dimension system) or the distance to be moved (incremental dimension). The word is composed of the address of the axis to be moved and the value and direction of the movement. Example: X100 Y-200 represents the movement to (100, 200). Whether the dimensions are absolute or incremental will have to be defined previously (using G90 or G91). 2.5.4 Parameter for Circular Interpolation (I/J/K Address) These parameters specify the distance measured from the start point of the arc to the centre. Numerals following I, J and K are the X, Y and Z components of the distance respectively.
  • 20. Computer Numerical Control (CNC) Page 19 IC Professional Training 2.5.5 Spindle Function (S Address) The spindle speed is commanded under an S address and is always in revolution per minute. It can be calculated by the following formula: (mm) meter Cutter Dia 1000 (m/min) Speed Cutting Surface = Speed Spindle Ă— Ă— Ď€ The following table gives the surface cutting speeds for some common materials: Example: S2000 represents a spindle speed of 2000rpm 2.5.6 Feed Function (F Address) The feed is programmed under an F address except for rapid traverse. The unit may be in mm per minute (in the case of milling machine) or in mm per revolution (in the case of turning machine). The unit of the feedrate has to be defined at the beginning of the programme. The feed rate can be calculated by the following formula: Feed Rate = Chip Load / tooth No of Tooth Spindle Speed Ă— Ă— The following table gives the chip load per tooth of milling cutters cutting some common materials: Milling Cutter Chip load per tooth (mm/rev) Material Al alloy Brass Cast Iron Mild Steel HSS 0.28 0.18 0.20 0.13 Sintered Carbide 0.25 0.15 0.25 0.25 Example: F200 represents a feed rate of 200mm/min 2.5.7 Tool Function (T Address) The selection of tool is commanded under a T address. Example: T02 represents tool number 2 Cutting tool Workpiece material Material Al alloy Brass Cast Iron Mild Steel HSS 120 75 18 30 Carbide 500 180 120 200
  • 21. Computer Numerical Control (CNC) Page 20 IC Professional Training 2.5.8 Miscellaneous Function (M Address) The miscellaneous function is programmed to control the machine operation other than for co ordinate movement. The most common M functions are as follows: Code Function M00 Programme stop M03 Spindle rotation clockwise M04 Spindle rotation counterclockwise M05 Spindle STOP M06 Change of Tool M08 Coolant ON M09 Coolant OFF M10 Clamp M11 Unclamp M30 Programme end and ready for another start 2.6 Steps for CNC Programming and Machining The following is the procedures to be followed in CNC programming and machining. The most important point is to verify the programme by test run it on the machine before the actual machining in order to ensure that the programme is free of mistakes. a. Study the part drawing carefully. b. Unless the drawing dimensions are CNC adapted, select a suitable programme zero point on the work piece. The tool will be adjusted to this zero point during the machine set up. c. Determine the machining operations and their sequence. d. Determine the method of work clamping (vice, rotary table, fixtures etc). e. Select cutting tools and determine spindle speeds and feeds. f. Write programme (translate machining steps into programme blocks). If many solutions are possible, try the simplest solution first. It is usually longer, but better to proceed in this way. g. Prepare tool chart or diagram, measure tool geometry (lengths, radii) and note. h. Clamp work piece and set up machine. i. Enter compensation value if necessary. j. Check and test programme. It is a good practice to dry run the programme (i) without the workpiece, (ii) without the cutting tools, or (iii) by raising the tool to a safe height. If necessary, correct and edit programme and check again. k. Start machining.
  • 22. Computer Numerical Control (CNC) Page 21 IC Professional Training 2.7 G-codes in Part Programming 2.7.1 Absolute and Incremental Dimensioning (G90/G91) G90 and G91 are used to control the dimensioning system that will be used in the data input. In G90 mode, the dimensions will be recognized as absolute while in G91 will be incremental. 2.7.2 Rapid Positioning (G00) This is to command the cutter to move from the existing point to the target point at the fastest speed of the machine. Programme Format G00 X Y Z Fig.2-5 Rapid Positioning 2.7.3 Linear Interpolation (G01) This is to command the cutter to move from the existing point to the target point along a straight line at the speed designated by the F address. Programme Format G01 X Y Z F X Y Z Rapid Traverse
  • 23. Computer Numerical Control (CNC) Page 22 IC Professional Training Fig.2-6 Linear Interpolation 2.7.4 Circular Interpolation (G02/G03) This is to command the cutter to move from the existing point to the target point along a circular arc in clockwise direction (G02) or counterclockwise direction (G03). In this case, beside the target point, the radius or the centre of the arc is also required. Most of the CNC systems nowadays still require the data of the arc centre rather than the radius. The parameters of the centre of the circular arc is designated by the I, J and K addresses. I is the distance along the X axis, J along the Y, and K along the Z. This parameter is defined as the vector (magnitude and direction) from the starting point to the centre of the arc. Programme Format (Clockwise Direction) G02 X Y I (XC - XS) J (YC - YS) Where XC and YC is the coordinate of the centre, and XS and YS is the coordinate of the start point of the arc. X Y Z At Designated Speed
  • 24. Computer Numerical Control (CNC) Page 23 IC Professional Training Fig.2-7 Circular Interpolation - Clockwise Programme Format (Counterclockwise Direction) G03 X Y I J Fig.2-8 Circular Interpolation - Counterclockwise 2.7.5 Cutter Compensation (G40/G41/G42) In CNC machining, if the cutter axis is moving along the programmed path, the dimension of the workpiece obtained will be incorrect since the diameter of the cutter has not be taken into account. Modern CNC systems are capable of doing this type of calculation which is known as cutter compensation. What the system requires are the programmed path, the cutter diameter and the position of the cutter with reference to the contour. Normally, the cutter diameter is not included in the programme. It has to be input to the CNC system in the tool setting process. (Xc, Yc) Start point (Xs, Ys) End X Y I J (Xc, Yc) Start point (Xs, Ys) End point X Y I J
  • 25. Computer Numerical Control (CNC) Page 24 IC Professional Training Fig.2-9 Comparison of Tool Path with and without Cutter Compensation If the cutter is on the left of the contour, G41 is used. If the cutter is on the right of the contour, G42 will be used. G40 is to cancel the compensation calculation. Cutter on the Right of the contour, use G42 Fig.2-10 Direction of Cutter Compensation Final contour does not Match with programme path Final contour matches with programme path Cutter path offset from the programme path Programme Cutter on the Left of the contour, use G41
  • 26. Computer Numerical Control (CNC) Page 25 IC Professional Training Programme Example 1 Programme Explanation N01 G90 Absolute Dimensioning N02 G00 X-30 Y-30 Z100 Rapid move to (X-30, Y-30, Z100) N03 T01 Using Tool Number 1 N04 G00 Z5 S1000 M03 Rapid move to Z5; start spindle clockwise at 1000rpm N05 G01 Z-10 F100 Feed to Z-10 at 100mm/min N06 G41 G01 X0 Y15 F200 Call up compensation, cutter on the left feed to (X0, Y15) at 200mm/min N07 G01 Y66.564 From N07 to N15 is the contour cutting N08 G02 X16.111 Y86.183 I20 J0 N09 G02 X93.889 Y86.183 I38.889 J-196.183 N10 G02 X110 Y66.564 I-3.889 J-19.619 N11 G01 Y26.247 N12 G02 X98.882 Y11.758 I-15 J0 N13 G01 X55 Y0 N14 G01 X15 N15 G02 X0 Y15 I0 J15
  • 27. Computer Numerical Control (CNC) Page 26 IC Professional Training N16 G40 X-30 Y-30 Cancel of compensation; feed to (X-30, Y-30) N17 G00 Z100 M30 Rapid move to Z100; programme end Programming Example 2 Programme Explanation N01 G28 U0.1 W0.1; Return to Machine Zero N02 G00 U-60.0 W-40.0; Rapid move to Tool Changing position N03 G50 X200.0 Z100.0;Assign the Programme Zero N04 G97 S2000; Assign revolution speed as 2000 rpm N05 M03; Switch on spindle, turning in forward direction N06 T0101; Select Tool Number T1 and call tool offset N07 G00 X0 Z42.0; Rapid move to (X0, Z42.0) N08 M08; Switch coolant on N09 G69 F0.15; Assign feed to be 0.15 mm/rev N10 G01 Z40.45; Start cutting the Contour along path A N11 G03 X 9.217 Z31.13 R5.8; N12 X8.955 Z29.465 R1.556; N13 G02 X 9.6 Z29.1 R1.48; N14 G01 X11.142; PARTING OFF TOOL LEFT-HAND TURNING TOOL RIGHT-HAND TURNING TOOL T3 T2 T1 PATH ?A? PATH ?B ? T1 T2 T3 MACHINE ZERO 40,30 FROM TOOL CHANGING POSITION TOOL CHANGING POSITION 100,200 FROM PROGRAMME ZERO Z X PROGRAMME ZERO
  • 28. Computer Numerical Control (CNC) Page 27 IC Professional Training N15 G03 X 11.142 Z25.4 R2.398; N16 G01 X16.6 Z9.385; N17 Z8.5; N18 X20.6; N19 Z-3.0; Finish Contouring N20 G00 X200.0 Z100.0; Rapid move to Tool Changing Position N21 T0100; Cancel tool offset N22 T0202; Select Tool Number T2 and call tool offset N23 G00 X21.0 Z9.385; Rapid move to (X21.0 Z3.985) N24 G01 X16.6 F0.15; Start cutting contour along path B, in 0.15mm/rev feed N25 G03 X9.6 Z24.203 R34.2; N26 G01 Z25.4; N27 X14.0; Finish contouring N28 G00 X200.0 Z100.0;Rapid move to Tool Changing position N29 T0200; Cancel tool offset N30 T0303; Select Tool Number T3 and call tool offset N31 G00 X24.0 Z0; Rapid move to (X24.0 Z0) N32 G01 X-0.5 F0.06; Part off in feedrate 0.06 mm/rev N33 G00 X200.0 Z100.0;Rapid move to Tool Changing position N34 T0300; Cancel tool offset; N35 M30; Programme end 2.7.6 Other Functions Modern CNC systems have some specially designed functions to simplify the manual programming. However, since most of these functions are system oriented, it is not intended to discuss them here in detail. The following paragraphs give a brief description of commonly used functions in modern CNC systems. The user should refer to the programming manuals of the machine for the detail programming and operation.
  • 29. Computer Numerical Control (CNC) Page 28 IC Professional Training a. Mirror Image This is the function that converts the programmed path to its mirror image, which is identical in dimensions but geometrically opposite about one or two axes. b. Programme Repetition and Looping In actual machining, it is not always possible to machine to the final dimension in one go. This function enables the looping of a portion of the programme so that the portion can be executed repeatedly. c. Pocketing Cycle Pocketing is a common process in machining. This is to excavate the material within a boundary normally in zigzag path and layer by layer. In a pocketing cycle, the pattern of cutting is pre-determined. The user is required to input parameters including the length, width and depth of the pocket, tool path spacing, and layer depth. The CNC system will then automatically work out the tool path. d. Drilling, Boring, Reaming and Tapping Cycle This is similar to pocketing cycle. In this function, the drilling pattern is pre-determined by the CNC system. What the user has to do is to input the required parameters such as the total depth of the hole, the down feed depth, the relief height and the dwell time at the bottom of the hole.
  • 30. Computer Numerical Control (CNC) Page 29 IC Professional Training Chapter 3. Computer Aided Manufacturing Objectives: 9 To understand the flow of a Computer Aided Manufacturing System. 9 To understand the characteristics of the process Tool Motion Definition in a CAM system. 9 To understand the characteristics of the process Data Transmission in a CAM system. 3.1 Computer Aided Part Programming In manual preparation of a CNC part programme, the programmer is required to define the machine or the tool movement in numerical terms. If the geometry is complicated 3D surfaces cannot be programmed manually. Over the past years, lot of effort is devoted to automate the part programme generation. With the development of the CAD/CAM system, interactive graphic system is integrated with the CNC part programming. Graphic based software using menu driven technique improves the user friendliness. The part programmer can create the geometrical model in the CAM package or directly extract the geometrical model from the CAD/CAM data base. Built in tool motion commands can assist the part programmer to calculate the tool paths automatically. The part programmer can verify the tool paths through the graphic display using the animation function of the CAM system. It greatly enhances the speed and accuracy in tool path generation. 3.2 Flow of A Computer Aided Manufacturing System There are several computer aided manufacturing or CAD/CAM system available in the market. Their basic features can be summarized below: a. Geometric Modeling / CAD Interface b. Tool Motion definition c. Data Processing d. Post Processing e. Data Transmission
  • 31. Computer Numerical Control (CNC) Page 30 IC Professional Training Fig.3-1 Flow Chart of a CAM System 3.2.1 Geometric Modeling / CAD Interface The geometry of the workpiece can be defined by basic geometrical elements such as points, lines, arcs, splines or surfaces. The two dimensional or three dimensional geometrical elements are stored in the computer memory in forms of a mathematical model. The mathematical model can be a wire frame model, a surface model, or a solid model. In addition, the geometric models can be imported from other CAD/CAM system through standard CAD/CAM interface formats such as Initial Graphic Exchange Specification (IGES). Initial Graphic Exchange Specification (IGES) IGES is a graphic exchange standard jointly developed by industry and the National Bureau of Standards with the support of the U.S. Air Force. It provides transportability of 3-dimensional geometry data between different systems. Throughout this system, geometrical elements from one system can be translated into a neutral file standard and then from this standard into other format. 3.2.2 Tool Motion Definition After the geometric modeling, machining data such as the job setup, operation setup and motion definition are input into the computer to produce the cutting location file (CL file) for machining the workpiece. Tool Motion definition CAD/CAM /Copy Machining Parameter CAM 3D Geometry Construction Tool Motion Definition Sequence Operation Post Processing CNC Machine NC Program Data Processing Geometry Files Scanning /Copy Mill CAD/CAM Interface
  • 32. Computer Numerical Control (CNC) Page 31 IC Professional Training a. Job setup This is to input the machine datum, home position, and the cutter diameters for the CL file. b. Operation setup This is to input into the system the operation parameters such as the feed rate, tolerance, and approach / retract planes, spindle speed, coolant ON/OFF, stock offset and the tool selection etc. c. Motion definition Built in machining commands are used to control the tool motion to machine the products. This includes the hole processing, profile machining, pocketing, surface machining, gouge checking, etc. Fig.3-2 CAM System 3.2.3 Data Processing The input data is translated into computer usable format. The computer will process the desired part surface, the cutter offset surface and finally compute the paths of the cutter which is known as the cutter location data file (CL file). The tool paths can normally be animated graphically on the display for verification purpose. Furthermore, production planning data such as tool list, set up sheet, and machining time is also calculated for users' reference. 3.2.4 Post Processing Different CNC machines have different features and capabilities, the format of the CNC program may also vary from each other. A process is required to change the general instructions from the cutter location file to a specific format for a particular machine tool and this process is called post processing. Post processor is a computer software which converts the cutter location data files into a format which the machine controller can interpret correctly. Generally, there are two types of post processor.
  • 33. Computer Numerical Control (CNC) Page 32 IC Professional Training a. Specific Post Processor This is a tailor-made software which output the precise code for a specific CNC machine. The user is not required to change anything in the programme. b. Generic (Universal) Post Processor This is a set of generalized rules which needs the user to customize into the format that satisfies the requirements of a specific CNC machine. 3.2.5 Data Transmission After post processing, the CNC programme can be transmitted to the CNC machines either through the off line or on line process. a. Off Line Processes Data carriers are used to transmit the CNC programme to the CNC machines. It includes paper tapes, magnetic tape or magnetic disc. b. On Line Processes On line processes is commonly used in DNC operation and data is transferred either serially or parallel using data cables. Serial Transmission Asynchronous serial transmission is most widely used in data transmission and RS232C is the most popular asynchronous standard. Built in RS232C serial port (9 pins or 25 pins) is available in many computers. RS232C is inexpensive; easy to program and with a baud rate up to 38400. However, its noise margin is limited up to 15 meters. Parallel Transmission Parallel transmission is commonly used in data transmission between computers and external devices such as sensors, programmable logic controllers (PLC) or actuators. One common standard is IEEE488. It contains a 24 lines bus with 8 for data, 8 for controls and 8 for ground. It can transfer data up to 1 Mbps for a 20-meter cable. Local Area Networks To enable the CAD/CAM facilities to run smoothly, it is desirable for the facilities to be linked together. In the local-area network, terminals can access any computer on the network or devices on the shop floor without a physical hardwire with speed up to 300
  • 34. Computer Numerical Control (CNC) Page 33 IC Professional Training megabits per second. For instance, Ethernet runs at 100Mbps which is much faster than an RS232 serial communication (115.2kbps). A LAN consists of both software and hardware design, which governed by a set of rules called protocol. The design of software enable controls of data handling and error recovery, while hardware generates and receives signals, and media that carries the signals. The protocol defines the logical, electrical, and physical specifications of the network. The same protocol must be followed in order to have an effective communication with each other in the network.
  • 35. Computer Numerical Control (CNC) Page 34 IC Professional Training References • Computer Numerical Control of Machine Tools, G.E.Thyer, Heinemann Professional Publishing 1988 • The CNC Workshop, Frank Nanfara, Tony Uccello, Derek Murphy, Prentice-Hall 2002 • CNC Programming, Michael Mattson, Delmar Cengage Learning, 2010 • The Machining of Metals, Armsrego E. J. A., R. H. Brown, Englewood Cliffs, N.J., Prentice-Hall 1969 • Managing Computer Numerical Control Operations, Mike Lynch, Society of Manufacturing Engineers 1995 • International Standard ISO2806 Industrial Automation System – Numerical Control of Machines – Vocabulary, International Organization for Standardization