Download as ppt, pdf, or txt
Download as ppt, pdf, or txt
You are on page 1of 31

November 2, 2023

CAD/CAM/CIM– (MAT-613)

UNIT - TWO
NC PROGRAMMING

1
By : Yemane Z. (PhD)

Manufacturing Technology Department


2. NC Programming

 Numerical Control (NC):- is defined as the form of


programmable automation, in which the process is
controlled by the number, letters, and symbols.
 A System in Which actions are controlled by the direct
insertion of Numerical data at some points
 Automatically controlling a machine tool based on a set
of pre-programmed machining and movement
instructions is known as numerical control, or NC.
 Numerical control of machine tools - a method of
automation in which various functions of machine tools
are controlled by numbers, letters, and symbols.
 Basically a NC machine runs on a program fed to it. 2
 The program consists of precise instructions about the
methodology of manufacture as well as movements.
 For example, what tool is to be used, at what speed, at
what feed and to move from which point to which point
in what path.
 Since the program is the controlling point for product
manufacture, the machine becomes versatile and can be
used for any part.
 All the functions of a NC machine tool are therefore
controlled electronically, hydraulically or pneumatically.

3
2.1Concept of numerical control
 Formerly, Decisions concerning the efficient and correct
use of the machine tool, was depended on the
craftsmanship, knowledge and skill of the machinist
himself.
 Modern precision manufacturing demands extreme
dimensional accuracy and surface finish.
 Such performance is very difficult to achieve manually
even with expert operators.
 It is rare that two expert operators produced identical
parts using identical procedure and identical judgment of
speeds, feeds and tooling.
 A numerical control, or “NC”, system controls many
4
machine functions and movements which were
traditionally performed by skilled machinists.
 Numerical control developed out of the need to meet the
requirements of high production rates, uniformity and
consistent part quality.
 Process planners and programmers have now the
responsibilities for these matters.
 It must be understood that NC does not alter the
capabilities of the machine tool.
 With NC the correct and most efficient use of a machine
no longer rests with the operator.
 The advantage is idle time is reduced and the actual
utilization rate is much higher (compresses into one or
two years that a conventional machine receives in ten
years). 5
Cont...

 Advantages of NC machine tools:

Reduced lead time Flexibility in changes of


Elimination of operator component design
errors Reduced inspection
Operator activity Reduced scrap
Lower labor cost Accurate costing and
Smaller batches scheduling
Longer tool life
Elimination of special
jigs and fixtures

6
 The major limitations of NC are:-
 The relatively high initial cost of the equipment,
 The need and cost for programming and computer time,
and
 The special maintenance required.
 Because these machines are complex systems,
breakdowns can be costly, so preventive maintenance is
essential.

7
2.2 Cartesian coordinate system

 Almost everything that can be produced on a


conventional machine tool can be produced on a CNC
machine tool, with its many advantages.
 The machine tool movements used in producing a
product are of two basic types: point-to-point (straight-
line movements) and continuous path (contouring
movements).
 CNC systems rely heavily on the use of rectangular
coordinates because the programmer can locate every
point on a job precisely.

8
Fig. The three-dimensional coordinate planes (axes) used in CNC.
 In CNC programming it is not necessary to indicate plus
(+) values since these are assumed. However, the minus (-)
values must be indicated.
For example, the locations of both A and
B would be indicated as follows:

A=> X2.0 Y2.0


B=> X1.0 Y-2.0
9
2.2 Machines Using CNC
 Early machine tools were designed so that the operator
was standing in front of the machine while operating the
controls.
 This design is no longer necessary, since in CNC the
operator no longer controls the machine tool movements.
 On conventional machine tools, only about 20 percent of
the time was spent removing material.
 With the addition of electronic controls, actual time spent
removing metal has increased to 80 percent and even
higher.
 It has also reduced the amount of time required to bring
the cutting tool into each machining position.
10
Machines using CNC:- Lathe, Milling Machine, Punching,
WEDM, Grinding, Hobbing, 3D printing …
2.3 Programming fundamentals

 Machining involves an important aspect of relative


movement between cutting tool and workpiece.
 In machine tools this is accomplished by either moving
the tool with respect to workpiece or vice versa.
 In order to define relative motion of two objects,
