10/1/2011
NC, CNC & Robotics
What is NC/CNC? y NC is an acronym for Numerical Control and CNC is an
acronym for Computer Numerical Control.
By S K Mondal
What is the difference between NC and CNC ?
What is the difference between NC and CNC ?
y The difference between NC and CNC is one of age and
y Some of the enhancements that came along with CNC
capability. y The earliest NC machines performed limited functions and movements controlled by punched tape or punch cards. cards y As the technology evolved, the machines were equiped with increasingly powerful microprocessors (computers) with the addition of these computers, NC machines become CNC machines. y CNC machines have far more capability than their predecessor. contd…..
Where did CNC get started? y 1940 Jhon Parson developed first machine able to drill
holes at specific coordinates programmed on punch cards. y 1951 MIT developed servo‐mechanism y 1952 MIT developed first NC machines for milling. y 1970 First CNC machines came into picture
include: Canned Cycles, Sub Programming, Cutter Compensation, Work coordinates, Coordinate system rotation, automatic corner rounding, chamfering, and B‐ spline interpolation.
Is it necessary to have a CAD/CAM system to program a CNC machine? y No, yes, may be. It all depends on the kind of work you
are doing, your customer’s requirements and your staff’s capability. y CAM system give the programmer a tool for creating set
up sheets and process drawings.
Now‐a‐day’s modified 1970’s machines are used.
1
10/1/2011
Do all machines speak the same CNC language
y CNC machine tool builders offer an option what is
y No, while there is fairly standard set of G and M codes,
known as the conversational control. This control lets
What is a “Conversational Control”
there is some variation in their application. For example
the
operator/programmer
use
simple
descriptive
a G0 or G00 command is universally regarded as the
language to program the part. The control then
command for rapid travel. Some older machines do not
displayed a graphical representation of the instructions
have a G00 command. On these machines, rapid travel is
so the operator/programmer can verify the tool path.
commanded by using the F (feed) word address.
Are CNC machines faster than conventional machines?
Are CNC machines more accurate than conventional machines?
y Yes, No, Sometimes. When it comes to making a single,
y Yes, they can be. But like anything else it depends on
simple part it is hard to beat a conventional mill or lathe. lathe
who h is i running i the th machine, hi h how well ll the th machines hi h has
CNC machines move faster in rapid travel than
been maintained, quality of setup and so on.
conventional machines.
NC/CNC Machines‐Advantages y High Repeatability and Precision e.g. Aircraft parts y Volume of production is very high y Complex contours/surfaces need to be machined. E.g.
Turbines y Flexibility in job change, automatic tool settings, less
NC/CNC Machines‐Disadvantages y Costly setup, skilled operators y Computers, programming knowledge required y Maintenance is difficult
scrap y More safe, higher productivity, better quality y Less paper work, faster prototype production, reduction
in lead times
2
10/1/2011
NC/CNC/DNC y Direct Numerical Control is a system that uses a
Direct numerical control
central computer to control several machines at the same time y Distributed Numerical Control (DNC): the central computer t downloads d l d complete l t programs to t the th CNC machines, which can be workstations or PCs, and can get the information for the machine operations. y The speed of the system is increased, large files can be handled and the number of machine tools used is expanded. 13
14
Basic Length Unit (BLU)
DNC
y In NC machine, the displacement length per one pulse
output from machine is defined as a Basic Length Unit (BLU). y In the CNC computer each bit (binary digit) represents 1 BLU. BLU Bit = BLU y Example: If one pulse makes a servo motor rotate by one degree and the servo motor moves the table by 0.0001 mm, one BLU will be 0.0001 mm. y The lead of a ball screw is related to the displacement unit of the machine tool table. 15
Stepper Motor y The stepper motor is special type of synchronous motor
which is designed to rotate through a specific angle (Called step) for each electrical pulse received from the control unit.
3
10/1/2011
Control Systems possible in CNC Machine
Point‐to‐point straight line mode
y Point to point mode:
Co‐ordinate system y All the machine tool use Cartesian Co‐ordinate system. y The first axis to be identified is the Z – axis, This is
followed by X and Y axes respectively.
Right‐hand coordinate systems
4
10/1/2011
5 axes CNC vertical axis machining centre configuration
Absolute and Incremental Coordinate System
The following are the steps to be followed while developing the CNC part programs. y Process planning y Axes selection y Tool selection y Cutting process parameters planning y Job and tool setup planning y Machining path planning y Part program writing y Part program proving
Absolute Coordinate System
Incremental Coordinate System
5
10/1/2011
Basic CNC Principles
y For a CNC machine control unit (MCU) decides cutting
speed, feed, depth of cut, tool selection , coolant on off and tool paths. The MCU issues commands in form of numeric data to motors that position slides and tool accordingly.
CNC programming
Part Programming y FANUC CONTROLL y SIEMENS CONTROLL
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
Programming Key Letters y O ‐ Program number (Used for program identification) y N ‐ Sequence number (Used for line identification)
Explanation of commonly used G codes • G00 – Preparatory code to control final position
y G ‐ Preparatory function y X ‐ X axis designation y Y ‐ Y axis designation g y Z ‐ Z axis designation
•
y R ‐ Radius designation y F – Feed rate designation y S ‐ Spindle speed designation y H ‐ Tool length offset designation y D ‐ Tool radius offset designation y T ‐ Tool Designation
•
of the tool and not concerned with the path that is followed in arriving at the final destination. G01 – Tool is required to move in a straight line connecting current position and final position. Used for tool movement without any machining‐ point to point control. (linear interpolation) G02 – Tool path followed is along an arc specified by I, J and K codes.( circular interpolation)
y M ‐ Miscellaneous function
6
10/1/2011
CNC Programming Basics y 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. y 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.
Table of Important G codes G00 Rapid Transverse G01 Linear Interpolation G02 Circular Interpolation, CW G03 Circular Interpolation, CCW G17 XY Plane,G18 XZ Plane,G19 YZ Plane G XY Pl G XZ Pl G YZ Pl G20/G70 Inch units G21/G71 Metric Units G40 Cutter compensation cancel G41 Cutter compensation left G42 Cutter compensation right
Table of Important G codes
Rapid traverse: G00
G43 Tool length compensation (plus) G44 Tool length compensation (minus)
y G00: y to make the machine move at maximum speed.
G49 Tool length compensation cancel
y It is used for positioning motion.
G80 Cancel canned cycles
G90 G00 X20 0 Y10 0 G90 G00 X20.0 Y10.0
G81 Drilling cycle
End
G90: absolute coordinate s
G82 Counter boring cycle G83 Deep hole drilling cycle
Start
G90 Absolute positioning
(20,10) (10,10)
(0,0)
G91 Incremental positioning
Linear interpolation: G01
Circular interpolation: G02, G03 y G02, G03:
y G01:
y For circular interpolation, the tool destination and the circle
y linear interpolation at feed speed.
center are programmed in one block
G91 G0l X200.0 Y100.0 F200.0
y G02 is clockwise interpolation, G03 is counterclockwise
interpolation
G91: incremental coordinates
Y End
100.0
Start
200.0
X
⎧G 02 ⎫ ⎧ R G17 ⎨ ⎬ X __ Y __ ⎨ ⎩G 03 ⎭ ⎩ I __ ⎧G 02 ⎫ ⎧ R G18 ⎨ ⎬ X __ Z __ ⎨ ⎩G 03 ⎭ ⎩ I __
⎫ ⎬ F __; J __ ⎭
⎧G 02 ⎫ ⎧ R G19 ⎨ ⎬Y __ Z __ ⎨ ⎩G 03 ⎭ ⎩ J __
⎫ ⎬ F __; K __ ⎭
End point
⎫ ⎬ F __; K __ ⎭
Circle center, radius
7
10/1/2011
Circular interpolation: G02, G03
Circular interpolation: G02, G03
Y
Y X
R=-50mm
End
y Specify Center with I, J, K
End
y I, J, K are the incremental
Specify R with sign before it:
distance from the start of the arc;
X
≤180° +R Start
Start
>180° ‐R
R=50mm
y Viewing the start of arc as
j
Center
the origin, I, J, K have positive or negative signs.
i G91 G02 X60.0 Y20.0 R50.0 F300.0 G91 G02 X60.0 Y20.0 R‐50.0 F300.0
Circular interpolation: G02, G03 N0010 G92 X200.0 Y40.0 Z0 ; N0020 G90 G03 X140.0 Y100.0 I ‐60.0 F300; N0030 G02 X120. 0 Y60.0 I‐ 50.0;
Annotation for Circular Interpolation
G92: To define working coordinate
Or
N0010 G92 X200.0 Y40.0 Z0; N0010 G92 X200 0 Y40 0 Z0; N0020 G90 G03 X140.0 Y100.0 R60.0 F300; N0030 G02 X120.0 Y60.0 R50.0; G90: absolute coordinates
Y 100
Circular interpolation: G02, G03 y I0.0, J0.0, and K0.0 can be omitted. y If X,Y,Z are all omitted in the program, that means
start and end of arc are same points start and end of arc are same points. N0020 G02 I20.0 (a full circle) y If I, J, K, and R all appears in circular interpolation
instruction, R is valid and I, J, and K are invalid R50 R60
60 40
X O
90 120 140
Tool Compensation y Tool‐Radius Compensation y Left hand G41
200
Tool‐Radius Compensation y Tool‐radius compensations make it possible to program directly from the drawing, and thus eliminate the tool‐offset calculation
y Right hand G42 y Cancel tool‐radius compensation G40 C l l di i G
y Tool‐Height Compensation y Positive G43
G41 (G42) H×× y H××: the radius of tool to compensate is saved in a memory unit that H th di f t l t t i d i it th t
is named H××
y G41/G42 is directly related with direction of tool movement and
which side of part is cut.
y Negative G44 y Cancel tool‐height compensation G49
8
10/1/2011
Tool‐Height Compensation
Cancel Tool Compensation: G40 y Note the difference between two ways
G43 (G44) H××
N0060 G01 X2.000 Y1.700 7 4 M02 N0070 G40
N0060 G40 G01 X2.000 Y1.700 M02
y H××: specified memory unit used to save height
compensation of tool. y Positive compensation (G43): real position = specified position + value saved in H×× y Negative compensation (G44): real position = specified position ‐ value saved in H××
ramp off block
effective to the end point
Tool‐Height Compensation
Table of Important M codes y M00 Program stop y M01 Optional program stop
y Example: y N0010 G91 G00 X12.0 Y80.0 y N0020 G44 Z‐32.0 H02;
y M02 Program end
G91: incremental coordinates
y M03 Spindle on clockwise y M04 Spindle on counterclockwise y M05 Spindle stop
y If we put 0.5mm into H02,
y M06 Tool change
y real position = ‐32.0 ‐ 0.5 = ‐32.5
y M08 Coolant on
y Cancel tool‐height compensation: G49
y M09 Coolant off y M10 Clamps on y M11 Clamps off y M30 Program stop, reset to start
Rules for programming Block Format
Example of CNC Programming
N135 G01 X1.0 Y1.0 Z0.125 F5 Sample Block • Restrictions on CNC blocks • Each may contain only one tool move • Each may contain any number of non-tool move G-codes • Each may contain only one feed rate • Each may contain only one specified tool or spindle speed • The block numbers should be sequential • Both the program start flag and the program number must be independent of all other commands (on separate lines) • The data within a block should follow the sequence shown in the above sample block
y What Must Be Done To Drill A Hole On A CNC
Vertical Milling Machine g
9
10/1/2011
Tool Home
Top View
Top View
2.) Z Axis Rapid Move Just Above Hole 3.) Turn On Coolant 4.) Turn On Spindle ) O i dl
1.) X & Y Rapid To Hole Position
Front View
Front View
Top View
Top View 55.) Z Axis Feed Move to Drill Hole
Front View
.100”
6.) Rapid Z Axis Move Out Of Hole
Front View
Here’s The CNC Program!
Top View
7.) Turn Off Spindle
Top View
8.) Turn Off Coolant
Front View
9.) X&Y Axis Rapid Move Home
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
10
10/1/2011
Tool At Home
Top View
O0001 O0001 Number Assigned to this program
Front View
Top View
O0001 N005 G54 G90 S600 M03 N010 G00 X1.0 Y1.0
O0001 N005 G54 G90 S600 M03 N005 G54 G90 S600 M03
Top View
R id M i Rapid Motion X Coordinate 1.0 in. from Zero Y Coordinate 1.0 in. from Zero
Front View
Front View
Top View
Sequence Number Fixture Offset Absolute Programming Mode Spindle Speed set to 600 RPM Spindle on in a Clockwise Direction
Front View
G00 G X1.0 Y1.0
Top View
Tool At Home
Front View
O0001 N005 G54 G90 S600 M03 N010 G00 X1.0 Y1.0 N015 G43 H01 Z.1 M08 N020 G01 Z‐.75 F200 G01 Z‐.75 F200
Straight Line Cutting Motion Z Coordinate ‐.75 in. from Zero Feed Rate set to 200 mm/min.
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
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
11
10/1/2011
O0001 N005 G54 G90 S600 M03 N010 G00 X1.0 Y1.0 N015 G43 H01 Z.1 M08 N020 G01 Z‐.75 F3.5 75 3 5 N025 G00 Z.1 M09 N030 G91 G28 X0 Y0 Z0
Top View
G91 Incremental Programming Mode G28 Zero Return Command X0, Y0, Z0 X,Y,& Z Coordinates at Zero
Front View
APT Language y APT (Automatically Programmed Tools) y The APT language consists of many different types of
statements made up of the following valid letters, numerals and punctuation marks. y Letters: ABCDEFGHIJKLMNOPQRSTWWXYZ y Numerals: 0123456789 / A slash divides a statement into two sections. eg., GO/PAST, , A comma is used as a separator between the elements in a statement generally to the right of the slash. = An equals is used for assigning an entity to a symbolic name, e.g., CI = CIRCLE/25,50,30.
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 N020 G01 Z‐.75 F3.5 N025 G00 Z.1 M09 N030 G91 G28 X0 Y0 Z0 N035 M30 M30
End of Program
Words y The words to be used in the statements are built up from
one to six letters or numerals with the first one being a letter. No special character is allowed in the words.
The complete APT part program consists of the following four types of statements y Geometry y Motion y Post processor y Compilation control
12
10/1/2011
APT Language
APT Language
Other capabilities of APT, the macro facility, with use variable argument as in a FORTRAN subroutine, for example:
Additional statements:
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
¾ MACHIN/DRILL, 2 ¾ COOLNT/
p For example: COOLNT/MIST
COOLNT/FLOOD
COOLNT/OF
¾ FEDRAT/ ¾ SPINDL/ For example: SPINDL/ON ¾ TOOLNO/ ¾ TURRET/ ¾ END
when the definition of the macro DRILL is:
SPINDL/1250, CCLW
DRILL = MACRO/X, Y, Z, DEPTH GOTO/X,Y,Z GODLTA/0,0, -DEPTH GODLTA/0,0, DEPTH TARMAC
73
Point (POINT)
Other Part Programming Languages
PTA = POINT/ 3,4,5
y ADAPT (ADaptation APT) was the first attempt to adapt APT y y
y y y
74
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 E I i ibl i h APT d h h 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
y (3, 4, 5) PTA z
x
75
Point (POINT)
Point (POINT)
PTB = POINT/ INTOF, LIN1, LIN2
PTD = POINT/ YSMALL, INTOF, LIN3, C1 PTD = POINT/ XSMALL, INTOF, LIN3, C1 PTC = POINT/ YLARGE, INTOF, LIN3, C1 PTC = POINT/ XLARGE, INTOF, LIN3, C1
y
PTC
LIN2
LIN3 PTB
C1
LIN1 PTD
x
13
10/1/2011
Point (POINT)
Point (POINT) PT7 = POINT/ CENTER, C6
PTE = POINT/ YLARGE, INTOF, C1, C2 PTE = POINT/ XLARGE, INTOF, C1, C2 PTF = POINT/ YSMALL, INTOF, C1, C2 PTF = POINT/ XSMALL, INTOF, C1, C2
y y
C1
C6
PTE
PT7
PTF
C2
x
Line (LINE)
x
Line (LINE) LIN4 = LINE/ PT6, 15, -30, 3
LIN1 = LINE/ P1, P2
y y PT6 P2
P1 L4
(15, ‐30, 3)
LIN1 x
x
Line (LINE)
Line (LINE)
L12 = LINE/ PT4, ATANGL, 20, XAXIS L14 = LINE/ PT1, ATANGL, 40 L15 = LINE/ 32, -3, 2, ATANGL, -15, XAXIS L16 = LINE/ PT3, ATANGL, 40, YAXIS
LIN = LINE/ POINT, ATANGL, ANGLE (in degrees), LINE y LINE2
y PT3
L14 L
P1
40°
L12
PT1
L16
30°
PT4
LINE1
LINE2 = LINE/ P1, ATANGL, 30, LINE1 40° L15
20° 15°
x
x
(32, ‐3, 2)
14
10/1/2011
Line (LINE)
Line (LINE) LIN = LINE/ SLOPE, SLOPE VALUE, INTERC, MODIFIER, d where the slope value is y/x. The modifier options are [XAXIS, YAXIS], and d is the corresponding intercept value on the selected axis (i.e., modifier).
LIN = LINE/ ATANGL, DEGREES, INTERC, MODIFIER, d The modifier options are [XAXIS, YAXIS], and d is the corresponding intercept value on the selected axis (i.e., modifier).
y
y
LINE1
LINE1
LINE1 = LINE/ SLOPE, 1, INTERC, x‐axis, 6
LINE1 = LINE/ ATANGL, 30, INTERC, d θ = 30°
x
x
(6,0) Point of X‐Intercept
d
Line (LINE)
Line (LINE) The LEFT & RIGHT modifier indicates whether the line is at the left or right tangent point, depending on how one looks at the circle from the point.
L2 = LINE/ PT51, RIGHT, TANTO, C11 L3 = LINE/ PT40, RIGHT, TANTO, C11 L4 = LINE/ PT40, LEFT, TANTO, C11 L3
Right
L1 = LINE/ PT51, LEFT, TANTO, C11
PT40
L1 Left
L1 Left
C11 PT51
L4
PT51 Right
L2
Line (LINE)
Plane (PLANE)
LN3 = LINE/ PNT6, PARLEL, LN15 LN4 = LINE/ PNT5, PERPTO, LN13
LN5 = LINE/ INTOF, PLAN1, PLAN2 LN5
y PNT6
PNT5
LN3 LN4
LN15
LN13
PLAN1 PLAN2
x
15
10/1/2011
Plane (PLANE)
Plane (PLANE)
PLAN10 = PLANE/ PT6, PT12, PT15
PLAN14 = PLANE/ PT4, PARLEL, PLAN10 PLAN14 = PLANE/ PARLEL, PLAN10, YSMALL, 3.0 PLAN10
PLAN10
PT15 PT15 PT6
PT12
y
PT6
y
3.0
PT12 3.0
PT4
PT4 z
z
PLAN14
PLAN14 x
x
Circle (CIRCLE)
Circle (CIRCLE)
C1 = CIRCLE/ 3, 6, 5, 4.3 C1 = CIRCLE/ CENTER, PT3, RADIUS, 4.3
C3 = CIRCLE/ CENTER, PT6, TANTO, LN4 C7 = CIRCLE/ CENTER, PT8, PT5
y
y
y
C1
LN4 PT5
4.3 PT3 (3,6,5)
PT6
PT8 C7
C3
x
The Machining Plan: Contouring:
x
The Machining Plan
z
Check surface: a surface at which the current tool motion is to stop.
Check surface
Drive surface
Part surface: the surface on which the end of the tool is riding. Drive surface: the surface against which the edge of the tool rides.
x
y
cutter
Direction of cutter motion
x
Part surface
16
10/1/2011
The Machining Plan
The Machining Plan Motion commands:
CS
CS
DS
CS
DS
DS
GOLFT/
: Move left along the drive surface
GORGT/
: Move right along the drive surface
GOUP/
: Move up along the drive surface
GODOWN/ : Move down along the drive surface GOFWD/
TO
ON
PAST
Machining Specifications Postprocessor commands for a particular machine tool are: MACHIN/ : used to specify the machine tool and call the postprocessor for that tool: MACHIN/ DRILL,, 3 COOLNT/ : allows the coolant fluid to be turned on or off:
: Move forward from a tangent position
GOBACK/ : Move backward from a tangent position
Machining Specifications FEDRAT/ : specifies the feed rate for moving the tool along the part surface in inches per minute: FEDRAT/ 4.5 SPINDL/ : gives the spindle rotation speed in revolutions per minute:
COOLNT/ MIST
SPINDL/ 850
COOLNT/ FLOOD
TURRET/ : can be used to call a specific tool from an automatic tool changer:
COOLNT/ OFF
TURRET/ 11
Machining Specifications
Machining Specifications
TOLERANCE SETTING: Nonlinear motion is accomplished in straight-line segments, and INTOL/ and OUTTOL/ statements dictate the number of straight-line segments to be generated.
PARTNO: identifies the part program and is inserted at the start of the program.
INTOL/ 0.0015
CUTTER: specifies p a cutter diameter for offset ((rough g versus finish cutting). If a milling cutter is 0.5 in. in diameter and we have
OUTTOL/ 0.001
CLPRINT: indicates that a cutter location printout is desired.
CUTTER/ 0.6 then the tool will be offset from the finish cut by 0.05 in.
17
10/1/2011
APT Program
Machining Specifications
MACHIN/ MILL P0 = POINT/ 0, 0, 3
FINI: specifies the end of the program.
P1 = POINT/ 1, 0 L1 = LINE/ P1, SLOPE, 0 L2 = LINE/ P1, SLOPE, 90 L3 = LINE/ PARLEL, L1, YLARGE, 2 L4 = LINE/ (POINT/ 4, 2), SLOPE, 1, L3 L5 = LINE/ (POINT/ 6, 4), ATANGL, 270, L4
P3
L6 = LINE/ (POINT/ 10, 10 0), 0) PEPTO, PEPTO L3
L4
P2 = POINT/ INTOF, L3, L4 P3 = POINT/ INTOF, L4, L5 P4 = POINT/ INTOF, L5, L3
L5
P2
L3
P4
L3
L2
PL = PLANE/ P1, P2, P3
L6
P1
CUTTER/ 60
L1
TOLER/ 0.1 SPINDL/ 200 COOLNT/ ON
P0
FEDRAT/ 20
APT Program
APT Program
MACHIN/ MILL FROM/ P0
P0 = POINT/ 0, 0, 3 P1 = POINT/ 1, 0
GOTO/ L1, TO, PL, TO, L2
L1 = LINE/ P1, SLOPE, 0
GOFWD/ P1, PAST, L3
L2 = LINE/ P1, SLOPE, 90
GORGT/ L3, TO, P2
L3 = LINE/ PARLEL, L1, YLARGE, 2
GOLFT/ P2, TO, P3
L4 = LINE/ (POINT/ 4, 2), SLOPE, 1, L3
GORGT/ P3, TO, P4
L5 = LINE/ (POINT/ 6, 4), ATANGL, 270, L4
GORGT/ P4, PAST, L6
L6 = LINE/ (POINT/ 10, 10 0), 0) PEPTO, PEPTO L3
GORGT / L6, PAST, L1
L4
L5
P2 = POINT/ INTOF, L3, L4
L3
P4 = POINT/ INTOF, L5, L3
L6
PL = PLANE/ P1, P2, P3
P2
P4
P1
L3 L6
L1
END FINI
L1
CUTTER/ 60
L5
L2
COOLNT/ OFF L2
TOLER/ 0.1 COOLNT/ ON
L3
GORGT / L1, TO, P1
P3 = POINT/ INTOF, L4, L5
SPINDL/ 200
P3 L4
P0 P0
FEDRAT/ 20
APT Language Example:
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 107
108
18
10/1/2011
APT Language Example 1:
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 109
110
APT Language Example 2:
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 111
112
APT Language Answer: FROM/SP GO/TO, L1, TO, PS, ON, L4 GORGT/L1, PAST, L2 GOLFT/L2, GOLFT/L2 PAST, PAST L3 GOLFT/L3, PAST, C1 GOLFT/C1, PAST, L3 GOLFT/L3, PAST, L4 GOLFT/L4, PAST, L1 GOTO/SP 113
19
10/1/2011
20
10/1/2011
21