NC, CNC & DNC
PATIL S B
Assistant Professor-Mechanical Engineering
College of Engineering, Pune-411 005
[email protected]
History
1949
US Air Force asks MIT to develop a "numerically controlled"
machine.
1952
Prototype NC machine demonstrated (punched tape input)
1980CNC machines (computer used to link directly to controller)
1990DNC: external computer drip feeds control programmer
to machine tool controller
NC, CNC AND DNC
NC
Numerical Control (NC) - A control system
which primarily processes numeric input
(numbers, letters and symbols). Limited
programming capability at the machine
tool. Limited logic beyond direct input.
These types of systems are referred to as
hardwire controls and were popular from
the 1950s to 1970s.
NC, CNC AND DNC
Introduction
According to Electronic Industries Association (EIA):
Numerical Control is a system in which actions are controlled by
direct insertion of numerical data at some point. The system must
automatically interpret at least some portion of this data.
The part program is a set of statements that a machine control system
can interpret and converted them into signals that move the
spindles and drive the machine tool
Today the part program can be generated directly from the CAD
database by NC software and then can be the input for a NC
machine tool
NC, CNC AND DNC
Basic components of NC system
1.
Program of instructions- Detailed step by step set of
direction which tell the machine tool what to do.
- Manual Data Input (MDI)
- Direct Numerical Control (DNC)
2. Controller Unit- Interpret the program and convert into
mechanical actions.
- tape reader, a data buffer, signal output channel,
feedback channels from machine tool and sequence
controls to coordinate the overall operations.
3. M/c Tool/ Controlled process- Work table, fixtures, tooling and other auxiliary
equipment
NC, CNC AND DNC
The NC Procedure
1. Process planning
2. Part programming
- Manual Part programming
- Computer assisted part programming
3. Tape preparation
4. Tape verification
5. Production
NC, CNC AND DNC
Conventional milling machines
Vertical milling machine
NC, CNC AND DNC
Conventional milling machines
Vertical Milling machine architecture
NC, CNC AND DNC
Conventional milling machines
Horizontal Milling machine architecture
How does the table move along X- Y- and Z- axes ?
NC, CNC AND DNC
NC Coordinate System
1. Fixed zero- Fixed origin
2. Floating zero- Programmer defines the
position of the origin
1. Absolute programming- tool locations are
always defined in relation to zero point.
2. Incremental programming- next tool
location must be defined with reference
to previous tool location.
NC, CNC AND DNC
10
NC Motion Control System
1. Point-to-point ( PTP)/ Positioning System- tool
movement from one point to another point,
simple system
- drilling, tapping, reaming or similar operations.
2. Straight cut NC- Tool movement along straight
line.
- Milling or similar operations.
3. Countering/ Continuous path NC- Intricate and
complex shapes, complex and costly system
NC, CNC AND DNC
11
Three Basic Categories of
Motion Systems
NC, CNC AND DNC
12
Applications of NC-1
- Machining operations such as milling, drilling,
turning, broaching, grinding, etc.
- Other applications-Assembly, testing, welding,
inspection, any repetitive job.
NC, CNC AND DNC
13
Applications of NC-2
Parts with following general features
1.
2.
3.
4.
5.
6.
7.
8.
Part geometry is complex
Parts involving many operation
Much material is required to be removed
Parts to be produced frequently and small lot sizes
Engineering design changes frequently
Close tolerances are required
Expensive in case of rework
Parts requiring 100% inspection
NC, CNC AND DNC
14
Advantages of NC
Advantages
Reduced set up time
Reduced fixturing
Reduced manufacturing lead time
Greater manufacturing flexibility
Improved quality control
Reduced inventory
Reduced floor space requirements
Disadvantages
Higher investment costs
Higher maintenance cost
Programming/ training
NC, CNC AND DNC
15
Conventional Vs NC machines
Aspect
Conventional Machine
NC machine
Rate of production
Normal
Comparatively high
Machine hour rate
Normal
Comparatively high
Initial and Maintenance
cost
Less
Comparatively very high
Additional requirement
Not specific
Usually required
Skill
Normal skilled worker
High programming skills
Type of tooling
Normal
Special type of toolings
Sophistication
No
High degree
NC, CNC AND DNC
16
Problems with NC system
1.
2.
3.
4.
Part programming mistakes
Non-optimal speeds and feeds
Punched tape
Controller- Hard wired so difficult to
change easily
5. Management information
NC, CNC AND DNC
17
NC machines
Motion control is done by: servo-controlled motors
Table
Leadscrew
A/C Motor
Encoder
Servo Controller
Counter
Comparator
Input (converted from analog to digital value)
NC, CNC AND DNC
18
Hardware Configuration of an
NC Machine Tool
A typical NC machine tool contains the Machine
Control Unit (MCU) and the machine tool itself.
The MCU includes
the Data Processing Unit (DPU)
and
the Control Loop Unit (CLU)
NC, CNC AND DNC
19
Hardware Configuration of an
NC Machine Tool
DPU reads the part program, decodes it, processes the information
and passes it to the CLU
CLU convert the information to control signals and drives the
mechanism, receives feedback (about position and velocity) and
instructs DPU to read new instructions
Axis of a machine tool is defined as a path along which relative motion
between the cutting tool and the workpiece occurs and a machine
can have more than one axis.
NC, CNC AND DNC
20
Computer Numerical Control (CNC)
CNC is a system that utilizes a dedicated,
stored program computer to perform some
or all basic functions of NC functions.
Most of the CNC systems are
microcomputer based controller units.
NC, CNC AND DNC
21
CNC System-General configuration
Tape
Reader
for initial
program
entry
Minicomputer or
microcomputer
(Software function and
NC part program storage)
NC, CNC AND DNC
Computer
Hardware
interface
and
Servo system
Machine
tool
22
Functions of CNC
1. Machine tool control
2. In process compensation
3. Improved programming and operating
features
4. Diagnostics
NC, CNC AND DNC
23
1. Machine tool control- CNC
1. Hybrid CNC
Motion
feed back
Motion
Interpolators
And
Sensor system
Tape
reader
Minicomputer/
Interface logic
Microcomputer
(Hard wired)
(soft wired)
NC, CNC AND DNC
Machine
tool
24
Machine tool control- CNC
2. Straight CNC
Tape
reader
Motion
feed back
Minicomputer/ Servo and
Microcomputer Interface logic
(soft wired)
(Hard wired)
NC, CNC AND DNC
Machine
tool
25
2. In process compensation-CNC
- Recommendation of axis position when
inspection probe is used to locate a datum
reference on a work part
- Offset adjustment for tool radius and length
- Adaptive control for processing parameters
- Computation of predicted tool life and selection
of alternative tooling when indicated
NC, CNC AND DNC
26
3. Improved Programming & operating features-
- Graphic display of the tool path to verify
the tape
- Various types of interpolation- circular,
parabolic, cubic etc
- Use of specially written sub routines
- Manual data input
- Local storage of more than one part
program
NC, CNC AND DNC
27
4. Diagnostics
- The system would be able to identify the
reason for down time occurrence, so the
maintenance can be carried out quickly
- Alter to signs that indicate the imminent
failure of a certain component.
NC, CNC AND DNC
28
Advantages of CNC Machine
Tools
Ease of part duplication
Flexibility
Repeatability
Quality control through process control
NC, CNC AND DNC
29
Advantages of CNC Machine
Tools
CNC machine tools are more rigid than
conventional machine tools
Climb milling requires about 10 - 15 % less
horsepower vs. conventional cutting, but requires
a rigid machine tool with no backlash
Increased Rpms and feeds
NC, CNC AND DNC
30
CNC terminology
BLU: basic length unit
smallest programmable move of each axis.
Controller: (Machine Control Unit, MCU)
Electronic and computerized interface between operator and m/c
Controller components:
1. Data Processing Unit (DPU)
2. Control-Loops Unit (CLU)
NC, CNC AND DNC
31
Controller components
Data Processing Unit:
Input device [RS-232 port/ Tape Reader/ Punched Tape Reader]
Data Reading Circuits and Parity Checking Circuits
Decoders to distribute data to the axes controllers.
Control Loops Unit:
Interpolator to supply machine-motion commands between data points
Position control loop hardware for each axis of motion
NC, CNC AND DNC
32
Types of CNC machines
Based on Motion Type:
Point-to-Point
or
Continuous path
or
Closed loop
or
Hydraulic
Based on Control Loops:
Open loop
Based on Power Supply:
Electric
or
Pneumatic
Based on Positioning System
Incremental
or
Absolute
NC, CNC AND DNC
33
Open Loop vs. Closed Loop controls
NC, CNC AND DNC
34
Open loop control of a Point-to-Point NC drilling machine
NOTE: this machine uses stepper motor control
NC, CNC AND DNC
35
Components of Servo-motor controlled CNC
Motor
lead screw rotation
table moves
Motor speed control
feedback
position sensed by encoder
Two types ofNC,
encoder
configurations
CNC AND
DNC
36
Motion Control and feedback
Encoder outputs: electrical pulses (e.g. 500 pulses per revolution)
Rotation of the motor linear motion of the table: by the leadscrew
The pitch of the leadscrew: horizontal distance between successive threads
One thread in a screw single start screw: Dist moved in 1 rev = pitch
Two threads in screw double start screw: Dist moved in 1 rev = 2* pitch
NC, CNC AND DNC
37
Control Systems
Open-Loop Control
Stepper motor system
Current pulses sent from control unit to motor
Each pulse results in a finite amount of
revolution of the motor 0.01 is possible
NC, CNC AND DNC
38
Control Systems
Open-Loop Limitations
Control unit assumes desired position is
achieved
No positioning compensation
Typically, a lower torque motor
Open-Loop Advantages
Less complex, Less costly, and lower
maintenance costs
NC, CNC AND DNC
39
Control Systems
Closed-Loop Control
Variable DC motors - Servos
Positioning sensors -Resolvers
Feedback to control unit
Position information compared to target location
Location errors corrected
NC, CNC AND DNC
40
Control Systems
Closed-Loop Advantages
DC motors have the ability to reverse
instantly to adjust for position error
Error compensation allows for greater
positional accuracy (.0001)
DC motors have higher torque ranges vs..
stepper motors
Closed-loop limitations
Cost
NC, CNC AND DNC
41
Direct numerical control
Number of machines are controlled by a computer
NC, CNC AND DNC
42
DNC
NC, CNC AND DNC
43
Components of DNC
1.
2.
3.
4.
Central Computer
Bulk memory, which stores the programs
Telecommunication lines and
Machine tools
NC, CNC AND DNC
44
Types of DNC
1. Behind the tape reader (BTR) system
DNC
Computer
Two
Storage
buffer
Bulk memory
NC
programs
NC
controller
NC, CNC AND DNC
Machine
tool
45
Types of DNC
2. Special machine control unit (MCU)
DNC
Computer
Special
MCU
Bulk memory
NC
programs
Machine
tool
NC, CNC AND DNC
46
Functions of DNC
1.
2.
3.
4.
NC without punched tape
NC part program storage
Data collection, processing and reporting
communication
NC, CNC AND DNC
47
Advantages of DNC
- Elimination of punched tape and tape
readers.
- Greater computational capability and
flexibility
- Convent storage of NC part programs in
computer files.
- Reporting shop performance.
- Establishes the frame work for future
computer automated factory.
NC, CNC AND DNC
48
Machining Centers
A machining center can be defined as a
machine tool capable of:
Multiple operation and processes in a single
set-up utilizing multiple axis
Typically has an automatic mechanism to
change tools
NC, CNC AND DNC
49
Machining Centers
Machine motion is programmable
Servo motors drive feed mechanisms for tool
axiss
Positioning feedback is provided by resolvers
to the control system
NC, CNC AND DNC
50
Machining Centers
Example - A turning center capable of OD
turning, external threading, cross-hole
drilling, engraving, and milling. All in
machining is accomplished in one set-up.
Machine may have multiple spindles.
NC, CNC AND DNC
51
Machining Centers
NC, CNC AND DNC
52
Basic Concepts for Part
Programming
Part programming contains geometric information about the
part and motion information to move the cutting tool with
respect to the workpiece
The first thing to be defined is the
Coordinate System and then some-one can continue
with the Syntax of Part Programming
NC, CNC AND DNC
53
Coordinate System
Main 3 Axes forming a right-hand coordinate system, by
convention z axis moves the cutting tool away from the
workpiece, in details:
The z axis, parallel to the spindle for rotating workpiece,
and parallel to the machine tool axis for rotating tool, as
a milling, drilling, or boring machine
The x axis, in the direction of the tool movement for the
first case, and points to the right when some-one is
facing the machine.
NC, CNC AND DNC
54
NC, CNC AND DNC
55
NC, CNC AND DNC
56
Coordinate System
There can be more axes because of secondary slide motions in
addition to the primary x, y and z directions, and the rotary motions
around axes parallel to x, y and z axes.
These axes can be labeled u, v and w (for the first case) and a, b and c
(for the second).
The machine tools can be classified according to the number of axes
they provide to control position and orientation. For example, there
are 2-axis, 3-axis and 5-axis milling machines.
NC, CNC AND DNC
57
Syntax of Part Programming
Various formats and well defined syntax with variations
due to differences between machines
Use of a sequence of blocks containing commands to
set machine parameters as speed etc
Each command has an identifying letter followed by an
associated number
NC, CNC AND DNC
58
Syntax of Part Programming
Some identifying letters for the commands:
Sequence number (N code)
Preparatory command (G code)
Dimension words (X, Y, Z, A and B words)
Feed commands (F code)
Speed commands (S code)
Tool selection (T code)
Miscellaneous (M code)
NC, CNC AND DNC
59
Syntax of Part Programming
Formats for the commands arranged to form a block:
Fixed sequential format
Block address format
Tab sequential format
Word address format
For example: N040 G00 X0 Y0 Z300 T01 M06
N: identifier number, G: preparatory commands,
X,Y and Z: coordinates along the x, y and z axis
T: the tool number and M: miscellaneous commands
NC, CNC AND DNC
60
Manual Part Programming
Part program manuscript
NC, CNC AND DNC
61
Part programming example-1
p2
p3
100
p1
75
50
25
25
50
75
100
NC, CNC AND DNC
62
Part program Ex. 1
N01 G92 X0Y0F0 EOB
N02 G71 G90 G94 EOB
N03 M03 F120 S1200 EOB
N04 G00 X25000 Y2500 Z-4000 EOB
N05 G01 Z-65000 EOB
N06 G00 Z-73000 EOB
N07 G00 X50000 Y50000 EOB
N08 G01 Z-65000 EOB
N09 G00 Z-37000 EOB
N10 G00 X75000 Y50000 EOB
N11 G01 Z65000 EOB
N12 G00 Z37000 EOB
N14 G00 X0Y0Z0 EOB
N15 M02
NC, CNC AND DNC
63
Part program Ex.-2
28
24
20
40
20
NC, CNC AND DNC
64
Part program Ex. 2
N01 G90 G71 G94 M03 S640 EOB
N02 G01 X20000 Z0000 F200 EOB
N03 G00 Z100 EOB
N04 G00 X0000 EOB
N05 G01 Z6000 EOB
N06 G00 X100 Z100 EOB
N07 G00 X-200 EOB
N08 G01 Z-600 EOB
N09 G00 X100 Z100 EOB
N10 G00 X4000 Z4000 EOB
N11 G01 Z400 EOB
N12 M02
NC, CNC AND DNC
65
Manual Part Programming Example- 3
NC, CNC AND DNC
66
Part Program Ex. 3
N001
N002
N003
N004
N005
N006
N007
N008
N009
N010
N011
N012
G91
G71
G00
G01
G01
G01
G01
G01
G02
G01
G01
G01
EOB
EOB
X0.0 Y0.0 Z40.0 T0.1 M06 EOB
X65.0 Y0.0 Z-40.0 F950 S717 M03 EOB
X10.0 F350 M08 EOB
X110.0 EOB
Y70.0 EOB
X-40.86 EOB
X-28.28 Y0.0 I14.14 J5.0 EOB
X-40.86 EOB
Y-70.0 EOB
X-75.0 Y0.0 Z40.0 F950 M30
NC, CNC AND DNC
67
Manual Part Programming Example 4
5
2.5
p3
p2
p4
p5
45
(4, 4)
p1
Tool size = 0.25 inch,
Feed rate = 6 inch per minute,
Cutting speed = 300 rpm,
Tool start position: 2.0, 2.0
Programming in inches
Motion of tool:
p0 p1 p2 p3 p4 p5 p1 p0
p0 (2, 2)
NC, CNC AND DNC
68
1. Set up the programming parameters
5
2.5
p3
p2
p4
p5
Programming in inches
5
Use absolute coordinates
Feed in ipm
45
N010 G70 G90 G94 G97 M04
(4, 4)
p1
Spindle speed in rpm
p0 (2, 2)
Spindle CCW
NC, CNC AND DNC
69
2. Set up the machining conditions
5
2.5
p3
p2
p4
p5
Machine moves in XY-plane
Use full-circle interpolation
5
Feed rate
Spindle speed
45
N020 G17 G75 F6.0 S300 T1001 M08
(4, 4)
p1
Tool no.
p0 (2, 2)
Flood coolant ON
NC, CNC AND DNC
70
3. Move tool from p0 to p1 in straight line
5
2.5
p3
p2
p4
p5
Linear interpolation
target coordinates
N030 G01 X3.875 Y3.698
45
(4, 4)
p1
p0 (2, 2)
NC, CNC AND DNC
71
4. Cut profile from p1 to p2
5
2.5
p3
p2
p4
p5
Linear interpolation
5
target coordinates
N040 G01 X3.875 Y9.125
45
or
(4, 4)
p1
N040 G01 Y9.125
p0 (2, 2)
X-coordinate
does
it
NC, CNC
AND not
DNCchange no need to program72
5. Cut profile from p2 to p3
5
2.5
p3
p2
p4
Linear interpolation
p5
target coordinates
N050 G01 X5.634 Y9.125
5
y = 9 + 0.125 = 9.125
(6.5 - x)2 + 0.1252 = (1 - 0.125)2
x = 5.634
45
p3
(x, y)
(4, 4)
p1
(6.5, 9)
.125
p0 (2, 2)
NC, 1
CNC AND DNC
73
6. Cut along circle from p3 to p4
5
2.5
p3
p2
p4
p5
circular interpolation, CCW motion
5
target coordinates
45
N060 G03 X7.366 Y9.125 I6.5 J9.0
(4, 4)
coordinates of center of circle
p1
p0 (2, 2)
NC, CNC AND DNC
74
7. Cut from p4 to p5
5
2.5
p3
p2
p4
p5
Linear interpolation
45
(4, 4)
target coordinates (Y is unchanged)
N070 G01 X9.302
p1
p0 (2, 2)
NC, CNC AND DNC
75
8. Cut from p5 to p1
5
2.5
p3
p2
p4
p5
Linear interpolation
target coordinates (see step 3)
45
N080 G01 X3.875 Y3.698
(4, 4)
p1
p0 (2, 2)
NC, CNC AND DNC
76
9. Return to home position, stop program
5
2.5
p3
p2
p4
p5
Linear interpolation
target coordinates (see step 3)
N090 G01 X2.0 Y2.0 M30
45
(4, 4)
p1
end of data
N100 M00
program stop
p0 (2, 2)
NC, CNC AND DNC
77
Computer Assisted Part
Programming
The alternative to manual part programming is the use of
high-level programming language, which:
Defines the geometry part in terms of basic geometry
elements (points, lines )
Instructs the machine about the cutting tool
NC, CNC AND DNC
78
Computer Assisted Part
Programming
So the following procedures must be used to obtain the G-code:
The programmer identifies the part geometry, cutter motions, feeds,
speeds and cutter parameters
The programmer codes the part geometry, cutter motion, feed etc
and this is the source using a programming language
The source is then compiled to produce the machine independent
list of cutter movements and other machine control information (the
cutter location control data file or CL data file)
The CL data are processed by post-processor to generate machine
control data for the particular machine
NC, CNC AND DNC
79
APT Language
The most comprehensive and widely used language is Automatically
Programmed Tool (APT) the first prototype of the APT system
was developed at MIT in 1956.
The APT statements belong to one of the five types:
Identification statements
Geometry statements
Motion statements
Post-processor statements
Auxiliary statements
NC, CNC AND DNC
80
APT Language
Geometry statements, the general form of geometry
statement is:
Symbol = geometry_word/descriptive data
In the case of points:
P1 = POINT/X, Y, Z
P2 = POINT/L1, L2
P3 = POINT/CENTER, C1
P4= POINT/YLARGE, INTOF,
P5= POINT/XLARGE, INTOF,
P6= POINT/XLARGE, INTOF,
P7= POINT/YLARGE, INTOF,
L1,
L1,
C1,
C1,
NC, CNC AND DNC
C1
C1
C1
C1
81
APT Language
In the case of lines:
L1 = LINE/X1, Y1, Z1, X2, Y2, Z2
L2 = LINE/P1, P2
L3 = LINE/P1, PARLEL, P2
L4 = LINE/P1, PERPTO, L0
L5 = LINE/P1, LEFT, TANTO, C1
L6 = LINE/P1, RIGHT, TANTO, C1
L7 = LINE/LEFT, TANTO, C1, LEFT, TANTO, C2
L8 = LINE/LEFT, TANTO, C1, RIGHT, TANTO, C2
L9 = LINE/RIGHT, TANTO, C1, LEFT, TANTO, C2
L10 = LINE/RIGHT, TANTO, C1, RIGHT, TANTO, C2
L11 = LINE/P1, ATANGL, L0
NC, CNC AND DNC
82
APT Language
In the case of circles:
C1 = CIRCLE/X, Y, Z, R
C2 = CIRCLE/CENTER, P1, RADIOUS, R
C3 = CIRCLE/CENTER, P1, TANTO, L0
C4 = CIRCLE/P1, P2, P3
C5 = CIRCLE/XSMALL, L1, XSMALL, L2, RADIOUS, R
And the same with XLARGE, YLARGE or YSMALL
In the case of planes:
PL1 = PLANE/P1, P2, P3
PL2 = PLANE/PARLEL, PL0, XLARGE, D
And the same with XLARGE, YLARGE, YSMALL, ZLARGE or ZSMALL
NC, CNC AND DNC
83
APT Language
Motion statements, with regard to point-to-point operation
there are three motion statements for positioning the
tool at a desired point:
FROM/point_location
GOTO/point_location
GODLTA/x, y, z
NC, CNC AND DNC
84
APT Language Example 1:
NC, CNC AND DNC
85
APT Language
Answer:
P0 = POINT/0.0, 3.0, 0.1
P1 = POINT/1.0, 1.0, 0.1
P2 = POINT/2.0, 1.0, 0.1
FROM/P0
GOTO/P1
GODLTA/0, 0, -0.7
GODLTA/0, 0, 0.7
GOTO/P2
GODLTA/0, 0, -0.7
GODLTA/0, 0, 0.7
GOTO/P0
NC, CNC AND DNC
86
APT Language
Other Motion statements:
GO/{TO}, Drive surface, {TO} Part surface, {TO},
Check surface
Or
GO/{TO}, Drive surface, {TO} Part surface, {TANTO},
Check surface
And the same with PAST or ON instead of TO
GOLFT/
GORGT/
GOUP/
GODOWN/
GOFWD/
GOBACK/
For example:
GO/TO, L1, TO, PS, TANTO, C1
GO/PAST, L1, TO, PS, TANTO, C1
NC, CNC AND DNC
87
APT Language Example 2
NC, CNC AND DNC
88
APT Language
Answer:
FROM/SP
GO/TO, L1, TO, PS, ON, L4
GORGT/L1, PAST, L2
GOLFT/L2, PAST, L3
GOLFT/L3, PAST, C1
GOLFT/C1, PAST, L3
GOLFT/L3, PAST, L4
GOLFT/L4, PAST, L1
GOTO/SP
NC, CNC AND DNC
89
APT Language
Example 3:
NC, CNC AND DNC
90
APT Language
Answer:
FROM/SP
GO/TO, L1, TO, PS, ON, L6
GORGT/L1, PAST, L2
GORGT/L2, TANTO, C1
GOFWD/C1, TANTO, L3
GOFWD/L3, PAST, L4
GOLFT/L4, PAST, L5
GOLFT/L5, PAST, L6
GOLFT/L6, PAST, L1
GOTO/SP
NC, CNC AND DNC
91
APT Language
Additional statements:
MACHIN/DRILL, 2
COOLNT/
For example: COOLNT/MIST COOLNT/FLOOD COOLNT/OF
FEDRAT/
SPINDL/
For example: SPINDL/ON SPINDL/1250, CCLW
TOOLNO/
TURRET/
END
NC, CNC AND DNC
92
APT Language
Other capabilities of APT, the macro facility, with use variable argument as in a
FORTRAN subroutine, for example:
P0 = POINT/0.0, 0.3, 0.1
FROM/P0
CALL/DRILL, X=1.0, Y=1.0, Z=0.1, DEPTH=0.7
CALL/DRILL, X=2.0, Y=1.0, Z=0.1, DEPTH=0.7
GOTO/P0
when the definition of the macro DRILL is:
DRILL = MACRO/X, Y, Z, DEPTH
GOTO/X,Y,Z
GODLTA/0,0, -DEPTH
GODLTA/0,0, DEPTH
TARMAC
NC, CNC AND DNC
93
APT Language Example 4 (1/2):
NC, CNC AND DNC
94
APT Language
Example 4 (2/2):
NC, CNC AND DNC
95
APT Language
Answer (1/4):
PARTNO PART11
MACHIN/MILL, 3
;machine selection
CLPRINT
;prints out CL data file
OUTTOL/0.002
SP =POINT/5,0,1
P1 =POINT/1,2,0.5
P2 =POINT/4,2,0.5
P3 =POINT/6,4,0.5
P4 =POINT/8,5,0.5
P5 =POINT/9,7,0.5
P6 =POINT/2,7,0.5
PL1 = PLANE/P1, P2, P3
PS = PLANE/PARALEL, PL1, ZSMALL, 0.5
;define part surface to be z = 0
NC, CNC AND DNC
96
APT Language
Answer (2/4):
C1 = CIRCLE/CENTER, P4, RADIOUS, 1.0
L1 = LINE/P2, P3
L2 = LINE/P3, RIGHT, TANTO, C1
L3 = LINE/P5, LEFT, TANTO, C1
L4 = LINE/P5, P6
L5 = LINE/P6, P1
L4 = LINE/P1, P2
MILL = MACRO/CUT, SPIN, FEED, CLNT
CUTTER/CUT
FEDRAT/FEED
SPINDL/SPIN
COOLNT/CLNT
FROM/SP
NC, CNC AND DNC
97
APT Language
Answer (3/4):
FROM/SP
GO/TO, L1, TO, PS, ON, L6
GORGT/L1, TO, L2
GORGT/L2, TANTO, C1
GOFWD/C1, TANTO, L3
GOFWD/L3, PAST, L4
GOLFT/L4, PAST, L5
GOLFT/L5, PAST, L6
GOLFT/L6, PAST, L1
GOTO/SP
TERMMAC
TURRET/4
NC, CNC AND DNC
98
APT Language
Answer (4/4):
TURRET/4
CALL/MILL, CUT=0.52, SPIN=600, FEED=3.0, CLNT=ON
TURRET/6
CALL/MILL, CUT=0.5, SPIN=900, FEED=2.0, CLNT=ON
SPINDL/0
COOLNT/OFF
END
FINI
NC, CNC AND DNC
99
Other Part Programming
Languages
ADAPT (ADaptation APT) was the first attempt to adapt APT
programming system for smaller computers
AUTOSPOT (AUTOmatic Sytem for POsitioning Tools) was
developed by IBM and first introduced in 1962
EXAPT (EXtended subset of APT) was developed jointly in
German in about 1964 by several universities to adapt APT for
European use. It is compatible with APT and thus can use the
same processor as APT
COMPACT was developed by Manufacturing Data Systems,
Inc. (MDSI)
SPLIT (Sundstrand Processing Language Internally
Translated) was developed by Sundstrand Corporation,
intended for its own machine tools
MAPT (Micro-APT) is a subset of APT, to be run on the
microcomputers
NC, CNC AND DNC
100
Automatic Part Programming
Software programs can automatic generation of CNC data
Define Tool
CNC data
Make 3D model
Simulate
cutting
NC, CNC AND DNC
101
Automatic part programming and DNC
Very complex part shapes very large NC program
NC controller memory may not handle HUGE part program
computer feeds few blocks of
NC program to controller
When almost all blocks executed,
controller requests more blocks
NC, CNC AND DNC
102
Programming Methods
Automatically Programmed Tools (APT)
A text based system in which a programmer
defines a series of lines, arcs, and points
which define the overall part geometry
locations. These features are then used to
generate a cutter location (CL) file.
NC, CNC AND DNC
103
Programming Methods-APT
Developed as a joint effort between the
aerospace industry, MIT, and the US Airforce
Still used today and accounts for about 5 10% of all programming in the defense and
aerospace industries
NC, CNC AND DNC
104
Programming Methods-APT
Requires excellent 3D visualization skills
Capable of generating machine code for
complicated part programs
5 axis machine tools
NC, CNC AND DNC
105
Programming Methods-APT
Part definition
P1=Point/12,20,0
C1=Circle/Center,P1,Radius,3
LN1=Line/C1. ATANGL,90
Cutter Commands
TLRT,GORT/LN1.TANTO,C1
GOFWD/C1,TANTO,L5
NC, CNC AND DNC
106
Programming Methods-CAM
Computer Aided Machining (CAM)
Systems
Graphic representation of the part
PC based
Integrated CAD/CAM functionality
Some built-in expertise
Speed & feed data based on material and tool specifications
NC, CNC AND DNC
107
Programming Methods-CAM
Tool & material libraries
Tool path simulation
Tool path editing
Tool path optimization
Cut time calculations for cost estimating
NC, CNC AND DNC
108
Programming Methods-CAM
Import / export capabilities to other systems
Examples:
Drawing Exchange Format (DXF)
Initial Graphics Exchange Standard (IGES)
NC, CNC AND DNC
109
The Process CAD to NC File
Start with graphic representation of part
Direct input
Import from external system
Example DXF / IGES
2D or 3D scan
Model or Blueprint
(At this point you have a graphics file of your
geometry)
NC, CNC AND DNC
110
The Process CAD to NC File
Define cutter path by selecting
geometry
Contours
Pockets
Hole patterns
Surfaces
Volume to be removed
(At this point the system knows what you
want to cut)
NC, CNC AND DNC
111
The Process CAD to NC File
Define cut parameters
Tool information
Type, Rpm, Feed
Cut method
Example - Pocket mill zig-zag, spiral, inside-out
Rough and finish parameters
(At this point the system knows how you want to
cut the part)
NC, CNC AND DNC
112
The Process CAD to NC File
Execute cutter simulation
Visual representation of cutter motion
Modify / delete cutter sequences
(At this point the system has a generic cutter
location (CL) file of the cut paths)
NC, CNC AND DNC
113
The Process CAD to NC File
Post Processing
CL file to machine specific NC code
Filters CL information and formats it into
NC code based on machine specific
parameters
Work envelope
Limits - feed rates, tool changer, rpms, etc.
G & M function capabilities
NC, CNC AND DNC
114
Output: NC Code
Numerical Control (NC) Language
A series of commands which direct the
cutter motion and support systems of the
machine tool.
NC, CNC AND DNC
115
Output: NC Code
G-Codes (G00, G1, G02, G81)
Coordinate data (X,Y,Z)
Feed Function (F)
Miscellaneous functions (M13)
N - Program sequence number
T - Tool call
S - Spindle command
NC, CNC AND DNC
116
Output: NC Code
NC Program Example
N01G90 G80
N03 GOO T12 M06
N05 GOO X0 Y0 Z.1 F10 S2500 M13
N07 G1Z-.5
N09 G02 X-10. I0J0F20
N13 X0Y10
N17 X10Y0
N19 X0Y-10
N21 X-10Y0
N23 M2
NC, CNC AND DNC
117
Example of CNC
Programming
What What Must Be Done To Drill A Hole
On A CNC Vertical Milling Machine
NC, CNC AND DNC
118
Tool Home
Top
View
1.) X & Y Rapid To Hole Position
Front
View
NC, CNC AND DNC
119
Top
View
2.) Z Axis Rapid Move
Just Above Hole
3.) Turn On Coolant
4.) Turn On Spindle
.100
Front
View
NC, CNC AND DNC
120
Top
View
5.) Z Axis Feed Move to
Drill Hole
Front
View
NC, CNC AND DNC
121
Top
View
6.) Rapid Z Axis Move
Out Of Hole
Front
View
NC, CNC AND DNC
122
Top
View
7.) Turn Off Spindle
8.) Turn Off Coolant
Front
View
9.) X&Y Axis Rapid
Move Home
NC, CNC AND DNC
123
Heres The CNC Program!
Top
View
Front
View
Tool At Home
O0001
N005 G54 G90 S600 M03
N010 G00 X1.0 Y1.0
N015 G43 H01 Z.1 M08
N020 G01 Z-.75 F3.5
N025 G00 Z.1 M09
N030 G91 G28 X0 Y0 Z0
N035 M30
NC, CNC AND DNC
124
Tool At Home
Top
View
O0001
O0001
Number Assigned to this program
Front
View
NC, CNC AND DNC
125
Tool At Home
Top
View
O0001
N005 G54 G90 S600 M03
N005
G54
G90
S600
M03
Sequence Number
Fixture Offset
Absolute Programming Mode
Spindle Speed set to 600 RPM
Spindle on in a Clockwise Direction
Front
View
NC, CNC AND DNC
126
Top
View
O0001
N005 G54 G90 S600 M03
N010 G00 X1.0 Y1.0
G00
X1.0
Y1.0
Rapid Motion
X Coordinate 1.0 in. from Zero
Y Coordinate 1.0 in. from Zero
Front
View
NC, CNC AND DNC
127
Top
View
Front
View
O0001
N005 G54 G90 S600 M03
N010 G00 X1.0 Y1.0
N015 G43 H01 Z.1 M08
G43
H01
Z.1
M08
Tool Length Compensation
Specifies Tool length compensation
Z Coordinate .1 in. from Zero
Flood Coolant On
NC, CNC AND DNC
128
Top
View
Front
View
O0001
N005 G54 G90 S600 M03
N010 G00 X1.0 Y1.0
N015 G43 H01 Z.1 M08
N020 G01 Z-.75 F3.5
G01
Z-.75
F3.5
Straight Line Cutting Motion
Z Coordinate -.75 in. from Zero
Feed Rate set to 3.5 in./min.
NC, CNC AND DNC
129
Top
View
Front
View
O0001
N005 G54 G90 S600 M03
N010 G00 X1.0 Y1.0
N015 G43 H01 Z.1 M08
N020 G01 Z-.75 F3.5
N025 G00 Z.1 M09
G00
Z.1
M09
Rapid Motion
Z Coordinate .1 in. from Zero
Coolant Off
NC, CNC AND DNC
130
Top
View
Front
View
O0001
N005 G54 G90 S600 M03
N010 G00 X1.0 Y1.0
N015 G43 H01 Z.1 M08
N020 G01 Z-.75 F3.5
N025 G00 Z.1 M09
N030 G91 G28 X0 Y0 Z0
G91
Incremental Programming Mode
G28
Zero Return Command
X0, Y0, Z0
X,Y,& Z Coordinates at Zero
NC, CNC AND DNC
131
Top
View
Front
View
O0001
N005 G54 G90 S600 M03
N010 G00 X1.0 Y1.0
N015 G43 H01 Z.1 M08
N020 G01 Z-.75 F3.5
N025 G00 Z.1 M09
N030 G91 G28 X0 Y0 Z0
N035 M30
M30
NC, CNC AND DNC
End of Program
132
Output: NC Code - Canned
Cycles
NC, CNC AND DNC
133
CAD to NC Code
Import
File
Post Process
NC Code
N1 G80 G90
N3 G0 T01 M06
N5 G0 X0 Y0
Geometry
Direct input
DXF
IGES
CL
File
Tool Path Generation
What you want to cut
How you want to cut
Tool Type
Rpms Feeds
Method
Canned cycles
Cut direction
OEM
Custom
Language
NC, CNC AND DNC
134
NC, CNC AND DNC
135