When readingthis manualkeepin mindthatthe
informationcontainedhereindoesnot coverevery
possiblecontingencywhichmightbe met during
the operation.Anyoperationnotdescribedin
thismanualshouldnot be attemptedwiththe
control,
Thefunctionsand performanceas NC machineare
determinedby a combinationof machineand the
NC control.
the machinetool builder’smanualshalltakeprl–
orityoverthis manual.
The illustrationof machinecontrolstationshould
be usedfor yourreferencein understandingthe
function.For detailedarrayof operator’sdevices
and names,referto machinetool builder’s
manual.
For operationof yourNC machine,
586-175
TJnlessotherwisespecified,
applyto the descriptionof
The dual processorCNCsystemdrasticallyreducesthe data processingtime to meet highspeedcutting.
creasedby the use of high-speedbufferfunction and bufferingfunction.
. Enhancedcuttingcapabilityincludesa maximum
of 24 meters /rein feedcommand,precisefeedE
command,500-milimeterleadthreadcutting,
continuousthreadcutting,multiplethread
cutting,and variablepitchthreadcutting.
To meet FMS trends,programinterruptfunction,tool life control,usermacro,tool set
errorcorrection,storedstrokelimit per tool,
and otherfunctionscan be installed.
Note:Thedecimalpointmay be omittedin
actualprogramming.
includingdecimalpoints,referto 2. 1.3
DecimalPointProgramming.
The leadingzeroscan be suppressedfor all addresscodes.Plus signsneed not be programmed,but all minussignsmust be programmed.
In the manual,EOB code in a programexample
is representedby a semicolon(;) . In actual
programming,CR (EIAcode)or LF /NL (1S0
code ) shouldbe used insteadof the semicolon
(;).
For makinga program
2, 1.1 TAPE FORMAT (Cent’d)
Table 2.1 Tape Format
No.
1
Prcgram No
.-
2
Sequence No.
I
G-Function
Coordinate Wmd
4
a: X, Z, 1, K, U, W, R
5
Feed/rein
Feed/rev and Thread Lead
6
.
7
S-Function
8
T-Function
M-Function
9
10
Dwel I
11
Program No. Designation
——
.—
12
Sequence No. Designation
13
No. of Repetitions
Angle Designation for Straight
14
~
Line
Angle Designation for Multiple
15
~
Thread
Address
Metric output
Metric Input
Inch Input
.—
04
—---_
N4
G3
(a-53)
F 50
F32
—-~
E34!E26~E44
I
+——
.=-
(a-44)
~~‘—-“;42‘“-—---
F24*--
S2
-.–——–.—
54
T(2+I)T(2+I)
T(2 +2)T(2 +2)
M3
-–-~-
-..-
U(P) 53
Q (P) 4
A (B) 33A (B) 33
P4
L8
_+_‘(P)53.:
L....‘4;__
4---Q “) 4‘---~
...+.––————.—
———..
B3
~–-
Metric Input ~
I
~a_53
F 42
\
-~-——–
I
-.
r
I
Inch Output
——–
‘
Inch Inputi
04
-7—---
N4
G3B
a-44B
.+-.___B_
F24
—————
E!26~B
S2B
—+
S4
————
.—
M3
L8
——..—
—,
B3
B: Basic
O: Option
~
. .
B
B
B
0
B
0
B
B
0
o
Notes:
1. Inch/Metric output is set by setting parameter *6007 D3,
2. Inch/Metric input is set by setting (#?6001Do).
3. F codes for feed/rein or feed/rev can be switched by G 98, G 99
2
Program No. O
Address
Table 2.2 List of Program Commands
Metric OutputInch Output
—-——-—
Metric Input
Inch Input
I
Metric InputInch Input
1-99991-9999
Sequence No. N
G function G
Coordinate Addressl
X, Z, 1, K, U, W, R
Feedfmin
Feed/rev and Thread Lead
S-f unction
T-function
M-function
Dwell U, P
I
i
L
S4
T3
T4
F
F
E
S2
* 99999.999 mm
1– 24000 mmlmi n
0.01-500.00mmlrev
0.0001-
500,0CK)0 mmlrev
0.001 – 99999.999 sec
1-9999
0-199
? 3937.0078in
1
~ 0.01 –944.88 in/rein
0.0001-19.6850in/rev
o,CKD304-
19,685030 in/rev
o-99
0-9999
o-999
o-9999
o-999
1– 9999
0-199
I
~:=
0.01 –1270.00 mm/rev0.0001 –50.00CQ inlrev
ooo~o,oooolo_
1270.0000 mmlrev
——
I
I
I
0.001 –99999.999sac
50 .00Ci)OO inhev
o-99
0-9999
o-999
o-9999
0-999
Program No. Designation
Sequence No. Designation
No. of Repetitions
Angle Designation for Straight Lin#
—
Angle Designation for Multiple Thread
Note : For angle designation of included angle for G 76, see 2.8.26.8Automatic Threading Cycle (G 76).
—
1-99991–9999
1–9999
1-999999991– 99999999
O– ? 360.~0°
0-360”
I
I
1– 9999
0- t360.000°
0–360”
3
2.1.2LIST OF ADDRESSCHARACTERSAND FUNCTIONCHARACTERS
Table 2.3 Address Characters
AddressMeaning
A
BSpindle shift angle Ol multiple thread, angle designation for multiple corneringo
c
Angle designation for GOl and Gill, includfxf angle for G76
-.
User macro character
—–.——
.———
——————
D
E
F
G
HUser macro chaactero
IX-component of arc center, canned cycle parameter, beveling value (radius value)B, O
J
K
Depth of cut and number of cutting cycles for G 71 to G 76
Specifications for precise feed and precise lead for cutting
——~.‘—-
Specifications for normal feed and normal lead for cutting
Preparatmy function (G-function)B
—
User macro character
Z-component of arc center, canned cycle p~ameter, beveling value
.-
Incremental value of variable lead thread
.—.
+-—–—
I._.—
.——
———.———
I
~
–——+—–——
–————–—
L
M
Number of subprogram repetition, G 13 to G 16 angle and coordinate
.—.
Miscellaneous function (M-function)
—.—.—
B: Basic
O: Optional
o
o
0
B
o
B, O
o
B, O
B
N
o
P
Q
—
F?
s
T
u
v
Sequence numberB
—.—
Program number
Dwell, canned cycle starting sequence number, program number, user macro numberB, O
-—
Subprogram starting sequence number, canned cycle ending sequence numberB, O
Radius of arc, rounding value, tool radius value
Spindle function (S-function), maximum spindle revolutionB
Tool function (T-function), tool coordinate memory numberB, O
.—.
X-axis incremental command value, dwell, canned cycle parameterB, O
User macro character
-~———
-———–—
——-—
I
—t—
\
I
—..—.—
.—
B
B, O
o
–—— .——
w
Z-axis incremental command value, canned cycle parameterB, o
——
x
Y
z
X-axis coordinate valueB
User macro character
Z-axis coordinate value
o
B
Table 2.4 Function Characters
FunctionRemarks
——~—
-~ ‘-
—
—-––~-
‘-
1-------._
—+
—
>
EIA Code
Blank
BS
Tab
SP
ISO Code
I
NuL
0S
e--
HTDisregarded
LFINL
c!+Disregarded
SPSpace
Error in significant data area in EIA Disregarded in ISOi
Disregarded
.—
End of Block (EOB)
--+>5::::----‘------/–-
2Z2::F......1.- ._:-=..
2-4-5bits
~“—
2-4-7 bits
..~
‘--;~~*“”--------------‘-
oto9Oto 9I Numerals
~ Control out (comment start)
(
~ Control in (comment end)
)
Disregarded, User macro operator
Minus sign, User macro operator
I
-!
EIA: Special code
]
1
‘Ad===‘-–-
—~tx—-----~‘-
:-ti~––--‘------4
1 Disregarded (Including All Mark)
‘:+*-------!----
—.~--
Parameter~
starting~
*
s
I
*
I
‘-Ld=:k--‘------4
:-H--1“A:‘“iacde
?
Notes :
1. Characters other than the above cause error in significant data area.
2. Information between Control Out and Control In is ignored as insignificant data.
3. Tape code (EIA or ISO) is automatically recognized.
17I
I
i Sharp (Variable designation)
!
[ Asterisk (Multiplication operatcx)
User macro operator
I
-.
5
2.1.3 DECIMAL POINT PROGRAMMING
Numeralscontaininga decimalpointmay be used
as the dimensionaldata of addressesrelatedto
coordinates(distance), angle,time and speed.
Theycan be input”from punchedtape or MDI.
Decimalpointscan be used in the followingad-
dresswords.
Coodinatewords;
Anglewords:A, B
Feedrateword:F, E
Time words:U, P
EXAMPLE
X15.
z20.5—
(G99)F.2t—FO.20mm/revor
X,Z, U, W, I,K, R
[mm]
X15.000mmor
220.500mmor
(forF32)
[inch ]
X15.0000in.
220.5000in.
FO. 2000 infrev
(forF24)
The blocksincludingthe following
are not read in advance.
. MOO, MO1, M02, M30
. M codes( 6 maximum)set by parametercom-
Block-to-blockstoptimedueto thetime
requiredto computetoolradiuscompensation is not eliminatedor remains.
thisstoppingtime,use2.7.3
Function(M93,M92)(optional).
tionof consecutiveblocksup to 5 in M93
mode,inter-blockstoppagetimeis reduced
to zero.
To reduce
Buffering
When opera-
2.2PROGRAM NUMBER AND SEQUENCE
NUMBER
(G98)F25.6F25 mm/minor
G04Pl.—
When data withouta decimalpointis input,the
controlregards
LABEL SKIP FUNCTION
2.1.4
In the followingcasesthe labelskip function
becomeseffective,and LSK is displayedon the
CRT .
. When the powersupplyis turnedon.
. When the RESEToperationis executed.
While the label skipfunctionis effective,all data
on the punchedtape up to the firstEOB code are
neglected.
the MEM (memory)or EDIT(editing)mode,it indicatesthe presenceof a pointerat the leading
end of the part program.
BUFFER REGISTER
2. 1.5
Duringnormaloperation,one blockof data is
readin advanceand compensationis computed
for the follow-onoperation.
In the tool radiuscompensation”-mode,two
blocksof data or up to 4 blocksof data are read
in advanceand compensationcomputingrequired
for the nextoperationis executed.One block
can containup to 128 charactersincludingEOB .
(forF50)
Dwell1.000 sec
11111as o.001mm (or0.0001inch).
When LSK is displayedon the CRT in
F25. 60 mm/min
(forF32)
2.2.1 PROGRAM NUMBER
Programnumbersmay be prefixedto programs
for the purposeof programidentification.
Up to 4 digitsmay be writtenafteran address
character
programnumberscan be registeredin the control,and up to 199 or 999 can be registeredemployingan option.
One programbeginswith a programnumber,and
ends with
placedat the end of main programs,and M99 is
placedat the end of subprograms.
ER (or % at 1S0 code)is punchedon bothend
partsof the tape.
2.
(#6201Do), to make the readingof M02, M30,
and M99 ineffectiveas a programend,and
to make the succeedingER (EIA)or % (ISO)
as a sign of programend.
/M99; are not regardedas end
2. 2.2 SEQUENCE NUMBER
2.3COORDINATE WORDS
Integersconsistingof up to 4 digitsmay be writ-
ten followingan addresscharacterN as sequence
numbers.
Sequencenumbersare referencenumbersfor
blocks,and do not haveany influenceon the
meaningand sequenceof machiningprocesses.
Therefore,theymay be sequential,non-sequen-
tial,and duplicatednumbers,also not using
any sequencenumberis possible.
sequentialnumbersareconvenientas sequence
numbers.
When searchingfor sequencenumbers,be sure
to searchor specifyprogramnumbersbeforehand.
Notes :
Generally,
1.Fiveor more digitsmust not be writtenas a
sequencenumber.
2.
When two or more blockshavethe same sequencenumber,onlyone is retrievedand
read,and no more searchingis performed.
3.Blockswithoutsequencenumberscan also
be searchedfor withrespectto the address
data containedin the blocks.
2.2.3.
Thoseblocksin which“ /n” (n = ( 1 - 9) is includedare neglectedbetween
that block,whenthe external
switchfor that number“n” is
OPTIONAL BLOCK SKIP (h - /91+]
In and the end of
optionalblockskip
on.
Generally,
tionsand commandsfor settingcoordinatesystems are calledcoordinatewords,and coordinate
wordsconsistof addresscharactersfor desired
axes and numeralsrepresentingdimensionsof
directions.
2.3.1
Address of Coordinate Words
Main Axis
Radius
Value
for Circular
Interpolation
Note: When G 90 and G 91 are used, addresses X and Z are
not fixed as absolute value and follow accofdi ng to G 90/G 91
designation.For details, refer to 2. 3.5 Absolute and
Incremental Inputs.
2.3.2SIMULTANEOUS CONTROLLABLE AXES
commandsfor movementsin axis direc-
COORDINATE WORDS
I
Absolute coordinate position of t~get
x,
z
position
Incremental distance
U, W(U: Direction in X-axis,
W: Direction in Z-axis)
Incremental distance between start point
and center of circular arc.
1, K
(1: X-axis component,
K: Z-axis component)
R’
Radius value of circular arc
—
+
1I
I
I
I
Meaning
EXAMPLE
/2 N1234GO1x1OO/3
When the switchfor/2 is on,
neglected,and whenthe switchfor /3 is on,
this blockis readas if
N1234 GO1xlOO; .
With “ 1, “
Notes :
The optionalblockskippingprocessis execut-
1.
ed whilethe blocksare beingread into the
bufferresister.Oncethe blockshavebeen
read,subsequentswitchingon is ineffective
to skip the blocks.
2.
While readingor punchingout programs,
this functionis ineffective.
Theblockskip/2 - /9 is an optionfunction,
3.
and/1 is a basicone.
1!l!! may be omitted.
Z200;
entire block is
the.
The controlprovidestwo-axiscontrolfor X- and
Z–axis.
axes,whencommandedin the same block,is
two axes ,
mands,movementwill not occur.
2.3.3
Numberof simultaneouslycontrollable
XandZ.For the axis withoutcom-
LEAST INPUT INCREMENT AND LEAST
OUTPUT INCREMENT
2,3,3.1
The minimuminputunits that can be commanded
by punchedtape or MDI are shownbelow.
X-axis is specified for diameter,
Input Unit and 10 Times Input Unit
Least Input Increment
7
2.3.3.1InputUnitand10 TimesInputUnit
(Cent’d)
Inch/MMinputis selectedby setting#6001D0.
Inch/MMinputselectionby G20/G21is optional.
Selectionof multiplicationfactorxl /x10 is made
by parameter#6006D 5.
Tool offsetvaluemust alwaysbe writtenin O. 001
mm (or O. 0001 inch) , and offsetis possiblein
theseunits.
In O. 01 mm incrementsystem,the followingoperationmust be made in the unit of O. 01 mm.
. Programmingfor operationin TAPEmode.
o Write operationin MDI mode.
o Programmingfor operationin MEMORYmode.
. Programeditingoperationin EDT mode .
Notes :
If NC tape programmedby O. 001 mm is fed
1.
into or storedin an equipmentset by O. 01
mm increment,the machinewill move ten
times the intendeddimensions.
If the incrementsystemis switchedwhenthe
2.
contentsof NC tapeare storedin memory,
the machinewill moveby ten times or one
tenthof the commandeddimensions.
3.
When the storedprogramis punchedout on
the tape+,the storedf?guresare punched
out “as stored”regardlessof switchingof
the incrementsystem.
4.
Multiplicationfactor10X (10 times the input
unit)is effectivefor distancecommandonly.
It does not functionon the designationof
time,angle”,etc.
10X is set as effective( #6006D5= 1) , the
same addresswordis multipliedby 10 or not
dependingon typeof G command.
In incremental programming,specified values must
not exceed the maximumprogrammablevalues.In
absolute programming,move amount of each axis
must not exceed the maximumprogrammablevalue.
THE MACHINEMAYNOTFUNCTIONPROPERLY
IF MOVECOMMANDOVERTHE MAXIMUMPROGRAMMABLEVALUESIS GIVEN.
The above maximumprogrammablevalues also
apply to distance commandaddresses 1, K, R
in addition to move commandaddresses X , U , W .
2.3.5 ABSOLUTE AND INCREMENTAL INPUTS
Bothabsolute
be usedfor the control.
Absoluteinputis specifiedby the addresses
XandZ.
EXAMPLE:X.. .Z..;
Incrementalinputis specifiedby the addresses U and W.
EXAMPLE:U.. . W., . ;
Absoluteinputand incrementalinputcan be
used in one blockmixedly.
EXAMPLE:X.. . W..;
inputand incrementalinputcan
u.. . z.;
2, 3. 3.2 Least Output Increment
Least output increment is the minimumunit of
tool motion. Selection of metric system or inch
system is made by parameter (#6007D3) .
Least Output Increment
X-axis
“-”J!
Metric output
Inch output0.00005 in.0.0001 in.
--”1-””-‘-”--””
(Radius value)
0.0005 mm0.001 mm
Z-axis
“---”-
8
Note :
and W are used in one block,the latteris effec tive.
When addressesX and U or addressesZ
The addresses1 and K for designationof arccentermust be specifiedby the incremental
dimension.
Table 2.5
Address
x
z
u
w
I
K
Increment System
Absolute Input
Incremental Input
incremental
Incremental Input
+x
I
Input
Designation
Diameter
—
Diameter
—
Radius
—
Meaning
Position in X-axis direction *
Position in Z-axis direction *
Move amount in X-axis direction
Move amount in Z-axis direction
Distance in X-axis direction from starting point of arc to
canter
Distance in Z-axis direction from starting point of arc to
center
Direct programming of circular arc
G codeMeaning
G9CIIAbsolute command
G 91
Incremental command
—+Z
b+--
XandZ:AbsoluteInput
U and W:IncrementalInput
* SinceX andU aredesignatedbythe
valuesin diameter,the actualmovementis
the half of the values.
Fig. 2.1
CaseswhereG 90
mentalcommands)are used.
. When specialG codeI (basic)or II (option)is
selected,G90 and G91 codescan be used.
Absolute Coordinate Values and Incremental
CoordinateValues
and G91 (absoluteand incre-
As shownbelow,G90 and G 91 commandsare
effectiveonly to addressesX and Z.
Addresses
TAPE, tvfEtvf,
MDI modes
EXAMPLE:
Incrementalmove command
. Auxiliarydata,1, K, R, etc. , of circulai
interpolationare alwaysincrementalcommands.
Note :G90 and G91 cannotbe programmed
togetherin the same block.If theyare written
in the same block,the one writtenlateronly is
effective.
EXAMPLE:
G 91 is effective,and in this block,commands
becomeincrementalin boththe X and Z axes.
~+,::::al*
G91GOO X40.Z50. ; o“. . .
GO1 G90x80.G91z60. ;
G 90 Command~ G 91 Command
2.3.6X-AXIS DIAMETER/RADIUS SWITCHING
2.4RAPID TRAVERSE RATE
AddressesX and U for X–axiscoordinatewords
are specifiedby diametervalue.
diameterdesignation.
used for designationof both diameterand
radius .
of parameter#6006D s.
o:Diameterdesignation
1:Radiusdesignation
The switchingis made by the setting
The addressesX can be
This is called
II
w-zPP+z
(a)In the case of Di-
ameterDesignation
(b)In the case of ra-
dius Designation
Fig. 2.2
Table 2.6
DiameterRadius
Programming
Programming
2. 4.1 RAPID TRAVERSE RATE
The rapidtraversemotionis usedfor the motion
for the Positioning(GOO) and for the motionfor
the Manual RapidTraverse(RAPID).The traverseratesdifferamongthe axessincetheyare
dependenton the machinespecificationand are
determinedby the machinetool builders.The
rapidtraverseratesdeterminedby the machine
set by parameters#6280,#6281 at some
suitablemultipleof 125 p /sec.
Leastoutputincrement)
(p:
uPPerlimit shownbelow.
Therefore,
Address X command
Address U command
X-axis position display
Tool position offset
value
Nose radius R
Feedrate F, E in
X-axis direction
Radius data 1,
R for circular
interpolation
G90-G 94,
G70-G76,
Parameters for
cornering, and
multlple cornering,
D, 1, K, P, Q, R
“-*-”-
Diameter value
I
Diameter incre-
mental value~ ~dius value
I
I
t
~
1 Incremental value
Diameter value
Diameter value
I
1
t
I
Radius value
Radius val uehev
Radius value/rein
Radius value
Radius value
Radius value
Metric Input
Inch Input
The upperlimit for X-axisspeedis half the
listedvalues.The optimumvalueof upper
limit is set accordingto the machine.
Referto the machinetool builder’smanual,
for the definitevalue.
FEED FUNCTION (F- AND E-FUNCTION)
2.4.2
G codelistedbelowmust be designatedbeforeF ,
and E functionis commanded.
G codeI
G 98
G99
Note : For the details, refer to 2.8.28, “Feed Function
Designation.”
SinceF, E codesare modal,thesecodesare
effectiveuntil nextF , E codesare given.
However,whenG98/G99are switched,new F
code must be designated.
In G98 mode,E code cannotbe commanded.If
commanded,PROGERROR“030”will be activated.
I24,000 mmlmin
i
2,400 inlmin
I
Function
Designationof feedratein mm/min.
Designationof feedratein mm/rev.
2.4. 2.1 Feed Per Revolution(G99 Mode)
(1)Toolfeed per revolutionof the spindlecan
be specifiedwith F (normalfeed)or E ( fine
feed).
(2)Thefeedrangesthat can be specifiedby
the F and E codesare as follows.
Mode, F and E Feed Ranges
G 99
of Feed/Revel ution
Range
Metric
Metric
output
Inch
output
Thesefeedrangesare subjectto the following
restrictionsdependingon the spindlespeedS.
Notes :
1.
2.
3.
input
InchI
input
Metric
, input
Inch
input
Metric output
Inch output
Notes :
1. Program feed per revolution within such a range that the
X-axis component remains below 12,000 mm/min or
1,200 in./min.
2. This uppar limit may still be reduced by the performance
limit of the machine.
Refer to the machine tool builder’s manual.
A command“FO” causesdata errors.
Any minusvalueshouldnot be specifiedfor
F commands.
not operateproperly.
EXAMPLE
F-250;. . . . . Wrong
Feedratecommandsin the directionof the
X–axismust be givenin radius.
F 32
E34
F 24
E 26
I
F 32
E34
F 24
E 26F O.000010-E 50.00C0OO in/rev
F 0.01- F 500.00 mm/rev
E 0.0001- E 500.0000 mmlrev
~
F 0.0301 –F19.6Ek50 in./rev
I
E0.000004–E 19.685000
1
F 0,01 –F1270.00mmlrev
E 0.0003-E1270.0000 mmlrev
FO.001 –F 50.0000 in./rev
IF(E) XS~24,000mm/min
F(E)XS S 2,400 in./min
I
If specified,
the machinewill
in./rev
EXAMPLE
G99 S350 (r/rein);
GO1 U1OO. F200 ;
In the abovecase,the feedrateis:
F x S = 2.0 mm/rev.x 35o r/rein
= 700 mm/m~n
. . . In case of F32.
+x
ql
4.
Valuesof F commandat linearor circularin–
terpolationrepresentthe tangentialfeedrate
whentwo axes are simultaneouslycontrolled.
EXAMPLE1
G99S1OOO (r/rein);
GO1U60,W40.F50;
In the abovecase,the feedrateis
x S = 0, 5 mm/reVx Io(lf)r/rein
F
500 mm/min
=
~3002+ 4002
rr
I
I
‘X–axisfeedratecomponent
TANGENTIAL
FEEDFIATE
+x
I
IO’
~.Z
EXAMPLE2
G99s1OOO (r/rein) ;
G03U.. - W.. . I
In the abovecase,
FxS=0.2
(mm/rev)
= 200 mm/min
.4fx2+ fz2
CENTER
Lz-axisfeedratecomponent
~.o
#+
@~
~ 300 mm/mln
——-
400 mm/mln
x
(a)
. . F20;
the feedrateis:
1000
x
(r/rein)
FEEDRATE
700 mm/mn
I
+x
t
L----.Z
fx
(b)
11
2.4. 2.2 Feed Per Minute (G 98 Mode)
(1)Toolfeedcan be specifiedin mm/min or
in/reinwith F codes .
(2)Thefeedrangethat can be programmed
with F codesis as follows.
Mode F Code Feed Range
G 98
EXAMPLE1
G98;
GO1u60.
In this case,
F =
500= ~3002+ 4002
(mm/min)
W40.F500 ;
~~-a~i~
Lx-axiscomponent
component
Notes :
1. Program feed-per-minutevalues so that the X-axis speed
ccmponent wi II not exceed half the above upper limit
feedrates.
EXAMPLE
G98 GOI U300. F1200’
(Metric output, metric input)
2. The upper limit value is further subject to the limitation
impoeed by the machine performance.Refer to the
machine tool build&s manual.This upper limit value is
to be set in parameter #6228
Notes :
Do not writeF commandin FO or negative
1.
values.
Commandsin the X-axisdirectionindicate
2.
speedsin radius.
Example
G98;
GO1X200.F700;
F 700
—!
FEEDRATE
700 mm,’mlq
-!-+
l——————+,
Values of F commandat linear or circular
interpolation represent the tangential feed-
rate whentwo axes are simultaneouslycontrolled.
EXAMPLE2
G98;
G03X.. .Z.. . 1.. . F200;
In this case,
F=200=ifxZ+fzZ
(mm/min)
CENTER
–x
I
2,4.3AUTOMATIC ACCELERATION AND
DECELERATION
Accelerationand decelerationfor rapidtraverse
and for cuttingfeedare automaticallyperformed
withoutprogramming,
2.4. 3.1
Traverse and Manual Feed
In the followingoperation,the patternof automatic accelerationand decelerationis linear.
(See Fig.2.3. )
Oncespecified,
until the nextS-code.
M05 (spindlestoD) ,
memor~of the u~it.
EXAMPLE
S-codeis modal and effective
When the spindlestopsat
S-commandis storedin
TIME—
Fig. 2.3
Rapidtraverserate and the acceleration/decelerationconstantof rapidtraverseratecan be
set by parameter.( #6280 to #6287)
As shownin the followingoperation,the two–step
linearaccelerationand decelerationcan be specified.(independentof eachaxis)(SeeFig.2.4. )
o Cuttingfeed(GO1 to G03)
v
G00
.———
P
VELOCITY
TIME—
Fig. 2.4
Feedratetime constantsareset at 2 msec intervals and feedratebias is set at 2kppsintervals
by parameters.( #6092,#6093)
Note :The automaticacceleration/deceleration
parametersare set to the optimumvaluesfor the
respectivemachines.
unlessit is requiredfor specialapplication.
SPINDLE-SPEEDFUNCTION (S-FUNCTION)
2.5
Do not changethe setting
t
GOO S11M03;
. . . S command
SpindleCW
Sll:
x... z.. .;
GO1 Z.. . F.. .;
1
GOO X.. . Z.. . M05;
GO1 Z.. . F.. .;
Note :
2.5.2S4-DIGIT
(1)FourdigitsfollowingS (S ❑ ❑ ❑ ❑ ) are used
. . c Spindlestop
..-M03;
x... z.. .;
S22;
. . .
x
z.. . F.. .
The two-digit
machinewhen
is issued.
1
BCD outputis sent to the
S and two-digitcommand
PROGRAMMING AT
to specifythe spindlespeedin r/rein.
Effective
Effective
Sll:
S22:Effective
(2)When S commandis givenin a blocktogether
with M03 (spindleforwardrunning)or the
M04 (reverserunning), the control
to the nextblockafterthe spindlespeed
reachesthe speedgivenby the S code.For
details,referto the machinetool builder’s
manual.
proceeds
2.5,1 S 2-DIGIT PROGRAMMING
(SPECIAL SPECIFICATIONS)
The spindlespeedis specifiedby two digitsfol-
lowingthe addressS (S00 to S99) .
For each S codeand its correspondingspindle
speed(r/rein),refertO the machinetool builder’s
manual.
When a movecommandand an S codeare issued
in a block,executionwill dependon the machine
tool designand construction(Whetherthe S command is executedtogetherwith the move com–
mand or afterthe completionof tool movement).
Referto the machinetool builder’smanual.
EXAMPLE
s
S1OOO M03,
1000 FUMIN
————. .
1I
I
I
I
u
START OF THE BLOCK
SPEED
SYNCHRONIZATION
ACTUAL SPINDLE
~
SPEED
t
13
2. 5.2 S 4-DIGIT PROGRAMMING A+(Cont’d)
(3)S
commandsare modal.Althoughthe spindle stopsat the M05 command,the S command is retained.
Therefore,when M03
(or M04) is given,the spindlerunsaccord-
ing to the S command.
(4)When S commandis changedafterthe spin-
dle startby M03 or M04, S commandshould
be givenwithinthe rangeof spindlespeed
selectedby spindlegear.
Notes :
1.
The lowerlimit of the spindlespeeddepends
on the spindledrive.Referto the machir,e
tool builder’smanualfor the low-speedlimit.
NegativeS commandsmust not be programmed.
2.
When the controlis providedwith the S 4digitcommandfunction,the “Spindlespeed
override”optioncan be builtinto it.
3.
With machinetools with whichthe main spindle gear ratiochangescan be specifiedby
M codes,firstwritethe applicableM code
to preselectthe desiredgearratio,and then,
writethe S command.
Referto the data of
the machinetool builderfor the numberof
gearratios,the speedsat variousgear ratios,
and otherdetails.
4.
When the controlis providedwith this func -
tion,the spindlemaximumspeedcommanding
functionwith the instruction“G50S . . .; “
can be used.
2. 5.3 S 4-DIGIT
Thisfunctionis to modifythe S4-digitcom-
(1)
PROGRAMMING B+
mand A outputfreelythroughthe programmable machineinterface.
(2)Basically,this functionis used in the same
as the S 4-digitcommandA function,
way
but it is normallyused to set the manually
controlledspindlespeedscontrolledby the
rotaryswitchon the m“achine controlstation
correspondingto S commandspeeds.For
the detailsof S commandspeeds,referto
the machinetool builder’smanual.
TOOL FUNCTiON(T-FUNCTION)
2.6
2.6.1T 4-DIGIT PROGRAMMING
Fourdigitsfollowingthe addressT specifies
(1)
the tool number.
TDDDU
(2)For applicabletool numberto be specified,
referto the machinetool builder’smanual .
Notes :
1.When the tool numberis changedby the T
command,a turretlathe beginsto indexthe
tool instantaneously.
Therefore,the turret
shouldbe removed,beforethe command,
from the area where” an accidentalcollision
mightoccur.
Tool offsetnumber00 cancelsthe tool offset.
2.
2.6.2TOOL OFFSET MEMORY+
The area in whichtool positionoffsetvalues,tool
radiuscompensationvalues,and othercompensa-
tion data are storedis calledOffsetMemory .
(1)Theentirememoryareasof OffsetMemory
includingthe optionsare as shownbelow.
OFFSET MEMORY NO
[
‘TOOL OFFSET
MEMORY
,50 GROUP5MA:f‘---’”---‘---~:~i;:;
“TOOL COORDINATE
MEMORY—\
(49 GROUPSMAXI‘g
“TOOL RADIUS
MEMORY
Note :
For the actuallyusablerangewithinthe
aboveOffsetMemory,
builder’smanual.
(2)
The“tooloffsetNos. “
functiondirectlycorrespondto the “offset
memoryNos. , “
for variouscompensations.
tool coordinatememoryNos.( for settingthe
workcoordinatesystem)correspondto the
tool selectionNos . in the T function. The
workcoordinateshiftmemoryis an independent function,not relatedto the T function.)
Ii–_-–
---
I;0
51
1
‘I&/
-r-
referto the machinetool
specifiedby the T
and theircontentsare used
However,the
-MEMORY
J SUPPLEMENT
14
Tool offsetnumber
(O - 160r50)
1
Tool selection
(3)Writethesedata in the memory,beforestart-
ing to operatethe machineunderautomatic
co; trol. to 4.3.5, “ Displayingand WritingToolOffset
Values .“
Memory,followthe proceduredescribedin
6.2.3, “ Work MeasurementValueDirectInput *.”
TOOL POSITION OFFSETS
2.6.3
When the tool offsetnumberis specified,the off-
set valuecorrespondingto the tool offsetnumber
is addedalgebraicallyto the commandvalue in
the programand the tool is movedto the offset
position.
coordinatevaluesof the programmedtool tip and
the actualtool tip must be storedinto tool offset
memoryin advanceas the offsetvalue.
When the coordinatevalueof the actualtool tip
has changeddue to tool wear or some otherreasons,the tool positionoffsetvaluesshouldbe
set again.
attainedwithoutcorrectingthe program.
(1)Rangeof tool positionoffsetvalue
The programmablerangeof tool offsetvalue
is shownbelow.
For the writingprocedure,refer
For writinginto Tool Coordinate
Therefore,the differencebetweenthe
Thus,the programmedmachiningis
Descriptionof tool positionoffsetmotion
(3)
As mentionedabove,whenthe tool specified
by the addressT and 4 digitsis moved,the
offsetvaluecorrespondingto the tool offset
numberis addedto the commandvaluein the
programalgebraicallyand the tool tip is
movedto the offsetposition.
When thereis no move commandin the block,
the tool movesonly by the offsetvalue.
Once,the tool offsetnumberis designated,
the tool movesalwaysto the offsetposition
until anothernumberis designated.When
the otheroffsetnumberis designatedor
the offsetvalueis changed,the offsetvalue
is compensatedfor by the amountof the
differencebetweenthe old and new offset
values.
OFFSETVALUE
T101
T
(+6X1,+ 6z~)
T115
T
I
(+ 6X2,+ 6Z2)
inputIo- f9999.999rnnl
Inch
out put
(2)Sign of tool positionoffsetvalues
storethe tool positionoffsetvaluesin the
OffsetMemory.
viationfrom the tool tip positionof the
referencetool whichis determinedas zero.
z
Metric
Inch input
tiOLpO’’T’oN
I
IJ.
Fig. 2.5
,
O–
I
The offsetvalueis the de-
+x
II
P~OGnAtMMED
–x
fE@3.&307in.
6“
_
I& DIAMETER)
~
+Z
+x
,,1+
L!x~
+
(X,z)
EXAMPLE
‘Tlol;. . . . . . . . . . ...+...”..
GO1 X.. . Z.. .
T115;. . . . . . . . . . . . . .
(4)Movespeedwith tool offset
The movespeedof tool offsetis determined
by the feedratecommandthat is effectivein
the block.
(GOO or GO1 F
or in the blockcontainingthe tool offset
number.
Therefore,the feedratecommand
{3
8Z2 :
+-
-—
7L?z.
F(E) . . .; .
..)shouldbe issuedbefore
OFFSET MOTION
1
COMPLETION OF @
.-
-8KL
2
. . . . . .
. . . . .
( Blockof the
offsetmotion)
a
a
B
15
---———————.
25
3 TOOL POSITION OFFSETS (Cent’d)
EXAMPLE
EXAMPLE
G50X.. .2.. .;
GOO S.. .
Instructionsfor commandingtool position
(5)
offset
Tool positionoffsetis executedby designating the tool offsetnumbercorrespondingto
the actualtool must be designated.
Tool offsetstartsat the blockin whichthe
a.
T-codeis commanded.When T–codeis read,
the tool selectionsignal( BCD)is fed and
the tool startsto move by the offsetvalue
correspondingto the tool offsetnumber.
SinceT code is modal,it is retaineduntil
the otherT codeis designated.
EXAMPLE
GOO T0202; . . . The tool numberN 02 is
M03TO1O8;
x...z.. .;
selected.Tool offset
motionis made accord–
ing to the contentsof
the tool offsetnumber02.
Off set mot ion is
made at the rapid
traverserate.
~GOOT0202;
GO1X.. . Z.. . F.. . ;
~GO1 U+. . . W-. . . F.. . T0216;
-x
I
/
T
,.L‘
DICFER~NcE ,OE ~~L OFFSET l/AL~JE 3ET’,vEEN
T0216 AhD T 0202
MOVEMEN” OF COMMAND~,
, UOVEMENT wITHO IIT CCIMMAN17 T07. R Ih <
-~1~-‘- ‘-”- ‘-
–;y
~
When the T commandand the move command
are issuedin the same block,the tool nose
movesto the offsetposition.
the abovecase,
by the differenceof the offsetvaluebetween
T0202 and T0216.
d . When the tool positionoffsetis requiredto
cancel,the T code with the tool offsetnumber O or 00 (T
The tool Dositionoffsetis instantaneously
cancelled~
“-=.
STARTING POINT (BEFOQE THE
EXECUTION OF COMMAND~,,
.Z
Therefore,in
the taperangleis corrected
❑ ~ 00) must be commanded.
When the tool offsetvaluemust be changed,
b.
the T–codewhosetool offsetnumberis re–
writtenshouldbe commandedagain.
EXAMPLE
GOO T0202;
GO1 X.. . Z.. . F.. .;
GO1 T0216;
Note that if the tool numberis changedin this
case,the tool indexingmotionstarts.
The angle of taper cutting can be changed
c.
Tool offsetnumber02
is replacedwith16.
Tool offsetmotionis made
at the cuttingfeedrate,
by the following procedure.
T code for change of tool offset number
should be commandedin the block together
with cuttin~ feed command .
EXAMPLE
GOO T0202
GO1 X.. . Z.. . F.. .;
GO1U+. . . W-. . . F.. .
@GOOX.. . Z.. . T0200
The block~of EXAMPLEcan be divided
into two blocks.
G(IO X.. . Z.. .;
T0200; . . . . . Onlycancelmotionis made
at rapidtraverserate.
ro216;
. . . .
The offset
motionis
cancelled.
Tool moves
accordingto
the position
specifiedby
XandZ.
Notes :
Tool positionoffsetis cancelledby RESET
1.
operation.
2.
The tool offsetmust be cancelledbeforeM02
or M30 is commanded.
The tool offsetshouldbe cancelledalso before
3.
AutomaticZero Return( G 28) is commanded.
When the controlis resetby M02 or M30 com-
4.
mand or by executingRESEToperation,
the tool offsetnumberbecomesO (or00) .
When the Zero Return(autoor manual)is ex-
5.
ecuted,the tool offsetis cancelledautomati–
tally.
The tool offsetmust be also cancelledbefore
6.
zeroReturnCheck( G27) is commanded.If
the G27 is commandedat the state wherethe
tool offsetis effective,the controlwill be
the stateof Zero Returncheckerror,because
the tool offsetvalueis addedto the program–
med position.
WORK COORDINATE SYSTEM SHIFT i
2.6.4
With this function,coordinatesystemsset by
the WorkCoordinateSystemSettingfunction,
can be shiftedthroughdesireddistances.
Shiftvaluesin the X and Z axescan be
(1)
writteninto the WorkCoordinateSystem
ShiftMemory(onegroup ) with whichthe
offsetmemoryNo.is
cedureas for writingtool offsetvalues.
(2)
The writtenshiftvaluesbecomeeffective
from the momentdescribedbelow,
G50 coordinatesystemis set
When
a.
“ 00, ” by the same pro-
G50,
etc.
For positiveshiftvaluesAX and AZ, the
coordinateaxes are shiftedin the direction
shownabove.Xo and Zo are originalcoordinatesystemsettingvalues.
(3)
Thisshiftfunctionis executedat each time
any of the conditionsdescribedin a, b, c,
and d is met.
(4)
When the contentsof Work CoordinateSys-
tem ShiftMemoryare rewritten,the new
shiftvaluesbecomeeffectivefrom the mo-
ment the operationa, b, c, or d aboveis
subsequentlyexecuted,
(5)
Theprocedureof
WORKPIECEVALUEDIRECTINPUT”is
effectiveforthe WorkCoordinateShift
Memorywith an offsetmemoryNo,“00. “
Notes :
The shiftcommandby the Work Coordinate
1.
Shiftfunctioncan not be cancelledunless
the settingvalueis changedto “O. “
resetoperationis effectivein cancelingit.
T~noO;.. . . .
2.
—
5.2.3, “
Tool positionoffsetcancel
MEASURED
G50 T~UOJ;. . . Work coordinatesystem
setting
The tool offsetNo
has nothingto do withthe contentsof Work
CoordinateShiftMemory.
3.
When G50 coordinatesystemis set or when
positionabsolutedisplayis resetby ORG key
1, parameter#6018 D7 determineswhether
workcoordinatesystemshiftamountis effectiveor not.
00 in theseinstructions
NO
G50GTworkcoordinatesystemis set
When
b.
When
c.
d,
automaticcoordinatesystemis set
Position Absolute display is reset by ORG
key
That is, when these coordinate systems listed above are set, the-shift values are simply
added.
-v,
4
. .
. .
~
Tools are not shifted.
-x
20
ORIGINAL COORDINATE
z
AXES
Xoi2
+2
p%
SHIFT,
8
~+z
SHIFT COORDINATE AXES
—
I AX,12
Fig. 2.6
NEW COORDINATESYSTEMSETTING
2,6.5
FUNCTION
2.6.5.1Overview
A completelynew approachto coordinatesystem
settingis employedin thisfunction.
are the features.
(a)A coordinatesystemis a machinecoordinate
system.
(b)The tool nose pointcan alwaysbe displayed
on the currentvaluedisplay(absolute).
(c)Thereis no needto set the coordinatesystem
in the program.
2.6.5,2
What kind of coordinatesystemsettingis
performedand at whatfrequency?
coordinate memory+
work coordinate system
shift amount
( 1)The machinepositionis calledthe position
machine.
The tool coordinate memoryvalue numberis
( 2 )
of two types; the numberwhen the timing for
the next coordinate system setting is manual
and when it is automatic.
(3)The workcoordinatesystemshiftamountis
calledthe offsetTOO, X, or Z data.
2.6.5,4Timing of CoordinateSystem Setting under
the ManualMode
Underthe manualmode,coordinatesystemsetting
is made with the followingtimes(a) to (c) .
tool coordinatememorynumberis createdfromthe
tool numberbinaryvalueset in 1/0 input#13174
(TP1)to #13178(TP8), to be usedfor operation.
The
The coordinate system can also be set up
inside the NC,
sequencer.
or by a request from the
When set by a request of the
sequencer, coordinate system setting is executed
to turn on output #12194 (end of coordinate system
setting output) when
systemsettingrequestinput)turnson.
(a)Upon zero point return.(NC internal setting
input#13127(coordinate
at label skip, or sequencer setting for other
cases. )
(b) On the tool
contacts the sensor upon measurement.
setter,when the tool nose
(NC
internal setting)
Underthe automaticmode,coordinatesystem
settingis performedwhenthe turretis calledup
by the T code.
numberuses the turretnumbercommandedon the
commandscreenor the offsetnumberfor
operation.
Unlikethe conventionaloffsetmethod,the T
codecommandin the coordinatesystemsetting
specificationis givenas follows.
The settingof parameter#6011 DO decides
whetherto set the tool coordinatememorynumber
at the fronttwo digitsof T4-digit,or at the last
two digitsof the T4-digit,
The executionof the coordinatesystem
settingdiffersas follows,by the parameter
setting.
is called up whereverthe tool post is located,
and is moved for the offset amount of the
offset number,to execute the coordinate
system setting corresponding to the selected
tool coordinate memorynumber.
(b)
By executing the T**OO command,the turret
is.called up whereverthe tool post is located,
and the offset amount cancel movementis
executed, to execute the coordinate system
setting corresponding to the selected tool
coordinate memorynumber,
(c)When turretindexingis performedby manual
operation,
Note :
operation,whenparameter#6011 DO = 1 [whenthe
tool coordinatememorynumberfollowsthe last two
digitsof T**$$I.
Coordinatesystemcannotbe set by manual
(Sequencersetting)
18
(c)
The tool nose coordinate system is always set
by the coordinate system setting.
(2)
When set at the back two digits
(#6011 DO = 1)
T**$$
-l-T
1,
L—
Offset number(Wear offset )
01 to 16/01to 49 (TooI nose R)
(Tool coordinatememorynumber)
Tool number
01 to 16/01to 49
These commandsstop the advance reading of the
control. For these M codes, M 2–digit BCDcode
and their respective decoded signals are output.
2.7.2M CODES FOR INTERNAL PROCESSING
(M 90 TO M 109)
M90 throughM109 are for internalprocessing.
Evenwhentheyare programmed,no external
outputsignal(BCDand decodedoutput)is sent.
Note: When power is applied the current M code is changed
to the M code maked wirh~.However, it is not changed by
RESET operation.
(2)
4-blockbuffering(M 93)
When M93
entersthe 4-blockbufferingmode,which
remainsuntil M92 is commandedsubsequent-
In this mode,up to 4 blocksof data
ly .
are read in advancefor subsequentopera–
tion.
time for the 4 blocksread in advanceis
longerthan the readingand processingtime
of the subsequent4 blocks,interruption
betweenblockscan be eliminated.This
functionis effectivein avoidinga shiny
streakon the workpiececausedby feed
stop betweenblocks .
t
; commandis given,the control
With programsin whichthe operation
To stop the NC controland machine,the following
codesare provided.
MOO:
MO1:
M02:
M30:
Programstop
Optionalstop
End of program
End of tape
1-blockbuffering(M92)
(3)
When M92 commandis given,
bufferingmode is cancelled,
bufferingmode is restored.
Note :
for withthe M93 function, up to two blocksnot
containingmovecommandsar-e permitted, and as
the result,up to 6 blocksmay be readin advance.
Whilethe tool radiusis
the 4-block
and the 1 block
beingcompensated
19
2. 7.3BUFFERINGFUNCTION(M93, M92)t(Cent’d)
EXAMPLE
N51M93; —
N52GO1 U.. - F.. .;
N53X.. . Z.. .;
N54
M58 M92; —Canceling4–blockadvance
Start of 4-block advance
reading.
Stop betweenblocks
for tool radiuscom
pensationor other
calculationcan be
avoided.
1
reading.
(3)Commandsof M96 and M97 become effective
from the edge in the following command
blocks .
a. GO1X.. . Z.. . F.. ;
(GO1) X..Z.. . M96
(or M97);
b.GO1X..Z.. . F.. .;
M96 (or M97);
(G 01) X...Z..;
1 From the move
around the edge
in this block,
J
From the move
aroundthe edge
in this block.
-1
2.7.5SUBROUTINEPROGRAM (M 98, M 99)
2.7.4CIRCULAR PATH MODE ONIOFF ON TOOL
RADIUS COMPENSATION (M 97, M 96)+
TheseM codesare effectivewhen the controlis
providedwith the tool nose radiuscompensation
option.
(1) ThefollowingM codesare used.
M cede
M 961Tool radius compensation circular path on
M 97
Note: When power is applied, the current M code is
changed to the M code m=ked with~
However, it is not changed by RESET operation.
(2)
With the tool radius compensation mode by
Tool radius compensation circular path off
(Execution of intersection point)
G41 to G44, the locus of the tool (center
of tool radius) for commandedworkpiece
contourlineswith the anglebetweentan–
gentslargerthan180° is in the following
two categories.
M96 mode
a
The center of the tool nose radius describes
a circular arc around the perimeter in the
contour line.
b
M97 mode
The center of the tool nose radius moves
along the locus that is formed by straight
lines shifted from the contour line by the
distanceequalto the tool radius.
Meaning
lNTFFiSELll ON
With this function,subroutineprogramswhich
havebeennumberedand storedin advanceare
calledand executedas many times as desired.
(1) ThefollowingM codesare usedfor this
function.
M code
(2)
Call of subroutine program(M98)
M98P.. . Q.. . L.. . ;
With this command,the subroutineprogram
startingwith a sequenceNo. followingQ in
the part programwith the programNo
specifiedby p is calledand is executedL
times.
However,when
I
P is omitted:
subroutineprogramfollowingthe sequence
No. Q in the main programis called.
Q is omitted:
subroutineprogramstartingat the leading
end of the programNo.specifiedby P is
called.
L is omitted:
Subroutineprogramscan be nestedup to
4 times.
End of subroutineprogram(G99)
Meaning
executionis onlyonce.
.1
I
=Q!c3:000’nO”dO’‘3)
\
—z
M 96 mode
(circular arc)
‘b
M 97 mode (calculationof
Fig. 2.8
~,t~reference pan! of lmtemacfmn.
\
intersection)
is written at the end of subroutine
;
M99
programto end it.
When this code is written, the operation returns to the block immediately following the
main block in which the subroutine program
was called after the execution of the subroutine program.
M99 P.. .;
When this is writtenat the end of a sub-
routineprogram,the operationreturnsto
the sequenceNo.
program.
(4)Simplejump command
M99 P ‘“”;
When this commandis
gram,the operationsimplyjumps to the
sequenceNo.
program.If Q is omitted,the program
simplyjumps to the leadingend of the main
program.
I
specifiedby p in the main
used in the main pro-
specifiedby Q in the main
N1 G50 XO 20 ;
N2 GOO . . . ;
EXAMPLE
Man Program
,1 ,A
, ,/
,/’,!
/’
,’
--
–>:
_,/’‘$
--
—-
‘\
\
-1
--l‘,
—’——J“-:’.
Subroutine program
t
1
1
1
‘1
\
11
,--.,
ITotlmes
One hme
2.7.6OTHER M CODES
How to use the other M codes other than
(1)
above dependsupon the machine.
the machine tool builderfs manual.
N“20 hi 99 ;
Refer
the
to
I
L
Writingmulti blocks(10 lines maximum)of
this programand executingcyclestart
make endlessoperation.
Notes :
When the programNo.specifiedby address
1.
P and the sequenceNo.specifiedby Q are
not found,alarmcode041 is displayed.
While commandL for the numberof repetitions
2.
is underexecution,the remainingnumberof
repetitionscan be displayed.For details
referto 4.3.2.2.
Thisfunctioncan be usedwhensubroutine
3.
programsare storedin the partprogram
memory.
throughNC tap-es ~r the part programmemory.
When subroutineprogramsare nestedmore
4.
than 4 times,alarmcode“042 “ is displayed.
Main programscan be commanded
Tadle 2.7 Typical
M code
M 03
M04
M 05
M 08
M 09
(2)When theseM codesare commandedin the
(3)For theseM-codecommands,the controlout-
Spindle forwa’d running
Spindle reverse running
.—.’
same blockwithmove command,execution
will, dependon the machinetool designand
construction.(Whetherthe M commands
are executedsimultaneouslywith or after
completionof move command.)
puts M 2-digitBCD codes.
Example of M codes for Machine
Meaning
Spindle stop
Coolant on
Coolant off
I
Direct switching from
M 03to M 04 cannot be done,
M 05 must be inserted
between them.
Remarks
—
2.7.7M 3-DIGIT BCD OUTPUT+
When the controlis providedwith the M 3-digit
BCD outputoption,it can commandM 3–digit
codesbetweenMOO and M999.
(1)M codesbetweenMOO and
M11O
and M999 are outputin 3-digitBCD
codes.
(2)M90 throughM109 are internalprocessing
M codes,and no BCD code for them is output.See 2. 7.2
PROCESSING.
M CODESFOR INTERNAL
M89,and between
21
27
7 M 3-DIGITBCD OUTPUTt(Cent’d)
With MOO, MO1, and M30, decodesignals
(3)
outputin additionto the BCD output.
See 2.7.1, “ M CODESFOR STOP. ”
Thespecificusagesof the M 3-digitcodes
(4)
dependson machine tool design. ‘Refer to
machine tool builder!s manual.
2.7.8HIGH-SPEEDM FUNCTION
This function is used to execute the M function at
high-speed without the need of the ending
response.
TheM code is not outputwhenthe M code is
commanded,but the M decode output is setlreset.
Thus, there is no need for the M code decode
processing and
controller.
TheM codethat performthe high-speedM
functionprocessingis presetin the parameter.
(Thereare botha settingparameterand a
resettingparameter.)
When resetting
set to hold or reset
2.7.8.11/0 Channel
(1)For decodeoutput
~. -—_
F1224~
2.7.8.2Parameters
FIN processingin the programmable
by the parameter,it
the decodingoutput.
:-”
IMD71MD6MD51MD4MD31MD2MD1
——
‘-‘7-
are
can be
MDO
(b) #6645 . . .
r?
=1224
36645
‘1:.~=x;xm----
(Example of setting)
#6644 . . .
#6645 . . .
(3) M code setting parameter for resetting the
decode output
Sets the followingparameters,the same as in the
settingparameterof (2),
(a)#6646 . . .
==1
For settingthe M code corresponding to the decodeoutput1MD4 to
MD7’
MD7MD6MD51MD4~~~
n“
l-’-m-l‘--‘--
63626160
67666564
For settingthe M codecorrespond-
ing to the decodeoutput‘MDO to
MD3’
!
1’
i;
–——
(Commanded by 2 digits)
MD3MD2i MDl MDO
m-m
I
-T-–-–..
lxx~x;xx
FIrl- ~ ~“----xx
(Commanded by 2 digits)
(b)#6647 . . .
For settingthe M codecorrespond-
ing to the decodeoutput‘MD4 to
MD7’
(1)High-speedM function
#6007D5. . . . .0:
M code settingparameterfor settingthe
(2)
decodeoutput
The 1,4code is set in the parameter corresponding
to the decode output bits.
Up to four M codes can be set in a single
parameter.
(a)#6644 . . .
t!6644
For settingthe M codecorrespond-
ing to the decodeoutput‘MDO to
MD3’
~-”--~-”~‘
Thefunctionis disabled
The functionis enabled
1:
.xxxlx~
(Commanded by 2 digits)
22
=7FD7”F===TT7”””i
#q,~
(Exampleof setting)
(4)
(a)
(b)
xxix.
‘P-,,..i
L——
#6644 . . .
#6645
Decodeoutputholdlresetsettingparameter
Sets whetherto hold or resetthe decode
outputupon reset.
#6135 DO to D7
When the decodeoutputis to be held,the
numeralscorrespondingto each bit are added
to the total.
. . . 77
(uponreset)
Xxlxx
73727170
?67574
The resultis outputto #1224.
._.—.——
1
--~---
(Commanded by 2 digits)
MD1
MD7 MD61MD5
MD4 MD3
MD2
1286432168421
MDO
2.7.8.4Example of High-speedM Function
Processing
The following are simple examples of the
high-speed M functions.
Valueof each bit whenthe decodeoutput
is to be held
(Exampjeof setting)
{M~~. . .
M. . .
{;$$:::
JM67 . . .
Set MD1 output
ResetMD1 output
Set MD4 output
ResetMD4 output
Set MD7
OUtpUt
\M77 ... Reset MD7 outpUt
When the decodeoutputis to be keptupon
reset,set the parametersas follows.
#6644 00006100
#6645 67000064
#6646 00007100
#6647 77000074
M codesettingfor setting
M codesettingfor resetting
The value of each bit corresponding to MD4
and MD7 are added to #6135,
16 + 128 = 144
144 is set in #6135.
(1) Sets the parameter (for setting, resetting).
#6644
#6645
#6646
#6647
(2)01;
M60;
M61;
M62;
M63;
M64;
M65;
M67;
M30;
(3)02;
M70;
M71;
M72;
M73;
M74;
M75;
M76 ;
h177;
M30:
63 62 61 60
67 66 65 64setting
73 72 71 70
77 76 75 74
The left programis executed.
The bitscorrespondingto #1224 DO to
D7 are set.
M60 to M67 do not wait for FIN.
If an M code is to be held,set the total
of each bit correspondingto #6135.
The valueto be held is set in #1224 at
the end of the program.
The left programis executed.
The bits correspondingto #1224 DO to
D7 are reset.
TheM codesM70 to M71 do not wait for
FIN .
codesettingfor
M
M codesettingfor
resetting
#1224 is 1001000 upon reset.
2.7.8.3Notes
Do not set the followinghl codeswhensetting
(1)
the originalM code.
.
MOO, MO1, M02, M30
When theseM codesare set,the originalM
code functionsare lost;
has the priority.
.
M90 to M99
When theseM codesare set,the M code
functionshavethe priority.
Checkthat the above-Mcodesare not found
whensettingthe M code.
(2)If an otherprocessis waitingto be completed
in the same block,it waitsfor the first
processto be completed.
(3)Do not commandtwo or more
same block.
* If executed,alarm occurs.
the high–speedM code
M codesin the
2.8preparatoryFunctions(G-FuNcTlON)
2.8.1 LIST OF GCODES
AddressG, plus up to 3 digitsspecifythe meaning of the block.Table2. 8.1 givesG codesand
theirgroups.
(1)G codesare broadlyclassifiedinto the
followingtwo types.
Meaning
ModalG-ccdeeffestiveuntil the other
G-codeG-cede of the same group is commanded.
Non-modalG-code effective only in the commanded
G-code
block.
(2)G codesin groupsfrom01 through11 are
modal.
the powerswitch,
When the controlis energizedwith
the G codesmarkedwith
➤ in Table2.8. 1 are automaticallyselected.
23
1 LIST OF G CODES(Cent’d)
2.8.
(3)
G codes of * group in the Table 2.8.1 are
non–modal.
together with the other G codes in one
block .
(4)
The modal G codes can be commandedmixedly in a block.
(5)
G codes in Class B are basic, and those in
Class O are options. The use of optional
G codes is determined by the machine tool
design.
manual,
(6)
Standard G codes can be coverted to specialG codes I by parameters.This is a
basic feature, and, when parameter #6005D7
is set to 1, standard G codes are converted
to special G code 1.
(7)
When the sDecial G code IIowtion is incor-
poratedin the control,the settingof param–
eter#6005D 7 to 1 will convertG codesto
specialG codesD.
to O will reconvertthe
ard G codes.
POSITIONING (G 00, G 06)
2.8.2
2.8.2.1Positioning (G 00)
They should not be commanded
See the machine toolbuilder’s
.
Settingthe parameter
G codesto the stand-
Along the axes specified by GOO, the ma-
(3)
chine slide moves in rapid traverse rates ,
independently of each other. The resultant
tool locus may not be a straight line, and
when working out the program , care must
be taken to avoid fouling between the tool
and the workpiece .
(4)
GOO is
When it is commanded,it remains effective
until other G codes in the 01 groupare
commanded.
(5)
For the positioningwith G 00, the pulsedistributionis startedonlyafterthe ERROR
DETECTstateis turnedon,and the program
advancesto the nextblockonlyupon the
activationof the ERRORDETECTstateafter
the completionof the pulsedistribution.
When this G code is used,therefore,the
workpieceedgesare machinedtrue,and
roundingis avoided.
(6)
Notes :
The ERRORDETECTON statemeans the
a.
decreaseof the servolag pulsesto the permissiblelevelafterthe pulsedistribution
for movecommand.
When T code is commanded,GOO shouldbe
b,
put in the T-codeblock.GOO is required
for designationof tool traverseratefor
tool offsetmotionusingT code.
a modal G code in the 01 group
(1)GOO X( U)...Z(W) . . .;
Thiscommandmovesa tool at rapidtraverse
rate to the point(X,Z) in the coordinate
systemset by the G50 commandor movesit
away by (U, W) from the presentpointfor
each axis independently.
(2)For the rapidtraverserate,as it depends
upon the machine,
builder’smanual.
EXAMPLE
X-Axis:
Z-Axis:
12 m/min
referto the machinetool
6 m/min
z
EXAMPLE
G50X150.Z1OO.;
GOO TO1O1S1OOO M03; . . .
. . . GOO for designationof traverse
ratefor tool offsetmotion
(GOO)X30.Z5.; . . . GOO can be omitted
in positioning.
E--l
P-’
-x
i
--
f’
i
5
30 DIA
[
1-
-.
~,
,/’
“1
/’
-z
Table 2.8 List of G Codes
B: Basic
O: Optional
G Code
r
G 00
r
GO1
G 02
G 03
G 04
GC6
GIO
G 22
G
--+
G 27
G 28
G29
G30Gm~G30
G31
23
Gscf~l
r
GOiI
r
—
GO1
G 02
G 03
G04~GM
GOB
G 10
G 22
G 23
G 27
G28
G 29
G31i
Special
G Code II
v
G#
v
GOI
G02~
G03Gircular interpolation CCW, (radius R designation)
1
G06
GIO
G 22
G 23
G 27
G 28
G 29
I
G31
Group
01
*
—
01
—
*-=
%T=T%-O’
G35
G=
G 37
G38
~-.;:
—
G41
G 42
G43G43
G44G44
G%
G36
G 37
G28
G39G
v
G40
G41
G 42G 42
-.
G%
G36Stored
G 37Stored stroke limit 2nd area OFFo
G28
39Stored stroke limit 3rd aea OFF
r
G40
G41
G43
G44Tool radius compensation No. 40
*
07
06
06
Function
Positioning (rapid traverse feed)B
Linear interpolation, angle programming for linear interpolationB, O
Circular interpolation CW, (radius R designation)B, O
The followingG codes for initialstatewhen
power is applied can be set by parameters.
GroupG codeParameter
01GOOor GOl
04G980rG99
03
G900r G91h6005 Do
#6005 DG
#?6005 DI
When the control is reset,whether G code
2.
of 01 group should be GOO or kept
as the
current one can be set by parameter #6005D6.
3.
Radius programming for circularinterpolation
can be made by G02 and G03 instead of G22
G23, respectively.
4.
Cornering can be programmed by GO1 instead
of Gll and G12.
5.
Initialstates of G codes of 05, 07, 08 groups
Refer to 2.8.7 Cornering.
when power is applied are determined by
their respective setting data (#6001D0, Dl,
D2).
25
2.8PREPARATORY FUNCTIONS(G-FUNCTION)(Cent’d)
Table 2.8 List of G Codes (Cent’d)
B: Basic
O: Optional
G Code; ~s~~~ll
G 50
G 92G 92
.—
G 51
G 65G65G65
G 72
G 73G 73G75;*
G 74
G 75G 75
G 76
G90
G 92
G51
G 72G 74
G 74G76
G 76G78
G 77G 20
G78IG21~01
I
Special
G Code
G,,t--
G 77
G93
G 91
G122
r
G123
GillIGill1Gill
GI12TG712~GI12I*
G 122
r
G 123G123;
G122:
~11
.—
II
--**
I
I
Group
~
Coordinate system setup
*
*
Maximum spindle revolution setup, work coordinate system setup
4—-—--—-—--—-
i Return of current display value to origin
L -—..
User macro simple call
User macro modal call
User macro modal call cancel
Mirror image by programming ON
-—
L
Mirror image by programming OFF
Finishing cycle
Stock removal in turning
Stock removal in facing
Pattern repeating
Pack drilling in Z-axis
Grooving in X-axis
Automatic threadcutting cycle
Turning cycle A
Threading cycle
L
Facing cycle B
Constant surface speed control
Constant surface speed control cancel
Feed per minute (mm/min)
—
Feed per revolution (mm/rev)
—
Absolute command
03
Incremental command
Tool registration start
Tcml registration end
Ta~r multiple beveling/roundingo
Arc multiple beveling/roundingo
—.
FunctionSection
.
-——
——.-—
Multiple repetitive cycies
--
.L-
]
Tool life control
7.
—4---B—
—-~----J—
-H..
.---c
–——-
.—. ..—
—.—
B
-—
0
~—
0
0
--0
0
I
0
0
0
0
0
I
B
&--–
o
+.— -—
B
o
0
~ showe the G codes selectedwhen the control
is poweredor reset.
Notes :
1.The followingG codes for initial state when
power is appliedcan be set by parameters.
GroupI
01IGOOor G(X~
041
03
G cede
G980r G99
G900rG91i
Parameter
I
#6005
~6
ti6005 DI
46005 Do
2.
When the controlis reset, whether G code
of 01 group should be GOO or kept as the
current one can be set by parameter #6005D6.
3.
Radius programming for circularinterpolation
can be made by G02 and G03 insteaclof G22
G23, respectively.
4.
Cornering can be programmed by GOI instead
of Gll and G12. Refer to 2.8.7 Cornering.
5.
Initialstatesof G codes of 05, 07, 08 groups
when power is applied are determined by
theirrespective setting data (#6001D0, D1 ,
D2).
2.8,2,2ErrorDetect off Positioning(G06)
EXAMPLE
(1)
G06x(u)”””‘z(w).”-;
With this commandthe positioningprocess
is identicalto that of GOO exceptfor the
followingaspects.
G06 is a non-modalG code in the * group.
a.
It is effectiveonly in the programmedblock.
EXAMPLE
GOO X.. . Z.. .;
G06x... z,. .;—
x...z.. .;—
b.
With the positioningof G06, the positioning
Move by G06
Move by GOO
pulsedis~ribution&. immediately‘startedon the completionof the pulsedistribution
for the precedingblock,aftermakingan
ERRORDETECTcheck,and the program
advancesto the nextblockafterthe comple–
tion of the pulsedistributionprocess.For
this reason,wrokpieceedgesare rounded
to the extentof servolag pulses.
Note :
TheERRORDETECTON /OFF signals
(SMZ’)are effectiveonlyfor cuttingfeeds,and
haveno influenceon the motionunderGOO and
G06.
LINEAR INTERPOLATION (G 01) 1
2.8.3
‘GO1X(U)”””Z(W).”.F(E).”0;
A tool is movedto the point(X,Z ) on a straight
line at the traverseratedesignatedby the F or E
code in the coordinatesystemset by G50
movedaway by (U, W) fromthe presentpoint.
. F or E code must be specifiedin the blockcon-
tainingthe G 01 or in the previousblock.If
not,i; causesa formaterror.
Feedratedesignatedby the F or E code is the tangentialfeedrate.
+,x
z
POSITION PROGRAMMED
1 /
\~
G50X1OO.z60.;
GOO T0202s600M03;
x35.Z5.;
@ GO1 ZO F1.;
Q
x60.FO.2;
+x
i
i
.
Angleprogrammingfor linearinterpolation
----
/
/
Executedby
linearinterpolationGO1.
/
/
With the controlequippedwith this option,
linearinterpolationcan be commandedat
specifiedangles.
With thesecommands,a linearinterpolation
will be executedby specifyingangleA in
the + directionof the Z-axisand distance
eitherin X– or Z–axisdirection.The feedrate in the tangentialdirectionis specified
by the F or E code.The rangeof angle
specifiablewithaddressA iS as fOllOWS.
%Iprogrammable Range of Angle A
Metric Input
O- *360.0i)O0
Inch Input
I
(a)
(b)
u
I
2
PRESENT TOOI POSITION
+2
27
2. 8.3LINEARINTERPOLATION(GO1) t (Cent’d)
Table 2.10
Table 2.9
SignI
A+
A–
Angle counterclockwise from +Z-axis,
Angle clockwise from
+ Z-axis,
Meaning
A -
*
.A
+sr-
.rl-py-J-y&%
START
I
EXAMPLE
~GO1 X50.A+150.FO.3;
~GO1 zO.A–180.;
POIN1
Meaning
Circular interpolation,
G 02
clockwise
-z
Circular interpolation,
G 03
counterclockwise
–Z
End point of arc on X-axis
x(u)
(Diameter value)
End point of arc on
z(w)
Z-axis
Distance fTom start wi nt of
I
arc to arc center on X-axis
(Radius value)
Distance from start point of
K
arc to arc-center on Z-axis
+x
.—
+.x EfQDPOINT
ii!=
.—
CENTER
.
‘.. -
~
. .
c)
z
~ CENTER
2
(;{1?
(;1)3
Iv
---
K
-z
START POINT
L
j
-z
50 DIP
F
I
7’Y-f+150”
)/
1I
/
.
1
/--
-7
WJ--’60
2.8.4CIRCULARINTERPOLATION(G 02, G 03)
G02(G03)X( U)...Z(W) ... 1.. . K.. . F(E) ...;
A tool is moved on the circular arc whose center is away from the present position by (I, K) .
The end point of the arc is (X, Z) in the coordinate system set by G 50 or away from the
present position by (U, W)
A tool moves along a
verse rate specified by the F or E code.
The meanings of G02, G03 and each address
are shown below .
circular arc at the tra-
U-/
Fig, 2, 9
Circularinterpolationof an arc on multiquadrant can be programmedin a singleblock.
EXAMPLE
.x
B
100 [11A
1~‘
60 DIA
.Z
Table 2.11
Arc Center
Coordinate
I
K
The abovecase can be programmedas follows.
Golz-. . F.. . ;
] G02 x60.
The feedratecommandedby the F code is a
tangentialfeedrate.
Notes :
The direction of the arc of G02 for Clockwise
1.
is defined as follows.
!!When viewing the X, Z plane in -Y direction
in the right–hand coordinate system, the tool
moves clockwise from the beginning point of
the arc.“
Therefore, the direction of rotation in the
plate (-X, Z plane) in the figure below is
presented inversely.
z-46.6120.K-19.6F.. .; \
(10000, – 2700)
100 – 60
—=20mm
2
–
J2~2 – 202.,;~
= –19.596+–19.60 mm
Notethat if the end pointis designatedin the
shadedarea,the alarm is not displayedand the
tool will continueto moveendlessly.
The end pointcoordinateshouldbe precisely
commandedwhen the circularinterpolationis
apphedto the tool nose radiuscompensation,or
the tool may not move properly.Generally,it
is recommendableto calculateup to the next
digitof leastinputincrementand countfractions over1/2 as one and disregardthe rest.
3.
When the controlis providedwith Radius
Programmingfor CircularInterpolation,ra-
dius valuecan be commandedby G02, G03
insteadof G22, G23.
EXAMPLE
G03X80,0Z15. O 1-10.0K-30. O F150;
a.
x
END
I
‘a”aatl=?oo
15.00
I
55.00
I
z
-.
.
G 03
u
2.When the end pointof arc is not designated
on the circumferencespecifiedby the radius,
the alarm is not displayedand the tool path
is as follows.
pointof arc.
/
&
The mark o indicatesthe end
v
Y42
*--
W/c
CENTER
o--
-0
/
P
b.G03U40. O W-40. O 1-10.0K-30. O F150 :
x
END
POINT
–40 {Jo
40.00
:,500
20.00
– 10.0(1
z
20.00
CENTER_~-
–30 lx)
15 0[1
&
2.8.5DWELL (G 04)
(1)G04U(P). . .;
This commandinterrupts feed for the length
of time designated by the address U or P.
(2)Dwellis programmedas an independent
block .
29
2.8, 5 DWELL(G04)(Cent’d)
Table 2, 12
(3)Themaximumlengthof time whichcan be
designatedwith addressU or P is as fol-
lows .
Dwell time:0.001 to 9999.99seconds
Dwelltime is not influencedby input/output
increment.
EXAMPLE:
G04U3.5...
G04P3500. . .
Notes :
1.
G04 is a non–modalG code.
3. 5-seconddwell
3. 5-seconddwell
2.The countingof dwelltime is startedfrom
the instantthe controlentersthe ERROR
DETECTON stateupon completionof the
move commandblockbeforeG04.
Therefore,with G04UO; , the control
advancesto the nextblockimmediately
afterdetectingthe ERRORDETECTON
state.
EXAMPLE
GO1 W-1.F25;
G04UO.2;
GO1 W-1.;
With the aboveprogram,chip cuttingfeed
is obtained.
+x
— 1 mm feed
— O. 2 seconddwelltime
— 1 mm feed
Meaning
PFor specifying tool offset No.
For changing the tcol offset value to the
x
zspecified value.
For adding the specified value to the original
u
wtool offset values.
For changing the tool radius to the specified
R
vai ue.
The offsetvaluesfor whichno addressis
programmedare not changed.
EXAMPLE
G1O P16x32.5wO.05;
-rT7————
~ 0.05 mm is addedto
Z- axis value
LContentsof tool offsetNo.16
is changed
(2)
The aboveformatis usedto makeoffset
valuetapes,
OffsetM-emery at once.
The tapeformatis as follows.
/
Label
and to storethe valuesin
\
I
02 DWELL
1mm
h
—.—
2. 8.6 TOOL OFFSET VALUE (G 10)+
With G 10 command,
set and corrected.
(1)G1O P-. . X(U)..Z(W) C..R...;
With this command,tool offsetvaluesare
set or correctedin partprograms.
tool offsetvaluescan be
30
Q
0;
GIOP... X...Z...R. . . ;
GIOP... X...Z...R...;
GIO P...X.. . Z.. .R... ;
~
/
~
2.8.7CORNERING (G 11, G @ ‘
(1)Beveling(Gil)
Gll
X( U)...K...
Z(W) . . . 1.. .
{
GllX( U)...K..,F(E)...;
END
+X
I
K*
POINT
1
Beveling for X-axis
K-K+
N
45”
m
START POINT
F(E) . . .;
Ux
2
“ER)
(DIAMEI
Table 2.13
Thiscommandremovesthe sharpcornerof
workpiece.
specifiedsimultaneouslyin a block.
Meaningof each addressis shownbelow.
GllZ(W)... 1... F(E)... ;
END POINT
I+
I–
/
@7
AddressesX and Z cannotbe
Beveling for Z-axis
,,50
POINT
START
w
I f
L
Bevellng Value
[
~Bevellng Dlrecllon
Bevelingvalues(K and I) are limitedwithin
the followingvalues.
The commandexceedingthe abovevaluecauses
formaterror.
GOO X30.ZO ;
~
@I (Gil)x80. K-7.;I
GllZ-20.18.F30;
I
7,20.
DIA ‘~
O
8.
+x
lo
30 DIA
-z
I
Fig. 2.10
B
JZ
L-
(2)Rounding(G12)
Thiscommandperformsthe roundingof the
corner.
ifiedsimultaneouslyin a block.The corner
is formed
eachaddressis shownbelow.
Bevellng Value (Raalus Value)
—
Beve, ing Dlrectlon
AddressesX and Z cannotbe spec -
ZLS a quarter–round.
Meaningof
31
2. 8.7
CORNERING(Gil,G12)t(Cent’d)
Table 2.14
Rounding for X axisRounding for Z axis
G12 X( U)...K.. . F(E). ., ;
K-K-
END
POINT>
-x
I
L.-...-.,
K’
L-,,”,,,,
T-_
\
m
START ~OINr
qcu~d,r,g c red w
u
~
,,!”.
x
[DIAMETER)
Roundingvalues( K and I) are limitedwithinNotes :
the followingvalues.
1.
Glland G12 are modal G codesin the A group .
Theyremaineffectiveuntil otherG codesin
]Kl<lU/21
The commandexceedingthe abovevalue
causesformaterror.
GOO X20. ZO;
,Ill<lwl
the groupA are commanded.
2.
Glland G12 are for one axis only.If they
are commandedfor both axes in the same
block,they constitutea formaterror.
EXAMPLE
G12X.. . W.. . K.. . ;
G12 Z(W)...K...F(E)...;
END
POINT
1+
I–
z
/
iv
b
START
Po ,N?
K*
T___,Our,lr,g ,Ja,”e
T
Error“ 050”
:m
In the G 10 or G
3.
12 modes,no blockwithout
I and K nor blockin whichI and K are O
can be commanded.If such a blockis commanded,correcttool movementcan not be
25.
I
.x
1
+7
6
.9-
I “
70 DIA
f
.-.
9
20 DIA
assured.
Tool radius compensation functional”is effec-
4.
tive to the blocks containing G 11 or G 12.
In the finishform commandsG70 throughG 73
5.
of the specialcannedcycle t, blockscontain–
ing Gllor G12 can be commanded.
6.
GO1 code can be used insteadof Gllto specify identicalbeveling.
GO1
X( U)...K.. .
z(w). . . 1$. .
I
7.
GO1 codecan be usedinsteadof G12 to speci-
fy rounding.
However,in this case,R must
I
F(E)..;
J
be used insteadof I and K.
Gol~ X( U)...R...‘F(E)
Z(W) ...R, ..;““”;
i
32
2.8.8INCHIMETRIC DESIGNATION BY G CODE
(G 20, G 21)+
Unit of measurement(metricor inch)of input
data is selectivelyspecifiedby the followingG
codes.
b.
In principle,
tion when currentpositiondisplay(external) is useci.
The tool offsetvaluesare processeddiffer-
4.
entlyin the G20 mode and the G21 mode.
G 20/G21 must be commandedaftermodifying
the tool offsetvalues.
make the displayresetopera–
TheseG codesare programmedat the leading
end of a blockof its own.
are commanded,the unitsof all the following
motionsare than ged.
Subsequentpartprograms
a.
Tool offsetvalues
b.
part of settingsand parameters
c.
Partof manualmovements
d.
Displays
e.
Notes :
1.When G20 or G 21 is commanded,the setting
of inch/metricselectionis changed.
fore,the stateof G20/G21at the time of
powerapplicationdependson the setting
by parameter#6001D0.
EXAMPLE
ER
CR
01234;
G20;
1
If theseG codes
There-
Inch inputdesignation
Stored Offset
Values(Inch)
15000
Processing in G 20 I Processing in G 21
4
1,5000 in.
I
15.000 mm
(Metric)
2,8.9RADIUS PROGRAMMING FOR CIRCULAR iNTERPOLATION (G 22, G 23)+
In programming,circularinterpolation(G02,G03) ,
the controlrequiresthe data of the arc-center
coordinates.
the addressesI and K.
(1)In programmingof G2.2 or G23, the control
automaticallycalculatesthe arc centercoor–
dinates(1 , K) from the radiusvaluedesig-
natedby the addressR and performscircular
interpolation.
G22
( G23)
A tool movesalong the circulararc whose
centeris radiusR away from the present
position.The end pointof arc is at coor–
dinates(x,
the presentpositionby (U,W) . Toolmoves
alongthe circulararc at feedratedesignated
by F code.
Normally,theyare givenby using
X( IJ) . . . Z(W) . . . R.. . F(E). . .;
1
Z) set by G50 or is awayfrom
(2)The meaningsof G22, G23 and each address
are shownbelow.
T
2.
When G 20 /G 21 selectionis commandedin the
program,take the followingprocedurebeforehand.
Cancelworkcoordinatesystem( G50T ) , if
a.
used.
Canceltool positionoffset,and tool radius
b.
compensation(G41 – G44) .
Takethe followingprocedureafterthe com-
3.
mand of G20/G21selection.
a. Programabsolutezero pointfor all axes
beforemove command(G50) .
(3)Designaticmof radiusvalueR
RadiusvalueR is commandedby incremental
valuewith a signof radiusprogramming.
In this case,
When radiusvalueR > 0, an arc,describing
less than180°,and when R < 0, an arc
describin~;more than180° are specified.
33
2. 8.9RADIUSPROGRAMMINGFOR CIRCULAR
INTERPOLATION(G22, G23)t(Cent’d))
Table 2, 15
Meaning
.I
Circular interpolation by radius for
G 22
Cw
Circular interpolation by radius for
G 23
Ccw
x
\~(,z
...
G23
L!4_
-z
Notes :
1.
G22
and G23 codesare modal.‘Theyare kept
until otherG code of 01 groupis commanded.
2.
In the
R is not containedor R is designatedas zero
shouldnot be commanded.Radiuscannotbe
designatedby I and K .
3.
When R is varied with both start and end
points fixed , the tool willmove along the
following circular arc .
G22 or G23 mode,the blockin which
The X-coordinate of the end of the i+ ~
x (u)
arc (Diametervalue)
I
The Z-coordinate of the end of the ~
=F--“---:
Distance from the start point of arc ‘
R
‘-t
to arc center
(Incremental value with sign)
START
POINT
.--
ARC
CENTER
\v
END
POINT
u
X2
z
R
START
POINT
—,
!
~
END POl’-
~
l:w.~po.
+
Fig. 2.11
&
I
Fig. 2.12
EXAMPLE
GO1 X40.Z-10.F20;
$,G02 I(X40.)z-52.5R30.(F20);]
‘
--&7
z
Therefore,in the followingcase,the arc cen–
ter does not
(alarms “031,” “034”).
R < (Distancebetweenstart pointand end point)
Toolnoseradiuscompensationis effective
4.
for the blockcontainingG22 or G23.
5.
TheblockcontainingG22 or 23 can be
designatedin finishingshapecommandsof
specialcannedcycles(G70 to G73) .
6.
Whenthe controlis providedwithradiuspro-
grammingoption , cir’cularinterpolationby
radius(R)programmingcan be made by G02,
G03 insteadof G22,G23.
2.8.10 REFERENCE POINT CHECK (G 27)
(1)G27X(u) . . .Z(W) . . .;
With this command,the tool is positionedto
the absolutecoordinatepoint( X , Z ) or incrementalcoordinatepoint(U, W) by moving
alongthe two axes simultaneously,and then,
the positionis checkedfor conformancewith
the referencepoint.
no commandis given,positioningand check–
ing are not executed.
K:GIN
exist which causes data error
2
For the axisfor which
END
POINT ,/’
ARC CENTER
/
/’
‘ R 3U
.Z
Fig, 2, 13
(2)If the positionis the referencepoint,the
return–to–referencelamp lights.Theposi–
tion is the referencepointin all the axial
directionsspecified,the automaticoperation
is continuedfurther.
the referencepointevenalongone axis,
this constitutesthe return-position–error,
and the automaticoperationis interrupted.
(Cyclestartlamp goes off. )
Notes :
The referencepointis an fixedpointon the
1.
machinetool to whichthe tool can returnby
the motionunderthe controlof the automatic
referencepointreturnor G28 automaticref–
erencepointreturnfunction.
“AutomaticReferencePointReturn.“
2.If G27 is commandedin the tool positionoffset mode,the tool returnsto the position
displacedfrom the referencepointby the
tool offsetvalue.Positioningcannot be made
at the referencepoint.Beforecommanding
G27, cancelthe tool offsetmode.
EXAMPLE
a.
Cancelingtool offsetin the blockprecedingG27.
TEIE]OO;
G27U.. . W.. .;
b.
Cancelingin the blockcontainingG 27.
G27U.. . W.. . TGT.;OO ;
The mirrorimagefunctionis effectivewith the
3,
motioncommandedby G27.To avoidthe
returnpositionerror,commandG 27 in the
G 69 mode( Oppositetool postmirrorimage
off) .
AUTOMATIC RETURN TO REFERENCE POINT
2.8.11
(G 28)
(1)G28X(U)”””z(w). . .;
With this command,the tool can be brought
back to the reference point automatically
after passing througkl an interim point. In
other words, the tool positions to the com-
mandedabsolute coordinate position (X , Z )
or incremental position (U, W) by moving
simultaneously along the two axes, and then
automatically returns to the reference point
by the reference point return function.
The specified point (X, Z) or (U, W) is
knownas “INTERIMPOSITIONINGPOINT ,“
or “INTERIivl POINT. “
If the positionis not
See 6.2.1,
INTERIU POSITIONING POINTPOINT
-x
,,AR:T’OYcd+---
POINTz
.-”
i’
\i”
z
REFERENCE
RETURN TO REFERENCE
x
—+Z
4+
Fig, 2.14
The tool doesnot move alongthe axis for
whichinstructionis omitted.
(2)
When the returnto referencemotionis com–
pleted,ReferencePointReturnlamp for the
returnedaxis lights.When the tool returns
to the referencepointin both axes,the
automaticoperationis resumed.
(3)
The series of RETURNTO REFERENCE
motions are as follows, With initialpower
application, the return motions to the
reference point are as shown below in the
low-speed mode as shownbelow.
APPROACH SPEED 1
,pEE,r-U::j::TER
SPEED REDUCTION LI!vIIT SVV
Fig, 2.15
Thereafter, the RETURNTO REFERENCE
POINTmotion is in rapid traverse as under
the commandof GOO.
RAPID TRAVERSE
I
Fig. 2.16
(4)However,when low traverse speed is speci–
fied by parameter #6010D 5 set to 1, the
same law motion speed as in the 1st time is
obtaineci.
I
REFERENCE
POINT
35
2.8.11AUTOMATICRETURNTO REFERENCE
POINT(G28)(Cent’d)
Notes :
1. For parameter setting and other details of
the low traverse speed return motion shown
in Fig. 2.8.11.2, refer to 5.2.1 Manual Return to Reference Point.
2.
The starting point for RETURNTO REFERENCEPOINTmotion must be in the area
2.8.11.3 can
shown in Fig. 2.8.11.4.
Fig.
be started from any position.
RETURN
DIRECTION
(2)
When G.29 is used,considerationon the distancebetweenpointsB and C is unnecessary
in programming.
tal instructionsare used,this functionis
usefulto returnthe tool to the originalco–
ordinatesystemafterreturningto the
referencezero.
MotionsC + B and B + D are made simul-
(3)
taneouslyalongthe two axes in rapidtraverse.However,the tool will not move in
the directionfor whichinstructionis omitted.
(4)
WhereG28 is programmedseveraltimes,
Especiallywhen incremen-
the pointB creat~dby the latestG28 in-
structionis effectivefor the motionby G 29.
~“’s
3.BeforewritingG28 in the program,cancel
the tool positionoffsetas shownbelow .
a.Cancelingin the precedingblock
TU1100;
G28X.. .Z.. .:
b.Cancelingin the blockcontaingG28
G28X.. . Z.. . TE~OO;
4.
When G 28 is writtenwith the tool position
offsetor tool radiuscompensationon, the
offsetor compensationis automaticallycancelled.
2,8.12RETURN FROM REFERENCE POINT (G 29)
(1)With this function,the tool is positionedto
a specifiedpointvia the interimpoint,after
it has been oncereturnedto the reference
zero pointby the AUTOMATICRETURNTO
REFERENCEZERO COMMAND(G28) .
EXAMPLE(absoluteinput)
Coordinatesof interim
thesetwo blocks.
N20G28X1O.z20.
N25G28x30.; —
N26G29x-40.z-50.;
I
GOO X30.Z20.
u
pointis equivalentto
;—G.20. )
(30.20. )
l--r
II
‘+--
GOO X-40.Z-50.;
Notes :
CommandingG 29 withoutthe executionof
1.
G28 afterturningon the controlconstitutes
an error“059. “
2.In principle,
grammingG28 or G29.If theyare programmed while offsetis effective,the interim
pointB will be offset,and the tool will pass
pointB’.
canceltool offsetbeforepro-
‘z
G28X.. .Z.. .:Point A-+B+C
—“
PointB
G29X..Z.. .;
PointD
[REFERENCE ZERO POINT,
~
-&
i
.4’.4
(referencezero point)
PointC+B+D
RETURN TO
REFERENCE ZERO
INTERIL! POINT
Fig, 2.17
3.CommandingG29 in the TOOLRADIUSCOM-
PENSATIONmode(G40 - G44)or in CANNED
CYCLES(G70 - G76,G90, G92 and G94) constitutesan error.
EXAMPLE
N50T0300;
N51G28u80.w20.;
N52T0400;
N53G29u-80.w40.;
c (REFERENCE
ZERO POINT)
+
,/
/’
/
,0”
,/
-x
+Z
~L~l-
%--l
B /“
\
\
\
\\
\
\
\\
ID
40
2.8.13 2ND REFERENCE POINT RETURN (G 30)+
(1)G30X( U)...Z(W) . . .;
EXAMPL12
G30U-40.W30;
T-],,,,/-~~E:
INTERIM POINT
TO 2N0 REFEPENCE
POINT
PARAMETER t 6613
Notes :
BeforecommandingG 30, afterthe energiza-
1.
tion of the control,G28 or MANUALRETURN
TO REFERENCEPOINTmust be executed.
2.
For the 2rld REFERENCEPOINTRETURN
motion,thereis no area from wherereturning is impossible,
and the tool can be return
from any position.
3.
The same notes3.
and 4. of (5)for2.8.11
AutomaticReturnto ReferencePointapply
to G30 command.
4. When G29 is commandedafter G 30, the tool
moves via the interim point specified by G30
to the position specified by G 29. However,
the interim point is renewed only in the axis
specified by G30.
POINT
With this command,the tool firstmovesto
an interimpositioningpoint(X,Z) or (U,
W) in two axial directionssimultaneously,
and then,movesto the 2nd referencepoint.
The tool does not movealongthe axis for
whichno coordinatepositionis specified.
z
INTERIM
POINT
!+
/
/
2ND REFERENCE
POINT
Fig. 2.18
(2)The 2nd reference point is specified in
advance in terms of the distance from the
1st reference point commandedby G28, by
parameters#6612 and #6613.
2.8.14 SKIP FUNCTION (G 31)+
(1)
(2)
a.
X( U)...Z(W) . . . (F(E)...);
G31
With this command,a speciallinearinter–
polationis executed.Duringthe interpolationmovementunderthis instruction,the
tool interruptsthe interpolationmotion
immediately,and proceedsto the nextblock,
whena skip signalis received.
The motionafterthe receiptof a skipsignal
varieswith the instructionof the next
block.
When the next blockis programmedin incrementalvalues :
The tool movesincrementallyin accordance
with the nextblockfrom the pointwhere
the interpolationis interrupted.
37
2, 8.14SKIP FUNCTION(G31)t(Cent’d)
EXAMPLE
G31W120.;
GO1 u1OO.;
ACTUAL
MOTION
x
~z
b.
When the nextblockis programmedin absolute valuesonlyfor one axis:
The tool movesto the specifiedcoordinate
positionin the specifiedaxis.It remains
at the positionwherethe skipsignalis re–
ceived,if axis is not specified.
EXAMPLE
G31Z400.;
GO1 X1OO.;
,-+:J
1~~
SKIP
SIGNAL ON
ACTUAL
x
L-
MOTION
z
4’
SKIP SIGNAL ON
/
COMMAND1
.— --
4
COMMAND ~
~100 DIA
--—-
400
--l
G31 is a non-modal G code.
(3)
When no skip signal is received during the
execution of the block containing G 31, the
tool stops at the end of the block, and alarm
“087” is displayed.
(4)
The feedrate for blocks containing G 31 are
set in the following two methods, selectively
,50
I
v
specified by parameter #6019D 4.
a.
Designation by F in the same way as with
normal programs .
Presetting of feedrates by parameter #6232.
b
(5)
When a skip signal is received, the coordinate
valuesat that momentare automaticallystored
as parameterdata.
#6568 for storingX coordinatevalue
#656 9 for storingZ coordinatevalue
Thesedata can be usedas system’variables
in user macros.
Notes :
1.
When parameter#6004D0 is set to 1, the pro-
gram is advancedto the nextblockautomaticallyevenwhen no skipsignal. is received
duringthe executionof the blockof G31.
2.
BeforeprogrammingG31, be sure to program
G40 for cancelingTOOLRADIUSCOMPENSATION.
alarm“024. “
3.
CommandingG31 with skip signalON advances
the programto the next ~loc~withoutexecuting
the currentblock.
Failureto do thisinitiates
When the next blockis programmedin abso-
c.
lute valuesalongtwo axes :
The tool movesto the commandedposition
from the pointat whicha skip signalis
received.
. FeedrateOverride
o FeedHold Operation
. SingleBlockOperation
The G 32 commandshouldnot be commanded
in G98 mode.
In DryRun mode, the tool moves at Jog feed-
rate.
cutting.
stops as feedhold and will not permit con-
If commanded,the commandedblock
i
&‘!
—
—
0.0 Regardedas 100%
— .Z
(a)
Pipe Joint
(6) Allowancefor lead error(61,6 2)
+x
1
tJ-#--
—
+Z
i
Fig. 2.20
61 and 6 z are obtainedapproximatelyfrom the
followingequation.
Table 2.18
Equation
L (mm): Lead of thread
S(r/min): Spindle speed
K: Constent
(Normal value: 33)
a ( –): Accuracy of thread
_ AL.Lead error
—
1-
In: Natural logarithm
(Icg e)
2.8.16
With
two or more threadsper lead can be machined
withoutshiftingthe startingpoint.In thread
cutting,the tool feedis startedin phasewith a
startpointpulse( 1 pulse /revolution)generated
by a pulsegeneratorinstalledon the spindleto
controlthe startingpointof threadalwaysat the
same positionaroundthe workpiececircumference.
aftercuttinga threadby controllingthe starting
pointby the startingpointpulse,anotherthread
is cut by startingthe cuttingfeed at an angular
positionof the spindlewhichis displacedfrom
the startingpulsepositionby a presetangle.
MULTI -S,TART THREAD CUTTING (G 32)’
this function,multi–startthreadscontaining
With the multi-startthreadcuttingfunction,
LEAD
m
a
(ln~ – 1)
EXAMPLE
11501/100
2.913.61
Leadof threadL = 3.0 mm
Spindlespeed
Threadcuttinga = 1/100
61>
_3. ox500
—
60.K
~=
62>
60. K
1/1501/200
4.01
S = 500 rjrnin
x3.61=3. Omm
3.0X500=0p,qmm
60. K“
1/2501/300
4.29; 4.52
4.70
Two Start Thread
Fig. 2.21
(1)
G32X((J) . . . Z(W) . . . F(E) . . . B.. .;
With this command,the tool cuts a thread
startingat an angularpositionwhichis
displacedfrom the positioncorresponding
to the startingpulseby an anglespecified
by B, to X(U)or Z(W)point,at a lead
specifiedby F Or E code.
(2)
The data specifiedby addressB in the
multi–startthreadcuttingfunctionis
as follows.
Leastinputincrement:O. 001 deg.
Programmablerange:O s B s 360.000
When decimalpointinputis used,B 1.=ldeg.
The B code is non-modal,and is effective
only in the programmedblock.
41
2.8.16MULTI-START
THREADCUTTING(G32)t
(Cent’d)
(3)Numberof starts
In principle, the
the workpiececircumferencesh&jddivide
the circumferenceinto equalportions.
and B code
threadstartingpointson
EXAMPLE
G32 W“”.
G32 W.”’
B90
Continuous
tingcannot
threadcut-
be performed
becauseof feedholdat
this block.
EXAMPLE: Two-startThread
2START THREAD
START:NG POINT
@&@
1S- n-READ NO 8
21,: ‘1PEA2E180
CO MtJAh D
3-START TbREACI
STARTING PO NT
1ST ‘H REAC
2ND THRE/t2 6’20
3RD T}it?EA3 E240
NC e1ST T-IREAD hO B
c c 1.1b>’-.h 2
Fig. 2, 22
4-START THREAD
STARTING POINT
2N0 TH5EAD B90
3 R13THREAD 3180
4 T+ THREAD B270
COMI.lANG
Notes :
1.Sincethe angularpositiondetectionpulses
(4096 pulses/rev.) generatedfrom the spin-
dle pulsegeneratoris used to definethe
angularpositionof the spindlewith respect
to the startingpointas controlledby the B
command,the leastdetectableincrementis
360°/4096pulses~, O. 08790/pulse.
From the positioncommandedby B codes,
an errorup to fl pulsemay occur.
2.The angularpositionfrom the startingpulse
can be specifiedin bothforwardand reverse
directionsby BO - B 360. commands.
When B commandis made to specify angles
3.
outside the permissible range (O - 360.000) ,
alarm “062” is displayed,
If multi-start thread cutting B is speci-
fied, continuous thread cutting cannot be
executed.
GOO U.. .;
G32W.. . F.-.
GOO U.. .;
w.. .;
u.. .;
G32W.. .;
GOO U.. .;
G32W.. . B180
GOO U.. .;
w.. .;
u“””;
G32W.. . B180.;
1
~ Threadingof partI@)
1
2.8.17 VARIABLE LEAD THREAD CUTTING+
G34X( U)...z(w). . . K..F(E) -$”;
(1)
With this command,variablelead screwsare
controlledwith the increaseor decreaseof
lead per revolutionspecifiedby addressK.
VARIABLE LEAD SCREW
Fig. 2.23
VariableLead Threadcutting
(3)Confirmationcalculationfor K commandof
variablelead threadcutting.
a.K commandis restrictedin the following
conditions.
Feedrateat end pointmust not exceed
(i)
programmablerange.
500 mrfl/rev(metricoutput)or 50 in
rev(inchoutput)
(ii)
Feedrateat end pointmust not be minus
value.
(iii)
Accumulatedvalueof movementdue to
lead variationmust not exceed4194.303
mm (metricoutput)or 419.4303in (inch
output).
(iv)
Feedratechangecorres~ondin~to lead
variationmust not exceed5, 400 mm /rein
(metricoutput)or 540 in /mm (inchoutput
The rangeof K programmablefor variable
(2)
lead screwsis as follows.
Leastinputincrement:
0.0001 mm/rev.
(MetricInput)
0.000001in./rev.
(InchInput)
Programmablerange:
The highestfeedrateis withinthe maximum
a.
programmablefeedraterange( 500 mm/rev
(metric)or 50 in/rev.(inch))
The total displacementresultingfrom changes
b.
in lead is withinthe following.
4194.303mm (metricoutput)
419.4303in.
Feedratechangecorrespondingto lead
c.
(inchoutput)
variationmust not exceed5, 400 mm /rein
(metricoutput)or 540 inJmm (inchoutput).
Leadvalueshouldnot be minus value.
d.
Notes :
When variablelead threadsare cut by continu-
1.
ous blockprograms,commandpulsesare
interrupted at blockjunctions.
If K commandsexceedthe permissiblerange,
2.
alarm (1060!!” will be displayed.
When G 34 commandis executedin the Dry
3.
Run mode,the toolmovesonly at the speed
specifiedby the manualcontinuousfeedrate
command,if parameterSCRDRN( #6019 BIT5)
is set to 1.
When parameter
4.
!11oIN!!( #6006D5)is set to
1, least incrementfor K commandsis 0.001
mm/revor O. 0001 in./rev.
CommandingaddressB in G34 blockcauses
5.
alarm11(360.II
b.Thecontrolchecksthe restrictiondescribed
aboveusingthe followingequation.
F:
Fixedlead command(mm /rev or in,f
rev)
K:
Variablelead command(mm/revor
in./rev )
Distancebetweenstartand end points
w:
on Z–axis(mm or inch) .
For facingscrew,distanceis specified
as U on X-axis.
Spindlespeed(rev/rein)
s:
Spindlespeedfor movementbetween
N:
startand end points(rev)
-(F+$)+ (F +*)2+2. K.W
N=
i
K
Equaticmfor limit in a. (i)
(i)
F + ~ + KN S 500.000mm/revor
50.0000in/rev
Equaticmfor limit in a. (ii)
(ii)
(F+~-)2+2Kw>I)
(iii)
Equaticmfor limit in a. (iii)
~KN2S 4194, 303 mm or
419,4303in
Equaticlnfor limit in a. (iv)
(iv)
. K.NS 5,400 mm/min or 540 in/rein
&
43
2.8.18 STORED STROKE LIMIT (G 36-G 39)+
Thisfunctionis for preventingthe entryof the
tool into the prohibitedarea, in bothautomatic
operationmode and manualoperationmode,to
securesaferoperation.
hibitedareascan be set up as shownbelow.
2ND PROHIBITED AREA,
(BY G36)
I/
/
INSIDE OR
OUTSIDE
PROHIBITION
c1
I)
-x
I
4+---‘z
Setting1st prohibitedarea
(1)
Set + side boundaryA and - side boundary
a.
B by parameter.
The area outsidethe rangebetweenpoints
b.
B is prohibited.
Thisarea can not be specifiedby part
c.
programs.
(2)
Setting2nd prohibitedarea
Set+ side boundaryC and - side boundary
a.
D by the settingfunction.
Selectivelydesignatethe insideor the out-
b.
side of the area betweenpointsC and E by
parameter#6007D0.
Threetypesof pro–
1ST PROHIBITED AREA
(BY PARAMETER)
OLTSIDE PROHIBITION
c
INSIDE OR OUTSIDE PROHIBITION
~
P
3RD PROHIBITED
AREA (BY G 38)
Fig. 2.25
E
G36U.. . W..1.. . K.. .;
z=
coordinatecoordinate
The area checkfunctionis turnedoff by a
singlecode blockG37; .
Setting3rd prohibitedarea
(3)
Set up + side boundarypointE and - side
a.
boundarypointF by the settingfunction.
.4
A
Selectivelydesignatethe insideor the out-
b.
side of the area betweenpointsE and F by
parameter#6007D 1.
=
In additionto the methodby the s’etting
c.
function,the followinginstructioncan be
used to set a prohibitedarea,and to turn
on the areacheckfunctionalso.
G38U.. . W..1.. . K.. .;
Y--r-
PointE
coordinatecoordinate
The area checkfunctionis turnedoff by a
singlecode blockG39; .
PointF
Table 2.19 Parameters and Settings for
Setting Prohibited Area
\
Ist
Prohibited
Area
Point Az 66m
Point B
X axis
~%06
Z axis
z 66m
8&137
Division
—
Parameter
=
In additionto the methodby the setting
c.
function,the followinginstructioncan be
used to set a prohibitedarea,and to turn
on the area checkfunctionalso.
44
(4)
Coordinatesystemfor area setting
The abovePointsA throughG are all set in
absolutevalueson the machinecoordinate
system(MACHINE).
is writtenas the distancefrom the ( lst)
referencepoint( 1 = least output(move)increment).
becomeeffectiveunlessthe manual or automatic RETURNTO REFERENCEZERO is ex–
ecutedonce afterthe energizationof the
control.
Therefore,this functionwill not
Thatis, the position
(5)Effective-ineffectiveselectionof prohibited
are a
With the following setting, the 2nd and the
3rd prohibited areas are selectively made
effective and ineffective.
c
Setting
~6001 DI
When G36 throughG39 are commanded,these
settingdata are automaticallyrewritten.
Therefore,the ON or OFF stateultimately
specifiedby G code commandsor setting
functionbecomeseffective.
hibitedarea is alwaysin the CHECKON
mode.
(6)Startingarea check
When the tool is returnedto the reference
pointoncemanuallyor automaticallyafter
the energizationof the control,the area
checkfunctionis startedimmediately.
Therefore,if the referencepointis in the
prohibitedarea,immediately,STROKE
LIMITERRORwill be caused.In
this case,turnoff the area checkfunction,
and changethe data.
(7)Storedstrokelimit error
the tool enters the prohibited area,
When
it stops just inside the boundaryline, and
the control enters STOREDSTROKELIMIT
ERRORstate.
only be movedmanuallyin the returndirec-
tion.
I
2nd prohibited area check OFF
o
1
2nd prohibited area check ON
0
3rd prohibited area check
1
3rd prohibited area check ON
In this case, the tool can
Meaning
The1st pro-
OFF
EXAMPLE
1STPROHI131TEDAREA
B . D (-11000, -100’00)
Inside/Outside
F
i:DAREA(NISIDE)
10,-8000)
E(-4000 6500)
3RDPROHIBITEDAREA(INSIDE)
ir
7000, -9000)
7-///////////////////////
—<_. WORKPIECE
Table 2.20
Pararnetar/
Setting
~6007 DO
a6007 D,
~65rXI
6501
+
=s
:6502~–11000
#6503
+x
1
I
/
/
/
/
/
/
/
/
/
/h.
Contents
–
–6000
–10000
A (2003, 10CO) )
+Z
REFERENCE
POINT
CENTER
o
o
5000
c
)
Displayingremainingdistance
(8
With this function,the distancebetweenthe
currenttool positionand the boundaryof the
prohibitedarea in the X and Z directions
are displayedon the CRT . Referto 4.3.4.6.
“ StoredStrokeLimit .“
Notes :
The pointson the boundaryline in both
1.
axes are includedin the prohibitedarea.
2.Two prohibitedareascan be set with partial
overlapping.
In the MACHINELOCKON mode,AREA
3.
CHECKfunctionis not effective.
Third Area
First Area
~L
e;
#e601
?6606
+6607
1000
–11000
–ICQOO
B
“)
45
2 8.19 TOOL NOSE RADIUS COMPENSATION
(G 40 THROUGH G 44)
VIRTJAL
TIP NOSE
Because
a deviationbetweenthe desiredcurveand the
actualcurveproduced.
are not enoughfor taperand circularcuttings.
The tool nose radiuscompensationoptionresolves
the problemof nose radius.
(1)
a.
of a nose radiusof lathetools,thereis
Therefore,tool offsets
See Fig.2.26.
m—--+
CENTER
PROGRAtiMEDCIJTTING CONTOUR,
WITH TOOL NOSE RADIUS
COMPENSATION
Fig. 2.26
Tool
nose radiusvalues
Radiusvaluestorage
Tool nose radiusvaluemust be writtenin the
storagebeforethe tool noseradiuscompensationis commanded.
can be writtenin the storagedependsupon
the machine.
T 3-digit:9 sets
T 4-digit:
Referto 2.6.2, “
16 or 50 sets
ToolOffsetMemory+ .“
j‘TOOL NOSER
\
VIRTUAL
TOOL NOSE
Numberof pairsthat
ALL ROUND
INSERT
Fig. 2.27
For the writing
nose radiuscompensation,referto Fig .
4.3.5Displayingand WritingTool Offset
Data.
(2)T codedesignation
The T codefor tool nose radiuscompensation
a.
must be programmedwith sign(+ or -) .
The addresscharacteris R .
of radiusvaluesfor tool
Tf ~n~’~ (In the case of T 4-digit)
l--T-l-
1-
Offsetnumberfor tool position
offsetand tool nose radius
compensation
L
~Directionof tool nose radius
ll+l!. . .
rl_ll. . .
Rightsideviewedin the direction
of tool travel
Leftside viewedin the direction
of tool travel
““1’-“
Tool number
compensation
..,1. ,,
b.
Rangeof tool nose radiusvalues
Radiusvaluecan be set withinthe following
range.
Metric
Inch
i
o *99.999Io *9.9999
c.Settingof tool nose radiusvalues
Radiusvalueof tool nosemust be set with-
out signs.
‘x-lfiii24iiL
Fig. 2.28
b . When a tool is used for turning and for fac-
ing , as the direction of tool motion changes ,
the correct direction of compensation should
be programmedwith sign of T code .
q,~~.
,X
—
*
Fig. 2.29
s,~~
CO!b)PEhSATION (T ~ ‘
LEFT SIDE
COMPENSATIONT
—-z
The direction of compensation is changed
from + to – or - to + during program execution.
be necessarily programmedto cancel the
tool nose radius compensation.
(3)
G code designation (G40 to G44)
a.
G code of tool nose radius compensation
One of G41,G42,G43 and G44 and T code
shouldbe programmedbeforethe execution
of tool nose radiuscompensation.
tweenthe virtualtool noseand the tool
center.
G40 or T~ U 00 commandshould not
(G41 to G44)
fourG codesspecifythe relationshipbe-
These
(ii)
When the power supply is turned on, G40
is in effect.
(iii) Whenthe RESETbutton is depressed,G
code of 06 group are cancelled and G40
becomes effective.
(4)Tool motionon the tool nose radiuscompen-
sation
2.31. showsthe outlineof the tool
Fig.
a.
motion .
...
..>
-Ku2)’-
VIRTUAL
TOOL TIPS
t
t
R
Q>l
G 43
Regardlessof the mode of tool noseradius
compensation,the currentpositionof the
virtualtool nose is displayedby depress–
ing the POS pushbutton.
b.IssueG40 to cancelthe tool nose radiuscom-
pensation.
c.Cautionsin programmingG code
(i)
SinceG40 to G44 are modal G codesof
06 group,theyare retaineduntil the
otherG code is commanded.Before
switchingone of G41,G42,G43 and G44
to another,G40 must be intermediatedto
cancelthe compensation.
\
TOOL
CENTER
G 42
El
‘G~~
Fig. 2.30
\
L=-
G41
c1
/
v+’
G ‘NJ
n]
//\\
G 43
c1
G 44
c1
-Z
BLOCK OF
+x
(iii)
(iv)
Relationshipbetweentool nose radiuscom-
b,
pensaticmand tool positionoffset
Tool nose radiuscompensationapplyto
the programmedcontourwhichhas been
offsetby the tool positionoffsetfunction.
~,
‘:3;,
Fig. 2,31
When the compensationis cancelled,the
programmedcontourmeetswith the path
of virtualtool tip ( @and @) .
In compensationmode,the tool center
path is deviatedby radiusfrom the pro-
grammedcontour.
of virtualtool nosedoes not meet with
programmedcontour.But the current
positiondisplayedby depressingPOS
keis the positionof virtualtool tip
( bto@).
The (connectionbetweentwo blocksin
compensationmode is providedby the
intersectionof tool centerpaths(M97)
and I:)y the circulararc (M96) . In the
abovediagram,
nectedby a circulararc.
Block@ for compensationstartand
block@for compensationcancelper-
form the connectionof compensation
mode and compensationcancelmode.
Programshouldbe made carefullyfor
theseblocks.
Therefore,the path
blocks3 and 4 are con-
COMPENSATIOh
WITH G 00
47
2 8.19 TOOL NOSE RADIUS COMPENSATION
(G40 THROUGH G 44) (Cent’d)
HOWto entercompensationmode
(5)
a.Compensationmode is set when both the tool
offsetnumberby T codeand G41 (or G42
throughG44) are instructed.When this
mode is set,tool nose radiuscompensationis
started.More precisely,compensationmode
is enteredwhen the AND conditionbetween
T codeand G code is established.Hence,
the orderin whichthesecodesare specified
does not affectthe operation.
is offsetonto the n~rmalof the originof the
blockG41 to G 44 whichenteredthe compensationmode firstor of the blockimmediately
afterT code.
rightof tool advancingdirectionwhen T +
is specifiedand to the left whenT– is specified.
SampleProgram(A) :
(a)
~
GOO T+ O1O1 ;
(2JGOO G41X30.Z5.
,-,
3‘UGO1z-18.FO.25;
CompensationMode
The offsetis made to the
Movementat
Startof Compen sation( for GOO)
[
;J
-x
CEhTEP
DIA
x
3
G U1
.
h
I
-z
-
c.If the blockof G41 (or G42 throughG44)
satisfyingthe compensationmode condition
doesnot havethe movecommand,the compensationstartsand the tool centeris moved
on the normal.
SinceG41 (or G42 throughG44) involves
such a movement,it is necessaryto specify
GOO or GO1 in th last or currentblockfor
the G code of 01 group.Specificationof a
G codeotherthan GOO, GO1, and Gllwill
resultin alarm“026. “
EXAMPLE(B) :
has no movecommand.
(c)
l@
GOO T+0303;
g
GO1 G41F.. .;
(3’GO1 X.. .Z.. . F.. .;
G41 (or G42 throughG44)
48
(d)
@GOO T-0404;
GO1G44F.. .;
@
@G03X.. .Z.. . 1..F.. !;
m
Note that the
normalto the
diatelyafterG41 (or G 42 throughG44)or
T code,for each of aboveexamples(a)
through(b) .
blockor the blockfollowingT codehas no
move command,one blockaheadis readand
the compensationstartoperationis performed
on that block.
fied,up to two blocksmay be programmed
consecutively.
blockshaveno movecommand,an erroris
caused.
(6)Movementin compensationmode
When the tool nose radiuscompensationmode
is enteredby G 41 (or G 42 throughG44)command,the tool centerkeepsmovingalong
the path whichhas beenoffsetby the tool
nose radiusby the programcommand,until
the mode is cancelledby G40 or T •l 000
command.
latedby the control.
tour may be specifiedin the partprogram.
However,the followingshouldbe considered
for the inter-blockmovementsand special
contours:
I
CENTER
tool centeris offsetonto the
startpointof the blockimme-
If G41 (or G42 throughG44)
With no movecommandspeci-
However,if threeor more
The path is automaticallycalcu-
G44
So, only the cut con-
For an outside corner (tangent-line angle
(ii)
is more than 180°) , the movementis controlled.by the following M-code commands:
M96...
M97...
Tool radius compensation
circular path ON
Tool radius compensation
circular path OFF
(execution of intersection
calculation)
/
\
\/\\
‘.,
\
.
m
M96:CircularPath Mode
M97:IntersectionComputingMode
Movementof circularpath is includedin
the previousblock.
Normally,M96 is usedfor this operation
However,when thereis a possibilityof
an “overcut”in cuttingspecialshapes
with the M96, M97 shouldbe used.
b,
Movementin GOO mode
The instructionG 00 positionstools independ-
entlyalc,ng each axis towardthe finaloffset
position,.Careshouldbe takenon the cutter
pathso that tool does not contactthe work.
TOOL MC VEMENT
Inter-blockmovement
a.
For an insidecorner(tangent-lineangle
(i)
is less than180°) , the intersectionpoint
is computedand is passed.
pointcomputingformula.
v
PASSING INTERSECTION
POINT
(Intersection
GOO OR
G 01
Fig. 2.32
PROGRAMMED
COMMAND
49
2.8.19TOOL NOSE RADIUS COMPENSATION
THROUGH G 44)+ (Cent’d )
(G 40
Movementin compensationmode(Cent’d)
(6)
Programmingconsiderationin compensation
c.
mode
(i)Be carefulnot to programa
shapedcuttingcontour.
T–
(a)Wrong
M 96
‘IY.---”~---”-------~;;::oo,
-=::--.–_.:,___________
Q-
INTERSECTION IS FAR AWAY
4“
T-
f ;l&cJp,4::
i
(b) Correct
wedge-
NOSE OF
GET IN
Commandinvolvingno movementin compen-
d.
sationmode
The controlnormallyreadstwo blocksahead
duringtool radiuscompensationmode and
calculatesthe tcml path.If eitherof these
blocksgives no coordinateinstructionssuch
as G04 (dwell), the controlreadsa block
furtheraheadand makes calculations.When
coordinateinstructionsare missingin three
or more blocks , tool radiuscompensationbe-
comes impossibleand accuratetool path can–
not be obtained.
whereG41 to G44 are used ensurethat,after
them , two or more blockswithoutmovement
commandin the compensationplanewill not
follow .
GO1 G41F.. .
Therefore,in a program
;
T+
\l 97
(ii)
(a)Wrong
(b)Correct
-------
i-
L ---—-.
~
Programthe tool movementso that the
tool nose of 2R diametercan be in the
contour,
; j
------
------
1
T
\f 97
_PROGRAM IS MADE SO
THAT TOOL NOSE OF
1
2 R CAN GET IN THE
WENDGE
Q
PROGRAMMEDCONTOUR
PROGRAMMEDCONTOUR
G04U.. .;
M.. .;
M40;
movementinstruction is programmed
If no
Compensationis normally
made by the two or less
1
blockswithoutmove command.
in three consecutive blocks ,tool center is
offset on the normal line at the end point
of the block immediate before them.
e.
Use of dummyblocks
If it is impossibleto specifya movecommand
in threeor moreconsecutiveblocksand the
offseton the normalline is not satisfactory,
a dummyblockmay be inserted.
The dummyblockdoes not causean actual
movement.
purposeof providingthe data necessaryfor
the tool noseradiuscomputation.For the
addressof this dummy command,I and K
are used.
I:X-axisdummycommand(incremental).
K : Z -axisdummycommand(incremental).
Thisblockis specifiedforthe
/
EXAMPLE:
N1GO1 G41X.. .Z,..F.. .;
N2X.. .z.. .;
N52.. .;
—
Three
blocks
or more
1
Dummyblock
/
N61.. . K.. .;
N7fvfxx
N8G04U.””;
N9MM
N1OX“”.z.. .;
NllZ“. .;
11
Ii
I and K shouldbe signedaccordingto the
typeof the circulararc.
,M96CIRCULAR PATH MODE)
By dummy blockN 11, the linear command
blockof N 10 stopsat pointA for the follow-
ing circularmovement.
f. SwitchingbetweenT + and T - in compensation
mode
Thiscoml?ensationprovidesthe switching
betweenT + and T - withoutcancelingthe
compensationby G40
EXAMPLE:
or T 3P 00 command.
%05
‘x~
Namely,specifyincrementalcommandsI and
K, whichare equivalent
mand,
Remarks:
is a circularinterpolation,generatethe
lineardummy blockthat specifiesthe direc-
tion of the tangentline
the circularcommand.
EXAMPLE:
N1OGO1Z“. . F.. .;
IN1lGO1 1(-a)K(-b); I
N12
N13MOO ;
N14MM;
rN15G02X...Z...1...”K...;I
N164. .
in N6 for the dummyblock.
If the purposeof the dummyblock
kfxx;
CENTER
Nil DUMMY BLOCK
(LOQEAR LINE)
THREE BLOCKS OR
MORE INCLUDING
NO MOVE COMMAND
I
-b
to N 10 blockcom-
at the startpointof
Dummyblock
IN5GOO -T+O1O1; ~
Designatesrighthand side
compen-
sation facing {he
N6G41X.. . Z.. . ;
N7GO1X.. . Z.. . F.. .;
N8x...;
N9T-O1O1Z.. . F600;
r:7::::~:eft-
N1OX.. > F.. . ;compensation
x
g . Modificationof tool offsetvolumein compen-
proceeding direction
/ (M96 MODE)
sation mode
It is invalidto newlyspecifya tool offset
numberby T
code in compensation mode.
The originally specified tool offset number
remains valid until the compensation mode
is cancelled by G40 or T G3 00 command.
51
2.8.19TOOLNOSERADIUSCOMPENSATION
(G40THROUGHG44)(Cent’d)
Movementin compensationmode(Cent’d)
(6)
However,
changed by varying the offset memorycon–
tents corresponding to the originally speci–
fied tool offset number,by means of MD I
operation.
tool offset numberis made valid beginning
with the block newly stored in the prefetch
buffer.
the tool nose radius value may be
After this modification, the new
SINCE THE TOOL POSl TION OFFSET IS CANCELLE2 THE POSITION
IS (110 40) FOR THE
REFERENCE TOOL
,,’
/’
c ()[,
---::-----––=U\
—--+---”’
(b)
(;4!
\@
,,7, ,
(7)How to cancelcompensationmode
a. When G40 or T q~ 00 is specified,compen-
sation mode is cancelled, terminating the
tool nose radius compensation operation.
.-
~i
%
*CJ
~-d.
~o
CLz.
g.
I._.
UG40 j-”--’i6iO;-; ‘--G~Oj-–iOlOo;
TOlOO ;
Upon termination of compensation, the tool
b.
center is offset onto the normal line to the
end point of the finalblock in compensation
mode, or the block immediately before
that for which G40 or T 3700 has been
specified. (Consequently,if a retracting
which results in acute–angle contour is
specified in G40 or T 3E 00 block, no uncut
portion is produced. )
Then, the tool moves so that the virtual
tool nose matches the end point of the move
commandspecified in G40 or T all00 block.
EXAMPLEA :
(T+ O1O1, G41)
.~f
21.
z
1.
si?(~1
1
~GOO G40X11O.Z40.; ~
G40 ;
(a)
MOTIONON COMPLE-
TIONOF COl
(GOO)
GO1 U20.FO.25;
____
[PENS ATION
(T+0202,G41)
@
GO1X.. . Z... F.. .;
@GO1U24.FO.3;
MOTIONON COMPLETIONOF COMPENSATION(GOO)
I
@GO1G40x80.z40.F6.;
@GOO T+0200;
-1
—--+-’--z
If the blockof G40 (Noseradiuscompen-
c.
sation cancel) does not have the mov-e com–
mand, the virtual tool nose moves to the
specified end point.
G40 (andT DU 00) commandscontain movement.
Specify GOO or GO1 in the block previous to or
the same as G40.
other than GOO, GO1, or Gil, alarm II027!!will be
activated.
If the G code of 01 group is
IQ
TO1OO;
EXAMPLEB:Movecommandis not included
inG 40 blockfor cancelingcompensation.
(c)
(T-0303,G41)
@GO1 X...Z...F...;
‘~GO1 G40F...;
GOO T-0300;
\
,5;, -
/’
,.’
/
P
(d)
(T+0404,G44)
G02X.. . Z.. .K.. . F.. .;
,~, MOVEMENT AT
~]
“ COMPENSATION
G41
START BY 2
Notes :
programmedshapes that produce input
a.
errors
When programmingan insidearc with tool
(i)
compensation,if programmedarc radiusR s
tool radiusd
TOICL
—
-—-.
:>
R
62
r..
R
r~:$.?.L
r<d
—
-—.
7
—-—
r
--.,,
r
‘- )
Outside compensationis correctly
made even when r < R
1
I
GO1 G40F.. .:
CENTER
MOVEMENT AT
I s:H%s8T’ON
I COMMAND
G44
is per-
GOO T+0400;‘Z
cc
.-
,.,
/’
,’
/
–L_..-–_.i
m
Note that,for each of aboveexamples(a)
through(b) , the tool centeris temporarily
offsetonto the normal line to the end point
of the block immediately before G04 or
T E200 command.
When tool nose radiuscompensationis can-
celledby the use of T’~E 00 command,the
tool positionoffsetcanceloperation
formedconcurrentlywith the operationat
tool nose radiuscompensationtermination.
The cancel operation provides the move-
ment in which the virtual tool nose matches
the last specified position for which tool
positionoffsethas beencancelled.If co-
existence of these operations is not desired,
cancel either of them by the use of GAO
command.
(ii)When :no intersection point exists on the
locus lofthe offset tool center.
,--
/
-.
NO INTERSECTION
/’‘ 5,2:
\)<,’, I
NO INTERSECTION
-.
%
(a)
~
TOOL
\
&
(b)
R,
53
2.8.19TOOL NOSE RADIUS COMPENSATION
(G40 THROUGH G 44) (Cent’d)
Usable G codes
Remarks
(iii) When reversing commandor an angle
close to reversing commandis programmed in M97 (Outside Corner Circular
Arc Path Off) mode.
(a) Reversing command
Commandcloseto reversing
(b)
R
In M96 mode,all of the aboveshapesare
correctlycompensated.
Interferencecheck
b.
To preventthe tool from cuttingdeeperinto the
finishedshapethan was programmedin advance.
Interferencecheckerroris activatedwhenthe
differenceof movingdirectionis 90° to 270° between
the programmedvirtualtool nose and compensatedtool
center,
When an erroris detected,the blockprior
to the blockin whichovercuttingmay occuris
immediatelystoppedand an alarm is shown.
This function does not always prevent over–
cutting.
There might be occasions when overcutting
is not detected as an error or normal cutting is
detected as an error.
GOO, GOI, G04, G06, Gll
G 96, G 97
Constant surface speed control
G 98, G 99
Feed function designation
(G90, G 9t)
Absolute/incrementaldesignation
G02, G03, G12, G22, G23
Command including circular arc
G70, G71, G72, G73
Multiple repetitive cycle
Gill, G112
Multiple cornering
(Beveling, rounding)
Inhibited in
the block of
compensation
cancel or start
d. The subprogram(M98 or M99) may be speci-
fied in compensationmode.
e.
When the tool offsetnumberis T code com-
mand of “00, “ T:=00 commandhas the follow-
ing two meanings:
(i)Tool positionoffsetis cancelled.
( ii)Tool noseradiuscompensationis cancelled.
The followingprogramcan be specified:
N2G41;
N3GOO T+O1O1;
TOOLRADIUS
COMPENSATION
MODE WITHTOOL
110111
NO .
:1
OIRECTIONIS 180C DIFFERENT
c.
G codesusablein compensationmode
As a ruleG codesotherthan shownbelowshould
not be used in the compensationmode.
54
N21GOO TOlOO;
N25GOO T-0202;
:1
N40GOO T0200;
N41G40;
TOOLRADIUS
COMPENSATION
TOOLPOSITION
OFFSET
TOOLRADIUS
COMPENSATION
MODE WITH
TOOLNO.“02”
CANCEL
f. Inhibitionof MDI mode
(i)Operationin the MDI mode cannotbe per-
formedin the compensationmode.When
,RESET buttonis depressed,GOO (compensationcancel)becomeseffectiveand
the operationin the MD I mode becomes
possible.
(ii)G40 throughG44 cannotbe written
operationin MDI mode.
Commandor operationfor canceling
g.
compensation
The followingcommandor operationduring
tool radiuscompensation,cancelsthe compensationcompletelyor temporarily.
The commandor operationshouldnot be
performed:
Threeconsecutiveblocks
1.
withoutmovecommand
1
MOO or MO1
2<
3.
M-code set by param-
command
Temporarily
cancelled
eter for stopping
advance reading
(6 Max)
G commandsfor stopping
4.
advancereadingG36, G37,
G38,G39
M02, M30 commands
5.
Resetoperation
6.
Turningoff powersupplyj
7.
I
1
Completely
can celled,
i
h. Commandscausingerror
The followingcommandsmust not be given,
for theycauseerrors.
1.
G28, G29,G30
2.
G50, G51
3.
G74, G75,G76
4.G90,G92, G94
5.
G31 - G35
6.
G68, G69
7.
G122,G123
by the
i,
Evenin M96 mode(toolnose radiuscompensationand circulararc path are on) , if
circulararc distancesAX,AZ are smaller
than the fixedvalues,the tool does not
followthe cornercirculararc path but moves
directlyto pointB . Thefixedvaluesare
2. 8.19.3Offset Calculation of AutomaticNose R
CompensationApproachand
Relief (Cent’d)
Table 2.20AAutomaticNose R Approachand Relief Patterns
CIRCULAR
45 ~ OR LESS
LINEAR
MORE THAN 45
\\
\
7
C=l
A
i,
\
‘\
*
2.8.19.4The G40
CancelFunctionis
NoseR Function
GOIXZIK
Also Availablein the Automatic
; Command
The G40 GOO X
function(menti=ned~at=), ~s” well as the same
functionby the GOI commandare available.
Thismakesa projectedwall by the I, K
commandsin the blockbeforethe G40 GO1
command,to executethe nose R calculation.
Notes :
The nose R center is
1.
end point in the G40
G40 single-block.
The nose R complete
2.
the block immediately
ZIK: commandcancel
on the normalof the
GOO XZ
——
; blockor
cancel is performed in
before the G51 single-
block or G28 block,
The cross point is calculated in the block
3.
immediately before G40 GOO XZIK;
and the vector indicated by ‘~, ‘K. ‘r—
When GO1 and G41 (G42) are commandedat
4.
the same time, the nose R center will be on
the normal of the start point of the next
block .
However,in canned cycle, start up can
be performed by GO1 G42 of the firstblock,
but cannot be performed by repeating the
commandlater.
G40 GO1 XK
5.
; and G40 GO1 ZI ; are
of the sam~com—mandformat as th~ ch>mferin g
command,but the cancel function has priority
only when the G40 commandis given.
2.8.20PROGRAMMING OF ABSOLUTE ZERO POINT
(G 50)
Absolutecoordinatesystemshouldbe set before
move command.
coordinatesystem,
on the absolutecoordinatesystem.
Aftersettingup the absolute
all motionscan be commanded
x
.—
ABSOLUTE ZERO
POINT (O, O)
d
Fig. 2.34
(2)
G50U.. . W.. .
When the addressesU and W are specified
insteadof X and Z, the new absolutecoordinateis set up by addingincremental
valuesU (X-axis)and W ( Z-axis)to the
absolutecoordinatepreviouslyset.
When the toolsare verycliff erentin length,
the incrementalG 50 (addressesU, W) is
use f ul.The tools shouldbe dividedinto two
groups.
lengthof the referencetool and that of the
secondgroupof tools can be set at the
incrementalG 50 commandand an absolute
coordinatesystemcan be stored.
G50U1OO.
+x
I
FOSITION OF
THE SECONO
GROUP
Then,the differencebetweenthe
B
H
; (IncrementalG50 )
W-1OO.; . . . Settingof
PositionB
100.
50/(G50xz‘)
y
G50 COMMAND FOSITION
OF REFERENCE TOOL
+------+’
Fig. 2.35
2
+Z
(1)G50X.. . Z.. . ;
Thiscommandmakes the presentpositionof
tool tip the absolutecoordinates(X,Z ) .
The valueswith a sign followingthe addresses X and Z are the distancesbetweentool
tip and the absolutezero point(O, O) to be
Therefore,it can be said that “G50
set.
commandspecifiesthe absolutezero point.”
61
2.8.20PROGRAMMING OF ABSOLUTE ZERO POINT
(G 50) (Cent’d )
(3)Assumethat the tool No. 01 is reference
tool, and perform the setting of the following coordinate system for this tool:
G50X80.z62.;
then , select the tool No. 02 which has the
tool position compensation value shown in
the figure below and peroform the compensation operation,
and the tool No. 02 moves
to point A.
N3G50x80.z62.;
N4GOO TO1O1;
4.
When
the powersupplyis turnedon, the pre-
positionof tool is set to the coordinate
sent
(o,o).
Therefore, the absolute coordinate
system should be set up before operation.
5. The current position of the tool in G 50 coor–
dinate system is shown in “POSITION
ABSOLUTE”of current position display.
6,
The coordinate system which was set is not
affected by reset operation.The cmrdinate
system is reset by one of the following oper-
ations:
(i)
The reset operationby ORGkey (see
POSITIONABSOLUTE)is per-
; commandis writtenin MDI
is executed.
is turnedon again.
(ii)
(iii)
4.3.4.2,
formed.
G50XO ZO
mode and
The power
N1OGOO T0202;
TOOL NO 02
‘H+
G50COMMAND
POSITION AT
TOOI NO 01
40mm
=
~;
+------+z
Fig. 2,36
If the coordinatesystem setting is performed
the referencetooland tool positioncom–
with
pensationis appliedto the othertool as
shownabove, the tool movementmay be
programmedon a singlecoordinatesystem
for alltool noses.
Notes :
1.
When T , S and M commandsare programmed
the blockfollowingthat containingG50,
in
GOO should
Thisdesignates
offsetmotion.
G50X.. .Z.. .;
GOO S500M03TO1O1;
2.
G 50 is
the specifiedblock.
in
codes, and M, S, and T codes cannotbe
G
specified in the same block. Note that
G50S.. .
separatefeatureand is not for coordinate
system setting.
3.
G 50 should
set and toolradiuscompensationare cancelled
be programmedin the block.
the traverserate for tool
a nonmodalG code whichis valid only
Generally,
commandis a
;orG50
T.. .
;
be commandedafterthe tool off-
the other
7.When settingworkcoordinatesystem by G50,
parameter#6o 18
Coordinate
fectiveor not.
2.8.21MAXIMUM SPINDLE-SPEED SETTING (G50)t
Thisfunctionis used for the controlprovided
with S 4–digitdesignationoption.
(1)G50S.. .;
Four digitsfollowing
specifies
D7 can select whetherWork
System Shiftin 2.6.5will be ef-
the addressS
the upperlimit of spindlespeed
in rpm.If an S commandexceedingthe
limit is issuedin subsequentblocks,the
spindlespeedis governedat theupperlimit,
In G 96 (ConstantSurfaceSpeedControl)
(2)
mode, when spindle speed rises up too fast
as the current X-coordinate of the tool is
too small, the spindle speed is clipped
the limit.
EXAMPLE
G50S2000;
The maximumspindle speed is clipped at
2000 r/rein.
Notes :
1.
Maximumspindle speed specified by G50 can
be displayed on the CRTdisplay.Refer to
4.3.2.1,“Command Data Display.”
2. The specified maximumspindle speed is not
cleared by reset operation.
3. In case of S 4-digit designation B , unit of
address S is not shown by rpm.
machine toolbuilder’s manual.
designation,
this function cannot be used.
Refer to
For S 2-digit
62
2.8.22WORK COORDINATE MULTI-SHIFT (G 50T, G 51)+
This feasure is used in combination with “5.2.3,
Measured Workpiece Value Direct Input” option.
Hence itis necessary for the programmerto be
familiarwith paragraph 5.2.3.
The purpose of this feature is to retain a
“work coordinate system” with a certain point on
the work used as absolute zero point by performing G 50T coordinate system setting at the replace–
ment position of each tool. In other words, pro-
grammingmay be performed with a single coor-
dinate system throughout the entire machining.
(1)
Tool coordinate value memory(number)
It is necessary, before specifying G 50T, to
a.
write the coordinate data for each tool to
the tool coordinate memory.For the writing procedure, see
Value Direct Input.”
piece
The numberof availabletool coordinate
b.
memoryunitscorrespondsto the number
of tool offsetmemorycombinationsas shown
below.
—
Number of Tool Offset
Memcxy Combinations
5.2.3,“Measured Work-
%tilable Tool Coordinate
Menwy Number
+Z
Ztn
Zm
r -1
Xm
(<T,
I\ :~g~~COORDINATE SYSTEM” SET BY
(2)Work coordinate system setting (G50T)
G50 TZLAA
a.
1-1--
Usingthis command,set the coordinate
systemfor each of K axis and Z-axiswith
the followingworkcoordinatesystemsetting
value:
%wORKPIECE
TOR AT ‘“WORK MEASURED VALUE
DIRECT INPUT’OPERATION
~Specifies tool offset number
LSpecifiestool coordinate
I
Tn
TOOL SLIDE AT THE
POSITION INDICATED
Atn
Fig. 2.37
(00 to 50)
memorynumber
BY CURRENT POSITION
DISPLAY (0, O)
(SEE NOTE 1)
2
Xtn
I
+Z
(51 to 99)
c. Forease of use, write the coordinate data
for tool No. 01 in tool coordinate memory
No. 51, etc. , as shownbelow:
Tool Coordinate Memory
I
Tool No.
I
It is assumedthat the tool coordinatemem-
d.
ory containsthe followingcoordinatedata
Xtn and Ztn for each tool Tn:.
Work coordinate
systemsetting
value
Contentof
programmedtool+
coordinatememoryoffsetmemory
[
Note :
the one whichis shownin “POSITION
[EXTERNAL]screenof the currentposition display(POS ) on CRTdisplay.
b.
Usually,specify
numberspecificationfieldA A .
EXAMPLE:
G50T51OO;
When the above programis specified with
the tool slide at a given position (for
example, –x, –z in the unit current position display) ,
defined by the operator is set correctly as
shown below :
1!unitcurrentpositionvalue”is
L1100,1
‘[~:~n:
Contentof
programmedtool
1[
“ 00” in the tool offset
specifies the work
coordinate system setting
with the contents of tool
offset memorybeing zero.
the work coordinate system
1
63
2,8.22WORK COORDiNATE MULTI-SHIFT (G50T, G 51)T
(Cent’d)
T1 WHEN TOOL SLIDE IS
AT A GIVEN POSITION
(–\,
—:)
-x
z,,
r,
M
WORK COORDINATE SYSTEM
Fig. 2.38
+--T---‘--i
;T,
P, 1 VJHEN TOOL SLIDE IS
‘-~AT POSITION (O, 0)
.
~
/
I
,
T
X,l 2
4.
When the G 50 T work coordinate system set-
ting is performed,
2.6.4,“ Work Coordinate
System Shift” is made valid.
5.
The current position of the tool in the set
work coordinate system is shown in the cur–
rent position value
“POSITIONABSOLUTE.“
It is not shown in POSITIONEXTERNAL.
6.
The work coordinate system set by G 50 T
cannot be cancelled by a reset operation.
EXAMPLEA :
(The start point is current position display
(0, 0))
N1 G50 T51OO ;—Work coordinate system
setting for tool No. 01.
N2 GOO TO1O1 M03 s1OO ;
Selection of tool No. 01
(Note 1).
(Machining by tool No. 01)
c.
G50TOOOO;
By this command,the coordinatesystemis
set with the unit currentpositionvalue.
Thismeans that the cancelingof the work
coordinatesystemsettingis performedwith
the contentof tool coordinatememory= “ O“
and the contentof tool offsetmemory= “ 0“
by the specificationof TOOOO.
(3)
Returnto currentpositionorigin(G 51)
a.
By G51 ; command,tool is returnedto the
pointat rapidtraverserate wherethe unit
currentpositionvalueis (O, O) , on both
X-axisand Z-axis.
With a partprogramthat useswork
b.
coordinatesystemsetting,the machining
startpointis the currentpositionvalue
(O, O) in principle,Hence,the use of G51
commandfacilitatesthe returnto the start
point(O, O) aftercompletionof machining.
c.
G51 commandshouldalwaysbe specifiedon
a singleblockbasis.
Notes :
1.
G 50 T and G51 are nonmodalG codeswhich
are validonlyfor the specifiedblocks.
When thisfunctionis used,set parameter
2.
#6005D5toO (G50 presetof POS-EXTERNAL
displayis off) .
3.
G51 ; commandis equivalentto the following
two blockcommands.
m
Consequently,afterthe executionof this
command,the tool offsetnumberis cancelled
togetherwith the workcoordinatesystem,
settingthe tool offsetnumberto “ 00. “
N20Goox...z...;—
N21 G50 T5200; —
N22 GOO T0202; —
(Machinigby tool No.02)
N40G51 ; —
Note1:Thetool positionoffsetin TO1O1
and T0202 commandsmay be used for the
compensationfor tool wear.
duringmachining,the tool positionoffset
may also be usedfor the compensationfor
tapermachining.
Returnto currentposition
display(O, O) .
“ wCRK COORDINATE SYSTEM
MACHINING BY TOOL NO 01, 02
CAN BE PROGRAMMEDON THIS
COORDINATE SYSTEM
Positioningto a given
point.
Work coordinatesystem settingfor tool
No.02.
Selectionof tool
No.02 (Note1) .
When specified
64
Notes :
EXAMPLEB:
If the machiningwhichwas startedby the
followingprogramis interruptedand the
programis restartedwithoutreturningthe
tool to the machiningstartpoint,the tool
correctlymovesto the firstapproachposi–
tion.
G50 T51OO;
N1
N2GO1O1 ;
N3G96S150M03;
@N4GOO x20.z2.5;
PROGRAM STARTED AT THE
POSITION OF CURRENT
POSITION DISPLAY (–20–27 5)
AFTER MACHINING INTERRUPTION
/
-x
T 01
-rO1
480.
40.
--l
B
MACHINING START POSITION
‘CURRENTPOSITION OISPLAY
10 o)
N1G50T51OO;
N2GOO TO1O1M03 S1OOO;
(Machinedby TO1)
N25G50TOOOO;
N26GOO x-50.z-35.;
iN27G50T5200;I
N28GOO T02020M03s800;
(Machiningby T 02)
N48G51;
- The coordinatesystemsettingvalues
by this commandare as follows:
. . .
Tool replacementposition
of T 02 is currentposition
display(-50,-35) .
p“
/1
(
WORK
COORDINATE
SYSTEM
Thisis becauseN1G50T51OO; command
at pointB performscoordinatesystemset–
ting with the followingvaluesto retainthe
workcoordinatesystem,thus keeping
approachpositionA unchanged:
EXAMPLEC :
Thisexampleshowsa programfor whichthe
replacementpositionof each tool is different
from each other,and the valuesfor work
coordinatesystemsetting.
A APPROACH POSITION [20 25)
.P
TOOL COORDINATE MEMORY
51X=80
512=40
X = (-20. ) + (80. ) = 60.
Z = (-27.5)+ (40. )= 12.5
Tool Coordinate Memory
No.xz
51
52
Im.47.5
110.40.
~z
———
X = (-50. ) + 110. = 60.
z = (-35. ) +40.= 5.
1
88
/
F---
h.
s.
40.
P-
DI.A
+x
I
Z=i.
T
x=
60. DIP,
+r—————‘z
\ wORK COORDINATE SYSTEM
110
To,[Z—’
47.5
100D[A
–35.
T 01
TO
$
30.2
MACHINING START
POSITION =
=CURRENT POSITION
DISPLAY (O, 0)
28.23MACRO PROGRAMS (G65 AND G67)
Special programs written by the machine builder
or user by the use of a group of instructions are
registered in the part
programscan be calledby the use of
commandto executethem .
Thesespecialprogramsare referredto as the
programmemory.These
G65 or G66
macro program body, which can be written and
stored in the same format as a subprogram.
The“argumentdesignation:in callinga macro
programbodyfromthe main programmakesit
possibleto assignthe real numbersto the variablesin the body.Thisenablesthis macro
programto run as a seriesof specificprograms
that providetool movements,
In this manual,the macroprogrambodyis some–
times referredto as simply,“macro.II
2. 8.23.1Macro Program Call Commands
Main Program
#
G65 P9001
(Argument
Designation)
Program
Main
/+09001;
/
\
Y
I
User
MacroBody
)
r
~ Variable
OperationCommand
ControlCommand
L
1
M99;
Subprogram
1
A macro program
following“fiv;manners:
No.
1
2
3
4
5
( 1)SimpleCall(G65)
G65
Themacroprogram,whoseprogramnumberwas
specifiedby p) is calledand is executedL times.
Thedefaultvalueof L is 1.When thedesigna-
tionof an argumentto themacroprogramis
desired,specifyit in (argumentdesignation).
I!Argumentdesignation”
numbersto the‘Ilocalvariables”
Type of Call
Simple call
Modal call
Call by arbitrary G cede
Call by M code
Call by T code
P.. . L.. .
macroprogram.
bodyma~ be calledin the
Code
G 65
G 66
Gxx
Mxx
Txxxx
(argumentdesignation);
is theassignmentof real
-.
tiemams
G 67: For cancel
4digits max.
used in the
Fordetails, see 2.8.23.2,
“ ARGUMENTDESIGNATION.”
However.unlikea subprogram,a macropro-
gramallows:
Use of variables.
( 1)
(2)Computationbetweenvariablesor between
constants.
(3)Use of controlcommandssuchas a condition-
al branch.
Thesefeaturesenablethe user macrobody
to providea generalizedprogramthat requires
complicatedcomputationsand decisions.
(2) Modal Call (G66 and G67)
G66 P.. . L.. .
(argument designation) ;
This commandcallsthe macro subroutine specified
by programnumberP. Each time a move command is executed, the specified macro is run L
times.
G67;
This commandcancels the modal call mode.
(3)MacroCall by ArbitaryG Code
(5)MacroCall by T Code
Gxx(argumentdesignation);
Thisprovidesthe commandwith is equivalentto
G65 P...
ten G codesof GO1 throughG199 excludingthose
designatedby NC makercan be set by parameter.
The macro programnumberswhichcorrespondto
theseG codesare as follows:
#6120 ~. .
programnumber09010.
#6121 . . ~
programnumber09011.
(argumentdesignation); . For Gxx,
Sets G code whichcalls the macro of
Sets G code whichcalls the macro of
\
#6129 ...
program number09019.
Note :
onlysin gle nesting.
was calledfor by usingarbitraryG code,M code,
or T code does not permitanothermacrocall by
arbitrarycode.
(4)MacroCall by M Code
G.X“. ”
Thiscommandmay call macros.In this case,the
macrois executedafterthe movecommandis
completedin that block.MF and M codesare not
transmitted.
ignatedby parameterexcludingMOO, MO1, M02,
M30, M90 throughM99.
SetsG code which callsthe macro of
Macrocall by arbitraryG code permits
Namely,the macro which
Z-”-h’ixx;
For Mxx,four M codesmay be des-
All the T code commandsprovide a macro call com-
mand .
. . .
X... Z..Txxxx;
G
With this command,the macro of programnum–
ber 09000is executed after the move command
in the same block is completed.
Transmissionof T codeand TF signalis not per-
formed.Whethera T code is to be used as a
macrocall commandmay be specifiedby the followingparameter:
ParameterNo.
#6134
o ... T code designation is handled as a T code.
1 . . . T code designationis handledas a macro
call commandto call the macro of program
number09000.
When a T code is specified as a macro call
command,
to decimal 4 digits) becomes the argument of
commonvariable #149.
MENTDESIGNATIONOTHERTHANTHIS IS NOT
PERMITTED. Whena T code is programmedin a
macro subroutine that has been called by an arbitrary G code or by a macro M or T code, it will
be processed like a normal T code.
(6)
a.
G65 SimpleCall And G66 Modal Call
the value designated by T “XXXX” (up
NOTETHATTHEARGU-
MultipleCall
#6130 . . ~ Sets M code whichcalls the macro of
programnumber09001.
#6131 . ~
programnumber09002.
#6132 . . .
programnumber09003.
#6133 ~..
programnumber09004.
Sets M code whichcalls the macro of
Sets M code whichcalls the macro of
Sets M code whichcalls the macro of
NOTETHATTHE MACROCALLBY M CODE
DOESNOTPERMITARGUMENTDESIGNATION.
When a macroM code is programmedin a
macrosubroutinethat has been calledby an arbitraryG code or by a macro M or T code,it will
be processedlike a normalM code.
As a subprogramis calledfrom anothersubprogram,a macroprogrammay be calledfrom
anothermacro program.Quadruplenestingis
permittedfor simplecall and modal call combined.Multiplecall is disabledfor the macro
call by arbitraryG code,or M code or T code.
b,
MultipleCall by G66 ModalCall
modal call, each time a move commandis ex-
In
ecuted, the designated macro is run.
This is
also valid for the move commandin the macro
called by multiple call.
The macros are sequen-
tiallyexecuted from the one designated latest.
67
2. 8.23.1Macro Program Call Commands (Cent’d)
For the address in which
designated ,
the command
no argumentneed
may be omitted,
be
S ample Program
G66 P9400 ;
GOO X1O. ;
@
G66 P9500 ;
GOO Z20. ;
@
Main Program
G67 ;
G67 ;
GOO Z30. ;
1
09400 ;
GOO X40. ;
GO(J z50. ;
M99 ;
09500 ;
GOO x60. ;
GOO Z70. ;
M99 ;
17
+=
Id
*I@o
-l
o
@
Macro
0
Macro
J
The above sample program is executed in the
following order:
2. 8.23.2Argument Designation
Argumentis the real valueto be assignedto a
variableusedin the macro programbody.
gumentdesignation,therefore,is the act of
assigningreal valuesto variables,
designationis of typeI and typeII,whichcan
be selectedas required.
(1)ArgumentDesignationI
Argumentmay be designatedin any addressex-
ceptfor G,
betweenthe argumentdesignationaddressesand
the variablesare as shownbelow .
Argument Designation I
L, N, O,andP.
Address of
A
B
c
D
E
F
H
I
J
K
M
Q
R
s
T
u
v
w
x
Y
z
The relationships
Macro ProgramBody
Argument
Variable in
M
#2
#3
$7
:8
#9
#11
#4
;:
$13
Z17
k18
?19
420
?!21
#22
#23
#24
#25
#26
Ar-
Sample Program
#1#2
++
G65P91OOL3 A30B60
#24
x34.8z50.2;
ArgumentDesignation
#26
++
I
P art
(2)ArgumentDesignationD
A, B, and C argumentsand 10 sets of I, J, and
K argumentsmay be designated.
must be designatedin thisorder.
shipsbetweenthe argumentdesignationaddress–
es and the variablesare as shownbelow .
Address of
Argument Designation H
A
B
c
11
J,
K,
12
Jz
K~
Is
J3
K3
Id
J4
K4
Is
Js
K5
1~
Je
KG
IT
J7
K,
1~
J8
K8
19
J9
Kg
1,~
JIO
K,.
The suffixes1 through10 to 1, J, and K are determinedby the orderof the designated1, J,
and K combinations.
quirescomplicatedoperationsand conditional
judgementsmay be writtenin the generalformat.
Hence,the featureof user macro is to enablethe
programmingof the wide rangeof NC functions
from a simplemachiningcyclewhichis rathera
subprogramto a special,complicatedcannedcycle,
and the storingof thesecyclesin the machine.
Describedbeloware detailsof the commands
mentionedabove.
dressin a macro programbody,the addressmay
be designatedby a variable.When this variable
is calledduringexecution,the corresponding
valueis fetchedfrom the variablearea to providethe addressvalue.
variable,commonvariable,and systemvariable.
Each is identifiedby a variablenumber.
assignedusingthe argumentdesignationpartof
macrocall commandby G65 or G66.
(1)LocalVariables(#1 through#33)
A local variableis the one that is usedfor each
macro locally,
is used,the variablearea ( #1 through#33) is
independentlyallocatedfor each macrocall,
Certainvaluesare storedby argumentdesigna-
tion,and the resultsof operationsin macroare
retained,
of directlyassigninga valueto an ad-
Thereare threetypesof variables:local
To the local variables,real numberscan be
Thatis, when the local variable
69
2,8.23.4Variables (Cent’d)
Main Program
1’
G65 P9201
A.. .B... C,*;
Argument
Designation
o
\“\
Single-level Macro
09201;
“ #1, #2, #3
G65 P9205
~
eadlwrite
Enabled
#l =...
Localvariablearea
for single-levelmacro
———————
Double-level Macro
~.
09205;
#i
#2
#3
Read /write
Enabled
o-
#l =...
I
w
Localvariablearea
for duplicate-levelmacro
Hence,the variables#1, #2, #3, , . . ofthe
same macroassumedifferentvalueseach time it
is called.
macrocall and is registeredby argumentdesig-
nation.The variablenot designatedbecomes
“blank.“ Each local variableis set to “blank”
at the time of power-onand resetoperations.
(2)CommonVariables( #100 through#149, #500
throuth#549)
A commonvariablemay be sharedby all macros
and throughall macrosof all nestinglevels.That
is, the commonvariableenablesa macroto refer
to the result’sobtainedby anothermacro.
Each local variableis resetfor each
CommonVariableArea
oJIoKIJ’\oK
Single-nestDouble-nestTripple-nestQuadruple-
Macro
Commonvariablesare dividedinto the following
two typesdependingon clearconditions:
MacroMacro
nest Macro
a.#100 through
are clearedat the time of power-onand reset
operationsand are set to IIblank. !1
trols,theyare not clearedby resetoperationif
parameter#6008Dlis set at 1.
b.
#500 through#549:
are not clearedat the time of powe-onand reset
operations.
The commonvariablesare availableto the
user withoutrestrictions.
designatedby arguments.Indirectly,however,
theycan be designatedas follows:
(3)System Variables
A systemvariableis the one whoseuse is unique
to the system.
tem variables:
a.Interfaceinputsignals. . . #1000 through
#1015,#1032T
amount,tool coordinatedata,and tool wear
amountcan be read,
ii.The relationshipsbetweenthe
numbersand the systemvariables
below :
tool offset
are as shown
When1.0 or ().O are substituted in any of #1100
through #1115, the associated output contact is
output in the “closed” or “open’’state.
72
X-axis
Tml Nose
Radius
X-axis
System Variable
#2001
to
#2050
#2201
I
to
#2250
System Variable
#2051
to
#2099
Tool Offset
Memory No.
I
I
Tool Coordinate
Memofy No.
01
50
d.AlarmMessageDisplay( #3000)
When a conditionto be alarmedoccursin a user
macro program,
to
01
to
50
51
to
80
specifiedto put the machinein the alarm state.
i.#3000 = n ( <alarmmessage>);
Usingthis command,specifythe alarm message
(lessthan32 characters)precededby a 3-digit
alarm numbern and enclosedwith control-inand
control–outsymbols.
be threedigitsand not be one used by the machine.
ii.When this#3000 commandis executed,“ALM”
or “A/B”is displayedon the bottomof CRT
screenregardlessof the mode and function.
Its messagecan be seen by the followingoperation:
PressALM functionkey.
The alarm numberand messageand displavedon
the bottomof CRTscreen.-
systemvariable#3000 may be
The alarm numbershould
..
Z-axis
#2151~
#2t~80
iii.When one of the abovesystemvariablesis
specifiedto the left–handside of an operational
expression,its valuecan be changed.
SamplePrograms
#116 = #2016 ;
The contentsof tool offsetnumber16 for X-axis
are substitutedfor commonvariable?4116.
#2081 = #24 ;
The tool wear amount(memoryNo.
is erasedand the contentsof local
are set.
51
to
80
81) of X-axis
variable#24
‘ALARM
I
I
USERS MESSAGE
550MACRO ERROR:
E::“A”o“iRd
t
Message
display area and
09100NO054
“ALM “
\
sample display
When RESETkey is pressedafterremovalof the
causeof alarm,the messagedisplayand the alarm
statecan be cleared.
SampleProgram
#3000 = 550 (MACRO
FLOW )
ERROR:
DATAOVER-
73
2.8.23.4Variables (Cent’d)
e.Clock(#3001 , #3002)
i.
When systemvariable#3001 or #3002 for clock
is specified,
the clockcan be read.
When the finishsignalis not waitedfor,the
distributionendsignal(DEN)is not transmitted.
In this case , the FIN is waitedfor in the block
with the checkskip cleared.Hence,whenthe
FIN is not waitedfor,be carefulnot to specify
the nextauxiliaryfunction.
System
Variable
;3001
Z3002Clock 2
ii.
To presetthe clock,
this systemvariableput at the left-handsideof
expression.
the
Type
lClocklI lms~
UnitAt Power-On
I
Reset to “O
Same asWhen STL
1s
power-off time
substitutethe valuewith
Condition
Always
~
signal is on
Count
Sample Program
#3001=o;. . .
Restrictions
iii.
The accuracyof clock1 is 8 ms.When
4294968000msec has been reached,and overflow
occrus,settingthe clockto “ O. “
Theaccuracyof clock2 is 8 ms.When
429496800sec has beenreached,an overflow
occurs, settingthe clockto “ O. ‘t
SampleProgram
Main Program
The clockis presetto value“ O. 1’
Argumentdesignation
of variable#1
[~],Seconds. . . Macroto wait for
MacroProgram
09351;
#3002 = O ;
WHILE[ #3002 LE #1 ] DO1 ;
END 1 ;
M99 ;
I
+3003
o
Feed-Hold,Feedrate-Override,And Posi-
g.
tioningCompletionControl( #3004)
Single
Block Switch!
I
Valid
I
[
I
FIN Signal
Waited
Whenthe value listed in the following table is
substituted in system variable #3004, feed hold,
feedrate override, and positioning completion
can be made valid or invalid.
I
$3004
SampleProgram
SpecialThreadcuttingCycle(Incremental
Command)
Feed Hold
o
1
21
31
41
51
61
7
Valid‘Valid
InvalidValid
ValidIInvalidI
Invalid
Valid
Invalid
Valid
InvalidInvalid
+x
-+
ii
%~
AKk
?
r
o———————–~—
Feedrate
Override
+
IInvalidI
Valid
I
Valid
I
Invalid
I
G 0(1
THREADCUTTING
Positioning
Completion
IInvalid
I
I
I
/
I
\
,y
Valid
Valid
Valid
Valid
Irival id
I
rival id
Invalid
lJ–2
-7
f.SingleBlockStop And AuxiliaryFunction
CompletionWait Control(
When the valuelistedin the followingtableis
substitutedin systemvariable#3003, the single
blockswitchcan be disabledor the next block
may be enteredwithoutwaitingfor the checking
of the finishsignal(FIN)of the auxiliaryfunc–
tion (MST).
When systemvariable#3100 is specified,messages
and NC internaldata can be outputto external
euuipmentvia RS232Cdata input/outputinterface.
If- tieexternalequipment
informationis printed.
i,Outputof Messages
#3100 = (<Message>)
When this commandis specified,the message
enclosedby control–inand control–outis output,
via RS232Cinterface.
Each outputmessageis followedby CR/LF
(CarriageReturn/Line Feed) . Hence,when
#3100 = () is specified,only CR/LFis outputted,
whichis usefulin tabulatingthe puncheddata.
Note:
enclosedby control–inand control–out.
ii.
#3100 = [ i variable>]
When thiscommandis specified,thevalueof the
localvariable,
ble at the right-handsideis outputvia RS232C
interfaceas plusor minusdecimal9 digits( 4
digitsafterthe decimalpoint,5 digitsbeforethe
decimalpoint)data.
Notes:
1. The valueis roundedout to the fifthdigit
afterthe decimalpoint.
2. When the valueis of 6 digitsor more before
the decimalpoint,the asteriskis output.
When the messageis output,it shouldbe
Outputof Data
commonvariable,or systemvaria–
is a printer,the above
A ~aximumof 6 digits (data plus signs)
before the decimal point can be output.
i.Modal Information#4001 Through#4120)
i.When one of systemvariables#4001 through
#4120 is specified,
specifiedup to the immediatelyprecedingblock
can be known.
timescalledthe currentvaluesof modalinformation commands.
System Variable
#4001
the modalcommandsthatare
Thesemodalcommandsare some-
Modal Information
I
G code (group 01 )
\
# 4021
?$4108
#4109
#4114
#4115
#4119
#41 20
Notes :
12M code can not be read out because of non-modal
information,
The value of either E (#4108)or F ( #4109)is specified
just before being stored, giving# 4108 and # 4109 the
same value.
G code (group 21 )
E code
F code
Sequence number
Program number
S code
T code
75
2,8.23.4Variables (Cent’d)
ii#4001 through #4120 cannot be placed to the
left-hand side of the operation expression.
Sample Program
Main Program
G65 P9602 <ArgumentDesignation>;
I
Macro
Program
I
~Gcodes(.oothr.u.h
GOO X.. .Y..;
GO1 Z.. .F. . . ;
G03X.. .Z... R...;
GOO Z.. . ;
G#l;
M99 ;
PositionalInformation( #5001 Through#5102)
].
When systemvariables#5001 through#5102 are
specified,variouspositionalinformationcan be
obtained,
The unit of the information is millimeters
es .
In the macroprogrambody,the “inputunit x 10”
featureis invalid.
System
Variable
X5001
115002
#5021
$5022
IJ5041
z5042
Positional Information
X-axis block endEnabled
position (ABSIO)
Z-axis block end
position (ABSIO)
X-axis current
position (ABSMT)
Z-axis current
position (ABSMT)
X-axis current
position (ABSOT)
Z-axis current
position (ABSOT)
G03) of 01 groupar~
retained.
I
G codesof 01 group
are restored.
Read During
Move
I
(Note)
Enabled
(Note)’-
Enabled
I
or inch-
System
V=iable
$5061
#5062
#5081
$5082
T5101
z5102
Note: Reading of #5021, #5022, z5041, #5042, ?I5101,
and #5102, when commanddduring movement, will be
performedafter completionof the movement.Accordingly, nose radius compensationis not performed.
Mnemonic
Meaning
Coordinate
System
Tool
Position
Offset
Tool
Radius
Compensation
Amount
Notes:
1. When the skip signal is not turneri on in G 31 block, the skip
signal position is at the end of G 31 blcck.
2. The “input unit x 10” feature is valid up to the macro call
block (the argument designation pert by G&5 or G 66) but is
in valid in the user macro body.
3. System variables iz5001 through ~5102 may not be placed to
the left-hand side of operational expression.
Positional Information
X-axis skip signal
position (ABSKP)
Z-axis skip signal
pesiton (ABSKP)
X-axis tool offset
amount
Z-axis tool offset
amount
X-axis servo position
deflection amount
Z-axis servo position
deflection amount
ABSIOABSMT
End posi -
tion of
block
immediately
before.
Work
coordinate
system
Not
included
Not
included
Command
current
position
(same as
Pos.
MACHINE
display).
Machine
ccardinate
system
/“
,’
Iv’
v
/
~ Included
Read During
Enabled
Enabled
Enabled
ABSOT
Command
current
position
(same as
Pos.
ABSOLUTE
display).
Work
coordinate
system
Included
Move
(Note)
(Note)
ABSKP
Position
at which
skip signal
did not go
on in G31
block.
Wofk
ccordi nate
system
Included
Included
76
SampleProgram
The tool is positionedto the specifiedlocation
(X,Z) on machinecoordinatesystem,performs
the specifiedM feature,
and returnsto the start
point.
Main Program
G65P9603X...zOM” #”:.:
Variable
No.
#
1to #33
#loo to #l’@
$500 to #549
rllo~ to #lo15
List of Variables
Meaning
.mcal variables.
:ommon variables (reset to “blank at
power-off).
Common variables (retained at powerDff)
Interface input signals (each signal for
each bit).
L#24
MacroProgram
09603;
❑ #5001 ;
#1
#2 = #5002 ;
G91 ;
GOO X [#24 -#5021];
GOO Z [#26- #5022] ;
M#13 ;
GOO Z#2 ;
GOO X#l ;
M99 ;
#26
#13
zH032
irlloo to #1115
#1132
z2001 to #2050
#2101 to #2150
#2201 to t2250
#2051 to 12080
#2151 to ?i2180
#2081 to ti2099
:2181 to #2199
g3000
#3001
#3002
+3003
f13004
83100
Z4001 to *41X
$5001 to $5002
85021 to #502Z
#5041 to +5042
+508 1 to 85062
t!5081 to #5082
~5101 to $5102
Interface input signal;#[lOCO +
Interfaceoutput
each bit).
Interface output signal~ #[1100+
Tooloffset
[X-axis, Z-axis, nose radius)
Tool coordinate data
[X-axis, Z-axis)
Tocl wear amount
[X-axis, Z-axis)
Alarm message display.
Clock 1 (In units of 1 ins).
Clwk 2 (in units of 1 s).
Single block stop, auxiliary function
complete wait control.
-Condition IF:3 LTfi2 is not
established when #2 and ‘P3 are
(blank>, or 72 is (blank),
and *3 = O.
2.8,23.5Operation Commands
Variousoperationscan be performedbetween
variablesand betweenvariablesand constants.
The operationexpressionis representedin the
form of #i = <expression>, in which< expression>
is a generalarithmeticoperationalexpressionproducedby combiningvariablesand constantswith
operatorsand functions.The availableoperationsand functionsare as follows.Insteadof
fi and #k, constantsmay be used.
(1)VariableDefinitionand Replacement
#i = #j . . .definition,replacement.
(2)Add-TypeOperations
#i.#j+#k. . .
#i=#j-#k. . .
#i=#jOR#k. . .
Sum.
Difference.
Logicalsum (foreach of
32 bits) .
#i=#jXOR#k...
Exclusivelogicalsum
(foreach of 32 bits).
(3)Multiply-Type
#i=#j*#k. . .
#i=#j/#k. . .
#i=#jAND#k...
Operations
Product.
Quotient.
Logicalproduct
(f&each of 32 bits).
Note:In OR, XOR , or AND operation,the
variablevalue(or constant)is convertedinto
the binary32–bitequivalentand the operation
is performedon each bit.
rounds off the part below the least significant
digit.
Sample (a)
12.3758
#10 =
Whenthe least significant digit of address
X is O. 001 mm, the following command
Goox [ROUND[ #lo]];
means
GOO x12.376;
because8 of 12.3758 is rounded.
Thiscommandis also equivalentto
*
]h]
I
This is because the data of #10 and #11 in @
and@blocks are substantially rounded before
being executed.
If @block is
@GOOU- [#10 +#11];
then, the movementis made by the following
amount:
U- [#10 + #H] = U - [12.3758 + 13.1236]
= U - [25.49@
—
- U - [25. 499]
On the other hand, block movementof
~+@is
rJ#10 + U#ll = U12. 376 + U13. 124
Hence, the programof @ is not correct.
(8)OperationalErrors
The data format and the operational errors in the
macro programsare as follows:
a.Data Format
The numeric data handled in macro programs are
of the floating point format.
= U25. 500
m
where,M is sign+ data 52–bit binary,
E is sign + data 10-bit binary.
b.OperationalErrors
Each time an operationis performed,the following erroris causedand is accumulated.The number of significantdigitsis 15 to 16, whichcompensatesthe errorsufficiently.
80
2.8,23.6Control Commands
The commandswhichcontrolthe flow of the
micro–programare of the followingtwo types:
a.Branchcommand. . .
ssion>]GO TO n ;
b.RepeatCommand. . . WHILE[ < conditional
expression> ] DO m ,
(1)BranchCommand
a.IF [ < conditionalexpression>] GO TOn ;
If < conditionalexpression>ofthiscommandis
established,a branchis made to the blockof
sequencenumbern withinthe same program.
When a variableor an expressionis usedfor n,
the branchdestinationmay be changed.If the
conditionis not satisfied,the programproceeds
to the nextblock.
IF [ f conditionalexpre-
Conditionalexpressionsare EQ , NE,CT,LT,GE,
and LE.Theyare representedas follows:
The sequencenumbermust be locatedat the
head of the blockwhen it is calledfor by a
branchcommand.
the sequencenumberis ignoredas shownbelow:
Otherwise,the data priorto
E ;F [< Conditional>]GO TO n;
r
Q
;
.~-“
*“
m.
0
expression
(Next Block)
5“
~..;l~
IF [< conditionalexpression>]may be omittedto
providea simplebranchcommandas shownbelow:
GO TOn;
Nn. .. ;
—
Branch Destlnatloc Se~uence No
~
2.
The reversebranchon the programtakes
longerexecutiontime than the forwardbranch.
(2)RepeatCommand
a.
WHILE[ < conditionalexpression>] DO m ;
(m = 1, 2 and 3)
,gnored
END m ;
While<conditionalexpression> is satisfied,the
blocksbetweenDO m and END m are repeated.
When it is unsatisfied,the processingbranches
to the blockfollowingEND in.
---- .
TJ
- WHILE<ConditionalDO m;e
.c
m
2
~
*
rI
:
END
[
m;
expression>
1
—
~
~
d
(BlockfollowingEND m)
81
2. 8.23.6Control Commands(Cent’d)
When the specification is made omitting WHILE
L< conditional expression>],the blocks between
DO m and ENDm are repeated infinitely. Generally, this is used in the format shown below .
5.
Triple DO-loop nesting is permitted for each
micro progralm.
I
I
IF[<Condlt>onal
expmssmn>]
.;
.
-Nn.. ,
Notes:
DO m shouldbe specifiedbeforeEND m.
1.
2.m of DO m and END m shouldhavethe same
value.However,only1, 2, or 3 may be specified
in m.
DO 1
1
END 1~Do and END to calleach
D02--l
3.The same identificationnumbermay be used
repeatedlyexceptwhererepeatrangesoverlap.
4.To get out of a Do loop,a GO TO n can be
used.However,
entranceto a DO loop as shownbelow:
The valueofm, 1,
iscalledtheidentification
number, whichisused by
other.
a GO TO n does not enable
GO TOn;
I
2, or 3
DO1;
D02;
D03;
G65..
ABC ;.Gb5... XYZ ;
END 3 ;
END 2 ;
END 1 ;
Enabled
6.The codingsshownbelowcause an error:
(i
(ii)
DO1;
DO1;
J
END 1 ;
DO1;
?
?
--l
1
‘1
END 1 ;
J
‘?
-J
1
OverlapofDO
rangesisnot
‘?
permitted.
Rewriteas
shown right.
(iii
END 1 ;
END 1 ;
DO1;
D02;
I)ol;
D02;
D03;
END 3 ;
END 2 ;
END 1 ;
Enabled
The returndestination
ofEND 1 isunknown.
One END 1 ismissing.
DO1; I
D02;
1
END 2 ;
ENDl; —
I
“-1
2 ;
END
82
DoI;
5
al
GOTO 100 ;
25
,%
END 1 ;
!$
N1OO ;
L
GOTO100;
:
DO1;
z
d
N1OO ;
.2
Q
END 1 ;
!__
(iv)
DO1;
(2)Classificationof ProgramNumbers
D02;
D03;
DO1;
(v)
1-
END 1 ;J
END 3 ;
END 2 ;
ENll1 ;
DO1;
‘~”””””;T
END 1 ;
IF.,GO
‘T07000;d
Quadruplenesting.
Max. nestingpermittedistriple.
Do loopmay not
be enteredfrom
I
outside.
I
The programnumbersare classifiedinto the
following:
09000 to
09999
When D 7 of #6021 is set to 1, the
registration, erase, and adit of
programs are disabled.
2.8.23,8 Displayand Write of Local and Common
Variables
Local variables (#1 through #33) and commonvariables (#100 through #149, #500 through #549)
can be displayed and written by the following
operatio~s:
(1)DisplayOperations
Displayof Variables
2. 8.23.7Registration of Macro Programs
(1)How to Make Registrationof Macro Programs
The registrationand edit of macro programbodies
are performedin the same manneras usual part
programsand subprograms.
programsize restrictionthat appliesto the user
macro body.
macroprogramsmay be storedtogetherin the
partprogrammemoryto its full capacity.
Part programs,subprograms,and
Hence,thereis no
a.PressSET functionkey.Modeselectposition
may be providedanywhere.
Key-in the variable numberand press
b.
cuRsORIkey or ~ ~uR-soR
1
need not be keyed in.
key.However,#
Ten sets of variable num–
hers including the specified variable numberand
their data are displayed.The data are displayed
in the signed 8-digit integer part and the 8-digit
fraction part.
—Macro nestinglevel
(0: Macro
I SETTING MACRO
*LEvEL0
#oloo
#olol
#olo2
~ #olo9
I
not ln execUtlOn)
01234“0035
-12345678,12345678
0.00000001
3. 00000000
RD Y
Sample Display of CommonVariables
83
2. 8.23.8Display And Write Of Local And Common
Variables ( Cent’d )
2. 8.23.9ConsiderationsandRemarksforMacro
Programs
(1) Summaryof Restrictions
display may be scrolled up or down,
Remarks
a. Commonvariables may always be displayed
for review.
b.For local variables , those of the macro cur-
rently executed are displayed.Consequently,
when a macro of a nesting level is in execution,
the local variables belonging to macros of the
other nesting levels cannot be seen.
The local
variables after completion of execution are all
rest to “blank. “
(2)WriteOperations
Writingof Valuesto Variables
a.PressSET functionkey.Mode selectposition
may be providedanywhere.
b.Key-inthe variablenumberto be written
‘ress m‘ey‘r .CG,9K‘eya ‘Ow-
ever,# need not be keyed-in.The keyed-in
variable numberis specified and the cursor is
positioned to it.
~.Key-inthe valueto be written.PressWR
key.Thekeyed-invalueis storedas the data
of the variablenumberwith the cursorpositioned.
Press~wkey or =1key or
d.
~A-GEkey or~
nn
e.Repeatoperationsin c. and d. to writethe
valuesto the desiredvariables.
Remarks
a.
Commonvariables can always be changed.
Localvariablesmay not be writtenat any
b.
time otherthan whena macrois in execution.
Anyattemptto do so is invalidated.However,
rewritingof localvariablesduringmacroexecution may causean unexpectedfailure.Before
attemptingthe rewriting, stop the machineoperation by singlestop functionand checkto see if
it is safe to rewritevariables.
The written local variables and commonvari-
c.
PAGEkey to movethe cursor.
ables #100 through #14$1are reset to ‘Iblankllby
the reset operation or the power-onoperation .
Quadruple(four-hold) .
f.MaximumNestingLevelof RepeatCommand
Triple(three–hold)for each macro.
RepeatCommand(DO)Identifierm
g.
m ❑ 1, 2, and 3.
h.
MaximumNestingLevelof Brackets
Quintuple( five-hold)
(2)DifferencebetweenMacroProgramand Sub-
program.
a.UsermacrosG65 and G66 allow argument
designationbut the subprogram(M98)does not.
The macro programdirectly branches to the
b.
macro program body without executing any command that was specified in G65 or G66 block and
has no relationship with the macro.With the
subprogram,however,a branch is performed
after the execution of the command(ifany) other
than P and L in M98 block.
The maximumnestinglevelof macro program
c.
is quadrupleincludingG65 and G66 calls,
of subprogramsis also quadruplebut separately.
If macro programsare specifiedvia MDI
d.
duringautomaticoperation,the maximumnesting
levelis restrictedto quadruple.With subprograms,
in tape mode or memorymode,or separatelyin
MDI mode,
up to four levelSof nestingare permitted
That
(6)Relationshipwith OptionalBlockSkip
The slash“/” characterused in the right-hand
side of an operationalexpressionor in brackets
is assumedto be the operatorfor quotient.It
does not mean the optionalskip.
(7)ParameterSettingof ProgramNumber
Classification
(3)Relationshipwith MDI Operation
a.MDI writingpermitsthe macrocall and the
executionof the calledmacro,
b.MDI writingdoes not permitor executemacro
bodycommandssuch as operationalcommandsand
controlcommands.
c.
When a macro programbeingexecutedis
stoppedby the singleblockstop function,any
MDI writingcommandnot relatedto the macro
may be specifiedand executed.
(4)Relationshipwith AddressSearch
The addresssearchfunctionis not permittedto
searchfor the sequencenumbersin the macro
body.
(5)Relationshipwith SingleBlockSwitch
a.The operationalcommandand controlcommand blocksdo not single–blockstop if the
singleblockswitchis turnedon.
is enabledfor the othermacro programblocks.
b.However,whensettingnumber#6004D1 = 1,
the singleblockswitchis enabledfor the opera–
Thefollowingmacrocommandsare availablein
additionto the standardusermacrocommands.
(1)Opencommand(POPEN)
(2)Data outputcommand(BPRNTor DPRNT)
(3)Closecommand(PCLOS)
The abovecommandsare usedto outputvariables
and charactersvia externaldev”iceswith the
RS-232Cinterface.
2.8.23 .9.2Detailsof Each Command
(1)Opencommand(POPEN)
(Format)
POPENLa] ;
T
-RS-232Cportnumber
Notes :
1.For the hole patternof EIA code,whenthe
characteris attachedwith an asterisk,the pat–
ternshownaboveis standard.However,other
patternsmay be specifiedby usingthe following
pzirameters:
#6110. .
#6111. . .
#6112. .*
#6113. . . =
#6114..
#6115. . .
Readthe desiredhole patternin the binaryvalue,
convertit into the decimalequivalent,and set it
to the parameter.For examfile,
shownbelowis set as “ 152” :
When the value of the parameter
pattern listed in the above table
[
J
(1
)J
1
the hole
is “O, “
is
pattern
the hole
provided.
(Function)
The DC2 controlcodeis outputfrom
the NC side.
beforethe sequentialdata output
commands.
Givethiscommand
The RS–232Cnumbercan
be specified as 1 or 2.
The default is the 1st RS-232C.
(Example)
POPEN ;
Opens the 1st RS-232C.
.....
POPEN[2] ; ,... Opens the 2nd
RS-232C.
(2) Data output command(BPRNTor DPRNT)
(a)BPRNT
(Format)
BPRNT[a$b
~~L
~Character
[cl.,..];
Effectivedigits
L;:::po’n’
below
86
(Functions)
The commandedcharacters are directly output
1
in 1S0 code,
. Alphabets (A to Z)
. Numerals
. Special characters (*, /, +, -)
Can be output.
the space code.
The value of the variables is regarded as 2-
2
word data (32 bits) considering the digits
below the decimal point, and is output from
the higher order bytes, directly as binary
data.
The effective digits after the decimal point
are commandedin parentheses after the
variable command.
After outputting the commanddata, the EOB
3
code is output in ISO code.
(Example)
BPRNT[C ** X #100 [3] Y #101 [3]
M #10 [01;
When the variables are;
#100 = 0.40956
#101 = -1638.4
#10 = 12.34
it is output as;
However,
‘*’is output by
2The variable values are output from the
higher order digit, digit-by-digit, for as
many digits as commanded.The decimal point
is also output in 1S0 code.
The variable value is output by commanding
the variable number after l’#il.
digits before the decimal point, and the digits
after the decimal point are each commandedin
parentheses.
Assumethat the variables have a maximumof
8 digits. When the higher order digit is O,
the output follows parameter #6016D7.
[Parameter #6016D7 = 0:
#6016D7 = 1:
When the digits after the decimal point of the
commandedvariable is other than O, as many
digits after the decimal point as commanded,
are output.
the decimal point is O, no decimal point is
output .
When the sign is positive, the output of the
space code follows parameter #6016D7.
[Parameter#6016D7 = O:
When the commandeddigits after
#6016D7 = 1:
Then the
Output space
code.
No output. :
Output space
code.
No output. ]
C3 AO AO D8 01 9A 59FF E7 Cl) 00 4D OC OA (Hexadecimal)
~~~T~~o~
~12
Space
Space
‘c’
(b) DPRNT
(Format)DPRWT[ a
I1i
#b[cd].. ];
TTTT
Digitsafter
~
decimalpoint
Digits before
decimalpoint
L
I
~Character
Variable
After outputting the commanddata, the EOB
code is o~tput in ISO code.
(Example)
When;
Variable value#2 = 128.47398
And;
When parameter #6016D7 = O
AO AO AO 61 B2 B8 2E B4 37 B4
DPRNT[X#2[531Y#5[531 T#30[2011;
#5 = 91.2
#30 = 123.456
I
-x
~;-”’”2°
D4AO B2 33OA
128.474
(Functions)
The commandedcharacters are directly output
1
in 1S0 code,
as in the (i) BPRNTcommand.
87
2, 8. 23.9Considerationsand RemarksforMacro
Programs(Cent’d)
When parameter #6016D7 = 1
2
(2)Theoutputdata outputcommandcan be
stoppedby resettingthe command.
data will also be erased.
Therefore,
etc.At the end of the outputprogram,it is
necessaryto givethe closecommandat the
end of the program,
are output,and thencommandM30, etc.
if resetis commandedby M30 ,
wait until all the data
All later
~:’’”
~;’””
???
~EOB
I
L
(3)Close
(Format)
(Function)
(Example)
2.8,23 .9.3
Function
(1)When
command
PCLOS[a];
The DC4 control code is output from
the NC side.
This is commandedafter allthe data
output commandis given.
The RS-232C numberis given in the
same manneras the (1) POPEN
command.
PCLOS;
Setting
outputting data by the BPRNT,DPRNT
command,set #6022D3 = O (no parity bit upon
ISO tape output) .
If #6022D3 = 1, the data cannot be output
correctly.
(PCL OS)
RS-232Cport number
.... Closes the 1st RS-232C.
NecessarywhenUsingThis
-23
(3)Usermacroand 1/O interfaceoptionis
requiredto use this function.
p. 8.23.I(I AlarmNumberOf Macroprograms
Shownbelow are the user–macro-associatedalarms
and their causes.
105
T
106
107
108
109
110
htAc Ro ERROR(CONSTANT)
The numberof constants is in excess of
the specified range.
MACROERROR
There are too many G67 cancel codes.
MACRoERROR(FoRMAT)
format other than expression
A
error.
MACROERROR(UNDEFIN#NO)
The valuenot definedas a variablenumber is designated.
MACROERROR(#NO NOTLEFT)
The variableof assignmentstatementis
the one that is disabledfor assignment.
MACROERROR( [] 5 LIMIT)
The bracketnestinglevelis in excessof
the upperlimit (5) .
has an
(2) When outputting data by the DPRNT
command,
to be output by spaces.
#6016D7 = O:
2,8.23 .9.4 Notes
(1) The open command(POPEN)and close
command(PCLOS)do not need to be
commandedin sequence.
Once the open commandis given, there is no
need to give another open commanduntil the
close commandis given.
set whether the leading zero is
Output space as leading zero
when outputting data by the
DPRNTcommand.
No leading zero is output.
= 1:
88
111
112
113
MACROERROR(MOVEG66 - M99)
A movecommandis specifiedin the macro
end commandM99 calledby G66.
MACROERROR(5)
The macrocall nestinglevelis in excess
of the upperlimit (4) .
114
115
MACROERROR(DO FORMAT)
DO and END are not paired.
MACROERROR([] UNMATCH)
The formatof <expression> has an error.
T :
Type I for small numberof variables. This
type allows the use of U , W and F and therefore makes the argumentdesignation easier
to understand.
S:OK.
When type I is used, we have the fol-
lowing variables:
116
117
118MACRO
2.8.23.11Exercisesof Macro pro9rams
(1)CannedCycleby G92
T (Teacher):
S (Student):
T:An exampleof usual G 92 commandtakesthe
m
I ~GOO U50.;
L
S : They are local variable #1 through #33,
MACRO
DO m is not
GO TO n is
9999.
followingformat:
G92u-50.w-60.F6. O :
Thiscommandis dividedinto the following
and executedwithinthe NC unit.
assumedthat RapidPull Out of Threading
is not includedi; this
@ GOO w60.;
Fir st, thesemoving distances and lead
threads can allbe converted into variables.
aren’t they ? But which type of localvaria–
ble?
ERROR(DO - END NO. )
in the rangeof 1 Sms3.
ERROR(GO TO N)
not in the rangeof O Sn L
We havediscussedmany complicated rulesyou haveto understandto
writeuser macros.Now,let’s
createsome usermacrosas exercises.Let’stake straightthreadcuttingcycleby G92, becauseit is
a simpleoperation.