You are on page 1of 98

AND V PRORAVV|N |OR CNC V|LL|N VACH|Nf8 1

DenIord Limited
Birds Poyd
Brighouse
West Yorkshire
Eng|and
HD6 1NB
Te|. 44 (0) 1484 712264
Fax. 44 (0) 1484 722160
Emai|. education@denIord.co.uk
C and M
Programming
Ior CNC
Mi||ing Machines
CCMFU1LklSLD MACHlNLS AND SYS1LMS
2 AND V PRORAVV|N |OR CNC V|LL|N VACH|Nf8
NOTf8.
AND V PRORAVV|N |OR CNC V|LL|N VACH|Nf8 3
Tab|e oI Contents
lntroduction..................................................6
What is CNC? ...............................................7
CONTfNT8.
T|TLf PAf NO.
BA8|C PRORAVV|N.
Composition oI a Part Program........................ 9
Main Program Structure ................................. 10
Sub Program Structure .................................. 12
Sub Program Commands - Cenera| Notes ......... 13
Sub Program Pepeat Command.......................14
Bi||et DeIinition ............................................. 15
Program Numbering and Saving ...................... 16
Program B|ock Numbering .............................. 17
B|ock ConIiguration ....................................... 18
C Codes (Preparatory Functions) ..................... 18
Too| Movement ............................................. 19
Feed Function...............................................21
M Codes (Misce||aneous Functions) .................21
Spind|e Speed Function (Cutting Speed) ...........22
Too| Function ................................................ 23
Too| Compensation (Too| CIIset) ...................... 24
Abso|ute and lncrementa| Co-ordinates ............ 25
Cptiona| B|ock Skip ....................................... 26
Tutoria|s and Comments................................. 26
4 AND V PRORAVV|N |OR CNC V|LL|N VACH|Nf8
CONTfNT8. T|TLf PAf NO.
CODf8 PRfPARATORY |UNCT|ON8.
C Codes - lntroduction ................................... 27
List oI C Codes supported by
DenIord CNC Contro|s ................................... 29
C (Papid Positioning/Traverse) ..................... 30
C1 (Linear lnterpo|ation) .............................. 32
C2 & C3 (Circu|ar lnterpo|ation) ................. 34
C4 (Dve||) ................................................. 40
C2 & C21 (lmperia| /Metric Data lnput) .......... 41
C28 (PeIerence Point Peturn) ......................... 42
C4, C41 & C42 (Cutter Compensation) .......... 45
C73-C89 (Canned Cyc|es) .............................. 49
C73 (High SpeedPeck Dri||ing) ........................ 54
C74 (Counter Tapping) ................................... 55
C76 (Fine Boring) .......................................... 56
C8 (Canned Cyc|e, Cance|) ........................... 57
C81 (Dri||ing - Spot Boring) ............................. 58
C82 (Dri||ing - Counter Boring) ........................ 59
C83 (Deep Ho|e Peck Dri||ing) ......................... 60
C84 (Tapping) ............................................... 61
C85 (Boring) ................................................. 62
C86 (Boring) ................................................. 63
C87 (Back Boring) ......................................... 64
C89 (Boring) ................................................. 65
C Codes - Program Examp|e Using Canned Cyc|es ... 66
C9 (Abso|ute Zero Command) ...................... 67
C91 (lncrementa| Command) .......................... 67
C94 (Feed per Minute) ................................... 67
C95 (Feed per Pevo|ution) .............................. 68
C98 (Peturn to lnitia| Leve|) ............................ 68
C99 (Peturn to P Point Leve|) .......................... 68
C17-C173 (Circu|ar/Pectangu|ar Pocket) ........ 69
C17 & C171 (Circu|ar Pocket Examp|e A) ....... 70
C17 & C171 (Circu|ar Pocket Examp|e B) ....... 72
C17 & C171 (Circu|ar Pocket Examp|e C) ....... 74
C172 & C173 (Pectangu|ar Pocket Examp|e A) ... 76
C172 & C173 (Pectangu|ar Pocket Examp|e B) ... 79
C172 & C173 (Pectangu|ar Pocket Examp|e C) ... 81
AND V PRORAVV|N |OR CNC V|LL|N VACH|Nf8 5
CONTfNT8. T|TLf PAf NO.
V CODf8 V|8CfLLANfOU8 |UNCT|ON8.
M Codes - lntroduction...................................83
List oI M Codes Supported by
DenIord CNC Contro|s ...................................84
M (Program Stop) ..................................... 86
M1 (Cptiona| Stop) ......................................86
M2 (Program Peset) .................................... 86
M3 (Spind|e Forvard) .................................. 87
M4 (Spind|e Peverse) ...................................87
M5 (Spind|e Stop) ....................................... 87
M6 (Automatic Too| Change) ........................ 88
M8 (Coo|ant Cn) .........................................88
M9 (Coo|ant CII) .........................................88
M1 (Vice Cpen) .......................................... 89
M11 (Vice C|ose) ........................................... 89
M13 (Spind|e Forvard and Coo|ant Cn) ............ 89
M14 (Spind|e Peverse and Coo|ant Cn) ............. 90
M2 (ATC Arm ln) .........................................90
M19 (Spind|e Crientation) .............................. 90
M21 (ATC Arm Cut) ....................................... 91
M22 (ATC Arm Dovn) .................................... 91
M23 (ATC Arm Up) ........................................ 91
M24 (ATC Dravbar Unc|amp) ......................... 92
M27 (Peset Carouse| to Pocket Cne) ................ 92
M25 (ATC Dravbar C|amp) .............................92
M3 (Program Peset and Pevind) ................... 93
M32 (Carouse| CW) ....................................... 93
M33 (Carouse| CCW) ..................................... 93
M38 (Door Cpen) .......................................... 94
M39 (Door C|ose) .......................................... 94
M62, M63, M64, M65, M66, M67,
M76 & M77 (Auxi|iary Cutput Functions) ......... 95
M7 (Mirror in X Cn) ..................................... 96
M71 (Mirror in Y Cn) ......................................96
M8 (Mirror in X CII) .................................... 96
M81 (Mirror in Y CII) ..................................... 97
M98 (Sub Program Ca||) ................................. 97
M99 (Sub Program End and Peturn) .................97
AND V PRORAVV|N |OR CNC V|LL|N VACH|Nf8
|NTRODUCT|ON.
The DenIord CNC (Computer Numerica| Contro|) unit
Iitted to DenIords range oI machine too|s is a FANUC
compatib|e system vhich uses lSC code Iormat.
This manua| covers the stages invo|ved in producing
the coded instructions, used by the CNC unit to make
the component. These coded instructions are ca||ed
the part program.
Each part program contains a number oI diIIerent codes,
the most important being the co||ection oI C and M
codes. Essentia||y, these Iorm the basic |anguage used
to describe hov a component vi|| be manuIactured,
the order in vhich to carry out machining tasks, vhen
to change too|s, hov Iar to cut into the materia| etc.....
The Iront sections oI this manua| cover the basics oI
part programming, inc|uding guide|ines Ior genera|
| ayout and commands. Each secti on bui | ds
progressive|y, using p|ain, easy to Io||ov text, to cover
the most common aspects oI programming. At the end
oI this stage, the operator shou|d be conIident enough
to tack|e basic part programming.
Natura||y, this manua| cannot "teach" the operator
everything there is to knov about programming. The
subject is simp|y too vast to inc|ude it a||. The content
oI this manua| does, hovever, Iorm a good basis Irom
vhich to start |earning and hopeIu||y inspires
conIidence in using more technica||y structured
documents.
The G Codes and M Codes secti ons contai n
inIormation vhich are more speciIic to certain
commands and Iunctions - these sections are intended
more as a reIerence guide, once the operator is
conIident vith the basics oI programming.
AND V PRORAVV|N |OR CNC V|LL|N VACH|Nf8 7
CNC (Computer Numerica| Contro|) is the genera| term
used Ior a system vhich contro|s the Iunctions oI a
machine too| using coded instructions processed by a
computer.
fXAVPLf CNC VANU|ACTUR|N PROCf88.
The diagram on page 8 shovs the main stages invo|ved
in producing a component on a CNC system.
1) A part program is vritten, using C and M codes.
This describes the sequence oI operations that the
machine must perIorm in order to manuIacture the
component.
This program can be produced oII-|ine, ie, avay Irom
the machine, either manua||y or vith the aid oI a CAD/
CAM system.
2) The part program is |oaded into the machines
computer, ca||ed the contro||er. At this stage, the
program can sti|| be edited or simu|ated using the
machine contro||er keypad/input device.
3) The machine contro||er processes the part program
and sends signa|s to the machine components
directing the machine through the required sequence
oI operati ons necessary to manuIacture the
component.
The app|ication oI CNC to a manua| machine a||ovs its
operation to become Iu||y automated.
Combining this vith the use oI a part program
enhances the abi|ity oI the machine to perIorm repeat
tasks vith high degrees oI accuracy.
wHAT |8 CNC?
8 AND V PRORAVV|N |OR CNC V|LL|N VACH|Nf8
COVPUTfR
PRORAVV|N
lCAD|CAVl.
& V
CODf8.
VACH|Nf fLfCTR|CAL CONTROL UN|T.
DfN|ORD CNC V|LL|N VACH|Nf.
D|ARAV fXAVPLf CNC VANU|ACTUR|N PROCf88.
HUVAN
PRORAVV|N
lVD| VANUAL DATA |NPUTl.
CONTROL
8|NAL8.
VACH|Nf CONTROL KfYPAD.
BA8|C PRORAVV|N 9
COVPO8|T|ON
O| A PART
PRORAV.
A ParI Program is a |ist oI coded instructions
vhich describes hov the designed component,
or part, vi|| be manuIactured.
These coded instructions are ca||ed daIa - a
series oI |etters and numbers. The part pro-
gram inc|udes a|| the geometrica| and tech-
no|ogica| data to perIorm the required machine
Iunctions and movements to manuIacture
the part.
The part program can be Iurther broken dovn
into separate |ines oI data, each |ine de-
scribing a particu|ar set oI machining opera-
tions. These |ines, vhich run in sequence, are
ca||ed b/ocks.
A b|ock oI data contains vords, sometimes
ca||ed codes. Each vord reIers to a speciIic
cutting/movement command or machine Iunc-
tion. The programming |anguage recog-
nised by the CNC, the machine contro||er,
is an l.S.C. code, vhich inc|udes the G and M
code groups.
Each program vord is composed Irom a |et-
ter, ca||ed the address, a|ong vith a number.
PART PRORAV fXAVPLf
BLOCK fXAVPLf lOBO OO" Z-O.D F4O ;
wORD fXAVPLf OO"
ADDRf88 fXAVPLf O
[lill OAl Oesigner
- star.lOO]
[P/"O/"DD7]
[Triao PO [netrio]]
[Post fanuon:".PO
P4 dune "DD4]
OOODO ;
lO"O OP" ;
[BlLLET XP4O Y"7O Z"O
[EOOElOVE XO YO
[TOOLOEF T" OP
lOPO OD" OPB XO YO ZO ;
lOBO lE T" ;
lO4O O4B H" ;
lODO lB SBOOO ;
lOEO ODO OOO XDO Y"PO ;
lO7O ZP ;
lOBO OO" Z-O.D F4O ;
lODO X"OD Y"EO FEO ;
l"OO X"PO Y"PO ;
l""O X"ED ;
l"PO X"BO YDD ;
l"BO X"4D YDO ;
l"4O X"OD YBO ;
l"DO XED YDO ;
l"EO XBO YDD ;
l"7O X4D Y"PO ;
l"BO XDO ;
l"DO OOO ZP ;
lPOO lD ;
lP"O OD" OPB XO YO ZO ;
lPPO lBO ;
10 BA8|C PRORAVV|N
VA|N PRORAV
8TRUCTURf.
The part program can contain a number oI separate
programs, vhich together describe a|| the operations
required to manuIacture the part.
The Main Program is the contro||ing program, ie, the
program Iirst read, or accessed, vhen the entire part
program sequence is run. This contro||ing program can
then ca|| a number oI sma||er programs into operation.
These sma||er programs, ca||ed 3ub Programs, are
genera||y used to perIorm repeat tasks, beIore
returning contro| back to the main program.
Norma||y, the contro||er operates according to one
program. ln this case the main program is a|so the part
program.
Main Programs are vritten using l.S.C. address codes
|isted be|ov.
ADDRf88f8
N reIers to the b|ock number.
C reIers to the C code (Preparatory Iunction).
X reIers to the abso|ute/incrementa| distance
trave||ed by the s|ide too| in the X axis direction.
Y reIers to the abso|ute/incrementa| distance
trave||ed by the s|ide too| in the Y axis direction.
Z reIers to the abso|ute/incrementa| distance
trave||ed by the s|ide too| in the Z axis direction.
F reIers to the Ieed rate.
M reIers to the M code (Misce||aneous Iunction).
S reIers to the spind|e speed.
T reIers to the too|ing management.
Each b|ock, or program |ine, contains addresses vhich
appear in this order .
N , C , X , Y , Z , F , M , S , T ;
This order shou|d be maintained throughout every b|ock
in the program, a|though individua| b|ocks may not
necessari|y contain a|| these addresses.
BA8|C PRORAVV|N 11
VA|N PRORAV
8TRUCTURf.
The organisation oI b|ocks oI data vithin the program
Io||ovs a |ayout. Again, it is recommended that the
programmer keeps to this program |ayout.
Program number.
CAD/CAM soItvare
package inIormation.
Units deIinition
(Metric or lmperia|)
and bi||et size Ior
simu|ation.
Main program
inIormation.
Program end.
The above |isting shovs an examp|e program using
the DenIord programming system.
For the program to operate correct|y on a genuine
FANUC contro|, the CAD/CAM soItvare inIormation
and bi||et size deIinitions must be removed Irom the
|isting.
The main program can be generated
using DenIords Mi||CAM Designer
CAD/CAM soItvare package, saved
onto disk and transIerred to the
CNC.
A|ternative|y, the main program can
be manua||y entered into the CNC
memory vhen the contro||er is set
in Edit Mode.
Machine Simu|ation oI C and M code
program.
[lill OAl Oesigner
- star.lOO]
[P/"O/"DD7]
[Triao PO [netrio]]
[Post fanuon:".PO
P4 dune "DD4]
OOODO ;
lO"O OP" ;
[BlLLET XP4O Y"7O Z"O
[EOOElOVE XO YO
[TOOLOEF T" OP
lOPO OD" OPB XO YO ZO ;
lOBO lE T" ;
lO4O O4B H" ;
lODO lB SBOOO ;
lOEO ODO OOO XDO Y"PO ;
lO7O ZP ;
lOBO OO" Z-O.D F4O ;
lODO X"OD Y"EO FEO ;
l"OO X"PO Y"PO ;
l""O X"ED ;
l"PO X"BO YDD ;
l"BO X"4D YDO ;
l"4O X"OD YBO ;
l"DO XED YDO ;
l"EO XBO YDD ;
l"7O X4D Y"PO ;
l"BO XDO ;
l"DO OOO ZP ;
lPOO lD ;
lP"O OD" OPB XO YO ZO ;
lPPO lBO ;
12 BA8|C PRORAVV|N
8UB PRORAV
8TRUCTURf.
Va|a Praram.
OOOO"
lOO"O OP";
[BlLLET X.... Y.... Z....
lOOPO ...... ;
lOOBO ...... ;
lOO4O ...... ;
lOODO ...... ;
lOOEO ...... ;
lOO7O ...... ;
lOOBO lDB P"OOO;
lOODO ...... ;
lO"OO ...... ;
lO""O ...... ;
lO"PO ...... ;
lO"BO ...... ;
lO"4O ...... ;
lO"DO lBO;
8aa Praram 1.
O"OOO
lOO"O ...... ;
lOOPO ...... ;
lOOBO ...... ;
lOO4O ...... ;
lOODO ...... ;
lOOEO ...... ;
lOO7O ...... ;
lOOBO ...... ;
lOODO ...... ;
lO"OO ...... ;
lO""O lDB PPOOO;
lO"PO ...... ;
lO"BO ...... ;
lO"4O ...... ;
lO"DO ...... ;
lO"EO lDD;
8aa Praram 2.
OPOOO
lOO"O ...... ;
lOOPO ...... ;
lOOBO ...... ;
lOO4O ...... ;
lOODO ...... ;
lOOEO ...... ;
lOO7O ...... ;
lOOBO ...... ;
lOODO ...... ;
lO"OO ...... ;
lO""O ...... ;
lO"PO ...... ;
lO"BO ...... ;
lO"4O ...... ;
lO"DO ...... ;
lO"EO lDD;
ONfLOOP Nf8T|N. TwOLOOP Nf8T|N.
A program vhich contains Iixed sequences or
Irequent|y repeated patterns may be entered into
memory as a 3ub Program, in order to simp|iIy the
main program.
A sub program is entered into the machine contro||er
memory in Edit Mode, in the same manner as the main
program.
DiIIerences betveen a sub and main program .
1) A sub program does not have a bi||et size deIinition
at the top oI the program |isting.
2) A sub program is ended by the M99 code.
The sub program can be ca||ed into operation vhen
the machine is set to run in Auto Mode. Sub programs
can a|so ca|| other sub programs into operation.
When the main program ca||s one sub program into
operation, the process is ca||ed a one-|oop sub
program ca||. lt is possib|e to program a maximum Iour-
|oop sub program ca|| vithin the main program. Shovn
be|ov is an i||ustration oI a tvo-|oop sub program ca||.
BA8|C PRORAVV|N 13
8UB PRORAV
COVVAND8
fNfRAL NOTf8.
NOTf 1.
A sub program must be saved to memory using a Iour
digit number.
NOTf 2.
lI cutter compensation is required on a too| and the
co-ordinates Ior the too| are vithin the sub program,
the cutter compensation must be app|ied and cance||ed
vithin the sub program.
NOTf 3.
To ca|| a sub program the M98 code is used Io||oved
by P (the number oI the sub program required).
For examp|e,
M98 P2
This command is read ca|| program number 2.
NOTf 4.
A sub program ca|| command (M98 P) can be
speciIied a|ong vith a move command in the same
b|ock.
For examp|e,
C1 X42.5 M98 P1;
NOTf 5.
At the end oI a sub program, the M99 code is entered.
This returns contro| to the main program.
The M99 code vi|| return contro| to the next b|ock
aIter the M98 sub program ca|| b|ock in the main
program.
lI the code M99 P is entered, contro| vi|| pass
to the main program at a b|ock vith the N number
equa| to that oI the P number stated aIter the M99
code.
For examp|e,
M99 P16
This command is read return to the main program at
b|ock number N16.
14 BA8|C PRORAVV|N
8UB PRORAV
RfPfAT
COVVAND.
A ca|| command can be set to ca|| a sub program
repeated|y. This ca|| can speciIy upto 999 repetitions
oI a sub program.
A sub program repeat command has the Io||oving
Iormat .
M98 P
When the repetition is omitted, the sub program vi||
be ca||ed once on|y.
For examp|e,
M98 P11
This command is read ca|| the sub program number
1 ten times.
Number oI times
the sub program
is to be repeated.
Sub program
number.
Ca||
command.
BA8|C PRORAVV|N 15
B|LLfT
Df||N|T|ON.
The 8i//eI DeIiniIion is a Ieature vhich is on|y used in
the DenIord programming system.
lt deIines the size oI the vorkpiece bi||et Ior use in the
simu|ation sections oI the DenIord machine soItvare.
The bi||et deIinition command has no outcome on the
actua| machining oI the part.
The bi||et deIinition command is vritten at the start oI
the main program. The previous b|ock usua||y states
the units oI measurement to be app|ied to the bi||et
dimensions, ie, C21 (Metric data input) or C2
(lmperia| data input).
For examp|e,
N1 C21;
}BlLLET X1 Y15 Z2;
These tvo commands are read.
- program |ine number 1 states that a|| units are to be
measured in Metric,
- the bi||et is a rectangu|ar piece oI materia|, measuring
1mm x 2mm, vith a thickness oI 2mm.
NOTf 1.
A program that has been vritten on a DenIord contro|
(or using DenIord CAD/CAM post processor soItvare)
vi|| not operate direct|y on a genuine FANUC machine.
The si mu| ati on secti ons oI the program are
incompatib|e vith the FANUC contro|.
For the program to run successIu||y, |ines reIerring to
the CAD/CAM soItvare (at the beginning oI the
program) and the bi||et deIinition b|ock must be
de|eted.
1 BA8|C PRORAVV|N
PRORAV
NUVBfR|N
AND 8AV|N.
The DenIord system oI program numbering re|ies on
the programmer saving the program to disk or
computer hard drive at the time oI vriting.
When saving a program using the DenIord Desktop
Tutor keypad, the program number can range Irom 1
to 99999999.
Writing the program on an oII|ine system vith a qverty
keyboard a||ovs the programmer to save the program
using |etters and/or numbers.
NOTf 1.
Sub program numbers must be saved betveen the
ranges 1 to 9999, ie, using a Iour digit number. lt
is recommended that a|| programs saved have Ii|enames
a|so betveen these numbers.
NOTf 2.
BeIore saving a program to disk or hard drive, check
that the program name you vish to use has not been
used on another Ii|e. lI the program is saved using a
name identica| to an o|d program Ii|e, the o|d program
Ii|e vi|| be overvritten.
NOTf 3.
Programs that need to be used at a |ater date on
genuine FANUC contro|s must have their program
number stated on the Iirst program b|ock. The Iormat
Ior inserting a FANUC compatib|e program number |ine
is as Io||ovs .
C
Address code C. Four digit program number.
BA8|C PRORAVV|N 17
A program is composed oI severa| commands, each
command instructing the machine to carry out a
particu|ar operation. Each command is a separate |ine
oI data vithin the program, ca||ed a 8/ock.
Cne b|ock is separated Irom another b|ock using an
end oI b|ock code, ie, eIIective|y signiIying the end oI
a program |ine. The DenIord programming system uses
a semico|on ( ; ) as the end oI b|ock code.
A Iour digit sequence number can be speciIied (1
- 9999) Io||oving the address code N, at the start oI
each b|ock. The order oI these b|ock numbers is
arbitrary and need not be consecutive. B|ock numbers
can be speciIied Ior every program |ine, or just on
program |ines requiring them.
NOTf 1.
The b|ock number must be vritten at the start oI a
program |ine vhen used.
NOTf 2.
lt is recommended that a|| b|ocks are numbered using
a Iour digit number vhich rises betveen each b|ock in
steps oI 1. This a||ovs the program to be edited at a
|ater date, ie, nev b|ocks can be inserted or de|eted as
required.
For examp|e .
N 1 ....
N 2 ....
N 3 ....
N 4 ....
etc....
NOTf 3.
Even vhen b|ock numbering is not a priority, it is
useIu| to insert b|ock numbers at important points in
the program, such as too| change commands. This vi||
he|p iI a program search is used in the Iuture.
PRORAV BLOCK
NUVBfR|N.
18 BA8|C PRORAVV|N
BLOCK
CON||URAT|ON.
The sequence in vhich address codes appear in each
b|ock shou|d remain consistent throughout the program.
lt is recommended that the order oI these address codes
Io||ovs the examp|e shovn be|ov .
lOOOO OOO XOO.O YOO.O ZOO.O FOOOO lOO SOOOO TOO ;
lnterpo|ation
Iunction.
Feedrate
Iunction.
Misce||aneous
Iunction.
Spind|e
Iunction.
Too|
Iunction.
B|ock
sequence
number.
Preparatory
Iunction.
NOTf 1.
Each b|ock may not necessari|y contain a|| these items.
End oI
b|ock
signa|.
CODf8
lPRfPARATORY
|UNCT|ON8l.
Preparatory Iunctions, ca||ed G codes, are used to
determine the geometry oI too| movements and
operating state oI the machine contro||er; Iunctions
such as |inear cutting movements, dri||ing operations
and speciIying the units oI measurement.
They are norma||y programmed at the start oI a b|ock.
A C code is deIined using the C address |etter and a
tvo digit number as Io||ovs,
C
Address. Tvo digit number.
BA8|C PRORAVV|N 19
TOOL
VOVfVfNT.
The too| moves a|ong straight |ines and arcs Iorming
the vorkpiece shape.
Al TOOL VOVfVfNT ALON A 8TRA|HT L|Nf.
Program command Iormat.
C1 Y _ _ _ _ ; (P1 - P2)
X _ _ _ _ Y _ _ _ _ ; (P2 - P3)
X _ _ _ _ ; (P3 - P4)
TOOL VOVfVfNT ALON
A 8TRA|HT L|Nf.
-

Y

A
X
|
8

D
|
R
f
C
T
|
O
N
.
- X AX|8 D|RfCT|ON.
20 BA8|C PRORAVV|N
TOOL
VOVfVfNT.
Al TOOL VOVfVfNT ALON AN ARC.
Program command Iormat.
C3 X _ _ _ _ Y _ _ _ _ P _ _ _ _ ; (P1 - P2)
TOOL VOVfVfNT ALON
AN ARC.
The Iunction oI moving the too| a|ong straight |ines
and arcs is ca||ed the /nIerpo/aIion. Symbo|s oI the
programmed commands C1, C2 and C3 are ca||ed
the PreparaIory Iunctions and speciIy the type oI
interpo|ation conducted in the contro| unit.
NOTf 1.
Cn an actua| machine, the tab|e moves in re|ation to
the cutter. To make the command diagrams easier to
understand, this manua| assumes the too| moves vith
respect to the vorkpiece.
-

Y

A
X
|
8

D
|
R
f
C
T
|
O
N
.
- X AX|8 D|RfCT|ON.
BA8|C PRORAVV|N 21
|ffD
|UNCT|ON.
The movement oI the too| at a speciIied speed Ior
cutting is ca||ed the Feedrate.
The Ieedrate is deIined using the F address |ettter
Io||oved by a numerica| va|ue.
Using the C2 code, the Ieedrate is deIined in lnches
per minute.
Using the C21 code, the Ieedrate is deIined in
Mi||imetres per minute.
V CODf8
lV|8CfLLANfOU8
|UNCT|ON8l.
Misce||aneous Iunctions, ca||ed M codes, are used by
the CNC to command on/oII signa|s to the machine
Iunctions. ie, M3 - spind|e Iorvard (CW), M5 - spin-
d|e stop, etc.....
The Iunctions a||ocated to |over M code numbers are
constant in most CNC contro|s, a|though the higher M
code number Iunctions can vary Irom one make oI
contro||er to the next.
An M code is deIined using the M address |etter and a
tvo digit number as Io||ovs,
M
Address. Tvo digit number.
22 BA8|C PRORAVV|N
8P|NDLf 8PffD
|UNCT|ON
lCUTT|N 8PffDl.
The rotationa| speed oI the too|, vith respect to the
vorkpiece being cut, is ca||ed the spind|e (or cutting)
speed.
The spind|e speed is deIined using the S address |etter,
Io||oved by a numerica| va|ue, signiIying the spind|e
PPM (revo|utions per minute).
The spind|e speed va|ue speciIied must Ia|| betveen
the machine too| PPM range Ior the command to be
eIIective.
NOTf 1.
When a move command and an S code are speciIied
in the same b|ock, a simu|taneous execution oI the
commands is perIormed.
NOTf 2.
Cn|y one S code is a||oved in each program b|ock.
BA8|C PRORAVV|N 23
TOOL
|UNCT|ON.
Too| proIi|es can be changed during a program using
the too| Iunction command. Each too| proIi|e is assigned
a number, vhich in the case oI an ATC (Automatic
Too| Changer) vi|| a|so coincide vith one oI the Iree
bays on its carouse| magazine.
The too| number is deIined using the address |etter T,
Io||oved by a number assigned to the too| proIi|e. To
command a too| change, the M6 code vou|d precede
the number oI the "nev" too| required.
For examp|e,
M6 T1
This command is read perIorm a too| change to too|
number 1.
TOOL NUVBfR 1
2
3
4
5

7
8
ATC CAROU8fL VAAZ|Nf
NOTf 1.
The M6 code (automatic too| change) must im-
mediate|y precede the T code vithin the program b|ock.
NOTf 2.
Cn|y one T code is a||oved in each program b|ock.
NOTf 3.
lI the machine contro| reads an M6 T _ _ command
vhen running in Automatic Mode, the three axes vi||
drive to the too| change position and the spind|e vi||
stop. At this point, the too| change vi|| be perIormed,
iI an ATC is Iitted. This vi|| a|vays happen, ir-
respective oI the too| position vhen the too| change
command is read Irom the program.
24 BA8|C PRORAVV|N
TOOL
COVPfN8AT|ON
lTOOL O||8fTl.
Cenera||y, severa| diIIerent too| proIi|es are required
to machine a vorkpiece, a|| oI diIIerent diameters and
|engths.
lt vou|d be very diIIicu|t to vrite a program that a||oved
Ior this diIIerence in size betveen a|| the various too|s.
To account Ior this, the diIIerence in diameter and
|ength is measured, in advance, Ior a|| the too|s that
vi|| be used. Essentia||y, this means that the cutting
paths Ior a|| the too|s nov coincide. The va|ues are
entered into the oIIset Ii|e.
This too| oIIset is a|so ca||ed too| compensation.
NOTf 1.
When a T code is read by the CNC, it vi|| |oad the
oIIset |ength Ior that particu|ar too|. The code C41 or
C42 (Too| Compensation LeIt or Pight) must be pro-
grammed Ior the radius oIIset to used.
BA8|C PRORAVV|N 25
AB8OLUTf AND
|NCRfVfNTAL
COORD|NATf8.
The addresses X, Y and Z vithin a program, vhen
C90 (Abso|ute co-ordinates) is active, re|ate to a co-
ordinate position Irom the vorkpiece datum (the zero
position).
The addresses X, Y and Z vithin a program, vhen
C91 (lncrementa| co-ordinates) is active, re|ate to the
individua| axis movements required to reach the nev
position, Irom the |ast position reached by the too|.
The examp|e move i||ustrated above can be vritten in
tvo vays.
C90 Abso|ute co-ordinates se|ected
C1 Y60 F150 ;
C03 X60 Y100 P40 ;
C91 lncrementa| co-ordinates se|ected
C01 Y60 F150 ;
C03 X-40 Y40 P40 ;
AB8OLUTf AND |NCRfVfNTAL
COORD|NATf8.
VfTR|C UN|T8
-

Y

A
X
|
8

D
|
R
f
C
T
|
O
N
.
- X AX|8 D|RfCT|ON.
2 BA8|C PRORAVV|N
TUTOR|AL8
AND COVVfNT8.
lI the program is vritten oII-|ine vith a qverty
keyboard, inIormation re|ating to the program can be
inserted vithin the program.
Tutoria| inIormation appear in the Tutoria| dia|og box
oI the machine contro||ing soItvare (ie, the tutoria|
message "Nov perIorming pocket cutting cyc|e" cou|d
be vritten to appear vhen the pocket cutting operation
starts in the program).
Comments inIormation on|y appear in the text oI the
program itse|I (ie, the comment "Too| 5 is 8mm s|ot
cutting too|" cou|d be inserted in the program Ior use
as reIerence on|y).
OPT|ONAL
BLOCK 8K|P.
When a Iorvard s|ash mark ( / ) is Io||oved by a b|ock
number (at the beginning oI a b|ock) and the b|ock
skip svitch on the machine operator pane| is set to
"on", the b|ock vi|| be ignored in memory operation.
When the b|ock svitch is set to "oII", then the b|ocks
indicated by the "/" marks vi|| be considered as va|id.
For examp|e,
N3 X4 ;
/ N4 Y5 ;
/ N5 X7 ;
/ N6 Y9 ;
N7 .....
lI the b|ock skip svitch is set to "on" in the above
program examp|e, then b|ocks indicated by the "/" mark
are skipped.
NOTf 1.
A "/" mark must be speciIied at the start oI the b|ock.
lI it is p|aced e|sevhere in the b|ock, the inIormation
Irom the "/" mark to the ";" mark (the end oI b|ock
mark) vi|| be ignored, vhi|st the inIormation beIore
the "/" mark vi|| be eIIective.
CODf8 PRfPARATORY |UNCT|ON8 27
CODf8
lPRfPARATORY
|UNCT|ON8l
|NTRODUCT|ON.
Preparatory Iunctions, ca||ed G codes, are used to
determine the geometry oI too| movements and
operating state oI the machine contro||er; Iunctions
such as |inear cutting movements, dri||ing operations
and speciIying the units oI measurement.
They are norma||y programmed at the start oI a b|ock.
A C code is made Irom the C address |etter and a tvo
digit number as Io||ovs,
C
VODAL AND NONVODAL CODf8.
Additiona||y, C codes are sp|it into tvo categories -
1) Moda/ (retained) C codes.
A moda| C code, once programmed into a b|ock,
vi|| aIIect any subsequent b|ocks oI the program
vithout having to be restated.
Additiona||y, moda| C codes are Iurther sp|it into
groups according to their task and Iunction. A
moda| C code vi|| remain active unti| another C
code Irom the same group is programmed into a
b|ock, or it is cance||ed.
For examp|e,
C1 and C are moda| C codes Irom group 1.
C1 X _ _ _ _ ;
Y _ _ _ _ ;
X _ _ _ _ ;
CZ _ _ _ _ ;
2) Non-moda/ (one-shot) C codes.
A non-moda| C code must be programmed into
every b|ock vhen it is required, ie, it is on|y eI-
Iective in the b|ock in vhich it is speciIied.
Address. Tvo digit number.
C1 is eIIective
in this range.
C rep|aces the
C1 command.
28 CODf8 PRfPARATORY |UNCT|ON8
CODf8
lPRfPARATORY
|UNCT|ON8l
|NTRODUCT|ON
NOTf8.
NOTf 1.
Pemember there are tvo types oI C code.
A moda| C code is retained in memory - it is eIIective
unti| another C code Irom the same moda| group is
commanded.
A non-moda| C code is one-shot - it is eIIective on|y
vithin the b|ock in vhich it is speciIied.
NOTf 2.
lt is not necessary to enter a moda| C code in
repetitive b|ocks vithin a program.
For examp|e .
lI a|| movements are C1 (|inear cutting command)
then C1 is entered on the Iirst b|ock and omitted
Irom a|| subsequent b|ocks. This C code vi|| remain
active unti| an interpo|ation change is commanded
(using C, C2 or C3).
NOTf 3.
The machine contro||er has the abi|ity to interpret a
maximum oI Iour C codes in one sing|e b|ock oI data.
Hovever, these C codes must be Irom separate moda|
groups. When tvo or more C codes Irom the same
group are speciIied in the same b|ock, the CNC vi||
on|y make the |ast stated C code Irom that moda| group
eIIective.
NOTf8 |OR
CODf8 L|8T|N
8HOwN R|HT.
NOTf 1.
C codes marked vith an are set/reactivated as de-
Iau|t va|ues at machine pover up and vhen the ma-
chine is reset or the emergency stop button is acti-
vated.
NOTf 2.
C codes Irom group are non-moda| (they must be
programmed into every program b|ock vhen required).
A|| other C codes are moda| (they remain active through
subsequent program b|ocks, unti| rep|aced or cance||ed
by a C code Irom their particu|ar group).
CODf8 PRfPARATORY |UNCT|ON8 29
L|8T O| CODf8 8UPPORTfD BY
DfN|ORD CNC CONTROL8.
Note - Not a|| C codes app|y to each machine.
C Code. Croup. Function.
C 1 Positioning (Papid Traverse)
C1 1 Linear lnterpo|ation (Cutting Feed)
C2 1 Circu|ar lnterpo|ation CW
C3 1 Circu|ar lnterpo|ation CCW
C4 Dve||, Exact Stop
C2 6 lmperia| Data lnput (lnches)
C21 6 Metric Data lnput (Mi||imetres)
C28 PeIerence Point Peturn
C4 7 Cutter Compensation Cance|
C41 7 Cutter Compensation LeIt
C42 7 Cutter Compensation Pight
C73 9 High Speed Peck Dri||ing Cyc|e
C74 9 Counter Tapping Cyc|e
G76 9 Fine 8oring Cyc/e(noI recommended on DenIord Machines|
C8 9 Canned Cyc|e Cance|
C81 9 Dri||ing Cyc|e, Spot Boring
C82 9 Dri||ing Cyc|e, Counter Boring
C83 9 Deep Ho|e Peck Dri||ing Cyc|e
C84 9 Tapping Cyc|e
C85 9 Boring Cyc|e
C86 9 Boring Cyc|e
G87 9 8ack 8oring Cyc/e(noI recommended on DenIord Machines|
C89 9 Boring Cyc|e
C9 3 Abso|ute Zero Command
C91 3 lncrementa| Command
C94 5 Feed per Minute
C95 5 Feed per Pevo|ution
C98 1 Peturn to lnitia| Leve| in Canned Cyc|e
C99 1 Peturn to P Point Leve| in Canned Cyc|e
C17 Circu|ar Pocket Canned Cyc|e
C171 Circu|ar Pocket Canned Cyc|e
C172 Pectangu|ar Pocket Canned Cyc|e
C173 Pectangu|ar Pocket Canned Cyc|e
Code |isting Iu|| and correct at the time oI printing.
30 CODf8 PRfPARATORY |UNCT|ON8
The C code executes a non cutting movement, at a
rapid Ieedrate, to a speciIic co-ordinate position in the
vorking area (operating under abso|ute co-
ordinate movement) or vhen a certain distance Irom a
previous|y stated position (under incrementa| co-
ordinate movement) is programmed.
A C command is vritten in the Io||oving Iormat.
C X _ _ _ _ Y_ _ _ _ Z _ _ _ _ ;
CODf8
00
lRAP|D
PO8|T|ON|N|
TRAVfR8fl.
Papid Positioning/
Traverse code.
X, Y and Z
co-ordinate va|ues.
NOTf 1.
The rate oI movement is set by the manuIacturer oI
the machine too|. The rate oI movement can be
reduced Irom 1% to %, but on|y in increments oI
1%, by using the Ieed override contro|s (see spe-
ciIic machine operating manua|).
NOTf 2.
The C code Ireezes the too| radius compensation,
codes C 41 and C42. lI C41 or C42 are active vhen a
C command is programmed, the too| radius com-
pensation vi|| not Iunction again unti| a C1, C2 or
C3 command is programmed.
NOTf 3.
The C code is moda| and is thereIore incompatib|e
vith C1, C2 and C3 codes in the same b|ock.
NOTf 4.
The C code can be vritten into a program in tvo
vays.
C or C.
The axis co-ordinate moves Io||oving a C
command can be programmed as either.
(i) abso|ute va|ues (re|ative to a set datum point)
Io||oving setting oI the C9 code, or,
(ii) incrementa| va|ues (re|ative to the |ast stated
co-ordinate in the program) Io||oving setting oI the
C91 code.
CODf8 PRfPARATORY |UNCT|ON8 31
NOTf 5.
Cn instruction to perIorm the C command, the three
s|ides (the X, Y and Z axes) move comp|ete|y
independant oI each other at a maximum Ieedrate,
a|ong a non-vector (sometimes ca||ed a non-|inear) type
path.
ln the above examp|e, the C command has in-
structed the X and Y s|ides to begin moving, both at a
maximum Ieedrate. When both s|ides begin moving
the too| vi|| appear to traverse diagona||y, a com-
posite movement oI the tvo axes moving together.
When one axis reaches its Iinishing co-ordinate, the
other axis vi|| continue to move unti| it reaches its
ovn Iinishing co-ordinate. This gives the impression
that the too| "changes" direction.
CODf8
00
lRAP|D
PO8|T|ON|N|
TRAVfR8fl.
00 NONL| NfAR
|NTfRPOLAT|ON.
-

Y

A
X
|
8

D
|
R
f
C
T
|
O
N
.
- X AX|8 D|RfCT|ON.
32 CODf8 PRfPARATORY |UNCT|ON8
CODf8
01
lL|NfAR
|NTfRPOLAT|ONl.
The C1 code executes a cutti ng movement
Io||oving a straight |ine, at a set Ieedrate.
A C1 command is vritten in the Io||oving Iormat.
C1 X _ _ _ _ Y_ _ _ _ Z _ _ _ _ ;
The Ieedrate va|ue programmed into the C1
command is the actua| Ieedrate a|ong the proposed
too| path, not the Ieedrate oI each axis/s|ide.
Cn sing|e axis moves (ie, the too| moves exact|y
para||e| to the X, Y or Z axis direction), the s|ide vi||
Ieed at the rate stated in the C1 command.
Cn tvo or three axis moves (ie, the too| is moving in a
straight diagona| |ine), a|| the s|ides have to operate
exact|y the same |ength oI time, in order to produce a
sing|e diagona| (vector) move. The machine contro||er
vi|| ca|cu|ate the separate Ieedrates Ior the X, Y and Z
s|ides, enab|ing the actua| vector Ieedrate to equa| that
stated in the C1 command.
The axis co-ordinate moves Io||oving a C1 command
can be programmed as either.
(i) abso|ute va|ues (re|ative to a set datum point)
Io||oving setting oI the C9 code, or,
(ii) incrementa| va|ues (re|ative to the |ast stated co-
ordinate in the program) Io||oving setting oI the
C91 code.
Linear lnterpo|ation
code.
X, Y and Z
co-ordinate va|ues.
CODf8 PRfPARATORY |UNCT|ON8 33
Examp|e oI programming a C1 |inear interpo|ation.
ODO OO" X"OO YDO F"DO ;
CODf8
01
lL|NfAR
|NTfRPOLAT|ONl.
NOTf 1.
ln the examp|e shovn above, C9, C1 and the F
_ _ _ _ Ieedrate are moda| and can be continued onto
the next b|ock (vithout having to be restated) iI re-
quired.
NOTf 2.
The programmed Ieedrate F _ _ _ _ can be varied in
Automatic Mode Irom % to 15% by using the Ieed
override contro|s (see speciIic machine operating
manua|). 1% is the programmed Ieedrate.
NOTf 3.
When there is no Ieedrate programmed vithin the part
program, the CNC vi | | set a Ieedrate oI 1
mi||imetres per minute in C21 Metric Data Mode, or
.4 inches per minute in C2 lmperia| Data Mode.
NOTf 4.
The C1 code is moda| and is thereIore incompatib|e
vith C, C2 and C3 codes in the same b|ock.
NOTf 5.
The C1 code can be vritten into a program in tvo
vays.
C1 or C1.
01 L|NfAR
|NTfRPOLAT|ON.
-

Y

A
X
|
8

D
|
R
f
C
T
|
O
N
.
- X AX|8 D|RfCT|ON.
34 CODf8 PRfPARATORY |UNCT|ON8
The C2 code executes a cutti ng movement
Io||oving a c|ockvise circu|ar path, at a set Ieedrate.
The C3 code executes a cutti ng movement
Io||oving a counterc|ockvise circu|ar path, at a set
Ieedrate.
The deIi ni ti ons oI c| ockvi se (C2) and
counterc|ockvise (C3) are Iixed according to the
system oI co-ordinates in the diagram be|ov.
When programming arcs using abso|ute va|ues (C9),
the X and Y va|ues describe the end point oI the arc,
in re|ation to the datum position oI the vorkpiece. The
arc end point is sometimes reIerred to as the target
position.
When programming arcs using incrementa| va|ues
(C91), the X and Y va|ues re|ate to the distance moved
a|ong the X and Y axes, Irom the start point oI the arc
to the end point oI the arc. The sign oI the X and Y
axis moves (/-) vi|| depend on the movement oI the
machine s|ides in re|ation to their start position.
R|HT HAND CARTf8|AN
COORD|NATf 8Y8TfV.
CODf8
02
03
lC|RCULAR
|NTfRPOLAT|ONl.
-X
-Y
03
02
CODf8 PRfPARATORY |UNCT|ON8 35
CODf8
02
03
lC|RCULAR
|NTfRPOLAT|ONl.
| AND J
To program an arc vhen on|y the arc centre is given
(the radius is unknovn) use the address |etters l and
J.
l re|ates to the address X and is the incrementa| va|ue
and direction (/-) Irom the start point oI the arc in
the X axis to the arc centre (see diagram be|ov).
J re|ates to the address Y and is the incrementa| va|ue
and direction (/-) Irom the start point oI the arc in
the Y axis to the arc centre (see diagram be|ov).
-

Y

A
X
|
8

D
|
R
f
C
T
|
O
N
.
- X AX|8 D|RfCT|ON.
02|03 C| RCULAR
|NTfRPOLAT|ON U8|N | AND J.
3 CODf8 PRfPARATORY |UNCT|ON8
CODf8
02
03
lC|RCULAR
|NTfRPOLAT|ONl.
The Iormat to program a circu|ar interpo|ation in
Cartesian co-ordinates is vritten as Io||ovs .
There are Iour vays to program a c|ockvise circu|ar
path using the C2 code.
C9 C2 X _ _ _ _ Y _ _ _ _ P _ _ _ F _ _ _ ;
C9 C2 X _ _ _ _ Y _ _ _ _ l _ _ _ J _ _ _ F _ _ _ ;
C91 C2 X _ _ _ _ Y _ _ _ _ P _ _ _ _ F _ _ _ _ ;
C91 C2 X _ _ _ _ Y _ _ _ _ l _ _ _ J _ _ _ F _ _ _ ;
There are Iour vays to program an antic|ockvise
circu|ar path using the C3 code.
C9 C3 X _ _ _ _ Y _ _ _ _ P _ _ _ F _ _ _ ;
C9 C3 X _ _ _ _ Y _ _ _ _ l _ _ _ J _ _ _ F _ _ _ ;
C91 C3 X _ _ _ _ Y _ _ _ _ P _ _ _ _ F _ _ _ _ ;
C91 C3 X _ _ _ _ Y _ _ _ _ l _ _ _ J _ _ _ F _ _ _ ;
vhere,
C2 deIi nes the c| ockvi se di recti on ci rcu| ar
interpo|ation.
C3 deIines the counterc|ockvise direction circu|ar
interpo|ation.
C9 X _ _ _ _ Y _ _ _ _ deIines the arc end point in the
vork co-ordinate system.
C91 X _ _ _ _ Y _ _ _ _ deIines the signed distance oI
the arc end point Irom the arc start point.
l _ _ _ J _ _ _ deIines the signed distance oI the arc
start point Irom the centre point oI the arc.
P _ _ _ deIines the |ength oI the arc radius.
F _ _ _ deIines the Ieedrate a|ong the arc.
CODf8 PRfPARATORY |UNCT|ON8 37
CODf8
02
03
lC|RCULAR
|NTfRPOLAT|ONl.
For examp|e.
The above too| path can be programmed as Io||ovs (ln
abso|ute mode, C9).
OO" X"OO Y4O F"PD ;
OOB XBO YEO l-PO ;
OO" XEO ;
OOP X4O Y4O l-PO ;
or,
OO" X"OO Y4O F"PD ;
OOB XBO YEO RPO ;
OO" XEO ;
OOP X4O Y4O RPO ;
The above too| path can be programmed as Io||ovs (ln
incrementa| mode, C91).
OOB X-PO YPO l-PO ;
OO" X-PO ;
OOP X-PO Y-PO l-PO ;
or,
OOB X-PO YPO RPO ;
OO" X-PO ;
OOP X-PO Y-PO RPO ;
-

Y

A
X
|
8

D
|
R
f
C
T
|
O
N
.
- X AX|8 D|RfCT|ON.
02|03 C|RCULAR
|NTfRPOLAT|ON fXAVPLf.
38 CODf8 PRfPARATORY |UNCT|ON8
CODf8
02
03
lC|RCULAR
|NTfRPOLAT|ONl.
When using the address P _ _ _ _ , tvo types oI arcs
can be considered. Cne arc is |ess than 18 degrees,
vhi|st the other arc is greater than 18 degrees. When
an arc exceeding 18 degrees is commanded, the
radius va|ue (P _ _ _ _) must be speciIied as a negative
signed (-) va|ue.
For examp|e.
The above too| path Ior an arc |ess than 18 degrees
(circ|e A) can be programmed as Io||ovs (ln abso|ute
mode, C9).
OOP XBO Y4O RDO F"PD ;
The above too| path Ior an arc greater than 18
degrees (circ|e B) can be programmed as Io||ovs (ln
abso|ute mode, C9).
OOP XBO Y4O R-DO F"PD ;
-

Y

A
X
|
8

D
|
R
f
C
T
|
O
N
.
- X AX|8 D|RfCT|ON.
02|03 C|RCULAR
|NTfRPOLAT|ON ARC
Df||N|TON.
CODf8 PRfPARATORY |UNCT|ON8 39
NOTf 1.
When programming arcs using the address P (arc
radius), the va|ue oI P must be equa| to, or greater
than ha|I the |ongest distance trave||ed by either axis.
NOTf 2.
l and J can be omitted Irom program |ines.
NOTf 3.
When X or Y are omitted Irom program |ines, the arc
end point is |ocated at the same position as the arc
start point and the arc centre is commanded by l or J,
an arc oI 36 degrees (ie, a comp|ete circ|e) is as-
sumed. When P is used, an arc oI degrees is as-
sumed and the cutter does not move.
NOTf 4.
When l, J and P addresses are speci Ii ed
simu|taneous|y in the same program |ine, the address
P takes precedence and the other addresses are
ignored.
NOTf 5.
A C2 code can be vritten into a program in tvo
vays.
C2 or C2.
A C3 code can be vritten into a program in tvo
vays.
C3 or C3.
CODf8
02
03
lC|RCULAR
|NTfRPOLAT|ONl.
40 CODf8 PRfPARATORY |UNCT|ON8
CODf8
04
lDwfLLl.
The C4 code is used to enter a set time de|ay into
the program (ca||ed a "dve||").
A C4 command is vritten in the Io||oving Iormat.
C4 X _ _ _ _ ;
or C4 P _ _ _ _ ;
vhere the dve|| va|ue is programmed using the
address |etters X (time in seconds) or P (time in 1/
1 seconds), Io||oved by a number indicating this
dve|| va|ue.
For examp|e .
OO4 X".D ;
This command is read perIorm a dve|| oI 1.5 seconds
duration.
OO4 PPDOO ;
This command is read perIorm a dve|| oI 2.5 seconds
duration.
NOTf 1.
A decima| point cannot be used vith the address P.
NOTf 2.
The dve|| is perIormed at the start oI the b|ock in
vhich it is programmed.
NOTf 3.
The dve|| begins vhen the commanded Ieedrate oI
the previous b|ock reaches zero.
NOTf 4.
The maximum va|ue oI a dve|| time is 999 seconds.
NOTf 5.
C4 is a non-moda| C code. lt is on|y active in the
b|ock in vhich it is programmed.
NOTf .
A C4 code can be vritten into a program in tvo
vays.
C4 or C4.
CODf8 PRfPARATORY |UNCT|ON8 41
CODf8
20
21
l|VPfR|AL
|VfTR|C
DATA |NPUTl.
The machine contro||er can be programmed in either
lmperia| (inch) unit input (C2) or Metric (mi||imetre)
unit input (C21). The standard Iormat Ior a CNC part
program is to vrite the C2 or C21 code in the Iirst
b|ock oI the program.
C code. Type. Units. Lovest input va|ue.
C2 lmperia| lnch .1 inch
C21 Metric Mi||imetre .1 mm
The unit systems oI the Io||oving items are changed
depending on vhether C2 or C21 is set.
1) Positioning commands (X, Y and Z).
2) lncrementa| movement distances.
3) Feedrates commanded by the F code.
4) CIIset va|ues.
NOTf 1.
The status oI C2 or C21 in the machine contro||er is
dependant on the option that is saved to the disc.
NOTf 2.
A C2 code must not be changed Ior a C21 code (or
vice versa) during the program.
NOTf 3.
When svitching betveen C2 and C21, the oIIsets
must be set according to the units oI measurement
being used.
NOTf 4.
C 2 and C21 are both moda| C codes vithin the
same moda| group.
42 CODf8 PRfPARATORY |UNCT|ON8
CODf8
28
lRf|fRfNCf
PO|NT RfTURNl.
The reIerence point is a Iixed position on the machine,
to vhich the too| can be moved.
Cn machines Iitted vith DenIord mi||ing soItvare, this
point is a|so used as the Home position, the point used
by the machine to set the |imits oI movement Ior the
X, Y and Z s|ides.
A C28 code instructs the too| to automatica||y move
to this reIerence point.
A C28 command is vritten in the Io||oving Iormat .
C9 C28 X _ _ _ _ Y _ _ _ _ Z _ _ _ _ ;
or C91 C28 X _ _ _ _ Y _ _ _ _ Z _ _ _ _ ;
vhere X, Y and Z can be used to indicate an in-
termediate point, through vhich the too| vi|| pass,
beIore continuing to the reIerence point.
This intermediate point a||ovs the too| to be
programmed to Io||ov a more "predictab|e" path,
keeping it suIIicient|y c|ear Irom any part oI the
machine or bi||et it cou|d hit vhen moving to the
reIerence point.
The move to any intermediate point and the reIerence
point are perIormed at a rapid traverse rate, using a
non-vector (non-|inear) type path, ie, the too| may
appear to "change" direction due to the non-vector
type positioning being used.
CODf8 PRfPARATORY |UNCT|ON8 43
CODf8
28
lRf|fRfNCf
PO|NT RfTURNl.
To avoid this co||ision, the too| is sent on a path vhich
inc|udes the additiona|, or intermediate, point P2. The
intermediate point is used to a||ov the too| to move
comp|ete|y c|ear Irom the bi||et, beIore continuing onto
the reIerence point, P3, shovn be|ov.
NOTf 1.
The diagram be|ov shovs hov the too| cou|d co||ide
vith the bi||et vhen manoeuvring tovards the
reIerence point. This is a resu|t oI the non-vectored
movements Iorcing the too| to Io||ov a path vhich
"cuts" through the edge oI the bi||et.
28 AVO|D|N COLL|8|ON BY U8|N AN
|NTfRVfD|ATf PO8|T|ON.
The above too|path can be programmed as Io||ovs (ln
abso|ute mode, C9).
ODO OPB XEO ZEO ;
The above too|path can be programmed as Io||ovs (ln
incrementa| mode, C91).
OD" OPB XO Z4O ;
28 POTfNT|AL COLL|8|ON THROUH NOT
U8|N AN |NTfRVfD|ATf PO8|T|ON.
-

Z

A
X
|
8
.
- X AX|8.
NOTf RAPH|C
8HOw8 fLfVAT|ON
O| B|LLfT, NOT
PLAN.
-

Z

A
X
|
8
.
- X AX|8.
NOTf RAPH|C
8HOw8 fLfVAT|ON
O| B|LLfT, NOT
PLAN.
44 CODf8 PRfPARATORY |UNCT|ON8
NOTf 2.
ln the diagram be|ov, the too| is in a position (P1)
vhere no co||ision is possib|e. The intermediate point,
in this case, is not required, so the b|ock can be
vritten as Io||ovs (ln incrementa| mode, C91).
OD" OPB XO YO ZO ;
The intermediate point co-ordinates are sti|| stated, but
a|| their va|ues are set to zero, indicating no axis
movement. ThereIore, the too| vi|| move Irom point
P1 to the reIerence point, P3, a|ong a non-vector type
path.
CODf8
28
lRf|fRfNCf
PO|NT RfTURNl.
U8|N 28 w|TH NO |NTfRVfD|ATf
PO8|T|ON 8A|fLY.
NOTf 3.
C28 is a non-moda| C code. lt is on|y active in the
b|ock in vhich it is programmed.
-

Z

A
X
|
8
.
- X AX|8.
NOTf RAPH|C
8HOw8 fLfVAT|ON
O| B|LLfT, NOT
PLAN.
CODf8 PRfPARATORY |UNCT|ON8 45
CODf8
40
41
42
lCUTTfR
COVPfN8AT|ONl.
The co||ection oI C4, C41 and C42 codes a||ov the
machine contro||er to produce very accurate arcs and
tapers on the bi||et, by compensating Ior the too|
radius.
Comp|ex vorkpiece shapes are thereIore programmed
vith cutter compensation mode active. The radius oI
the too| (the oIIset amount) is measured, then
entered into the oIIset Ii|e in the machine contro||er.
Cnce set, the too| path can be oIIset by this va|ue,
regard|ess oI the program.
wORK PO8|T|ON AND VOVfVfNT COVVAND.
When too| nose radius compensation is required in a
CNC program, the position oI the bi||et in respect to
the too| must be speciIied using the tab|e be|ov.
THf TOOL |8 PO8|T|ONfD ON THf
R|HT HAND 8|Df O| THf PART,
A8 8ffN |OLLOw| N THf
D|RfCT|ON O| VOVfVfNT, |ROV
BfH|ND THf TOOL.
THf TOOL |8 PO8|T|ONfD ON THf
Lf|T HAND 8|Df O| THf PART, A8
8ffN |OLLOw|N THf D|RfCT|ON
O| VOVfVfNT, |ROV BfH|ND THf
TOOL.
41 Lf|T HAND
42 R|HT HAND
CODf D|RfCT|ON TOOL PATH
40 CANCfL VOVfVfNT ALON PRORAVVfD PATH
41 Lf|T HAND VOVfVfNT ON THf Lf|T HAND 8|Df O| THf PRORAVVfD PATH
42 R|HT HAND VOVfVfNT ON THf R|HT HAND 8|Df O| THf PRORAVVfD PATH
The tvo diagrams be|ov i||ustrate the direction oI
compensation codes C41 and C42, in re|ation to your
eye |eve|.
4 CODf8 PRfPARATORY |UNCT|ON8
CODf8
40
41
42
lCUTTfR
COVPfN8AT|ONl.
CUTTfR COVPfN8AT|ON 8TARTUP l41 42l.
The operation instructing a machine to svitch to
cutter compensation mode is ca||ed the sIarI-up b|ock,
or ramping on b|ock. The start-up b|ock is used to a|-
|ov the too| time to change Irom moving a|ong the
programmed path |ine to Io||oving either side oI the
programmed path |ine.
The start-up b|ock shou|d satisIy the Io||oving points.
1) A C41 or C42 code must be contained in the b|ock,
or speciIied in the previous b|ock.
2) A C1 X, Y, or X and Y move is speciIied in the
b|ock and the distance oI the |inear move must be
greater than the too| radius.
3) The too| radius va|ue, "P", entered into the too|
oIIsets tab|e must not be .
NOTf 1.
A C2 or C3 circu|ar interpo|ation command cannot
be speciIied in the start-up b|ock.
NOTf 2.
ln cutter compensation start-up, tvo b|ocks are read
into the machine contro||er. The Iirst b|ock is perIormed
and the second b|ock is entered and he|d in memory.
ln subsequent compensation moves, tvo b|ocks are
read in advance, so the machine contro||er has the
b|ock current|y being perIormed and the next tvo
b|ocks in memory.
This is because cutter compensation a|vays needs to
knov vhat happens in the move Io||oving the one
being current|y perIormed. The machine contro||er can
p|an ahead to ca|cu|ate the correct end position Ior
the current move, that vi|| a|so be the correct start
position a||oving Ior cutter compensation, Ior the next
move.
NOTf 3.
The codes C4, C41 and C42 are moda|, be|onging to
the same moda| Iami|y. They are incompatib|e vith
each other on the same b|ock.
CODf8 PRfPARATORY |UNCT|ON8 47
CODf8
40
41
42
lCUTTfR
COVPfN8AT|ONl.
CANCfLLAT|ON O| CUTTfR COVPfN8AT|ON
l40l.
The C4 code is used to cance| cutter compensation.
A C4 command can on|y be perIormed in a b|ock in
vhich a |inear move (ie, C, C1, C28) is
programmed.
NOTf 1.
Fo||oving the machining oI an interna| pocket, it is
recommended that the Z axis is vithdravn by using
the C1 command, to a position c|ear oI the
vorkpiece, beIore the cutter compensation mode is
cance||ed.
NOTf 2.
The machine contro||er enters compensation cance|
mode automatica||y vhen .
1) the machine pover is Iirst svitched on.
2) the reset button on the CPT/MDl contro||er pane|
is pressed.
3) a program is Iorced to end by perIorming an M2
or M3 command.
48 CODf8 PRfPARATORY |UNCT|ON8
O OO"O
lOO"O OOO X-"D Y-"D ;
lOOPO O4" XO YO F"OO ; (Start-Up Move)
lOOBO Y4O ;
lOO4O XBO YBO ;
lOODO XEO ;
lOOEO OOP X"OO Y4O R4O ;
lOO7O OO" YBO ;
lOOBO OOB X7O YO RBO ;
lOODO XO ;
lO"OO X-"D Y-"D ; (Cance||ation Move)
CODf8
40
41
42
lCUTTfR
COVPfN8AT|ONl.
The Io||oving part program Ior a Iinishing pass shovs
the recommended method Ior start-up and
cance||ation oI cutter compensation .
-

