2. 22
HISTORYHISTORY
US Air Force commissioned MIT to develop theUS Air Force commissioned MIT to develop the
first "numerically controlled" machine in 1949. Itfirst "numerically controlled" machine in 1949. It
was demonstrated in 1952.was demonstrated in 1952.
At 1970-1972 first Computer Numeric ControlAt 1970-1972 first Computer Numeric Control
machines were developed.machines were developed.
Today, computer numerical control (CNC)Today, computer numerical control (CNC)
machines are found almost everywhere, frommachines are found almost everywhere, from
small job shops in rural communities tosmall job shops in rural communities to
companies in large urban areas.companies in large urban areas.
3. 33
DEFINITIONDEFINITION
InIn CNCCNC ((Computer Numerical ControlComputer Numerical Control),), thethe
instructions are stored as a program in ainstructions are stored as a program in a
micro-computer attached to the machine.micro-computer attached to the machine.
The computer will also handle much of theThe computer will also handle much of the
control logic of the machine, making itcontrol logic of the machine, making it
more adaptable than earlier hard-wiredmore adaptable than earlier hard-wired
controllers.controllers.
4. 44
CNC APPLICATIONSCNC APPLICATIONS
MachiningMachining
2.5D / 3D2.5D / 3D
Turning ~ Lathes, Turning CentreTurning ~ Lathes, Turning Centre
Milling ~ Machining CentresMilling ~ Machining Centres
FormingForming
2D2D
Plasma and Laser CuttingPlasma and Laser Cutting
Blanking, nibbling and punchingBlanking, nibbling and punching
3D3D
Rapid PrototypingRapid Prototyping
21. 2121
Utilization of computers inUtilization of computers in
manufacturing applications hasmanufacturing applications has
proved to be one of the mostproved to be one of the most
significant advantages &significant advantages &
developments over the last coupledevelopments over the last couple
of decades in helping to improveof decades in helping to improve
the productivity and efficiency ofthe productivity and efficiency of
manufacturing systems.manufacturing systems.
22. 2222
ADVANTAGES of CNCADVANTAGES of CNC
ProductivityProductivity
Machine utilisation is increased becauseMachine utilisation is increased because
more time is spent cutting and less time ismore time is spent cutting and less time is
taken by positioning.taken by positioning.
Reduced setup time increases utilisationReduced setup time increases utilisation
too.too.
23. 2323
PROFITPROFIT increases asincreases as COSTCOST decreasesdecreases
and asand as PRODUCTIVITYPRODUCTIVITY increases.increases.
PRODUCTIVITY throughPRODUCTIVITY through AUAUTOMATIONTOMATION
25. 2525
ADVANTAGES of CNCADVANTAGES of CNC
QualityQuality
Parts are more accurate.Parts are more accurate.
Parts are more repeatable.Parts are more repeatable.
Less waste due to scrap.Less waste due to scrap.
26. 2626
ADVANTAGES of CNCADVANTAGES of CNC
Reduced inventoryReduced inventory
Reduced setup time permits smallerReduced setup time permits smaller
economic batch quantities.economic batch quantities.
Lower lead time allows lower stock levels.Lower lead time allows lower stock levels.
Lower stock levels reduce interest chargesLower stock levels reduce interest charges
and working capital requirements.and working capital requirements.
27. 2727
ADVANTAGES of CNCADVANTAGES of CNC
Machining Complex shapesMachining Complex shapes
Slide movements under computer control.Slide movements under computer control.
Computer controller can calculate steps.Computer controller can calculate steps.
First NC machine built 1951 at MIT forFirst NC machine built 1951 at MIT for
aircraft skin milling.aircraft skin milling.
28. 2828
ADVANTAGES of CNCADVANTAGES of CNC
Management ControlManagement Control
CNC leads to CADCNC leads to CAD
Process planningProcess planning
Production planningProduction planning
29. 2929
DRAWBACKS of CNCDRAWBACKS of CNC
High capital costHigh capital cost
Machine tools cost 10 Lac / machineMachine tools cost 10 Lac / machine
Retraining and recruitment of staffRetraining and recruitment of staff
New support facilitiesNew support facilities
High maintenance requirementsHigh maintenance requirements
Not cost-effective for low-level production onNot cost-effective for low-level production on
simple partssimple parts
As geometric complexity or volume increasesAs geometric complexity or volume increases
CNC becomes more economicalCNC becomes more economical
Maintenance personnel must have bothMaintenance personnel must have both
mechanical and electronics expertisemechanical and electronics expertise
31. 3131
The metal cutting operationsThe metal cutting operations (also(also
called machining)called machining) is one of theis one of the
most important manufacturingmost important manufacturing
processes in industry todayprocesses in industry today (as it(as it
was yesterday)was yesterday)..
32. 3232
MACHININGMACHINING IS THE REMOVALIS THE REMOVAL
OF MATERIALS IN FORMS OFOF MATERIALS IN FORMS OF
CHIPS FROM THE WORKPIECECHIPS FROM THE WORKPIECE
BY SHEARING WITH A SHARPBY SHEARING WITH A SHARP
TOOL.TOOL.
33. 3333
The main function of a machine toolThe main function of a machine tool
is to control the workpiece-cuttingis to control the workpiece-cutting
tool positional relationship in such atool positional relationship in such a
way as to achieve a desiredway as to achieve a desired
geometric shape of the workpiecegeometric shape of the workpiece
with sufficient dimensionalwith sufficient dimensional
accuracy.accuracy.
34. 3434
CLASSIFICATION OF MACHINE TOOLSCLASSIFICATION OF MACHINE TOOLS
THOSE USING
SINGLE
POINT
TOOLS
THOSE USING
MULTIPOIN
T TOOLS
THOSE USING
ABRASIVE
TOOLS
lathes
shapers
planers
boring m/c’s
etc.
drilling m/c’s
milling m/c’s
broaching m/c’s
hobbing m/c’s
etc.
grinding m/c’s
honing m/c’s
etc.
37. 3737
ISO MACHINE TOOL AXES DEFINITIONS
AXIS MACHINE TOOL WITH SPINDLE MACHINE TOOL WITH
NO SPINDLE
Z axis of spindle,
(+Z) as tool goes away from the work piece
perpendicular to work
holding surface, (+Z) as
tool goes away from the
workpiece
MACHINE
TOOL WITH
ROTATING
WORKPIECE
MACHINE TOOL WITH
ROTATING TOOL
HORIZONT
AL AXIS
VERTICAL
AXIS
X radial and
parallel to
cross slide,
(+X) when
tool goes away
from the axis
of spindle
horizontal
and parallel
to work
holding
surface,
(+X) to the
right when
viewed
from
spindle
towards
work piece
horizontal
and parallel
to the work
holding
surface,
(+X) to the
right when
viewed
from
spindle
towards
column
parallel to and positive in
the principal direction of
cutting (primary motion)
Y apply right hand rules
38. 3838
RIGHT HAND RULERIGHT HAND RULE
Vertical Machine HorizontalVertical Machine Horizontal MachineMachine
41. 4141
The functions and motions such as;The functions and motions such as;
turning the spindle on and offturning the spindle on and off
setting cutting speedssetting cutting speeds
setting feed ratesetting feed rate
turning coolant on and offturning coolant on and off
moving tool with respect to workpiecemoving tool with respect to workpiece
are performed by Machine Control Unit (MCU)are performed by Machine Control Unit (MCU)
in NC machine tools.in NC machine tools.
43. 4343
CNC SYSTEM ELEMENTSCNC SYSTEM ELEMENTS
A typical CNC system consists of thA typical CNC system consists of thee
following six elementsfollowing six elements
Part programPart program
Program input deviceProgram input device
Machine control unitMachine control unit
Drive systemDrive system
Machine toolMachine tool
Feedback systemFeedback system
46. 4646
PART PROGRAMPART PROGRAM
A part program is a series of coded instructions requiredA part program is a series of coded instructions required
to produce a part. It controls the movement of theto produce a part. It controls the movement of the
machine tool and the on/off control of auxiliary functionsmachine tool and the on/off control of auxiliary functions
such as spindle rotation and coolant. The codedsuch as spindle rotation and coolant. The coded
instructions are composed of letters, numbers andinstructions are composed of letters, numbers and
symbols and are arranged in a format of functionalsymbols and are arranged in a format of functional
blocks as in the following exampleblocks as in the following example
N10 G01 X5.0 Y2.5 F15.0N10 G01 X5.0 Y2.5 F15.0
| | | | || | | | |
| | | | Feed rate (15 in/min)| | | | Feed rate (15 in/min)
| | | Y-coordinate (2.5")| | | Y-coordinate (2.5")
| | X-coordinate (5.0")| | X-coordinate (5.0")
| Linear interpolation mode| Linear interpolation mode
Sequence numberSequence number
47. 4747
PROGRAM INPUT DEVICEPROGRAM INPUT DEVICE
The program input device is theThe program input device is the
mechanism for part programs to bemechanism for part programs to be
entered into the CNC control. Thentered into the CNC control. The moste most
commonly used program input devices arecommonly used program input devices are
keyboardskeyboards,, punched tape reader, diskettepunched tape reader, diskette
drivers, throgh RS 232 serial ports anddrivers, throgh RS 232 serial ports and
networksnetworks..
48. 4848
MACHINE CONTROL UNITMACHINE CONTROL UNIT
The machine control unit (MCU) is the heart of a CNCThe machine control unit (MCU) is the heart of a CNC
system. It is used to perform the following functions:system. It is used to perform the following functions:
Read coded instructionsRead coded instructions
Decode coded instructionsDecode coded instructions
Implement interpolations (linear, circular, and helical) toImplement interpolations (linear, circular, and helical) to
generate axis motion commandsgenerate axis motion commands
Feed axis motion commands to the amplifier circuits forFeed axis motion commands to the amplifier circuits for
driving the axis mechanismsdriving the axis mechanisms
Receive the feedback signals of position and speed forReceive the feedback signals of position and speed for
each drive axiseach drive axis
Implement auxiliary control functions such as coolant orImplement auxiliary control functions such as coolant or
spindle on/off, and tool changespindle on/off, and tool change
49. 4949
TYPES of CNC CONTROLTYPES of CNC CONTROL
SYSTEMSSYSTEMS
Open-loop controlOpen-loop control
Closed-loop controlClosed-loop control
50. 5050
OPEN-LOOP CONTROLOPEN-LOOP CONTROL
SYSTEMSYSTEM
In open-loop control system step motors areIn open-loop control system step motors are
usedused
Step motors are driven by electric pulsesStep motors are driven by electric pulses
Every pulse rotates the motor spindle through aEvery pulse rotates the motor spindle through a
certain amountcertain amount
By counting the pulses, the amount of motionBy counting the pulses, the amount of motion
can be controlledcan be controlled
No feedback signal for error correctionNo feedback signal for error correction
Lower positioning accuracyLower positioning accuracy
51. 5151
CLOSED-LOOP CONTROLCLOSED-LOOP CONTROL
SYSTEMSSYSTEMS
In closed-loop control systems DC or ACIn closed-loop control systems DC or AC
motors are usedmotors are used
Position transducers are used to generatePosition transducers are used to generate
position feedback signals for errorposition feedback signals for error
correctioncorrection
Better accuracy can be achievedBetter accuracy can be achieved
More expensiveMore expensive
Suitable for large size machine toolsSuitable for large size machine tools
52. CONTROLCONTROL
Desired path (Desired path (p, v, ap, v, a))
3-axis position control (encoder feedback)3-axis position control (encoder feedback)
Velocity control (tachometer feedback)Velocity control (tachometer feedback)
Torque control (current feedback)Torque control (current feedback)
Path generatorPath generator
Linear interpolationLinear interpolation
Circular interpolationCircular interpolation
Complex path interpolation (contouring)Complex path interpolation (contouring)
53. 5353
DRIVE SYSTEMDRIVE SYSTEM
A drive system consists of amplifierA drive system consists of amplifier
circuits,circuits, steppingstepping motorsmotors or servomotorsor servomotors
and ball lead-screws. The MCU feedsand ball lead-screws. The MCU feeds
control signals (position and speed) ofcontrol signals (position and speed) of
each axis to the amplifier circuits. Theeach axis to the amplifier circuits. The
control signals are augmented to actuatecontrol signals are augmented to actuate
steppingstepping motors which in turn rotate themotors which in turn rotate the
ball lead-screws to position the machineball lead-screws to position the machine
table.table.
54. 5454
STEPPING MOTORSSTEPPING MOTORS
A stepping motor provides open-loop, digital
control of the position of a workpiece in a
numerical control machine. The drive unit
receives a direction input (cw or ccw) and pulse
inputs. For each pulse it receives, the drive unit
manipulates the motor voltage and current,
causing the motor shaft to rotate bya fixed angle
(one step). The lead screw converts the rotary
motion of the motor shaft into linear motion of
the workpiece .
56. 5656
RECIRCULATING BALLRECIRCULATING BALL
SCREWSSCREWS
Transform rotational motion of the motorTransform rotational motion of the motor
intointo translationaltranslational motion of the nut attached to themotion of the nut attached to the
machine table.machine table.
57. 5757
RECIRCULATING BALLRECIRCULATING BALL
SCREWSSCREWS
Accuracy of CNC
machines depends on
their rigid
construction, care in
manufacturing, and
the use of ball screws
to almost eliminate
slop in the screws
used to move portions
of the machine.
60. 6060
POSITIONINGPOSITIONING
The positioning resolution of a ball screw drive
mechanism is directly proportional to the
smallest angle that the motor can turn.
The smallest angle is controlled by the motor
step size.
Microsteps can be used to decrease the motor
step size.
CNC machines typically have resolutions of
0.0025 mm or better.
61. 6161
MACHINE TOOLMACHINE TOOL
CNC controls are used to control variousCNC controls are used to control various
types of machine tools. Regardless oftypes of machine tools. Regardless of
which type of machine tool is controlled, itwhich type of machine tool is controlled, it
always has a slide table and a spindle toalways has a slide table and a spindle to
control of position and speed. Thecontrol of position and speed. The
machine table is controlled in the X and Ymachine table is controlled in the X and Y
axes, while the spindle runs along the Zaxes, while the spindle runs along the Z
axis.axis.
62. 6262
FEEDBACK SYSTEMFEEDBACK SYSTEM
The feedback system is also referred to asThe feedback system is also referred to as
the measuring system. It uses positionthe measuring system. It uses position
and speed transducers to continuouslyand speed transducers to continuously
monitor the position at which the cuttingmonitor the position at which the cutting
tool is located at any particular time. Thetool is located at any particular time. The
MCU uses the difference betweenMCU uses the difference between
reference signals and feedback signals toreference signals and feedback signals to
generate the control signals for correctinggenerate the control signals for correcting
position and speed errors.position and speed errors.
73. CNC ProgrammingCNC Programming
ManualManual
Write code directlyWrite code directly
Computer-assistedComputer-assisted
Draw cutter pathDraw cutter path
CAD/CAMCAD/CAM
Draw the partDraw the part
Cutter path is generatedCutter path is generated
74. 7474
VELOCITY FEEDBACKVELOCITY FEEDBACK
Tachometers:
Electrical output is proportional to rate of
angular rotation.
Encoders, Resolvers, Potentiometers:
Number of pulses per time is proportional
to rate change of position.
77. 7777
TURNING CENTER CUTTERSTURNING CENTER CUTTERS
Types of cutters used on CNC turning
centers
Carbides (and other hard materials) insert
turning and boring tools
Ceramics
High Speed Steel (HSS) drills and taps
78. 7878
STANDART INSERT SHAPESSTANDART INSERT SHAPES
V – used for profiling, weakest
insert, 2 edges per side.
D – somewhat stronger, used for
profiling when the angle allows it,
2 edges per side.
T – commonly used for turning
because it has 3 edges per side.
C – popular insert because the
same holder can be used for
turning and facing. 2 edges per
side.
W – newest shape. Can turn and
face like the C, but 3 edges per
side.
S – Very strong, but mostly used
for chamfering because it won’t
cut a square shoulder. 4 edges
per side.
R – strongest insert but least
commonly used.
80. 8080
MACHINING CENTER CUTTINGMACHINING CENTER CUTTING
TOOLSTOOLS
Most machining centers
use some form of HSS or
carbide insert endmill as
the basic cutting tool.
Insert endmills cut many
times faster than HSS,
but the
HSS endmills leave a
better finish when side
cutting.
81. 8181
MACHINING CENTER CUTTINGMACHINING CENTER CUTTING
TOOLS (cont’d)TOOLS (cont’d)
Facemills flatten large
surfaces quickly and
with an excellent
finish. Notice the
engine block being
finished in one pass
with a large cutter.
82. 8282
MACHINING CENTER CUTTINGMACHINING CENTER CUTTING
TOOLS (cont’d)TOOLS (cont’d)
Ball endmills (both
HSS and insert) are
used for a variety of
profiling operations
such as the mold
shown in the picture.
Slitting and side
cutters are used when
deep, narrow slots
must be cut.
83. 8383
MACHINING CENTER CUTTINGMACHINING CENTER CUTTING
TOOLS (cont’d)TOOLS (cont’d)
Drills, Taps, and Reamers
Common HSS tools such as
drills, taps, and reamers are
commonly used on CNC
machining centers. Note that a
spot drill is used instead of a
centerdrill. Also, spiral point or
gun taps are used for through
holes and spiral flute for blind
holes. Rarely are hand taps
used on a machining center.
84. 8484
TOOL HOLDERSTOOL HOLDERS
All cutting tools must be held in a holder
that fits in the spindle. These include end
mill holders (shown), collet holders, face
mill adapters, etc. Most machines in the
USA use a CAT taper which is a modified
NST 30, 40, or 50 taper that uses a pull
stud and a groove in the flange. The
machine pulls on the pull stud to hold the
holder in the spindle, and the groove in
the flange gives the automatic tool
changer something to hold onto. HSK tool
holders were designed a number of years
ago as an improvement to CAT tapers,
but they are gaining acceptance slowly.
86. 8686
CNC PROGRAMMINGCNC PROGRAMMING
Offline programmingOffline programming linked to CAD programs.linked to CAD programs.
Conversational programmingConversational programming by the operator.by the operator.
MDIMDI ~ Manual Data Input.~ Manual Data Input.
Manual ControlManual Control using jog buttons or `electronicusing jog buttons or `electronic
handwheel'.handwheel'.
Word-Address CodingWord-Address Coding using standard G-codesusing standard G-codes
and M-codes.and M-codes.
87. 8787
During secondary motion, either the toolDuring secondary motion, either the tool
moves relative to the workpiece or themoves relative to the workpiece or the
workpiece moves relative to the tool. Inworkpiece moves relative to the tool. In
NC programming, it is always assumedNC programming, it is always assumed
that the tool moves relative to thethat the tool moves relative to the
workpiece no matter what the realworkpiece no matter what the real
situation is.situation is.
Basics of NC Part Programming:Basics of NC Part Programming:
88. 8888
The position of the tool is describedThe position of the tool is described
by using a Cartesian coordinateby using a Cartesian coordinate
system. If (0,0,0) position can besystem. If (0,0,0) position can be
described by the operator, then it isdescribed by the operator, then it is
calledcalled floating zerofloating zero..
89. 8989
In defining the motion of the toolIn defining the motion of the tool
from one point to another,from one point to another,
eithereither
absoluteabsolute positioningpositioning mode ormode or
incrementalincremental positioningpositioning modemode
can be used.can be used.
90. 9090
1.1. Absolute positioningAbsolute positioning. In this mode, the. In this mode, the
desired target position of the tool for adesired target position of the tool for a
particular move is given relative to the originparticular move is given relative to the origin
point of the program.point of the program.
2.2. Incremental positioningIncremental positioning. In this mode, the. In this mode, the
next target position for the tool is givennext target position for the tool is given
relative to the current toolrelative to the current tool position.position.
91. 9191
Structure of an NC Part Program:Structure of an NC Part Program:
Commands are input into the controller in
units called blocks or statements.
Block Format:
1. Fixed sequential format
2. Tab sequential format
3. Word address format
92. 9292
EXAMPLE:EXAMPLE:
Assume that a drilling operation is to be
programmed as:
1. The tool is positioned at (25.4,12.5,0) by a
rapid movement.
2. The tool is then advanced -10 mm in the z
direction at a feed rate of 500 mm/min., with the
flood coolant on.
3.The is then retracted back 10 mm at the rapid
feed rate, and the coolant is turned off.
94. 9494
Modal commandsModal commands: Commands issued in the: Commands issued in the
NC program that will stay in effect until it isNC program that will stay in effect until it is
changed by some other command, like, feedchanged by some other command, like, feed
rate selection, coolant selection, etc.rate selection, coolant selection, etc.
Nonmodal commandsNonmodal commands: Commands that are: Commands that are
effective only when issued and whoseeffective only when issued and whose
effects are lost for subsequent commands,effects are lost for subsequent commands,
like, a dwell command which instructs thelike, a dwell command which instructs the
tool to remain in a given configuration for atool to remain in a given configuration for a
given amount of time.given amount of time.
96. 9696
INFORMATION NEEDED by aINFORMATION NEEDED by a
CNCCNC
1. Preparatory Information: units, incremental or absolute
positioning
2. Coordinates: X,Y,Z, RX,RY,RZ
3. Machining Parameters: Feed rate and spindle speed
4. Coolant Control: On/Off, Flood, Mist
5. Tool Control: Tool and tool parameters
6. Cycle Functions: Type of action required
7. Miscellaneous Control: Spindle on/off, direction of
rotation, stops for part movement
This information is conveyed to the machine through a set
of instructions arranged in a desired sequence – Program.
97. 9797
BLOCK FORMATBLOCK FORMAT
Sample BlockSample Block
N135 G01 X1.0 Y1.0 Z0.125 F5
Restrictions on CNC blocks
Each may contain only one tool move
Each may contain any number of non-tool move G-
codes
Each may contain only one feedrate
Each may contain only one specified tool or spindle
speed
The block numbers should be sequential
Both the program start flag and the program number
must be independent of all other commands (on
separate lines)
The data within a block should follow the sequence
98. 9898
WORD-ADDRESS CODINGWORD-ADDRESS CODING
N5 G90 G20N5 G90 G20
N10 M06 T3N10 M06 T3
N15 M03 S1250N15 M03 S1250
N20 G00 X1 Y1N20 G00 X1 Y1
N25 Z0.1N25 Z0.1
N30 G01 Z-0.125 F5N30 G01 Z-0.125 F5
N35 X3 Y2 F10N35 X3 Y2 F10
N40 G00 Z1N40 G00 Z1
N45 X0 Y0N45 X0 Y0
N50 M05N50 M05
N55 M30N55 M30
Example CNC ProgramExample CNC Program
Each instruction to the machine
consists of a letter followed by a
number.
Each letter is associated with a
specific type of action or piece of
information needed by the machine.
Letters used in Codes
N,G,X,Y,Z,A,B,C,I,J,K,F,S,T,R,M
101. 101101
Modal G-CodesModal G-Codes
Most G-codes set theMost G-codes set the machine in amachine in a
“mode”“mode” which stays in effectwhich stays in effect until it isuntil it is
changed orchanged or cancelled by another Gcancelled by another G--code.code.
These commandsThese commands are called “modal”.are called “modal”.
103. 103103
M CodesM Codes
M00M00 Program stopProgram stop
M01M01 Optional program stopOptional program stop
M02M02 Program endProgram end
M03M03 Spindle on clockwiseSpindle on clockwise
M04M04 Spindle on counterclockwiseSpindle on counterclockwise
M05M05 Spindle stopSpindle stop
M06M06 Tool changeTool change
M08M08 Coolant onCoolant on
M09M09 Coolant offCoolant off
M10M10 Clamps onClamps on
M11M11 Clamps offClamps off
M30M30 Program stop, reset to startProgram stop, reset to start
104. 104104
N CodesN Codes
Gives anGives an identifying number for eachidentifying number for each blockblock
of information.of information.
It is generally good practice toIt is generally good practice to incrementincrement
each block number byeach block number by 5 or 10 to allow5 or 10 to allow
additionaladditional blocks to be inserted if futureblocks to be inserted if future
changes are required.changes are required.
105. 105105
X,Y, and Z CodesX,Y, and Z Codes
X, Y, and ZX, Y, and Z codes are used tocodes are used to specify thespecify the
coordinate axis.coordinate axis.
Number following the codeNumber following the code defines thedefines the
coordinate at the endcoordinate at the end of the move relativeof the move relative
to anto an incremental or absoluteincremental or absolute referencereference
point.point.
106. 106106
I,J, and K CodesI,J, and K Codes
I, J, and KI, J, and K codes are used tocodes are used to specify thespecify the
coordinate axiscoordinate axis when defining the centerwhen defining the center
of aof a circle.circle.
Number following the codeNumber following the code defines thedefines the
respective coordinaterespective coordinate for the center of thefor the center of the
circle.circle.
107. 107107
FF,,SS, and, and TT CodesCodes
F-codeF-code: used to specify the feed: used to specify the feed raterate
S-codeS-code: used to specify the: used to specify the spindle speedspindle speed
T-codeT-code: used to specify the tool: used to specify the tool
identification number associatedidentification number associated with thewith the
tool to be used intool to be used in subsequent operations.subsequent operations.
108. 108108
Application of Some CodesApplication of Some Codes
G01 Linear InterpolationG01 Linear Interpolation
Format: N_ G01 X_ Y_ Z_ F_Format: N_ G01 X_ Y_ Z_ F_
Linear Interpolation results in a straightLinear Interpolation results in a straight
line feedline feed move.move.
Unless tool compensation is used, theUnless tool compensation is used, the
coordinates arecoordinates are associated with theassociated with the
centerline of the tool.centerline of the tool.
109. 109109
Application of Some CodesApplication of Some Codes
G01 Linear InterpolationG01 Linear Interpolation
. As an example, for the motion that occurs in. As an example, for the motion that occurs in x-x-
y plane with the same maximum speed for the x-y plane with the same maximum speed for the x-
and y-axis, initial motion is at an angle of 45o toand y-axis, initial motion is at an angle of 45o to
the axes until motion in one ofthe axes until motion in one of
the axes is completed and then the balance ofthe axes is completed and then the balance of
the motion occurs in the other axis. This is calledthe motion occurs in the other axis. This is called
point-to-point motionpoint-to-point motion..
110. 110110
Application of Some CodesApplication of Some Codes
G01 Linear InterpolationG01 Linear Interpolation
G01 is another preparatory function to specify
that the tool should be moved to a specified
location along a straight line path. It is referred
to as linear interpolation.
This function is typically used to specify
machining of straight features such as turning
a cylindrical surface in turning, cutting a slot in
milling, etc.
111. 111111
Application of Some CodesApplication of Some Codes
G01 Linear InterpolationG01 Linear Interpolation
5
10
15
20
25
5 10 15 20 25 30
A
C
Linear interpolation from A to C
N10 G01 X30000 Y20000 F2500
112. 112112
N10N10 G00 X1G00 X1 ZZ11
NN115 Z0.15 Z0.1
NN2020 G01 Z-0.125 F5G01 Z-0.125 F5
NN2255 X2 Z2X2 Z2 F10F10
G01 Linear InterpolationG01 Linear Interpolation
X
Z
113. 113113
G02 Circular InterpolationG02 Circular Interpolation
G02 is also a preparatory function to specify thatG02 is also a preparatory function to specify that
the tool should be moved to a specified locationthe tool should be moved to a specified location
along a circular path in a clockwise direction. Inalong a circular path in a clockwise direction. In
order to specify the path to the MCU, the endorder to specify the path to the MCU, the end
point of the arc and the location of the center ofpoint of the arc and the location of the center of
the arc should be specified. Within the block inthe arc should be specified. Within the block in
which the G02 code is programmed, the centerwhich the G02 code is programmed, the center
of the arc is given by specifying its locationof the arc is given by specifying its location
relative to the start of the arc.relative to the start of the arc.
114. 114114
G02 Circular Interpolation (CW)G02 Circular Interpolation (CW)
The G02 commandThe G02 command requiresrequires
an endpoint and a radiusan endpoint and a radius inin
order to cut the arc.order to cut the arc.
I,J, and K are relativeI,J, and K are relative to theto the
start point.start point.
N_ G02 X2 Y1 I0 J-1 F10N_ G02 X2 Y1 I0 J-1 F10
oror
N_ G02 X2 Y1 R1N_ G02 X2 Y1 R1
115. 115115
G02 Circular Interpolation (CW)G02 Circular Interpolation (CW)
5
10
15
20
25
5 10 15 20 25 30
C
C
Circular interpolation from A to B
about a circle centered at C
N10 G02 X20000 Y10000
I5000 J15000 F2500
A
B
I=5
J=15
116. 116116
The sequence of some machining operations
is may be the same for any part and for any
machine. For example, drilling a hole involves
the following steps:
Position the tool above the point where the
hole will be drilled
Set the correct spindle speed
Feed the tool into the workpiece at a
controlled feed rate to a predetermined depth
Retract the tool at a rapid rate to just above
the point where the hole started
Canned Cycles
117. 117117
Some Commonly Used Canned Cycle
Code Function Down feed At bottom Retracti
on
G81 Drilling Continuous
feed
No action Rapid
G82 Spot face,
counterbore
Continuous
feed
Dwell Rapid
G83 Deep hole drilling Peck No action Rapid
G84 Tapping Continuous
feed
Reverse
spindle
Feed
rate
G85 Through boring(in
& out)
Continuous
feed
No action Feed
rate
G86 Through boring(in
only)
Continuous
feed
Stop
spindle
Rapid
119. 119119
Three Main parts of a CNCThree Main parts of a CNC
programprogram
N5 G90 G2N5 G90 G211 (Absolute units,(Absolute units, metricmetric))
N10 M06 T2N10 M06 T2 (Stop for tool change, use(Stop for tool change, use
tool # 2)tool # 2)
N15 M03 S1200N15 M03 S1200 (Turn the spindle on CW to(Turn the spindle on CW to
1200 rpm)1200 rpm)
Part 1- Program PetupPart 1- Program Petup
120. 120120
Three Main parts of a CNCThree Main parts of a CNC
programprogram
N20 G00 X1 Y1N20 G00 X1 Y1 (Rapid to X1,Y1 from origin(Rapid to X1,Y1 from origin
point)point)
N25 Z0.125N25 Z0.125 (Rapid down to Z0.125)(Rapid down to Z0.125)
N30 G01 Z-0.125 FN30 G01 Z-0.125 F100100 (Feed down to Z-0.125 at(Feed down to Z-0.125 at
100 mm/100 mm/mminin))
N35 G01 X2 Y2N35 G01 X2 Y2 (Feed diagonally to X2,Y2)(Feed diagonally to X2,Y2)
N40 G00 Z1N40 G00 Z1 (Rapid up to Z1)(Rapid up to Z1)
N45 X0 Y0N45 X0 Y0 (Rapid to X0,Y0)(Rapid to X0,Y0)
Part 2- Chip RemovalPart 2- Chip Removal
121. 121121
Three Main parts of a CNCThree Main parts of a CNC
programprogram
N50 M05N50 M05 (Turn the spindle off)(Turn the spindle off)
N55 MN55 M0000 ((PProgramrogram stopstop))
Part 3- System ShutdownPart 3- System Shutdown
123. 123123
G-CODE PROGRAMG-CODE PROGRAM
First pass : conventional mill to
a depth of 0.125 around edge
profile. Tool 1 is a ½ inch dia.
end mill.
%
:1002
N5 G90 G20
N10 M06 T1
N15 M03 S1200
N20 G00 X0.125 Y0.125
N30 Z0.125
N35 G01 Z-0.125 F5
N40 X3.875
N45 Y4.125
N50 X0.125
N55 Y0.125
124. 124124
Second pass:
conventional mill to a
depth of 0.25 around
edge profile.
N35 Z-0.250
N40 X3.875
N45 Y4.125
N50 X0.125
N55 Y0.125
N60 Z0.125
125. 125125
Third pass:
conventional mill to a
depth of 0.125 around
pocket profile.
N65 G00 X1.25 Y1.0
N70 G01 Z-0.125 F5
N75 X1.75
N80 Y2.5
N85 X1.25
N90 Y1.0
N95 Z0.125
126. 126126
Fourth pass: climb
mill to a depth of
0.125 across
remaining material.
N100 Y2.125
N105 X2.625
N110 Z0.125
N115 G00 X-5 Y-5 Z5
N120 M05
N125 M30
127. 127127
Advanced features:Advanced features:
Execution of the part of the program in aExecution of the part of the program in a
rotated or mirrored position.rotated or mirrored position.
Ability to scale the program and produceAbility to scale the program and produce
larger or smaller programs.larger or smaller programs.
Three dimensional circular interpolationThree dimensional circular interpolation
which produces a helical shape.which produces a helical shape.
Parabolic and cubic interpolation.Parabolic and cubic interpolation.
128. 128128
Program Loading:
Through keyboard
Through punched tape reader
Through diskette drive
Through RS 232 serial port
Through network interface card
129. 129129
A system in which a central computer
downloads the NC programs block by block
to many NC machine tools simultaneously is
called Direct Numerical Control (DNC)
system.
Direct Numerical Control (DNC):
130. 130130
This system used to work with the early NC
machine tools which can not read more than a
block of information at a time. The central
computer feed the program information one
block at a time. When the machine execute the
information, the next block of information would
be fed.
Direct Numerical Control (DNC):
131. 131131
Distributed NC is known by the same acronymDistributed NC is known by the same acronym
as Direct Numerical Control (DNC). After theas Direct Numerical Control (DNC). After the
introduction of CNC, the machine tools haveintroduction of CNC, the machine tools have
had the capability of storing large amount ofhad the capability of storing large amount of
information. Therefore, there have been noinformation. Therefore, there have been no
need to have drip feed information system, like,need to have drip feed information system, like,
Direct Numerical Control. Instead, DistributedDirect Numerical Control. Instead, Distributed
Numerical Control is introduced. In such aNumerical Control is introduced. In such a
system, a host computer communicate withsystem, a host computer communicate with
many CNC machine tools via networks andmany CNC machine tools via networks and
download or upload programs.download or upload programs.
Distributed Numerical Control (DNC):
132. 132132
With Distributed Numerical Control systems, itWith Distributed Numerical Control systems, it
is possible to monitor the activities in individualis possible to monitor the activities in individual
CNC machine tools on host computer.CNC machine tools on host computer.
Therefore, better shop floor control can beTherefore, better shop floor control can be
achieved.achieved.
Distributed Numerical Control (DNC):
133. 133133
NC program preparation may be tedious andNC program preparation may be tedious and
difficult if the part to be machined has adifficult if the part to be machined has a
complex geometry. The main difficulty is to findcomplex geometry. The main difficulty is to find
out the cutter locations during the machining.out the cutter locations during the machining.
Computers may be used to assist theComputers may be used to assist the
programmers in preparing the NC codes.programmers in preparing the NC codes.
Computer Aided Part Programming:
134. 134134
Advantages of applying computer-aided partAdvantages of applying computer-aided part
programming include the following:programming include the following:
1. It reduces the manual calculations1. It reduces the manual calculations
involves in determining the geometricinvolves in determining the geometric
characteristics of the part.characteristics of the part.
It provides the cutter path simulation.It provides the cutter path simulation.
It provides tool collision checking.It provides tool collision checking.
It shortens the program preparation time.It shortens the program preparation time.
It makes the program preparation easier.It makes the program preparation easier.
135. 135135
The Aerospace Industries AssociationThe Aerospace Industries Association
sponsored the work that led to the first partsponsored the work that led to the first part
programming language, developed in MIT inprogramming language, developed in MIT in
1955.1955.
This was called:This was called: Automatically ProgrammedAutomatically Programmed
ToolsTools (APT).(APT).
APT is an English like simple programmingAPT is an English like simple programming
language which basically produce thelanguage which basically produce the CutterCutter
LocationLocation (CL) data.(CL) data.
Using the cutter location data, the program canUsing the cutter location data, the program can
generate the actual NC codes by using agenerate the actual NC codes by using a
postprocessor .postprocessor .
136. 136136
The output of any CAD package include theThe output of any CAD package include the
geometric data of the part to be machined.geometric data of the part to be machined.
Therefore, many CAD/CAM package canTherefore, many CAD/CAM package can
produce cutter location (CL) data to be used forproduce cutter location (CL) data to be used for
NC code generation.NC code generation.
There is still to be a process planning moduleThere is still to be a process planning module
for a workable NC code generation.for a workable NC code generation.
Some of the CAD/CAM packages that have theSome of the CAD/CAM packages that have the
NC code generation capabilities areNC code generation capabilities are
Computervision, CATIA, CADAM, ProEngineer,Computervision, CATIA, CADAM, ProEngineer,
MechanicalDesktop (Auto Desk).MechanicalDesktop (Auto Desk).
CAD/CAM Based Part Programming:CAD/CAM Based Part Programming: