Vous êtes sur la page 1sur 30

Programming Methods

Automatically
(APT)

Programmed

Tools

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.

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

APT Language
The APT statements to one of the following types:
Geometry statements
Motion statements
Post-processor statements
Auxiliary statements

APT Language
The APT language consists of different types of statements
composed by the letters, numerals and punctuatuation
marks.
Letters

: A B C .. Z

Numerals

: 0 1 2 .. 9

Punctuatuation marks:
/
Divides a statement into two sections.
(GO/PAST)
,
Separator between the elements in a statement
(L1 = LINE/P1,P2)
=
Assigning an entity to a symbolic name
()
Enclosing the nested statements

Words
: Constructed with six letters or
numerals with the
first one being a letter.
No
special
characters
are
allowed.
Keywords : Certain reserved names are called key
words.
Ex.: CIRCLE, LINE, POINT, LEFT
Arithmetic operations:
Addition (+), Subtraction (-), Multiplication
(*),
Division (/) and Exponentiation (**)
Priority: (), **, *,/, +,Library functions:
ABS, SQRT, SIN, COS, TAN, EXP, LOG
Symbols
: Any combination of six or fewer alphabetic
and
numeric characters. The symbol
cannot be a keyword.
Ex.: L1, P2, C5

APT Language
Geometry statements are used to define the
geometric elements that comprise work part.
Syntax:
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, L1, C1
P5= POINT/XLARGE, INTOF, L1, C1
P6= POINT/XLARGE, INTOF, C1, C2
P7= POINT/YLARGE or XSMALL, INTOF, C1, C2

APT Language

In the case of Lines:


L1 = LINE/X1, Y1, Z1, X2, Y2, Z2
L2 = LINE/P1, P2
L3 = LINE/P1, PARLEL, L0
L4 = LINE/P1, PERPTO, L3
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, LEFT, ATANGL, 20
L12 = LINE/P1, LEFT, ATANGL, 30, L11

APT Language

In the case of Circles:

C1 = CIRCLE/X, Y, Z, R
C2 = CIRCLE/CENTER, P1, RADIUS, R
C3 = CIRCLE/CENTER, P1, TANTO, L1
C4 = CIRCLE/P2, P3, P4
C5 = CIRCLE/XSMALL, L1, XSMALL, L2, RADIUS, R
And the same with XLARGE, YLARGE or YSMALL

In the case of Planes:


PL1 = PLANE/P1, P2, P3
PL2 = PLANE/P4, PARLEL, PL1

APT Language
Motion statements, with regard to point-to-point
operation. These are used to describe the path taken by
the cutting tool.
Syntax: Motion command/descriptive data
There are three motion statements for positioning the
tool at a desired point:
Set-up commands
Point-to-point commands
Contouring motion commands

Set-up commands
Start point:
FROM/x,y,z
Cutter:
CUTTER/dia
Tolerances:
INTOL/0.005
OUTTOL/0.005

Point-to-Point Motion commands


GOTOUsed to move the tool from the current
position
to the point specified in the
statement.
GOTO/P7
GOTO/2.0,5.0,0.0

GODLTA - Specifies the relative movement along


the axes
specified.
GODLTA/dx,dy,dz

Contouring Motion commands


Used to continuously control the tool throughout the
move. The tool is directed along two intersecting
surfaces namely drive surface and check surface.
GO: used to bring the tool from the starting point
against the
drive surface(ds), part surface(ps)
and check surface(cs).
General format
TO
TO
ON
ON
GO/ PAST ,ds, PAST

TO
ON
PAST
,ps, TANT
O

,cs

Contouring Motion commands


Six motion command words
GOUP
GODOWN
GOFWD
GOBACK
GOLFT
GORGT
GOBACK:
to its

Instructs the tool to move back relative


previous direction of movement.

GOBACK/PL5,TO,L1
Tool moves on the drive surface PL5
until it
reaches L1

APT Language
Post-processor commands, are used to specify the
machine tool functions.
COOLNT/ON, COOLNT/OFF, COOLNT/FLOOD
FEERAT/100.0 in mm/min
END

STOP the machine at the end of the program

MACHIN/MILL,1
SPINDL/3000 in rev/min
REWIND -

Used to rewind the control tape to a known


tape mark, which is generally the start of
the tape.

APT Language
Auxiliary

commands,

are

used

to

prepare

the

computer for accepting the part program, improve the


readability of the part program and control the output of
the computer.
CLPRNT-

Used to obtain the computer printout of


the cutter location sequence on the CNC tape.

FINI

Used to indicate the end of the computer


program.

PARTNO -

Used at start of program to identify the part


program.

APT Language

APT Language
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

APT Language

APT Language
Answer:
FROM/SP
GO/TO, L1, TO, PS, ON, L4
GORGT/L1, PAST, L2
GOUP/L2, PAST, L3
GOLFT/L3, PAST, C1
GOLFT/C1, PAST, L3
GOLFT/L3, PAST, L4
GODOWN/L4, PAST, L1
GOTO/SP

APT Language

APT Language
Answer:
FROM/SP
GO/TO, L1, TO, PS, ON, L6
GORGT/L1, PAST, L2
GORGT/L2, TANTO, C1
GOFWD/C1, TANTO, L3
GOUP/L3, PAST, L4
GOLFT/L4, PAST, L5
GODOWN/L5, PAST, L6
GORGT/L6, PAST, L1
GOTO/SP

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.

PARTNO/01
MACHIN/MILL1
INTOL/0.001
OUTTOL/0.001
CUTTER/6.5
SPINDL/900
FEDRAT/7.5
COOLNT/ON
P0 = POINT/-25.0, -25.0, 5.0
P1 = POINT/0.0, 0.0, 0.0
P2 = POINT/150.0, 0.0, 0.0
P3 = POINT/150.0, 40.0, 0.0
P4 = POINT/50.0, 100.0, 0.0
P5 = POINT/0.0, 100.0, 0.0
P6 = POINT/75.0, 65.0, 0.0
L1 = LINE/P1,P2
L2 = LINE/P2,P3
C1 = CIRCLE/CENTRE, P6, RADIUS, 25.0
L3 = LINE/P3, LEFT, TANTO, C1
L4 = LINE/P4, RIGHT, TANTO, C1
L5 = LINE/P4, P5
L6 = LINE/P5,P1
PL1= PLANE/P1, P2, P5

FROM/P0
RAPID
GO/TO, L1, TO, PL1, TO, L6
GO/TO P1
GORGT/L1, PAST, L2
GOLFT/L2, PAST, L3
GOLFT/L3, TANTO,C1
GOFWD/C1, PAST, L4
GOFWD/L4, PAST, L4
GOLFT/L5, PAST, L5
GOLFT/L6, PAST, L1
GOTO/P0
COOLNT/OFF
SPINDL/OFF
FINI
END

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

APT Language
Example 4 (1/2):

APT Language
Example 4 (2/2):

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/2,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

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

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

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

Vous aimerez peut-être aussi