COMPUTER AIDED PART
PROGRAMMING - APT
Methods of NC Part Programming
1. Manual part programming
2. Manual data input
3. Computer-Aided part programming
4. Part programming using CAD/CAM
Manual Part Programming
• Variety of CNC machine tools and equal variety
of controllers
• part program for a little complex parts
– Extensive calculations – Error prone
Computer Aided Part Programming
• Use of part programming language:
– use an “English-like” programming language – More than 100 part programming languages
developed in the last 50 years – describe
• geometry of the part • tool motions
• machining parameters, and • all other auxiliary operations
APT-Automatically Programmed Tool
• A compiler for simplifying NC Programming
• Developed by MIT in 1955, refined in early 1960’s
• Most widely used part programming language
• Other languages developed as variants
– APT (Automatically Programmed Tools)
– AUTOSPOT (Automatic System for Positioning Tools) – COMPACT II
– ADAPT (Adaptation of APT)
– EXAPT (Extended Subset of APT) – FAPT (Fanuc APT)
Why?
• Use of symbolic language
• Programming independent of machine tool
• Reduced programming time
• Reduced possibility of human error
• Capability of simple changeover of machining
sequence from machine to machine
• Only postprocessor required to include new
machine tool
Role of part programmer
• Define the geometry of the workpiece in terms of
basic geometric elements such as point, lines,
circles, planes, etc.
• Specify the tool motion and/or operations to
guide the too along the geometric elements
defined earlier in order to machine it
Role of computer
• Input translation
– Covert the part program into computer usable format for further processing
• Arithmetic calculations
– complex arithmetic and trigonometric calculations to generate the part surface data
• Cutter offset computation
– Generate the CL data after considering the tool geometry
• Postprocessing
Engineering Drawing
Develop process plan for the part
Write a part program using APT language
Process part program
-generate CL data Diagnostics Correct the part program
Post process the CL Data for a specific machine tool
Part program
Generation of CL Data
APT language features
• Major words -
left of slash, special meaning
• Minor word – right of slash
• Symbols -
geometric elements, numerical values
L2=LINE/(POINT/100,40),PERPTO,L1
• Subscripted Symbols
• Numbers
• Angles –
decimal degrees
• Arithmetic operators:
+
--
* / **
APT Statement Types
• Postprocessor (feed, speed, coolant, … etc.)
• Auxiliary (tool, tolerance, part, … etc.)
• Geometry statements
• Motion statements
Postprocessor Statements
COOLNT/ : coolant to be turned on or off:
COOLNT/ MIST
COOLNT/ FLOOD
COOLNT/ OFF
UNITS
UNITS/METRIC/INCH
RAPID
Postprocessor Statements
FEDRAT/ : feedrate for moving the tool along the part surface
FEDRAT/ 75,MMPM
SPINDL/ : spindle rotation in revolutions per minute
SPINDL/ 850,RPM
SPINDL/ON
LOADTL/ : load a specific tool from an ATC tool changer
Auxiliary Statements
MACHIN: specify machine tool and call the postprocessor
MACHIN/ MILL, 3
PARTNO: part program number, inserted at the start of the program.
PARTNO EXAMPLE6
PRINT: Display of tool geometry on screen (ON/OFF)
PRINT/ON
Auxiliary Statements
CUTTER:
cutter diameter for offset
CUTTER/ 46
TOLERANCE : Nonlinear motion accomplished
with straight-line segments
INTOL/ 0.015
OUTTOL/ 0.01
OUTTOL Specified path Specifie d path INTOL
Geometry statements
General format
<Symbol>=Geometry/Definition & Modifiers
Modifiers
INTOF PARLEL PERPTO TANTO
LARGE SMALL LEFT RIGHT XLARGE
• Point
POINT
• Line
LINE
• Plane
PLANE
• Circle
CIRCLE
• Pattern (of parts)
PATERN
Geometry statements:
POINT
• Cartesian coordinates
PTA = POINT / 40,10,0
• Center of a circle
Geometry statements:
POINT
• Polar coordinate
PTI=POINT/XYPLAN,RTHETA,45,-30
• Intersection of two lines
Geometry statements:
POINT
• Intersection of a line and a circle
PTC=POINT/XSMALL,INTOF,LIN1,C1
Point (POINT)
PTC = POINT/ YLARGE, INTOF, LIN3, C1
PTC = POINT/ XLARGE, INTOF, LIN3, C1
PTD = POINT/ YSMALL, INTOF, LIN3, C1
PTD = POINT/ XSMALL, INTOF, LIN3, C1
x PT C PT D LIN 3 C 1 y
Geometry statements:
LINE
•
Two points
•
One of the coordinated axes
•
Passing through a point and parallel to a line
•
Passing through a point and perpendicular to a
line
•
Passing through a point and at angle with a
line or axis
Line (LINE)
LIN1 = LINE/ P1, P2
P1 P2 y x LIN1Line (LINE)
LEFT or RIGHT modifiers indicates whether
L1A
C11
L1A = LINE/ PT51, LEFT, TANTO, C11
Geometry statements:
LINE
• LIN1 = LINE/P1,LEFT,TANTO,C1
• LIN2 = LINE/P1,RIGHT,TANTO,C1
• LIN3 = LINE/P2,RIGHT,TANTO,C1
• LIN4 = LINE/P2,LEFT,TANTO,C1
Geometry statements:
LINE
Line (LINE)
L8=LINE/RIGHT,TANTO,C3,LEFT,TANTO,C4
C3 L6 L9 C4 L8 L7 Right Left Left RightGeometry statements:
CIRCLE
C1 = CIRCLE/ 70, 60, 5, 40.3
PT3 (70,60,5) C1 y x 40.3Geometry statements:
CIRCLE
C3 = CIRCLE/ CENTER, PT6, TANTO, LN4
C7 = CIRCLE/ CENTER, PT8, PT5
C3 Y X LN4 PT6 C7 PT8 PT5 Y XGeometry statements:
PLANE
• PLAN1 = PLANE/P1,P2,P3
Motion Statements - PTP
Rapid from current position to a specified location
FROM/
<point location>: starting point for the tool, with
the end of the tool at that point.
GOTO/
<point location>: rapid, straight- line move to the
point specified in absolute mode.
GODLTA/
<coordinate increments>: move incremental
distance from the current position.
Z
Y
Continuous Path Motion Commands
GOLFT/
: Move left along the drive surface
GORGT/
: Move right along the drive surface
GOFWD/
: Move forward from a tangent position
GOBACK/
: Move backward from a tangent position
GOUP/
: Move up along the drive surface
PARTNO EXAMPLE5 $$POSTPROCESSOR STATEMENTS CLPRNT MACHIN/MILL,3 INTOL/0 OUTTOL/0.01 PRINT/ON $$ GEOMETRY STATEMENTS SP=POINT/0,0,10 P0=POINT/-70,-140 ZSURF/-10
$$ CIRCLE DEFINITIONS C1=CIRCLE/0,0,30 C2=CIRCLE/-100,80,25 C3=CIRCLE/-100,-80,25 C4=CIRCLE/100,0,30 $$ LINE DEFINITIONS L1=LINE/RIGHT,TANTO,C1,LEFT,TANTO,C2 L2=LINE/LEFT,TANTO,C1,RIGHT,TANTO,C3 L3=LINE/LEFT,TANTO,C2,LEFT,TANTO,C4 L4=LINE/RIGHT,TANTO,C3,RIGHT,TANTO,C4
$$ TOOL PATH DEFINITION CUTTER/20 LOADTL/1 SPINDL/1200,RPM,CLW COOLNT/ ON $$ MOTION STATEMENTS FROM/SP RAPID TLLFT GOTO/P0 GODLTA/-20 AUTOPS GO/TO,L4 FEDRAT/50
$$ CONTINUOUS PATH MOTION STATEMENTS GOLFT/L4,TANTO,C3 GOFWD/C3,TANTO,L2 GOFWD/L2,TANTO,C1 GOFWD/C1,TANTO,L1 GOFWD/L1,TANTO,C2 GOFWD/C2,TANTO,L3 GOFWD/L3,TANTO,C4 GOFWD/C4,TANTO,L4 GOFWD/L4,TANTO,C3
GODLTA/20 GOTO/P0 COOLNT/OFF SPINDL/OFF RAPID GOTO/SP
END $$ End of this program FINI $$ End of APT processing
CL File
$$ GEOMETRY STATEMENTS SP=POINT/0,0,10 *SP .0000 .0000 10.0000 P0=POINT/-70,-140 *P0 -70.0000 -140.0000 .0000 ZSURF/-10$$ ALL GEOMTERY DEFINITIONS HAVE Z=-10 $$ CIRCLE DEFINITIONS
C1=CIRCLE/0,0,30
*C1 .0000 .0000 30.0000
CL File
$$ LINE DEFINITIONS L1=LINE/RIGHT,TANTO,C1,LEFT,TANTO,C2 *L1 .2288 .9735 .0000 30.0000 L2=LINE/LEFT,TANTO,C1,RIGHT,TANTO,C3 *L2 -.2288 .9735 .0000 -30.0000 L3=LINE/LEFT,TANTO,C2,LEFT,TANTO,C4 *L3 .3497 .9368 .0000 64.9739CL File
$$ CONTINUOUS PATH MOTION STATEMENTS
GOLFT/L4,TANTO,C3 *FEED -87.7591 -112.7897 -20.0000 GOFWD/C3,TANTO,L2 *CIR -100.0000 -80.0000 35.0000 CLW -108.0074 -45.9283 -20.0000 GOFWD/L2,TANTO,C1 *FEED 4.5756 -19.4695 -20.0000 GOFWD/C1,TANTO,L1 *CIR .0000 .0000 20.0000 CCLW