reference directions are required to be defined.
 These reference directions depend on type of machine
tool and are defined by considering an imaginary
coordinate system on the machine tool.
 A program defining motion of tool / workpiece in this
coordinate system is known as a part program.
11
 Reference Point:- Part programming requires
establishment of some reference points.
 Three reference points are either set by manufacturer or
user.
a) Machine Origin
b) Program Origin
c) Part Origin

 CNC Code Syntax:- The CNC machine uses a set of rules


to enter, edit, receive and output data.
 These rules are known as CNC Syntax, Programming
format. The format specifies the order and arrangement
12
of information entered.
 The most common CNC format is
the word address format.

2.4 Programming Systems


 NC (Numerical Control) machine tools require a set of
command data in order to operate. The job of creating the
data is called ‘programming’.
 All CNC machining begins with a part program, which is a
sequential instructions or coded commands that direct the
specific machine functions.
 The part program may be manually generated or, more13
commonly, generated by computer aided part programming
systems.
 Manual programming: - is a direct programming
method of manual planning and manual calculations by
programmers.
 Automatic programming: - In this case, the NC data is
automatically generated, without any manual
calculation, by inputting workpiece drawings into the
computer system.
 Two types of programming modes, the incremental
system and the absolute system, are used for CNC.

14
 Both systems have applications in CNC programming, and
no system is either right or wrong all the time.
 Most controls on machine tools today are capable of
handling either incremental or absolute programming.

 In incremental programming, the G91 command indicates to


the computer and MCU (Machine Control Unit) that
programming is in the incremental mode.
 Absolute program locations G90 command are always given
from a single fixed zero or origin point. 15
 CNC positioning systems (Point-to-Point or Continuous
Path)

 Interpolation:- The method by which contouring machine


tools move from one programmed point to the next is called
interpolation.
 There are five methods of interpolation: linear, circular,
helical, parabolic, and cubic.
 Linear Interpolation consists of any programmed points
linked together by straight lines, whether the points are close
16
together or far apart.
 Programming Function Address Meaning
Program number O Program number
Format:- Every Sequence number N Sequence number

program for any part Preparatory function G


Selection of traveling mode
(linear, circular, etc…)
to be machined must X,Y,Z Axis travel command
be put in a format A,B,C,U,V,W
Additional axis travel

that the machine Dimensional words


R
command
Arc radius
control unit can I,J,K Arc center coordinate

understand. Feedrate F Specifying feedrate


Specifying Spindle rotation
Spindle function S
 The format used on speed
Tool function T Specifying tool number
any CNC machine is Miscellaneous On/Off control for machine
M
built in by the function function
Offset number H,D Specifying Offset number
machine tool builder Dwell P,X Specifying dwelling time

and is based on the Program number


P
Specifying subprogram
command number
type of control unit Specifying number of
on the machine. Number of Repeats L 17or
repeats of subprogram
canned cycle
 Word Address Format => Parameter P,Q,R Parameter for canned cycle
 Each letter address relates to a specific machine function.
“G” and “M” letter addresses are two of the most common.
 A “G” letter specifies certain machine preparations such
as inch or metric modes, or absolutes versus incremental
modes.
 A “M” letter specifies miscellaneous machine functions and
work like on/off switches for coolant flow, tool changing, or
spindle rotation.
 Other letter addresses are used to direct a wide variety of
other machine commands.

18
 Codes:- The most Grou Code Function
p
common codes used 01 G00 Rapid positioning
when programming 01 G01 Linear interpolation

CNC machines tools 01 G02 Circular interpolation clockwise (CW)


01 G03 Circular interpolation counterclockwise
are G-codes (CCW)
(preparatory 06 G20* Inch input (in.)
06 G21* Metric input (mm)
functions), and M G24 Radius programming (**)
codes (miscellaneous 00 G28 Return to reference point
00 G29 Return from reference point
functions). G32 Thread cutting (**)
07 G40 Cutter compensation cancel
 Other codes such as F, 07 G41 Cutter compensation left
S, D, and T are used 07 G42 Cutter compensation right

for machine functions 08 G43 Tool length compensation positive (+)


direction
such as feed, speed, 08 G44 Tool length compensation minus (-) direction
cutter diameter offset, 08 G49 Tool length compensation cancel
G84 Canned turning cycle (**)
tool number, etc. 03 G90 Absolute programming
19