Y

A
X
|
8

D
|
R
f
C
T
|
O
N
.
- X AX|8 D|RfCT|ON.
fXAVPLf U8|N
CUTTfR COVPfN8AT|ON
VODf.
CODf8 PRfPARATORY |UNCT|ON8 49
CODf8
73
89
lCANNfD
CYCLf8l.
A canned cyc|e simp|iIies the program by rep|acing
comp|ex machining sequences, programmed by severa|
b|ocks oI inIormation, vith just one or tvo b|ocks.
Cenera||y, a canned cyc|e consists oI a sequence oI
six operations, as shovn be|ov.
Cperation 1 - Positioning oI the X and Y axes.
Cperation 2 - Papid traverse in the Z axis to the "P"
point.
Cperation 3 - Ho|e machining procedure.
Cperation 4 - Cperation at bottom oI ho|e.
Cperation 5 - Petraction to P point.
Cperation 6 - Papid traverse in the Z axis to the lnitia|
|eve|.
Ho|e positioning is perIormed in the X and Y axis ho|e
machining is perIormed in the Z axis.
-

Z

A
X
|
8

D
|
R
f
C
T
|
O
N
.
50 CODf8 PRfPARATORY |UNCT|ON8
CODf8
73
89
lCANNfD
CYCLf8l.
There are three command modes Ior canned cyc|es,
as Io||ovs.
1) Data Format (C9 and C91).
2) Peturn Point Leve| (C98 and C99).
3) Cyc|e Mode (C73 to C89).
DATA |ORVAT COVVAND VODf8.
The data Iormat used in canned cyc|es is speciIied by
the codes C9 and C91, as shovn be|ov.
90 AB8OLUTf DATA |ORVAT.
91 |NCRfVfNTAL DATA |ORVAT.
-

Z

A
X
|
8

D
|
R
f
C
T
|
O
N
.
-

Z

A
X
|
8

D
|
R
f
C
T
|
O
N
.
CODf8 PRfPARATORY |UNCT|ON8 51
CODf8
73
89
lCANNfD
CYCLf8l.
98 |N|T|AL PO|NT
LfVfL RfTURN.
99 R PO|NT
LfVfL RfTURN.
RfTURN PO|NT LfVfL COVVAND VODf8.
The return point position oI the too| (ie, to the lnitia|
Leve|, or the P Leve|) is speciIied by the codes C98
and C99, as shovn be|ov.
The lnitia| |eve| reIers to the abso|ute va|ue oI the Z
axis, at the time oI change Irom the positioning mode
top the canned cyc|e mode.
-

Z

A
X
|
8

D
|
R
f
C
T
|
O
N
.
-

Z

A
X
|
8

D
|
R
f
C
T
|
O
N
.
52 CODf8 PRfPARATORY |UNCT|ON8
CODf8
73
89
lCANNfD
CYCLf8l.
The Iormat Ior machining data in a canned cyc|e is
vritten as Io||ovs.
vhere,
C.... is deIined as the canned cyc|e.
X.... Y.... is deIined as the ho|e position, in abso|ute or
incrementa| va|ue.
Z.... is deIined as the distance Irom the P point to the
bottom oI the ho|e in incrementa| mode, or the posi-
tion oI the ho|e bottom in abso|ute mode.
P.... is deIined as the distance Irom the initia| |eve| to
the P point |eve| in incrementa| mode, or the position
oI the Z datum in re|ation to the P point |eve| in abso-
|ute mode.
P.... is deIined as the dve|| time to be perIormed at
the bottom oI the ho|e (see the C4 code Ior more
detai|s).
C.... is deIined as the cut-in distance va|ue or shiIt
va| ue (Note - thi s i s a| vays speci Ii ed as an
incrementa| va|ue).
K.... is deIined as the number oI repeats, Ior a series
oI ho|es. When not speciIied, K=1.
F.... is deIined as the Ieedrate Ior machining.
NOTf 1.
The addresses P and C are omitted vithin some canned
cyc|es.
NOTf 2.
Cnce the dri||ing data has been speciIied and read into
the machine contro||er, it is retained unti| it is either
changed, or the canned cyc|e cance||ed. A|| the re-
quired data must be speciIied vhen the canned cyc|e
is started and on|y the data to be changed has to be
speciIied during the cyc|e.
(C9) (C98)
or or
(C91) (C99)
C.... X.... Y.... Z.... P.... P.... C.... K.... F.... ;
CODf8 PRfPARATORY |UNCT|ON8 53
CODf8
73
89
lCANNfD
CYCLf8l.
The Io||oving examp|e shovs a canned cyc|e Ior
dri||ing 4 ho|es, vhere the third ho|e is to be machined
1mm deeper.
ODO ODD OB" X"O Y"O Z-"D RP F"OO ;
XPO ; (X axis move)
XBO Z-PD ; (X and Z change)
X4O Z-"D ; (X and Z change)
OBO ; (Cance|)
The Io||oving examp|e shovs a repeat canned cyc|e.
OD" ODD OB" X"O YE Z-"O R-B K4 F"OO ;
-

Y

A
X
|
8

D
|
R
f
C
T
|
O
N
.
- X AX|8 D|RfCT|ON.
54 CODf8 PRfPARATORY |UNCT|ON8
CODf8
73
lH|H 8PffD
PfCK DR|LL|Nl.
A C73 (High Speed Peck Dri||ing) command is vritten
in the Io||oving Iormat.
p|ease reIer to page 52 Ior the variab|e deIinitions.
(C9) (C98)
or or
(C91) (C99)
C73 X.... Y.... Z.... C.... F.... ;
-

Z

A
X
|
8

D
|
R
f
C
T
|
O
N
.
When machining, the dri|| is positioned at the co-ordi-
nate point oI the Iirst ho|e, Ior the X and Y axes and at
the initia| |eve|, Ior the Z axis. The C73 command is
then read into the machine contro||er and the cyc|e
begins. The dri|| vi|| rapid traverse to the P point |eve|
and begin to Ieed in, unti| a cut-in distance oI C is
attained. At this point, the dri|| vi|| retract a sma|| dis-
tance (set vithin the machine contro||er). A cut-in dis-
tance oI C at the same Ieedrate vi|| begin again, Io|-
|oved by a simi|ar retraction. These movements vi||
continue unti| the tota| Z depth has been reached. The
dri|| vi|| rapid traverse out to the lnitia| |eve|, iI a C98
code is programmed vithin the cyc|e, or to the P point
|eve|, iI a C99 code is programmed vithin the cyc|e.
At this point the next b|ock is read into the machine
contro||er. lI this b|ock contains an X, Y or X and Y co-
ordinate the dri|| vi|| position itse|I at that point and
the high speed peck dri||ing cyc|e vi|| begin again.
CODf8 PRfPARATORY |UNCT|ON8 55
CODf8
74
lCOUNTfR
TAPP|Nl.
A C74 (Counter/LeIt Hand Tapping) command is
vritten in the Io||oving Iormat.
p|ease reIer to page 52 Ior the variab|e deIinitions.
NOTf 1.
F (Feed) = PPM x Pitch.
(C9) (C98)
or or
(C91) (C99)
C74 X.... Y.... Z.... P.... P.... F.... ;
-

