1.Inheductiom.
to CNC Progparpming
OCm TY hea o 13
1.0 INTRODUCTION
CNC machines are those machines, which operate by a special way of
instructions in the form of combinations of numbers and codes.
Successful manufacturers are constantly trying to find a better way to
supply their goods to the market or to open new markets with high quality,
improved and more useful products to be solid at a reasonable cost.
Conventional methods of manufacturing are being replaced by more
modern methods, machines and machine tool adoption of advanced cutting tools,
technique to products in less time and lower
Generally, metal working industries have found that automation can
assist them in reaching these goals. One of the most recent and fastest growingg
methods of automating machine tools is called NC/ CNC.
CNC is today's most dynamic manufacturing process. It has gained new
and enormous grounds during the quarter century of its development and
consolidation. Today we are in the eye for future, it is no more the qucstion of
to NC or not NC", but what type of NC/CNC to meet the manufacturing needs
have tomorrow and the day after.
NC machines are essentially production centers and bring in their fold
the advantages of multi-operations in single setting. The number of setups and
the movement of the job from one machine to other and one floor to other for
completion on conventional machines are eliminatedminimized when NC
machines are used. The non-cutting time of NC machine results in increased to a
bare minimum of 25 to 35%. Thus increasing the effective utilization on NC
machine results in increased output and reduced cost per piece. Hence it can be
stated that the automation is brought to low batch production by application
adoption of NC.
2
1.I TYPES OF CNC
CNC(COMPUTERISED NUMERICAL CONTROL)
MEMORY
TAPE MICRO SERVO MACHINE
READER PROCESSOR DRIVE TOOL
DNC(DIRECT/DISTRIBUTED NUMERICAL CONTROL)
MASS
MEMORY
STORAGE
CONTROL SERVO MACHINE
UNIT DRIVE TOOL
Date
COMPUTER CONTROL SERVO MACHINE
UNIT DRIVE TOOL
Input
CONTROL SERVO MACHINE
UNIT DRIVE TooL TOOL
3
1.2 ADVANTAGES OF CNC
Drastic reduction in over all lead-time.
Increased ability to handle complete part configurations.
Reduction in indirect labor cost.
Ease of incorporation of design changes.
Programming reliability.
Less drudgery in tape preparation.
Increased efficiency.
CNC system includes 3 sub-systems viz input/ output, path
calculator, axis controller and common data memory. Each sub-system has a
microcomputer, which controls the sub-systems as per the stored program.
The common data memory, which is essentially part of each sub-system,
serves as the communication link between the sub-systems, transfer data to
another. The first stores the data in a prescribed location in the common data
memory, and the second needs the data from that address with all such
operations synchronized by control signals provided by the common data
memory.
The CNC control may be very simple with only storage capacity of
20 or 40 meters of tape information or may have al features like the
following:
1.2.1 MEMORY STORAGE
Ability to run the tape and put it into memory, from the computer
instead of from the tape. Storage capacity varies from 15 meters to 2i0
meters to tape length or I mb to 2 mb. The programme can be stored more
than once. After loading the programme, tlhis eliminates any further use of
the tape, results in saving on maintenance of tape reader, information comes
much faster from the computer. This also results in lot of time saving
because of slow tape reading.
1.2.2 EDIT
Ability to edit or design the tape right at the machine. This is one of
expensive addition but results in greatest saving. Once the programme is in
the CNC, changes can be made in the computer's memory without referring
to tape. These changes may be to correct location, error in X, Y and Z axis
or may be to optimize speeds and feeds or tool path.
1.2.3 CRT (CATHODE RAY TUBE)
This is a display screen. Words and numbers appear on this screen,
often in green color letters or words. With CRT there is a keyboard, usually
can be locked in somne
alphanumeric for manual data input. This keyboard
make changes in the programme.
CNCs, so that only authorized persons can
1.2.4 CORRECTED TAPE
After all debugging, it is possible to produce a corrected tape. This
is done by a separate unit, optimal at extra cost that is plugged into the CNC.
1.2.5 DIAGNOSTICs
This refers to the trouble shooting when CNC goes out of order. It
takes more time to locate the trouble and a very shot time to fix it up. A
special diagnostic tape checks many different parts or on a CRT or on
separate oscilloscope indicates when the trouble is found. Even by a special
telephone unit the CNC can be connected directly to the manufacturer's
service department, who will carry out a variety of tests and will be able to
locate the faculty and rectify it. Other facilities includes inch metric
conversion/ tool offsets, mm / rpm, mm/ min feed rate speed override and
ISO/EIA coding axis inversions,
canned cycles
etc.
1.3 WORK
OFF SET
The distance between the machine zero and the
job zero. Job
zero can be taken from one of the
job on from the center of the job may
be continuous.
ZERO OFFSE T
1.4 TOOL OFF SET
point of the and the tip of
The distance between the reference turret
the tool.
TOCL
CFFSE
3.0 PART PROGRAMMING
Programming any numerically controlled machine is simply a
means of "telling" the machine components what to do and how to do it. For
instance, on a table machine, such as a boring machine or a milling machine,
the program "tells" the table which direction to travel to reach a desired
point, turns the spindle on, tells it how fast to rotate and in which direction
sets its feeds, etc.
This intelligence or "command data" is transmitted to the machine
by a numerical control. This machine control may be a separate place of
hardware standing next to the machine or it can be integral part of it.
Several programs for many operations on different work pieces can
be stored at the same time is the "MEMORY" and then recalled at ran-dam
for operation of the nachine.
10
A group of commands given to the CNC for operating the machine
is called the program. By specifying the commands the tool is moved along
a straight line or the spindle motor is turned ON and OFF. In the program,
specify the commands in the sequence of actual tool movements.
BLOCK
BLOCK
BLOCK 00L MOVEMENT
BLOCK SEQUENCE
BLOCK
A group of commands at each set of the sequence is called the
BIOCK". The program consists of a group of blocks for series of
machining. The number of the discrimination each block is called the
sequence number. And the number for discriminating each programe
number.
3.1 BLOCK CONFIGURATION
NO00 GO0 X00.0 Y00.0 M00 S00 TO0
END OF BLOCK
TOOL FUNCTION
SPINDLE FUNCTION
MISC. FUNCTION
DIMENTION WORD
PREPARATORY FUN.
SEQUENCE NO.
11
Normally, a program number is specified after end of block (;) code
OR M30) is
at the beginning of the program and a program end code (M02
specified at the end of the program.
separately one after
Axis can be controlled simultaneously or
another. All the aces cannot be controlled simultaneously. In CNC lathe,
there are two axes "X" and "Z" and they can be controlled simultaneously or
separately. All CNC milling machine have 3 axes and they ban be controlled
In machine center or in other 4 axes machine, 3 axes can be
simultaneously.
controlled simultaneously and 4" axis can be controlled separately.
Spindle axis is always called "2" axis. Traverse axis is called "X"
and "Y". All the "X", "y" AND "z" axes are mutually perpendicular.
Y
12
3.1.1 BLOCK
The program consists of some words and unit of command is called
BLOCK. The block is punctuated with E.0.B. (End of Block).
0 1001; 13 block % 1001
G28 G91 Zo; 2 block DO LF block
G53 GO0 X70 Z125 LF 2hd block
G00 X70 M08, "n" block
GOO X70 M08 LF "n" block
3.1.2 WORD AND ADDRESS
There is a word as element of a block. The word consists of the
address and some subsequent digit number as shown below:
X 90.5
ADDRESs NUMBERS
WORD
The address is indicated as
alphabet and determines the meaning of
the subsequent number.
13
3.2 SINUMERIK CONTROL
Programming Structure
The NC program is a sequence of program blocks which are
stored in the Control. With machining of the work pieces these blocks will
be read and checked by the control in the programmed order. The
corresponding control signal will be send to machine.
NC Program consists of:
Program Number
Blocks
Words
Addresses
%1000
Addresses NO100 G01 X50 Z-50 FO.1
Program Number 1-9999
Subroutine Number 1 -9999
N Block Number I 9999 -
G Path Function
M Miscellaneous Function
B Radius
Tool Offset
Feed
I, K Circular Parameters, Thread Pitch
P
No. of Passes, Scale Factor
R |Parameter for Cycles
|Spindle Speed, Cutting Speed
Tool Call
X.7 |Position Data
LF Block End
14
DESCRIPTION OF "G" COMMANDS
(PREPARATORY FUNCTIONS)
COMMANDS FORMAT
G00 Positioning (Rapid Traverse) -N... GO0 X... Z...
GO1 Linear Interpolation N..GO1 X... Z. FB... F..
G02 Circular Interpolation Clockwise N... G02 X... Z...
N... G02 X... Z... I... K... F...
GO3 X... Z.. B... F..
GO3 Circular Interpolation Counter N...
N... GO3 X... Z... I... K... F.
Clockwise
G04 Dwell -N.. G04 X...
G33 Thread Cutting N... G33 X... Z... /K..
I- Thread Pitch X direction
(Longitudinal)
K-Thread Pitch in Z direction
(Face)
G40 Cancel Cutter Radius -N... G40
Compensation
G41 Cutter Radius Compensation left -N... G41
N... G42
G42 Cutter Radius Compensation
Right N... G50
G50 Cancel Scale Modification
G51 Scale Modification -N. GS1 X... Z. P...
G53 Cancel Zero Offset
G54-G57 Zero Offset 1-4
GS8&G59 Programmable offset
G70 Measuringin Inches -N... G70
G71 | Measuringin Millimeter N.. G71
- N... G90
Speci G90 Absolute Programming
-N... G391
G91 Incremental Programming
G92Spindle Speed Limit N.. G92 S...
G94 Feed Per Minute
G95 Feed per Revolution
-N... G96 S...
G96 Constant Cutting Speed
G97 Constant Spindle Speed -N. G97 S...
Ca Ikefwn tu zu hn Pent
15
DESCRIPTION OF "M" COMMANDS
COMMANDS
MO00 |ProgrammedStop Unconditional
M01 Programmed Stop Conditional
M02 -Main Programme End
M03 Main Spindle ON Clockwise
M04 Main Spindle ON Counterclockwise
M05 Main Spindle OFF
M08 Coolant ON
M09 Coolant OFF
M17 Subroutine End
M30 - | Main Programme End
3.2.1 TURNING CENTRE
DESCRIPTION OF CYCLES
will be programmed in the program in a manner, that first R
Cycles
Parameters will be written into program and then cycle call with the number
of program runs.
L95-STOCK REMOVEL CYCLE
Machining can be programmed longitudinal, on face, inside,
subroutine.
outside The contour draft has to be described in a
.Programmingthe Parameters
R20 Subroutine Number
Start Point of the Contour in X
R21
Start Point ot tiie Contotr in
R22
Finishing Alno 20e in Y
16
R25 Finishing Allowance in Z
R26 Roughing Depth
R27 Cutter Radius Compensation
R28 Feed
R29 Machining Procedure
L97- THREAD CUTTING CYCLE
Longitudinal, Face, Inside, Outside threads can be programmed.
R20 Thread Pitch
R21 Start Point of the Thread in X
R22 Start Point of the Thread in Z
R23 Number of Idle Cuts
R24 Thread Depth
R25 Finishing Allowance
R26 Run-in
R27 Run-out
R28 Number of Roughing Cuts
R29 In-feed Angle (Half Flank Angle)
R31 End Point of Thread in X
R32 End Point of Thread in Z
17
3.2.2 MILLING MACHINE
DESCRIPTION OF CYCLE
L82 DRILLING CYCLE
Parameters
R02 Reference Plane
Final Depth of Cut
R03
R04 Dwell
RI0 Retraction Plane
FORMAT
L82 P... LF
N... R02-... R03=... R04=... R10=...
L903 RECTANGULAR POCKET
RO1 In-feed Depth
R02 Reference Plane
R03 Pocket Depth
R12 Pocket Length
R13 Pocket Width
RI5 Feed-rate in X, Y direction
R16 Feed-rate in Z direction
R22 Center Point of the Pocket (Horizontal)
R23 Center Point of the Pocket (Vertical)
Corner Radius of the Pocket
R24
18
L930- CIRCULAR POCKET
R01 In-feed Depth
R02 Reference Plane
R03 Pocket Depth
R06 Milling Direction (02/03)
Ri5 Feed-rate in X, Y direction
R16 Feed-rate in Z direction
R22 Center Point of the Pocket (Horizontal)
R23 Center Point of the Pocket (Vertical)
R24 Radius of the Pocket
3.3 FANUC CONTROL
Programming Structure for V M C(Vertical Milling Center)
The NC program is a sequence of program blocks, which are stored
in the Control. With machining of the work pieces these blocks will be read
and checked by the control in the pregrammed order. The corresponding
control signal will be send to machine.
NC Program consists of
Program Number
Blocks
Words
Addresses
19
% PROGRAM START
09999 LF- PROGRAM NO.
NO100 GO1 X20 Z-20 FO.1 LF
PROGRAM SECTION
N0200 M30 LF
Addresses
O Program Number 1 - 9999
N Block Number 1 -9999
G Path Function
M Miscellaneous Function
LF Block End
n.
M Cqcle
DESCRIPTION OF "G" COMMANDS
(PREPARATORY FUNCTIONS)
COMMANDS FORMAT
3Sbelth
GOO Positioning (Rapid Traverse) N...G00 X...Y... Z.
GO1 Linear Interpolation N...GO1 X...) Z... F...
G02 Circular Interpolation Clockwise N...G02 X...Y... R... F..
N...G02 X... Y... I.. J... F..
G03 CircularInterpolationCounter N...G03 X...Y... R... F...
Clockwise N...G03 X..Y... ...K... F
G04 Dwell
G17 X Y Plane
G18 ZX Plane
G19 Y Z Plane
G20 Input in Inch
G21 Input in MM
G28 Return to Reference Position
20
| G40 Cancel Cutter Radius Compensation
|G41 Cutter Radius Compensation Left
G42 Cutter Radius Compensation Right
G50 Cancel Scale Modification N...G50
G51 Scale Modification N...G51 X... Z... P...
| G54-G59-Zero Offset
G80 Canned Cycle Cancel
G83 Drilling Cycle N... X..Y... R... Q... F..
G90 Absolute Programming N...G90
G91 Incremental Programming N...G91
G94 Feed Per Minute
G95 Feed Per Revolution
DESCRIPTION OF "M" COMMANDS
CODES DESCRIPTION
M00 |Programmed Stop Unconditional
MO1 Programmed Stop ConditionalL
M02 Program End
M03 Main Spindle "On" Clockwise
M04 Main Spindle "On" Counterclockwise
MO5 Main Spindle "Off"
M06 Tool Change
M08 Coolant On
M09 Coolant Off
M19 Spindle Oriented M30 Main Program End
CANNED CYCLES
CODES DESCRIPTION FORMAT
G90 DIAMETER CUTTING G90 X(U).... Z(W)... F....
CYCLE
G92 THREAD CUTTING G92 X(U).... Z(W).... F....;
CYCLE LEAD (L) SPECIFEÐ
G94 END FACE TURNING G94 X(U).... Z(W).... F....
CYCLE
G71 STOCK REMOVEL 21
G71 U d) R(e)
CYCLE IN TURNING G71 Pns) Q(nf) W w) F() S(s)
T() NN(ns)..
N (nf)...
Ad Depth of cut (radius
designation)
: Escaping amount
ns Sequence number of the first
block for the program of
finishing shape
nf Sequence number of the last
block for the program of
finishing shape
Au Distance and direction of
finishing allowance in X
direction
Aw Distance and direction of
finishing allowance in Z
G72 STOCK REMOVEL IN direction
G72 W d) R(e)
FACING G72 P(ns) Qnf) U( u) W w)
F) S($) T() N (ns).
N (nf)....
Ad Depth of cut (radius
designation)
e
Escaping amount
ns
Sequence number of the first
block for the program of
finishing shape
nf:Sequence number of the last
block for the program of
finishing shape
Au : Distance and direction of
finishing allowance in X
direction
Aw Distance and direction of
finishing allowance in Z
direction.
22
G76 MULTIPLE THREAD G76 P(m) Oa) Q( dmin) R(d)
CUTTING CYCLE |G76 X(u)... Z(w).... R() P(k)
Q(Ad) F(L)
m Repetitive count in finishing
(Ito 99)
r :Chamferingamount
a Angle of Tool Tip
Ad Minimum cutting depth
d Finishing allowance
: Taper value command with
radius amount, IfI = 0,
ordinary straight thread
cutting.
K :Height of Thread
1s Depth of cut
Ad
L : Lead of thread
G70 FINISHING CYCLE G70 P(ns) Q(nf)
(After rough cutting by G71 ns : Sequence number of first
and G72 the G70 command block for the program of
permits finishing) finishing shape
nf Sequence number of last
block for the program ol
finishingshape
G83 DRILLING CYCLE G83 X.. Y.. R... Q... F..
X, Y: Hole Position Data
Z The distance from point R to
the Bottom of the Hole
R The distance from the Initial
level to the R Level
Q Depth of Cut
F Feed Rate
23
3.4 TRIAC (ATC) CNC MILLING MACHINE
O PERPARATORY FUNCTIONS AND ITS FORMAT:
GO0 Linear Rapid Traverse
N.. X..
N... Y.
N... Z...
N... X.. Y...
N... X.. Y... Z...
GO1 Linear Interpolation
To move the tool in a straight line that is parallel to an axis or at
an angle to an axis.
N... GO1 X... F.
N... GO1 Y... F..
N... G01 Z... F...
N... G01 X... Y... F..
N. GO1 X... Y... Z.. . F...
G02 CIRCULAR INTERPOLATION CLW
To move the tool in circular arc while moving in clockwise
direction for X and Y axis.
N.. G02 X... Y.. F.. Xc... Yc..
N... G02 Arc.. Xc... Yc... F...
GO3 CIRCULAR INTERPOLATION CCLW
To the tool in circular arc while moving
move
in counter
clockwise direction for X and Y axis.
N.. G03 X... Y.. F.. Xc... Yc..
N. GO3 Arc.. Xc... Yc... F..