Anda di halaman 1dari 95

CNC

For
CAD/CAM
and

Engineering Technology
Students
Computer Numerical Programming for
Fanuc 18i & 21i
and
Anilam 5000 series
Controllers

Course Codes
MET406 and CAM420

St. Clair College of Applied Arts and Technology

THIS PAGE LEFT BLANK INTENTIONALLY

2
Revised August 2005 by Brian LaBombard

St. Clair College of Applied Arts and Technology

TABLE OF CONTENTS
TOPIC:

PAGE:

Coordinate Words and the Controlled Axes 5


CNC Program Line Syntax for Anilam 5300 and Fanuc 18i & 21i 7
Absolute and Incremental Programming, G90 & G91.. 10
Coordinate Preset Programming, G92 and G54 to G59........................................................ 11
Linear Interpolation, G00 (G0) & G01 (G1) 12
Program Openings and Program Closings.... 14
Circular or Arc Interpolation, G02 (G2) & G03 (G3).. 15
Tool Radius Compensation, G39, G40, G41, G42 18
Offset Memory Locations, H & D (used for tool radius & tool length compensation). 21
Automatic/Manual Tool Changes, M6, T... 21
Tool Length Compensation, G43, G44, G49.... 22
FANUC Fixed Cycles, G73, G74, G76, G80-G89 .... 23
ANILAM Fixed Cycles for DRILLING, G79, G179, G80-G89.. 54
ANILAM Fixed Cycles for MILLING, G45, G49, G73, G75-G78, G169, G177-G178............. 56-57, 69
Subprograms and Subroutines, M98, M99.... 80
Appendix A List of `G' and `M' codes ANILAM and FANUC. 85
Appendix B Charts and Tables for Feeds Speeds Tap Drill sizes etc. 133

3
Revised August 2005 by Brian LaBombard

St. Clair College of Applied Arts and Technology

THIS PAGE LEFT BLANK INTENTIONALLY

4
Revised August 2005 by Brian LaBombard

St. Clair College of Applied Arts and Technology

COORDINATE WORDS AND CONTROLLED AXES


When referring to the diagram below the:
X = the longitudinal movement of the machine table or the diameter size on the lathe
Y = the cross feed movement of the machine saddle
Z = the vertical movement of the machine head or the depth along the length of a round part.
A, B, C or U, V, W or I, J, K = rotary axes
On a milling machine the movements illustrated designate the movement of the spindle with relationship to the
workpiece and DO NOT associate to table movement. For example, moving the milling machine spindle X+
would move the cutting tool to the right (the table movement would be to the left). Programming lathe
movement also considers the movement of the cutting tool and not the movement of the workpiece.

5
Revised August 2005 by Brian LaBombard

St. Clair College of Applied Arts and Technology

COORDINATE WORDS AND CONTROLLED AXES


Methods used to control 4th and 5th axes

Machine Head Rotation

Combination of machine head movement and rotary table

Rotary Table performs all rotation

6
Revised August 2005 by Brian LaBombard

St. Clair College of Applied Arts and Technology

CNC PROGRAM LINE SYNTAX


Fanuc 18i/21i and Anilam 5000M
Although each machine tool controller has similar abilities and uses much the same programming to perform a
particular task, the format or syntax used to direct each machine will vary.
Each CNC program consists of a number of program lines (blocks). Each block consists of one or more words.
A CNC word consists of and Address + a number (e.g. X-1000.5). An address MUST be an upper case letter
from A to Z which defines the number that follows. The same address may have different meanings depending
on the preparatory function (G code) specified.

7
Revised August 2005 by Brian LaBombard

St. Clair College of Applied Arts and Technology

CNC PROGRAM LINE SYNTAX


Fanuc 18i/21i and Anilam 5000M
Major addresses and the range of values specific to each address are shown below.

8
Revised August 2005 by Brian LaBombard

St. Clair College of Applied Arts and Technology

CNC PROGRAM LINE SYNTAX


Fanuc 18i/21i and Anilam 5000M
PROGRAM
COMPONENTS
OTHER THAN
PROGRAM
SECTIONS

This section describes program components other than program


sections. One or more programs may be saved in a file using the
following configuration.
Leader section
Fanuc Start
of Data
O word

O word

Explanations

%
(TITLE) ;
O0001 ... ;
..
..
..
N0025..
(COMMENT)
[COMMENT]
..
..
N0050 M30 or M2;

Program end M30 or M2

O0002 ;

Second program start

..
..
..
N0050 M99;

Subprogram end with M99

Fanuc ONLY %

Program start with LF+CR


(the semi colon is displayed)

Program Comment Fanuc


Program Comment Anilam

End of Data

Data Start

The program start is identified by a percent sign (%) and indicates the
start of a file that contains NC program(s).

Leader Section

Data entered before the programs in a file constitutes a leader section.


A leader section generally contains information such as a file header.
A leader section can contain any codes except the EOB (end-of-block
or ;) code.

Program Start

The program start code is to be entered immediately after a leader


section, that is, immediately before a program section. This code
indicates the start of a program, and is always required to disable the
label skip function.
Program start = a Line Feed (LF) plus a carriage Return (CR) usually
looks like a semi-colon (;) at the end of a program line.

Program End

The program end code (M30 or M99) followed by a LF + CR indicate


the end of program data but not necessarily the end of all data.

Data End

The end of data symbol (%) is to be placed at the end of a file


containing NC program(s).

9
Revised August 2005 by Brian LaBombard

St. Clair College of Applied Arts and Technology

ABSOLUTE AND INCREMENTAL MACHINE MOVEMENTS


(G90 AND G91)
One of initial decisions that must be made when programming NC/CNC movements is whether to use absolute
(ABS) or incremental (INC), or both as the dimensioning system(s) for your machining process. Consider the
following:
More ease in writing the program if you select the dimensioning system used on the print.
Complex math calculations can sometimes be avoided by switching dimensioning systems.
Tolerance factors on the part to be produced.
ABSOLUTE:
When a G90 command is entered in a program block, all further machine movements are performed as an
absolute value. When the dimensions for each hole, or part configuration position, are indicated from a
particular origin, reference plane, work face, or datum line, we are said to be in an absolute mode. This code is
modal.

In the example shown here, the lower left corner is the origin of all programming dimensions.
INCREMENTAL:
When a G91 command is entered in a program block, all further movements are performed as an incremental
value. When the dimensions for each hole, or part configuration position, are indicated by the pitch or distance
from one to the next, we are said to be in incremental mode. This code is modal.

In the example shown here, the pitch from one to the next indicates the holes position.
10
Revised August 2005 by Brian LaBombard

St. Clair College of Applied Arts and Technology

COORDINATE PRESETS (G54 G59 and G92)


The G54 command is commonly used for single and multiple fixtures mounted on the machine table to produce
one or more parts with a single program. The G54 command has values entered in the X Y and Z registers at the
machine controller that represent the Zero position of the first fixture/workpiece mounted on the machine table
relative to the machine zero position. G55, through G59 represent the fixture/workpiece locations illustrated
below. The second diagram illustrates moving ALL the offsets an equal amount by entering an external offset.
Workpiece
Coordinate system
Number 1

Workpiece
Coordinate system
Number 2

Workpiece
Coordinate system
Number 3

Workpiece
Coordinate system
Number 4

Workpiece
Coordinate system
Number 5

G54 (G53 O1)

G55 (G53 O2)

G56 (G53 O3)

G57 (G53 O4)

G58 (G53 O5)

EXOFS

Workpiece
Coordinate system
Number 6

G59 (G53 O6)


Machine Zero