Z

A
X
|
8

D
|
R
f
C
T
|
O
N
.
Sequence oI moves.
Cp 1) Papid position to X, Y and Z (the lnitia| |eve|).
Cp 2) Papid traverse to P point |eve|.
Cp 3) Feed to Z depth.
Cp 4) Dve|| P (time Ior spind|e stop and start CW
direction).
Cp 5) Feed to P point |eve|.
Cp 6) Dve|| P (time Ior spind|e stop and start CCW
direction).
lI the C98 code is programmed vithin the cyc|e, the
next move vi|| be a rapid traverse to the lnitia| |eve|. lI
the C99 code is programmed vithin the cyc|e, there
vi|| be no movement.
5 CODf8 PRfPARATORY |UNCT|ON8
CODf8
7
l||Nf BOR|Nl.
A C76 (Fine Boring) command is vritten in the Io|-
|oving Iormat.
p|ease reIer to page 52 Ior the variab|e deIinitions.
(C9) (C98)
or or
(C91) (C99)
C76 X.... Y.... Z.... P.... P.... C.... F.... ;
-

Z

A
X
|
8

D
|
R
f
C
T
|
O
N
.
Sequence oI moves.
Cp 1) Papid position to X, Y and Z (the lnitia| |eve|).
Cp 2) Papid traverse to P point |eve|.
Cp 3) Feed to Z depth.
Cp 4) Dve|| P (time Ior spind|e stop and move C va|ue).
Cp 5) Feed to P point |eve|.
Cp 6) Move back C va|ue.
The above moves vary depending on the setting oI the
codes C98 and C99.
NOTf 1.
THlS CYCLE CAN CNLY BE USED CN A MACHlNE
FlTTED WlTH A SPlNDLE CAPABLE CF CPlENTATlCN.
BECAUSE THE TCCL MCVES WlTHlN THE HCLE
AFTEP SPlNDLE STCP TC FACE THE CPPCSlTE
DlPECTlCN.
CODf8 PRfPARATORY |UNCT|ON8 57
CODf8
80
lCANNfD CYCLf,
CANCfLl.
Some oI the addresses used vithin a canned cyc|e are
moda| (Z, P, C and P), so their respective va|ues are
retained in the machine contro||er memory aIter the
cyc|e has Iinished. The canned cyc|e must be can-
ce||ed, automatica||y removing these moda| va|ues,
beIore the next canned cyc|e can be programmed into
the machine contro||er.
This is achieved by programming a C8 code,
Io||oving the |ast b|ock oI the canned cyc|e vithin the
part program.
NOTf 1.
The C8 code is active vhen.
1) the machine pover is Iirst svitched on.
2) the reset button on the CPT/MDl contro||er pane|
is pressed.
3) the Emergency Stop button is pressed.
58 CODf8 PRfPARATORY |UNCT|ON8
CODf8
81
lDR|LL|N
8POT BOR|Nl.
A C81 (Dri||ing - Spot Boring) command is vritten in
the Io||oving Iormat.
p|ease reIer to page 52 Ior the variab|e deIinitions.
(C9) (C98)
or or
(C91) (C99)
C81 X.... Y.... Z.... P.... F.... ;
-

Z

A
X
|
8

D
|
R
f
C
T
|
O
N
.
Sequence oI moves.
Cp 1) Papid position to X, Y and Z (the lnitia| |eve|).
Cp 2) Papid traverse to P point |eve|.
Cp 3) Feed to Z depth.
Cp 4) Papid traverse to lnitia| |eve| (C98) or P point
|eve| (C99).
CODf8 PRfPARATORY |UNCT|ON8 59
CODf8
82
lDR|LL|N
COUNTfR
BOR|Nl.
A C82 (Dri||ing - Counter Boring) command is vritten
in the Io||oving Iormat.
p|ease reIer to page 52 Ior the variab|e deIinitions.
(C9) (C98)
or or
(C91) (C99)
C82 X.... Y.... Z.... P.... P.... F.... ;
-

