IENG 475 - Lecture 10: CNC Programming - NC Coding & APT
IENG 475 - Lecture 10: CNC Programming - NC Coding & APT
CNC Programming –
NC Coding & APT
NC and CAD/CAM
Advantages of NC (vs. manual or fixed automation)
• Flexibility
• Easily reprogrammed (vs. fixed automation)
• Capability for complex work pieces
• Control more than two axes simultaneously (vs. manual)
• Programmed for sequences of operations
• Tool changing capability
• Single head accepting multiple tools from a magazine
• Reduced fixturing costs
• More axes, more tools fewer machine setups
• Repeatability (Quality)
• Reduced number of variability sources (vs. manual)
NC Impact
Impact on Labor (vs. manual production)
• Skills change
• Manual capability Knowledge capability
• Increased wages
• Seniority tradition
• Not just a labor union tradition
• Increased operator responsibility
• Put the best people where the money is
• Increased productivity
• Fewer people needed to achieve output
• Lower cost for the product when produced in volume
NC Axes of Motion
Conventions:
• Z-axis
• Brings tool in contact with the part
• – Z motion puts tool into part
• + Z motion takes tool out of part
• X-axis
• Direction of greatest travel
• + X follows right hand coordinate system rule
• Y-Axis
• Remaining primary axis
• + Y follows right hand coordinate system rule
• Remaining Axes
• Various degrees of freedom - ways to affect the part
Positioning
Home
• Hard Home
• Soft (Part) Home
Incremental
• Current move endpoint is specified relative to the
ending point for the last movement
Absolute
• Current move endpoint is specified relative to the
home position
Position is the center point of the tool
NC Code Formats
Words
• A word is a unitary piece of information
• Usually a parametric variable which takes on a value
• Examples:
• feed rate
• spindle speed
• x-coordinate
• coolant on/off condition
• interpolation mode condition
NC Code Formats
Block Formats
• Fixed Sequential
• All word values specified in sequence (changed or not)
• Tedious, error-prone, inflexible, wasted space
• Block Address (Fixed Sequential with Tab Ignored)
• Specifies which words will be used within a block
• Tedious, error-prone, but more flexible, compact
• Tab Sequential
• Tab used instead of value in word sequence (no change)
• Tedious, but more flexible and less error-prone
• Word Address* (add Tab between words for ease in reading)
• Character specifies which word the value applies to
• least error-prone, more flexible and compact
G Code
N words
• Block numbers
G words
• Preparatory commands (motion control)
F words, S words, T words
• Feed, speed, tool control
X words (Y words, Z words, …)
• Position control
M words
• Miscellaneous (machine control)
8 Write an NC program to
cut the letter P 1” deep
7 and centered in the grid
at a feed of 5.5 IPM
6 and a spindle speed of
1800 RPM using a tool
5 that is numbered 04.
Assume the soft home
4 position is as defined in
our lab, and that the
hard home position is at
3
x = 0, y = 0, z = 10.
2
Assume that we want it
1 in absolute code.
0
0 1 2 3 4 5 6 7 8
8 Write an NC program to
cut the letter P 1” deep
7 and centered in the grid
at a feed of 5.5 IPM
6 and a spindle speed of
1800 RPM using a tool
5 that is numbered 04.
Assume the soft home
4 position is as defined in
our lab, and that the
hard home position is at
3
x = 0, y = 0, z = 10.
2
Assume that we want it
1 in incremental code.
0
0 1 2 3 4 5 6 7 8
APT
Automatically Programmed Tool
• NC language instead of an NC code
• Abbreviated English format
• Symbolic addresses
• Describes motion of the tool edge(s) relative to the
surfaces of the part
• Drive surface
• Part surface
• Check surface
• Computer computes center point of the tool for the user
• This creates a CL (cutter location) data file that is
converted to G Code by a post-processor
APT
Four types of APT statements:
1. Geometry statements
• Define the geometric elements that define the part
2. Motion statements
• Describe the path taken by the cutting tool
3. Post-processor statements
• Apply to the specific machine tool, such as feeds,
speeds, feature actuation (coolant on, etc)
4. Auxiliary statements
• Miscellaneous statements that identify the part, tool,
tolerances, etc.
APT TO, ON, PAST Modifiers
L3
P3 C1
P1 L1 P2
0 1 2 3 4 5 6 7 8
APT Example
Figure 2. APT Program Workpiece APT Program Listing
PARTNO EXAMPLE
MACHIN/MILL, 1
CUTTER/0.5000
P0 = POINT/0, -1.0, 0
P1 = POINT/0, 0, 0
4 P2 = POINT/6.0, 0, 0
P4 P3 = POINT/6.0, 1.0, 0
P4 = POINT/2.0, 4.0, 0
3 L1 = LINE/P1, P2
L2 C1 = CIRCLE/CENTER, P3, RADIUS, 1.0
L2 = LINE/P4, LEFT, TANTO, C1
L3 L3 = LINE/P1, P4
2 PL1 = PLANE/P1, P2, P3
SPINDL/573
P3 C1 FEDRAT/5.39
1 COOLNT/ON
FROM/P0
P1 L1 P2 GO/PAST, L3, TO, PL1, TO, L1
GOUP/L3, PAST, L2
0 1 2 3 4 5 6 7 8 GORGT/L2, TANTO, C1
GOFWD/C1, ON, P2
P0 GOFWD/L1, PAST, L3
RAPID
Figure 3. APT Geometry and Tool Path for Workpiece GOTO/P0
COOLNT/OFF
FINI
P4
P5
L8
1
P0 (10" above) L0
0 0, 0, -1 2, 0, 10
8, 0, -1
0 1 2 3 4 5 6 7 8
Computers & NC
NC
• Numerical Control
• Electric control based on paper tape, hard wired CPU
DNC
• Direct Numerical Control
• Single, fast mainframe computer
• Central control of each NC machine (time sharing)
• Each NC machine cabled to central CPU
CNC
• Computer Numerical Control
• Each CNC has its own CPU, maybe retrofitted
• Production continues if central CPU goes down
Computers & NC
DNC / HNC
• Distributed / (Hierarchical) Numerical Control
• Library of programs centrally maintained
• Distributed production data acquisition and central database
• Centralized production control adapting to changing conditions
• Limited loss of production if central CPU is down
CAD/CAM
• Computer-Aided Design / Computer-Aided Mfg
• Stronger design / manufacturing database
• Enhanced knowledge (CPU), off-line error-checking
• More productive, flexible; less tedious and error-prone