03 G91 Incremental programming


 Important M codes
M00 - Program stop
M01 - Optional program stop
M02 - Program end
M03 - Spindle on clockwise
M04 - Spindle on counterclockwise
M05 - Spindle stop
M06 - Tool change
M08 - Coolant on
M09 - Coolant off
M10 - Clamps on
M11 - Clamps off
M30 - Program stop, reset to start 20
 Modal codes and non modal codes/
 Modal functions
 Modal functions stay active until some other command
changes it. Modal commands are arranged in sets called
“modal groups”, and only one member of a modal group
may be in forces at any given time.
Non-modal functions
Non-modal functions have effect only on the lines on which
they occur.

21
 Different ways of data input are :
 MDI : Manual Data Input
 Program preparation with CAD CAM
 Program data transfer from pc to CNC M/C
 Program data transfer from pc to DNC operations 22
Block of Information
 CNC information is generally programmed in blocks of
five words. If five complete words are not included in each
block, the machine control unit (MCU) will not recognize
the information; therefore the control unit will not be
activated.

 Before starting to program a job, it is important to become


familiar with the part to be produced.
 From the engineering drawings, the programmer should be
23
capable of planning the machining sequences required to
produce the part.
Fig. The first step in
producing a CNC
program is to take the
information from the
print and produce a
program manuscript.

24
25

NUMERICAL
DATA
(NC CODE)

NUMERICAL
MANUFACTURING CONTROLLER
OPERATOR
Drive Control

PROCESSED
PART

MACHINE UNIT
25
 Important things to know:
 Coordinate System
 Units, incremental or absolute positioning
 Coordinates: X,Y,Z, RX,RY,RZ
 Feed rate and spindle speed
 Coolant Control: On/Off, Flood, Mist
 Tool Control: Tool and tool parameters

26
 CNC Programming Hints - MILLING
 Machine reference point (maximum travel of machine)
 Machine X Y zero point (could be tool change point)
 Part X Y zero point (programming start point)
 Indicates the tool change position.
For a program to run on a machine, it must contain the following
codes:
M03 - To start the spindle/cutter revolving.
Sxxx - The spindle speed code to set the r/min.
Fxx - The feed rate code to move the cutting tool or workpiece
to the desired position.
ANGLES: The X Y coordinates of the start point and end point
of the angular surface plus a feed rate (F) are required.
Z.100 is the recommended retract distance above the work 27
surface before a rapid move (G00) is made to another location.
 CNC Programming Hints - TURNING
 Indicates the X Z 0 (zero) location which is the starting point
for programming.
 Indicates the tool-change position.
For a program to run on a machine, it must contain the following
codes:
M03 - To start the spindle/cutter revolving.
Sxxx - The spindle speed code to set the r/min.
Fxx - The feedrate code to move the cutting tool or workpiece to
the desired position.
Z moves the cutting tool longitudinally away from the end of the
workpiece.
Z- moves the cutting tool along the length of the workpiece
towards the chuck (headstock).
X moves the cutting tool away from the work diameter. 28
X- moves the cutting tool into the work diameter.
Cont...

 Example
The following is a Simple program sample (for CNC Milling)
Start from the zero point , turn clockwise and return to zero.
The start position is 100mm above the top of the workpiece
and the depth of cut is 10mm.

29
O0001(ABS); O0002(INC);
N1 G90G54G17G00X30.0Y10.0S800M03; N1 G91G17G00X30.0Y10.0S800M03;
N2 Z2.0; N2 Z-98.0;
N3 G01Z-10.0F100; N3 G01Z-12.0F100;
N4 Y30.0; N4 Y20.0;
N5 X20.0; N5 X-10.0;
N6 X30.0Y60.0; N6 X10.0Y30.0;
N7 X70.0; N7 X40.0;
N8 X80.0Y30.0; N8 X10.0Y-30.0;
N9 X70.0; N9 X-10.0;
N10 Y10.0; N10 Y-20.0;
N11 X30.0; N11 X-40.0;
N12 G00Z100.0; N12 G00Z110.0;
N13 X0Y0M05; N13 X-30.0Y-10.0M05;
N14 M30; N14 M30;

30
Thank you for your attention!

31

You might also like