Z

A
X
|
8

D
|
R
f
C
T
|
O
N
.
Sequence oI moves.
Cp 1) Papid position to X, Y and Z (the lnitia| |eve|).
Cp 2) Papid traverse to P point |eve|.
Cp 3) Feed to Z depth.
Cp 4) Dve|| Ior va|ue P.
Cp 5) Papid traverse to lnitia| |eve| (C98) or P point
|eve| (C99).
0 CODf8 PRfPARATORY |UNCT|ON8
CODf8
83
lDffP HOLf
PfCK DR|LL|Nl.
A C83 (Deep Ho|e Peck Dri||ing) command is vritten
in the Io||oving Iormat.
p|ease reIer to page 52 Ior the variab|e deIinitions.
(C9) (C98)
or or
(C91) (C99)
C83 X.... Y.... Z.... C.... P.... F.... ;
-

Z

A
X
|
8

D
|
R
f
C
T
|
O
N
.
Sequence oI moves.
Cp 1) Papid position to X, Y and Z (the initia| |eve|).
Cp 2) Papid traverse to P point |eve|.
Cp 3) Feed in to the va|ue oI C.
Cp 4) Papid traverse out to P point. Papid traverse back
to vithin 1mm oI depth oI C cut. Cperation
moves 2 and 4 are repeated unti| Z depth is
reached.
Cp 5) Papid traverse to lnitia| |eve| (C98) or P point
|eve| (C99).
CODf8 PRfPARATORY |UNCT|ON8 1
CODf8
84
lTAPP|Nl.
A C84 (Tapping) command is vritten in the Io||oving
Iormat.
p|ease reIer to page 52 Ior the variab|e deIinitions.
(C9) (C98)
or or
(C91) (C99)
C84 X.... Y.... Z.... P.... P.... F.... ;
-

Z

A
X
|
8

D
|
R
f
C
T
|
O
N
.
Sequence oI moves.
Cp 1) Papid position to X, Y and Z (the initia| |eve|).
Cp 2) Papid traverse to P point |eve|.
Cp 3) Feed to Z depth.
Cp 4) Dve|| P (time Ior spind|e stop and start CCW
direction).
Cp 5) Feed to P point |eve|.
Cp 6) Dve|| P (time Ior spind|e stop and start CW
direction).
lI the C98 code is programmed vithin the cyc|e, the
next move vi|| be a rapid traverse to the lnitia| |eve|. lI
the C99 code is programmed vithin the cyc|e, there
vi|| be no movement.
NOTf 1.
F (Feed) = PPM x Pitch.
2 CODf8 PRfPARATORY |UNCT|ON8
CODf8
85
lBOR|Nl.
A C85 (Boring) command is vritten in the Io||oving
Iormat.
p|ease reIer to page 52 Ior the variab|e deIinitions.
(C9) (C98)
or or
(C91) (C99)
C85 X.... Y.... Z.... P.... F.... ;
-

Z

A
X
|
8

D
|
R
f
C
T
|
O
N
.
Sequence oI moves.
Cp 1) Papid position to X, Y and Z (the initia| |eve|).
Cp 2) Papid traverse to P point |eve|.
Cp 3) Feed in to the Z depth.
Cp 4) Feed back to P point |eve|.
lI the C98 code is programmed vithin the cyc|e, the
next move vi|| be a rapid traverse to the lnitia| |eve|. lI
the C99 code is programmed vithin the cyc|e, there
vi|| be no movement.
CODf8 PRfPARATORY |UNCT|ON8 3
CODf8
8
lBOR|Nl.
A C86 (Boring) command is vritten in the Io||oving
Iormat.
p|ease reIer to page 52 Ior the variab|e deIinitions.
(C9) (C98)
or or
(C91) (C99)
C86 X.... Y.... Z.... P.... F.... ;
-

Z

A
X
|
8

D
|
R
f
C
T
|
O
N
.
Sequence oI moves.
Cp 1) Papid position to X, Y and Z (the initia| |eve|).
Cp 2) Papid traverse to P point |eve|.
Cp 3) Feed to Z depth and spind|e stop.
Cp 4) Papid traverse to the initia| |eve| and spind|e CW
Ior C98, or rapid traverse to P point |eve| and
spind|e CW Ior C99.
4 CODf8 PRfPARATORY |UNCT|ON8
CODf8
87
lBACK
BOR|Nl.
A C87 (Back Boring) command is vritten in the Io|-
|oving Iormat.
p|ease reIer to page 52 Ior the variab|e deIinitions.
(C9) (C98)
or or
(C91) (C99)
C87 X.... Y.... Z.... P..... C.... P.... F.... ;
-

Z

A
X
|
8

D
|
R
f
C
T
|
O
N
.
Sequence oI moves.
Cp 1) Papid position to X, Y and Z (the initia| |eve|).
Cp 2) Spind|e stop and orientation. Move the va|ue oI C.
Cp 3) Papid traverse to P point |eve|.
Cp 4) Spind|e CW and move back the va|ue oI C.
Cp 5) Feed in to Z depth (positive direction) and dve|| P.
Cp 6) Spind|e stop and orientate.
Cp 7) Move the va|ue oI C.
Cp 8) Papid traverse to P point |eve|.
Cp 9) Move back the va|ue oI C and spind|e CW.
NOTf 1.
THlS CYCLE CAN CNLY BE USED CN A MACHlNE
FlTTED WlTH A SPlNDLE CAPABLE CF CPlENTATlCN.
BECAUSE THE TCCL MCVES WlTHlN THE HCLE
AFTEP SPlNDLE STCP TC FACE THE CPPCSlTE
DlPECTlCN.
NOTf 2.
A C99 return to P point |eve| is not possib|e vithin this
cyc|e.
CODf8 PRfPARATORY |UNCT|ON8 5
CODf8
89
lBOR|Nl.
A C89 (Boring) command is vritten in the Io||oving
Iormat.
p|ease reIer to page 52 Ior the variab|e deIinitions.
(C9) (C98)
or or
(C91) (C99)
C86 X.... Y.... Z.... P.... P.... F.... ;
-

Z

A
X
|
8