The syntax used of the Anilam 5500M controller is as follows; G53 O3, where O3 represents a memory
register that contains the distance from machine home to the program origin. Anilam has 99 such offsets. No
movement takes place on this line. It must be followed by an X and Y move to active the offset.
Example
Fanuc
N10 G54 X__ Y__ Z__ M3 S1200 (G54 - establishes the program origin relative to the machine home
position on all 3 axes, M3 sets the spindle rotation to clockwise, S1200 set the spindle speed to 1200R.P.M.'s )
Anilam
N25 G53 O1 (Activates Fixture Offset number 1 which locates the part from the machines HOME position)
N30 X__ Y____M3 S_____ (Move to a position and start spindle in clockwise direction at a specified
R.P.M.)

11
Revised August 2005 by Brian LaBombard

St. Clair College of Applied Arts and Technology

LINEAR INTERPOLATION
(G00 AND G01)
Rapid Traverse Positioning: (G00 or G0)
Positioning is done in the rapid traverse mode using the following command in a program line or block.
G0 X..... Y..... Z.....; (the colon (;) indicates a line feed (LF) plus a carriage return(CR))
With this command, up to 3 axes can be controlled simultaneously.
The tool path is linear from the start point to the end point, thus, the name linear interpolation rapid.
A typical G00 (rapid) move
End Point

450

Start Point
X, Y and Z are final point coordinate values and may be designated in either incremental or absolute. The
feedrate is controlled by a preset rapid traverse in the range of 150 to 1100 i.p.m. depending on the machine
tool.
G00, G90 and G91 commands are modal under most conditions.
Feed Rate Positioning: (G01 or G1)
This positioning is done using a G code and a feedrate code (F). These 2 codes are said to be associative.
e.g.
G1 X..... Y..... Z..... F...(F indicates the rate of feed in inches/min. of m.m./min.)
This command is for linear interpolation by cutting feed and up to 3 axes can be controlled simultaneously.

12
Revised August 2005 by Brian LaBombard

St. Clair College of Applied Arts and Technology

LINEAR INTERPOLATION
(G00 AND G01)
Listed below are 2 examples of linear interpolation using the G00 and G01 commands.
Here is an example of a simple XY linear Interpolation move.
(G91) G01 X150.0 Y100.0 F200.0
Y axis
100.00

(End point)

X axis
0, 0 (Start point)

150.00

Feedrate move for rotation axis C. (FANUC only)


G91 G01 C-90.0 G300.0

(Start point)

900

(End point)

Feedrate of 300 deg. /min.

13
Revised August 2005 by Brian LaBombard

St. Clair College of Applied Arts and Technology

PROGRAM OPENINGS AND CLOSINGS


We can now begin assembling some of the basic information we have gathered and make a working program.
We will begin with a SAFETY LINE to ensure a controlled program start. We will use a complete safety line
in this example. Along with cancelling any special programming techniques the choice of a machining plane
and absolute or incremental programming is established. We set a work coordinate offset to tell our machine
how far the PROGRAM ORIGIN is from the MACHINE ZERO (G54 G59).
Once a number of these things have been defined we can tell the machine to move. A typical program opening
for a single cutting tool program may look like this.
Fanuc 18i/21i Programming
%
O1234 (program number)
N5 G0 G17 G40 G80 G90/91 (G0 - sets rapid, G17 - sets XY plane for circular interpolation, G40 - cancels
tool radius compensation, G49 cancels tool length compensation, G80
cancels drilling cycles and G90 or G91 is set for ABSolute or
Incremental)
N10 G54 X__ Y__ M3 S1200 (G54 moves the machine to a program position relative to the machine home
position on X and Y. M3 sets the spindle rotation to clockwise, S1200 set the spindle speed to 1200R.P.M.'s )
N15 G43 Z___ H1 (G43 - tool length compensation, Z - rapid move. The tool length is found at offset H1)
N20 G1 Z___ F___ (Changes to a G1 feedrate move on Z)
NOTE:
In the above example N10 and N15 may be reversed depending on the machining operation required.
A program closing returns the machine to all of its default values. This involves cancelling any special
functions that may have been used during the program, e.g. tool radius compensation, tool length compensation,
fixed cycles and so on.
N36 (G80) G91G28 Z____ (the brackets around the G80 and G40 commands indicate they are optional)
N37 (G40) G28 X____ Y____
N38 M30
%

14
Revised August 2005 by Brian LaBombard

St. Clair College of Applied Arts and Technology

PROGRAM OPENINGS AND CLOSINGS


Anilam 5500M Controller
Program opening
O4321
N5 G0 G17 G40 G70 G80 G90 M5 (set rapid, XY plane, cancel tool radius compensation, inches and
ABSolute, set tool number to 0, and turn off the spindle)
N15 T0 Z0
(Cancel tool length compensation and move to machine Z0, tool change
position)
N20 T1
(Stops program execution to insert tool , picks up tool radius and length from
Tools page)
N25 G53 O1 (Activates Fixture Offset number 1 which locates the part from the machines HOME position)
N30 X__ Y____M3 S_____ (Move to start point and start spindle in clockwise direction at a specified
R.P.M.)
N35 Z1. (Rapid to 1 inch above the part)
N40 G1 Z_____ F____ (Feed down to cutting depth)

Program closing
N155 G0 Z.5 M5 (Raise Z axis above the part and turn off spindle)
N160 X____ Y_____ (Move to a position to unload part, e.g. X-3. Y3.)
N165 G53 O0 (Cancels Fixture Offsets)
N170 T0 Z0 M9 (return Z to tool change position and turn off water)
N175 M2 (end of program cycle)

15
Revised August 2005 by Brian LaBombard

St. Clair College of Applied Arts and Technology

CIRCULAR OR ARC INTERPOLATION


(G02 & G03 or G2 & G3)
Fanuc 18i/21i and Anilam 5500M Programming
Circular interpolation can be performed on the following combinations of axes.
G2/G3 X....Y....I....J....F....
or
G2/G3 X....Y....R....F....
G2/G3 X....Z....I....K....F....
or
G2/G3 X....Z....R....F....
G2/G3 Y....Z....J....K....F....
or
G2/G3 Y....Z....R....F....
The I, J, K can be replaced with `R' if the radius size is known.
X, Y and Z are coordinate values of the END POINT of the arc and can be designated in either incremental or
absolute values.
I, J and K are coordinate values of the CENTRE of the arc as viewed from the START POINT of the arc and
must ALWAYS be designated as INCREMENTAL VALUES.
R refers to the actual radius size and is not related to any coordinate system
Refer to the illustrations below for the relationship of the coordinates.
G2 = Clockwise rotation of the arc (CW)
G3 = Counter clockwise rotation (CCW)
Y

G03

G03

G02

G03

G02

G02

G17
Y

G19

End

End

Start

End

Start

J
Arc Center

G18

Start

I
Arc Center

K
Arc Center

Selection of the arc plane is done by using the G17-G19 commands and then programming the arc using the
correct X, Y, or Z axes. Also using the standard F command can perform the selection of the feed rate; however
the modal feedrates established by G01 are also valid.
It is possible to designate arcs larger than 90 degrees or 1 quadrant in a program line. Full circles can be
machined as easily as the examples shown below. A full circle cannot be accomplished with the 'R' address.
G2/G3 X0Y0I1.
G2/G3 J2.
16
Revised August 2005 by Brian LaBombard

St. Clair College of Applied Arts and Technology

CIRCULAR OR ARC INTERPOLATION


Here is a typical program line for performing a simple arc movement in the incremental mode.

Here is a typical program line for performing a simple arc movement in the absolute mode.

17
Revised August 2005 by Brian LaBombard

St. Clair College of Applied Arts and Technology

CIRCULAR OR ARC INTERPOLATION


The following example shows a typical program line used in developing an arc other than 90 degrees.
Using INCremental programming and designating I and J for the arc center the program line to machine this arc
would be:
G91 G3 X.5559 Y.7244 I-.1941 J.7244
OR
G91 G3 X.5559 Y.7244 R.75

The use of the address R for radius can be specified with an R or R- to develop arcs larger than 180 degrees.
This syntax is explained below.
ARC 1 less than 1800.
G91 G2 X45.0 Y35.0 R50.0 F300.0

ARC 2 greater than 1800


G91 G2 X45.0 Y35.0 R-50.0 F300.0

End point

50 mm radius
R- uses this center

50 mm radius

Start point

Start point

R+ uses this center

18
Revised August 2005 by Brian LaBombard

End point

St. Clair College of Applied Arts and Technology

TOOL RADIUS COMPENSATION (G40, G41 & G42)


Tool radius compensation is used to move a tool off of a programmed tool path approximately the radius, or on
some machines the diameter, size of the tool. A G address and a D address on the same line are used to
accomplish this. Engaging tool radius compensation creates a movement to a 900 vector position, relative to the
next programmed X and/or Y direction.
CODE FUNCTION
G40 (modal) Cancel Tool radius compensation
G41 (modal) Tool radius compensation left
G42 (modal) Tool radius compensation right
NOTE:
1. When the machine is powered up, G40 is the system default.
2. The D address with a number represents a register location (on the machine) where the amount of
compensation can be found. The radius/diameter size of the cutter is entered at the CNC control by the operator.
Therefore the radius/diameter value of the cutter is never found in the program. e.g. G1G41X____Y____D12.
The amount of radius/diameter compensation would be determined by the value placed in the controller at
register D12.
In the diagram below, to cut the shape of A, with a tool of radius R, the path of the tool is indicated by B, a path
removed from A by the distance R. This placement of the cutting tool is called OFFSET or RADIUS
COMPENSATION.

NOTE: The controller when calculating its tool position, creates a positioning vector. This vector is equal to
the value of the offset,(e.g. D5=.25) and is created at 90 deg. to the next programmed G0, G1, G2 or G3 X
and Y movement direction in the program. The controller moves the centre of the cutting tool to the end of the
vector during a programmed 'dummy move' move. Once tool radius compensation is engaged it remains modal
until a G40 with an X and/or Y move cancels compensation.

19
Revised August 2005 by Brian LaBombard

St. Clair College of Applied Arts and Technology

TOOL RADIUS COMPENSATION (G40, G41 & G42)


G41 (compensation left), G42 (compensation right)
Used in G00 and G01 mode.
G0/G1 G41/G42 X....Y....D.... (Fanuc 18i and 21i, where D refers to an offset location on tools page)
G0/G1 G41/G42 X....Y....R.... (Anilam 550M, where R refers to the actual radius of the tool)
The controller will look ahead (2 lines for Fanuc, as many as necessary for Anilam) in the program to find
the next direction of movement in X and/or Y. If no X and/or Y move is found, NO compensation is engaged
until an X and/or Y move is read. For this reason it is important to follow a G41or G42dummy move with a
program line containing an X and/or Y.
When G41/G42 is specified with an X and/or Y move of at least the cutter radius size offset mode is
activated+. In the case of G41/G42 when used with G00/G01 they work in combination to make a vector at
the left (G41) or right (G42) at right angles to the direction of the next X and/or Y move, and moves the tool
centre to the end of the vector from the starting point.

NOTES:
1. In the absence of X and Y on the G41/G42 line no movement occurs until a following block provides
movement. Therefore no compensation is established until a movement occurs.
2. The start-up and cancellation of tool radius compensation CANNOT be executed on a program line
where G2 or G3 are modal. Starting or cancelling compensation must be programmed using a modal
G0 or G1. Once compensation is established arcs are cut automatically with the tool offset as described
below.

20
Revised August 2005 by Brian LaBombard

St. Clair College of Applied Arts and Technology

TOOL RADIUS COMPENSATION (G40, G41 & G42)


G41 (compensation left), G42 (compensation right)
Used in the G02/G03 mode.
G02/G03 X....Y....R....; (A G41 or G42 command is NOT ALLOWED on this line!)
Tool radius compensation MUST already be engaged before designating an arc. Tool radius comp. cannot be
designated with an arc. Therefore G0 and G1 must be used to start Tool Radius Comp. and then arcs may be cut
without any changes to programming syntax.

Example of linear-to-linear move

Example of linear-to-arc move

21
Revised August 2005 by Brian LaBombard

St. Clair College of Applied Arts and Technology

H&D OFFSET MEMORY LOCATIONS (H1 to H32 and D1 to D32)


Fanuc ONLY
The H and D codes in addition to an address number (1 to 32) can be used for designating an offset value
location for the length of a cutting tool using an 'H', or the radius/diameter of a cutting tool using a D.
1. The H address is used for the designation of Tool Length Compensation.
2. The D address is used for the designation of Tool Radius Compensation.
3. Some controllers allow ONLY 1 value in each of the 32 memory registers. Therefore if H1 contains a
value for tool length compensation then you are unable to use D1 for tool radius compensation as it
would use the tool length compensation value. For example, D13 and H13 are the actually the same
memory location on the controller and each of the 32 registers can be used only once.
4. Still other controllers offer the ability to enter 2 values per register number and therefore tool length
compensation and a tool radius compensation values can have the same register number. e.g. H1 and D1
would automatically use the correct values for both length and radius compensation.
5. Only one (1) offset number command can be designated in one (1) block or program line on the Fanuc.
Both an H and a D are allowed on the same program line on the.

AUTOMATIC/MANUAL TOOL CHANGES


When a program uses more than 1 cutting tool the H offset memory location is used in conjunction with TOOL
LENGTH COMPENSATION to register the difference in the length of cutting tools being used. In addition,
most CNC machines MUST be located at the HOME position on the Z axis to perform an automatic tool
change.
Automatic tool change programming is shown below.
The CNC machine will use the tool change sequence but it can be performed much easier on the as shown
below.
Fanuc 18i and 21i
N55 M6 T2 (Move the spindle rapidly to Home position on Z, unloads current tool and loads tool specified)
N60 G0 G43 Z1. H2 (Introduces tool length compensation using the value registered at H2
Anilam 5500M with manual tool change
N100 G0 Z.5 M5 (Raise Z axis above part and turn off spindle)
N115 T0 Z0 (cancel tool length compensation and return Z to tool change position)
N105 X____ Y_____ (Move to a position to unload part, e.g. X-3. Y3.)
N120 T2 (Change to next tool)
N130 X__ Y____M3 S_____ (Move to start point and start spindle in clockwise direction at a specified
R.P.M.)
N135 Z1. (Rapid to 1 inch above the part)
N140 G1 Z_____ F____ (Feed down to cutting depth)
22
Revised August 2005 by Brian LaBombard

St. Clair College of Applied Arts and Technology

TOOL LENGTH COMPENSATION (G43 G44 & G49)


Tool Length Compensation is used to adjust the Z-axis to allow for the different lengths of cutting tools when
programming multiple tool programs. The H address and a register number are used to point to the location of
the tools length. The H offset number remains modal throughout the use of the tool.
G43: Tool length compensation + plus.
G44: Tool length compensation - minus.
G49: Tool length compensation cancel. (Generally not used in programming)
The H number is modal and if no H designation is in the G43 command, the H number previously used is
called.
When a tool change is performed the G43/G44 command must be designated again with a new H offset
number to identify the length of the new tool.
Program command

H Offset value entered at the CNC machine

G91/G90
G0 G43 Z25. H11
G0 G43 Z25. H15
G0 G43 Z25. H31

Tool length comp. movements are the same for G90 or G91
H11 = 200
H15 = 190
H31 = 150

In the above examples the amount of movement of the Z axis would be different each time using the offset
values to the right, however each tool would arrive at a position 25.0 mm above the part surface.
Tool length compensation can ONLY be used during G0 or G1 machine movements NOT G2 or G3

23
Revised August 2005 by Brian LaBombard

St. Clair College of Applied Arts and Technology

FANUC FIXED OR CANNED CYCLES (G73, G74, G76, G80-G89)


CANNED CYCLE

Canned cycles make it easier for the programmer to create programs.


With a canned cycle, a frequently used machining operation can be
specified in a single block with a G function; without canned cycles,
normally more than one block is required. In addition, the use of canned
cycles can shorten the program to save memory. These canned cycles
are listed below.

24
Revised August 2005 by Brian LaBombard

St. Clair College of Applied Arts and Technology

FANUC FIXED OR CANNED CYCLE OPERATIONS


Explanations

A canned cycle consists of a sequence of six operations.


Operation 1 positioning of X and Y axes (or other axes)
Operation 2 Rapid traverse down to point R level
Operation 3 Hole machining takes place
Operation 4 Operation at the bottom of hole takes place
Operation 5 Retraction to point R level
Operation 6 Rapid traverse up to the initial level
NOTE: Steps 5 and 6 are return movements to different heights above
the part and are controlled by the G98 and G99 commands.

Plane Selection

The positioning plane is determined by the plane selection codes G17,


G18 and G19
The positioning axis is any axis other than the drilling axis.

Drilling Axis

The term drilling will be used to define all the machining performed by
these canned cycles which include tapping, boring, counterboring,
countersinking etc.
The drilling axis is any basic axis (X, Y, or Z) that is not considered a
positioning axis and is commanded in the same program line as the
drilling G code (G73, G74, G76, G81 G89)

25
Revised August 2005 by Brian LaBombard

St. Clair College of Applied Arts and Technology

FANUC FIXED OR CANNED CYCLE OPERATIONS


Travel distance along the
drilling axis

The travel distance along the drilling axis varies from G90 and G91 as
follows.

Drilling Mode

G73, G74, G76, and G81 to G89 are modal G codes and remain in
effect until cancelled. When any of these G codes are in effect, the
current state is the drilling mode. Once drilling data is specified in the
drilling mode, the data is retained; until modified or cancelled.
Specify all necessary drilling data at the beginning of canned cycles;
when canned cycles are being performed, specify data modifications
only

26
Revised August 2005 by Brian LaBombard

St. Clair College of Applied Arts and Technology

FANUC FIXED OR CANNED CYCLE OPERATIONS


Return point level
G98/G99

When the tool reaches the bottom of a hole, the tool may be returned to
the point R or the initial level. These operations are specified with G98
and G99. The following illustrates how the tool moves when G98 and
G99 is specified. Generally, G99 is used for the first drilling operation
and G98 is used for the last drilling operation.

The initial level does not change even when drilling is performed in the
G99 mode.
Repeat

To repeat drilling for equally-spaced holes, specify the number of


repeats using the address K__.
K is effective only within the block where it is specified.
Specify the first hole position in incremental mode (G91).
If it is specified in absolute mode (G90), drilling is repeated at the same
position.
Number of repeats = K the maximum command value = 999

Cancel

To cancel a canned cycle, use G80 or a group 01 G code (G0 G3)

27
Revised August 2005 by Brian LaBombard

St. Clair College of Applied Arts and Technology

FANUC FIXED OR CANNED CYCLE OPERATIONS


High-speed Peck
Drilling Cycle
(G73)

This cycle performs high-speed peck drilling. It performs intermittent


cutting feed to the bottom of a hole while removing chips from the hole.

Syntax

NOTE: The d indicates a retract distance set by parameter.

28
Revised August 2005 by Brian LaBombard

St. Clair College of Applied Arts and Technology

FANUC FIXED OR CANNED CYCLE OPERATIONS


Explanations
Limitations

The high-speed peck drilling cycle performs intermittent feeding along


the Z-axis. When this cycle is used, chips can be removed from the hole
easily, and a smaller value can be set for retraction. This allows, drilling
to be performed efficiently. Set the clearance, d, in parameter 5114.
The tool is retracted in rapid traverse.
Before specifying G73, start spindle rotation using a miscellaneous
function (M code). When the G73 code and the M code are specified in
the same block, the M code is executed at the same time of the first
positioning operation. The system then proceeds to the next drilling
operation.
When K is used to specify the number of repeats, the M code is executed
for the first hole only; for the second and subsequent holes, the M code
is not executed.
When tool length offset (G43, G49, or G49) is specified in the canned
cycle, the offset is applied at the time of positioning to point R.

Axis switching

Before the drilling axis can be changed, the canned cycle must be
cancelled using G80.

Drilling

In a block that does not contain X, Y, Z, R or any other axes, drilling is


not performed.

Q/P

Specify Q and P in blocks that perform drilling. If they are specified in a


block that does not perform drilling they cannot be stored as modal data.

Cancel

Do not specify a G code of the 01 group (G0 to G3 or G60) and a G73


in a single block. Otherwise the G73 will be cancelled.

Tool Offset

In the canned cycle mode, tool radius offsets are ignored.

Example

M3 S2000;
start spindle
G90 G99 G73 X300. Y-250. Z-150. R-100. Q15. F120.
Position to/drill hole 1 and return to point R
Y-550.
Position to/drill hole 2 and return to point R
Y-750.
Position to/drill hole 2 and return to point R
X-1000.
Position to/drill hole 2 and return to point R
Y-550.
Position to/drill hole 2 and return to point R
G98 Y-750.
Position to/drill hole 2 and return to point R
G80 G28 G91 X0 Y0 Z0 M5 Return to Machine Home and stop
spindle

29
Revised August 2005 by Brian LaBombard

St. Clair College of Applied Arts and Technology

FANUC FIXED OR CANNED CYCLE OPERATIONS


Left-handed
Tapping Cycle (G74)

This cycle performs left-handed tapping. In the left-handed tapping


cycle, when the bottom of the hole has been reached, the spindle rotates
clockwise.

Syntax

Explanations

Tapping is performed by turning the spindle counterclockwise. When


the bottom of the hole has been reached, the spindle is rotated clockwise
for retraction. This creates a reverse thread. A left handed tap is
necessary.
Feedrate overrides are ignored during a tapping cycle. A feed hold does
not stop the machine until the return operation is complete. Before
specifying G74, use a miscellaneous function (M04) to rotate the
spindle counterclockwise.
When the G74 command and an M code are specified in the same block,
the M code is executed at the time of the first positioning operation. The
system then proceeds to the next drilling operation. When K is used to
specify the number of repeats, the M code is executed for the first hole
only; for the second and subsequent holes, the M code is not executed.
When a tool length offset (G43, G44 or G49) is specified in the canned
cycle, the offset is applied at the time of the positioning to point R.

30
Revised August 2005 by Brian LaBombard

St. Clair College of Applied Arts and Technology

FANUC FIXED OR CANNED CYCLE OPERATIONS


Limitations

Axis switching

Before the drilling axis can be changed, the canned cycle must be
cancelled.

Drilling

In a block that does not contain X, Y, Z, R, or any other axes, drilling is


not performed.

Specify P in blocks that perform drilling. If it is specified in a block that


does not perform drilling, it cannot be stored as modal data.

Cancel

Do not specify a G code of the 01 group (G0 to G3 or G60). This will


cancel the G74 tapping cycle.

Tool Offset

In the canned cycle mode, tool radius offsets are ignored.

Examples

M4 S100
start spindle counterclockwise
G90 G99 G74 X300. Y-250. Z-150. R-120. F120.
Position, tap hole 1 and return to point R
Y-550.
Position, tap hole 2 and return to point R
Y-750.
Position, tap hole 3 and return to point R
X1000.
Position, tap hole 4 and return to point R
Y-550.
Position, tap hole 5 and return to point R
G98 Y-750.
Position, tap hole 6 and return to initial
level
G80 G28 G91 X0 Y0 Z0 Cancel drilling cycle and return to
machine-home position in incremental
M5
Stop spindle

31
Revised August 2005 by Brian LaBombard

St. Clair College of Applied Arts and Technology

FANUC FIXED OR CANNED CYCLE OPERATIONS


Fine Boring Cycle
(G76)

The fine boring cycle bores a hole precisely. When the bottom of the
hole is reached, the spindle stops and the tool is moved away from the
machined surface of the workpiece and retracted.

Syntax

32
Revised August 2005 by Brian LaBombard

St. Clair College of Applied Arts and Technology

FANUC FIXED OR CANNED CYCLE OPERATIONS


Explanations

When the bottom of the hole is reached the spindle is stopped at the
fixed rotation position and the tool is moved in the direction opposite to
the tool tip and retracted. This ensures that the machined surface is not
damaged and enables precise and efficient boring to be performed.
Before specifying G76 start the spindle with an M code (M3).
When the G76 command and an M code are executed in the same block,
the M code is executed at the time of the first positioning operation. The
system then proceeds to the next operation.
When K is used to specify the number of repeats, the M code is executed
for the first hole only. For the remaining holes the M code is not
executed.
When tool length offset (G43, G44 or G49) is specified in the canned
cycle, the offset is applied at the time of positioning to point R.

Limitations

Axis switching

Before the drilling axis can be changed, the canned cycle must be
cancelled.

Boring

In a block that does not contain X, Y, Z, R, or any other axes, drilling is


not performed.

P/Q

Be sure to specify a positive value in Q. If Q is specified with a negative


value the sign is ignored. Set P and Q in a block that performs boring. If
they are specified in a non-boring cycle the values are not stored as
modal.

Cancel

Do not specify a G code of the 01 group (G0 to G3 or G60). This will


cancel the G76 boring cycle.

Tool offset

In the canned cycle mode, tool radius offsets are ignored.

Examples

M3 S500
start spindle clockwise
G90 G99 G76 X300. Y-250. Z-150. R-120. Q5.
Position, bore hole 1, return to point R,
orient at hole bottom, then shift 5mm.
P1000 F120.
Stop at bottom of hole for 1 second.
Y-550.
Position, bore hole 2 and return to point R
Y-750.
Position, bore hole 3 and return to point R
X1000.
Position, bore hole 4 and return to point R
Y-550.
Position, bore hole 5 and return to point R
G98 Y-750.
Position, bore hole 6 and return to initial
level
G80 G28 G91 X0 Y0 Z0 Cancel drilling cycle and return to machinehome position in incremental
M5
Stop spindle
33
Revised August 2005 by Brian LaBombard

St. Clair College of Applied Arts and Technology

FANUC FIXED OR CANNED CYCLE OPERATIONS


Drilling Cycle, Spot
Drilling
G81

This cycle is used for regular drilling. Cutting feed is performed to the
bottom of the hole. After rapid positioning along the X and Y axes, rapid
traverse continues along Z to point R.

Syntax

Explanation

Drilling is performed from point R to the hole bottom (point Z).


The tool is retracted in rapid traverse.
Before specifying G81, use an M code to start the spindle (M3)
When the G81 command and an M code are specified in the same block
the M code is executed at the time or the first positioning operation. The
system then proceeds to the next drilling operation.
When K is used to specify the number of repeats, the M code is executed
on the first hole and the spindle stays running throughout the sequence.
When tool length offset (G43, G44 or G49) are specified in the canned
cycle, the offset is applied at the time of the positioning to point R.

34
Revised August 2005 by Brian LaBombard

St. Clair College of Applied Arts and Technology

FANUC FIXED OR CANNED CYCLE OPERATIONS


Restrictions

Axis Switching

Before the drilling axis can be changed, the canned cycle must be
cancelled.

Drilling

In a block that does not contain X, Y, Z, R, or any other axes, drilling is


not performed.

Cancel

Do not specify a G code of the 01 group (G0 to G3 or G60). This will


cancel the G76 boring cycle.

Tool Offset

In the canned cycle mode, tool radius offsets are ignored.

Example

M3 S500
start spindle counterclockwise
G90 G99 G81 X300. Y-250. Z-150. R-100. F120.
Position, drill hole 1, return to point R,
Y-550.
Position, drill hole 2 and return to point R
Y-750.
Position, drill hole 3 and return to point R
X1000.
Position, drill hole 4 and return to point R
Y-550.
Position, drill hole 5 and return to point R
G98 Y-750.
Position, drill hole 6 and return to initial
level
G80 G28 G91 X0 Y0 Z0 Cancel drilling cycle and return to machinehome position in incremental
M5
Stop spindle

35
Revised August 2005 by Brian LaBombard

St. Clair College of Applied Arts and Technology

FANUC FIXED OR CANNED CYCLE OPERATIONS


Drilling Cycle, Counter
Boring Cycle
(G82)

This cycle is used for standard drilling.


Cutting feed is performed to the bottom of the hole. At the bottom, a
dwell may be performed, and then the tool is retracted in rapid traverse.
This cycle is used to drill hole more accurately with respect to depth.

Syntax

Explanation

After positioning along the X and Y axes, rapid traverse is performed to


point R.
Drilling is then performed from point R to point Z (hole depth).
When the bottom of the hole is reached a dwell may be performed. The
tool is then retracted in rapid traverse.
Before specifying G82, start the spindle with an M code (M3).
When the G82 command and an M code are specified in the same block
the M code is executed at the time of the first positioning move. The
system then proceeds to the next drilling move.
When K is used to specify the number of repeats, the M code is executed
on the first hole and the spindle stays running throughout the sequence.
When tool length offset (G43, G44 or G49) are specified in the canned
cycle, the offset is applied at the time of the positioning to point R.

36
Revised August 2005 by Brian LaBombard

St. Clair College of Applied Arts and Technology

FANUC FIXED OR CANNED CYCLE OPERATIONS


Limitations

Axis switching

Before the drilling axis can be changed, the canned cycle must be
cancelled.

Boring

In a block that does not contain X, Y, Z, R, or any other axes, drilling is


not performed.

Specify P in blocks that contain drilling. If it is specified in a block that


does not contain drilling the data is not held as modal.

Cancel

Tool offset

Example

Do not specify a G code of the 01 group (G0 to G3 or G60). This will


cancel the G82 drilling cycle.
In the canned cycle mode, tool radius offsets are ignored.

M3 S500
start spindle counterclockwise
G90 G99 G82 X300. Y-250. Z-150. R-100. P1000 F120.
Position, drill hole 1, dwell for 1 second at
bottom of the hole, then return to point R,
Y-550.
Position, drill hole 2 and return to point R
Y-750.
Position, drill hole 3 and return to point R
X1000.
Position, drill hole 4 and return to point R
Y-550.
Position, drill hole 5 and return to point R
G98 Y-750.
Position, drill hole 6 and return to initial
level
G80 G28 G91 X0 Y0 Z0 Cancel drilling cycle and return to machinehome position in incremental
M5
Stop spindle

37
Revised August 2005 by Brian LaBombard

St. Clair College of Applied Arts and Technology

FANUC FIXED OR CANNED CYCLE OPERATIONS


Peck Drilling Cycle
(G83)

This cycle performs peck drilling.


It performs intermittent cutting feed to the bottom of a hole while
removing chips from the hole.

Syntax

Explanation

Q represents the depth of the cut for each cutting feed (peck). It must
always be specified as and incremental value.
In the second and subsequent cutting feeds, rapid traverse is performed
up to a d point just before where the last drilling ended and cutting feed
is performed again (d is set by parameter).
Q must be set to a positive value. However, negative values are ignored.
Before specifying G83, start the spindle with an M code (M3).
When the G83 command and an M code are specified in the same block
the M code is executed at the time of the first positioning operation. The
system then proceeds to the next drilling operation.
When K is used to specify the number of repeats, the M code is executed
on the first hole and the spindle stays running throughout the sequence.
When tool length offset (G43, G44 or G49) are specified in the canned
cycle, the offset is applied at the time of the positioning to point R.

38
Revised August 2005 by Brian LaBombard

St. Clair College of Applied Arts and Technology

FANUC FIXED OR CANNED CYCLE OPERATIONS


Limitations

Axis switching

Before the drilling axis can be changed, the canned cycle must be
cancelled.

Boring

In a block that does not contain X, Y, Z, R, or any other axes, drilling is


not performed.

Specify Q in blocks that contain drilling. If it is specified in a block that


does not contain drilling the data is not held as modal.

Cancel

Tool offset

Example

Do not specify a G code of the 01 group (G0 to G3 or G60). This will


cancel the G82 drilling cycle.
In the canned cycle mode, tool radius offsets are ignored.

M3 S500
start spindle counterclockwise
G90 G99 G83 X300. Y-250. Z-150. R-100. Q15. F120.
Position, drill hole 1, dwell for 1 second at
bottom of the hole, then return to point R,
Y-550.
Position, drill hole 2 and return to point R
Y-750.
Position, drill hole 3 and return to point R
X1000.
Position, drill hole 4 and return to point R
Y-550.
Position, drill hole 5 and return to point R
G98 Y-750.
Position, drill hole 6 and return to initial
level
G80 G28 G91 X0 Y0 Z0 Cancel drilling cycle and return to machinehome position in incremental
M5
Stop spindle

39
Revised August 2005 by Brian LaBombard

St. Clair College of Applied Arts and Technology

FANUC FIXED OR CANNED CYCLE OPERATIONS


Right-handed
Tapping Cycle (G84)

This cycle performs right-handed tapping. In the right-handed tapping


cycle, when the bottom of the hole has been reached, the spindle rotates
counterclockwise.

Syntax

Explanations

Tapping is performed by turning the spindle clockwise. When the


bottom of the hole has been reached, the spindle is rotated
counterclockwise for retraction. This creates a standard thread. Feedrate
overrides are ignored during a tapping cycle. A feed hold does not stop
the machine until the return operation is complete. Before specifying
G84, use a miscellaneous function (M03) to rotate the spindle
counterclockwise.
When the G84command and an M code are specified in the same block,
the M code is executed at the time of the first positioning operation. The
system then proceeds to the next drilling operation. When K is used to
specify the number of repeats, the M code is executed for the first hole
only; for the second and subsequent holes, the M code is not executed.
When a tool length offset (G43, G44 or G49) is specified in the canned
cycle, the offset is applied at the time of the positioning to point R.

40
Revised August 2005 by Brian LaBombard

St. Clair College of Applied Arts and Technology

FANUC FIXED OR CANNED CYCLE OPERATIONS


Limitations

Axis switching

Before the drilling axis can be changed, the canned cycle must be
cancelled.

Drilling

In a block that does not contain X, Y, Z, R, or any other axes, drilling is


not performed.

Specify P in blocks that perform drilling. If it is specified in a block that


does not perform drilling, it cannot be stored as modal data.

Cancel

Do not specify a G code of the 01 group (G0 to G3 or G60). This will


cancel the G84 tapping cycle.

Tool Offset

In the canned cycle mode, tool radius offsets are ignored.

Example

M3 S100
start spindle counterclockwise
G90 G99 G84 X300. Y-250. Z-150. R-120. P300 F120.
Position, tap hole 1 and return to point R
Y-550.
Position, tap hole 2 and return to point R
Y-750.
Position, tap hole 3 and return to point R
X1000.
Position, tap hole 4 and return to point R
Y-550.
Position, tap hole 5 and return to point R
G98 Y-750.
Position, tap hole 6 and return to initial
level
G80 G28 G91 X0 Y0 Z0 Cancel drilling cycle and return to
machine-home position in incremental
M5
Stop spindle

41
Revised August 2005 by Brian LaBombard

St. Clair College of Applied Arts and Technology

FANUC FIXED OR CANNED CYCLE OPERATIONS


Boring Cycle
(G85)

This cycle is used to bore a hole.

Syntax

Explanation

After positioning along the X and Y axes, rapid traverse to point R is


performed.
Boring is performed form point R to point Z (hole depth).
When point Z is reached cutting feed is performed to return to point R,
Before specifying G85 use an M code to turn on the spindle (M3).
When the G85 command and an M code are specified in the same block,
the M code is executed at the time of the first positioning operation. The
system then proceeds to the next drilling operation. When K is used to
specify the number of repeats, the M code is executed for the first hole
only; for the second and subsequent holes, the M code is not executed.
When a tool length offset (G43, G44 or G49) is specified in the canned
cycle, the offset is applied at the time of the positioning to point R.

42
Revised August 2005 by Brian LaBombard

St. Clair College of Applied Arts and Technology

FANUC FIXED OR CANNED CYCLE OPERATIONS


Limitations

Axis switching

Before the drilling axis can be changed, the canned cycle must be
cancelled.

Boring

In a block that does not contain X, Y, Z, R, or any other axes, drilling is


not performed.

Cancel

Do not specify a G code of the 01 group (G0 to G3 or G60). This will


cancel the G85 boring cycle.

Tool offset

In the canned cycle mode, tool radius offsets are ignored.

Example

M3 S100
start spindle clockwise
G90 G99 G85 X300. Y-250. Z-150. R-120. F120.
Position, bore hole 1, return to point R,
Y-550.
Position, bore hole 2 and return to point R
Y-750.
Position, bore hole 3 and return to point R
X1000.
Position, bore hole 4 and return to point R
Y-550.
Position, bore hole 5 and return to point R
G98 Y-750.
Position, bore hole 6 and return to initial
level
G80 G28 G91 X0 Y0 Z0 Cancel boring cycle and return to machinehome position in incremental
M5
Stop spindle

43
Revised August 2005 by Brian LaBombard

St. Clair College of Applied Arts and Technology

FANUC FIXED OR CANNED CYCLE OPERATIONS


Boring Cycle
(G86)

This cycle is used to bore a hole.

Syntax

Explanation

After positioning along the X and Y axes, rapid traverse to point R is


performed.
Boring is performed form point R to point Z (hole depth).
When point Z is reached cutting feed is performed to return to point R,
Before specifying G86 use an M code to turn on the spindle (M3).
When the G86 command and an M code are specified in the same block,
the M code is executed at the time of the first positioning operation. The
system then proceeds to the next drilling operation. When K is used to
specify the number of repeats, the M code is executed for the first hole
only; for the second and subsequent holes, the M code is not executed.
When a tool length offset (G43, G44 or G49) is specified in the canned
cycle, the offset is applied at the time of the positioning to point R.

44
Revised August 2005 by Brian LaBombard

St. Clair College of Applied Arts and Technology

FANUC FIXED OR CANNED CYCLE OPERATIONS


Limitations

Axis switching

Before the drilling axis can be changed, the canned cycle must be
cancelled.

Boring

In a block that does not contain X, Y, Z, R, or any other axes, drilling is


not performed.

Cancel

Do not specify a G code of the 01 group (G0 to G3 or G60). This will


cancel the G86 boring cycle.

Tool offset

In the canned cycle mode, tool radius offsets are ignored.

Example

M3 S100
start spindle clockwise
G90 G99 G86 X300. Y-250. Z-150. R-120. F120.
Position, bore hole 1, return to point R,
Y-550.
Position, bore hole 2 and return to point R
Y-750.
Position, bore hole 3 and return to point R
X1000.
Position, bore hole 4 and return to point R
Y-550.
Position, bore hole 5 and return to point R
G98 Y-750.
Position, bore hole 6 and return to initial
level
G80 G28 G91 X0 Y0 Z0 Cancel boring cycle and return to machinehome position in incremental
M5
Stop spindle

45
Revised August 2005 by Brian LaBombard

St. Clair College of Applied Arts and Technology

FANUC FIXED OR CANNED CYCLE OPERATIONS


Back Boring Cycle
(G87)

This cycle performs accurate boring.

Syntax

Explanation

After positioning along the X and Y axes the spindle is stopped at the
fixed rotation position (spindle orientation position). The tool is moved
in the direction opposite to the tool tip; positioning
(rapid traverse) is performed to the bottom of the hole (point R).
The tool is then shifted in the direction of the tool tip and the spindle is
rotated clockwise. Boring is performed in the positive direction along
the Z axis until point Z is reached.
At point Z the spindle is stopped at the fixed rotation position again, the
tool is shifted in the direction opposite to the tool tip, and then the tool is
returned to the initial level. The tool is then shifted in the direction of the
tool tip and the spindle is rotated clockwise to proceed to the next block
operation.
Before specifying G87 start the spindle with an M code (M3).
When the G87 command and an M code are executed in the same block,
the M code is executed at the time of the first positioning operation. The
system then proceeds to the next operation.
When K is used to specify the number of repeats, the M code is executed
for the first hole only. For the remaining holes the M code is not
executed.
When tool length offset (G43, G44 or G49) is specified in the canned
cycle, the offset is applied at the time of positioning to point R.
46
Revised August 2005 by Brian LaBombard

St. Clair College of Applied Arts and Technology

FANUC FIXED OR CANNED CYCLE OPERATIONS


Limitations

Axis switching

Boring

In a block that does not contain X, Y, Z, R, or any other axes, drilling is


not performed.

P/Q

Be sure to specify a positive value in Q. If Q is specified with a negative


value the sign is ignored. Set P and Q in a block that performs boring. If
they are specified in a non-boring cycle the values are not stored as
modal.

Cancel

Do not specify a G code of the 01 group (G0 to G3 or G60). This will


cancel the G76 boring cycle.

Tool offset

In the canned cycle mode, tool radius offsets are ignored.

Examples

Before the drilling axis can be changed, the canned cycle must be
cancelled.

M3 S500
start spindle clockwise
G90 G99 G87 X300. Y-250. Z-150. R-150. Q5.
Position, bore hole 1, orient at initial level,
then shift 5mm.
P1000 F120.
Stop at bottom of hole for 1 second.
Y-550.
Position, bore hole 2
Y-750.
Position, bore hole 3
X1000.
Position, bore hole 4
Y-550.
Position, bore hole 5
G98 Y-750.
Position, bore hole 6
G80 G28 G91 X0 Y0 Z0 Cancel drilling cycle and return to machinehome position in incremental
M5
Stop spindle

47
Revised August 2005 by Brian LaBombard

St. Clair College of Applied Arts and Technology

FANUC FIXED OR CANNED CYCLE OPERATIONS


Boring Cycle
(G88)

This cycle is used to bore a hole.

Syntax

Explanation

After positioning along the X and Y axes, rapid traverse to point R is


performed.
Boring is performed from point R to point Z (hole depth).
When boring is complete a dwell is performed, then spindle is stopped.
The tool is manually retracted for the bottom of the hole (point Z) to
point R. At point R the spindle is started clockwise and rapid traverse is
performed to the initial level.
Before specifying G88 use an M code to turn on the spindle (M3).
When the G88 command and an M code are specified in the same block,
the M code is executed at the time of the first positioning operation. The
system then proceeds to the next drilling operation. When K is used to
specify the number of repeats, the M code is executed for the first hole
only; for the second and subsequent holes, the M code is not executed.
When a tool length offset (G43, G44 or G49) is specified in the canned
cycle, the offset is applied at the time of the positioning to point R.

48
Revised August 2005 by Brian LaBombard

St. Clair College of Applied Arts and Technology

FANUC FIXED OR CANNED CYCLE OPERATIONS


Limitations

Axis switching

Before the drilling axis can be changed, the canned cycle must be
cancelled.

Boring

In a block that does not contain X, Y, Z, R, or any other axes, drilling is


not performed.

Cancel

Do not specify a G code of the 01 group (G0 to G3 or G60). This will


cancel the G85 boring cycle.

Tool offset

In the canned cycle mode, tool radius offsets are ignored.

Example

M3 S2000
start spindle clockwise
G90 G99 G88 X300. Y-250. Z-150. R-100. P1000 F120.
Position, bore hole 1, return to point R,
Y-550.
Position, bore hole 2 and return to point R
Y-750.
Position, bore hole 3 and return to point R
X1000.
Position, bore hole 4 and return to point R
Y-550.
Position, bore hole 5 and return to point R
G98 Y-750.
Position, bore hole 6 and return to initial
level
G80 G28 G91 X0 Y0 Z0 Cancel boring cycle and return to machinehome position in incremental
M5
Stop spindle

49
Revised August 2005 by Brian LaBombard

St. Clair College of Applied Arts and Technology

FANUC FIXED OR CANNED CYCLE OPERATIONS


Boring Cycle
(G89)

This cycle is used to bore a hole.

Syntax

Explanation

This cycle is the same as G85. The difference is that this cycle performs
a dwell at the bottom of the hole.
Before specifying G89 use an M code to turn on the spindle (M3).
When the G89 command and an M code are specified in the same block,
the M code is executed at the time of the first positioning operation. The
system then proceeds to the next drilling operation. When K is used to
specify the number of repeats, the M code is executed for the first hole
only; for the second and subsequent holes, the M code is not executed.
When a tool length offset (G43, G44 or G49) is specified in the canned
cycle, the offset is applied at the time of the positioning to point R.

50
Revised August 2005 by Brian LaBombard

St. Clair College of Applied Arts and Technology

FANUC FIXED OR CANNED CYCLE OPERATIONS


Limitations

Axis switching

Before the drilling axis can be changed, the canned cycle must be
cancelled.

Boring

In a block that does not contain X, Y, Z, R, or any other axes, drilling is


not performed.

Specify P in blocks that perform drilling. If it is specified in a block that


does not perform drilling, it cannot be stored as modal data.

Cancel

Do not specify a G code of the 01 group (G0 to G3 or G60). This will


cancel the G89 boring cycle.

Tool offset

In the canned cycle mode, tool radius offsets are ignored.

Example

M3 S2000
start spindle clockwise
G90 G99 G89 X300. Y-250. Z-150. R-120. P1000 F120.
Position, bore hole 1, return to point R,
Y-550.
Position, bore hole 2 and return to point R
Y-750.
Position, bore hole 3 and return to point R
X1000.
Position, bore hole 4 and return to point R
Y-550.
Position, bore hole 5 and return to point R
G98 Y-750.
Position, bore hole 6 and return to initial
level
G80 G28 G91 X0 Y0 Z0 Cancel boring cycle and return to machinehome position in incremental
M5
Stop spindle

51
Revised August 2005 by Brian LaBombard

St. Clair College of Applied Arts and Technology

FANUC FIXED OR CANNED CYCLE OPERATIONS


Canned Cycle Cancel
(G80)

G80 cancels canned cycles

Syntax

G80

Example

M3 S2000
start spindle clockwise
G90 G99 G89 X300. Y-250. Z-150. R-120. P1000 F120.
Position, bore hole 1, return to point R,
Y-550.
Position, bore hole 2 and return to point R
Y-750.
Position, bore hole 3 and return to point R
X1000.
Position, bore hole 4 and return to point R
Y-550.
Position, bore hole 5 and return to point R
G98 Y-750.
Position, bore hole 6 and return to initial
level
G80 G28 G91 X0 Y0 Z0 Cancel boring cycle and return to machinehome position in incremental
M5
Stop spindle

52
Revised August 2005 by Brian LaBombard

St. Clair College of Applied Arts and Technology

FANUC FIXED OR CANNED CYCLE OPERATIONS


Sample program using tool length compensation and a canned cycle
Machine Home position (Position from which G54 to G59 are measured)

53
Revised August 2005 by Brian LaBombard

St. Clair College of Applied Arts and Technology

FANUC FIXED OR CANNED CYCLE OPERATIONS


Program example for previous page
The offset values for each tool as shown in the diagram on the previous page are set at the controller to;
+200.0 for Tool #11 (T11) and offset #11 (H11)
+190.0 for Tool #15 (T15) and offset #15 (H15)
+150.0 for Tool #31 (T31) and offset #31 (H31)
O1234 (DRILLING PROGRAM EXAMPLE)
N0001 G0 G17 G40 G80 G90
N0002 M6 T11
N0003 G54 G43 X0 Y0 Z250.0 H11
N0004 M3 S30
N0005 G99 G81 X400.00 Y-350.0 Z-153.0
R-.97 F120.
N0006 Y-.550.0
N0007 G98 Y-750.0
N0008 G99 X1200.0
N0009 Y-550.0
N010 G98 Y-350.0
N011 G0 X0 Y0 M5
N012 M6 T15
N013 G43 Z25.0 H15
N014 M3 S20
N015 G99 G82 X550.0 Y-450.0 Z-130.0
R-.97.0 P300 F70.
N016 G98 Y-650.0
N017G99 X1050.0
N018 G98 Y-450.0
N019 G00 X0 Y0 M5
N020 M6 T31
N021 G43 Z25.0 H31
N022 S10 M3
N023 G85 G99 X800.0 Y-350.0 Z-153.0
R47.0 F50.
N024 G91 Y-200.0 K2
N025 G28 Z0 M5
N026 G28 X0 Y0
N027 M30

Part number (program comment)


Establish program safety line
Tool change to load tool #11
Move to X0 Y0 and initial level on Z
Start the spindle
Position to hole #1, drill and return to R level
Position to hole #2, drill and return to initial level
Position to hole #3, drill and return to R level
Position to hole #4, drill and return to R level
Position to hole #5, drill and return to R level
Position to hole #6, drill and return to initial level
Rapid to part zero on X and Y and stop spindle
Automatic tool change to load tool # 15
Introduce tool length compensation
Start spindle
Position to hole #7, drill and return to R level
Position to hole #8, drill and return to R level
Position to hole #9, drill and return to R level
Position to hole #10, drill and return to R level
Rapid to part zero on X and Y and stop spindle
Automatic tool change to load tool # 15
Introduce tool length compensation
Start spindle
Position to hole #11, drill and return to R level
Position to hole #12 & 13, drill, return to R level
Rapid to Z machine home position and stop spindle
Rapid to X and Y machine home position
End program cycle

54
Revised August 2005 by Brian LaBombard

St. Clair College of Applied Arts and Technology

ANILAM FIXED OR CANNED CYCLE OPERATIONS


The next several pages summarize the fixed or canned cycles for drilling and milling available with the Anilam
5000M CNC controller, followed by in depth explanations with syntax and examples. Several of these canned
cycles are specialized and are not covered in the detailed section of this reference guide. Refer to Anilams CNC
Programming and Operation Manual for more details.
Drilling Cycles

55
Revised August 2005 by Brian LaBombard

St. Clair College of Applied Arts and Technology

ANILAM FIXED OR CANNED CYCLE OPERATIONS


Drilling Cycles continued

56
Revised August 2005 by Brian LaBombard

St. Clair College of Applied Arts and Technology

ANILAM FIXED OR CANNED CYCLE OPERATIONS


Milling Cycles
In addition to the fixed/canned cycles covered in this manual. Anilam offers several specialized milling
cycles that are not described in detail in this reference guide. For more information regarding the
programming of these please refer to Anilams CNC Programming and Operation Manual.

57
Revised August 2005 by Brian LaBombard

St. Clair College of Applied Arts and Technology

ANILAM FIXED OR CANNED CYCLE OPERATIONS


Milling Cycles continued

58
Revised August 2005 by Brian LaBombard

St. Clair College of Applied Arts and Technology

ANILAM FIXED OR CANNED CYCLE OPERATIONS


Canned Cycles
A canned cycle is a preset sequence of events initiated by a single block of data. Canned cycles are part
of the CNC software and cannot be altered. They simplify the programming of complicated cycles. One
block of data can instruct the CNC to perform the necessary moves to drill a hole, mill a pocket, or cut a
spiral or ellipse.
A canned cycle consists of a G-Code and variable words. The variable words describe parameters, such
as peck distance, retract height, pocket depth and tool step over. Each canned cycle has its own set of
variable words.
The variable words in a canned cycle allow you to customize the cycle to include the necessary
dimensions, feed rates, etc.
Canned cycles greatly reduce program blocks. Use them whenever applicable.
Canned cycles are usually entered into the part program from the Main Edit Help Menu. Edit Help
contains graphics and labeled entry fields to make programming canned cycles quick and easy.
Drilling, Tapping, and Boring Canned Cycles (G81 to G89)
When you activate a drilling cycle, it executes after each programmed position, until you cancel it.
NOTE: The P entry (return height) is optional, and you do not need to provide it. If you do not specify
P, the CNC will set it to R.
Keep the following in mind for drill cycles:

P dimension is optional. If it is not given, the retract height will be the same as the Z start height
(R dimension).
F feed rate is optional. If it is not given, the current feed rate is used.
All start and finish heights (R and P) as well as Z dimensions are absolute dimensions.
P must be less than R, or an alarm will be given.
For all peck drill cycles (G83 and G87), R (start height) must be. 1" (or 2mm) above the work
surface.
G84 (Tapping) uses S word for Spindle Yes/No. Your machine must be equipped with spindle
M-functions to use G84.

Cancel Drill, Tap, or Bore Cycle (G80)


Syntax: G80
Modal cycles remain active until canceled. Use G80 to cancel drill, tap, and bore canned cycle (G81 to
G89). G80 can be included with other commands in a program block.
59
Revised August 2005 by Brian LaBombard

St. Clair College of Applied Arts and Technology

ANILAM FIXED OR CANNED CYCLE OPERATIONS


Spot Drilling (G81)
Syntax: G81 Zn Rn Fn Pn
G81 is a spot drilling cycle, generally used for center drilling or hole drilling that does not require a
pecking motion. It feed from the start height (R) to the specified hole depth (Z) at a given feed rate (F),
then rapids to the return height (P).
Address
Word
Z
R
F
P

Description
Absolute hole depth. Required.
Initial Z start point, in rapid. Required.
Feed rate.
Z return point after hole depth, in rapid. P must be
higher than R.

Counterboring (G82)
Syntax: G82 Zn Rn Fn Dn Pn
G82 is generally used for counter boring. It feeds from the R-plane to a Z depth, dwells for a specified
time, then rapids to the return point.
Address
Word
Z
R
F
D
P

Description
Absolute hole depth. Required.
Initial Z start point, in rapid. Required.
Feed rate
Dwell time (in seconds). Required.
Z return point after hole depth, in rapid. P must be
higher than R.

60
Revised August 2005 by Brian LaBombard

St. Clair College of Applied Arts and Technology

ANILAM FIXED OR CANNED CYCLE OPERATIONS


Peck Drilling (G83)
Syntax: G83 Zn Rn Fn In Pn
G83 is the peck drilling cycle, generally used for peck drilling relatively shallow holes. feeds from the R-plane
to the first peck depth (calculated o that all pecks are dual and do net exceed the maximum peck distance
programmed in I word. Then rapid retracts to R-plane (to clear chip, rapids down to previous depth less .02",
and continues this loop until it reaches the final hole depth. It then rapid retracts to the P dimension.

Address
Word
Description
Z
Absolute hole depth, Required.
R
Initial Z start point, in rapid. Required.
F
Feed rate.
Maximum peck distance (positive dimension.
I
Required.
Z return point after hole depth, in rapid. P must be
P
higher than R.

61
Revised August 2005 by Brian LaBombard

St. Clair College of Applied Arts and Technology

ANILAM FIXED OR CANNED CYCLE OPERATIONS


Tapping (G84)
Syntax: G84 Zn Rn Fn Sn Pn Dn
NOTE: The machine must be equipped with spindle M-functions (FWD, REV, OFF) to use this cycle.
Do not use G4 if the machine does not have spindle commands available.
G84 is the tapping cycle, used for right hand tapping. During a G4 cycle: the tool feeds from the
R-plane to Z depth; the spindle stops then reverses; the tool feeds to the retract plane; and the spindle
stops and reverses again.
F (TPI/Lead): Enter Threads Per Inch when in inch mode. Enter Lead when in MM (G71) mode. Lead
is the distance from one thread to the next. You must program a spindle RPM. The Feedrate is calculated
based on the spindle RPM and the TPI or Lead specified.
S (Spindle sync): To enable Spindle sync, enter a value of 1. The machine must have direct spindle
control to use this feature. The spindle rotation and Z-axis movement will be synched together, as in a
threading cycle.
D (Dwell): A dwell time value in seconds can be entered. You may require this feature because of the
time required to stop and reverse the spindle.
NOTE: If S=0, the programmed Dwell (D) will be active when the spindle reverses at the bottom and
top of each hole. If S=1, the programmed Dwell (D) will be at the top of each hole.
Address
Word
Description
Z
Absolute hole depth. Required.
R
Initial Z start point, in rapid. Required.
Threads per Inch (TPI) in Inch mode, or
F
Lead (Distance between threads) in MM mode.
S
Spindle, No (0), or Yes (1).
P
Z retract height after hole depth, in feed.
D
Dwell time.

62
Revised August 2005 by Brian LaBombard

St. Clair College of Applied Arts and Technology

ANILAM FIXED OR CANNED CYCLE OPERATIONS


Boring, Bi-directional (G85)
Syntax: G85 Zn Rn Fn Pn
G85 is a boring cycle, generally used to make a pass in each direction on a bore or to tap with a
self-reversing tapping head. It feeds from the R-plane to Z depth, and then feeds back to the retract
height.
Address
word
Z
R
F
P

Description
Absolute hole depth. Required.
Initial Z start point, in rapid. Required.
Feedrate.
Z return point after hole depth, in feed.

Boring, Unidirectional (G86)


Syntax: G86 Zn Rn Fn In Dn Pn Cn
G86 is a boring cycle that allows the X-axis to back off the bore surface after the spindle has stopped
and oriented itself. The cycle will feed from the R-plane to Z depth, dwell for the specified time, stop
and orient the spindle to the specified angle C, back off in X, rapid retract in Z, reposition in X, and
restart the spindle.
NOTE: Your machine must be equipped with spindle M-functions (FWD, REV, OFF) and spindle
orientation (M19) to use this cycle. Do not use the G86 cycle if the machine does not have the spindle
commands and spindle orientation.
Address
Word
Description
Z
Absolute hole depth. Required.
R
Initial Z start point, in rapid. Required.
F
Feedrate.
X-axis incremental back off distance in X (positive
I
or negative dimension).
D
Dwell time in seconds.
P
Z return point after hole depth, in rapid.
M19 index angle. If no angle is given, the angle in
C
"Tool Management Setup" is used.

63
Revised August 2005 by Brian LaBombard

St. Clair College of Applied Arts and Technology

ANILAM FIXED OR CANNED CYCLE OPERATIONS


Chip Breaker Peck Cycle (G87)
Syntax: G87 Zn Rn Fn In Jn Kn Wn Un Pn
G87 is the chip-breaker peck=drilling cycle, generally used to peck-drill medium to deep hole. The
cycle feeds from the R-plane to the first peck depth in Z, rapid retracts the chip-break increment (W),
feeds to the nest calculated peck depth (initial peck less J), and continues this sequence until it reaches a
U depth, or until final hole depth is reached. The peck distance will never be more than I or less than K.
This cycle enables optimum drilling conditions for holes. For maximum efficiency in deep hole drilling,
set parameters to accommodate the material and tool types used. Generally, the deeper the hole, the
smaller the peck distance (J). This prevents the binding of chips, tool, and workplace. Set U to retract
the drill completely at set depth intervals.
Address
Word
Z
R
F
I
J
K
W
U
P

Description
Absolute hole depth. Required.
Initial Z start point, in rapid. Required.
Feedrate.
First peck distance (positive dimension). Required.
Amount to subtract from previous peck (positive
dimension). Required.
Minimum peck distance (positive dimension).
Required.
Chip break increment (positive dimension).
Incremental depth between full retracts (positive
dimension).
Z return point after hole depth, in rapid. P must be
higher than R.

64
Revised August 2005 by Brian LaBombard

St. Clair College of Applied Arts and Technology

ANILAM FIXED OR CANNED CYCLE OPERATIONS


Flat Bottom Bidirectional Boring (G89)
Syntax: G89 Zn Rn Fn Dn Pn
G89 is a boring cycle often used to program a pass in each direction with a dwell at the bottom. The tool feeds
from the R-plane to Z depth, dwells for specified time, then feeds to the retract (P) dimension.
Address
Word
Description
Z
Absolute hole depth. Required.
Initial Z start point (.1 in. or 2mm), in rapid.
R
Required.
F
Feedrate.
D
Dwell time (in seconds). Required.
P
Z return point after hole depth, in feed.
Drilling Example
The following example assumes that the machine has no automatic tool changer (ATC) If your machine has an
ATC, check your machine manual for proper tool changer programming procedures.

65
Revised August 2005 by Brian LaBombard

St. Clair College of Applied Arts and Technology

ANILAM FIXED OR CANNED CYCLE OPERATIONS


Program Drill Exercise #1 (Diagram on previous page)
Line #
Block
N1 01 * DRIL-EX1
N2

N3
N4
N5

N6
N7
N8
N9
N10
N11
N12
N13
N14

Description
Program number (1) and name
(DRILL- EX1).
G90 G70 (G71) G0 T0 Z0
Sets absolute dimensions (G90),
inch input (G70), rapid (G0), cancel
any active tool (T0), and bring Z to
zero (Z0).
X-3.0 (X-75) Y1.0 (Y25)
Move to X-3 Y1.
T01 * 1/4" DRILL (6.35 DRILL) Activate Tool #1 length offset.
G83 Z-.55 (Z-14) R.1 (R2) F12
Initiates peck drill cycle G83: Z =
(F300) I.08 (I2) P.1 (P2)
hole depth, R = start height, F =
feed rate, I = maximum peck, P =
return height.
X1.0 (X25.4) Y-1.0 (Y-25.4)
Hole location #1 (Rapid and
Absolute).
X3.0 (X76.2)
Hole #2.
G91 X1.5 (X38.1)
Hole #3 (moves from #2 to #3 in
incremental: G91).
X1.0 (X25.4) Y -1.25 (Y-31.75)
Hole #4 (Incremental).
X-2.5 (X-63.5)
Hole #5 (Incremental).
G90 X1.5 (X38.1) Y -2.5 (Y-63.5) Hole #6 (Absolute).
G80 T0 Z0
Cancel drill cycle (G80), cancel tool
(T0), and rapid Z to zero (Z0).
X-3.0 (X-75) Y1.0 (Y25)
Move to X-3 Y1 for part change.
M02
End Program.

NOTE: This program is written in BOTH inch and mm. ALL mm values are displayed in brackets.

66
Revised August 2005 by Brian LaBombard

St. Clair College of Applied Arts and Technology

ANILAM FIXED OR CANNED CYCLE OPERATIONS


Pattern Drill Cycles
Use the automatic bolt hole circle (G79) to gill a partial or full bolt circle. A drill cycle (G81 to G89)
must be programmed prior to G79. You can move around the pattern clockwise or counterclockwise,
either point to point or along a radius. G79 calculates the hole locations. The cycle uses the Polar
Coordinate System for dimensions. When the G79 cycle is completed, you must cancel the cycle (G80).
Bolt Hole Circle (G79)
Syntax: G79 Xn Yn Cn An Bn Hn Dn R
Address
Word
Description
X
Absolute X center of the bolt-circle. Defaults to
current position.
Y
Absolute Y center of the bolt-circle. Defaults to
current position.
C
Rotates the Polar Coordinate System by entered
angle. Default: o degrees (3 o'clock. CCW =
positive, CW negative.
A
Angle of the first hole. Required.
B
Angle of the last hole. If there is no B value, the
CNC will execute a full bolt hale circle.
H
Number of holes in full bolt circle. Required.
D
Diameter of bolt circle. Tool will normally move
from hole to hole in a CCW (positive) direction. For
CW direction, D negative. Required.
R
Move from hole to hole on a radius. Set to 1.0 to
activate. Defaults to point-to-point and hole-to-hole.

67
Revised August 2005 by Brian LaBombard

St. Clair College of Applied Arts and Technology

ANILAM FIXED OR CANNED CYCLE OPERATIONS


Hole Pattern (G179)
Format: G179 Xn Yn Cn An Bn Dn En Un Vn Wn
NOTE: Do not program G68 with G179.
Use the automatic hole pattern canned cycle (G179) to program partial or full pattern hole grids. You
can use G179 for a corner pattern when holes are required only on four corners. It calculates the hole
locations from the entered variables. You can also rotate the pattern around the starting hole location. A
drill cycle (G81-G89) must be programmed prior to G179. You must cancel the cycle (G80) after the
pattern is completed.
You can use [A and D] or [U and V], but not both combinations. Positive and negative values are
allowed in all variable words except: B, E, and W.
Address
Word
Description
X
Absolute X position of start hole.
Y
Absolute Y position of start hole.
C
Angle to rotate the hole pattern. Default is 0 degrees
(3 o'clock position).
A
Length of pattern in X-axis. If used, U cannot be
given.
B
Number of holes in X-axis. Required.
D
Width of pattern in Y-axis. If used, V cannot be
given.
E
Number of holes in Y-axis. Required.
U
Increment between holes in X-axis. Can be used
instead of A.
V
Increment between holes in Y-axis. Can be used
instead of D.
W
Pattern or Square. If W is 0, then a matrix pattern will
be drilled. If W is 1, then a perimeter pattern (edges
only) will be drilled.

68
Revised August 2005 by Brian LaBombard

St. Clair College of Applied Arts and Technology

ANILAM FIXED OR CANNED CYCLE OPERATIONS


Example: (G179 programming)
G81 Z-.1 R.1 F15
G179 X2 Y1 C30 B6 E4 U.5 V.375 W0
G80
These blocks rotate a bolt hole pattern 30 degrees counterclockwise.

69
Revised August 2005 by Brian LaBombard

St. Clair College of Applied Arts and Technology

ANILAM FIXED OR CANNED CYCLE OPERATIONS


Pocket Cycles
Pocketing cycles eliminate extensive programming. One block of programming will mill out the
described packet. Activate a tool before programming a pocket cycle. All pockets use the current tool
diameter from the Tool Page.
XY positioning may be necessary prior to programming a pocket cycle.
Programmer is responsible for all Z moves in dole Mill (G76) cycle.
Cutting direction is reversible in the pocketing cycles.
Always check that tool-to-corner radii do not conflict.
Z and P dimensions are absolute.
On all cycles with variable A (tool step over), A must be less than the tool diameter. In G78 and G178,
A must be 70% or less of tool diameter.
Alarm messages will occur if the CNC detects program errors.
G41 and G42 are not permitted during pocket cycles. Pocket cycles use "built-in" cutter compensation.
WARNING: When you cut one pocket inside another, make sure to set P above the highest pocket.
At the end of each pocket, the tool will rapid to P, then rapid to the start position.
For plunge pockets (G177, G178), drill a start hole prior to activating the pocket; position the axes over
the start hole prior to G177 or G178.

70
Revised August 2005 by Brian LaBombard

St. Clair College of Applied Arts and Technology

ANILAM FIXED OR CANNED CYCLE OPERATIONS


Draft Angle Pocket Cycle (G73)
Format: G73 Xn Yn Hn Zn An Bn Cn Dn En In Vn Sn Qn Rn Wn
Use the draft angle pocket cycle (G73) to machine a draft angle on a pocket. The tool must be at the center
point of the lower-left corner radius. This is where the machining begins. You can use G78 to mill out an initial
pocket prior to the G73 block.
Address
Word
Description
X
X length at the bottom of the pocket. Required.
Y
Y width at the bottom of the pocket. Required.
H
Z absolute rapid start height (must be .1" or 2mm
above surface). Required.
Z
Z absolute pocket depth. Required.
A
Lower-left corner radius. Cannot be less than tool
radius. Required.
B
Lower-right corner radius. Cannot be less than tool
radius. Optional.
C
Upper-right corner radius. Cannot be less than tool
radius. Optional.
D
Upper-left corner radius. Cannot be less than tool
radius. Optional.
E
Draft angle to be machined on vertical walls of
pocket. Required.
I
Z-axis roughing step-down. Required.
J
Roughing feedrate (does not appear in Help Menu).
V
Maximum XY tool stepover. Used if angle is so great
that the amount of XY step per Z step exceeds 70%
of the tool diameter. Optional.
S
XY finish stock amount, sides only. Optional.
Q
Z-axis finishing step-down. Optional.
R
Finish-pass feedrate. Optional.
W
Flat end mill = 0. Ball end mill = 1. Optional. Default
is flat end mill.

71
Revised August 2005 by Brian LaBombard

St. Clair College of Applied Arts and Technology

ANILAM FIXED OR CANNED CYCLE OPERATIONS


Example:
This program will cut the draft pocket shown in the figure. The drawing does not show the finish pass.
Assume an existing rectangular pocket (4 in. long x 2 in. wide x 1 in. deep) with a theoretical sharp
lower-left corner at X2 Y2. The following program will machine a draft angle onto the existing pocket.

T1 M3 S2000 ***** 1 /2" FLAT END MILL


G90 G0 X2.5 Y2.5 F30 ***** 4" x 2" x 1 " DP RCT. PKT ALREADY
EXISTS
G73 X4 Y2 H.1 Z-1 A.5 E10 I.1 S.01 Q.02 R35
G0 T0 Z0 M5
X0 Y0 M2
Position the tool above the center of the lower-left corner radius. The tool path starts and ends at the
center of the lower-left corner radius (after each perimeter pass) for all roughing passes. During finish
passes, the tool will step down the draft angle and make passes around the perimeter.
If a ball end mill is programmed (W=1), the following points must be considered: If W=1, the length (X) and
width (Y) at the bottom of the pocket is measured at the tangency point of the ball radius and the draft angle. If
W=1, the start height (H) must be set to (.1 + ball radius) above surface to be cut. If W=1, set the tool length
offset so that the ball is buried up to its centerline when at the part surface (touch off the tip and add the ball
radius, or touch off tip and use a negative length wear equal to the ball radius).

72
Revised August 2005 by Brian LaBombard

St. Clair College of Applied Arts and Technology

ANILAM FIXED OR CANNED CYCLE OPERATIONS


Frame Pocket Milling (G75)
Format: G75 Xn Yn Mn Wn Hn Zn An Bn In Jn Un Vn Cn Sn Kn Pn
Frame milling (G75) will mill a frame or trough around an island of material. You must position the XY
axes at the lower-left (theoretical sharp) corner of the island before you program G75.
Prior to G75, activate a tool so that the CNC will consider the tool diameter. The relation of the outside
corner radius to the frame width must be geometrically possible or an Error Message will appear.
Address
Word
Description
X
Center of island in X-axis. Default: Current position.
Y
Center of island in Y-axis. Default: Current position.
M
Length of island in X-axis. Required.
W
Width of island in Y-axis. Required.
H
Z absolute starting (rapid) height (must be. 1 in. or 2mm
above surface to be cut into). Required.
Z
Absolute depth of frame. Required.
A
Maximum tool step over (must be less than tool
diameter). +A dimension = climb (CCW). -A dimension =
conventional (CW). Defaults to half tool diameter.
B
Maximum Z depth per pass (For example, if Z is
programmed to be -1, and B to be .5, the frame will be
roughed out in two levels.) B is programmed as a
positive dimension. Defaults to tool diameter (depth)
less finish stock.
I
Ramp in feed: The tool will ramp into the first depth of
cut with a YZ move from the I. D. of the frame to the
O.D. of the frame. Defaults to last programmed feedrate.
J
After the ramp-in move described above, the tool will
rough-mill the frame, at feedrate J. Defaults to last
programmed feedrate.
U
Inside corner radius of frame (corner radius of island).
Required.
V
Outside corner radius of frame. Defaults to value of U.
Must be equal to or greater than tool radius.
C
Frame width. Required.
S
Finish stock amount per side (including bottom). If you
enter a negative value, stock will be left, but no finish
pass will occur. If you do not enter a value, finish stock
will not be left.
K
Finish-pass feedrate. Defaults to last programmed
feedrate.
P
Z-axis absolute (rapid) retract height (must be equal to
or above H). Defaults to H value.
73
Revised August 2005 by Brian LaBombard

St. Clair College of Applied Arts and Technology

ANILAM FIXED OR CANNED CYCLE OPERATIONS


Example: G75 M3 W1.125 H.1 Z-.375 A.25 B.36 I5 J18 U.25 V.5 C1 S.015 K30 P.1

G75 Programming Example


The tool will perform the following operations:
NOTE: If X and Y are not provided, position the tool at the center of the island prior to G75.
1. Tool will rapid from position 1 to position 2: X is the center of the inside corner radius (U), and
Y is the corner radius plus tool radius plus finish stock.
2. Tool will feed -.1 (or 2 mm) in Z to the part surface.
3. Tool performs a ramp-in move to O.D. of frame minus tool radius minus finish stock (position
3).
4. Tool then moves 360 degrees CCW around frame back to position 3.
5. Tool then steps over calculated amount, and mills CW until position 2 is reached again at depth.
6. Tool then mills 360 degrees CW (climb-milling) around the island.
NOTE: The number of times the tool repeats Steps 3 through 6 depends on the Z and B dimensions.
7. When the frame is completed, the tool rapids first to the P dimension, then to the center of the
island.

74
Revised August 2005 by Brian LaBombard

St. Clair College of Applied Arts and Technology

ANILAM FIXED OR CANNED CYCLE OPERATIONS


Hole Milling (G76)
Format: G76 Xn Yn Dn Zn Bn Hn Sn Jn Kn
Use the hole milling cycle (G76) to machine through holes or counterbores. You can position the tool at
the hole center prior to the G76 block. Activate a tool prior to G76 so that the CNC knows the tool
diameter.
If you do not provide Z and H, program a separate Z move to raise the tool out of the hole after the
cycle.
Address
Word
Description
X
X coordinate of the center. Default: pocket centers at
present position. Optional.
Y
Y coordinate of the center. If no coordinate is
provided, default is set to present position. Optional.
Z
The absolute depth of the finished pocket. Optional.
B
Z-axis increment used for each pass. Optional.
H
Absolute Z position to which the CNC rapids before
feeding into the workpiece. Optional.
D
Diameter of hole. Negative D = CW direction. The
direction CCW (climb milling) is reversible:
+D dimension = climb (CCW).
-D dimension = conventional (CW) Required.
J
Rough-pass feedrate. Defaults to last programmed
feed rate.
S
Finish-stock amount per side. If you enter a negative
value, enter a value, no finish stock will be left.
K
Finish-pass feedrate. Defaults to last programmed
feed rate.

75
Revised August 2005 by Brian LaBombard

St. Clair College of Applied Arts and Technology

ANILAM FIXED OR CANNED CYCLE OPERATIONS


Example: G76 D2.5 J 12 S.01 K20
In this G76 Programming Example, the tool will perform the following operations:
1.
2.
3.
4.

Tool moves from position 1 to a position 45 degrees from center, at half the radius (position 2).
Tool then arcs onto the O. D. tangential (CCW) (position 3).
Tool mills O.D. CCW (position 4).
Tool leaves O.D. tangentially to a point 135 degrees from the center at half the radius. CCW
(position 5).
5. Tool returns to center (position 6).
6. If you have programmed a finish pass, the process repeats at the finish dimensions.

76
Revised August 2005 by Brian LaBombard

St. Clair College of Applied Arts and Technology

ANILAM FIXED OR CANNED CYCLE OPERATIONS


Circular Pocket Milling (G77)
Format: G77 Xn Yn Hn Zn Dn An Bn In Sn Kn Pn
Use the circular pocket canned cycle (G77) to mill round pockets. You do not have to place the tool at
the center of the pocket, since the cycle has variable words for X and Y center. If X and Y variable
words are not programmed, the CNC will use the current position as the pocket center.
Activate a tool prior to programming G77 so that the CNC will know the cutter diameter. You can
position the tool at the pocket center and omit the XY words. By default, the CNC will use the current
position as the pocket center.
Address
Word
Description
X
Center of the pocket in X-axis. Defaults to current position.
Y
Center of the pocket in Y-axis. Defaults to current position.
H
Z absolute starting height (.1 in. or 2mm above surface).
Required. Executed in rapid.
Z
Absolute depth of pocket. Required.
D
Diameter of pocket. The direction CCW (climb milling) is
reversible: +D dimension = climb (CCW). -D dimension =
conventional (CW). Required.
A
Maximum tool stepover (must be less than tool diameter). If
+A dimension = outward spiral. If -A dimension = inward
spiral. On inward spirals, the tool moves to O.D. at 0
degrees, and begins the roughing process there (3
o'clock). Defaults to tool radius.
B
Maximum Z depth per pass (Example: If Z is programmed
to be -1, and B to be .5, the pocket will be roughed out in
two levels.) B is programmed as a positive dimension.
Defaults to tool diameter (depth), less finish stock.
I
Ramp in/rough feed: The tool will ramp into the first depth
of cut with a spiral move from the I.D. of the pocket to the
O.D. of the pocket. The feedrate for this move is
programmed as I. After the ramp-in move, the tool will
rough-mill the pocket, at feedrate I. Defaults to last
programmed feedrate.
S
Finish-stock amount per side (including bottom). If you
enter a negative value, stock will be left, but no finish pass
will occur. If not programmed, no finish stock is left.
K
Finish-pass feedrate. Defaults to last programmed feedrate.
P
Z-axis absolute-retract height (must be equal to or above
H). Executed in rapid. Defaults to H dimension (start
height).
77
Revised August 2005 by Brian LaBombard

St. Clair College of Applied Arts and Technology

ANILAM FIXED OR CANNED CYCLE OPERATIONS


Example: G77 X2 Y2 H.1 Z-.25 D3 A.35 B.25 112 S.01 K20 P.1
This G77 programming example will perform the following operations:
NOTE: Only the tool path is shown.
1.
2.
3.
4.
5.
6.
7.

Tool will move to X2 Y2 (position 1) in current modes: G0/1, G90/91, G70/71 (position 1).
Tool will feed. 1 in. (2mm) down in Z-axis.
Tool will move to O.D. (less finish stock) in a 3-axis spiral motion (position 2).
Tool will make a full circle (position 2).
Tool then spirals inward to complete the roughing cycle, at the first level.
If you have specified a finish pass, repeat steps 3 through 5 at the finish feedrate.
Tool rapids to P dimension, then to the original XY location.

G77 Programming Example

78
Revised August 2005 by Brian LaBombard

St. Clair College of Applied Arts and Technology

ANILAM FIXED OR CANNED CYCLE OPERATIONS


Rectangular Pocket Milling (G78)
Format: G78 Xn Yn Hn Zn Un An Bn In Jn Sn Kn Pn
Use the rectangular pocket cycle (G78) to mill square or rectangular pockets. You must position the tool
directly over the center of the pocket prior to the G78 block, or use the XY words.
Activate a tool prior to programming G78, so cutter diameter is known.
Address
Word
Description
X
X coordinate of the center. Default: pocket centers at
present position. Optional.
Y
Y coordinate of the center. If no coordinate is provided,
default is set to present position. Optional.
M
Length of pocket in X-axis. Required.
W
Width of pocket in Y-axis. Required.
H
Z absolute starting height (must be .1 in. or 2mm above
surface to be cut). Executed in rapid. Required.
Z
Absolute depth of pocket. Required.
U
Actual corner radius of pocket (all four corners will be
same). Must be equal to or greater than tool radius.
Defaults to tool radius.
A
Maximum tool stepover (must be 70% or less of tool
diameter). +A dimension = climb (CCW). -A dimension =
conventional (CW). Defaults to half tool diameter.
B
Maximum Z depth per pass (Example: if you program Z
to be -1, and B to be .5, the CNC will rough out the
pocket in two levels.) B is programmed as a positive
dimension. Defaults to tool diameter (depth), less finish
stock.
I
Ramp in feed: The tool will ramp into the first depth of
cut with an XYZ move from the centerline of the lowerleft radius toward the center of the pocket. The feedrate
for this move is programmed as I. Defaults to last
programmed feedrate.
J
After the ramp-in move, the tool will rough-mill the
pocket, at feedrate J. Defaults to last programmed
feedrate.
S
Finish stock amount per side (including bottom). If
entered as negative, stock will be left, but no finish
pass will occur. If not programmed, no finish stock is
left.
79
Revised August 2005 by Brian LaBombard

St. Clair College of Applied Arts and Technology


Address
Word
Description
K
Finish-pass feedrate. Defaults to last programmed
feedrate.
P
Z-Axis absolute finish height (must be equal to or
above H) Executed in rapid. Defaults to H value
WARNING: When a pocket is cut inside another pocket,
the P value MUST be set above the highest pocket. At
the end of each pocket the tool will rapid to P, then
rapid to the start position.
Example: G78 M4 W2 H.1 Z-.5 U.75 A.35 B.25 I7 J12 S.01 K20 P.1
NOTE: If you do not use X and Y words, you must position the tool at the center of the pocket before
the G78 block.
In the following example the tool will perform the following operations: Only the tool path is shown
1.
2.
3.
4.

Tool moves to the center of the radius in the lower-left corner (position 1).
Tool feeds -.1" (2mm) to meet the part surface.
Tool moves in XYZ toward center of pocket (position 2) to the first roughing depth, at feedrate I.
Tool mills out the pocket with straight lines and arcs (if necessary), using feedrate J, until first
level is completed.
5. Tool repeats this process if necessary to achieve full depth (less finish stock).
6. Optional finish pass is made in the same manner at feedrate K.
7. When the pocket is complete, tool rapids to P, then to the center of the pocket.

80
Revised August 2005 by Brian LaBombard

St. Clair College of Applied Arts and Technology

SUBPROGRAM/SUBROUTINE FUNCTIONS
Subprograms (M98, M99)
When a program contains a fixed sequence of movements or a repeated pattern, such a sequence or pattern can
be stored as a separate program called a subprogram.
A subprogram can be called from a main program.
A called subprogram can also be called from another subprogram.
Format
Subprogram
Configuration

Subprogram call

Explanations

When the main program calls a subprogram, it is regarded as a one


level subprogram call. Thus, subprogram calls can be nested up to four
levels as shown below.

81
Revised August 2005 by Brian LaBombard

St. Clair College of Applied Arts and Technology

SUBPROGRAM/SUBROUTINE FUNCTIONS
Subprogram Examples
M98 P51002 ;
o This command specifies Call the subprogram (number 1002) five times in succession. A
subprogram call command (M98P_) can be specified in the same block as a move command.

X1000.0 M98 P1200 ;


o This example calls the subprogram (number 1200) after an X movement.

Execution sequence of subprograms called from a main program


Main program
Subprogram
1
2
3
N0010 0;
O1010 0;
N0020 0;
N1020 0;
N0030 M98 P21010;
N1030 0;
N0040 0;
N1040 0;
N0050 M98 P1010;
N1050 0;
N0060 0;
N1060 0;
N1070 M99;
A subprogram can call another subprogram in the same way as a main program calls a subprogram.

82
Revised August 2005 by Brian LaBombard

St. Clair College of Applied Arts and Technology

SUBPROGRAM/SUBROUTINE FUNCTIONS
Special Usage

Specifying the
sequence number for
the return destination
in the main program

Using M99 in the


main program

If P is used to specify a sequence number when a subprogram is


terminated, control does not return to the block after the calling block,
but returns to the block with the sequence number specified by P.
Note, however, that P is ignored if the main program is operating in a
mode other than memory operation mode.
This method consumes a much longer time than the normal return
method to return to the main program
Main program

Subprogram

N0010;
N0020;
N0030 M98 P1010;
N0040;
N0050;
N0060;

O1010...;
N1020;
N1030;
N1040;
N1050;
N1060 M99 P0050;

If M99 is executed in a main program, control returns to the start of


the main program. For example, M99 can be executed by placing /
M99; at an appropriate location of the main program and setting the
optional block skip function to off when executing the main program.
When M99 is executed, control returns to the start of the main
program, and then execution is repeated starting at the head of the
main program.
Execution is repeated while the optional block skip function is set to
off. If the optional block skip function is set to on, the / M99; block is
skipped and control is passed to the next block for continued
execution.
If / M99Pn ; is specified, control returns not to the start of the main
program, but to sequence number n. In this case, a longer time is
required to return to sequence number n.

With Optional Block


Skip OFF

83
Revised August 2005 by Brian LaBombard

N0010 ;
N0020 ;
N0030 ;
N0040 ;
N0050 ;
/ N0060 M99 P0030 Block Skip
N0070 ;
ON
N0080 M02;

St. Clair College of Applied Arts and Technology

SUBPROGRAM/SUBROUTINE FUNCTIONS

Using a subprogram
only

A subprogram can be executed just like a main program by searching for the
start of the subprogram with the MDI.
In this case, if a block containing M99 is executed, control returns to the start
of the subprogram for repeated execution. If a block containing M99 Pn is
executed, control returns to the block with sequence number n in the
subprogram for repeated execution. To terminate this program, a block
containing /M02; or /M30; must be placed at an appropriate location, and the
optional block switch must be set to OFF. This switch is to be set to ON
first.
N1010 ;
N1020 ;
N1030 ;
/ N1040 M30;
N1050 M99 P1020;

84
Revised August 2005 by Brian LaBombard

Optional
Skip Block
ON

St. Clair College of Applied Arts and Technology

THIS PAGE LEFT BLANK INTENTIONALLY

85
Revised August 2005 by Brian LaBombard

St. Clair College of Applied Arts and Technology

APPENDIX A

G' and `M' Codes

Fanuc

and

ANILAM

86
Revised August 2005 by Brian LaBombard

St. Clair College of Applied Arts and Technology

FANUC MISCELLANEOUS CODES (M CODES)


Only 1 M code is permitted per program line.
M-Code
M0
M1
M2
M3
M4
M5
M6
M8
M9
M17
M 19
M 30
M98
M99

Function
Program stop.
Optional Stop. Optional stop switch must be set to ON. Must hit Cycle
Start after any time to continue program operation
End of Program. Rewinds program in memory
Spindle ON Clockwise (CW)
Spindle ON Counterclockwise (CCW)
Stop the spindle
Perform Automatic Tool Change (ATC) Z will automatically move to
tool change position
Coolant ON
Coolant OFF
Marks end of a subroutine
Orients Spindle
End of Program. Rewinds program, stops spindle and stops coolant
Call a subprogram (can be executed from a Main or Sub program)
End a subprogram or subroutine

ANILAM MISCELLANEOUS CODES (M CODES)


Only 1 M code is permitted per line. Note that the following M codes require parameters M30, M98, and M100.
M-Code
Function
M0
Program stop.
M2
End of program.
M3
Spindle ON FWD.
M4
Spindle ON REV.
M5
Spindle OFF.
M8
Coolant ON.
M9
Coolant OFF.
M30
Jump to new program.
M98
Call subprogram.
M99
End subprogram.
M100
Mirror image.
M105
Dry-run, all axes.
M106
Dry-run, N4 Z axis.
M107
Dry-run off (cancels M105 or M106).
NOTE: There are additional "M" codes used in more specialized applications that are not listed.

87
Revised August 2005 by Brian LaBombard

St. Clair College of Applied Arts and Technology

FANUC PREPARATORY CODES (G CODES)


G Code
XG00
Z G01
G02
G03
G04
G05
G05.1
G07.1 (G107)
G08
G09
G10
G11
XG15
G16
XG17
Z G18
Z G19
G20
G21
XG22
G23
XG25
G26
G27
G28
G29
G30
G31
G33
G37
G39
XG40
G41
G42
XG40.1 (G150)
G41.1 (G151)
G42.1 (G152)
G43
G44

Group
01

00

17
02
06
04
24

00

01
00
07

19
08

Function
Rapid traverse positioning
Linear positioning by feedrate
Circular interpolation/Helical interpolation CW by feedrate
Circular interpolation/Helical interpolation CCW by feedrate
Dwell, Exact stop
High speed machining cycle
AI advanced control
Cylindrical interpolation
Advanced preview contol
Exact stop
Programmable data input
Programmable data input mode cancel
Polar coordinate command cancel
Polar coordinate command
XY plane selection
ZX plane selection
YZ plane selection
Program input in inches
Program input in mm
Stored stroke check function on
Stored stroke check function off
Spindle speed fluctuation detection off
Spindle speed fluctuation detection on
Reference point return check
Return to reference point
Return from reference point
2nd, 3rd, and 4th reference position return
Skip function
Thread cutting
Automatic tool length measurement
Corner offset circular interpolation
Cutter compensation cancel/ 3 dimensional compensation cancel
Cutter compensation offset to the left/ 3 dimensional compensatlion
Cutter compensation offset to the right
Normal direction control cancel mode
Normal direction control left side on
Normal direction control right side on
Tool length compensation + (plus) direction
Tool length compensation - (minus) direction

88
Revised August 2005 by Brian LaBombard

St. Clair College of Applied Arts and Technology

FANUC PREPARATORY CODES (G CODES)


G Code
G45
G46
G47
G48
XG49
XG50
G51
XG50.1
G51.1
G52
G53
XG54
G55
G56
G57
G58
G59
G60
G61
G62
G63
XG64
G65
G66
XG67
G68
G69
G73
G74
G76
XG80
G81
G82
G83
G84
G85 to G89

Group
00
08
11
22
00

14

00
15
00
12
16
09

09

Function
Tool offset increases
Tool offset decreases
Tool offset increases double
Tool offset decreases double
Tool length compensation cancel
Scaling off
Scaling on
Programmable mirror image cancel
Programmable mirror image on
Local coordinate system setting
Machine coordinate system setting
Workpiece coordinate system 1 selected
Workpiece coordinate system 2 selected
Workpiece coordinate system 3 selected
Workpiece coordinate system 4 selected
Workpiece coordinate system 5 selected
Workpiece coordinate system 6 selected
Single direction positioning
Exact stop mode
Automatic corner override
Tapping mode
Cutting mode
Macro call
Macro modal call
Macro modal call cancel
Coordinate rotation/ 3 dimensional coordinate conversion
Coordinate rotation cancel/ 3 dimensional coordinate conversion cancel
Peck drilling cycle
Left hand tapping cycle
Find boring cycle
Canned cycle cancel/ external operation function cancel
Drilling cycle, spot boring cycle, or external operation function
Drilling cycle or counter boring cycle
Deep hole drilling cycle
Right hand tapping cycle
Various boring cycles

89
Revised August 2005 by Brian LaBombard

St. Clair College of Applied Arts and Technology

FANUC PREPARATORY CODES (G CODES)

G Code
XG90
Z G91
G92
G92.1
XG94
G95
G96
XG97
XG98
G99

Group

Function

03

Absolute machine positioning


Incremental machine positioning
Absolute coordinate system setting function or clamp at maximum spindle
speed
Workpiece coordinate system preset
Feed per minute
Feed per revolution
Constant surface speed control
Constant surface feed control cancel
Return to initial point in a canned cycle
Return to point R in a canned cycle

00
06
13
10

Note:
X - Indicates default value at machine power up
Z - Indicates alternate default value for machine power up

90
Revised August 2005 by Brian LaBombard

St. Clair College of Applied Arts and Technology

ANILAM PREPARATORY CODES (G CODES)


G-codes initiate motion commands, canned cycles and various machine and CNC functions. More than one
G-code may be specified per block. If a block contains conflicting G-codes, an Error message will appear.
Table 4-1 lists non-modal and modal G-codes. Modal G-codes remain in effect until cancelled by the
appropriate code. Non-modal G-codes affect only the block in which they are programmed.
Modal
G-Code
G0
G1
G2
G3
G22
G40
G41
G42
G53
G59
G60
G61
G64
G66
G67
G68
G70
G71
G72
G90
G91
G94
G95
G81
G82
G83
G84
G85
G86
G87
G89
G92

Non-Modal
G-Code Function
G4
Dwell
G5
Ellipse
G9
Exact Stop Check
G28 Return to Machine Home
G29 Return from Machine Home
G45 Mold Rotation
G49 Elbow Milling
G62 Automatic Feed Override for Arcs
G63 Automatic Feed Override for Arcs
Cancel
Modal Corner Rounding
G65 User Macro Single Call
Modal Corner Rounding Off
G66 User Macro Modal Call
Exact Stop Check Mode
G67 User Macro Modal Call Cancel
Cutting Mode (Continuous Path ON)
G68 Coordinate System Rotation
User Macro Modal Call
G73 Draft Pocket Milling Cycle
User Macro Modal Call Cancel
G74 Area Clearance (Face) Cycle
Coordinate System Rotation
G75 Frame Milling
Inch Programming
G76 Hole Milling Cycle
MM Programming
G77 Circular Pocket Cycle
Axis Scaling
G78 Rectangular Pocket Cycle
Absolute Programming
G79 Bolt Hole Circle Cycle
Incremental Programming
G80 Cancel Modal Drilling
Per Minute Feed
G169 Area Clearance
Per Revolution Feed
G170 Facing Cycle
Basic Drilling Cycle
G171 Circular Profile Cycle
Counterbore Drilling Cycle
G172 Rectangular Profile Cycle
Basic Peck Cycle
G177 Plunge Circular Pocket
Tapping Cycle
G178 Plunge Rectangular Pocket
Basic Bore Cycle
G179 Hole Pattern Drilling
Unidirectional Boring Cycle
Chip Break Drilling Cycle
Flat Bottom Bore Cycle
Absolute Zero Preset
Function
Positioning-Rapid Traverse
Linear Interpolation-Feed
Circular Interpolation-CW
Circular Interpolation-CCW
Stored Stroke Limit ON
Tool Radius Compensation, Cancel
Tool Radius Compensation (Left)
Tool Radius Compensation (Right)
Work Coordinate System

91
Revised August 2005 by Brian LaBombard

St. Clair College of Applied Arts and Technology

APPENDIX B

Charts

And

Tables

92
Revised August 2005 by Brian LaBombard

St. Clair College of Applied Arts and Technology

THIS PAGE LEFT BLANK INTENTIONALLY

93
Revised August 2005 by Brian LaBombard

St. Clair College of Applied Arts and Technology

94
Revised August 2005 by Brian LaBombard

St. Clair College of Applied Arts and Technology

95
Revised August 2005 by Brian LaBombard

Anda mungkin juga menyukai