D
|
R
f
C
T
|
O
N
.
Sequence oI moves.
Cp 1) Papid position to X, Y and Z (the initia| |eve|).
Cp 2) Papid traverse to P point |eve|.
Cp 3) Feed to Z depth and dve|| Ior va|ue P.
Cp 4) Feed out to P point and rapid traverse to initia|
|eve| Ior C98, or Ieed out to P point Ior C99.
CODf8 PRfPARATORY |UNCT|ON8
CODf8
PRORAV
fXAVPLf
U8|N CANNfD
CYCLf8.
lOO4O lOE TO" ;
lOODO ODO OOO X"O YBO Z"P S"OOO lOB ;
lOOEO ODD OB" X"O YBO Z-"7 RP F7D ;
lOO7O Y"O ;
lOOBO XBO ;
lOODO ODB YBO ;
lO"OO ODD XDO ;
lO""O Y"O ;
lO"PO X""O ;
lO"BO ODB YBO ;
lO"4O OD" OBO OPB XO YO ZO lOD ;
lO"DO lOE TOP ;
lO"EO ODO OOO XEO YPB Z"P S7DO lOB ;
lO"7O ODD OBB XEO YPB Z-"7 OE RP FEO ;
lO"BO ODB Y"P ;
lO"DO OD" OBO OPB XO YO ZO lOD ;
lOPOO lBO ;
Too| change.
Too| position to initia| |eve|.
Ho|e 1 retract P point.
Ho|e 2 retract P point.
Ho|e 3 retract P point.
Ho|e 4 retract initia| |eve|.
Ho|e 5 retract P point.
Ho|e 6 retract P point.
Ho|e 7 retract P point.
Ho|e 8 retract initia| |eve|.
Home position spind|e stop.
Too| change.
Too| position initia| |eve|.
Ho|e 9 retract P point.
Ho|e 1 retract initia| |eve|.
Home position spind|e stop.
Program stop.
CODf8 PRfPARATORY |UNCT|ON8 7
CODf8
90
lAB8OLUTf
ZfRO COVVANDl.
When C9 is active, a|| co-ordinates are re|ative to
the vorkpiece datum (the zero position).
NOTf 1.
The C9 code is active vhen.
1) the machine pover is Iirst svitched on.
2) the reset button on the CPT/MDl contro||er pane|
is pressed.
3) the Emergency Stop button is pressed.
CODf8
91
l|NCRfVfNTAL
COVVANDl.
When C91 is active, a|| movement command va|ues
are distance moved (inc|uding the /- sign) Irom |ast
knovn programmed position.
CODf8
94
l|ffD PfR
V|NUTfl.
When C94 is active, a|| Ieedrates stated vithin the
program are deIined in either mi||imetres per minute
vhen operating in C21 Metric Mode, or inches per
minute vhen operating in C2 lmperia| Mode.
For examp|e.
(C2) F6 = 6 in/min.
(C21) F15 = 15 mm/min.
8 CODf8 PRfPARATORY |UNCT|ON8
CODf8
95
l|ffD PfR
RfVOLUT|ONl.
When C95 is active, a|| Ieedrates stated vithin the
program are deIi ned i n ei ther mi | | i metres per
revo|ution vhen operating in C21 Metric Mode, or
inches per revo|ution vhen operating in C2 lmperia|
Mode.
NOTf 1.
THE C95 CCDE lS CNLY AVAlLABLE WHEN THE
MACHlNE lS FlTTED WlTH A SPlNDLE ENCCDEP. SEE
YCUP MACHlNE SPEClFlCATlCN.
CODf8
98
lRfTURN TO
|N|T|AL LfVfLl.
A C98 code, vhen used vithin a canned cyc|e, vi||
return the dri|| or boring bar back to the initia| |eve|
aIter machining a ho|e.
CODf8
99
lRfTURN TO R
PO|NT LfVfLl.
A C99 code, vhen used vithin a canned cyc|e, vi||
return the dri|| or boring bar back to the P point |eve|
aIter machining a ho|e.
CODf8 PRfPARATORY |UNCT|ON8 9
The Io||oving canned cyc|es, vhen programmed
correct|y, vi|| machine either a circu|ar pocket to any
diameter and depth, or a rectangu|ar pocket to any
side |ength and depth.
Both canned cyc|es require tvo b|ocks oI inIormation
each, vith each b|ock having its ovn C code.
C17
C171
C172
C173
CODf8
170
173
lC|RCULAR|
RfCTANULAR
POCKfT CANNfD
CYCLf8l.
The Io||oving pages shov six programs Ior these
canned cyc|es....
Programs 2, 3 and 4 are Ior circu|ar
pockets.
Programs 5, 6 and 7 are Ior
rectangu|ar pockets.
Circu|ar pocket.
Pectangu|ar pocket.
NOTf 1.
Creat care must be taken vhen using these canned
cyc|es, since each canned cyc|e can be vritten three
diIIerent vays.
This is achieved according to the va|ues assigned
Io||oving the addresses P, l and J in canned cyc|e
C17-171 and the va|ues assigned Io||oving the
addresses P, l and K in canned cyc|e C172-173. By
adding these va|ues, the cutter vi|| move in a
diIIerent path vhen machining.
70 CODf8 PRfPARATORY |UNCT|ON8
CODf8
170
171
lC|RCULAR POCKfT
CANNfD
CYCLf fXAVPLf Al.
[BlLLET X7D YDO ZBO ; .............................................
[EOOElOVE X-B7.D Y-4D ; ..........................................
[TOOLOEF T" OE ZO ; ................................................
O OOOP ; .................................................................
lOO4O OD" OPB XO YO ZO ; .....................................
lOODO lOE TO" ; ...................................................
lOOEO ODO OOO XO YO Z"O SBOOO lOB ; ................
lOO7O OO" ZO FBOO ; .............................................
lOOBO O"7O RO PO OB XO YO Z-E lO dO K-P4 ; ..........
lOODO O"7" P7D SBOOO R7D FPDO BBDOO dPOO ; ...
lO"OO OOO ZPD lOD ; ............................................
lO""O OD" OPB XO YO ZO ; .....................................
lO"PO lBO ; ..........................................................
Bi||et size.
Position oI datum Irom the
bottom LH corner oI bi||et.
Too| no. dia. and position.
Program no.
Metric, reIerence point.
Too| no.
Abso|ute, rapid, too| 1mm
above surIace, spind|e speed
and start.
Too| to surIace oI job, Ieed set.
Circu|ar pocket canned cyc|e.
Circu|ar pocket canned cyc|e.
Papid, too| to 25mm above
surIace, spind|e stop.
lncrementa| , return to
reIerence point.
Program reset.
PRORAV NUVBfR 0002 ROUH|N PRORAV C|RCULAR POCKfT 170 AND 171.
NOTf 1.
The abso|ute zero datum position is set in the oIIset
Ii|e.
CODf8 PRfPARATORY |UNCT|ON8 71
CODf8
170
171
lC|RCULAR POCKfT
CANNfD
CYCLf fXAVPLf Al.
For C17 b|ock,
P deIines the position oI the too| to start cyc|e ie.
(surIace oI job).
P deIines vhen P is zero() the cyc|e is a roughing
cyc|e.
C deIines the peck increment, in program number
2, 2 pecks each oI 3mm.
X deIines the pocket centre in X axis ().
Y deIines the pocket centre in Y axis ().
Z deIines the pocket base (-6mm) Irom job surIace.
l deIines the side Iinish a||ovance ( as this is a
roughing cyc|e on|y).
J deIines the base Iinish a||ovance ( as this is a
roughing cyc|e on|y).
K deIines the radius oI pocket (-24) negative va|ue -
cut in CCW direction).
For C171 b|ock,
P deIines the cut vidth percentage.
S deIines the roughing spind|e speed (S3).
P deIines the roughing Feed in Z (75).
F deIines the roughing Ieed XY (25).
B deIines the Iinishing spind|e speed (35, not
app|icab|e as roughing on|y).
J deIines the Iinishing Ieed (2, not app|icab|e as
roughing on|y).
When setting oIIsets the va|ue P must be inc|uded, P
being the radius oI the cutter.
The direction oI the cutter path is contro||ed by K, a
negative (K-24) va|ue Ior K means the cutter path is in
a CCW direction and iI the K va|ue is positive (K24)
the cutterpath is in a CW direction. The C va|ue is
a|vays positive (C3).
When the too| has Iinished cutting the too| retracts
1mm in the Z axis, moves to the centre oI the circu|ar
pocket at rapid traverse, retracts again in the Z axis .
Program number 2 is Ior a tvo cut roughing cyc|e.
lOOBO O"7O RO PO OB XO YO Z-E lO dO K-P4 ;
lOODO O"7" P7D SBOOO R7D FPDO BBDOO dPOO ;
DeIinitions Ior the terms used in the C17 and C171
circu|ar pocket canned cyc|e Irom program number
2 Io||ovs.
72 CODf8 PRfPARATORY |UNCT|ON8
CODf8
170
171
lC|RCULAR POCKfT
CANNfD
CYCLf fXAVPLf Bl.
PRORAV NUVBfR 0003 ROUH|N AND ||N|8H|N
PRORAV C|RCULAR POCKfT 170 AND 171.
The diIIerence betveen program numbers 2 and
3 is that program 3 |eaves a Iinishing
a||ovance on the diameter oI the pocket and on the
base.
[BlLLET X7D YDO ZBO ;
[EOOElOVE X-B7.D Y-4D ;
[TOOLOEF T" OE ZO ;
OOOOB ;
lOO4O OD" OP" OPB XO YO ZO ;
lOODO lOE TO" ;
lOOEO ODO OOO XO YO Z"O SBOOO lOB ;
lOO7O OO" ZO FBOO ;
lOOBO O"7O RO PO OB XO YO Z-E lO.D dO." K-P4 ;
lOODO O"7" P7D SBOOO R7D FPDO BBDOO dPOO ;
lO"OO OOO ZPD lOD ;
lO""O OD" OPB XO YO ZO ;
lO"PO lBO ;
CODf8 PRfPARATORY |UNCT|ON8 73
CODf8
170
171
lC|RCULAR POCKfT
CANNfD
CYCLf fXAVPLf Bl.
For C17 b|ock,
P deIines the position oI the too| to start cyc|e ie.
(surIace oI job).
P deIines vhen P is zero() the cyc|e is a roughing
cyc|e.
C deIines the peck increment, in program number
3, 2 pecks each oI 3mm.
X deIines the pocket centre in X axis ().
Y deIines the pocket centre in Y axis ().
Z deIines the pocket base (-6mm) Irom job surIace.
l deIines the side Iinish a||ovance (|eaves a Iinishing
a||ovance oI .5).
J deIines the base Iinish a||ovance (|eaves a
Iinishing a||ovance oI .1).
K deIines the radius oI pocket (-24) negative va|ue -
cut in CCW direction).
For C171 b|ock,
P deIines the cut vidth percentage.
S deIines the roughing spind|e speed (S3).
P deIines the roughing Feed in Z (75).
F deIines the roughing Ieed XY (25).
B deIines the Iinishing spind|e speed (35).
J deIines the Iinishing Ieed (2).
lOOBO O"7O RO PO OB XO YO Z-E lO.D dO." K-P4 ;
lOODO O"7" P7D SBOOO R7D FPDO BBDOO dPOO ;
DeIinitions Ior the terms used in the C17 and C171
circu|ar pocket canned cyc|e Irom program number
3 Io||ovs.
74 CODf8 PRfPARATORY |UNCT|ON8
CODf8
170
171
lC|RCULAR POCKfT
CANNfD
CYCLf fXAVPLf Cl.
PRORAV NUVBfR 0004 ONf 8TfP ||N|8H|N CYCLf
PRORAV C|RCULAR POCKfT 170 AND 171.
The diIIerence betveen program numbers 3 and
4 is that in program 4 the too| moves di-
rect|y to the Iinish depth and executes a Iina| Iin-
ishing pass on|y.
[BlLLET X7D YDO ZBO ;
[EOOElOVE X-B7.D Y-4D ;
[TOOLOEF T" OE ZO ;
OOOO4 ;
lOO4O OD" OP" OPB XO YO ZO ;
lOO4O lOE TO" ;
lOO4O ODO OOO XO YO Z"O SBOOO lOB ;
lOO4O OO" ZO FBOO ;
lOO4O O"7O RO P" OB XO YO Z-E lO.D dO." K-P4 ;
lOO4O O"7" P7D SBOOO R7D FPDO BBDOO dPOO ;
lOO4O OOO ZPD lOD ;
lOO4O OD" OPB XO YO ZO ;
lOO4O lBO ;
CODf8 PRfPARATORY |UNCT|ON8 75
CODf8
170
171
lC|RCULAR POCKfT
CANNfD
CYCLf fXAVPLf Cl.
For C17 b|ock,
P deIines the position oI the too| to start cyc|e ie.
(surIace oI job).
P deIines vhen P is 1 (P1) the cyc|e is a Iinishing
cyc|e on|y.
C is ignored vhen P=1.
X deIines the pocket centre in X axis ().
Y deIines the pocket centre in Y axis ().
Z deIines the pocket base (-6mm) Irom job surIace.
l is ignored vhen P=1.
J is ignored vhen P=1.
K deIines the radius oI pocket (-24) negative va|ue -
cut in CCW direction).
For C171 b|ock,
P deIines the cut vidth percentage.
S deIines the roughing spind|e speed (S3). An S
va|ue must be entered but is ignored on the Iin-
ishing cyc|e.
P deIines the roughing Feed in Z (75). An P va|ue must
be entered but is ignored on the Iinishing cyc|e.
F deIines the roughing Ieed XY (25). An F va|ue must
be entered but is ignored on the Iinishing cyc|e.
B deIines the Iinishing spind|e speed.
J deIines the Iinishing Ieed.
lOO4O O"7O RO P" OB XO YO Z-E lO.D dO." K-P4 ;
lOO4O O"7" P7D SBOOO R7D FPDO BBDOO dPOO ;
DeIinitions Ior the terms used in the C17 and C171
circu|ar pocket canned cyc|e Irom program number
4 Io||ovs.
NOTf 1.
A|though characters are ignored by the program vhen
run, in certain modes the characters must be pro-
grammed and given a va|ue so that the sequentia| con-
tro| oI the program is maintained and errors avoided.
7 CODf8 PRfPARATORY |UNCT|ON8
CODf8
172
173
lRfCTANULAR
POCKfT CANNfD
CYCLf fXAVPLf Al.
[BlLLET X7D YDO ZBO ; ...................................................
[EOOElOVE X-B7.D Y-4D ; ................................................
[TOOLOEF T" OE ZO ; ......................................................
O OOOD ; .......................................................................
lOO4O OD" OP" OPB XO YO ZO ; ....................................
lOODO lOE TO" ; .........................................................
lOOEO OOO XO YO Z"O SBOOO lOB ; .............................
lOO7O OO" ZO FBOO ; ...................................................
lOOBO O"7P l-DO KO PO OB RO X-PD Y-PD Z-E ; ...............
lOODO O"7B lO KO P7D T" SBOO R7D FPDO BBDOO dPOO ZD ;
lO"OO OOO ZPD lOD ; ..................................................
lO""O OD" OPB XO YO ZO ; ...........................................
lO"PO lBO ; ................................................................
Bi||et size.
Position oI datum Irom the
bottom LH corner oI bi||et.
Too| no. dia. and position.
Program no.
Metric, reIerence point.
Too| no.
Abso|ute, rapid, too| 1mm
above surIace, spi nd| e
speed and start.
Too| to surIace oI job, Ieed
set.
Pectangu|ar pocket cyc|e.
Pectangu|ar pocket cyc|e.
Papid, too| to 25mm above
surIace, spind|e stop.
lncrementa| , return to
reIerence point.
Program reset.
PRORAV NUVBfR 0005 ROUH|N PRORAV RfCTANULAR POCKfT 172 AND 173.
NOTf 1.
The abso|ute zero datum position is set in the oIIset
Ii|e.
CODf8 PRfPARATORY |UNCT|ON8 77
CODf8
172
173
lRfCTANULAR
POCKfT CANNfD
CYCLf fXAVPLf Al.
For C172 b|ock,
l deIines the pocket X |ength (-5).
J deIines the pocket Y |ength (-5)
K deIines the radius oI corner roundness (not
app|icab|e to DenIord soItvare).
P deIines that = roughing cyc|e.
C deIines the pocket Z increment (peck increments in
above cyc|e 2-3mm pecks).
P deIines the Abso|ute Z 'P' point.
X deIines the pocket corner X (Abso|ute position
re|ative to the X datum position).
Y deIines the pocket corner Y (Abso|ute position
re|ative to the Y datum position).
Z deIines the abso|ute Z base oI pocket (-6, ie, a depth
oI 6mm).
For C173 b|ock,
l deIines the pocket side Iinish ( as this is a
roughing cyc|e).
K deIines the pocket base Iinish ( as this is a rough-
ing cyc|e).
P deIines the cut vidth percentage (75% oI too| dia.).
T deIines the pocket too| (too| 1).
S deIines the spind|e speed Ior roughing (3rpm).
P deIines the roughing Ieed Ior Z (75).
F deIines the roughing Ieed X and Y (25).
B deIines the Iinishing spind|e speed (35 rpm).
J deIines the Iinishing Ieed (2).
Z deIines the saIety Z (5mm above 'P' point).
Program number 5 is Ior a tvo cut roughing
cyc|e.
lOOBO O"7P l-DO KO PO OB RO X-PD Y-PD Z-E ;
lOODO O"7B lO KO P7D T" SBOO R7D FPDO BBDOO dPOO ZD ;
DeIinitions Ior the terms used in the C172 and C173
rectangu|ar pocket canned cyc|e Irom program number
5 Io||ovs.
78 CODf8 PRfPARATORY |UNCT|ON8
For C172 b|ock.
- The l and J are signed according to the direction oI
trave| /positive being CW and -/negative being
CCW.
- K must be programmed as (zero). For DenIord
soItvare, the corner radius is the cutter radius.
- X and Y re| ate to an abso| ute zero on the
vorkpiece, ie, the centre oI the vorkpiece. ln
program number 5, the zero is set in the
centre oI the vorkpiece so the distance to the
bottom LH corner is Y -25 and X -25, as shovn
be|ov.
CODf8
172
173
lRfCTANULAR
POCKfT CANNfD
CYCLf fXAVPLf Al.
For C173 b|ock.
- lI l and K are set to zero (), the program vi|| per-
Iorm the tvo roughing cuts on|y (as in the circu|ar
pocket canned cyc|e).
- The too| number (T1) must be programmed.
CODf8 PRfPARATORY |UNCT|ON8 79
PRORAV NUVBfR 000 ROUH|N AND ||N|8H|N
PRORAV RfCTANULAR POCKfT 172 AND 173.
[BlLLET X7D YDO ZBO ;
[EOOElOVE X-B7.D Y-4D ;
[TOOLOEF T" OE ZO ;
OOOOE ;
lOO4O OD" OP" OPB XO YO ZO ;
lOODO lOE TO" ;
lOOEO ODO OOO XO YO Z"O SBOOO lOB ;
lOO7O OO" ZO FBOO ;
lOOBO O"7P l-DO d-DO KO PO OB RO X-PD Y-PD Z-E ;
lOODO O"7B lO.D KO." P7D T" SBOOO R7D FPDO BBDOO dPOO ZD ;
lO"OO OOO ZPD lOD ;
lO""O OD" OPB XO YO ZO ;
lO"PO lBO ;
CODf8
172
173
lRfCTANULAR
POCKfT CANNfD
CYCLf fXAVPLf Bl.
80 CODf8 PRfPARATORY |UNCT|ON8
For C172 b|ock,
l deIines the pocket X |ength (-5).
J deIines the pocket Y |ength (-5)
K deIines the radius oI corner roundness (not
app|icab|e to DenIord soItvare).
P deIines that = roughing cyc|e.
C deIines the pocket Z increment (peck increments in
above cyc|e 2-3mm pecks).
P deIines the Abso|ute Z 'P' point.
X deIines the pocket corner X (Abso|ute position
re|ative to the X datum position).
Y deIines the pocket corner Y (Abso|ute position
re|ative to the Y datum position).
Z deIines the abso|ute Z base oI pocket (-6, ie, a depth
oI 6mm).
For C173 b|ock,
l deIines the pocket side Iinish (.5 Iinishing a|-
|ovance) on the Iinishing pass.
K deIines the pocket base Iinish (.1 Iinishing
a||ovance) on the Iinishing pass.
P deIines the cut vidth percentage (75% oI too| dia.).
T deIines the pocket too| (too| 1).
S deIines the spind|e speed Ior roughing (3rpm).
P deIines the roughing Ieed Ior Z (75).
F deIines the roughing Ieed X and Y (25).
B deIines the Iinishing spind|e speed (35 rpm).
J deIines the Iinishing Ieed (2).
Z deIines the saIety Z (5mm above 'P' point).
When va|ues are stated Ior the l and K e|ements, the
program vi|| perIorm a Iinishing pass aIter com-
p|etion oI the Iina| roughing cut.
DeIinitions Ior the terms used in the C172 and C173
rectangu|ar pocket canned cyc|e Irom program number
6 Io||ovs.
CODf8
172
173
lRfCTANULAR
POCKfT CANNfD
CYCLf fXAVPLf Bl.
lOOBO O"7P l-DO d-DO KO PO OB RO X-PD Y-PD Z-E ;
lOODO O"7B lO.D KO." P7D T" SBOOO R7D FPDO BBDOO dPOO ZD ;
CODf8 PRfPARATORY |UNCT|ON8 81
PRORAV NUVBfR 0007 ONf 8TfP ||N|8H|N CYCLf
PRORAV RfCTANULAR POCKfT 172 AND 173.
[BlLLET X7D YDO ZBO ;
[EOOElOVE X-B7.D Y-4D ;
[TOOLOEF T" OE ZO ;
OOOO7 ;
lOO4O OD" OP" OPB XO YO ZO ;
lOO4O lOE TO" ;
lOO4O ODO OOO XO YO Z"O SBOOO lOB ;
lOO4O OO" ZO FBOO ;
lOO4O O"7P l-DO d-DO KO P" OB RO X-PD Y-PD Z-E ;
lOO4O O"7B lO.D KO." P7D T" SBOOO R7D FPDO BBDOO dPOO ZD ;
lOO4O OOO ZPD lOD ;
lOO4O OD" OPB XO YO ZO ;
lOO4O lBO ;
CODf8
172
173
lRfCTANULAR
POCKfT CANNfD
CYCLf fXAVPLf Cl.
82 CODf8 PRfPARATORY |UNCT|ON8
CODf8
172
173
lRfCTANULAR
POCKfT CANNfD
CYCLf fXAVPLf Cl.
For C172 b|ock,
l deIines the pocket X |ength (-5).
J deIines the pocket Y |ength (-5)
K deIines the radius oI corner roundness (not
app|icab|e to DenIord soItvare).
P deIines that 1 = Iinishing cyc|e on|y.
C deIines the pocket Z increment (peck increments in
above cyc|e 2-3mm pecks). This is ignored Ior a
one step Iinishing cyc|e.
P deIines the Abso|ute Z 'P' point.
X deIines the pocket corner X (pocket |ength).
Y deIines the pocket corner Y (pocket vidth).
Z deIines the abso|ute Z base oI pocket (-6, ie, a depth
oI 6mm).
For C173 b|ock,
l deIines the pocket side Iinish a||ovance. This is ig-
nored Ior a one step Iinishing cyc|e.
K deIines the pocket base Iinish a||ovance. This is
ignored Ior a one step Iinishing cyc|e.
P deIines the cut vidth percentage (75% oI too| dia.).
T deIines the pocket too| (too| 1).
S deIines the spind|e speed Ior roughing. An S va|ue
must be entered but is ignored on the Iinishing cyc|e.
P deIines the roughing Ieed Ior Z. An P va|ue must be
entered but is ignored on the Iinishing cyc|e.
F deIines the roughing Ieed X and Y. An F va|ue must
be entered but is ignored on the Iinishing cyc|e.
B deIines the Iinishing spind|e speed (35 rpm).
J deIines the Iinishing Ieed (2).
Z deIines the saIety Z (5mm above 'P' point).
DeIinitions Ior the terms used in the C172 and C173
rectangu|ar pocket canned cyc|e Irom program number
7 Io||ovs.
lOO4O O"7P l-DO d-DO KO P" OB RO X-PD Y-PD Z-E ;
lOO4O O"7B lO.D KO." P7D T" SBOOO R7D FPDO BBDOO dPOO ZD ;
NOTf 1.
A|though characters are ignored by the program vhen
run, in certain modes the characters must be pro-
grammed and given a va|ue so that the sequentia| con-
tro| oI the program is maintained and errors avoided.
V CODf8 V|8CfLLANfOU8 |UNCT|ON8 83
V CODf8
lV|8CfLLANfOU8
|UNCT|ON8l
|NTRODUCT|ON.
Misce||aneous Iunctions, ca||ed M codes, are used by
the CNC to command on/oII signa|s to the machine
Iunctions. ie, M3 - spind|e Iorvard (CW), M5 -
spind|e stop, etc.....
The Iunctions a||ocated to |over M code numbers are
constant in most CNC contro|s, a|though the higher
M code number Iunctions can vary Irom one make oI
contro||er to the next.
An M code is deIined using the M address |etter and a
tvo digit number as Io||ovs,
M
Address. Tvo digit number.
84 V CODf8 V|8CfLLANfOU8 |UNCT|ON8
L|8T O|
V CODf8
8UPPORTfD BY
DfN|ORD CNC
CONTROL8.
Note - Not a|| M codes app|y to each machine.
M code. Function.
M Program Stop
M1 Cptiona| Stop
M2 Program Peset
M3 Spind|e Forvard (c|ockvise)
M4 Spind|e Peverse (counter c|ockvise)
M5 Spind|e Stop
M6 Automatic Too| Change
M8 Coo|ant Cn
M9 Coo|ant CII
M1 Vice/Work C|amp Cpen
M11 Vice/Work C|amp C|ose
M13 Spind|e Forvard and Coo|ant Cn
M14 Spind|e Peverse and Coo|ant Cn
M19 Spind|e Crientation
M2 ATC Arm ln
M21 ATC Arm Cut
M22 ATC Arm Dovn
M23 ATC Arm Up
M24 ATC Dravbar Unc|amp
M25 ATC Dravbar C|amp
M27 Peset Carouse| to Pocket Cne
M3 Program Peset and Pevind
M32 Carouse| CW
M33 Carouse| CCW
M38 Door Cpen
M39 Door C|ose
M62 Auxi|iary Cutput 1 Cn
M63 Auxi|iary Cutput 2 Cn
V CODf8 V|8CfLLANfOU8 |UNCT|ON8 85
continued....
M code. Function.
M64 Auxi|iary Cutput 1 CII
M65 Auxi|iary Cutput 2 CII
M66 Wait Ior Auxi|iary Cutput 1 Cn
M67 Wait Ior Auxi|iary Cutput 2 Cn
M7 Mirror in X Cn
M71 Mirror in Y Cn
M76 Wait Ior Auxi|iary Cutput 1 CII
M77 Wait Ior Auxi|iary Cutput 2 CII
M8 Mirror in X CII
M81 Mirror in Y CII
M98 Sub Program Ca||
M99 Sub Program End and Peturn
Code |isting Iu|| and correct at the time oI printing.
NOTf8 |OR V
CODf8 L|8T|N
8HOwN Lf|T.
NOTf 1.
M codes marked vith an are executed at the end oI
a b|ock, ie, aIter axis movement.
NOTf 2.
Cn|y one M code can be programmed vithin each
b|ock. lI more than one M code is programmed, the
machine contro||er vi|| on|y perIorm the |ast stated M
code.
NOTf 3.
The M codes |isted betveen M19 to M27 inc|usive
and M32 to M33 inc|usive are used Ior maintenance
on|y. They are entered through the MDl pane| on the
machine too| and do not appear in a CNC part
program.
L|8T O|
V CODf8
8UPPORTfD BY
DfN|ORD CNC
CONTROL8.
8 V CODf8 V|8CfLLANfOU8 |UNCT|ON8
V CODf8
V00
lPRORAV 8TOPl.
M2 - Program Peset.
This code indicates the end oI a program and
perIorms a genera| reset Iunction on the machine
contro||er, ie, the CNC reverts to its initia| state. The
code a|so acts as an M5.
M1 - Cptiona| Stop.
The M1 code perIorms the same Iunction as the M
code, except the machine contro||er on|y recognises
the signa| to ha|t the program iI the optiona| }STCPJ
input key is activated.
M - Program Stop.
When the machine contro||er reads the code M
vithin a b|ock, it ha|ts the program. The }CYCLE
STAPTJ key must be pressed to a||ov the program to
continue.
V CODf8
V01
lOPT|ONAL 8TOPl.
V CODf8
V02
lPRORAV Rf8fTl.
V CODf8 V|8CfLLANfOU8 |UNCT|ON8 87
M3 - Spind|e Forvard (C|ockvise).
The c|ockvise direction oI the spind|e is determined
by vieving Irom the back oI the machine headstock,
a|ong the Z axis tovards the tai|stock.
The spind|e start command is activated at the
beginning oI the b|ock in vhich it is programmed, ie,
beIore any axis movement occurs.
M4 - Spind|e Peverse (Counter C|ockvise).
An M4 code acts in the same vay as an M3 code,
on|y the spind|e rotates in the opposite direction.
M5 - Spind|e Stop.
The M5 code, to stop the spind|e rotating, is
activated at the end oI the b|ock in vhich it is
programmed, ie , aIter any axis movement.
V CODf8
V03
l8P|NDLf |ORwARDl.
V CODf8
V04
l8P|NDLf RfVfR8fl.
V CODf8
V05
l8P|NDLf 8TOPl.
88 V CODf8 V|8CfLLANfOU8 |UNCT|ON8
M8 - Coo|ant Cn.
This code svitches the coo|ant pump on.
M9 - Coo|ant CII.
This code svitches the coo|ant pump oII.
M6 - Automatic Too| Change.
This code activates the machine turret and is Io||oved
by the code T_ _ _ _, instructing it to move to the
stated too| number.
For examp|e .
M6 T33 ;
This command is read change automatica||y Irom the
current too| number to too| number 3.
V CODf8
V0
lAUTOVAT|C
TOOL CHANfl.
V CODf8
V08
lCOOLANT ONl.
V CODf8
V09
lCOOLANT O||l.
V CODf8 V|8CfLLANfOU8 |UNCT|ON8 89
V CODf8
V10
lV|Cf OPfNl.
M1 - Vice/Work C|amp Cpen.
This code vi|| open the javs oI a pover vice.
M11 - Vice/Work C|amp C|ose.
This code vi|| c|ose the javs oI a pover vice.
M13 - Spind|e Forvard and Coo|ant Cn.
This code combines the Iunctions oI M3 and M8
together. The M5 code vi|| stop both the spind|e and
coo|ant.
V CODf8
V11
lV|Cf CLO8fl.
V CODf8
V13
l8P|NDLf |ORwARD
AND COOLANT ONl.
90 V CODf8 V|8CfLLANfOU8 |UNCT|ON8
V CODf8
V20
lATC ARV |Nl.
V CODf8
V14
l8P|NDLf RfVfR8f
AND COOLANT ONl.
V CODf8
V19
l8P|NDLf
OR|fNTAT|ONl.
M14 - Spind|e Peverse and Coo|ant Cn.
This code perIorms the same Iunction as M13 but the
spind|e rotates in the opposite direction.
M19 - Spind|e Crientation.
This code vi|| orientate the machine spind|e - see your
machine speciIication.
M2 - ATC Arm ln.
This code moves the Automatic Too| Changer arm in
(beneath the spind|e).
V CODf8 V|8CfLLANfOU8 |UNCT|ON8 91
V CODf8
V21
lATC ARV OUTl.
V CODf8
V22
lATC ARV
DOwNl.
M21 - ATC Arm Cut.
This code moves the Automatic Too| Changer arm
out (avay Irom the spind|e).
M22 - ATC Arm Dovn.
This code moves the Automatic Too| Changer in a
dovnvards direction.
V CODf8
V23
lATC ARV UPl.
M23 - ATC Arm Up.
This code moves the Automatic Too| Changer in an
upvards direction.
92 V CODf8 V|8CfLLANfOU8 |UNCT|ON8
V CODf8
V27
lRf8fT CAROU8fL
TO POCKfT ONfl.
M27 - Peset to Carouse| Pocket Cne.
This code is used to reset the carouse| back to
position one.
V CODf8
V24
lATC DRAwBAR
UNCLAVPl.
V CODf8
V25
lATC DRAwBAR
CLAVPl.
M24 - ATC Dravbar Unc|amp.
This code unc|amps the too| co||et current|y he|d in the
spind|e.
M24 - ATC Dravbar C|amp.
This code c|amps a too| co||et in the spind|e.
V CODf8 V|8CfLLANfOU8 |UNCT|ON8 93
V CODf8
V30
lPRORAV Rf8fT
AND Rfw|NDl.
V CODf8
V32
lCAROU8fL Cwl.
V CODf8
V33
lCAROU8fL CCwl.
M3 - Program Stop and Pevind.
This code stops the program running, ie, it signa|s the
end oI the program. Contro| is then reset back to the
beginning oI this program.
lI the M3 code is Io||oved by a b|ock number, the
program vi|| be reset back to the stated b|ock number.
For examp|e .
M3 P14 ;
This command is read stop the program running and
reset it back to b|ock number 18.
The M3 code a|so acts as an M5 and M9.
M32 - Carouse| CW.
This code is used to rotate the carouse| in a c|ockvise
direction (vieved in p|an viev).
M33 - Carouse| CCW.
This code is used to rotate the carouse| in a counter
c|ockvise direction (vieved in p|an viev).
94 V CODf8 V|8CfLLANfOU8 |UNCT|ON8
V CODf8
V38
lDOOR OPfNl.
V CODf8
V39
lDOOR CLO8fl.
M38 - Door Cpen.
This code opens the machine door.
M39 - Door C|ose.
This code c|oses the machine door.
V CODf8 V|8CfLLANfOU8 |UNCT|ON8 95
V CODf8
M62 - Auxi|iary Cutput 1 Cn.
M63 - Auxi|iary Cutput 2 Cn.
M64 - Auxi|iary Cutput 1 CII.
M65 - Auxi|iary Cutput 2 CII.
M66 - Wait Ior Auxi|iary Cutput 1 Cn.
M67 - Wait Ior Auxi|iary Cutput 2 Cn.
M76 - Wait Ior Auxi|iary Cutput 1 CII.
M77 - Wait Ior Auxi|iary Cutput 2 CII.
These codes a||ov a signa| to be sent Irom the
machine contro||er to a diIIerent device, such as a
robot, then vait Ior a return signa| instructing that
the device has comp|eted its Iunction.
V2
V3
V4
V5
V
V7
V7
V77
lAUX|L|ARY OUTPUT
|UNCT|ON8l.
9 V CODf8 V|8CfLLANfOU8 |UNCT|ON8
V CODf8
V70
lV|RROR |N
X ONl.
V CODf8
V71
lV|RROR |N
Y ONl.
V CODf8
V80
lV|RROR |N
X O||l.
M7 - Mirror in X Cn.
This code changes the sign oI X vithin a program
around the datum.
For examp|e.
C1 X25.5 ;
M7
C1 X25.5 ; (Too| vou|d move to X-25.5).
M71 - Mirror in Y Cn.
This code perIorms the same Iunction as C7, but
aIIects the Y axis.
M8 - Mirror in X CII.
This code cance|s the mirror image in the X axis.
V CODf8 V|8CfLLANfOU8 |UNCT|ON8 97
V CODf8
V98
l8UB PRORAV
CALLl.
V CODf8
V99
l8UB PRORAV
fND AND
RfTURNl.
M98 - Sub Program Ca||.
This code vi|| cause the machine contro||er to jump
across Irom the main program to read a diIIerent
program in its memeory (ca||ed a sub program).
M99 - Sub Program End and Peturn.
Cn the |ast |ine oI a sub program, the code M99 is
entered. This reverts contro| back to the main
program.
lI an M99 code is programmed at the end oI a main
program, a continuous |oop vi|| be estab|ished.
lI an M99 code is Io||oved by a b|ock number,
P_ _ _ _ , contro| vi|| return to the program |ine vith
the same number as stated in P_ _ _ _.
V CODf8
V81
lV|RROR |N Y
O||l.
M81 - Mirror in Y CII.
This code cance|s the mirror image in the Y axis.
98 V CODf8 V|8CfLLANfOU8 |UNCT|ON8

You might also like