You are on page 1of 362

Serial No.

269443

Original Instructions

PROGRAMMING MANUAL

.
d
MAZATROL MATRIX 2

ve
er
(for Turning Machines)

s
re
EIA/ISO Program

ts
gh
MANUAL No.: H740PB6011E

ri
ll
.A
N
O
TI
Serial No. :
43

A
R
94

Before using this machine and equipment, fully understand the contents of this
PO
26

manual to ensure proper operation. Should any questions arise, please ask the
R
o.

nearest Technical Center or Technology Center.


N

C
al

K
ri

ZA
Se

IMPORTANT NOTICE
IM
K

1. Be sure to observe the safety precautions described in this manual and the contents of the
ZA

safety plates on the machine and equipment. Failure may cause serious personal injury or
A

material damage. Please replace any missing safety plates as soon as possible.
M
YA

2. No modifications are to be performed that will affect operation safety. If such modifications are
3

required, please contact the nearest Technical Center or Technology Center.


01
)2

3. For the purpose of explaining the operation of the machine and equipment, some illustrations
(c

may not include safety features such as covers, doors, etc. Before operation, make sure all
ht

such items are in place.


ig
yr

4. This manual was considered complete and accurate at the time of publication, however, due to
op

our desire to constantly improve the quality and specification of all our products, it is subject to
C

change or modification. If you have any questions, please contact the nearest Technical Center
or Technology Center.

5. Always keep this manual near the machinery for immediate use.

6. If a new manual is required, please order from the nearest Technical Center or Technology
Center with the manual No. or the machine name, serial No. and manual name.

Issued by Manual Publication Section, Yamazaki Mazak Corporation, Japan

10. 2011
C
op
yr
ig
ht
(c
)2
01
3
YA
M
A Se
ZA
K ri
al
IM
N
A o.
ZA 26
K 94
C
O 43
Serial No. 269443

R
PO
R
A
TI
O
N
.A
ll
ri
gh
ts
re
ser
ve
d.
Serial No. 269443

SAFETY PRECAUTIONS

SAFETY PRECAUTIONS

Preface
Safety precautions relating to the CNC unit (in the remainder of this manual, referred to simply as
the NC unit) that is provided in this machine are explained below. Not only the persons who
create programs, but also those who operate the machine must thoroughly understand the
contents of this manual to ensure safe operation of the machine.
Read all these safety precautions, even if your NC model does not have the corresponding
functions or optional units and a part of the precautions do not apply.

.
d
Rule

ve
er
1. This section contains the precautions to be observed as to the working methods and states

s
re
usually expected. Of course, however, unexpected operations and/or unexpected working

ts
states may take place at the user site.

gh
During daily operation of the machine, therefore, the user must pay extra careful attention to

ri
its own working safety as well as to observe the precautions described below.

ll
.A
2. Although this manual contains as great an amount of information as it can, since it is not

N
rare for the user to perform the operations that overstep the manufacturer-assumed ones,

O
TI
not all of “what the user cannot perform” or “what the user must not perform” can be fully
43

A
covered in this manual with all such operations taken into consideration beforehand.
R
94

It is to be understood, therefore, that functions not clearly written as “executable” are


PO
26

“inexecutable” functions.
R
o.

O
N

3. The meanings of our safety precautions to DANGER, WARNING, and CAUTION are as
C
al

follows:
K
ri

ZA
Se

A
IM

: Failure to follow these instructions could result in loss of life.


K

DANGER
ZA
A
M

: Failure to observe these instructions could result in serious harm to a human


YA

life or body.
WARNING
3
01
)2

: Failure to observe these instructions could result in minor injuries or serious


(c

machine damage.
ht

CAUTION
ig
yr
op
C

HGENPA0070E S-1
Serial No. 269443

SAFETY PRECAUTIONS

Basics

! After turning power on, keep hands away from the keys, buttons, or switches of the
operating panel until an initial display has been made.

WARNING ! Before proceeding to the next operations, fully check that correct data has been entered
and/or set. If the operator performs operations without being aware of data errors,
unexpected operation of the machine will result.
! Before machining workpieces, perform operational tests and make sure that the machine
operates correctly. No workpieces must be machined without confirmation of normal
operation. Closely check the accuracy of programs by executing override, single-block, and

.
d
other functions or by operating the machine at no load. Also, fully utilize tool path check,

ve
er
Virtual Machining, and other functions, if provided.

s
! Make sure that the appropriate feed rate and rotational speed are designated for the

re
ts
particular machining requirements. Always understand that since the maximum usable feed

gh
rate and rotational speed are determined by the specifications of the tool to be used, those

ri
of the workpiece to be machined, and various other factors, actual capabilities differ from

ll
the machine specifications listed in this manual. If an inappropriate feed rate or rotational

.A
speed is designated, the workpiece or the tool may abruptly move out from the machine.

N
O
! Before executing correction functions, fully check that the direction and amount of

TI
43

correction are correct. Unexpected operation of the machine will result if a correction
A
R
94

function is executed without its thorough understanding.


PO
26

! Parameters are set to the optimum standard machining conditions prior to shipping of the
R
o.

machine from the factory. In principle, these settings should not be modified. If it becomes
N

absolutely necessary to modify the settings, perform modifications only after thoroughly
al

K
ri

understanding the functions of the corresponding parameters. Modifications usually affect


ZA
Se

any program. Unexpected operation of the machine will result if the settings are modified
A
IM

without a thorough understanding.


K
ZA

Remarks on the Cutting Conditions Recommended by the NC


A
M
YA

! Before using the following cutting conditions:


3

- Cutting conditions that are the result of the MAZATROL Automatic Cutting Conditions
01

WARNING Determination Function


)2

- Cutting conditions suggested by the Machining Navigation Function


(c
ht

- Cutting conditions for tools that are suggested to be used by the Machining Navigation
ig

Function
yr
op

Confirm that every necessary precaution in regards to safe machine setup has been taken –
C

especially for workpiece fixturing/clamping and tool setup.


! Confirm that the machine door is securely closed before starting machining.
Failure to confirm safe machine setup may result in serious injury or death.

S-2
Serial No. 269443

SAFETY PRECAUTIONS

Programming

! Fully check that the settings of the coordinate systems are correct. Even if the designated
program data is correct, errors in the system settings may cause the machine to operate in
unexpected places and the workpiece to abruptly move out from the machine in the event
WARNING
of contact with the tool.
! During surface velocity hold control, as the current workpiece coordinates of the surface
velocity hold control axes approach zeroes, the spindle speed increases significantly. For
the lathe, the workpiece may even come off if the chucking force decreases. Safety speed
limits must therefore be observed when designating spindle speeds.

d .
! Even after inch/metric system selection, the units of the programs, tool information, or

ve
er
parameters that have been registered until that time are not converted. Fully check these

s
data units before operating the machine. If the machine is operated without checks being

re
performed, even existing correct programs may cause the machine to operate differently

ts
gh
from the way it did before.

ri
! If a program is executed that includes the absolute data commands and relative data

ll
commands taken in the reverse of their original meaning, totally unexpected operation of

.A
the machine will result. Recheck the command scheme before executing programs.

N
O
! If an incorrect plane selection command is issued for a machine action such as arc

TI
43

interpolation or fixed-cycle machining, the tool may collide with the workpiece or part of the
A
R
94

machine since the motions of the control axes assumed and those of actual ones will be
PO
26

interchanged. (This precaution applies only to NC units provided with EIA/ISO functions.)
R
o.

! The mirror image, if made valid, changes subsequent machine actions significantly. Use
O
N

the mirror image function only after thoroughly understanding the above. (This precaution
al

K
ri

applies only to NC units provided with EIA/ISO functions.)


ZA
Se

! If machine coordinate system commands or reference position returning commands are


A
IM

issued with a correction function remaining made valid, correction may become invalid
K

temporarily. If this is not thoroughly understood, the machine may appear as if it would
ZA

operate against the expectations of the operator. Execute the above commands only after
A

making the corresponding correction function invalid. (This precaution applies only to NC
M

units provided with EIA/ISO functions.)


YA

! The barrier function performs interference checks based on designated tool data. Enter the
3
01

tool information that matches the tools to be actually used. Otherwise, the barrier function
)2

will not work correctly.


(c

! The system of G-code and M-code commands differs, especially for turning, between the
ht

machines of INTEGREX e-Series and the other turning machines.


ig
yr

Issuance of the wrong G-code or M-code command results in totally non-intended machine
op

operation. Thoroughly understand the system of G-code and M-code commands before
C

using this system.

Sample program Machines of INTEGREX e-Series Turning machines


–1
S1000M3 The milling spindle rotates at 1000 min . The turning spindle rotates at 1000 min–1.
S1000M203 The turning spindle rotates at 1000 min–1. The milling spindle rotates at 1000 min–1.

S-3
Serial No. 269443

SAFETY PRECAUTIONS

! For the machines of INTEGREX e-Series, programmed coordinates can be rotated using
an index unit of the MAZATROL program and a G68 command (coordinate rotate com-
mand) of the EIA/ISO program. However, for example, when the B-axis is rotated through
180 degrees around the Y-axis to implement machining with the turning spindle No. 2, the
plus side of the X-axis in the programmed coordinate system faces downward and if the
program is created ignoring this fact, the resulting movement of the tool to unexpected
positions may incite collisions.
To create the program with the plus side of the X-axis oriented in an upward direction, use
the mirror function of the WPC shift unit or the mirror imaging function of G-code command
(G50.1, G51.1).
! After modifying the tool data specified in the program, be sure to perform the tool path

d.
ve
check function, the Virtual Machining function, and other functions, and confirm that the

er
program operates properly. The modification of tool data may cause even a field-proven

s
re
machining program to change in operational status.

ts
If the user operates the machine without being aware of any changes in program status,

gh
interference with the workpiece could arise from unexpected operation.

ri
For example, if the cutting edge of the tool during the start of automatic operation is present

ll
.A
inside the clearance-including blank (unmachined workpiece) specified in the common unit

N
of the MAZATROL program, care is required since the tool will directly move from that

O
position to the approach point because of no obstructions being judged to be present on

TI
43

this path. A
R
94

For this reason, before starting automatic operation, make sure that the cutting edge of the
PO
26

tool during the start of automatic operation is present outside the clearance-including
R

workpiece specified in the common unit of the MAZATROL program.


o.

O
N

C
al

K
ri

! If axis-by-axis independent positioning is selected and simultaneously rapid feed selected


ZA
Se

for each axis, movements to the ending point will not usually become linear. Before using
A
IM

these functions, therefore, make sure that no obstructions are present on the path.
CAUTION
K

! Before starting the machining operation, be sure to confirm all contents of the program
ZA

obtained by conversion. Imperfections in the program could lead to machine damage and
A

operator injury.
M
YA
3
01
)2
(c
ht
ig
yr
op
C

S-4
Serial No. 269443

SAFETY PRECAUTIONS

Operations

! Single-block, feed hold, and override functions can be made invalid using system variables
#3003 and #3004. Execution of this means the important modification that makes the
corresponding operations invalid. Before using these variables, therefore, give thorough
WARNING
notification to related persons. Also, the operator must check the settings of the system
variables before starting the above operations.
! If manual intervention during automatic operation, machine locking, the mirror image
function, or other functions are executed, the workpiece coordinate systems will usually be
shifted. When making machine restart after manual intervention, machine locking, the

d.
mirror image function, or other functions, consider the resulting amounts of shift and take

ve
the appropriate measures. If operation is restarted without any appropriate measures being

er
taken, collision with the tool or workpiece may occur.

s
re
! Use the dry run function to check the machine for normal operation at no load. Since the

ts
gh
feed rate at this time becomes a dry run rate different from the program-designated feed

ri
rate, the axes may move at a feed rate higher than the programmed value.

ll
! After operation has been stopped temporarily and insertion, deletion, updating, or other

.A
commands executed for the active program, unexpected operation of the machine may

N
O
result if that program is restarted. No such commands should, in principle, be issued for the

TI
active program.
43

A
R
94

PO
26

! During manual operation, fully check the directions and speeds of axial movement.
R
o.

! For a machine that requires manual homing, perform manual homing operations after
N

C
al

turning power on. Since the software-controlled stroke limits will remain ineffective until
K

CAUTION
ri

ZA

manual homing is completed, the machine will not stop even if it oversteps the limit area.
Se

As a result, serious machine damage will result.


IM

! Do not designate an incorrect pulse multiplier when performing manual pulse handle feed
K

operations. If the multiplier is set to 1000 times and the handle operated inadvertently, axial
ZA

movement will become faster than that expected.


A
M
YA
3
01
)2
(c
ht
ig
yr
op
C

S-5
Serial No. 269443

REQUEST TO THE USER

REQUEST TO THE USER

Request for Saving Data of Machining Programs


Machining programs saved on the hard disk of the NC unit may not be read out in the event of
accidental hard disk trouble. The user, therefore, is earnestly requested to back up and store
every machining program of importance at regular intervals onto an external memory (USB
memory, memory card, etc.).
- The procedure for data storage is detailed in the Operating Manual, Part 3 (OPERATING NC
UNIT AND PREPARATION FOR AUTOMATIC OPERATION), Chapter 9, (DISPLAY RE-
LATED TO DATA STORAGE).

d.
ve
- Always use an initialized USB memory. The location of the USB connector depends on the

er
machine model, as shown below.

s
re
ts
gh
ri
USB memory

ll
.A
N
O
TI
43

A
R
94

PO
26

R
o.

O
N

C
al

K
ri

ZA
Se

Machines with left hand door Machines with right hand door
A
IM
K
ZA
A
M
YA
3
01
)2
(c
ht
ig
yr
op
C

On machines with a random ATC feature, each actual ATC operation changes the tool data (in
pocket numbers). Be sure not to run the machine after loading the externally stored data of the
TOOL DATA display without having confirmed the data’s correspondence to the current tooling
on the magazine. Otherwise the machine cannot be be guaranteed to operate normally.

S-6
Serial No. 269443

BEFORE USING THE NC UNIT

BEFORE USING THE NC UNIT

Limited Warranty
The warranty of the manufacturer does not cover any trouble arising if the NC unit is used for its
non-intended purpose. Take notice of this when operating the unit.
Examples of the trouble arising if the NC unit is used for its non-intended purpose are listed
below.
1. Trouble associated with and caused by the use of any commercially available software
products (including user-created ones)

.
2. Trouble associated with and caused by the use of any Windows operating systems

d
ve
er
3. Trouble associated with and caused by the use of any commercially available computer

s
re
equipment

ts
gh
ri
ll
Operating Environment

.A
N
1. Ambient temperature

O
TI
During machine operation: 0° to 50°C (32° to 122°F)
43

A
R
94

PO

2. Relative humidity
26

R
o.

During machine operation: 10 to 75% (without bedewing)


O
N

Note: As humidity increases, insulation deteriorates causing electrical component parts to


al

deteriorate quickly.
ri

ZA
Se

A
IM

Keeping the Backup Data


K
ZA

Note: Do not attempt to delete or modify the data stored in the following folder.
A
M

Recovery Data Storage Folder: D:\MazakBackUp


YA

Although this folder is not used when the NC unit is running normally, it contains important data
3

that enables the prompt recovery of the machine if it fails.


01
)2

If this data has been deleted or modified, the NC unit may require a long recovery time. Be sure
(c

not to modify or delete this data.


ht
ig
yr
op
C

S-7
C
op
yr
ig
- NOTE -

ht
(c
)2
01
3
YA
M
A Se
ZA
K ri
al
IM
N
A o.
ZA 26
K

S-8 E
94
C
O 43
Serial No. 269443

R
BEFORE USING THE NC UNIT

PO
R
A
TI
O
N
.A
ll
ri
gh
ts
re
ser
ve
d.
Serial No. 269443

CONTENTS
Page

1 UNITS OF PROGRAM DATA INPUT ................................................... 1-1

1-1 Units of Program Data Input ...............................................................................1-1

1-2 Units of Data Setting...........................................................................................1-1

1-3 Ten-Fold Program Data......................................................................................1-1

d .
ve
er
2 DATA FORMATS.................................................................................. 2-1

s
re
ts
2-1 Tape Codes ........................................................................................................2-1

gh
ri
ll
2-2 Program Formats ...............................................................................................2-5

.A
N
2-3 Tape Data Storage Format.................................................................................2-6

O
TI
43

A
R
94

2-4 Optional Block Skip ............................................................................................2-6


PO
26

R
o.

2-5 Program Number, Sequence Number and Block Number: O, N ........................2-7


O
N

C
al

K
ri

ZA

2-6 Parity-H/V ...........................................................................................................2-8


Se

A
IM

2-7 List of G-Codes ................................................................................................2-10


K
ZA

3 BUFFER REGISTERS.......................................................................... 3-1


A
M
YA

3-1 Input Buffer.........................................................................................................3-1


3
01
)2

3-2 Preread Buffer ....................................................................................................3-2


(c
ht
ig

4 POSITION PROGRAMMING................................................................ 4-1


yr
op
C

4-1 Dimensional Data Input Method .........................................................................4-1

4-1-1 Absolute/Incremental data input ............................................................................. 4-1

4-2 Inch/Metric Selection: G20/G21..........................................................................4-2

4-3 Decimal Point Input ............................................................................................4-3

C-1
Serial No. 269443

4-4 Polar Coordinate Input ON/OFF: G122/G123.....................................................4-6

4-5 X-axis Radial Command ON/OFF: G122.1/G123.1 ............................................4-7

5 INTERPOLATION FUNCTIONS........................................................... 5-1

5-1 Positioning (Rapid Traverse): G00 .....................................................................5-1

5-2 One-Way Positioning: G60 .................................................................................5-4

d .
ve
5-3 Linear Interpolation: G01 ....................................................................................5-5

s er
re
5-4 Circular Interpolation: G02, G03.........................................................................5-7

ts
gh
5-5 Radius Designated Circular Interpolation: G02, G03........................................5-10

ri
ll
.A
5-6 Plane Selection: G17, G18, G19 ......................................................................5-12

N
O
TI
5-6-1 Outline .................................................................................................................. 5-12
43

A
R
94

PO
26

5-6-2 Plane selection methods....................................................................................... 5-12


R
o.

O
N

5-7 Polar Coordinate Interpolation ON/OFF: G12.1/G13.1 .....................................5-13


al

K
ri

ZA
Se

5-8 Virtual-Axis Interpolation: G07..........................................................................5-17


A
IM
K

5-9 Cylindrical Interpolation: G07.1 ........................................................................5-18


ZA
A

5-10 Threading .........................................................................................................5-21


M
YA

5-10-1 Constant lead threading: G32............................................................................... 5-21


3
01
)2

5-10-2 Inch threading: G32 .............................................................................................. 5-24


(c
ht

5-10-3 Continuous threading............................................................................................ 5-25


ig
yr
op

5-10-4 Variable lead threading: G34 ................................................................................ 5-26


C

5-10-5 Threading with C-axis interpolation: G01.1........................................................... 5-27

5-10-6 Automatic correction of threading start position (for overriding in a threading


cycle) .................................................................................................................... 5-29

5-11 Helical Interpolation: G17, G18, G19 and G02, G03 ........................................5-31

C-2
Serial No. 269443

5-12 Fixed Gradient Control for G0 (Option).............................................................5-33

6 FEED FUNCTIONS .............................................................................. 6-1

6-1 Rapid Traverse Rates.........................................................................................6-1

6-2 Cutting Feed Rates.............................................................................................6-1

6-3 Synchronous/Asynchronous Feed: G99/G98 .....................................................6-1

d .
ve
6-4 Selecting a Feed Rate and Effects on Each Control Axis...................................6-3

s er
re
6-5 Threading Leads.................................................................................................6-6

ts
gh
6-6 Automatic Acceleration/Deceleration..................................................................6-7

ri
ll
.A
6-7 Limitation of Speed.............................................................................................6-7

N
O
TI
43

6-8 Exact-Stop Check: G09 ......................................................................................6-8


A
R
94

PO
26

6-9 Exact-Stop Check Mode: G61 ..........................................................................6-11


R
o.

O
N

C
al

6-10 Automatic Corner Override: G62 ......................................................................6-11


K
ri

ZA
Se

6-11 Tapping Mode: G63..........................................................................................6-16


IM
K

6-12 Cutting Mode: G64 ...........................................................................................6-16


ZA
A
M

7 DWELL FUNCTIONS ........................................................................... 7-1


YA
3
01

7-1 Dwell Command in Time: (G98) G04..................................................................7-1


)2
(c

7-2 Dwell Command in Number of Revolutions: (G99) G04 .....................................7-2


ht
ig
yr

8 MISCELLANEOUS FUNCTIONS ......................................................... 8-1


op
C

8-1 Miscellaneous Functions (M3-Digit)....................................................................8-1

8-2 No. 2 Miscellaneous Functions (A8/B8/C8-Digit)................................................8-2

9 SPINDLE FUNCTIONS ........................................................................ 9-1

9-1 Spindle Function (S5-Digit Analog).....................................................................9-1

C-3
Serial No. 269443

9-2 Constant Surface Speed Control ON/OFF: G96/G97 .........................................9-1

9-3 Spindle Speed Range Setting: G50....................................................................9-3

10 TOOL FUNCTIONS ............................................................................ 10-1

10-1 Tool Function (4-Digit T-Code) .........................................................................10-1

10-2 Tool Function (6-Digit T-Code) .........................................................................10-2

d .
ve
10-3 Tool Function (8-Digit T-Code) .........................................................................10-2

s er
re
11 TOOL OFFSET FUNCTIONS............................................................. 11-1

ts
gh
ri
11-1 Tool Offset........................................................................................................11-1

ll
.A
N
11-2 Tool Position Offset ..........................................................................................11-3

O
TI
43

A
11-3 Nose Radius/Tool Radius Compensation: G40, G41, G42...............................11-5
R
94

PO
26

11-3-1 Outline .................................................................................................................. 11-5


R
o.

O
N

11-3-2 Tool nose point and compensation directions ...................................................... 11-7


al

K
ri

ZA
Se

11-3-3 Operations of nose radius/tool radius compensation............................................ 11-8


A
IM
K

11-3-4 Other operations during nose radius/tool radius compensation ......................... 11-15
ZA
A

11-3-5 Commands G41/G42 and I, J, K designation ..................................................... 11-22


M
YA

11-3-6 Interruptions during nose radius/tool radius compensation ................................ 11-27


3
01
)2

11-3-7 General precautions on nose radius/tool radius compensation .......................... 11-29


(c
ht

11-3-8 Interference check .............................................................................................. 11-30


ig
yr

11-4 Programmed Data Setting: G10 .....................................................................11-35


op
C

11-5 Tool Offsetting Based on MAZATROL Tool Data ...........................................11-44

11-5-1 Selection parameters.......................................................................................... 11-44

11-5-2 Tool radius compensation................................................................................... 11-45

11-5-3 Tool data update (during automatic operation)................................................... 11-45

C-4
Serial No. 269443

12 PROGRAM SUPPORT FUNCTIONS ................................................. 12-1

12-1 Fixed Cycles for Turning...................................................................................12-1

12-1-1 Longitudinal turning cycle: G90 ............................................................................ 12-2

12-1-2 Threading cycle: G92............................................................................................ 12-4

12-1-3 Transverse turning cycle: G94.............................................................................. 12-6

.
12-2 Compound Fixed Cycles ..................................................................................12-8

d
ve
er
12-2-1 Longitudinal roughing cycle: G71 ......................................................................... 12-9

s
re
ts
12-2-2 Transverse roughing cycle: G72......................................................................... 12-14

gh
ri
12-2-3 Contour-parallel roughing cycle: G73 ................................................................. 12-16

ll
.A
N
12-2-4 Finishing cycle: G70 ........................................................................................... 12-20

O
TI
43

A
12-2-5 Longitudinal cut-off cycle: G74 ........................................................................... 12-21
R
94

PO
26

12-2-6 Transverse cut-off cycle: G75............................................................................. 12-24


R
o.

O
N

12-2-7 Compound threading cycle: G76 ........................................................................ 12-27


al

K
ri

ZA
Se

12-2-8 General notes on the compound fixed cycles G70 to G76 ................................. 12-34
A
IM
K

12-3 Hole Machining Fixed Cycles: G80 to G89.....................................................12-37


ZA
A

12-3-1 Outline ................................................................................................................ 12-37


M
YA

12-3-2 Face/Outside deep hole drilling cycle: G83/G87 ................................................ 12-41


3
01
)2

12-3-3 Face/Outside tapping cycle: G84/G88................................................................ 12-42


(c
ht

12-3-4 Face/Outside boring cycle: G85/G89.................................................................. 12-42


ig
yr

12-3-5 Face/Outside synchronous tapping cycle: G84.2/G88.2 .................................... 12-43


op
C

12-3-6 Hole machining fixed cycle cancel: G80 ............................................................. 12-45

12-3-7 General notes on the hole machining fixed cycles ............................................. 12-45

12-3-8 Sample programs with fixed cycles for hole machining ...................................... 12-46

C-5
Serial No. 269443

12-4 Hole Machining Pattern Cycles: G234.1/G235/G236/G237.1.........................12-47

12-4-1 Overview............................................................................................................. 12-47

12-4-2 Holes on a circle: G234.1 ................................................................................... 12-47

12-4-3 Holes on a line: G235 ......................................................................................... 12-49

12-4-4 Holes on an arc: G236........................................................................................ 12-51

12-4-5 Holes on a grid: G237.1...................................................................................... 12-52

d .
ve
er
12-5 Subprogram Control: M98, M99 .....................................................................12-54

s
re
ts
12-6 End Processing: M02, M30, M998, M999.......................................................12-62

gh
ri
12-7 Chamfering and Corner Rounding at Right Angle Corner ..............................12-63

ll
.A
N
12-8 Chamfering and Corner Rounding at Arbitrary Angle Corner Function...........12-66

O
TI
43

A
12-8-1 Chamfering at arbitrary angle corner: , C_ ......................................................... 12-66
R
94

PO
26

12-8-2 Rounding at arbitrary angle corner: , R_............................................................. 12-67


R
o.

O
N

C
al

12-9 Linear Angle Commands ................................................................................12-68


ri

ZA
Se

12-10 Macro Call Function: G65, G66, G66.1, G67..................................................12-69


IM
K

12-10-1 User macros ....................................................................................................... 12-69


ZA
A
M

12-10-2 Macro call instructions ........................................................................................ 12-70


YA
3

12-10-3 Variables............................................................................................................. 12-79


01
)2

12-10-4 Types of variables............................................................................................... 12-81


(c
ht

12-10-5 Arithmetic operation commands ....................................................................... 12-106


ig
yr
op

12-10-6 Control commands............................................................................................ 12-110


C

12-10-7 External output commands (Output via RS-232C)............................................ 12-114

12-10-8 External output command (Output onto the hard disk) ..................................... 12-116

12-10-9 Precautions....................................................................................................... 12-118

12-10-10 Specific examples of programming using user macros ................................. 12-120

C-6
Serial No. 269443

13 COORDINATE SYSTEM SETTING FUNCTIONS.............................. 13-1

13-1 Coordinate System Setting Function: G50 .......................................................13-1

13-2 MAZATROL Coordinate System Cancellation: G52.5 ......................................13-5

13-3 Selection of MAZATROL Coordinate System: G53.5 .......................................13-7

13-4 Selection of Workpiece Coordinate System: G54 to G59 .................................13-9

d .
ve
13-5 Additional Workpiece Coordinate System Setting and Selection: G54.1

er
(Option) ..........................................................................................................13-10

s
re
ts
13-6 Shift of Workpiece Coordinate System ...........................................................13-12

gh
ri
ll
13-7 Programmed Shift of Workpiece Coordinate System .....................................13-12

.A
N
O
13-8 Selection of Machine Coordinate System: G53 ..............................................13-13

TI
43

A
R
94

13-9 Selection of Local Coordinate System: G52 ...................................................13-14


PO
26

R
o.

13-10 Automatic Return to Reference Point (Zero Point): G28, G29........................13-15


N

C
al

K
ri

ZA

13-11 Return to Second Reference Point (Zero Point): G30 ....................................13-17


Se

A
IM

13-12 Reference Point Check: G27..........................................................................13-19


K
ZA

13-13 Programmed Coordinate Conversion ON/OFF: G68.5/G69.5 ........................13-20


A
M
YA

14 MEASUREMENT SUPPORT FUNCTIONS........................................ 14-1


3
01
)2

14-1 Skip Function: G31 ...........................................................................................14-1


(c
ht

14-1-1 Function description.............................................................................................. 14-1


ig
yr
op

14-1-2 Amount of coasting in the execution of a G31 block............................................. 14-3


C

14-1-3 Skip coordinate reading error ............................................................................... 14-4

15 PROTECTIVE FUNCTIONS............................................................... 15-1

15-1 Pre-move Stroke Check ON/OFF: G22/G23 ....................................................15-1

C-7
Serial No. 269443

16 TWO-SYSTEM CONTROL FUNCTION ............................................. 16-1

16-1 Two-Process Control by One Program: G109 ..................................................16-1

16-2 Specifying/Cancelling Cross Machining Control Axis: G110/G111 ...................16-2

16-3 M, S, T, B Output Function to Counterpart: G112 ............................................16-6

17 COMPOUND MACHINING FUNCTIONS ........................................... 17-1

d .
ve
17-1 Programming for Compound Machining ...........................................................17-1

s er
re
17-2 Waiting Command: M950 to M997, P1 to P99999999......................................17-2

ts
gh
ri
17-3 Balanced Cutting ..............................................................................................17-4

ll
.A
N
17-4 Milling with the Lower Turret.............................................................................17-6

O
TI
43

A
17-5 Compound Machining Patterns ........................................................................17-8
R
94

PO
26

18 POLYGONAL MACHINING ................................................................ 18-1


o.

O
N

C
al

18-1 Polygonal Machining ON/OFF: G51.2/G50.2 ...................................................18-1


ri

ZA
Se

A
IM

19 MEASUREMENT MACROS ............................................................... 19-1


K
ZA

20 TORNADO TAPPING (G130)............................................................. 20-1


A
M
YA

21 EIA/ISO PROGRAM DISPLAY ........................................................... 21-1


3
01
)2

21-1 Procedures for Constructing an EIA/ISO Program ...........................................21-1


(c
ht
ig

21-2 Editing Function of EIA/ISO PROGRAM Display..............................................21-2


yr
op

21-2-1 General ................................................................................................................. 21-2


C

21-2-2 Operation procedure............................................................................................. 21-2

21-3 Macro-Instruction Input.....................................................................................21-8

21-4 Division of Display (Split Screen)......................................................................21-9

21-5 Editing Programs Stored in External Memory Areas ......................................21-12

C-8 E
Serial No. 269443

UNITS OF PROGRAM DATA INPUT 1


1 UNITS OF PROGRAM DATA INPUT

1-1 Units of Program Data Input


The movements on coordinate axes are to be commanded in the MDI mode or machining
program. The movement data are expressed in millimeters, inches or degrees.

1-2 Units of Data Setting


Various data commonly used for control axes, such as offsetting data, must be set for the
machine to perform an operation as desired.
The units of data setting and those of program data input are listed below.

d .
ve
Linear axis

er
Rotational axis

s
Metric system Inch system

re
Units of program data input 0.0001 mm 0.00001 in 0.0001 deg

ts
gh
Units of data setting 0.0001 mm 0.00001 in 0.0001 deg

ri
ll
Note 1: Inch/metric selection can be freely made using either bit 4 of parameter F91 (“0” for

.A
metric, “1” for inches; validated through power-off and -on) or G-code commands (G20,

N
G21).

O
TI
Selection using the G-code commands is valid only for program data input.
43

A
Variables and offsetting data (such as tool offsetting data) should therefore be set
R
94

beforehand using the appropriate unit (inch or metric) for the particular machining
PO
26

requirements.
R
o.

O
N

Note 2: Metric data and inch data cannot be used at the same time.
C
al

K
ri

ZA

1-3 Ten-Fold Program Data


Se

A
IM

Using a predetermined parameter, machining program data can be processed as set in units of
one micron. There may be cases that a machining program which has been set in units of one
K
ZA

micron is to be used with a numerical control unit based on 0.1 micron increments. In such cases,
use of this parameter allows the machine to perform the required machining operations without
A
M

rewriting the program.


YA

Use bit 0 of user parameter F91 for this purpose.


3

All types of coordinate data (axis movement data) not provided with the decimal point will be
01

multiplied by a factor of 10. This does not apply, indeed, to preset tool-offsetting data designated
)2

with addresses H and D.


(c
ht

Moving distance when program commands are executed Program


ig

Program
Control axis MAZATROL (B) applicability
yr

command NC (A) for which the


program was prepared (A) → (B)
op

Bit 0 of F91 = 0 Bit 0 of F91 = 1


C

Linear axis X1 (Y1 / Z1) 1 micron 0.1 micron 1 micron Applicable


Rotational axis B1 0.001° 0.0001° 0.001° Applicable

1-1
1

C
op
yr
ig
- NOTE -

ht
(c
)2
01
3
UNITS OF PROGRAM DATA INPUT

YA
M
A Se
ZA
K ri
al
IM
N
A o.
ZA 26
K

1-2 E
94
C
O 43
Serial No. 269443

R
PO
R
A
TI
O
N
.A
ll
ri
gh
ts
re
ser
ve
d.
Serial No. 269443

DATA FORMATS 2
2 DATA FORMATS

2-1 Tape Codes


This numerical control unit (in the remainder of this manual, referred to as the NC unit) uses
command information that consists of letters of the alphabet (A, B, C .... Z), numerics (0, 1, 2 ....
9), and signs (+, –, /, and so on). These alphanumerics and signs are referred to collectively as
characters. On paper tape, these characters are represented as a combination of a maximum of
eight punched holes.
Such a representation is referred to as a code.
The NC unit uses either the EIA codes (RS-244-A) or the ISO codes (R-840).

d .
Note 1: Codes not included in the tape codes shown in Fig. 2-1 will result in an error when they

ve
are read.

ser
re
Note 2: Of all codes specified as the ISO codes but not specified as the EIA codes, only the
following codes can be designated using the data I/O (Tape) parameters TAP9 to

ts
gh
TAP14:

ri
[ Bracket Open

ll
] Bracket Close

.A
# Sharp

N
O
∗ Asterisk

TI
= Equal sign
43

A
: Colon
R
94

PO

However, you cannot designate codes that overlap existing ones or that result in parity
26

error.
o.

O
N

Note 3: EIA/ISO code identification is made automatically according to the first EOB/LF code
al

appearing after the NC unit has been reset. (EOB: End Of Block, LF: Line Feed)
ri

ZA
Se

1. Significant information area (LABEL SKIP function)


IM

During tape-based automatic operation, data storage into the memory, or data searching, the NC
K

unit will ignore the entire information up to the first EOB code (;) in the tape when the unit is
ZA

turned on or reset. That is, significant information in a tape refers to the information contained in
A
M

the interval from the time a character or numeric code appears, following the first EOB code (;)
YA

after the NC unit has been reset, until a reset command is given.
3
01

2. Control Out, Control In


)2

The entire information in the area from Control Out “(” to Control In “)” will be ignored in regard to
(c

machine control, while they will surely be displayed on the data display unit. Thus, this area can
ht

be used to contain information, such as the name and number of the command tape, that is not
ig
yr

directly related to control.


op

During tape storage, however, the information in this area will also be stored. The NC unit will
C

enter the Control In status when power is turned on.

2-1
Serial No. 269443

2 DATA FORMATS

Example of EIA Code


Control Out Control In

ECN N CE
O U P ROGR AM U NO . 1 0 1 O
BOL L I B

.
Name of tape is printed out

d
ve
er
ECN D ND N N D N DNNCE

s
O U 1 1 E 1 1 U ERRRUORR / U 1 1 E 1 1 U 2 EUU O

re
BO L L L L L L L L L L L I B

ts
gh
ri
ll
.A
N
O
TI
43

Name of tape is punched in captital letters.


A MEP003
R
94

PO
26

Example of ISO Code


o.

Control Out Control In


O
N

EC S E
al

O G 0 0 X – 8 5 0 0 0 Y– 6 4 0 0 0 ( C U T T E R RE T U R N ) O
ri

ZA

BR P B
Se

A
IM
K
ZA
A
M
YA

Operator information is printed out.


3
01

The information at this portion is ignored


and nothing is executed.
)2

MEP004
(c
ht

3. EOR code (%)


ig
yr

In general, the EOR (End Of Record) code is punched at both ends of a tape and has the
op

following functions:
C

- To stop rewinding (only when a rewinding device is provided)


- To start rewinding during tape data search (only when a rewinding device is provided)
- To terminate the storage of tape data.

2-2
Serial No. 269443

DATA FORMATS 2
4. Tape creation method for tape operation (Only when a rewinding device is used)

% 10 cm EOB EOB EOB EOB 10 cm %

2m First block Last block 2m

.d
ve
er
The two meters of dummy at both ends and the EOR (%) at the head are not required when a

s
re
rewinding device is not used.

ts
gh
ri
ll
.A
N
O
TI
43

A
R
94

PO
26

R
o.

O
N

C
al

K
ri

ZA
Se

A
IM
K
ZA
A
M
YA
3
01
)2
(c
ht
ig
yr
op
C

2-3
Serial No. 269443

2 DATA FORMATS

EIA/ISO identification is made automatically by detecting whether EOB or LF initially appears


after the NC unit has been reset.

EIA code (RS-244-A) ISO code (R-840)


Feed holes Feed holes
8 7 6 5 4 3 2 1 Channel number 8 7 6 5 4 3 2 1 Channel number

1 1
2 2
3 3
4 4
5 5
6 6
7 7
8 8
9 9

.
0 0

d
ve
A A
B B

er
C C

s
D D

re
E E
F F

ts
G G

gh
H H
I I

ri
J J

ll
K K

.A
L L
M M

N
N N

O
O O
P

TI
P
Q
43

Q A
R R
R
94

S S
PO

T T
26

U U
R

V V
o.

W
O

W
N

X X
C

Y Y
al

Z Z
ri

ZA

+ +
Se

– –
.
A

.
,
IM

,
/ /
EOR (End of Record) %
K

EOB (End of Block) or CR LF (Line Feed) or NL


ZA

CO (2+4+5) ( (Control Out)


CI (2+4+7) ) (Control In)
A

:
M

#

YA

Definable in parameters
=
[
3

]
01

BS (Back Space) BS (Back Space)


)2

TAB HT (Horizontal Tab)


SP (Space) SP (Space)
(c

& &
CR (Carriage Return)
ht

$ [1]
ig

’ (Apostrophe)
yr

;
<
op

>
C

?
@

DEL (Delete) DEL (Delete)
AS (All Space=Feed)* NULL [2]
AM (All Mark=EOB+DEL)* DEL (Delete)

* The codes asterisked above are not EIA codes, LF or NL acts as EOB and %
but may be used for the convenience’s sake. acts as EOR.
MEP006

Fig. 2-1 Tape codes

2-4
Serial No. 269443

DATA FORMATS 2
Codes in section [1] will only be stored as tape data when they are present in a comment section,
and ignored elsewhere in the significant information area.
Codes in section [2] are non-operative and will always be ignored (but undergo the parity-V
check).
A dotted area indicates that the EIA Standard provides no corresponding codes.

2-2 Program Formats


A format predetermined for assigning control information to the NC unit is referred to as a
program format. The program format used for our NC unit is word address format.

1. Words and addresses

d .
A word is a set of characters arranged as shown below, and information is processed in words.

ve
s er
Word

re
ts
gh
ri
Numeral

ll
.A
Alphabet (address)

N
O
Word configuration

TI
43

A
R
94

The alphabetic character at the beginning of a word is referred to as an address, which defines
PO
26

the meaning of its succeeding numeric information.


R
o.

Table 2-1 Type and format of words


O
N

Item Metric command Inch command


al

K
ri

ZA

Program No. O8
Se

Sequence No. N5
IM

Preparatory function G3 or G21


K

0.0001 mm (deg.),
Moving axis X+54 Y+54 Z+54 α+54 X+45 Y+45 Z+45 α+45
ZA

0.00001 in
A

0.0001 mm (deg.),
M

Auxiliary axis I+54 J+54 K+54 I+45 J+45 K+45


0.00001 in
YA

Input 0.001 mm (rev),


Dwell X54 P8 U54
3

unit 0.0001 in
01

0.0001 mm (deg.), F54 (per minute) F45 (per minute)


)2

Feed
0.00001 in F33 (per revolution) F24 (per revolution)
(c

0.0001 mm (deg.),
ht

Fixed cycle R+54 Q54 P8 L4 R+45 Q45 P8 L4


0.00001 in
ig

Tool offset T2 or T3
yr
op

Miscellaneous function M3 × 4
C

Spindle function S5
Tool function T4 or T6
No. 2 miscellaneous function B8, A8 or C8
Subprogram P4 Q5 L4
Variables number #5

2-5
Serial No. 269443

2 DATA FORMATS

1. Code O8 here indicates that program number can be set as an unsigned integer of eight
digits following O, and for X+54, “+” indicates that the value can be signed (negative) and
the two-digit number (54) indicates that the decimal point can be used and that five digits
before and four after the decimal point are effective (5 + 4 = 9 digits are effective for a
designation without decimal point).
2. The alpha sign (α) denotes additional axis address. +44 will be used when α is specified for
rotational axis.
3. The number of digits in the words is checked by the maximum number of digits in the
addresses.
4. When data with decimal point is used for address for which decimal input is not available,
decimal figures will be ignored.

d.
ve
5. If the number of integral digits exceeds the specified format, an alarm will result.

ser
6. If the number of decimal digits exceed the specified format, the excess will be rounded.

re
ts
2. Blocks

gh
ri
A block, unit of instruction, contains a number of words which constitute information necessary

ll
for the NC machine to perform an operation. The end of each block must be indicated by an EOB

.A
(End Of Block) code.

N
O
TI
3. Programs
43

A number of blocks form one program.


A
R
94

PO
26

4. Program end
R
o.

O
N

M02, M30, M99, M998, M999 or % is used as program end code.


C
al

K
ri

ZA

2-3 Tape Data Storage Format


Se

A
IM

As with tape operation, tape data to be stored into the memory can be either of ISO or EIA code.
The first EOB code read in after resetting is used by the NC unit for automatic identification of the
K
ZA

code system ISO or EIA.


The area of tape data to be stored into the memeory is, if the NC unit has been reset, from the
A
M

character immediately succeeding the first EOB code the EOR code, and in all other cases, from
YA

the current tape position to the EOR code. Usually, therefore, start tape data storage operation
3

after resetting the NC unit.


01
)2

2-4 Optional Block Skip


(c
ht
ig

1. Function and purpose


yr

Optional block skip is a function that selectively ignores that specific block within a machining
op

program which begins with the slash code “/”.


C

Any block beginning with “/” will be ignored if the [BLOCK SKIP] menu function is set to ON, or
will be executed if the menu function is set to OFF.
For example, if all blocks are to be executed for a type of parts but specific blocks are not to be
executed for another type, then different parts can be machined using one and the same
program that contains the “/” code at the beginning of the specific blocks.

2-6
Serial No. 269443

DATA FORMATS 2
2. Operating notes
1. Blocks that have already been read into the pre-read buffer cannot be skipped.
2. This function is valid even during sequence number search.
3. During tape data storage (input) or output, all blocks, including those having a “/” code, are
in- or outputted, irrespective of the status of the [BLOCK SKIP] menu function.

2-5 Program Number, Sequence Number and Block Number: O, N


Program numbers, sequence numbers, and block numbers are used to monitor the execution
status of a machining program or to call a machining program or a specific process within a
machining program.

. d
Program numbers are assigned to command blocks as required. A program number must be set

ve
using the letter O (address) and a numeric of a maximum of eight digits that follow O.

s er
Sequence numbers identify command blocks forming a machining program. A sequence number

re
must be set using the letter N (address) and a numeric of a maximum of five digits that follow N.

ts
Block numbers are counted automatically within the NC unit, and reset to 0 each time a program

gh
ri
number or a sequence number is read. These numbers will be counted up by one if the block to

ll
be read does not have an assigned program number or sequence number.

.A
All blocks of a machining program, therefore, can be uniquely defined by combining program

N
number, sequence number, and block number as shown in the table below.

O
TI
43

NC input machining program


A NC MONITOR display
R
94

Program No. Sequence No. Block No.


PO
26

O1234 (DEMO. PROG); 1234 0 0


R
o.

N100 G00 X120. Z100.; 1234 100 0


N

1234 100 1
al

G98 S1000;
K
ri

ZA

N102 G71 P210 Q220 I0.2 K0.2 D0.5 F600; 1234 102 0
Se

N200 G98 S1200 F300; 1234 200 0


IM

N210 G01 X0 Z95.; 1234 210 0


K

G01 X20.; 1234 210 1


ZA

G03 X50. Z80. K-15.; 1234 210 2


A

1234 210 3
M

G01 Z55.;
YA

G02 X80. Z40. I15.; 1234 210 4


G01 X100.; 1234 210 5
3
01

G01 Z30.; 1234 210 6


)2

G02 Z10. K-15.; 1234 210 7


(c

N220 G01 Z0; 1234 220 0


ht

N230 G00 X120. Z150.; 1234 230 0


ig
yr

N240 M02; 1234 240 0


op

% 1234 240 0
C

2-7
Serial No. 269443

2 DATA FORMATS

2-6 Parity-H/V
One method of checking if the tape is correctly created is by parity checks. Parity checks are
performed to check a tape for errors in punched codes, that is, for punching errors. There are two
types of parity checks: parity-H and parity-V.

1. Parity-H check
Parity-H checks are intended to check the quantity of punched holes which form one character,
and performed during tape operation, tape loading, and sequence-number searching.
A parity-H error occurs in the following cases:
- ISO Codes

d .
ve
If a code with an odd number of punched holes is present in the significant information area.

er
- EIA Codes

s
re
If a code with an even number of punched holes is present in the significant information area or

ts
if non-punched holes (sprockets only) are present after a significant code in one block.

gh
Parity-H error (for EIA codes)

ri
Example 1:

ll
.A
N
O
TI
43

A
R
94

PO
26

R
o.

O
N

This character leads to a Parity-H error.


al

K
ri

ZA

One block
Se

A
IM
K
ZA
A
M
YA
3
01

This non-punched character will result in a Parity-H


error.
)2

These non-punched characters will


(c

not result in a Parity-H error.


ht

MEP007
ig
yr

If a parity-H error occurs, the tape will stop at the position next to the error code.
op
C

2-8
Serial No. 269443

DATA FORMATS 2
2. Parity-V check
Parity-V checks will be performed during tape operation, tape loading, or sequence-number
searching, if parity-V check item on the PARAMETER display is set to ON. Parity-V during
memory operation, however, will not be checked.
A parity-V error occurs in the following case:
If an odd number of codes are present in the significant information area from the first significant
code in the vertical direction to the EOB code (;), that is, if an odd number of characters are
present in one block.
In the event of a parity-V error, the tape stops at a code next to the EOB (;).
Example 2: An example of parity-V error

.d
ve
ser
re
ts
gh
ri
ll
.A
1 2 3 4 5 6 7

N
O
TI
43

This block leads to a Parity-V error.


A MEP009
R
94

PO
26

Note 1: During a parity-V check, some types of code are not counted as characters. See Fig.
R
o.

2-1, “Tape codes” for further details.


O
N

Note 2: Space codes in the area from the first EOB code to the first address code or slash code
al

K
ri

ZA

“/” are not subjected to counting for parity-V check.


Se

A
IM
K
ZA
A
M
YA
3
01
)2
(c
ht
ig
yr
op
C

2-9
Serial No. 269443

2 DATA FORMATS

2-7 List of G-Codes


G functions are described in the list below.

Function G-code Group


Positioning ■G00 01
Linear interpolation ■G01 01
Threading with C-axis interpolation G01.1 01
Circular interpolation (CW) G02 01
Circular interpolation (CCW) G03 01
Dwell G04 00

.
Virtual-axis interpolation G07 00

d
ve
Cylindrical interpolation G07.1 00

er
Exact-stop check G09 00

s
re
Data setting mode ON G10 00

ts
Command address OFF G10.1 00

gh
Data setting mode OFF G11 00

ri
Polar coordinate interpolation ON G12.1 26

ll
Polar coordinate interpolation OFF ▲G13.1 26

.A
X-Y plane selection ■G17 02

N
O
Z-X plane selection ■G18 02

TI
Y-Z plane selection ■G19 02
43

Inch command
A ■G20 06
R
94

PO

Metric command ■G21 06


26

Pre-move stroke check ON G22 04


o.

O
N

Pre-move stroke check OFF ▲G23 04


C
al

Reference point check G27 00


K
ri

ZA

Reference point return G28 00


Se

Return from reference point G29 00


IM

Return to 2nd, 3rd and 4th reference points G30 00


K

Skip function G31 00


ZA

Multi-step skip 1 G31.1 00


A

Multi-step skip 2 G31.2 00


M

Multi-step skip 3 G31.3 00


YA

Thread cutting (straight, taper) G32 01


3

Variable lead thread cutting G34 01


01

Hole machining pattern cycle (on a circle) G234.1 00


)2

Hole machining pattern cycle (on a line) G235 00


(c

Hole machining pattern cycle (on an arc) G236 00


ht
ig

Hole machining pattern cycle (on a grid) G237.1 00


yr

Nose radius/Tool radius compensation OFF ▲G40 07


op

Nose radius/Tool radius compensation (left) G41 07


C

Nose radius/Tool radius compensation (right) G42 07


Coordinate system setting/Spindle speed range setting G50 00
Polygonal machining mode OFF ▲G50.2 23
Polygonal machining mode ON G51.2 23
Local coordinate system setting G52 00
MAZATROL coordinate system cancel ■G52.5 00
Machine coordinate system selection G53 00
MAZATROL coordinate system selection ■G53.5 00
Selection of workpiece coordinate system 1 ▲G54 12

2-10
Serial No. 269443

DATA FORMATS 2
Function G-code Group
Selection of workpiece coordinate system 2 G55 12
Selection of workpiece coordinate system 3 G56 12
Selection of workpiece coordinate system 4 G57 12
Selection of workpiece coordinate system 5 G58 12
Selection of workpiece coordinate system 6 G59 12
One-way positioning G60 00
Exact-stop check mode G61 13
Automatic corner override G62 13
Tapping mode G63 13
Cutting mode ▲G64 13

.
d
User macro single call G65 00

ve
User macro modal call A G66 14

ers
User macro modal call B G66.1 14

re
User macro modal call OFF ▲G67 14

ts
Finishing cycle G70 09

gh
Longitudinal roughing cycle G71 09

ri
ll
Transverse roughing cycle G72 09

.A
Contour-parallel roughing cycle G73 09

N
Longitudinal cut-off cycle G74 09

O
TI
Transverse cut-off cycle G75 09
43

Compound thread-cutting cycle


A G76 09
R
94

PO

Fixed cycle OFF ▲G80 09


26

Front driling cycle G83 09


R
o.

Front tapping cycle G84 09


N

Front synchronous tapping cycle G84.2 09


al

K
ri

ZA

Front boring cycle G85 09


Se

Outside driling cycle G87 09


IM

Outside tapping cycle G88 09


K

Outside synchronous tapping cycle G88.2 09


ZA

Outside boring cycle G89 09


A

Fixed cycle A (Longitudinal turning cycle) G90 09


M

Threading cycle G92 09


YA

Fixed cycle B (Transverse turning cycle) G94 09


3
01

Constant surface speed control ON ■G96 17


)2

Constant surface speed control OFF ■G97 17


(c

Feed per minute (asynchronous) ■G98 05


ht

Feed per revolution (synchronous) ■G99 05


ig

Single program multi-system control G109 00


yr

Cross machining control ON G110 20


op

Cross machining control OFF G111 20


C

M, S, T, B output to opposite system G112 00


Polar coordinate input ON G122 18
Polar coordinate input OFF G123 18
X-axis radial command ON G122.1 00
X-axis radial command OFF ▲G123.1 00
Tornado cycle G130
Measurement macro, workpiece/coordinate measurement G136
Compensation macro G137

2-11
Serial No. 269443

2 DATA FORMATS

Notes:
1. The codes marked with ▲ are automatically selected in each group upon switching-on or
resetting with initializing the modal conditions.
2. The codes marked with ! are able to be selected by a parameter as an initial modal
condition which is to become valid upon switching-on or resetting with initializing the modal
conditions. Changeover of inch/metric system, however, can be made valid only by
switching-on.
3. G-codes of group 00 are those which are not modal, and they are valid only for blocks in
which they are entered.
4. If a G-code not given in the G-code list is used, an alarm is displayed. And if a G-code

.
without corresponding option is used, an alarm is displayed (808 MIS-SET G CODE).

d
ve
5. If G-codes belong to different groups each other, any G-code can be used in the same block.

ser
The G-codes are then processed in order of increasing group number. If two or more G-

re
codes belonging to the same group are given in the same block, the G-code entered last is

ts
valid.

gh
ri
ll
.A
N
O
TI
43

A
R
94

PO
26

R
o.

O
N

C
al

K
ri

ZA
Se

A
IM
K
ZA
A
M
YA
3
01
)2
(c
ht
ig
yr
op
C

2-12 E
Serial No. 269443

BUFFER REGISTERS 3
3 BUFFER REGISTERS

3-1 Input Buffer

1. Overview
During tape operation or RS-232C operation, when the preread buffer becomes empty, the
contents of the input buffer will be immediately shifted into the pre-read buffer and, following this,
if the memory capacity of the input buffer diminuishes to 248 × 4 characters or less, next data (up
to 248 characters) will be preread from the tape and then stored into the input buffer.
The input buffer makes block-to-block connections smooth by eliminating any operational delays

.
due to the tape-reading time of the tape reader.

d
ve
These favorable results of prereading, however, will be obtained only if the execution time of the

er
block is longer than the tape-reading time of the next block.

s
re
ts
gh
ri
ll
.A
Preread
Tape Input buffer
buffer 5

N
O
TI
Buffer 4
43

Mode
A
R
94

Memory selection
PO

Buffer 3
26

R
o.

Buffer 2
N

Keyboard
al

Arithmetic
K
ri

operation
ZA

Buffer 1
MDI data
Se

process
A
IM
K

Note:
ZA

One block of data is stored in one buffer.


A
M

TEP010
YA
3

2. Detailed description
01
)2

- The memory capacity of the input buffer is 248 × 5 characters (including the EOB code).
(c

- The contents of the input buffer register are updated in 248-character units.
ht
ig

- Only the significant codes in the significant information area are read into the buffer.
yr

- Codes, including “(” and “)”, that exist between Control Out and Control In, are read into the
op
C

input buffer. Even if optional block skip is valid, codes from / to EOB will also be read into the
input buffer.
- The contents of the buffer are cleared by a reset command.

3-1
Serial No. 269443

3 BUFFER REGISTERS

3-2 Preread Buffer

1. Overview
During automatic operation, one block of data is usually preread to ensure smooth analysis of
the program. During tool nose radius compensation, however, maximal five blocks of data are
preread to calculate crossing point or to check the interference.

2. Detailed description
- One block of data is stored into the prepared buffer.
- Only the significant codes in the significant information area are read into the pre-read buffer.

d.
ve
- Codes existing between Control Out and Control In are not read into the pre-read buffer. If

er
optional block skip is valid, codes from / to EOB will not also be read into the pre-read buffer.

s
re
- The contents of the buffer are cleared by a reset command.

ts
gh
- If the single block operation mode is selected during continuous operation, processing will stop

ri
after pre-reading the next block data.

ll
.A
N
O
TI
43

A
R
94

PO
26

R
o.

O
N

C
al

K
ri

ZA
Se

A
IM
K
ZA
A
M
YA
3
01
)2
(c
ht
ig
yr
op
C

3-2 E
Serial No. 269443

POSITION PROGRAMMING 4
4 POSITION PROGRAMMING

4-1 Dimensional Data Input Method

4-1-1 Absolute/Incremental data input


Absolute and incremental data input methods are distinguished by axis addresses as shown in
the table below.
Command system Remarks
X-axis Address X - The address corresponding to the desired axis is to
be set by machine parameter.

.
Z-axis Address Z

d
Absolute data

ve
- Absolute and incremental data can be used together
C-aixs Address C
in the same block.

er
Y-aixs Address Y

s
- Address of incremental data input for A- and B-axes

re
X-axis Address U does not exist.

ts
Z-axis Address W

gh
Incremental data
C-aixs Address H

ri
Y-aixs Address V

ll
.A
Example: X_____ W_____ ;

N
O
Incremental data input for the Z-axis

TI
43

Absolute data input for the X-axis


A
R
94

PO
26

R
o.

O
N

C
al

K
ri

ZA
Se

A
IM
K
ZA
A
M
YA
3
01
)2
(c
ht
ig
yr
op
C

4-1
Serial No. 269443

4 POSITION PROGRAMMING

4-2 Inch/Metric Selection: G20/G21

1. Function and purpose


Inch command/metric command selection is possible with G-code commands.

2. Programming format
G20: Inch command selection
G21: Metric command selection

3. Detailed description

d .
1. Changeover between G20 and G21 is effective only for linear axes; it is meaningless for

ve
er
rotational axes.

s
Preset unit of data input and G20/G21 (for decimal-point input type Ι)

re
Example:

ts
gh
Initial Inch (parameter) OFF Initial Inch (parameter) ON
Axis Example

ri
G21 G20 G21 G20

ll
X X100 0.0100 mm 0.0254 mm 0.00039 inches 0.00100 inches

.A
Y Y100 0.0100 mm 0.0254 mm 0.00039 inches 0.00100 inches

N
O
Z Z100 0.0100 mm 0.0254 mm 0.00039 inches 0.00100 inches

TI
B B100 0.0100 deg 0.0100 deg 0.0100 deg 0.0100 deg
43

A
R
94

PO

2. To perform G20/G21 changeover in a program, you must first convert variables, parameters,
26

and offsetting data (such as tool length/tool position/tool diameter offsetting data) according
R
o.

to the unit of data input for the desired system (inch or metric) and then set all these types of
N

data either on each data setting display or using the programmed parameter input function.
al

K
ri

ZA

Example: If Initial inch selection is OFF and offsetting data is 0.05 mm, the offsetting data
Se

must be converted to 0.002 (0.05 ÷ 25.4 ≈ 0.002) before changing the G21
IM

mode over to the G20 mode.


K

3. In principle, G20/G21 selection should be done before machining. If you want this
ZA

changeover to be performed in the middle of the program, temporarily stop the program by
A
M

an M00 command after G20 or G21 and convert the offsetting data as required.
YA

Example: G21 G92 Xx1 Yy1 Zz1


3

M M
01

M M
)2

M M
(c

G20 G92 Xx2 Yy2 Zz2


ht

M00 → Convert offsetting data here.


ig

M
yr

F10 →
op

Set an F (Feed rate) command anew.


C

Note: Do not fail to give an F command appropriate to the new unit system after
changeover between G20 and G21. Otherwise, axis movements would be
performed using the last F value before the changeover, without any conversion,
on the basis of the new unit system.
4. Whether G20 or G21 is to be selected upon switching-on can be specified by the bit 4 of
user parameter F91 (Initial Inch parameter).

4-2
Serial No. 269443

POSITION PROGRAMMING 4

4-3 Decimal Point Input

1. Function and purpose


The decimal point can be used to determin the units digit (mm or inch) of dimensional data or
feed rate.

2. Programming format
!!!!!.!!!! Metric system
!!!!.!!!!! Inch system

d .
3. Detailed description

ve
er
1. Decimal-point commands are valid only for the distance, angle, time, speed, and scaling

s
re
factor (only after G51) that have been set in the machining program.

ts
2. As listed in the table below, the meaning of command data without the decimal point differs

gh
between decimal-point input types Ι and ΙΙ according to the type of command unit system.

ri
ll
Command Command unit × 10 Type Ι Type ΙΙ

.A
OFF 0.0001 (mm, inches, deg) 1.0000 (mm, inches, deg)

N
X1

O
ON 0.0010 (mm, inches, deg) 1.0000 (mm, inches, deg)

TI
43

3.
A
Decimal-point commands are only valid for addresses X, Y, Z, U, V, W, A, B, C, I, J, K, E, F,
R
94

PO

P, Q and R, where address P only refers to a scaling factor.


26

R
o.

4. The number of effective digits for each type of decimal-point command is as follows:
O
N

C
al

Move command Move command


K

Feed rate Dwell


ri

(Linear) (Rotational)
ZA
Se

Integral part Decimal part Integral part Decimal part Integral part Decimal part Integral part Decimal part
A
IM

mm 0. - 99999. .0000 - .9999 0. - 99999. .0000 - .9999 0. - 200000. .0000 - .9999 0. - 99999. .000 - .999
K

.00000 - 0. - 99999. .00000 -


inch 0. - 9999. (359.) .0000 - .9999 0. - 20000. 0. - 99999. .000 - .999
ZA

.99999 .99999
A
M

5. Decimal-point commands are also valid for definition of variables data used in subprograms.
YA

6. For data which can be, but is not specified with the decimal point, either the minimum
3

program data input unit or mm (or in) unit can be selected using bit 5 of parameter F91.
01
)2

7. A decimal-point command issued for an address which does not accept the decimal point
(c

will be processed as data that consists of an integral part only. That is, all decimal digits will
ht

be ignored. Addresses that do not accept the decimal point are D, H, L, M, N, O, S and T. All
ig

types of variables command data are handled as the data having the decimal point.
yr
op
C

4-3
Serial No. 269443

4 POSITION PROGRAMMING

4. Sample programs

A. Sample programs for addresses accepting the decimal point

Command category
For 1 = 1 µm For 1 = 0.1 µm 1 = 1 mm
Program example
G0X123.45
(With the decimal point always given X123.450 mm X123.450 mm X123.450 mm
as the millimeter point)
G0X12345 X12.345 mm* X1.2345 mm** X12345.000 mm***
#111=123 #112=5.55 X123.000 mm
X#111 Y#112 Y5.550 mm

d .
#113=#111+#112 (ADD)

ve
#113 = 128.550

er
#114=#111–#112 (SUBTRACT) #114 = 117.450

s
re
#115=#111#112 (MULTIPLY) #115 = 682.650

ts
#116=#111/#112 #116 = 22.162

gh
#117=#112/#111 (DIVIDE) #117 = 0.045

ri
* The least significant digit is given in 1 µm.

ll
** The least significant digit is given in 0.1 µm.

.A
*** The least significant digit is given in 1 mm.

N
O
TI
43

A
R
94

PO
26

R
o.

O
N

C
al

K
ri

ZA
Se

A
IM
K
ZA
A
M
YA
3
01
)2
(c
ht
ig
yr
op
C

4-4
Serial No. 269443

POSITION PROGRAMMING 4
B. Validity of decimal point for each address
Decimal Decimal
Address point Application Remarks Address point Application Remarks
command command

Valid Coordinate position data O Invalid Program number

Rotary table
A Invalid Invalid Dwell time
Miscellaneous function code

Valid Linear angle data Valid Subprogram call number

Valid Coordinate position data Invalid Number of helical pitches


B P
Rotary table
Invalid Invalid Offset amount (in G10)

.
Miscellaneous function code

d
ve
Valid Coordinate position data Valid Scaling factor

er
Rotary table

s
C Invalid Valid Rank for NURBS curve

re
Miscellaneous function code

ts
Cutting depth for
Valid Corner chamfering amount Valid

gh
deep-hole drilling cycle
Offset number (tool position,

ri
D Invalid Q Valid Shift amount for back boring
tool length and tool radius)

ll
.A
E Valid Valid Shift amount for fine boring

N
O
F Valid Feed rate Valid R point in fixed cycle

TI
Radius of an arc with R
43

G Valid Preparatory function code A Valid


selected
R
94

Offset number (tool postion, Radius of an arc for corner


PO

Invalid R Valid
26

tool length and tool radius) rounding


H
R

Intra-subprogram sequence
o.

Invalid Valid Offset amount (in G10)


O

number
N

C
al

Valid Coordinate of arc center Valid Weight for NURBS curve


K
ri

I
ZA

Vector component for


Se

Valid S Invalid Spindle function code


tool radius compensation
A
IM

Valid Coordinate of arc center T Invalid Tool function code


J
K

Vector component for


Valid U Valid Coordinate position data
ZA

tool radius compensation


A

Valid Coordinate of arc center V Valid Coordinate position data


M
YA

Vector component for


K Valid W Valid Coordinate position data
tool radius compensation
3

Valid Knot for NURBS curve Valid Coordinate position data


01

X
)2

Fixed cycle/subprogram
L Invalid Valid Dwell time
repetition
(c
ht

M Invalid Miscellaneous function code Y Valid Coordinate position data


ig
yr

N Invalid Sequence number Z Valid Coordinate position data


op
C

Note: The decimal point is valid in all the arguments for a user macroprogram.

4-5
Serial No. 269443

4 POSITION PROGRAMMING

4-4 Polar Coordinate Input ON/OFF: G122/G123

1. Function and purpose


The end point of interpolation can be designated with polar coordinates (radius and angle). Polar
coordinate input is available only in the mode of polar coordinate interpolation.

2. Programming format
G122........... Polar coordinate input ON (G-code group No. 18)
G123........... Polar coordinate input OFF (G-code group No. 18)

d .
ve
3. Detailed description

er
Even in the mode of polar coordinate input, positional commands for the axes that have no

s
re
relation to the polar coordinate interpolation are available as ordinary commands.

ts
gh
In the mode of polar coordinate input, the length must always be designated in radius values,

ri
regardless of the modal state for radius/diameter data input (G122.1/G123.1). This also applies

ll
to the axes that have no relation to the polar coordinate interpolation.

.A
The last modal state for radius/diameter data input before the G122 command will be restored

N
O
automatically by the cancel command G123.

TI
43

4. Sample program
A
R
94

PO

G12.1; …………………Polar coordinate interpolation ON


26

G122; …………………Polar coordinate input ON


R
o.

G01 X50.C30.F100;
N

C
al

G02 X50.C60.R50;
K
ri

ZA

G123; …………………Polar coordinate input OFF


Se

G13.1; …………………Polar coordinate interpolation OFF


IM

5. Remarks
K
ZA

1. Enter polar coordinates with respect to the plane of polar coordinate interpolation.
A
M

2. Positive values (+) for angle data refer to measurement in the counterclockwise direction on
YA

the plane of polar coordinate interpolation.


3

3. Use address R to designate the radius for circular interpolation (G02 or G03).
01
)2

4. If the G122 command is given without selecting the mode of polar coordinate interpolation
(c

(by G12.1), an alarm will occur.


ht

5. If the polar coordinate interpolation mode is cancelled (by G13.1) during polar coordinate
ig

input, the mode of polar coordinate input will be cancelled together with the mode of polar
yr
op

coordinate interpolation.
C

6. G122 and G123 must be given in an independent block. That is, the block of G122 or G123
must not contain any other G-codes or addresses with the exception of N and P.
7. The following G-codes are available during polar coordinate input. An alarm will occur if any
G-code other than these is specified.
Available G-codes
G00 Positioning
G01 Linear interpolation
G02 Circular interpolation (CW)

4-6
Serial No. 269443

POSITION PROGRAMMING 4
G03 Circular interpolation (CCW)
G04 Dwell
G09 Exact-stop check
G13.1 Polar coordinate interpolation OFF
G40-G42 Nose radius/Tool radius compensation
G61 Exact-stop check mode
G64 Cutting mode
G65 User macro single call
G66 User macro modal call A
G66.1 User macro modal call B
G67 User macro modal call OFF

.
G80-G89 Fixed cycles for hole machining

d
ve
G98 Asynchronous feed

er
G123 Polar coordinate input OFF

s
re
ts
4-5 X-axis Radial Command ON/OFF: G122.1/G123.1

gh
ri
1. Function and purpose

ll
.A
The X-axis dimensions can be entered in radial values, instead of diametrical ones, by the aid of

N
a preparatory function (G-code) in order to improve EIA/ISO programming efficiency for milling.

O
TI
43

2. Programming format A
R
94

PO

G122.1........ X-axis radial data input ON (G-code group No. 25)


26

G123.1........ X-axis radial data input OFF (G-code group No. 25)
o.

O
N

3. Detailed description
al

K
ri

ZA

All the X-axis dimensions entered after G122.1 are processed as radial values until the
Se

command G123.1 is given for the restoration of diametrical data input mode for the X-axis.
IM

4. Sample program
K
ZA

Counter indication on Modal indication on


A

POSITION display POSITION display


M
M

G122.1; ......X-axis radial data input ON


YA

M
3

G1X10.F100; X20. G122.1


01

......Radial dimension
)2

M
(c

G123.1; ......X-axis radial data input OFF


ht

M
ig

G1X10.F100; ......Diametrical dimension X10. G123.1


yr

M
op
C

5. Remarks
1. The counter indication on the POSITION display always refers to a diametrical value even in
the mode of G122.1.
2. The selection of the G122.1 mode does not exercise any influence upon parameters, offset
values, etc.
3. G123.1 is selected as the initial mode when the power is turned on.
4. Resetting causes the mode of G122.1 to be canceled and replaced by the G123.1 mode.

4-7
Serial No. 269443

4 POSITION PROGRAMMING

5. Even in the G122.1 mode the X-axis dimensions entered under the following modal
functions are always processed as diametrical values. Issuance of these G-code commands
also cancels G122.1 mode:
G7.1 Cylindrical interpolation
G12.1 Polar coordinate interpolation ON
G123 Polar coordinate input OFF
G22 Pre-move stroke check ON
6. Even in the G123.1 mode the X-axis dimensions entered under the following modal
functions are always processed as radial values (with diametrical indication on the
POSITON display):
G122 Polar coordinate input ON

.d
ve
7. Various settings for software limits and barrier functions are not to be changed.

ser
re
ts
gh
ri
ll
.A
N
O
TI
43

A
R
94

PO
26

R
o.

O
N

C
al

K
ri

ZA
Se

A
IM
K
ZA
A
M
YA
3
01
)2
(c
ht
ig
yr
op
C

4-8 E
Serial No. 269443

INTERPOLATION FUNCTIONS 5
5 INTERPOLATION FUNCTIONS

5-1 Positioning (Rapid Traverse): G00

1. Function and purpose


Positioning command G00 involves use of a coordinate word. This command positions a tool by
moving it linearly to the ending point specified by a coordinate word.

2. Programming format

G00 Xx/Uu Zz/Ww αα ; (α denotes an additional axis, that is, C- or Y-axis)

d.
Where x, u, z, w and α denote a coordinate.

ve
er
The command addresses are valid for all additional axis.

s
re
3. Detailed description

ts
gh
1. Once this command has been given, the G00 mode will be retained until any other G-code

ri
command that overrides this mode, that is, either G01, G02, G03, or G32 of command

ll
group 01 is given. Thus, a coordinate word will only need be given if the next command is

.A
also G00. This function is referred to the modal function of the command.

N
O
2. In the G00 mode, acceleration/deceleration always takes place at the starting/ending point

TI
43

of a block and the program proceeds to the next block after confirming that the pulse
A
R
94

command in the present block is 0 and the tracking error of the acceleration/deceleration
PO
26

cycle is 0. The width of in-position can be changed using a parameter (S13).


R
o.

3. The G-code functions (G83 to G89) of command group 09 are canceled by the G00
N

command (G80).
al

K
ri

ZA

4. The tool path can be made either linear or polygonal using a parameter (F91 bit 6) but the
Se

positioning time remains unchanged.


IM

- Linear path
K

As with linear interpolation (G01), the tool speed is limited according to the rate of rapid
ZA

traverse of each axis.


A
M

- Polygonal line path


YA

The tool is positioned according to the separate rate of rapid traverse of each axis.
3

5. When no number following G address, this is treated as G00.


01
)2
(c
ht
ig
yr
op
C

5-1
Serial No. 269443

5 INTERPOLATION FUNCTIONS

4. Sample programs

+X
Chuck Jaw

Starting point
Ending point (+180, +300)
Workpiece (+100, +150)

+Z

.
(Unit: mm)

d
ve
er
TEP012’

s
re
The diagram above is for:

ts
G00 X100.000 Z150.000; Absolute data command

gh
G00 U–80.000 W–150.000; Incremental data command

ri
ll
.A
5. Remarks

N
1. If bit 6 of user parameter F91 is 0, the tool will take the shortest path connecting the starting

O
TI
and ending points. The positioning speed will be calculated automatically to give the
43

A
shortest allocation time within the limits of the rapid feed rate of each axis.
R
94

PO

When, for example, with the rate of rapid traverse being set to 9600 mm/min for both the X-
26

and Z-axes, the following command is given:


R
o.

O
N

G00 Z–300.000 X400.000;


C
al

then the tool will move as shown in the diagram below.


ri

ZA
Se

F91 bit 6 = 0
A
IM

Ending point X-axis effective feedrate:


6400 mm/min
K
ZA
A
M

400
fx
YA

X
3
01

300
)2

fz Z
(c

Starting point
ht

(Unit: mm)
Z-axis effective feedrate: 9600 mm/min
ig

TEP013
yr
op

For inch-specification machines, the rapid traverse rate of the C-axis is limited to 89 min–1
C

(32000/360) even if item C of parameter M1 is set to a value greater than 32000.

5-2
Serial No. 269443

INTERPOLATION FUNCTIONS 5
2. If bit 6 of user parameter F91 is 1, the tool will move from the starting point to the ending
point according to the rate of rapid traverse of each axis concerned.
When, for example, with the rate of rapid traverse being set to 9600 mm/min for both the X-
and Z-axes, the following command is given:
G00 Z–300.000 X400.000;
then the tool will move as shown in the diagram below.

F91 bit 6 = 1

Ending point X-axis effective feedrate:


9600 mm/min

.d
400

ve
fx

er
X

s
re
ts
300

gh
Z
fz Starting point

ri
(Unit: mm)

ll
Z-axis effective feedrate: 9600 mm/min

.A
TEP014

N
O
3. The rate of rapid traverse to be used for G00 commands varies from machine to machine.

TI
43

Refer to the relevant machine specifications for further details.


A
R
94

4. Rapid traverse (G00) deceleration check


PO
26

When processing of rapid traverse (G00) is completed, the next block will be executed after
R
o.

the deceleration check time (Td) has passed.


N

The deceleration check time (Td) is calculated by following expressions depending on the
al

K
ri

acceleration/deceleration type.
ZA
Se

Linear acceleration/linear deceleration .............................. Td = Ts + a


IM

Exponential acceleration/linear deceleration ..................... Td = 2 × Ts + a


K

Exponential acceleration/exponential deceleration............ Td = 2 × Ts + a


ZA

(Where Ts is the acceleration time constant, a = 0 to 14 ms)


A

The time required for the deceleration check during rapid traverse is the longest among the
M
YA

times of each axis determined by the time constants and types of rapid traverse
acceleration/deceleration of the axes concerned.
3
01
)2
(c
ht
ig
yr
op
C

5-3
Serial No. 269443

5 INTERPOLATION FUNCTIONS

5-2 One-Way Positioning: G60

1. Function and purpose


Highly accurate positioning free from any backlash error can be performed when the axis
movement is controled by the G60 command so that the final access always takes place in one
determined direction.

2. Programming format
G60 Xx/Uu Zz/Ww αα; (α: Additional axis)

.
3. Detailed description

d
ve
1. The direction of final access and its creeping distance must be set in parameter I1.

s er
2. After rapid approach to a position away from the ending point by the creeping distance, the

re
final access is performed in the predetermined direction at a speed corresponding with the

ts
gh
rapid traverse.

ri
ll
G60 a Positioning point

.A
N
Final access direciton

O
TI
43

(–)
A Ending point Starting point (+)
R
94

PO
26

Starting point
Temporary stop
R
o.

O
N

C
al

K
ri

ZA

G60 creeping distance G60 –a


Se

MEP018
IM

3. The positioning pattern described above also applies during machine locking or for a Z-axis
K
ZA

command with the Z-axis cancellation activated.


A

4. In the dry run mode (G00 mode), the whole positioning is carried out at the dry-running
M

speed.
YA

5. The creeping to the einding point can be halted with Reset, Emergency stop, Interlock, or
3
01

Feed hold, or by overriding the rapid traverse rate to 0 (zero).


)2

The creeping is performed according to the setting of the rapid traverse, and the function of
(c

overriding the rapid traverse rate is also effective for the creeping.
ht

6. One-way positioning is automatically invalidated for the hole-machining axis in hole-


ig
yr

machining fixed-cycle operations.


op

7. One-way positioning is automatically invalidated for shifting in fine-boring or back-boring


C

fixed-cycle operations.
8. Usual positioning is performed for an axis not having a parameter-set creeping distance.
9. One-way positioning is always of non-interpolation type.
10. An axis movement command for the same position as the ending point of the preceding
block (movement distance = 0) will cause reciprocation through the creeping distance so
that the final access can be performed in the predetermined direction for an accurate
positioning to the desired point.

5-4
Serial No. 269443

INTERPOLATION FUNCTIONS 5

5-3 Linear Interpolation: G01

1. Function and purpose


Command G01 involves use of both a coordinate word and a feed rate command. This command
moves (interpolates) linearly a tool from the current position to the ending point specified by a
coordinate word, at the feed rate specified by address F. The feed rate specified by address F,
however, acts as the linear velocity relative to the direction of movement of the tool center.

2. Programming format

G01 Xx/Uu Zz/Ww αα Ff; (α: Additional axis)

.
d
ve
where x, u, z, w and α each denote a coordinate.

er
s
re
X-axis

ts
z w

gh
ri
Command point

ll
.A
N
u
2

O
Current position

TI
43

A Z-axis
R
94

x
PO
26

R
o.

O
N

TEP015
al

K
ri

ZA
Se

3. Detailed description
A
IM

Once this command has been given, the G01 mode will be retained until any other G-code
command that overrides this mode, that is, either G00, G02, G03 or G32 of command group 01
K
ZA

is given. Thus, it is merely required to input coordinate words for linear interpolations in the
A

succeeding blocks unless the feed rate must be changed.


M

A programming error will result if an F-code command is not given to the first G01 command.
YA

The feed rates for rotational axes must be set in deg/min. (Example : F300 = 300 deg/min)
3

The G-code functions (G70 to G89) of command group 09 are cancelled by G01 (set to G80).
01
)2
(c
ht
ig
yr
op
C

5-5
Serial No. 269443

5 INTERPOLATION FUNCTIONS

4. Sample program
Example 1: Taper turning

X-axis

20.0

Current position

.d
Z-axis

ve
50.0

s er
re
ts
TEP016

gh
ri
G01 X50.0 Z20.0 F300;

ll
.A
Example 2: Program for moving the tool at a cutting feed rate of 300 mm/min via the route of

N
P1→P2 →P3 →P4 (where the sections P0→P1 and P4 →P0 form a positioning route

O
TI
for the tool):
43

A
R
94

PO
26

Turret +X
R
o.

O
N

240
P0
al

P1
K
ri

200 +Z
ZA
Se

140
P4 Unit: mm
IM

100
P2 P3
K
ZA
A
M

40 90 160 220 230


YA

TEP017
3
01

G00 X200.000 Z40.000; P0 → P1


)2

G01 X100.000 Z90.000 F300; P1 → P2


(c

P2 → P3
ht

Z160.000;
P3 → P4
ig

X140.000 Z220.000;
yr

G00 X240.000 Z230.000; P4 → P0


op
C

5-6
Serial No. 269443

INTERPOLATION FUNCTIONS 5

5-4 Circular Interpolation: G02, G03

1. Function and purpose


Commands G02 and G03 move the tool along an arc.

2. Programming format
G02 (G03) Xx/Uu Zz/Ww (Yy/Vv) Ii Kk (Jj) Ff ;
Coordinates of the Coordinates of Feedrate
ending point the arc center
Counterclockwise(CCW)

. d
Clockwise (CW)

ve
er
X/U: Arc ending point coordinates, X-axis (absolute value of workpiece coordinate system for X,

s
incremental value from present position for U)

re
Z/W: Arc ending point coordinates, Z-axis (absolute value of workpiece coordinate system for Z,

ts
gh
incremental value from present position for W)

ri
Y/V: Arc ending point coordinates, Y-axis (absolute value of workpiece coordinate system for Y,

ll
incremental value from present position for V)

.A
I : Arc center, X-axis (radius command, incremental value from starting point)

N
O
K : Arc center, Z-axis (incremental value from starting point)

TI
J : Arc center, Y-axis (incremental value from starting point)
43

F : Feed rate
A
R
94

PO
26

R
o.

O
N

Center
al

X-axis
K
ri

ZA
Se

Ending point
A
IM

i
u
K

Starting
2
ZA

point
A

z w k
M
YA

x
Z-axis
3
01
)2
(c
ht
ig
yr
op
C

TEP018

5-7
Serial No. 269443

5 INTERPOLATION FUNCTIONS

For machines with Y-axis control, arc interpolation is, additionally to ZX-plane, also available for
XY- and YZ-planes.
XY-plane G17;
G02 (G03) X_Y_I_J_F_; For milling on the face
ZX-plane G18;
G02 (G03) X_Z_I_K_F_; For normal turning
YZ-plane G19;
G02 (G03) Y_Z_J_K_F_; For Y-axis milling on OD surface

3. Detailed description

d .
1. Once the G02 (or G03) command has been given, this command mode will be retained until

ve
any other G-code command used to override the G02 (or G03) command mode, that is, G00

er
or G01 of command group 01 is given.

s
re
2. The direction of circular movement is determined by G02/G03.

ts
gh
G02: CW (Clockwise)

ri
G03: CCW (Counterclockwise)

ll
.A
N
O
+X Turret

TI
Chuck +X
CCW (G03)
43

A
R
94

CW (G02)
PO

+Z
26

R
o.

O
N

Work- +Z
al

piece
ri

ZA
Se

A
IM
K

TEP019
ZA
A

3. Interpolation of an arc that spans multiple quadrants can be defined with one block.
M
YA

4. To perform circular interpolation, the following information is required:


- Rotational direction ...................... CW (G02) or CCW (G03)
3
01

- Arc ending point coordinates ....... Given with address X, Z, Y, U, W, V.


)2
(c

- Arc center coordinates................. Given with address I, K, J. (Incremental dimension)


ht

- Feed rate...................................... Given with address F.


ig
yr

5. If none of the addresses I, K, J and R is specified, a program error will occur.


op

6. Addresses I, K and J are used to specify the coordinates of the arc center in the X, Z and Y
C

directions respectively as seen from the starting point, therefore, care must be taken for
signs.

5-8
Serial No. 269443

INTERPOLATION FUNCTIONS 5
4. Sample programs

X-axis

50.0
Coordinate
zero point 120.0
20.0 Z-axis

.d
ve
70.0 50.0

s er
TEP020

re
ts
G02 X120.0 Z70.0 I50.0 F200; Absolute data setting

gh
G02 U100.0 W–50.0 I50.0 F200; Incremental data setting

ri
ll
.A
5. Notes on circular interpolation

N
1. Clockwise (G02) or Counterclockwise (G03) during circular interpolation refers to the

O
TI
rotational direction in the right-handed coordinate system when seen from the plus side
43

A
toward the minus side of the coordinate axis perpendicular to the plane to be interpolated.
R
94

PO

2. If the coordinates of the ending point are not set or if the starting and ending points are set
26

at the same position, designating the center using address I, K or J will result in an arc of
R
o.

360 degrees (true circle).


N

C
al

3. The following will result if the starting-point radius and the ending-point radius are not the
ri

ZA

same.
Se

- If error ∆R is larger than the parameter F19 (tolerance for radial value difference at ending
IM

point), a program error (817 INCORRECT ARC DATA) will occur at the starting point of
K

the arc.
ZA
A
M
YA

G02 Z80.K50.;
3

+X
01
)2
(c
ht

Alarm stop
ig
yr

Center Ending point


op

Starting
point Radius at Radius at
C

starting point ending point ∆R

+Z
TEP021

5-9
Serial No. 269443

5 INTERPOLATION FUNCTIONS

- If error ∆R is equal to or smaller than the parameter data, interpolation will take a spiral
form heading for the programmed ending point of the arc.

G02 Z90.K50.;

+X Spiral interpolation

Ending
Starting Center point

.d
point

ve
Radius at Radius at
starting point ending point ∆R

ser
+Z

re
TEP022

ts
gh
The examples shown above assume that excessively large parameter data is given to

ri
facilitate your understanding.

ll
.A
5-5 Radius Designated Circular Interpolation: G02, G03

N
O
TI
43

1. Function and purpose A


R
94

Circular interpolation can be performed by designating directly the arc radius R as well as using
PO
26

conventional arc center coordinates (I, K, J).


R
o.

O
N

2. Programming format
al

K
ri

ZA

G02 (G03) Xx/Uu Zz/Ww (Yy/Vv) Rr Ff ;


Se

where x/u: X-axis coordinate of the ending point


IM

z/w: Z-axis coordinate of the ending point


K

y/v: Y-axis coordinate of the ending point


ZA

r: Radius of the arc


A

f: Feed rate
M
YA
3
01
)2
(c
ht
ig
yr
op
C

5-10
Serial No. 269443

INTERPOLATION FUNCTIONS 5
3. Detailed description
The arc center is present on the mid-perpendicular to the segment which connects the starting
point and the ending point. The crossing point of the mid-perpendicular and that circle of the
designated radius r that has the center set at the starting point gives the center coordinates of
the designated arc.
A semi-circle or smaller will be generated if R is a positive value.
An arc larger than the semi-circle will be generated if R is a negative value.

Path of an arc with a negative-signed R

.
d
ve
Ending point

er
O2

s
re
Path of an arc with a positive R

ts
gh
O1

ri
L O1, O2 : Center point

ll
Starting point r

.A
N
O
TEP023

TI
43

To use the radius-designated arc interpolation commands, the following requirement must be
A
R
94

met:
PO
26

L
≤1
R
o.

2•r
O
N

where L denotes the length of the line from the starting point to the ending point.
al

K
ri

ZA

If radius data and arc center data (I, J, K) are both set in the same block, the circular interpolation
Se

by radius designation will have priority in general.


A
IM

For complete-circle interpolation (the ending point = the starting point), however, use center-
designation method with addresses I, J and K, since the radius-specification command in this
K
ZA

case will immediately be completed without any machine operation.


A
M

4. Sample programs
YA

1. G02 Xx1 Zz1 Rr1 Ff1 ;


3
01

2. G02 Xx1 Zz1 Ii1 Kk1 Rr1 Ff1 ;


)2

(If radius data and center data (I, K, J) are set in the same block, circular interpolation by
(c

radius designation will have priority.)


ht
ig

Note: “I0”, “K0” or “J0” can be omitted.


yr
op
C

5-11
Serial No. 269443

5 INTERPOLATION FUNCTIONS

5-6 Plane Selection: G17, G18, G19

5-6-1 Outline
1. Function and purpose
Commands G17, G18 and G19 are used to select a plane on which arc interpolation, tool nose
radius compensation, etc. are to be done.
Registering the three fundamental axes as parameters allows you to select a plane generated by
any two non-parallel axes.
The available planes are the following three types:

.d
- Plane for circular interpolation

ve
er
- Plane for tool nose radius compensation

s
re
- Plane for polar coordinate interpolation

ts
2. Programming format

gh
ri
G17; (XY-plane selection)
X, Y, and Z denote respective coordinate axes

ll
G18; (ZX-plane selection)

.A
or their corresponding parellel axes.
G19; (YZ-plane selection)

N
O
TI
43

Y X A Z
R
94

PO
26

R
o.

O
N

G03 G03 G03


C
al

G02 G02 G02


ri

ZA
Se

X Z Y
A

G17 (XY) plane G18 (ZX) plane G19 (YZ) plane


IM
K

TEP024’
ZA
A

5-6-2 Plane selection methods


M
YA

Plane selection by parameter setting is explained in this section.


3

1. Which of the fundamental axes or their parallel axes are to form the plane you want to select
01

is determined by the type of plane selection command (G17, G18 or G19) and the axis
)2

address specified in the same block.


(c
ht
ig
yr

Y G17X Y; X G18X Z; Z G19Y Z;


op
C

G03 G03 G03

G02 G02 G02

X Z Y

TEP025’

5-12
Serial No. 269443

INTERPOLATION FUNCTIONS 5
2. Automatic plane selection does not occur for blocks that do not have an issued plane-
selection command (G17, G18 or G19)
G18 X_ Z_; ZX-plane
Y_ Z_; ZX-plane (No plane change)
3. If axis addresses are not set for blocks having an issued plane-selection command (G17,
G18 or G19), the fundamental three axes will be regarded as set.
G18_; (ZX-plane = G18 XZ ;)
Note 1: The plane that is automatically selected upon power on or resetting depends on the
settings of bits 0 and 1 of parameter F92 as follows:
bit 1 bit 0 Plane selected

d.
ve
0 0 G17 plane

er
0 1 G18 plane

s
re
1 0 G19 plane

ts
1 1 G18 plane

gh
Note 2: In turning mode, G17 or G19 plane selection is impossible and in milling mode, G18

ri
plane selection respectively.

ll
.A
If such selection were attempted, alarm would be caused.

N
Note 3: The G-codes for plane selection (G17, G18 or G19) should be commanded in a block

O
TI
independently. If such a G-code is commanded in a block containing the axis move
43

A
command, a movement independent from the selected plane can be caused.
R
94

PO
26

5-7 Polar Coordinate Interpolation ON/OFF: G12.1/G13.1


R
o.

O
N

C
al

1. Function and purpose


K
ri

ZA
Se

It is available for face helical grooving or cam shaft grinding on the lathe.
A

It is a function to convert a command programmed by the rectangular coordinate system into the
IM

linear axis movement (tool movement) and the rotational axis movement (workpiece rotation) to
K

give contouring control.


ZA
A

2. Programming format
M
YA

The polar coordinate interpolation is commanded by the following G-codes (group 26).
3

G12.1: Polar coordinate interpolation mode (Mode by which the polar coordinate is inter-
01

polated)
)2
(c

G13.1: Polar coordinate interpolation cancel mode (Mode by which the polar coordinate is not
ht

interpolated)
ig

These G-codes should be commanded in an independent block.


yr
op

3. Detailed description
C

1. The block of G12.1 must be preceded by a command of selecting the appropriate plane
(G17UH); otherwise an alarm will be caused (1802 ILLEGAL STARTUP CONDITION
G12.1). When turning on the power and resetting, the polar coordinate interpolation cancel
mode (G13.1) is provided.

5-13
Serial No. 269443

5 INTERPOLATION FUNCTIONS

2. The polar coordinate interpolation uses the zero point of workpiece coordinate system as
that of the coordinate system. A plane (hereinafter referred to as “polar coordinate inter-
polation plane”) is selected using the linear axis as the 1st axis of the plane and the virtual
axis perpendicular to the linear axis as the 2nd axis of the plane. The polar coordinate
interpolation is given on that plane.
3. The program during polar coordinate interpolation mode is commanded by the rectangular
coordinate value on the polar coordinate interpolation plane. The axis address of the
rotational axis (C) is used for that of the command of the 2nd axis of the plane (virtual axis).
A command is given in mm or inches as with the 1st axis of the plane (command by the axis
address of the linear axis), and not in degrees. And whether designation is given by the
diameter or by the radius is not determined by the 1st axis of the plane, but the designation

d .
is the same as the rotational axis.

ve
er
4. Absolute command and incremental command for the linear interpolation (G01) and the

s
re
circular interpolation (G02, G03) can be commanded during the polar coordinate inter-

ts
polation mode.

gh
The nose radius compensation can also be made for the program command, and the polar

ri
coordinate interpolation is given to the path after the nose radius compensation. However,

ll
.A
the polar coordinate interpolation mode (G12.1, G13.1) cannot be changed during the nose
radius compensation mode (G41, G42). G12.1 and G13.1 must be commanded in G40

N
O
mode (Nose radius compensation cancel mode).

TI
43

5. The feed rate is commanded using tangential speed (relative speed of the workpiece and a
A
R
94

tool) on the polar coordinate interpolation plane (rectangular coordinate system) as F


PO
26

(mm/min or in/min is used for a unit of F).


R
o.

6. The coordinate value of the virtual axis when G12.1 is commanded provides “0”. That is, the
N

polar coordinate interpolation is started taking the position where G12.1 is commanded as
al

K
ri

ZA

the angle = 0.
Se

A
IM

G17: X-C(virtual axis) plane


X
K
ZA
A
M

C
YA
3

Z
01
)2
(c

C
ht

(Virtual axis)
ig
yr

D732S0008
op
C

5-14
Serial No. 269443

INTERPOLATION FUNCTIONS 5
4. Sample programs

C (Virtual axis)

N070

.
d
ve
N080 N060
N050

er
X

s
re
N100

ts
gh
ri
N090

ll
.A
Nose radius
center path

N
O
Programmed path

TI
43

A
R
94

PO

D732S0009
26

R
o.

M
O
N

N001 G00 G97 G98;


al

K
ri

N004 G28 U0 W0;


ZA
Se

N008 M200;
A
IM

N010 T001000;
N020 G00 X100.0 Z10.0 C0.0; Positioning to the start point
K
ZA

N030 G17UH; Selection of the XC-plane


G12.1; Polar coordinate interpolation start
A
M

N040 G42;
YA

N050 G01 X50.0 F500;


3

N060 C10.0;
01

N070 G03 X-50.0 C10.0 I-25.0; Contour program


)2

N080 G01 C-10.0; (Program with rectangular coordinate values


(c

N090 G03 X50.0 C-10.0 R25.0; on XC-plane)


ht

N100 G01 C0.0;


ig
yr

N110 G00 X100.0;


op

N120 G40;
C

N130 G13.1; Polar coordinate interpolation cancel


N140 M202;
M

5-15
Serial No. 269443

5 INTERPOLATION FUNCTIONS

5. Notes
1. Before G12.1 is commanded, a workpiece coordinate system must be set using the center
of rotational axis as the zero point of the coordinate system. The coordinate system must
not be changed during G12.1 mode.
2. The method of commanding the circular radius (which address of I, J and K is used) when
the circular interpolation (G02, G03) is given on the polar coordinate interpolation plane
depends on which axis of the basic coordinate system the 1st axis of the plane (linear axis)
corresponds to.
- Command is given by I and J taking the linear axis as the X-axis of XpYp-plane.
- Command is given by J and K taking the linear axis as the Y-axis of YpZp-plane.

d.
- Command is given by K and I taking the linear aixs as the Z-axis of ZpXp-plane.

ve
The circular radius can also be designated by R command.

ser
3. G-codes capable of command during G12.1 mode are G04, G65, G66, G67, G00, G01, G02,

re
G03, G98, G99, G40, G41 and G42.

ts
gh
4. Move command of an axis other than those on the selected plane during G12.1 mode is

ri
executed independently of the polar coordinate interpolation.

ll
.A
5. Tool offset must be commanded in the polar coordinate interpolation cancel mode before

N
G12.1 is commanded. It cannot be commanded during the polar coordinate interpolation

O
mode. Offset amount must not be changed during the polar coordinate interpolation mode.

TI
43

6. Current position display during G12.1 mode A


R
94

PO

Every current position during the polar coordinate interpolation mode is displayed with an
26

actual coordinate value. However, only “residue moving distance” (REMAIN) is displayed
R
o.

with the residue moving distance on the polar coordinate command plane.
N

C
al

7. Program restart cannot be made for a block during G12.1 mode.


K
ri

ZA
Se

A
IM
K
ZA
A
M
YA
3
01
)2
(c
ht
ig
yr
op
C

5-16
Serial No. 269443

INTERPOLATION FUNCTIONS 5

5-8 Virtual-Axis Interpolation: G07

1. Function and purpose


Specify with G07 code one of the two circular-interpolation axes for helical interpolation with
synchronous linear interpolation as a virtual axis (a pulse-distributed axis without actual
movement), and an interpolation on the plane defined by the remaining circular axis and the
linear axis can be obtained along the sine curve which corresponds with the side view of the
circular interpolation with synchronous linear interpolation.

2. Programming format

. d
G07 α0 To set a virtual axis

ve
M To interpolate with the virtual axis

er
G07 α1

s
To cancel the virtual axis

re
ts
3. Detailed description

gh
ri
1. Only helical interpolation can be used for the virtual-axis interpolation.

ll
.A
2. In the program section from G07α0 to G07α1, the “alpha” axis is processed as a virtual axis.
If, therefore, the alpha axis is included independently in this section, the machine will remain

N
O
in dwell status until pulse distribution to the virtual axis is completed.

TI
43

3. The virtual axis is valid only for automatic operation; it is invalid for manual operation.
A
R
94

PO

4. Protective functions, such as interlock, stored stroke limit, etc., are valid even for the virtual
26

axis.
R
o.

O
N

5. Handle interruption is also valid for the virtual axis. That is, the virtual axis can be shifted
C
al

through the amount of handle interruption.


K
ri

ZA
Se

4. Sample program
A
IM

G07 Y0 ...... Sets the Y-axis as a virtual axis.


K

G17G2.1X0Y–5.I0J–10.Z40.P2F50 ...... Sine interpolation on XZ-plane


ZA

G07 Y1 ...... Resets the Y-axis to an actual axis.


A
M
YA

X-axis
X-axis
3
01
)2

10.
(c
ht

5.
ig

Z-axis 40.
yr

20. –5. –10.


op

Y-axis
C

–5.

–10.

MEP037

5-17
Serial No. 269443

5 INTERPOLATION FUNCTIONS

5-9 Cylindrical Interpolation: G07.1

1. Function and purpose


Cylindrical interpolation function refers to a function by which the sides of a cylindrical workpiece
are machined. The cylindrical interpolation function capable of programming in the form in which
the sides of a cylinder are spread can very easily prepare programs including cylindrical cam-
grooving.

2. Programming format
G07.1 C_; Cylindrical interpolation mode (C: cylindrical radius)

.d
G07.1 C0; Cylindrical interpolation cancel mode

ve
(These G-codes should be commanded in an independent block.)

s er
re
* When the cylindrical radius (address C) is not commanded, a cylinder is defined taking as
radius current value of X-axis (treated as radius value) when G07.1 is commanded.

ts
gh
ri
3. Operation

ll
.A
+C

N
+X

O
TI
l 360°
43

A
R
94

PO
26

r
R

C
o.

180° 2πr
O
N

+Z
al

K
ri

ZA
Se

A
IM

0° l +Z
D732S0010
K
ZA

The moving distance of rotational axis commanded with an angle is converted to the linear
A
M

distance on the circumference in CNC. After the conversion, linear interpolation or circular inter-
YA

polation is given with the other axis. After the interpolation, the calculated movement is converted
again to the moving distance of rotational axis.
3
01
)2
(c
ht
ig
yr
op
C

5-18
Serial No. 269443

INTERPOLATION FUNCTIONS 5
4. Sample programs
In case of the figure on the right: P0→P1→P2→P3→P4→P5→P6→P7 (r = 50 mm)
G00 G98; +C
P7
G28 U0 W0; Unit:mm 360
T001001;
M200;
G18 W0 H0;
P6
X52. M203 S1000; P4 P5 280
G01 X40.F100; 270
G07.1 C50.;
G01 C80.F100; P0 → P1 225

.
P3

d
G03 Z-25.C90.R50.; P1 → P2

ve
P2 → P3

er
G01 Z-80.C225.;
P3 → P4

s
G02 Z-75.C270.R55.;

re
G01 Z-25.; P4 → P5

ts
G03 Z-20.C280.R80.; P5 → P6

gh
G01 C360.; P6 → P7

ri
P2 90
G07.1 C0.; 80

ll
P1

.A
G28 U0;

N
G28 W0 H0;

O
M202; P0

TI
+Z
43

M30; A –80 –75 –25 –20


R
94

PO
26

5. Supplement
R
o.

O
N

Relation of cylindrical interpolation mode to other functions


al

K
ri

ZA

A. Feed rate designation


Se

The feed rate commanded during cylindrical interpolation mode provides a speed on the plane
IM

where cylindrical sides are spread.


K

M
ZA

Note: The example of programming shown on the right (F10)


realizes a C-axis feed of 143°/min [approximation of G98;
A
M

10/(4 × 2π) × 360]. G07.1 C4;


YA

G01 C_ F10;
3

M
01

B. Circular interpolation (G02, G03)


)2
(c

1. Plane selection
ht

Giving the circular interpolation between the rotational axis and other linear axis during
ig

cylindrical interpolation mode requires the command of plane selection (G17, G18, G19).
yr
op

Example: When the circular interpolation is given between Z- and C-axes, the circular
C

interpolation command is
G18 Z_ C_ ;
G02/G03 Z_ C_ R_ ;
2. Radius designation
The circular radius by word address I, J or K cannot be commanded during cylindrical inter-
polation mode. The circular radius is commanded by address R. The radius must be
commanded not with angle, but with mm or inch.

5-19
Serial No. 269443

5 INTERPOLATION FUNCTIONS

C. Tool nose radius compensation


Giving the tool nose radius compensation during cylindrical interpolation mode requires the
command of plane selection as with the circular interpolation. However, giving the tool nose
radius compensation requires start-up and cancel during cylindrical interpolation mode.
Establishing a cylindrical interpolation mode with the tool nose radius compensation given does
not provide proper compensation.

D. Positioning
Positioning (including commands producing the cycle of rapid feed such as G28 and G80 to
G89) cannot be accomplished during cylindrical interpolation mode. Positioning requires
establishing a cylindircal interpolation cancel mode.

d.
ve
E. Coordinate system setting

ser
re
The workpiece coordinate system (G50) cannot be commanded during cylindrical interpolation
mode.

ts
gh
ri
6. Notes

ll
.A
1. The cylindrical interpolation mode cannot be re-established during cylindrical interpolation
mode. Re-establishment requires the cancel of cylindrical interpolation mode.

N
O
2. The cylindrical interpolation (G07.1) cannot be commanded during positioning mode (G00).

TI
43

3. Accuracy A
R
94

PO

- Automatic operation
26

During cylindrical interpolation mode, the moving distance of rotational axis commanded
o.

O
N

with an angle is once internally converted to the distance on the circumference. And after
C
al

arithmetic operation is performed on linear interpolation or circular interpolation with the


K
ri

ZA

other axis, the calculated movement is again converted to the angle.


Se

As a result, where the cylindrical radius is small, the actual moving distance may differ
IM

from the commanded value. However, the error produced then is not accumulated.
K

MOVE 2 × 2πr
ZA

Actual moving distance = ( × (Command value × ))


2 × 2πr MOVE
A
M

MOVE : Moving distance per rotation of rotational axis (Parameter)


YA

r : Workpiece radius
3
01

( ) : Rounding to the least input increment


)2

- Manual operation
(c

Performing manual operation during cylindrical interpolation mode in manual absolute ON


ht

status may cause an error for the above reason.


ig
yr

4. The hole machining fixed cycle (G83 to G89) cannot be commanded during cylindrical
op

interpolation mode.
C

5-20
Serial No. 269443

INTERPOLATION FUNCTIONS 5

5-10 Threading

5-10-1 Constant lead threading: G32

1. Function and purpose


The G32 command controls the feedrate of the tool in synchronization with the spindle rotation
and so this enables both the straight and scrolled thread cutting of constant leads and the
continuous thread cutting.

.
d
ve
er
s
re
ts
gh
ri
F/E

ll
.A
F/E F/E

N
O
Straight thread Scrolled thread Continuous thread

TI
43

A TEP026
R
94

PO
26

2. Programming format
R
o.

O
N

G32 Zz/Ww Xx/Uu Ff Qq; (Normal lead thread cutting commands)


C
al

Where Zz, Ww, Xx, Uu: Thread ending point addresses and coordinates
K
ri

ZA

Ff: Lead of long axis (axis of which moving distance is the longest)
Se

direction
IM

Qq: Shift angle of threading start


K

G32 Zz/Ww Xx/Uu Ee Qq; (Precision lead threading commands)


ZA

Where Zz, Ww, Xx, Uu: Thread ending point addresses and coordinates
A

Ee: Lead of long axis (axis of which moving distance is the longest)
M
YA

direction
Qq: Shift angle of threading start
3
01
)2

w
(c

X-axis
Ending point
ht
ig

u
yr

2
α
op

Starting point
C

z δ2 δ1
Z-axis

TEP027

5-21
Serial No. 269443

5 INTERPOLATION FUNCTIONS

3. Detailed description
1. The E command is also used for the number of threads in inch threading, and whether the
thread number or precision lead is to be designated can be selected by parameter setting.
(Bit 7 of address F91 is set to 0 for precision lead designation.)
2. Use an argument Q to specify the shift angle of threading start for multiple-thread cutting.
Omit the argument Q if no shifting of angular position for threading start is required at all
(shift by 0°).
3. The lead in the long axis direction is commanded for the taper thread lead.

.d
Tapered thread section

ve
u

er
2 a°

s
re
w

ts
gh
ri
Z

ll
.A
N
When a < 45° lead is in Z-axis direction.

O
When a > 45° lead is in X-axis direction.

TI
When a = 45° lead can be in either Z- or X-axis direction.
43

A TEP028
R
94

PO
26

Refer to Section 6-5 for details of lead setting range.


R
o.

Note 1: It is not possible to designate a lead where the feed rate as converted into per-
O
N

minute feed exceeds the maximum cutting feed rate.


al

K
ri

ZA

Note 2: The converted cutting feed rate is compared with the cutting feed clamp rate when
Se

threading starts, and if it is found to exceed the clamp rate, an alarm will result
A
IM

(134 SPINDLE ROTATION EXCEEDED).


K

4. The constant surface speed control function should not be used here.
ZA

5. The spindle speed should be kept constant throughout from the roughing until the finishing.
A
M

6. If the feed hold function is employed to stop the feed during thread cutting, the thread height
YA

will lose their shape. For this reason, feed hold does not function during thread cutting.
3

If the feed hold button is pressed during threading, block stop will result at the ending point
01

of the block following the block in which threading is completed (no longer in G32 mode).
)2

7. An M0 block (for programmed stop) immediately following a threading block will not cause a
(c
ht

stop until completion of the next, non-threading motion block (no longer in G32 mode) so as
ig

not to deform the thread.


yr

8. In order to protect the lead during threading, a converted cutting feed rate may sometimes
op
C

exceed the cutting feed clamp rate.


9. An illegal lead is produced at the start and at the end of the thread cutting because of servo
system delay and other factors.
Therefore, it is necessary to command a thread length obtained by adding the illegal lead
lengths δ1 and δ2 to the required thread length.

5-22
Serial No. 269443

INTERPOLATION FUNCTIONS 5
10. The spindle speed is subject to the following restriction:
1 ≤ R ≤ Maximum feed rate/Thread lead
where R : Spindle speed (min–1) ≤ Permissible speed of encoder (min–1)
Thread lead = mm or inches
Maximum feed rate = mm/min or in/min (this is subject to the restrictions imposed
by the machine specifications).
11. During threading, use or disuses of dry run can be specified by setting parameter F111 bit 1.
12. Synchronous feed applies for the threading commands even with an asynchronous feed
mode (G98).
13. Spindle override is valid even during threading. But the override value will not be changed

.
d
during threading.

ve
14. When a threading command is programmed during tool nose radius compensation, the

er
s
compensation is temporarily cancelled and the threading is executed.

re
15. When the mode is switched to another automatic operation mode while G32 is executed,

ts
gh
the following block which does not contain a threading command is first executed and then

ri
the automatic operation stops.

ll
.A
16. When the mode is switched to manual operation mode while G32 is executed, the following

N
block which does not contain a threading command is first executed and then the automatic

O
operation stops. In the case of the single block operation, the following block which does not

TI
43

contain a threading command is first executed and then the automatic operation stops.
A
R
94

17. The threading command waits for the single rotation synchronization signal of the rotary
PO
26

encoder and starts movement.


R
o.

With this NC unit, however, movement starts without waiting for this signal when another
N

system issues a threading command during threading by one system.


al

K
ri

Therefore, threading commands should not be issued by a multiple number of systems.


ZA
Se

4. Sample programs
IM
K
ZA

X-axis
A
M
YA
3
01

20.0 Z-axis
)2
(c
ht

90.0
ig
yr
op

40.0 50.0
C

TEP029

G32 X90.0 Z40.0 E12.34567; Absolute data command


G32 U70.0 W–50.0 E12.34567; Incremental data command

5-23
Serial No. 269443

5 INTERPOLATION FUNCTIONS

5-10-2 Inch threading: G32

1. Function and purpose


If the number of threads per inch in the long axis direction is designated in the G32 command,
the feed of the tool will be controlled to synchronize with the spindle rotation. That is, constant
lead straight threading, taper threading and continuous threading can be performed.

2. Programming format
G32 Zz/Ww Xx/Uu Ee Qq;
Where Zz, Ww, Xx, Uu: Thread ending point addresses and coordinates

.
d
Ee: Number of threads per inch in direction of long axis (axis of which the

ve
moving distance is the longest)

er
s
(Decimal point command can also be assigned.)

re
Qq: Shift angle of threading start

ts
gh
ri
X-axis w

ll
Ending point

.A
N
u

O
2
α

TI
Starting point
43

z δ2
A
δ1
R
94

PO

Z-axis
26

x
o.

O
N

C
al

K
ri

ZA
Se

A
IM

TEP030
K

3. Detailed description
ZA
A

1. The number of threads in the long axis direction is assigned as the number of threads per
M

inch.
YA

2. The E code is also used to assign the precision lead length, and whether the thread number
3
01

or precision lead length is to be designated can be selected by parameter setting (allowed


)2

by parameter F91 bit 7).


(c

3. The E command value should be set within the lead value range when converted to the
ht

lead.
ig
yr

4. Use an argument Q to specify the shift angle of threading start for multiple-thread cutting.
op

Omit the argument Q if no shifting of angular position for threading start is required at all
C

(shift by 0°).
5. See Subsection 5-10-1 on “Constant lead threading” for further details.

5-24
Serial No. 269443

INTERPOLATION FUNCTIONS 5
4. Sample programs

X-axis

20.0
Z-axis

90.0

.
d
ve
40.0 50.0

er
TEP031

s
re
ts
G32 X90.0 Z40.0 E12.0; Absolute data command

gh
G32 U70.0 W–50.0 E12.0; Incremental data command

ri
ll
5-10-3 Continuous threading

.A
N
Continous threading is possible by designating threading commands continuously. In this way, it

O
is possible to cut special threads whose lead or shape changes.

TI
43

A
R
94

PO
26

R
o.

O
N

C
al

K
ri

ZA
Se

A
IM
K

G32 G32
ZA

G32
A
M
YA

TEP032
3
01
)2
(c
ht
ig
yr
op
C

5-25
Serial No. 269443

5 INTERPOLATION FUNCTIONS

5-10-4 Variable lead threading: G34

1. Function and purpose


Variable lead threading is possible by commanding the increase or decrease of a lead per screw
rotation.

d.
ve
ser
re
ts
gh
D732S0012

ri
ll
.A
2. Programming format

N
G34 Xx/Uu Zz/Ww Ff/Ee Kk;

O
TI
It is the same as the case of straight and taper threading of G32 (see Subsections 5-10-1 and -2)
43

except an address K.
A
R
94

PO

A value commanded with K gives the increase or decrease of a lead per screw rotation.
26

Values which K can take are as follows:


o.

O
N

Metric input: ±0.00001 to ±999.99999 mm/rev


al

Inch input: ±0.000001 to ±99.999999 in/rev


ri

ZA
Se

3. Notes
IM

1. As a result of the increase or decrease of a lead, when exceeding the range of the
K
ZA

command value of screw lead or when cutting feed gets excessively high, the feed rate is
clamped at rapid feed rate.
A
M

2. “Feed hold during threading” function is invalid for G34.


YA
3
01
)2
(c
ht
ig
yr
op
C

5-26
Serial No. 269443

INTERPOLATION FUNCTIONS 5
5-10-5 Threading with C-axis interpolation: G01.1

1. Function and purpose


The G01.1 command in the milling mode enables a simultaneous interpolation on the C-axis and
the X- and/or the Z-axis for straight, tapered or scrolled thread cutting of constant leads.

2. Programming format
G01.1 Zz/Ww Xx/Uu Ff Ss;
Where Zz, Ww, Xx, Uu: Thread ending point addresses and coordinates (mm or in)
Ff: Lead of long axis (axis of which moving distance is the longest)

d .
ve
direction

er
Ss: Rotational speed of C-axis (min–1)

s
Set parameter F111 bit 3 to select the direction of C-axis rotation:

re
F111 bit 3 = 0 : Normal rotation of C-axis

ts
gh
= 1 : Reversed rotation of C-axis

ri
3. Detailed description

ll
.A
1. For tapered thread cutting, specify the lead in the long axis direction.

N
O
TI
Straight thread
43

+X Lead
A
R
94

PO

Scrolled thread
26

a U
+Z
R

2
o.

O
N

C
al

K
ri

ZA

Lead
Se

Tapered
A

thread Lead
IM

Tapered thread
section
K
ZA

Lead in Z-axis direction for a ≤ 45°


Lead in X-axis direction for a > 45°
A
M
YA

2. Range of specification of lead (address F)


3
01

- For data input in mm: 0.0001 to 500.0000 mm


)2

- For data input in inhces: 0.000001 to 9.999999 in


(c

3. Specification range of rotational speed (address S)


ht
ig

1 ≤ S ≤ Max. speed of C-axis rotation


yr

- The maximum speed of C-axis rotation (1/360 of value “C” of parameter M3) depends on
op

the respective machine model.


C

- Do not create a program nor operate the overriding keys in such a manner that the
maximum speed of C-axis rotation should be exceeded.
4. During execution of G01.1 command, it is not possible at all to apply feed hold or to change
the override values.
5. The speed of C-axis rotation should be kept constant throughout from roughing till finishing.
6. The number of C-axis revolutions for execution of one G01.1 command must not exceed
298.

5-27
Serial No. 269443

5 INTERPOLATION FUNCTIONS

4. Sample programs
G98 G97;
G28 U0 W0;
T001001;
G50 X300.Z100.;
M200;
G00 X100.Z2.C0.;
G01.1 W-100.F2.S400;(*)
G00 U10.; Chuck Jaw
W100.C0.;

.
U-11.;

d
Workpiece

ve
G01.1 W-100.F2.S400;(*)

er
G00 U11.;

s
re
W100.C0.;

ts
G00 U-12.; +X

gh
G01.1 W-100.F2.S400;(*)

ri
G00 U12.;

ll
+Z

.A
W100.;

N
G28 U0 W0.;

O
M202;

TI
43

M30; A
R
94

(*) Command for threading with C-axis control, 2 mm lead and 400 min–1
PO
26

R
o.

O
N

C
al

K
ri

ZA
Se

A
IM
K
ZA
A
M
YA
3
01
)2
(c
ht
ig
yr
op
C

5-28
Serial No. 269443

INTERPOLATION FUNCTIONS 5
5-10-6 Automatic correction of threading start position (for overriding in a threading cycle)

1. Function and purpose


The phase of the spindle is automatically corrected at the start of each threading pass to prevent
the threading position from deviating even when the spindle override value is updated in the
middle of a threading cycle.
The use of this option allows the thread cutting conditions to be changed even in the flow of a
threading cycle.

Starting point as programmed


Ending point as programmed

.
G00

d
ve
G00

er
G00 Starting point of machining

s
1st threading pass

re
2nd threading pass

ts
Automatic phase correction

gh
Spindle override value for the same angular position
changed during 1st pass

ri
at the start of threading
Overridden speed

ll
.A
validated from 2nd pass Acceleration
distance

N
O
TI
43

2. Related G-codes A
R
94

PO
26

The automatic correction function is applicable to the following G-codes of threading:


R
o.

Function G-code
N

Thread cutting (straight, taper) G32


al

K
ri

ZA

Turning fixed cycle for threading G92


Se

Compound fixed cycle for threading G76


IM

Note: Variable-lead threading (G34), or continuous threading for different-pitch sections,


K
ZA

requires continuous or transitional acceleration between blocks, as well as different


distances of acceleration. The automatic correction function cannot guarantee correct
A
M

thread forming for a speed overriding in the middle of these threading cycles.
YA

3. Detailed description
3
01

1. The automatic correction function is an option.


)2
(c
ht
ig
yr
op
C

5-29
Serial No. 269443

5 INTERPOLATION FUNCTIONS

2. Even in the middle of a threading pass, operating the turning/milling spindle speed
overriding keys immediately changes the speed indication in percentages, indeed, but the
actual speed will not accordingly change till completion of the threading block (or a series of
the threading blocks in the case of “continuous threading”).

Overridden speed validated


from this position

G00
G00 G00

Starting point of machining


G32
Ending point as programmed

.
Starting point as programmed

d
ve
er
Spindle override value changed

s
re
during a threading pass

ts
gh
3. The function for automatic correction of threading start position does not include corre-

ri
sponding adjustment of the acceleration distance for threading. To use an overriding value

ll
above 100%, therefore, specify in the machining program such an acceleration distance as

.A
to allow for the maximum spindle speed.

N
O
4. As for the end of thread, the length of the upward cutting path on the workpiece will become

TI
43

shorter, or greater, for a spindle override value below, or above, 100%.


A
R
94

PO
26

Upward cutting path for 100%


R
o.

Upward cutting path Upward cutting path


N

for more than 100% for less than 100%


al

K
ri

ZA
Se

A
IM
K
ZA
A
M

Root of thread
YA

Workpiece front view


3
01

Changes in the upward cutting path according to the spindle override value
)2
(c

4. Notes
ht

1. This function is not valid for a threading by simultaneous cutting with both (upper and lower)
ig
yr

turrets.
op

2. This function is not valid for a threading by synchronization of both turning spindles.
C

3. This function is only valid for a longitudinal threading (by cutting feed on the Z-axis).
4. After changing the spindle override value the execution of a threading block should not be
started until spindle rotation has been stabilized; otherwise the starting section will only be
cut to an incomplete thread.
5. Do not allow a threading block to be executed with the spindle override value set to 0%;
otherwise the machine operation will be stopped at the beginning of that block.

5-30
Serial No. 269443

INTERPOLATION FUNCTIONS 5

5-11 Helical Interpolation: G17, G18, G19 and G02, G03

1. Function and purpose


Command G02 or G03 with a designation for the third axis allows synchronous circular inter-
polation on the plane specified by plane-selection command G17, G18 or G19 with the linear
interpolation on the third axis.

2. Programming format
G17 G02 Xx1 Yy1 Zz1 Ii1 Jj1 Pp1 Ff1 ;
Feed rate
(G03)

.
Number of pitches

d
ve
Arc center coordinates
Linear axis ending point coordinate

er
Arc ending point coordinates

s
re
or

ts
gh
G17 G02 Xx2 Yy2 Zz2 Rr2 Pp2 Ff2 ;

ri
Feed rate
(G03) Number of pitches

ll
.A
Arc radius
Linear axis ending point

N
Arc ending point coordinates

O
TI
3. Detailed description
43

A
R
94

z1
PO
26

R
o.

O
N

p1-th 2nd 1st


C
al

l X
ri

ZA

X
Se

A
IM

θ
θs
θe
K
ZA

Y
A
M
YA
3

Z
01
)2

Y
(c

H734P0001
ht
ig

1. For helical interpolation, movement designation is additionally required for one to two linear
yr
op

axes not forming the plane for circular interpolation.


C

2. The velocity in the tangential direction must be designated as the feed rate F.
3. The pitch l is calculated as follows:
z1
l = (2π • p + θ)/2π
1

–1 ye –1 ys
θ = θe – θs = tan – tan (0 ≤ θ < 2π)
xe xs
where (xs, ys): relative coordinates of starting point with respect to the arc center
(xe, ye): relative coordinates of ending point with respect to the arc center

5-31
Serial No. 269443

5 INTERPOLATION FUNCTIONS

4. Address P can be omitted if the number of pitches is 1.


5. Plane selection
As with circular interpolation, the circular-interpolation plane for helical interpolation is
determined by the plane-selection code and axis addresses. The basic programming
procedure for helical interpolation is: selecting a circular-interpolation plane using a plane-
selection command (G17, G18 or G19), and then designating the two axis addresses for
circular interpolation and the address of one axis (perpendicular to the circular-interpolation
plane) for linear interpolation.
- XY-plane circular, Z-axis linear
After setting G02 (or G03) and G17 (plane-selection command), set the axis addresses X,
Y and Z.

d .
ve
- ZX-plane circular, Y-axis linear

s er
After setting G02 (or G03) and G18 (plane-selection command), set the axis addresses Z,

re
X and Y.

ts
gh
- YZ-plane circular, X-axis linear

ri
After setting G02 (or G03) and G19 (plane-selection command), set the axis addresses Y,

ll
.A
Z and X.

N
O
4. Sample programs

TI
43

Example 1: A
R
94

PO

G28 U0 W0 Y0; X
26

G50 X0 Z0 Y0;
R
o.

G17 G03 X100. Y50. Z-50. R50. F1000;


N

100.
C
al

Ending
ri

ZA

point
Se

–50.
Z
IM

Starting
point
K

50.
ZA
A

H734P0002
M

Y
YA

Example 2:
3
01

G28 U0 W0 Y0;
X
)2

G50 X0 Z0 Y0;
(c

G17 G03 X100. Y50. Z-50. R50. P2 F1000;


100.
ht

Ending
ig

point
yr
op

–50. Z
C

Starting
point
50.

H734P0003

5-32
Serial No. 269443

INTERPOLATION FUNCTIONS 5

5-12 Fixed Gradient Control for G0 (Option)

1. Function and purpose


Fixed gradient control for G0 refers to a method of executing rapid traverse commands (under
G00) using linear acceleration and deceleration of a fixed gradient. The gradient in question
denotes an acceleration and corresponds to the quotient of the rapid traverse rate (parameter
M1) and the time constant concerned (parameter N1). As compared with the control using the
fixed time constant, positioning time can be reduced for a distance traveled which is shorter than
is required for acceleration up to the rapid traverse rate and immediately succeeding decelera-
tion to zero.

d .
ve
2. Example for comparison with the control using the fixed time constant

ser
Given below is an example to illustrate the difference in positioning time by rapid traverse over

re
distance L between the two control methods.

ts
gh
Rapid traverse rate (M1) = 30000 mm/min, Time constant for rapid traverse (N1) = Ts = 0.3 s

ri
Control using the fixed time constant Control using the fixed gradient

ll
.A
30000 mm/min 30000 mm/min

N
O
TI
Speed
43
Speed

A
R
94

L = 100 L = 100
PO
26

L = 20
R

L = 20
o.

L = 10
O

L = 10
N

Ts = 0.3 Positioning time Ts = 0.3 Positioning time


al

0.32
K

0.155
ri

0.34
ZA

0.219
Se

A
IM

3. Remarks
K

The optional function in question works on the correspondingly executed machines when rapid
ZA

traverse of interpolation type by G0 and the fixed gradient control for G0 are made valid by the
A
M

corresponding parameter settings (F91 bit 6 = 0, and K96 bit 7 = 1).


YA
3
01
)2
(c
ht
ig
yr
op
C

5-33
5

C
op
yr
ig
- NOTE -

ht
(c
)2
INTERPOLATION FUNCTIONS

01
3
YA
M
A Se
ZA
K ri
al
IM
N
A o.
ZA 26
K

5-34 E
94
C
O 43
Serial No. 269443

R
PO
R
A
TI
O
N
.A
ll
ri
gh
ts
re
ser
ve
d.
Serial No. 269443

FEED FUNCTIONS 6
6 FEED FUNCTIONS

6-1 Rapid Traverse Rates


A separate rapid traverse rate can be set for each axis. The maximum rate of rapid traverse,
however, is limited according to the particular machine specifications.
Refer to the Operating manual for the machine for rapid traverse rates.
Two types of tool paths are available for positioning: an interpolation type, which uses a line to
perform interpolation from the starting point through the ending point, and a non-interpolation
type, which moves the tool at the maximum speed of each axis.
Use a parameter to select the interpolation type or the non-interpolation type. The positioning

d.
time is the same for both types.

ve
er
6-2 Cutting Feed Rates

s
re
ts
A cutting feed rate must be designated using address F and an eight-digit number (F8-digit direct

gh
designation).

ri
The F8 digits must consist of five integral digits and three decimal digits, with the decimal point.

ll
Cutting feed rates become valid for commands G01, G02, G03, G32 and G34.

.A
N
Example: Rate of feed

O
G01 X100. Y100. F200* 200.0 mm/min

TI
43

G01 X100. Y100. F123.4 A123.4 mm/min


R
94

G01 X100. Y100. F56.789 56.789 mm/min


PO
26

* It means the same if F200. or F200.000 is set in stead of F200.


R
o.

O
N

Note: An alarm (No. 713) will result if a feed rate command is not set for the first cutting
C
al

command (G01, G02, G03, G32 or G34) that is read firstly after power-on.
K
ri

ZA
Se

6-3 Synchronous/Asynchronous Feed: G99/G98


IM
K

1. Function and purpose


ZA

Command G99 allows a feed rate per revolution to be set using an F-code.
A
M

To use this command, a rotational encoder must be mounted on the spindle.


YA

2. Programming format
3
01

G98: Feed per minute (/min) [Asynchronous feed]


)2

G99: Feed per revolution (/rev) [Synchronous feed]


(c

Since command G99 is modal, it will remain valid until command G98 is given.
ht
ig
yr
op
C

6-1
Serial No. 269443

6 FEED FUNCTIONS

3. Detailed description
1. Feed rates that can be set using F-codes are listed in the table below.
The table below also lists synchronous feed rates, which are to be set in millimeters (or
inches) per spindle revolution using F-codes.
G98F_ (Feed per minute) G99F_ (Feed per revolution)
Input in mm 1 to 240000 mm/min (F1 to F240000) 0.0001 to 500.0000 mm/rev (F1 to F5000000)
Input in inches 0.01 to 9600.00 in/min (F1 to F960000) 0.000001 to 9.999999 in/rev (F1 to F9999999)

2. The effective feed rate per revolution, that is, the actual moving speed of the machine, can
be calculated as follows:

d .
FC = F × N × OVR (Expression 1)

ve
er
where FC: Effective feed rate (mm/min or in/min)

s
re
F: Designated feed rate (mm/rev or in/rev)

ts
N: Spindle speed (min–1)

gh
OVR: Cutting feed override

ri
If multiple axes are selected at the same time, effective feed rate FC given by expression 1

ll
.A
above will become valid for the corresponding vectorial direction.

N
O
4. Remarks

TI
43

1. A
An effective feed rate that is expressed in a feed rate per minute (mm/min or in/min) is dis-
R
94

played on the POSITION display.


PO
26

2. If the effective feed rate should become larger than the cutting feed limit speed, that limit
R
o.

speed will govern.


N

C
al

3. In the dry run mode, feed will become asynchronous and the machine will operate at an
ri

ZA

externally preset feed rate (mm/min or in/min).


Se

4. According to the setting of bit 1 of parameter F93, synchronous or asynchronous feed mode
IM

(G99 or G98) is automatically made valid upon power-on or by execution of M02 or M30.
K
ZA
A
M
YA
3
01
)2
(c
ht
ig
yr
op
C

6-2
Serial No. 269443

FEED FUNCTIONS 6

6-4 Selecting a Feed Rate and Effects on Each Control Axis


As mentioned earlier, the machine has various control axes. These control axes can be broadly
divided into linear axes, which control linear motions, and rotational axes, which control rotational
motions. Feed rates for control axes have different effects on the tool speed, which is of great
importance for machining quality, according to the particular type of axis controlled.
The amount of displacement must be designated for each axis, whereas the feed rate is to be
designated as a single value for the intended tool movement. Before letting the machine control
two or more axes at the same time, therefore, you must understand how the feed rate designated
will act on each axis. In terms of this, selection of a feed rate is described below.

.
d
1. Controlling linear axes

ve
er
The feed rate that has been selected using an F-code acts as a linear velocity in the moving

s
direction of the tool, irrespective of whether only one axis is to be controlled or multiple axes

re
simultaneously.

ts
gh
Example: If linear axes (X- and Z-axes) are to be controlled using a feed rate of f:

ri
ll
.A
X

N
O
TI
43

P2 (Tool ending point)


A
x
R
94

PO
26

R
o.

“f” denotes the velocity in this direction.


O
N

C
al

Z
ri

P1 (Tool starting point) z


ZA
Se

A
IM

TEP033
K
ZA

When only linear axes are to be controlled, setting of a cutting feed rate itself is only required.
A

The feed rate for each axis refers to that component of the specified feed rate which cor-
M

responds with the ratio of movement stroke on the respective axis to the actual movement
YA

distance.
3
01

In the example shown above:


)2

x
X-axis feed rate = f ×
(c

x2 + z2
ht

z
Z-axis feed rate = f ×
ig

x + z2
2
yr
op

2. Controlling a rotational axis


C

When a rotational axis is to be controlled, the selected feed rate acts as the rotating speed of the
rotational axis, that is, as an angular velocity.
Thus, the cutting speed in the moving direction of the tool, that is, a linear velocity varies
according to the distance from the rotational center to the tool. This distance must be considered
when setting a feed rate in the program.

6-3
Serial No. 269443

6 FEED FUNCTIONS

Example 1: If a rotational axis (C-axis) is to be controlled using a feed rate of f (deg/min):

P2 (Tool ending point)

“f” denotes the angular velocity.

The linear velocity is obtainable from π!r!f


180
c
Center of P1 (Tool ending point)
rotation
r

. d
ve
er
TEP034

s
re
In this case, the cutting speed in the moving direction of the tool (linear velocity) “fc” is

ts
calculated by:

gh
π•r

ri
fc = f ×
180

ll
.A
Hence, the feed rate to be programmed for the required value fc is:

N
180
f = fc ×

O
π•r

TI
43

Note: A
If the tool is to be moved by controlling linear axes along the circumference using the
R
94

circular interpolation function, the feed rate programmed is the velocity acting in the
PO
26

moving direction of the tool, that is, in the tangential direction.


R
o.

Example 2: If linear axes (X- and Z-axes) are to be controlled at a feed rate of f using the
N

circular interpolation function:


al

K
ri

ZA
Se

A
IM

X
K
ZA

P2
x
A

“f” denotes this linear velocity.


M
YA
3

P1
01

Z
z
)2

k
(c

TEP036
ht
ig

In this case, the X- and Z-axis feed rates will change with the movement of the tool. The
yr

resultant velocity, however, will be kept at the constant value, f.


op
C

6-4
Serial No. 269443

FEED FUNCTIONS 6
3. Controlling a linear axis and a rotational axis at the same time
The NC unit controls linear axes and rotational axes in exactly the same manner.
For control of rotational axes, data given as a coordinate word (C or H) is handled as an angle,
and data given as a feed rate (F) is handled as a linear velocity. In other words, an angle of one
degree for a rotational axis is handled as equivalent to a moving distance of 1 mm for a linear
axis. Thus, for simultaneous control of a linear axis and a rotational axis, the magnitudes of the
individual axis components of the data that has been given by F are the same as those existing
during linear axis control described previously in Subparagraph 1. above. In this case, however,
the velocity components during linear axis control remain constant in both magnitude and
direction, whereas those of rotational axis control change in direction according to the movement

.
of the tool. Therefore, the resulting feed rate in the moving direction of the tool changes as the

d
ve
tool moves.

er
Example: If a linear axis (X-axis) and a rotational axis (C-axis) are to be controlled at the same

s
re
time at a feed rate of f:

ts
gh
ri
fc ft - “fx” is constant in both size
and direction.

ll
- “fc” is constant in size, but

.A
P2 varies in direction.

N
fx - “ft” varies in both size and

O
direction.

TI
fc
43

r A
R
94

θ ft
PO
26

P1
fx
R
o.

c
O
N

x
C

θ
al

K
ri

ZA

Center of rotation
Se

MEP041
A
IM

X-axis incremental command data is expressed here as x, and that of C-axis as c.


K

The X-axis feed rate (linear velocity), fx, and the C-axis feed rate (angular velocity), ω, can be
ZA

calculated as follows:
A
M

x c
fx = f × !!!!!!! [1] ω=f× !!!!!!! [2]
YA

2 2
x +c x + c2
2
3

The linear velocity “fc” that relates to C-axis control is expressed as:
01

π•r
)2

fc = ω • !!!!!!! [3]
(c

180
ht

If the velocity in the moving direction of the tool at starting point P1 is taken as “ft”, and its X- and
ig

Y-axis components as “ftx” and “fty” respectively, then one can express “ftx” and “fty” as follows:
yr
op

π π
ftx = –r sin ( θ) × ω + fx !!!!!!! [4]
C

180 180
π π
fty = –r cos (
180
θ) ×
180
ω !!!!!!! [5]

where r denotes the distance (in millimeters) from the rotational center to the tool, and q denotes
the angle (in degrees) of starting point P1 to the X-axis at the rotational center.

6-5
Serial No. 269443

6 FEED FUNCTIONS

From expressions [1] through [5] above, the resultant velocity “ft” is:

ft = ftx2 + fty2

x2 – x • c • r sin ( π θ) π + ( π • r • c )2
180 90 180
=f× !!!!!!! [6]
x2 + c2

The feed rate f that is to be set in the program must be therefore:

x2 + c2
f = ft × !!!!!!! [7]
x – x • c • r sin ( π θ) π + ( π • r • c )2
2
180 90 180

. d
ve
In expression [6], “ft” is the velocity at starting point P1 and thus the value of ft changes with that

er
of θ which changes according to the rotational angle of the C-axis. To keep cutting speed “ft” as

s
re
constant as possible, the rotational angle of the C-axis in one block must be minimized to ensure
a minimum rate of change of θ.

ts
gh
ri
6-5 Threading Leads

ll
.A
The thread lead in the threading mode (G32, G34, G76 or G92) can be designated using a

N
seven-digit value preceded by address F or eight-digit value preceded by address E.

O
TI
The thread lead command range is 0.0001 to 999.9999 mm/rev (F with 7 digits) or 0.0001 to
43

A
999.99999 mm/rev (E8-digit) (with unit of data setting of microns).
R
94

PO
26

Thread cutting (metric input)


R
o.

Unit of program data input 0.0001 mm


N

E (Number of threads
al

Command address F (mm/rev) E (mm/rev)


per inch)
ri

ZA
Se

1 (=0.0001) 1 (=1)
A

Smallest input capacity


(1.=1.0000) (1.=1.00)
IM

Range of command data 0.0001 to 500.0000 0.0001 to 999.9999 0.01 to 9999999.9


K
ZA

Thread cutting (inch input)


A

Unit of program data input 0.000001 in


M
YA

E (Number of threads
Command address F (in/rev) E (in/rev)
per inch)
3
01

1 (=0.000001) 1 (=1)
Smallest input capacity
(1.=1.000000) (1.=1.0000)
)2

Range of command data 0.000001 to 9.999999 0.000001 to 99.999999 0.0001 to 9999.9999


(c
ht
ig
yr
op
C

6-6
Serial No. 269443

FEED FUNCTIONS 6

6-6 Automatic Acceleration/Deceleration


The rapid traverse and manual feed acceleration/deceleration pattern is linear acceleration and
linear deceleration. Time constant TR can be set independently for each axis using parameters in
1 ms steps within a range from 1 to 500 ms. The cutting feed (not manual feed) acceleration or
deceleration pattern is exponential acceleration/deceleration. Time constant TC can be set inde-
pendently for each axis using parameters in 1 ms steps within a range from 1 to 500 ms.
(Normally, the same time constant is set for each axis.)

f f
Continuous Continuous

. d
command command

ve
s er
re
ts
gh
TR TR t t
Td

ri
Tc Tc

ll
Rapid feed acceleration/deceleration pattern Cutting feed acceleration/deceleration pattern

.A
(TR = Rapid feed time constant) (Tc = Cutting feed time constant)

N
(Td = Deceleration check time)

O
TI
TEP037
43

A
R
94

During rapid traverse and manual feed, the following block is executed after the command pulse
PO
26

of the current block has become “0” and the tracking error of the acceleration/deceleration circuit
R
o.

has become “0”. During cutting feed, the following block is executed as soon as the command
O
N

pulse of the current block becomes “0” and also the following block can be executed when an
al

external signal (error detection) can detect that the tracking error of the acceleration/deceleration
ri

ZA
Se

circuit has reached “0”. When the in-position check has been made valid (selected by machine
A

parameter) during the deceleration check, it is first confirmed that the tracking error of the
IM

acceleration/deceleration circuit has reached “0”, then it is checked that the position deviation is
K

less than the parameter setting, and finally the following block is executed.
ZA
A
M

6-7 Limitation of Speed


YA

This function exercises control over the actual rate of cutting feed in which override has been
3

applied to the programmed rate so that the speed limit preset independently for each axis is not
01
)2

exceeded.
(c

Note: Speed limitation is not applied to synchronous feed and threading.


ht
ig
yr
op
C

6-7
Serial No. 269443

6 FEED FUNCTIONS

6-8 Exact-Stop Check: G09

1. Function and purpose


Only after the in-position status has been checked following machine deceleration and stop or
after deceleration checking time has been passed, may you want to start the next block
command in order to reduce possible machine shocks due to abrupt changes in tool feed rate
and to minimize any rounding of workpieces during corner cutting. An exact-stop check function
is provided for these purposes.

2. Programming format

.
d
G09 G01 (G02, G03) ;

ve
er
Exact-stop check command G09 is valid only for the cutting command code (G01, G02, or G03)

s
re
that has been set in that block.

ts
3. Sample program

gh
ri
N001 G09 G01 X100.000 F150; The next block is executed after an in-position status

ll
check following machine deceleration and stop.

.A
N002 Z100.000 ;

N
O
TI
43

f A
R
94

(Selected feedrate) Tool


PO
26

X-axis
With G09
R
o.

N001 available
O
N

N001
al

K
ri

ZA

Time Without G09 N002


Se

Z-axis
A
IM

N002
K

The solid line indicates a feedrate pattern with the G09 available.
ZA

The dotted line indicates a feedrate pattern without the G09.


A
M

TEP038
YA

Fig. 6-1 Validity of exact-stop check


3
01
)2
(c
ht
ig
yr
op
C

6-8
Serial No. 269443

FEED FUNCTIONS 6
4. Detailed description

A. Continuous cutting feed commands

Preceding block Next block

d .
ve
er
Ts Ts: Cutting feed acceleration/deceleration

s
re
time constant

ts
TEP039

gh
Fig. 6-2 Continuous cutting feed commands

ri
ll
B. Cutting feed commands with in-position status check

.A
N
O
TI
43

A
R
94

PO
26

R
o.

Preceding block Next block


N

C
al

Lc
K
ri

ZA
Se

Ts Ts
IM

Ts: Cutting feed acceleration/deceleration


time constant
K

Lc: In-position width


ZA

TEP040
A

Fig. 6-3 Block-to-block connection in cutting feed in-position status check mode
M
YA

As shown in Fig. 6-3, in-position width Lc represents the remaining distance within the block
immediately preceding the next block to be executed.
3
01

The in-position width helps keep any


)2

rounding of workpieces during corner


(c

cutting within a fixed level.


ht

Lc
ig

If rounding of workpieces at corners is to Next block


yr

be completely suppressed, include dwell


op

command G04 between cutting blocks.


C

Preceding block

TEP041

6-9
Serial No. 269443

6 FEED FUNCTIONS

C. With deceleration check


- With linear acceleration/deceleration

Preceding block Next block

.
Ts

d
Ts : Acceliration/deceleration time constant

ve
Td Td : Deceleration check time

er
Td = Ts + (0 to 14 ms)

s
re
ts
TEP042

gh
ri
- With exponential acceleration/deceleration

ll
.A
N
O
TI
43

A
R
94

Preceding block Next block


PO
26

R
o.

O
N

Ts
Ts : Acceleration/deceleration time
al

constant
ri

Td
ZA

Td : Deceleration check time


Se

Td = 2 × Ts + (0 to 14 ms)
A
IM

TEP043
K
ZA

- With exponential acceleration/linear deceleration


A
M
YA
3
01

Preceding block Next block


)2
(c
ht

2 × Ts
ig
yr

Td Ts
op

Ts : Acceleration/deceleration time
C

constant
Td : Deceleration check time
Td = 2 × Ts + (0 to 14 ms)
TEP044

The time required for the deceleration check during cutting feed is the longest among the cutting
feed deceleration check times of each axis determined by the cutting feed accele-
ration/deceleration time constants and by the cutting feed acceleration/ deceleration mode of the
axes commanded simultaneously.

6-10
Serial No. 269443

FEED FUNCTIONS 6

6-9 Exact-Stop Check Mode: G61

1. Function and purpose


Unlike G09 (exact-stop check) which performs an in-position status check on that block only,
code G61 functions as a modal command. That is, this command acts on all its succeeding
cutting commands (G01, G02, and G03) so that deceleration occurs at the end of each block,
followed by an in-position status check. Mode of G61 is cleared by automatic corner override
(G62), tapping mode (G63), or cutting mode (G64).

2. Programming format

. d
G61;

ve
s er
6-10 Automatic Corner Override: G62

re
ts
1. Function and purpose

gh
ri
Command G62 automatically overrides in the tool radius compensation mode the selected feed

ll
rate to reduce the tool load during inner-corner cutting or automatic inner-corner rounding.

.A
Once command G62 has been given, the automatic corner override function will remain valid

N
O
until it is cancelled by tool radius compensation cancellation (G40), exact-stop check mode

TI
(G61), tapping mode (G63), or cutting mode (G64).
43

A
R
94

2. Programming format
PO
26

G62 ;
o.

O
N

C
al

3. Detailed description
K
ri

ZA
Se

A. Inner-corner cutting
A
IM

When inner corner of a workpiece is cut as shown in the figure below, the load on the tool
K

increases because of large amount of cutting. Using G62 in such a case allows the cutting feed
ZA

rate to be automatically overriden within the preset zone, and thus the tool load to be reduced to
A

accomplish appropriate cutting.


M
YA

This function, however, is valid only for programming the as-finished shape of a workpiece.
3
01

Programmed path
)2

(Finishing contour)
θ Cutting amount
(c
ht

Workpiece
S Workpiece surface shape
ig
yr

[3]
[1] [2]
op

Tool center path


Cutting
C

amount

Ci

Tool
θ : Inner-corner maximum angle
Ci : Deceleration zone (IN)

MEP046

Fig. 6-4 Inner-corner cutting

6-11
Serial No. 269443

6 FEED FUNCTIONS

<Machine operation>
- When the automatic corner override function is not used:
In the figure above, as the tool is moving in order of positions [1]→[2]→[3], the load on the tool
increases because the cutting amount at position [3] is larger than that of position [2] by the
area of hatched section S.
- When the automatic corner override function is used:
In the figure above, if maximum angle q of the inner corners is smaller than that preset in the
appropriate parameter, the feed rate is automatically overriden with the preset value for
movement through deceleration zone Ci.
<Setting parameters>

. d
Set the following parameters as user parameters:

ve
- E22: Override......................................... 0 to 100 (%)

s er
- F21: Inner-corner maximum angle θ...... 0 to 180 (deg)

re
ts
- F22: Deceleration zone Ci data ............. 0 to 99999.999 (mm) or to 3937.000 (inches)

gh
For further details of parameter setting, refer to the description in the Parameter list.

ri
ll
.A
B. Automatic corner rounding

N
O
TI
Workpiece
43

surface shape A
R
94

PO
26

Programmed path Tool center path


R
o.

O
N

C
al

K
ri

ZA
Se

Corner rounding center


A
IM
K
ZA

Corner rounding section


Workpiece Ci
A
M
YA
3
01

Cutting amount
)2
(c
ht

TEP046
ig
yr

For inner corner cutting with automatic corner rounding, override will be effected as set in
op

parameter through the deceleration zone Ci and corner rounding section (No check made about
C

angle).

6-12
Serial No. 269443

FEED FUNCTIONS 6
4. Operation examples
- Line-to-line corner

Programmed path
θ
Tool center path

Ci

.
d
Tool

ve
er
s
re
MEP047

ts
The feed rate is automatically overridden with the preset value by the parameter E22 through

gh
deceleration zone Ci.

ri
ll
- Line-to-circular (outside offsetting) corner

.A
N
O
TI
Programmed
43

A path
R
94

Tool center
PO

path
26

θ
R
o.

O
N

Ci
C
al

K
ri

ZA

Tool
Se

A
IM

MEP048
K
ZA

The feed rate is automatically overridden with the preset value by the parameter E22 through
A
M

deceleration zone Ci.


YA

- Arc(internal compensation)-to-line corner


3
01
)2
(c

Programmed path θ
ht
ig
yr

Ci
op

Tool center path


C

Tool
Tool

MEP049

The feed rate is automatically overridden with the preset value by the parameter E22 through
deceleration zone Ci.
Note: Data of deceleration zone Ci at which automatic overriding occurs represents the
length of the arc for a circular interpolation command.

6-13
Serial No. 269443

6 FEED FUNCTIONS

- Arc(internal compensation)-to-arc (external compensation) corner

N2
N1 θ
Programmed path

Ci
Tool center path

.
d
MEP050

ve
er
The feed rate is automatically overridden with the preset value by the parameter E22 through

s
re
deceleration zone Ci.

ts
gh
5. Correlationships to other command functions

ri
Function Override at corners

ll
.A
Cutting feedrate override Automatic corner override is applied after cutting feed override.

N
Override cancel Automatic corner override is not cancelled by override cancel.

O
TI
Limitation of feed rate Valid (for the feed rate after automatic corner override)
43

Dry run A
Automatic corner override is invalid.
R
94

PO

Synchronous feed A synchronous feed rate is automatically corner-overridden.


26

Skip (G31) During tool-diameter offset, G31 will result in a program error.
R
o.

Machine lock Valid


N

C
al

G00 Invalid
K
ri

ZA

G01 Valid
Se

G02, G03 Valid


IM

6. Precautions
K
ZA

1. Automatic corner override is valid only during the G01, G02 or G03 modes; it is invalid
A

during the G00 mode. Also, when the command mode is changed over from G00 to G01,
M
YA

G02, or G03 (or vice versa) at a corner, automatic corner override is not performed on the
G00-containing block at that corner.
3
01

2. Even in the automatic corner override mode, automatic corner override is not performed
)2

until the tool radius compensation mode has been set.


(c
ht
ig
yr
op
C

6-14
Serial No. 269443

FEED FUNCTIONS 6
3. Automatic corner override does not occur at corners where tool radius compensation is to
start or to be cancelled.

Startup block Programmed path Cancel block

Tool center path

Automatic corner override remains invalid.

.
d
ve
er
TEP051

s
re
ts
4. Automatic corner override does not occur at corners where I, J and K vector commands for

gh
tool radius compensation are to be executed.

ri
ll
.A
N
O
TI
Programmed path
43

A
R
94

PO

Tool center path


26

Block including I and J


R
o.

vector commands
O
N

Automatic corner override remains invalid.


C
al

(G41X_Y_I_J_;)
K
ri

ZA
Se

A
IM

TEP052
K
ZA

5. Automatic corner override occurs only when crossing points can be calculated. Crossing
A

points can not be calculated in the following case:


M
YA

- Four or more blocks that do not include move command appear in succession.
3

6. For circular interpolation, the deceleration zone is represented as the length of the arc.
01

7. The parameter-set angle of an inner corner is applied to the angle existing on the
)2

programmed path.
(c
ht

8. Setting the maximum angle to 0 or 180 degrees in the angle parameter results in an
ig

automatic corner override failure.


yr
op

9. Setting the override to 0 or 100 in the override parameter results in an automatic corner
C

override failure.

6-15
Serial No. 269443

6 FEED FUNCTIONS

6-11 Tapping Mode: G63

1. Function and purpose


Command G63 enters the NC unit into a control mode suitable for tapping. This mode has the
following features:
- The cutting feed override is fixed at 100%.
- Commands for deceleration at block-to-block connections are invalidated.
- The feed hold function is invalidated.
- The single-block function is invalidated.
- Tapping-mode signal is output.

.
d
The G63 command mode will remain valid until it is cancelled by exact-stop check mode (G61),

ve
er
automatic corner override (G62) or cutting mode (G64).

s
re
2. Programming format

ts
gh
G63 ;

ri
ll
6-12 Cutting Mode: G64

.A
N
O
1. Function and purpose

TI
43

Command G64 enters the NC unit into a control mode proper to obtain smoothly cut surfaces.
A
R
94

Unlike the exact-stop check mode (G61 mode), the cutting mode allows the next block to be
PO
26

executed without decelerating/stopping the machine between cutting feed blocks.


R
o.

The G64 command mode is cleared by exact-stop check mode (G61), automatic corner override
O
N

(G62) or tapping mode (G63).


al

In the initial state of the NC unit, the cutting mode is selected.


ri

ZA
Se

2. Programming format
IM

G64 ;
K
ZA
A
M
YA
3
01
)2
(c
ht
ig
yr
op
C

6-16 E
Serial No. 269443

DWELL FUNCTIONS 7
7 DWELL FUNCTIONS
The start of execution of the next block can be delayed using a G04 command.

7-1 Dwell Command in Time: (G98) G04

1. Function and purpose


Setting command G04 in the feed-per-second mode (command G98) delays the start of
execution of the next block for the specified time.

2. Programming format

.
d
G98 G04 X/U_;

ve
er
or

s
G98 G04 P_;

re
ts
Data must be set in 0.001 seconds.

gh
For address P, the decimal point is not available. Setting a decimal point will cause an alarm.

ri
ll
3. Detailed description

.A
N
1. The setting range for dwell time is as follows:

O
TI
Unit of data setting Range for address X or U Range for address P
43

0.001 mm 0.001 to 99999.999 (s)


A 1 to 99999999 (× 0.001 s)
R
94

PO
26

0.0001 inches 0.001 to 99999.999 (s) 1 to 99999999 (× 0.001 s)


R
o.

2. The count for the dwell command which is preceded by a block with cutting-feed command
N

is not started until the movement of the preceding block has been brought to a complete
al

K
ri

stop.
ZA
Se

A
IM
K
ZA

Cutting command in
A

the preceding block


M
YA

Next block
3
01

Dwell command
)2
(c

Dwell time
ht
ig
yr

TEP053
op
C

If the dwell command is given in one block together with an M-, S-, T- or B-code, the dwell
count and the execution of the respective code will be started at the same time.
3. If the bit 2 of parameter F92 is set to 1, dwell command value is always processed in time
specification irrespective of G98 and G99 modes.

7-1
Serial No. 269443

7 DWELL FUNCTIONS

4. Sample programs
- When data is to be set in 0.01 mm, 0.001 mm or 0.0001 inches:
G04 X 500 ;..........................................Dwell time = 0.5 s
G04 X 5000 ;........................................Dwell time = 5.0 s
G04 X 5. ;.............................................Dwell time = 5.0 s
G04 P 5000 ;........................................Dwell time = 5.0 s
G04 P 12.345 ; ....................................Alarm
- When data is to be set in 0.0001 inches and dwell time is included before G04:
X5. G04 ;..............................................Dwell time = 50 s (Equivalent to X50000G04.)

.
7-2 Dwell Command in Number of Revolutions: (G99) G04

d
ve
er
1. Function and purpose

s
re
Setting command G04 in the feed-per-revolution mode (command G99) suspends the start of

ts
execution of the next block until the spindle has rotated the specified number of revolutions.

gh
ri
2. Programming format

ll
.A
G99 G04 X/U_ ;

N
or

O
TI
G99 G04 P_ ;
43

A
R
94

Data must be set in 0.001 revolutions.


PO
26

For address P, the decimal point is not available. Setting a decimal point will cause an alarm.
R
o.

3. Detailed description
N

C
al

1. The setting range for number of dwell revolutions is as follows:


ri

ZA
Se

Unit of data setting Range for address X or U Range for address P


IM

0.001 mm 0.001 to 99999.999 (rev) 1 to 99999999 (× 0.001 rev)


K

0.0001 inches 0.001 to 99999.999 (rev) 1 to 99999999 (× 0.001 rev)


ZA
A

2. The count for the dwell command which is preceded by a block with cutting-feed command
M

is not started until the movement of the preceding block has been brought to a complete
YA

stop.
3
01
)2
(c
ht

Cut command in the


ig

preceding block
yr

Next block
op
C

Dwell command

Revolutions for dwell


(12.345 rev)
TEP053

If the dwell command is given in one block together with an M-, S-, T- or B-code, the dwell
count and the execution of the respective code will be started at the same time.

7-2
Serial No. 269443

DWELL FUNCTIONS 7
3. The dwell function is also valid during the machine lock mode.
4. During rest of the spindle, dwell count is also halted. When the spindle restarts rotating,
dwell count will also restart.
5. If the bit 2 of parameter F92 is set to 1, dwell command value is alway processed in time
specification.

6. This function cannot be used unless the position detecting encoder is provided to the
spindle.

d.
ve
ser
re
ts
gh
ri
ll
.A
N
O
TI
43

A
R
94

PO
26

R
o.

O
N

C
al

K
ri

ZA
Se

A
IM
K
ZA
A
M
YA
3
01
)2
(c
ht
ig
yr
op
C

7-3
7

C
op
yr
ig
- NOTE -
DWELL FUNCTIONS

ht
(c
)2
01
3
YA
M
A Se
ZA
K ri
al
IM
N
A o.
ZA 26
K

7-4 E
94
C
O 43
Serial No. 269443

R
PO
R
A
TI
O
N
.A
ll
ri
gh
ts
re
ser
ve
d.
Serial No. 269443

MISCELLANEOUS FUNCTIONS 8
8 MISCELLANEOUS FUNCTIONS

8-1 Miscellaneous Functions (M3-Digit)


Miscellaneous functions, which are also referred to as M-code functions, give spindle forward/
backward rotation and stop commands, coolant on/off commands, and other auxiliary commands
to the NC machine.
For the NC unit, these functions must be selected using M3-digit data (three-digit data preceded
by address M). Up to four sets of M3-digit data can be included in one block.
Example: G00 Xx1 Mm1 Mm2 Mm3 Mm4;
If five or more sets of M3-digit data are set, only the last four sets will become valid.

d.
ve
Refer to the machine specification for more specific relationships between available data and

er
functions.

s
re
For M-codes M00, M01, M02, M30, M98, M99, M998 and M999, the next block of data is not

ts
read into the input buffer since pre-reading is disabled automatically.

gh
The M-codes can be included in any block that contains other command codes. If, however, the

ri
M-codes are included in a block that contains move commands, then the execution priority will

ll
be either

.A
N
- the M-code functions are executed after completion of movement, or

O
- the M-code functions are executed together with movement.

TI
43

A
It depends on the machine specifications which type of processing is applied.
R
94

Processing and completion sequences are required in each case for all M commands except
PO
26

M98 and M99.


R
o.

The following lists six types of special M-code functions:


N

C
al

1. Programmed Stop: M00


K
ri

ZA

When this M-code is read, the tape reader will stop reading subsequent blocks. Whether the
Se

machine function such as spindle rotation and coolant will also stop depends on the
IM

machine specifications. The machine operation is restarted by pressing the cycle start
K

button on the operation panel. Whether resetting can be initiated by M00 or not also
ZA

depends on the machine specifications.


A
M

2. Optional Stop: M01


YA

When the M01 code is read with the [OPTIONAL STOP] menu function set to ON, the tape
reader will stop operating to perform the same function as M00.
3
01

The M01 command will be ignored if the [OPTIONAL STOP] menu function is set to OFF.
)2

Example: M
(c

N10 G00 X1000;


ht

N11 M01;
ig

N12 G01 X2000 Z3000 F600;


yr

M
op
C

<[OPTIONAL STOP] menu function status and operation>


If the menu function is on, operation stops at N11.
If the menu function is off, operation does not stop at N11 and N12 is executed.
3. Program End: M02 or M30
Usually, the program end command is given in the final block of machining program. Use
this command mainly for reading data back to the head of the program during memory
operation, or rewinding the tape in the tape operation mode (use an M30 command to
rewind the tape). The NC unit is automatically reset after tape rewinding and execution of
other command codes included in that block.

8-1
Serial No. 269443

8 MISCELLANEOUS FUNCTIONS

Automatic resetting by this command cancels both modal commands and offsetting data,
but the designated-position display counter is not cleared to zero.
The NC unit will stop operating when tape rewinding is completed (the automatic run mode
lamp goes out). To restart the NC unit, the cycle start button must be pressed.
Beware that if, during the restart of the NC unit following completion of M02 or M30
execution, the first movement command has been set in a coordinate word only, the valid
mode will be the interpolation mode existing when the program ended. It is recommended,
therefore, that the first movement command be given with an appropriate G-code.
4. Subprogram Call/End: M98, M99
Use M98 or M99 to branch the control into a subprogram or to recall it back to the calling
program.

d.
As M99 and M99 are internaly processed by the NC M-code signals ans strobe signals are

ve
not output.

ser
<Internal processing by the NC unit when M00, M01, M02 or M30 is used>

re
After M00, M01, M02 or M30 has been read, data pre-reading is automatically aborted. Other

ts
gh
tape rewinding operations and the initialization of modals by resetting differ according to the

ri
machine specification.

ll
.A
Note 1: M00, M01, M02 and M30 output independent signals, which will be cancelled by
pressing the RESET key.

N
O
Note 2: Tape rewinding is performed only when the tape reader has a rewinding function.

TI
43

A
R
94

8-2 No. 2 Miscellaneous Functions (A8/B8/C8-Digit)


PO
26

The No. 2 miscellaneous functions are used for positioning an index table. For the NC unit, these
o.

O
N

functions must be designated using an eight-digit value (form 0 to 99999999) preceded by


C
al

address A, B or C.
K
ri

ZA

The output signals are BCD signals of command data and start signals.
Se

A, B or C codes can be included in any block that contains other command codes. If, however,
IM

the A, B or C codes can be included in a block that contains move commands, then the execution
K

priority will be either


ZA

- the A, B or C code functions are performed after completion of movement, or


A
M

- the A, B or C code functions are performed together with movement.


YA

It depends on the machine specifications which type of processing is applied.


3

Processing and completion sequences are required in each case for all No. 2 miscellaneous
01

functions.
)2
(c

Address combinations are shown below. The same address for both additional axis and the No.
ht

2 miscellaneous functions cannot be used.


ig
yr

Additional axis
op

A B C
No. 2 miscellaneous functions
C

A × ! !
B ! × !
C ! ! ×

Note: When A has been designated as the No. 2 miscellaneous function address, linear
angle commands cannot be used.

8-2 E
Serial No. 269443

SPINDLE FUNCTIONS 9
9 SPINDLE FUNCTIONS

9-1 Spindle Function (S5-Digit Analog)


When the S5-digit function is added, this function must be set using the numerical command of
five digits preceding an S code (0 to 99999) and for other case, two digits preceding by an S
code is used.
S command binary outputs must be selected at this time.
By designating a 5-digit number following the S code, this function enables the appropriate gear
signals, voltages corresponding to the commanded spindle speed (min–1) and start signals to be
output.

.d
Processing and completion sequences are required for all S commands.

ve
The analog signal specifications are given below.

s er
- Output voltage ......................................................... 0 to 10V or –8 to +8V

re
ts
- Resolution................................................................ 1/4096 (2 to the power of –12)

gh
- Load conditions ....................................................... 10 kiloohms

ri
ll
- Output impedance ................................................... 220 ohms

.A
If the parameters for up to 4 gear range steps are set in advance, the gear range corresponding

N
O
to the S command will be selected by the NC unit and the gear signal will be output. The analog

TI
voltage is calculated in accordance with the input gear signal.
43

A
R
94

- Parameters corresponding to individual gears ...... Limit speed, maximum speed, gear shift
PO
26

speed and maximum speed during tapping.


R
o.

- Parameters corresponding to all gears ................. Orient speed, minimum speed


N

C
al

9-2 Constant Surface Speed Control ON/OFF: G96/G97


ri

ZA
Se

A
IM

1. Function and purpose


K

This function controls automatically the spindle speed as the coordinates are changed during
ZA

cutting in diametral direction so as to execute cutting by keeping constant the relative speed
A

between tool tip and workpiece.


M
YA

2. Programming format
3
01

G96 Ss Pp Rr; ..... Constant surface speed control ON


)2

s: Surface speed
(c

p: Axis for constant surface speed control


ht

r: Spindle for constant surface speed control


ig
yr

G97; ..................... Constant surface speed control OFF


op
C

3. Detailed description
1. Axis for constant surface speed control is to be set by address P.
P1: First axis
P2: Second axis
X-axis (the first axis) is automatically selected if argument P is omitted.

9-1
Serial No. 269443

9 SPINDLE FUNCTIONS

Spindle for constant surface speed control is to be set by address R.


R1: Turning spindle (see the figure below)
R2: Turning spindle (see the figure below)

Turret

Turning spindle 1 R1 R2 Turning spindle 2

. d
ve
R2 R1

s er
re
D740PB0072

ts
gh
The default value is “R1” (automatically set if argument R is omitted).

ri
ll
2. Control change program and actual movement

.A
G96 G01 X50. Z100. S200; Spindle speed is controlled for a surface speed of

N
O
M 200 m/min.

TI
43

G97 G01 X50. Z100. F300 S500; Spindle speed is controlled for 500 min–1.
A
R
94

M
PO
26

M02; The initial modal state will be resumed.


R
o.

O
N

4. Remarks
al

K
ri

ZA

1. The initial modal state (G96 or G97) can be selecyed by parameter F93 bit 0.
Se

F93 bit 0 = 0: G97 (Constant surface speed control OFF)


IM

= 1: G96 (Constant surface speed control ON)


K
ZA

2. The function is not effective for blocks of rapid motion (G00).


The spindle speed calculated for the surface speed at the ending point is applied to the
A
M

entire motion of a block of G00.


YA

3. The last value of S in the control mode of G96 is stored during cancellation of the control
3

(G97) and automatically made valid upon resumption of the control mode (G96).
01
)2

Example: G96 S50; 50 m/min or 50 ft/min


(c

G97 S1000; 1000 min–1


ht

G96 X3000; 50 m/min or 50 ft/min


ig
yr

4. The constant surface speed control is effective even during machine lock.
op

5. Cancellation of the control mode (G96) by a command of G97 without specification of S


C

(revs/min) retains the spindle speed which has resulted at the end of the last spindle control
in the G96 mode.
Example: G97 S800; 800 min–1
G96 S100; 100 m/min or 100 ft/min
G97; x min–1
The speed x denotes the spindle speed of G96 mode at the end of the pre-
ceding block.
6. The constant surface speed control does not apply to the milling spindle.

9-2
Serial No. 269443

SPINDLE FUNCTIONS 9
9-3 Spindle Speed Range Setting: G50

1. Function and purpose


The code G50 can be used to set the maximum and minimum spindle speeds at addresses S
and Q, respectively.

2. Programming format
G50 Ss Qq Rr;
s: Maximum spindle speed
q: Minimum spindle speed

.
r: Spindle for speed limitation

d
ve
er
3. Detailed description

s
re
1. For gear change between the spindle and spindle motor, four steps of gear range can be set

ts
by the related parameters in steps of 1 min–1. In range defined by two ways, parameter

gh
setting and G50 SsQq setting, the smaller data will be used for the upper limit and the larger

ri
data for the lower limit.

ll
.A
2. Spindle for speed clamping is to be set by address R.

N
O
R1: Turning spindle (see the figure below)

TI
R2: Turning spindle (see the figure below)
43

R3: Milling spindle


A
R
94

PO
26

R
o.

Turret
O
N

C
al

K
ri

ZA

Turning spindle 1 R1 R2 Turning spindle 2


Se

A
IM
K
ZA
A

R2 R1
M
YA

D740PB0072
3
01
)2

Note: The default value is “R1” (automatically set if argument R is omitted). Give another
(c

command of G50 with argument R2 (G50S_R2) as required to prevent the speed of


ht

turning spindle 2 from being raised up to the highest value in accordance with the
ig

machine specification concerned.


yr
op
C

9-3
9

C
op
yr
ig
- NOTE -

ht
SPINDLE FUNCTIONS

(c
)2
01
3
YA
M
A Se
ZA
K ri
al
IM
N
A o.
ZA 26
K

9-4 E
94
C
O 43
Serial No. 269443

R
PO
R
A
TI
O
N
.A
ll
ri
gh
ts
re
ser
ve
d.
Serial No. 269443

TOOL FUNCTIONS 10
10 TOOL FUNCTIONS

10-1 Tool Function (4-Digit T-Code)


Tool function, also referred to as T-code function, is used to designate the tool number and offset
number. Of a four-digit integer at address T, upper and lower two digits are respectively used to
specify the tool number and offset number.
Use bit 4 of parameter F162 to select the number of digits for the tool function (0 or 1 for 4- or 6-
digit T-code).
T !!"".◇◇ ;
Tool ID code

.
d
Tool offset number

ve
er
Tool number

s
re
Use two digits after the decimal point as follows to designate the tool ID code with reference to

ts
the settings on the TOOL DATA display:

gh
<Normal tools>

ri
ll
ID code w/o A B C D E F G H J K L M

.A
◇◇

N
00 01 02 03 04 05 06 07 08 09 11 12 13

O
ID code N P Q R S T U V W X Y Z

TI
43

◇◇ 14 15 16 17 18 19 A 21 22 23 24 25 26
R
94

PO

<Heavy tools>
26

R
o.

ID code A B C D E F G H J K L M
O
N

◇◇ 61 62 63 64 65 66 67 68 69 71 72 73
al

K
ri

ZA

ID code N P Q R S T U V W X Y Z
Se

◇◇
A

74 75 76 77 78 79 81 82 83 84 85 86
IM

Only one T-code can be included in a block, and the available range of T-codes depends on the
K
ZA

machine specifications. For further details, especially on how to number the actual tools to be
A

used, refer to the operating manual of the relevant machine.


M

The T-code can be given with any other commands in one block, and the T-code given together
YA

with an axis motion command is executed, depending upon the machine specifications, in one of
3
01

the following two timings:


)2

- The T-code is not executed till completion of the motion command, or


(c

- The T-code is executed simultaneously with the motion command.


ht
ig
yr
op
C

10-1
Serial No. 269443

10 TOOL FUNCTIONS

10-2 Tool Function (6-Digit T-Code)


This function is also used to designate the tool number and offset number. Of a six-digit integer
at address T, upper and lower three digits are respectively used to specify the tool number and
offset number. See the above description of the 4-digit T-code for the meaning of the decimal
fractions.
The available range of T-codes depends on the machine specifications. For further details, refer
to the operating manual of the relevant machine.
Only one T-code can be included in a block.
Use bit 4 of parameter F162 to select the number of digits for the tool function (0 or 1 for 4- or 6-

d .
digit T-code).

ve
T !!!""".◇◇ ;

ser
Tool ID code

re
Tool offset number

ts
gh
Tool number

ri
ll
10-3 Tool Function (8-Digit T-Code)

.A
N
This function allows you to select a tool number (from 0 to 99999999) using eight-digit command

O
data preceded by address T. Only one T-code can be included in a block.

TI
43

A
Set bit 4 of parameter F94 to 0 to select the group-number designation for T-code funciton, or set
R
94

PO

this bit to 1 to select the tool-number designation.


26

R
o.

O
N

C
al

K
ri

ZA
Se

A
IM
K
ZA
A
M
YA
3
01
)2
(c
ht
ig
yr
op
C

10-2 E
Serial No. 269443

TOOL OFFSET FUNCTIONS 11


11 TOOL OFFSET FUNCTIONS

11-1 Tool Offset

1. Outline
Tool offset must be set with the lower two or three digits of a four-digit or six-digit number
following address T (where the higher two or three digits are used to designate the tool number).
Whether the offset number is set by lower two or three digits is selected by parameter F162 bit 4.
One set of T command can be included in the same block.
The tool offset amount differs according to the combination of G53.5/G52.5 (MAZATROL

.
coordinate system selection/cancel) and parameter F111 bit 5 (MAZATROL tool wear compen-

d
ve
sation data valid/invalid) as in the following table.

s er
re
Program G53.5 (MAZATROL coordinate system) G52.5 (Cancellation of MAZATROL coord. sys.)

ts
T001000 T001001 T001000 T001001

gh
Parameter [1] [2] [1] [2]’ [1] [2] [1] [2]’

ri
[1] - Tool of TNo. 1 [1] - Tool of TNo. 1 [1] - Tool of TNo. 1 [1] - Tool of TNo. 1

ll
indexed indexed indexed indexed

.A
- TOOL SET data (on - TOOL SET and

N
F111 bit 5 = 1 the TOOL DATA WEAR COMP. data

O
display) of TNo. 1 (on the TOOL

TI
(Validation of
43

MAZATROL tool validated DATA display) of


A
TNo. 1 validated
R
94

wear comp. data)


PO
26

[2] - Tool offset cancel [2]’ - Data of No. 1 on the [2] - Tool offset cancel [2]’ - Data of No. 1 on
TOOL OFFSET dis- the TOOL OFFSET
R
o.

play validated display validated


N

[1] - Tool of TNo. 1


al

indexed
ri

ZA
Se

F111 bit 5 = 0 - TOOL SET data (on


A

the TOOL DATA


IM

(Invalidation of
See above. display) of TNo. 1 See above. See above.
MAZATROL tool
K

validated
wear comp. data)
ZA

[2]’ - Data of No. 1 on the


A

TOOL OFFSET dis-


M

play validated
YA
3
01
)2
(c
ht
ig
yr
op
C

11-1
Serial No. 269443

11 TOOL OFFSET FUNCTIONS

2. Tool offset start


There are two ways to execute tool offset and these can be selected by parameter K95 bit 2:
executing offset when the T command is executed and executing offset not in T command
execution but in the block containing move commands.

A. Offset in T command execution


N1 T001001;
N2 X100.Z200.;
N2
Tool offset and tool nose wear compen-
Toll path after
sation are executed simultaneously. N1
Offset offset
amount

d .
ve
Programmed path

ers
re
TEP054

ts
gh
Note 1: The movement when offsetting with the T command is rapid feed in a G00 modal and

ri
cutting feed with other modals.

ll
.A
Note 2: When performing offset in T command execution, the path is made by linear

N
interpolation in an arc modal.

O
TI
Note 3: When performing offset in T command execution, offset will not function until the arrival
43

A
of any command G except those listed below when the T command is included in the
R
94

PO

same block as those commands G.


26

R
o.

G04: Dwell
O
N

G10: Data setting


al

G50: Coordinate system setting


ri

ZA
Se

B. Offset with move command


IM

N1 T001001;
K

N2
ZA

N2 X100.Z200.;
Tool path after offset
A

Tool offset is executed simultaneously.


M
YA

Offset amount
3
01

N1 Programmed path
)2
(c

TEP055
ht
ig

Note: When performing offset with a move command, offset is applied if the offset amount is
yr

lower than the parameter value of “tolerance for radial value difference at starting and
op

ending points in arc command” when offset is performed for the first time with an arc
C

command. If the amount is higher, a program error will occur. (This also applies when
the arc command and T command are in the same block for offsetting with T
command.)

11-2
Serial No. 269443

TOOL OFFSET FUNCTIONS 11

11-2 Tool Position Offset

1. Tool position offset amount setting


This function offsets tool position with respect to the program reference position. This position
may generally be set to either the center position of the turret or the tool nose position of the
reference tool.

A. Setting to the center position of turret

.
d
Reference position

ve
(reference point)

er
s
X-axis tool position

re
offset amount

ts
gh
X

ri
ll
.A
Z-axis tool position
offset amount Z

N
O
TEP056

TI
43

A
R
B. Setting to the tool nose position of reference tool
94

PO
26

R
o.

Reference tool
N

C
al

K
ri

ZA
Se

Reference tool
A

Tool used for machining


IM

X-axis tool position


K

offset amount X
ZA
A
M

Z-axis tool position


Z
YA

offset amount
3

TEP057
01
)2

2. Tool position offset number change


(c
ht

When tool number is changed, the tool position offset for the new tool number is added to the
ig

movement amount in the machining program.


yr
op

N1 T001001;
Tool offset path
C

N2 G1 X10.0 Z10.0 F100; N4


Offset
N3 G1 X13.0 Z15.0 F20.0; amount
N4 T002002; N2 (new)
N3
N5 G1 X13.0 Z20.0 F25.0;
N5
In this example, the tool position is offset
with the tool number and offset is performed Offset
amount
in the block including the move command. (old) Programmed path

TEP058

11-3
Serial No. 269443

11 TOOL OFFSET FUNCTIONS

3. Tool position offset cancel

A. When an offset number of zero is set


Offset is cancelled when 0 as the tool position offset number preceded by T-code is executed.
N1 X10.0 Z10.0 F10;
Tool offset path
N2 T001000; N2

N3 G1 X10.0 Z20.0; N1
N3
In this case, offset is performed by the block
with the move command.
Offset
amount

d .
Programmed path

ve
er
TEP059

s
re
ts
B. When 0 is set as the offset amount

gh
Offset is cancelled when 0 is set as the offset amount of the tool position offset number.

ri
ll
N1 G1 X10.0 Z10.0 F10;

.A
Tool offset path
N2 T001001; N2

N
N3 G1 X10.0 Z20.0;

O
N1 N3

TI
In this case, offset is performed by the block
43

A
R
94

with the move command.


PO
26

Offset
amount
R
o.

Programmed path
O
N

C
al

TEP060
ri

ZA
Se

4. Remarks
IM

- When G28, G29 or G30 is commanded, the movement is performed to the position where
K
ZA

offset is cancelled. But as offset amount remains stored in the memory, the positioning for the
succeeding move command is executed with the offset operation.
A
M

- The tool position offset is cleared by resetting and by emergency stop.


YA
3
01
)2
(c
ht
ig
yr
op
C

11-4
Serial No. 269443

TOOL OFFSET FUNCTIONS 11

11-3 Nose Radius/Tool Radius Compensation: G40, G41, G42

11-3-1 Outline

1. Function and purpose


The tool nose is generally rounded and so a hypothetical tool nose point is treated as the tool
nose for programming. With such a programming, an error caused by the tool nose rounding
arises during taper turning or circular interpolation between the actually programmed shape and
the cutting shape. Nose radius or tool radius compensation is a function for automatically
calculating and offsetting this error by setting the nose radius or tool radius value.

.
d
The command codes enable the offset direction to be fixed or automatically identified.

ve
s er
re
ts
gh
ri
Tool nose center path on programmed

ll
machining shape

.A
Tool nose center

N
O
TI
43

Actual machining shape A


R
94

PO
26

Machining shape
R

Hypothetical tool nose point Nose radius


o.

commanded in program
O
N

TEP061
C
al

K
ri

ZA

2. Programming format
Se

A
IM

Code Function Programming format


G40 Nose radius/Tool radius compensation OFF G40 (Xx/Uu Zz/Ww Ii Kk) ;
K
ZA

G41 Nose radius/Tool radius compensation (to the left) ON G41 (Xx/Uu Zz/Ww) ;
A

G42 Nose radius/Tool radius compensation (to the right) ON G42 (Xx/Uu Zz/Ww) ;
M
YA
3
01
)2
(c
ht
ig
yr
op
C

11-5
Serial No. 269443

11 TOOL OFFSET FUNCTIONS

3. Detailed description
1. G40 serves to cancel the tool nose radius compensation mode.
2. Tool nose radius compensation function prereads the data in the following two move
command blocks (up to 5 blocks when there are no move function commands) and controls
the tool nose radius center path by the intersection point calculation method so that it is
offset from the programmed path by an amount equivalent to the nose radius.

N3

d.
ve
er
Prior to the N1 block execution,
N2

s
the next move command block

re
is preread and the coordinates
at the intersection point are

ts
N1 calculated.

gh
ri
ll
.A
TEP063

N
O
TI
In the above figure, “r” is the tool nose radius compensation amount (nose radius).
43

3.
A
The tool nose radius compensation amount corresponds to the tool length number and it
R
94

PO

should be preset with the tool nose point.


26

4. If four or more blocks without move commands exist in five continuous blocks, overcutting or
o.

O
N

undercutting will result. However, blocks in which optional block skip is valid are ignored.
al

5. Tool nose radius compensation function is also valid for fixed cycles (G77 to G79) and for
ri

ZA
Se

roughing cycles (G70, G71, G72 and G73).


A
IM

However, in the roughing cycles, the tool nose radius compensation function applied for
finish shape is cancelled and upon completion of the roughing, NC unit will re-enter the
K
ZA

compensation mode.
A

6. With threading commands, compensation is temporarily cancelled in one block before.


M
YA

7. The compensation plane, move axes and next advance direction vector follow the plane
selection command designated by G17, G18 or G19.
3
01

G17............... XY-plane X, Y, I, J
)2

G18............... ZX-plane Z, X, K, I
(c

G19............... YZ-plane Y, Z, J, K
ht
ig
yr
op
C

11-6
Serial No. 269443

TOOL OFFSET FUNCTIONS 11


11-3-2 Tool nose point and compensation directions

1. Tool nose point


Since the tool nose is generally rounded, the programmed tool nose position is aligned with point
P shown in the examples of the figures below.
For tool nose radius compensation, select one point among those in the figures below for each
tool length number and preset. (Selection from 0 to 9 in the G41/G42 mode.)

2 6 1

4 3 8
0, 9

d .
7 5 P 5 7

ve
+X P

er
Tool nose point 1 2 6
3 4

s
0 or 9

re
8

ts
Correspondence between hypothetical

gh
tool nose numbers and tool nose points
+Z

ri
TEP064

ll
.A
2. Tool nose point and compensation operation

N
O
TI
A. When the nose radius center has been aligned with the machining start position
43

A
R
94

PO
26

+X Machining completion position


R

Machining
o.

Nose radius center path with


O

G4 start position
N

nose radius compensation


C
al

K
ri

G42
ZA
Se

r
A
IM
K
ZA

Machining shape without nose


+Z
A

radius compensation
M

Programmed path or machining shape


YA

with nose radius compensation


TEP065
3
01
)2

B. When the tool nose point has been aligned with the machining start position
(c
ht

Machining completion position Machining


ig

+X start position
yr
op

G40
Machining shape without nose
C

radius compensation

G42 or G46
Tool nose point path with nose
radius compensation
+Z

Programmed path or machining shape


with nose radius compensation TEP066

11-7
Serial No. 269443

11 TOOL OFFSET FUNCTIONS

11-3-3 Operations of nose radius/tool radius compensation

1. Cancellation of nose radius/tool radius compensation


Nose radius/Tool radius compensation is automatically cancelled in the following cases:
- After power has been turned on
- After the reset key on the NC operation panel has been pressed
- After M02 or M30 has been executed (if these two codes have a reset function)
- After G40 (tool nose radius compensation cancellation command) has been executed
- After tool number 0 has been selected (T00 has been executed)
In the compensation cancellation mode, the offset vector becomes zero and the tool nose point

. d
path agrees with the programmed path.

ve
er
Programs containing the tool nose radius compensation function must be terminated during the

s
compensation cancellation mode.

re
ts
2. Startup of nose radius/tool radius compensation

gh
ri
Nose radius/Tool radius compensation will begin when all the following conditions are met:

ll
.A
- Command G41 or G42 has been executed.

N
- The command used with the offsetting command is a move command other than those used for

O
arc interpolation.

TI
43

A
Offsetting will be performed only when reading of two through five blocks in succession is
R
94

completed, irrespective of whether the continuous operation or the single-block operation mode
PO
26

is used. (Two blocks are preread if move command is present and five blocks are preread if such
R
o.

command is not present.)


N

During offsetting, maximal five blocks are preread and then calculation for offsetting is per-
al

K
ri

formed.
ZA
Se

Some G-codes may not allow prereading. If startup compensation vector cannot be provided
A
IM

owing to inability of prereading, program error will occur.


(Example: G41 T0101; G28 X10. Z20. ; L)
K
ZA

Prereading is not allowed for the following G-codes:


A

G10, G27, G28, G29, G30, G30.1, G36, G37


M
YA

If error is caused because of the reason above, provide serveral blocks including move
commands after G41, G42 or T command.
3
01
)2
(c

T_; S_; G00_; G41_; G01_; G02_;


ht

Machining program
ig
yr

Start of prereading two


op

to five blocks
G01_; G02_;
C

Preread buffer T_; S_; G00_; G41_; G01_; G02_;

Blocks executed
T_; S_; G00_; G41_; G01_; G02_;
TEP068

11-8
Serial No. 269443

TOOL OFFSET FUNCTIONS 11


3. Start operation for nose radius/tool radius compensation
In the following figures, “s” denotes the single block stop point.

A. For the corner interior

Linear → Linear Linear → Arc

θ Programmed path θ

r Programmed path
r = Tool nose radius

s Tool nose radius s

.
center path

d
ve
G42 G42

s er
re
Starting point Starting point Tool nose radius

ts
Arc center
center path

gh
TEP069

ri
ll
For the corner exterior (obtuse angle) (90° ≤ θ < 180°)

.A
B.

N
Linear → Linear Linear → arc

O
TI
43

Point of intersection A s Point of intersection


R
94

s
PO

Tool nose
26

Tool nose radius center path


r r radius center
R

r
o.

r path
O
N

θ Programmed path θ
al

G41 G41
ri

ZA
Se

A
IM

Starting point Starting point


K

Arc center Programmed


ZA

path
TEP070
A
M

For the corner exterior (acute angle) ( θ < 90°)


YA

C.
3

Linear → Linear Linear → arc


01
)2

s Arc center
(c

Tool nose radius center path


r
ht
ig

s
θ Programmed path
yr

r
r
Programmed path
op
C

G41
r θ
Tool nose radius
center path
Starting point G41

Starting point TEP071

Note: When there is no axis move command in the same block, compensation is performed
perpendicularly to the movement direction of the next block direction.

11-9
Serial No. 269443

11 TOOL OFFSET FUNCTIONS

4. Movement in compensation mode


Compensation is valid both for positioning and for interpolation commands such as arc and linear
interpolation.
Even if the same compensation command G41/G42 is set in a nose radius/tool radius compen-
sation mode (G41/G42), the command will be ignored.
When four or more blocks not including move command are commanded in the compensation
mode, overcutting or undercutting will result.
When the M00 command has been set during nose R/tool radius compensation, pre-reading is
prohibited.

d.
ve
ser
re
ts
gh
ri
ll
.A
N
O
TI
43

A
R
94

PO
26

R
o.

O
N

C
al

K
ri

ZA
Se

A
IM
K
ZA
A
M
YA
3
01
)2
(c
ht
ig
yr
op
C

11-10
Serial No. 269443

TOOL OFFSET FUNCTIONS 11


A. For the corner exterior

Linear → linear (90° ≤ θ < 180°) Linear → linear (0° < θ < 90°)

Tool nose radius center path


r
θ
s
θ Programmed path
Programmed path r

Point of Tool nose radius center path


intersection
Linear → Arc (0° < θ < 90°)

d .
ve
Linear → arc (90° ≤ θ < 180°) Tool nose radius center path

er
r
θ

s
re
s
Programmed path
θ

ts
Programmed path r
r

gh
r

ri
ll
s Tool nose radius center path

.A
N
Arc center

O
TI
Arc center
43

A
R
94

PO
26

Arc → Linear (0° < θ < 90°)


o.

Arc → Linear (90° ≤ θ < 180°)


O
N

Programmed path Arc center


al

Programmed path
ri

ZA
Se

θ
IM

r θ
K

r
ZA

Arc center
Tool nose radius r
A

center path Tool nose radius r


M

center path
YA

s s
Point of
3

intersection
01

Arc → arc (90° ≤ θ < 180°) Arc → arc (0° < θ < 90°)
)2

Arc center
(c

Programmed path
ht
ig

Programmed path
yr

θ θ
op
C

Tool nose radius


r r r
center path
r
Tool nose radius
s center path
Point of
intersection s
Arc center Arc center

Arc center TEP072

11-11
Serial No. 269443

11 TOOL OFFSET FUNCTIONS

B. For the corner interior

Linear → linear (obtuse angle) Linear → linear (obtuse angle)

θ
θ
Programmed path Programmed path
r
r
s s
Tool nose radius center path r Tool nose radius
Point of
intersection center path

d .
ve
er
Linear → arc (obtuse angle) Linear → arc (obtuse angle)

s
re
ts
θ
θ

gh
ri
Programmed path Arc center
Programmed path

ll
r

.A
s s
Tool nose radius

N
Point of Tool nose radius center path
center path

O
intersection Point of r

TI
r
intersection
43

A
R
94

Arc center
PO
26

Arc → linear (obtuse angle)


R
o.

Arc → linear (obtuse angle)


N

C
al

θ
ri

ZA

Arc center
θ
Se

Programmed path
A

Programmed path
IM

s
K

s Tool nose radius center path


ZA

r Point of Tool nose radius


Point of
A

intersection r center path


intersection
M
YA

Arc center
3

Arc → arc (obtuse angle)


01

Point of Arc → arc (acute angle)


)2

intersection
(c

Tool nose radius center path


s
ht

θ Arc center
ig

r
yr

θ
op
C

Programmed
path Arc center
Arc center Arc center
s

Point of Tool nose radius


intersection center path
r
Programmed path
TEP073

11-12
Serial No. 269443

TOOL OFFSET FUNCTIONS 11


C. For the arc on which the ending point is not found
If the error applied after compensation is within the “arc error” set by parameter, the area from
the arc starting point to the ending point is interpolated as a spiral arc.

Virtual circle Tool nose radius


center path

Programmed path
Ending point of arc

.
d
ve
s

er
r

s
re
R

ts
Arc center

gh
TEP074

ri
ll
.A
D. In cases that no inner intersection point exist inside the corner

N
O
In cases such as those shown in the figure below, there may or may not be an intersection point

TI
of arcs A and B, depending on the particular offset data. In latter cases, a program error occurs
43

A
and the tool stops at the ending point of the previous block.
R
94

PO
26

R
o.

Stop with program error


N

Tool nose radius


al

center path
K
ri

ZA

Center of arc A
Se

r
A
IM

r
K

Programmed path
ZA

A B Tool path can be normally


A

drawn through the calculated


M

intersection point.
YA

Line of intersection points between arcs A and B


3
01

TEP075
)2
(c

5. Cancellation of nose radius/tool radius compensation


ht

If either of the following conditions is met in the nose radius/tool radius compensation mode, the
ig
yr

compensation will be cancelled.


op

- Command G40 has been executed.


C

- Tool number T00 has been executed.


However, the move command executed must be one other than those used for arc interpolation.
A program error will occur if an attempt is made to cancel compensation using an arc command.
The cancel mode is established once the compensation cancel command has been read, five-
blocks prereading is suspended and one-block pre-reading is made operational.

11-13
Serial No. 269443

11 TOOL OFFSET FUNCTIONS

6. Cancel operation for nose radius/tool radius compensation

A. For the corner interior

Linear → Linear Arc → Linear

θ Programmed path θ

r Programmed path
r = Tool nose radius

s Tool nose radius center path s

d .
ve
G40 G40 Tool nose

er
radius center
path

s
re
Ending point Ending point
Arc center

ts
gh
TEP076

ri
ll
B. For the corner exterior (obtuse angle)

.A
N
O
Linear → linear Arc → linear

TI
43

A
R
Tool nose radius center path
94

s s
PO

Point of intersection
26

Tool nose radius


r r center path
R
o.

r Programmed path r
O
N

θ θ
al

G40
K

G40
ri

ZA
Se

A
IM

Ending point Ending point


K

Arc center Programmed


ZA

path
TEP077
A
M
YA

C. For the corner exteiror (acute angle)


3

Linear → linear Arc → linear


01

Tool nose radius


)2

Arc center
s center path
(c

r
ht
ig

Programmed path s
yr

r θ Programmed path
op

r
C

G40
r θ
Tool nose radius
center path
Ending point G40

Ending point TEP078

11-14
Serial No. 269443

TOOL OFFSET FUNCTIONS 11


11-3-4 Other operations during nose radius/tool radius compensation

1. Changing the compensation direction during nose radius/tool radius compensation


The compensation direction is determined by the nose radius/tool radius compensation
commands (G41, G42).

G-code Compensation direction


G41 Left-hand compensation
G42 Right-hand compensation

The compensation direction can be changed by changing the compensation command without

d .
commanding compensation cancel in the compensation mode. However, no change is possible

ve
in the compensation start block and the following block.

s er
re
Linear → Linear

ts
gh
Tool nose radius center path

ri
ll
r

.A
Programmed path r Point of intersection

N
O
This figure shows an

TI
G41 G41 G42 example in which no points
43

A of intersection are present


R
94

during offset direction


PO
26

r change.
r
R
o.

O
N

C
al

K
ri

ZA
Se

r
Linear ← → Arc
A
IM

r
r
K
ZA

G41 G42 G41 G41 G42


A
M

r
YA

Programmed path
3
01

r r
)2

Tool nose radius center path


(c
ht

Arc → Arc Tool nose radius center path


Arc center
G42
ig
yr
op

r
C

Programmed G41 G42


path
G41

G41 G41 G42 Arc center


TEP079

11-15
Serial No. 269443

11 TOOL OFFSET FUNCTIONS

Linear return

G41
Tool nose radius center path
G42
r

Programmed path

.d
ve
TEP080

s er
re
In the following cases, it is possible that the arc may exceed 360°.

ts
- Compensation direction is changed by the selection of G41 or G42.

gh
- I, J, K are commanded with G40.

ri
ll
In such cases, compensation is provided as shown above and a section will be left uncut.

.A
N
O
Arc of 360° or more due to compensation

TI
G42
43

A
R
94

PO
26

Programmed
o.

path
N

Tool nose radius


al

center path
ri

ZA
Se

G41
IM

G42
K
ZA

Section left uncut


TEP081
A
M
YA

2. Nose radius/Tool radius compensation by G41/G42 for closed path


3

a) Operation for G42→G41 b) Operation for G42→G41


01
)2

G01 (G42)
(c

Left G01 (G41)


ht
ig

G41
(G42)
yr

given G41
G01
op

G01
C

G01

G01
(G41)
(G42)
Right
TEP084’

11-16
Serial No. 269443

TOOL OFFSET FUNCTIONS 11


3. Command for temporarily canceling offset vectors
When the following command is set in the compensation mode, the current offset vectors are lost
temporarily and then the NC unit will re-enter the compensation mode.
In this case, the compensation is not cancelled, and the program control will be transferred from
one intersection point vector directly to the vectorless point, that is, to the programmed point.
Control will also be transferred directly to the next intersection point when the offset mode is re-
entered.

A. Reference point return command

.
s

d
s

ve
er
Z

s
re
s

ts
gh
ri
ll
.A
N
Intermediate point

O
TI
N5 N6 N7 N8
43

A
R
94

PO
26

(G41) M
R
o.

N5 G01 U+30. W+60.;


N

N6 G28 U-40. W+50.; ← Temporarily vector 0 as compensation at intermediate


al

N7 U-60. W+30.; point (Reference point when the intermediate point is


ri

ZA

N8 U+40. W+70.; not available)


Se

M
IM

TEP083
K

Note: The offset vectors do not change with the coordinate system setting command G52.
ZA
A

B. G32 thread cutting command


M
YA

Tool nose radius compensation does not apply to the G32 block.
3
01
)2

G32
(c
ht

Tool nose radius


ig

center path
yr

Point of intersection
op

r
C

Programmed path

TEP084

11-17
Serial No. 269443

11 TOOL OFFSET FUNCTIONS

C. Compound fixed cycles


A compound fixed cycle I command (G70, G71, G72, G73) is executed with respect to the
finishing contour compensated for nose radius with the compensation being temporarily
canceled, and upon completion of the cycle operation, the compensation mode is retrieved.

4. Blocks that do not include move command


The following blocks are referred to as those which do not include movement.
M03;.................................. M command
S12;.................................. S command
T001001; ......................... T command
G04X500; ......................... Dwell

.
Move-free

d
ve
G10P01R50;..................... Offset stroke setting

er
G50X600.Z500.;............ Coordinate system setting

s
re
Y40.; ............................... Movement not on offset plane

ts
G00;.................................. G-code only

gh
U0;.................................... Moving stroke 0 Movement stroke is zero

ri
ll
A. When a block that does not include movement is set during the start of compensation

.A
N
Vertical compensation will be performed on the next move block.

O
TI
43

N1 U60.W30.T0101; A
R
94

N2 G41; Move-free block N2


PO
26

N3 U-50.W20.;
R

N4 U-20.W50.; N3
o.

O
N

C
al

N1
ri

ZA

N4
Se

X
A
IM
K
ZA

Z
A

TEP085
M
YA

Compensation vectors, however, will not be generated if four or more blocks that do not include
3

move commands appear in succession.


01
)2

N1 U60.W30.T0101;
(c

N2 G41;
ht

N2 to N6
N3 G4 X1000;
ig

Move-free block
yr

N4 F100;
N7
op

N5 S500;
C

N6 M3; (Point of intersection)


N1
N7 U-50.W20.;
X N8
N8 U-20.W50.;

TEP086

11-18
Serial No. 269443

TOOL OFFSET FUNCTIONS 11

N1 T0101; N3 to N6
N2 G41 U60.W30.;
N3 G4 X1000; N7
N4 F100; Move-free block
N5 S500; N2 (Point of intersection)
N6 M3; N8
X
N7 U-50.W20.;
N8 U-20.W50.;

. d
ve
TEP086

s er
re
B. When a block that does not include movement is set during the compensation mode

ts
gh
Usual intersection point vectors will be generated unless four or more blocks that do not include

ri
movement appear in succession.

ll
.A
N
O
N6 U200.W100.;

TI
Move-free block
43

N7 G04 X1000; N7 N8
N8 W200.;
A
R
94

PO
26

R
o.

N6 N8
O
N

C
al

Block N7 is executed
ri

ZA

N6 here
Se

A
IM
K

TEP087
ZA
A

Vertical compensation vectors will be generated at the end point of preceding block if four or
M

more blocks that do not include movement appear in succession.


YA
3
01
)2

N6 U200.W100.;
N11
N7 G4 X1000;
(c

N8 F100;
ht

Move-free block
N9 S500;
ig
yr

N10 M4; N6 N11


op

N11 W100.;
C

N7 to N10
In this case, excessive cutting may occur. N6

TEP089

11-19
Serial No. 269443

11 TOOL OFFSET FUNCTIONS

C. When a block that does not include movement is set together with compensation
cancellation
Only offset vectors will be cancelled if the block that does not include movement contains G40.

X
N6 U200.W100.;
N7 G40 G04 P1000;
N8 U50.W100.; N8
Z
N7

.d
ve
s er
N6

re
ts
gh
TEP089

ri
ll
.A
5. If I, J and K are set with G40

N
When the last move command of the four blocks which immediately precede the G40 command

O
TI
block is G41 or G42, movement will be handled as if it had been programmed to occur in the
43

A
vectorial direction of I, J, and K from the ending point of that last move command. That is, the
R
94

PO

area up to the intersection point with the virtual tool center path will be interpolated and then
26

compensation will be cancelled. The compensation direction will remain unchanged.


R
o.

O
N

C
al

K
ri

ZA

Virtual tool nose radius center path


Se

(a, b)
A
IM

N2
(i, k)
Tool nose radius
K

center path A
ZA

r
r
A

G41
M

N1
YA

Programmed path
N1 (G41) G1 Z_;
3

N2 G40 Xa Zb li Kk;
01
)2
(c

TEP090
ht

In this case, pay attention that, irrespective of the compensation direction, the coordinates of the
ig
yr

intersection point will be calculated even if wrong vectors are set as shown in the diagram below.
op
C

11-20
Serial No. 269443

TOOL OFFSET FUNCTIONS 11

(a, b)

N2
Tool nose radius
center path
A
G41 r
N1
Programmed path Where I and K in the sample
r program shown above have
wrong signs

(i, k)
Virtual tool nose radius center path

. d
ve
TEP091

s er
Also, pay attention that a vertical vector will be generated on the block before that of G40 if the

re
compensation vector cannot be obtained by intersection point calculation.

ts
gh
ri
(a, b)

ll
.A
G40

N
X Tool nose radius

O
center path
A

TI
G41
43

A r
Programmed path
R
94

PO

Z
26

(i, k) r
R
o.

O
N

Virtual tool nose radius


C

center path
al

K
ri

ZA
Se

TEP092
A
IM

Note: Part of the workpiece will be left uncut if the I/J/K command data in G40 preceded by
K

an arc command generates an arc of more than 360 degrees.


ZA
A

N1 (G42) G01 W200.;


M

Portion left uncut


N2 G03 I150.; r
YA

N3 G40 G1 U-150.W150.I100.K-100.;
3
01
)2

N2
(c

(i, j)
ht
ig

r
N1
yr

Programmed path
r
op

Tool nose radius


G42
C

center path G40


N3
TEP093

11-21
Serial No. 269443

11 TOOL OFFSET FUNCTIONS

6. Corner movement
If multiple offset vectors are generated at connections between move command blocks, the tool
will move linearly between those vectors. This action is referred to as corner movement.
If the multiple vectors do not agree, the tool will move around the corresponding corners (but this
movement belongs to the connection block). During single-block operation, the section of
(Preceding block + Corner movement) is executed as one block and the remaining section of
(Remaining corner movement + Next block) is executed during next movement as another block.

N1

.
Programmed path

d
ve
er
N2

s
re
θ
r

ts
gh
Tool nose radius center path r Arc center

ri
ll
This movement and its feedrate

.A
belong to block N2.
Stopping point in the single block mode

N
O
TEP094

TI
43

A
R
94

11-3-5 Commands G41/G42 and I, J, K designation


PO
26

The compensation direction can be intentionally changed by setting the command G41/G42 and
R
o.

I, J, K in the same block.


N

C
al

1. Programming format
ri

ZA
Se

G18 (Z-X plane) G41/G42 X_ Z_ I_ K_ ;


A
IM

Set a linear interpolation command (G00, G01) as move command.


K
ZA

2. I, K type vector (G18 ZX-plane selection)


A

The new I, K type vector (G18 plane) created by this command is described here. (Similar
M
YA

descriptions apply to I, J vector for the G17 plane and to J, K vector for the G19 plane.)
Being different from the vector on the intersection point of the programmed path, the I, K type
3
01

compensation vector is the vectors equivalent to the offset value, perpendicular to the direction
)2

designated by I, K. The I, K vector can be commanded even in the tool nose radius
(c

compensation mode (G41/G42 mode in the preceding block) and even at the compensation start
ht

(G40 mode in the preceding block).


ig
yr
op
C

11-22
Serial No. 269443

TOOL OFFSET FUNCTIONS 11


A. When I, K is commanded at compensation start:

X (G40)
N110
N120 M
N130
N140 N150 N100 G41 U100.W100.K150.T0101;
Z N110 G04 X1000;
N120 G01 F1000;
D1
N100 N130 S500;
N140 M03;
N150 Z150.;
M

.d
Programmed path

ve
Tool nose radius center path

ser
TEP095

re
ts
When there are no move commands at the compensation start

gh
ri
X

ll
.A
N3

N
Z

O
(G40)

TI
M
43

N2
A N1 G41 K150.T0101;
R
94

PO

N2 U100.W100.;
26

N3 W150.;
R
o.

D1 N1 M
O
N

C
al

K
ri

ZA
Se

TEP096
IM
K

B. When I, K has been commanded in the tool nose radius compensation mode (G18 plane)
ZA
A
M
YA

M
(I, K) (G18 G41)
3

N110 N100 G41 G00 W150.I50.;


01

[2]
N110 G02 W100.K50.;
)2

N100 D1
N120 G00 W150.;
(c

[1] (N120) M
X
ht
ig
yr

[1] I,K type vector


op

Z [2] Intersection point calculation


C

Programmed path type vector


Tool nose radius center path
Path for intersection point calculation
TEP097

11-23
Serial No. 269443

11 TOOL OFFSET FUNCTIONS

When I, K has been commanded in a block without move command

N3 N4
Z
N2 N5
(I, K)

N1 G41 T0101 G01 F1000;


N2 U100.W100.;
N1
N3 G41 K50.;
D1

.
N4 W150.;

d
ve
N5 G40;

er
TEP098

s
re
ts
3. Direction of offset vectors

gh
ri
A. In G41 mode

ll
.A
Direction produced by rotating the direction commanded by I, K vector through 90° to the left as

N
seen from the forward direction of the Y-axis (third axis) to the zero point.

O
TI
43

Example 1: With K100.


A Example 2: With K–100.
R
94

PO
26

I, K direction
Offset vector direction (0, –100)
R
o.

O
N

C
al

K
ri

ZA
Se

A
IM
K
ZA

Offset vector direction


I, K direction (0, 100)
A

TEP099
M
YA

B. In G42 mode
3
01

Direction produced by rotating the direction commanded by I, K vector through 90° to the right as
)2

seen from the forward direction of the Y-axis (third axis) to the zero point
(c
ht
ig

Example 1: With K100. Example 2: With K–100.


yr

I, K direction Offset vector direction


op

(0, 100)
C

Offset vector direction (0, –100)


I, K direction
TEP100

11-24
Serial No. 269443

TOOL OFFSET FUNCTIONS 11


4. Selection of offset modal
The G41 or G42 modal can be selected at any time.

N1 G28 X0Z0;
X N2 G41 T0101 F1000;
N3 G01 U100.W100.;
N4 G42 W100.I-100.K100.T0102;
Z N5 U-100.W100.;
(I, K) N6 G40;
N7 M02;
N4 %
N3 D2

. d
ve
N2
D1 N5

er
N6

s
re
TEP101

ts
gh
ri
5. Offset stroke of offset vectors

ll
.A
The offset stroke is determined by the offset number (modal) in the block including the I, K

N
designation.

O
TI
43

A
R
94

PO
26

T1 (A)
o.

T1
O

(G41 T0101)
N

(I, K)
M
al

N100
K

X N100 G41 W150.K50.;


ri

ZA

N110
Se

N110 U-100.W100.;
A

M
IM

Z
K
ZA
A
M

TEP102
YA

Vector (A) is the offset stroke entered in tool offset number modal 1 in the N100 block.
3
01
)2
(c
ht

(B) T2
T1
ig
yr

(I, K)
op

X N200
(G41 T0101)
C

N210
M
N200 G41 W150.K50.T0102;
Z
N210 U-100.W100.;
M

TEP103

Vector (B) is the offset stroke entered in tool offset number modal 2 in the N200 block.

11-25
Serial No. 269443

11 TOOL OFFSET FUNCTIONS

6. Notes
- Set the I, K type vector in a linear interpolation mode (G0, G1). If it is set in an arc interpolation
mode at the start of compensation, program error will result.
An I, K designation in an arc interpolation during the compensation mode functions as an arc
center designation.
- When the I, K type vector has been designated, it is not deleted (avoidance of interference)
even if there is interference. Consequently, overcutting may occur in such a case.

N1 G28 X0 Z0;

.
N2 G41 T0101 F1000;

d
Z

ve
N3 W100.;

er
N3 N4 N4 G41 U-100.W100.K10.;

s
N5 N6 N5 U100.W100.;

re
N2
N6 G40;

ts
N7 M02;

gh
ri
ll
.A
Overcutting

N
(I, K)

O
TEP104

TI
43

A
R
7. Supplementary notes
94

PO
26

Refer to the following table for the compensation methods based on the presence and/or
R
o.

absence of the G41 and G42 commands and I, K (J) command data.
O
N

C
al

G41/G42 I, K, (J) Compensation method


ri

ZA
Se

No No Intersection point calculation type vector


A

Yes No Intersection point calculation type vector


IM

Yes Yes I, K type vector, No insertion block


K
ZA
A
M
YA
3
01
)2
(c
ht
ig
yr
op
C

11-26
Serial No. 269443

TOOL OFFSET FUNCTIONS 11


11-3-6 Interruptions during nose radius/tool radius compensation

1. Interruption by MDI
Nose radius/tool radius compensation is valid during automatic operation, whether it is based on
the tape, memory, or MDI operation mode.
The following diagrams show what will occur if tape or memory operation is interrupted using the
MDI function following termination of the program at a block:

A. Interruption without movement

Tool path is not affected at all.

.
d
ve
er
N1 G41 T0101;

s
MDI interruption

re
N2 U50.W20.;

ts
N3 G3 U-40.W40.R70.; S1000 M3;
s (Stop position in the single

gh
block operation mode)

ri
ll
X

.A
N
O
TI
43

AN2
R
94

Z
PO

N3
26

TEP105
R
o.

O
N

B. Interruption with movement


al

K
ri

ZA

The offset vectors are recalculated automatically at the move command block after interruption.
Se

A
IM

With linear interruption


K
ZA

N1 G41 T0101; s
MDI interruption
A

N2 U50.W20.;
M

N3 G3 U-40.W40. R70.; U-30.W50.;


YA

s
U50.W30.;
3
01
)2
(c

N2
ht

N3
ig
yr

With circular interruption


op

N1 G40 T0101; s
C

N2 U50. W20.; MDI interruption

N3 G3 U-40.W40. R70.; G2 U-40.W40.R70.;


G1 W40.;

N2 N3
TEP106

11-27
Serial No. 269443

11 TOOL OFFSET FUNCTIONS

2. Manual interruption

A. Interruption with manual absolute OFF


The tool path is shifted by an interruption amount.

Tool path after interruption

Interruption
Tool path after compensation

.
d
ve
Programmed path

er
s
re
ts
gh
ri
TEP107

ll
.A
B. Interruption with manual aboslute ON

N
O
In the incremental value command mode, the same operation results as with manual absolute

TI
OFF.
43

A
R
In the absolute value command mode, however, the tool returns to its original path at the ending
94

PO
26

point of the block following the interrupted block, as shown in the figure.
R
o.

O
N

C
al

K
ri

ZA
Se

A
IM
K
ZA
A
M
YA
3
01
)2
(c
ht
ig
yr
op

Interruption Interruption
C

TEP108

11-28
Serial No. 269443

TOOL OFFSET FUNCTIONS 11


11-3-7 General precautions on nose radius/tool radius compensation

1. Selecting the amounts of compensation


The amounts of compensation are selected by specifying an offset number using a last one or
two digits of the T-code. Depending on the machine specifications, the first digits may be used.
Once a T-code has been set, it will remain valid until a new T-code is set.
T-codes are also used to select tool position offset data.

2. Updating the selected amounts of compensation


Updating of the selected amounts of compensation is usually to be done after a different tool has

d.
been selected during the compensation cancellation mode. If such updating is done during the

ve
compensation mode, vectors at the ending point of a block will be calculated using the offset data

er
selected for that block.

s
re
ts
3. Errors during tool nose radius compensation

gh
1. An error results when any of the following commands are programmed during tool nose

ri
ll
radius compensation.

.A
G17, G18, G19 (when a plane different from that selected during the compensation

N
has been commanded)

O
TI
G31
43

G74, G75, G76 A


R
94

PO

G81 to G89
26

2. An error results when an arc command is set in the first or last block of the tool nose radius
R
o.

compensation.
N

C
al

3. A programming error results during tool nose radius compensation when the intersection
ri

ZA

point is not determined with single block skip in the interference block processing.
Se

A
IM

4. A programming error results when an error occurs in one of the preread blocks during tool
nose radius compensation.
K
ZA

5. A programming error results when interference can arise without no interference avoidance
A

function during tool nose radius compensation.


M
YA
3
01
)2
(c
ht
ig
yr
op
C

11-29
Serial No. 269443

11 TOOL OFFSET FUNCTIONS

11-3-8 Interference check

1. Overview
Even a tool whose nose radius has been compensated by usual tool nose radius compensation
based on two-block prereading may move into the workpiece to cut it. This status is referred to
as interference, and a function for the prevention of such interference is referred to as inter-
ference check.
The following two types of interference check are provided and their selection is to be made
using the parameter.

Function Parameter (F92 bit 5) Operation

.
d
ve
Interference Interference check/prevention OFF The system will stop, with a program error

er
check/alarm (F92 bit 5 = 0) resulting before executing the cutting block.

s
Interference Interference check/prevention ON The path is changed to prevent cutting from

re
check/prevention (F92 bit 5 = 1) taking place.

ts
gh
Example:

ri
ll
Interference

.A
(G41) prevention path
Full circle for the radius

N
N1 G1 X-100. Z50.; of the tool nose

O
N2 X-100. Z70.;

TI
43

N3 X0. Z120.; A N1 N3
R
94

PO
26

R
o.

O
N

X
C
al

K
ri

ZA
Se

N2
Z
A

Cutting by N2 Cutting by N2
IM
K

TEP109
ZA

- For the alarm function


A
M

An alarm occurs before N1 is executed. Machining can be continued by updating the program
YA

into, for example,


N1 G1 X–100. Z–20.;
3
01

- Using the buffer correction function.


)2

For the interference check/prevention function


(c

Interference prevention vectors are generated by N1 and N3 intersection point calculation.


ht
ig
yr
op
C

11-30
Serial No. 269443

TOOL OFFSET FUNCTIONS 11


2. Operation during interference prevention

Solid line vector: valid


Dotted-line vector: invalid

Tool nose radius center path


when interference prevented

Tool nose radius center path


without interference check

Programmed path
N3
N2

.
d
N1

ve
er
s
Tool nose radius center path

re
Linear movement when interference prevented

ts
gh
Tool nose radius center path
without interference check

ri
r

ll
.A
Programmed path

N
N3

O
N2

TI
Arc center
43

N1 r A
R
94

PO

TEP110
26

In the case of the figure below, the groove will be left uncut.
o.

O
N

C
al

K
ri

ZA
Se

A
IM

Intererence
prevention path
K

Tool nose radius


ZA

center path
A
M
YA

Programmed path
3
01
)2
(c

TEP111
ht
ig
yr
op
C

11-31
Serial No. 269443

11 TOOL OFFSET FUNCTIONS

3. Interference check/alarm
Cases that an interference check/alarm occurs are listed below.

A. When interference check/alarm is selected


1. If all vectors at the ending point of the current block are erased:
Prior to execution of N1, a program error will result if vectors 1 through 4 at the ending point
of the N1 block are all erased as shown in the diagram below.

N1

.
d
ve
er
s
re
1
N2

ts
gh
2, 3
N3

ri
4

ll
.A
TEP112

N
O
TI
B. When interference check/prevention is selected
43

A
R
94

1. If all vectors at the ending point of the current block are erased but an effective vector(s)
PO
26

remains at the ending point of the next block:


R
o.

- For the diagram shown below, interference checking at N2 will erase all vectors existing at
N

the ending point of N2, but leave the vectors at the ending point of N3 effective.
al

K
ri

ZA
Se

A
IM

Alarm stop
K
ZA

N1 2 3
A
M

1 4
YA
3

N4
01
)2

N3
(c

N2
ht

TEP113
ig
yr

At this time, a program error will occur at the ending point of N1.
op
C

11-32
Serial No. 269443

TOOL OFFSET FUNCTIONS 11


- For the diagram shown below, the direction of movement becomes opposite at N2.
At this time, a program error will occur before execution of N1.

1, 2, 3, 4

N1 N4

d .
ve
N2 N3

s er
re
TEP114

ts
gh
2. When prevention vectors cannot be generated:

ri
- Prevention vectors may not be generated even when the conditions for generating them

ll
are satisfied. Or even after generation, the prevention vectors may interfere with N3.

.A
A program error will therefore occur at the ending point of N1 if those vectors intersect at

N
O
angles of 90 degrees or more.

TI
43

A
← Alarm stop ← Alarm stop
R
94

PO
26

R
o.

O
N

N1 N1
al

K
ri

N2
ZA

N2
Se

N4
A

θ
IM

N4 N3
K
ZA

θ: Intersection angle
A
M

N3
YA

TEP115
3

- Prevention vectors may not be generated when preread prohibit blocks are interfered with
01

and so program error occurs.


)2
(c
ht

(G41)
ig

M
yr

N10 G01 N10


op

Zz1;
C

N20 Xx1;
N30 M02 N20
M

Preread prohibit block

TEP116

11-33
Serial No. 269443

11 TOOL OFFSET FUNCTIONS

3. When the after compensating moving direction of the tool is opposite to that of the program:
- For a program for the machining of parallel or downwardly extending grooves narrower
than the tool diameter, interference may be regarded as occurring even if it is not actually
occurring.

Tool nose radius


Programmed center path Stop
path

d.
ve
ser
re
ts
gh
ri
TEP117

ll
.A
N
O
TI
43

A
R
94

PO
26

R
o.

O
N

C
al

K
ri

ZA
Se

A
IM
K
ZA
A
M
YA
3
01
)2
(c
ht
ig
yr
op
C

11-34
Serial No. 269443

TOOL OFFSET FUNCTIONS 11

11-4 Programmed Data Setting: G10

1. Function and purpose


The G10 command allows tool offset data, work offset data and parameter data to be set or
modified in the flow of program.

2. Programming formats

A. Programming workpiece offsets


- Programming format for the workpiece origin data

.
d
G10 L2 P_ Xp_ Yp_ Zp_α_ (α: Additional axis)

ve
er
P0: Coordinate shift (Added feature)

s
re
P1: G54 P4: G57

ts
P2: G55 P5: G58

gh
P3: G56 P6: G59

ri
Data of P-commands other than those listed above are handled as P = 1.

ll
.A
If P-command setting is omitted, the workpiece offsets will be handled as currently effective

N
ones.

O
TI
- Programming format for the additional workpiece origin data (option)
43

G10 L20 P_ Xp_ Yp_ Zp_α_ (α: Additional axis)


A
R
94

PO

P1: G54.1 P1
26

P2: G54.1 P2
o.

O
N

M
C
al

P299: G54.1 P299


K
ri

ZA

P300: G54.1 P300


Se

The setting ranges of the data at axial addresses are as follows:


IM
K

Metric Inch
ZA

Linear axis ±99999.9999 mm ±9999.99999 in


A

Rotational axis ±99999.9999° ±99999.9999°


M
YA
3
01
)2
(c
ht
ig
yr
op
C

11-35
Serial No. 269443

11 TOOL OFFSET FUNCTIONS

B. Programming tool offsets


- Programming format for the tool offset data of Type A
G10 L10 P_R_
P: Offset number
R: Offset amount
- Programming format for the tool offset data of Type B
G10 L10 P_R_ Geometric offset concerning the length
G10 L11 P_R_ Wear compensation concerning the length
G10 L12 P_R_ Geometric offset concerning the radius

.d
G10 L13 P_R_ Wear compensation concerning the radius

ve
- Programming format for the tool offset data of Type C

er
s
G10 L10 P_R_ Length offset; Geometric Z

re
G10 L11 P_R_ Length offset; Wear comp. Z

ts
gh
G10 L12 P_R_ Tool radius/Nose R offset (Geometric)

ri
G10 L13 P_R_ Tool radius/Nose R offset (Wear comp.)

ll
G10 L14 P_R_ Length offset; Geometric X

.A
G10 L15 P_R_ Length offset; Wear comp. X

N
G10 L16 P_R_ Length offset; Geometric Y

O
TI
G10 L17 P_R_ Length offset; Wear comp. Y
43

G10 L18 P_R_ Nose-R offset; Direction


A
R
94

PO
26

The setting ranges for programming tool offset data are as follows:
R
o.

Offset number (P):


O
N

1 to 128 or 512 (according to the number of available data sets)


al

Offset amount (R):


ri

ZA
Se

Metric Inch
IM

TOOL OFFSET Type A ±1999.9999 mm ±84.50000 in


K

TOOL OFFSET Type B Length Geom. ±1999.9999 mm ±84.50000 in


ZA

TOOL OFFSET Type B Length Wear ±99.9999 mm ±9.99999 in


A
M

TOOL OFFSET Type B Radius Geom. ±999.9999 mm ±84.50000 in


YA

TOOL OFFSET Type B Radius Wear ±9.9999 mm ±0.99999 in


TOOL OFFSET Type C Geom. XYZ ±1999.9999 mm ±84.50000 in
3
01

TOOL OFFSET Type C Geom. Nose R ±999.9999 mm ±84.50000 in


)2

TOOL OFFSET Type C Wear XYZ ±99.9999 mm ±9.99999 in


(c

TOOL OFFSET Type C Wear Nose R ±9.9999 mm ±0.99999 in


ht
ig

TOOL OFFSET Type C Direction 0-9 0-9


yr
op
C

11-36
Serial No. 269443

TOOL OFFSET FUNCTIONS 11


C. Programming parameter data
G10 L50................ Parameter input mode ON
N_P_R_
N_R_
G11 ...................... Parameter input mode OFF
N: Parameter number
P: Axis number (for axis type parameter)
R: Data of parameter
Specify the parameters with address N as indicated below:

.d
Parameter N: Number P: Axis No.

ve
A 1 to 200 1001 to 1200 —

er
s
B 1 to 200 2001 to 2200 —

re
C 1 to 200 3001 to 3200 —

ts
D 1 to 144 4001 to 4144 —

gh
E 1 to 144 5001 to 5144 —

ri
F 1 to 168 (47 to 66 excluded) 6001 to 6168 —

ll
.A
I 1 to 24 9001 to 9024 1 to 16

N
J 1 to 144 10001 to 10144 —

O
K 1 to 144 11001 to 11144 —

TI
43

L 1 to 144 A
12001 to 12144 —
R
94

M 1 to 48 13001 to 13048 1 to 16
PO
26

N 1 to 48 14001 to 14048 1 to 16
R
o.

P 1 to 5 150001 to 150005 1 to 16
O
N

S 1 to 48 16001 to 16048 1 to 16
al

SV 1 to 384 17001 to 17384 1 to 16


ri

ZA
Se

SP 1 to 256 18001 to 18256 1 to 8


A

SA 1 to 144 19001 to 19144 1 to 8


IM

BA 1 to 132 20001 to 20132 —


K

TC 1 to 154 21001 to 21154 —


ZA

SU 1 to 168 22001 to 22168 —


A
M

SD 1 to 168 23001 to 23168 —


YA

Note: As for the setting ranges of parameter data, refer to the separate Parameter List/Alarm
3
01

List/M-code List.
)2
(c
ht
ig
yr
op
C

11-37
Serial No. 269443

11 TOOL OFFSET FUNCTIONS

3. Detailed description

A. Workpiece origin data input


1. The G10 command is not associated with movement. However, do not use this command in
the same block with a G-code command other than: G21, G22, G54 to G59.
2. Do not use the G10 command in the same block with a fixed cycle command or a sub-
program call command. This will cause a malfunctioning or a program error.
3. Irrespective of workpiece offset type (G54 - G59 and G54.1), the data to the axial addresses
have to refer to the origin of the fundamental machine coordinate system.
4. L-code and P-code commands can be omitted, indeed, but take notice of the following when

d.
omitting them:

ve
1) Omit both L-code and P-code commands only when

ser
re
The axial data should refer to the coordinate system that was last selected.

ts
2) The L-code command only may be omitted when the intended axial data refer to a

gh
coordinate system of the same type (in terms of L-code: L2 or L20) as the last selected

ri
one; give a P-command in such a case as follows:

ll
.A
- Set an integer from 0 to 6 with address P to specify the coordinate shift data or one of

N
the coordinate systems from G54 to G59.

O
TI
- Set an integer from 1 to 300 with address P to specify one of the additional workpiece
43

coordinate systems of G54.1.


A
R
94

PO
26

3) If the P-code command only is omitted:


R
o.

An alarm will result if the value of L mismatches the coordinate system last selected.
O
N

5. Axis data without a decimal point can be entered in the range from –99999999 to
al

K
ri

ZA

+99999999. The data settings at that time depend upon the data input unit.
Se

Example: G10 L2 P1 X–100. Y–1000 Z–100 B–1000


IM

The above command sets the following data:


K

Metric system X –100. Y –1. Z –0.1 B –1.


ZA

Metric system (up to 4 dec. places) X –100. Y –0.1 Z –0.01 B –0.1


A
M

Inch system X –100. Y –0.1 Z –0.01 B –1.


YA

Inch system (up to 5 dec. places) X –100. Y –0.01 Z –0.001 B –0.1


3

6. The origin data updated by a G10 command are not indicated as they are on the WORK
01

OFFSET display until that display has been selected anew.


)2

7. Setting an illegal L-code value causes an alarm.


(c
ht

8. Setting an illegal P-code value causes an alarm.


ig
yr

9. Setting an illegal axial value causes an alarm.


op

10. The G10 command is invalid (or skipped) during tool path check.
C

11-38
Serial No. 269443

TOOL OFFSET FUNCTIONS 11


B. Tool offset data input
1. The G10 command is not associated with movement. However, do not use this command in
the same block with a G-code command other than: G21, G22, G54 to G59.
2. Do not use the G10 command in the same block with a fixed cycle command or a sub-
program call command. This will cause a malfunctioning or a program error.
3. Offset data (R) without a decimal point can be entered in the range from –999999 to
+999999 for geometric offset, or in the range from –99999 to +99999 for wear compen-
sation. The data settings at that time depend upon the data input unit.
Example: G10 L10 P1 R1000

d.
The above command sets the following data:

ve
Metric system 1.

er
Metric system (up to 4 dec. places) 0.1

s
re
Inch system 0.1

ts
Inch system (up to 5 dec. places) 0.01

gh
ri
4. The offset data updated by a G10 command are not indicated as they are on the TOOL

ll
OFFSET display until that display has been selected anew.

.A
5. Setting an illegal L-code value causes an alarm.

N
O
6. A command of “G10 P_ R_” without an L-code is also available for tool offset data input.

TI
43

7. A
Setting an illegal P-code value causes an alarm.
R
94

PO

8. Setting an illegal offset value (R) causes an alarm.


26

9. The G10 command is invalid (or skipped) during tool path check.
o.

O
N

C
al

C. Parameter data input


K
ri

ZA
Se

1. The G10 command is not associated with movement. However, do not use this command in
A

the same block with a G-code command other than: G21, G22, G54 to G59.
IM

2. Do not use the G10 command in the same block with a fixed cycle command or a sub-
K
ZA

program call command. This will cause a malfunctioning or a program error.


A

3. Other NC statements must not be given in the parameter input mode.


M
YA

4. No sequence number must be designated with address N in the parameter input mode.
5. The designated data will overwrite the existing parameter. Moreover, describe all the data in
3
01

decimal numbers (hexadecimal and bit type data, therefore, must be converted).
)2

Example: For changing a bit type data of 00110110 to 00110111:


(c
ht

Since (00110111)2 = (55)10 [a binary number of 00110111 corresponds to “55”


ig

in decimal notation], set 55 with address R.


yr
op

6. All decimal places, even if inputted, are ignored.


C

11-39
Serial No. 269443

11 TOOL OFFSET FUNCTIONS

7. Some specific bit-type parameters require selection of one of multiple bits. For the
parameter shown as an example below, set data that turns on only one of bits 2 to 5.
Example: Parameter K107
bit 7 6 5 4 3 2 1 0

S-shaped speed filter 7.1 ms


S-shaped speed filter 14.2 ms
S-shaped speed filter 28.4 ms
S-shaped speed filter 56.8 ms

Setting “1” for bits 2 and 3, for example, could not make valid a speed filter of 21.3 ms (= 7.1 + 14.2).

8. The parameter data updated by a G10 L50 command are not made valid till the execution of

d .
a G11 command.

ve
er
9. The parameter data updated by a G10 L50 command are not indicated as they are on the

s
re
PARAMETER display until that display has been selected anew.

ts
10. Setting an illegal L-code value causes an alarm.

gh
ri
11. Setting an illegal N-code value (parameter No.) causes an alarm.

ll
12. Omission of P-code for an axis type parameter causes an alarm.

.A
N
13. Setting an illegal parameter value with address R causes an alarm.

O
TI
14. The G10 command is invalid (or skipped) during tool path check.
43

A
15. As for parameters (BA and SU) with separate values for each system, a G10 command is
R
94

PO

only effective for the values of the system to which the current program section belongs.
26

R
o.

4. Sample programs
N

C
al

A. Entering tool offset data from tape


ri

ZA
Se

L G10L10P10R–12345 G10L10P05R98765 G10L10P40R2468 L


IM

H10 = –12345 H05 = 98765 H40 = 2468


K
ZA
A
M
YA
3
01
)2
(c
ht
ig
yr
op
C

11-40
Serial No. 269443

TOOL OFFSET FUNCTIONS 11


B. Updating the workpiece coordinate system offset data
Assume that the previous workpiece coordinate system offset data is as follows:
X = –10.000 Y = –10.000
M
N100 G00 G90 G54 X0 Y0
N101 G10 L2 P1 X–15.000 Y–15.000
N102 X0 Y0
M
M02

. d
ve
–20. –10. M

er
–X

s
re
Fundamental machine
coordinate system zero point

ts
gh
ri
ll
N100

.A
Coordinate system of G54

N
before change
–X –10.

O
N101

TI
43

(W1)
Coordinate system of
A
R
94

N102
G54 after change
PO
26

–X
W1
R
o.

O
N

C
al

–20.
ri

ZA
Se

–Y
A
IM

–Y –Y
K

MEP135
ZA
A

Note 1: Changes in the display of the workpiece position at N101


M

At N101, the display of tool position in the G54 coordinate system changes before and
YA

after workpiece coordinate system updating with G10.


3
01

X=0 X = +5.000
)2

Y=0 Y = +5.000
(c

Note 2: Prepare the following program to set workpiece coordinate system offset data in G54 to
ht
ig

G59:
yr

G10L2P1X–10.000 Y–10.000
op

G10L2P2X–20.000 Y–20.000
C

G10L2P3X–30.000 Y–30.000
G10L2P4X–40.000 Y–40.000
G10L2P5X–50.000 Y–50.000
G10L2P6X–60.000 Y–60.000

11-41
Serial No. 269443

11 TOOL OFFSET FUNCTIONS

C. Programming for using one workpiece coordinate system as multiple workpiece coordi-
nate systems
M
#1=–50. #2=10.
M98 P200 L5
Main program
M
M02
%
N1 G90 G54 G10 L2 P1 X#1 Y#1
N2 G00 X0 Y0
N3 X–5. F100
Subprogram N4 X0 Y–5.
(O200) N5 Y0

.d
ve
N6 #1=#1+#2

er
N7 M99

s
%

re
ts
gh
ri
–60. –50. –40. –30. –20. –10. M

ll
–X

.A
Fundamental

N
G54'''' W machine coordinate

O
–10.

TI
system zero point
43

5th cycle
G54''' WA
R
94

–20.
PO
26

4th cycle
G54'' W
R

–30.
o.

O
N

3rd cycle
G54' W
al

–40.
ri

ZA
Se

2nd cycle
G54 W
A

–50.
IM

1st cycle
K
ZA

–Y
A

MEP136
M
YA

D. Programming for parameter data input


3

Parameter input mode ON


01

G10L50
)2

N4017R10 D17 is set to “10”.


(c

N6088R96 F88 is set to “01100000”. [ (01100000)2 = (96)10 ]


ht

N12067R–1000 L67 is set to “–1000”.


ig

N12072R67 L72 is set to “0x43”. [ (43)16 = (67)10 ]


yr

N150004P1R50 P4 data for the 1st axis (X-axis) is set to “50”.


op

G11 Parameter input mode OFF


C

11-42
Serial No. 269443

TOOL OFFSET FUNCTIONS 11


5. Related alarms

Alarm No. Alarm message Cause Remedy


Work offset setting:
P-command is omitted in a block of G10 L20 (or L2)
although the last selected coordinate system is one of
807 ILLEGAL FORMAT the systems from G54 to G59 (or of the G54.1 Review the program data.
systems).
Parameter setting:
An illegal parameter number is set.
Work offset setting:
The setting range of the coordinate system number or
the offset data is overstepped.

d .
Tool offset setting:

ve
ILLEGAL NUMBER The setting range of the offset data is overstepped.
809 Review the program data.

er
INPUT Parameter setting:

s
re
The axis number is not specified for an axis type
parameter.

ts
The setting range of the axis number or the parameter

gh
data is overstepped.

ri
Tool offset setting: Correct the offset number

ll
ILLEGAL OFFSET

.A
839 The specified offset number is greater than the number according to the number of
No.
of available data sets. available data sets.

N
O
Work offset setting:

TI
ILLEGAL G10 L A command of G10 L20 is set although the corre- Give an available L-code
43

903 A
NUMBER sponding function for the G54.1 coordinate systems is command.
R
94

not provided.
PO
26

R
o.

O
N

C
al

K
ri

ZA
Se

A
IM
K
ZA
A
M
YA
3
01
)2
(c
ht
ig
yr
op
C

11-43
Serial No. 269443

11 TOOL OFFSET FUNCTIONS

11-5 Tool Offsetting Based on MAZATROL Tool Data


Tool offset and tool radius compensation can be performed on the basis of the MAZATROL tool
data (diameter and tool set data) by particular parameter setting.

11-5-1 Selection parameters


Using the following parameters, select whether or not MAZATROL tool data is to be used:
User parameters
F92 bit 7 = 1: Tool radius compensation uses the MAZATROL tool data ACT-φ (tool diameter
data).

d .
F93 bit 3 = 1: Tool offsetting uses the MAZATROL tool data TOOL SET.

ve
er
F94 bit 2 = 1: Tool offsetting using the MAZATROL tool data is prevented from being cancelled

s
by a reference-point return command.

re
ts
F94 bit 7 = 1: Tool offsetting uses the MAZATROL tool data No. (tool offset data No.).

gh
(Set F94 bit 7 to 0 to use the data stored on the TOOL OFFSET display.)

ri
ll
1. Tool offsetting

.A
N
Parameter

O
Data items used F93 F94 Programming format

TI
bit 3bit 7
43

TOOL OFFSET Tool offset No.


A 0 0 T_
R
94

PO

TOOL SET T_
26

TOOL DATA 1 1
R

TOOL SET + No. (Offset data No.) T_


o.

(MAZATROL)
O
N

No. (Offset data No.) 0 1 T_


C
al

TOOL OFFSET +
Tool offset No. + TOOL SET 1 0 T_
ri

ZA

TOOL DATA
Se

A
IM

2. Tool radius compensation


K

Parameter
ZA

Data items used F92 F94 Programming format


A

bit 7 bit 7
M
YA

TOOL OFFSET Tool offset No. 0 0 G41/G42 T_

TOOL DATA ACT-φ + No. (Offset data No.) 1 1 G41/G42 T_


3
01

(MAZATROL) No. (Offset data No.) 0 1 G41/G42 T_


)2

TOOL OFFSET +
Tool offset No. + ACT-φ 1 0 G41/G42 T_
(c

TOOL DATA
ht
ig

3. Nose radius compensation


yr
op

Parameter
C

Data items used F92 F94 Programming format


bit 7 bit 7
TOOL OFFSET Tool offset No. 0 0 G41/G42 T_

TOOL DATA NOSE-R + No. (Offset data No.) 1 1 G41/G42 T_


(MAZATROL) No. (Offset data No.) 0 1 G41/G42 T_
TOOL OFFSET +
Tool offset No. + NOSE-R 1 0 G41/G42 T_
TOOL DATA

11-44
Serial No. 269443

TOOL OFFSET FUNCTIONS 11


11-5-2 Tool radius compensation

1. Function and purpose


Tool radius compensation by a G41 or G42 command uses MAZATROL tool data ACT-φ for the
compensation.

2. Parameter setting
Set bit 7 of parameter F92 to 1.

3. Detailed description
- Tool radius compensation uses as its offset amounts the half of the diameter data of the tool

d.
ve
which is mounted in the spindle at the issuance of G41/G42.

er
- Tool radius compensation is cancelled by G40.

s
re
Note 1: The tool used must be mounted in the spindle before restarting the program.

ts
gh
Note 2: Campensation based on tool diameter data will not occur if registered MAZATROL tool

ri
diameter data is not present or if a tool for which tool diameter data cannot be entered

ll
is to be used.

.A
Note 3: To carry out for an EIA/ISO program the tool radius compensation operations using the

N
O
tool diameter data included in MAZATROL tool data, it is necessary to insert tool

TI
change command blocks.
43

A
R
94

PO

11-5-3 Tool data update (during automatic operation)


26

R
o.

1. Function and purpose


N

C
al

Tool Data Update allows MAZATROL tool data to be updated during automatic operation based
ri

ZA
Se

on an EIA/ISO program.
A
IM

2. Parameter setting
K

Set parameter L57 to 1.


ZA
A

3. Detailed description
M
YA

This function allows the entire tool data, except for spindle tools, to be updated during automatic
3

operation based on an EIA/ISO program.


01
)2

LENG THRUST F/ LIFE CUT MAX,


Parameter TOOL NOM-φ ACT-φ LENGTH MAT.
(c

COMP. HORSE PW TIME TIME ROT.


ht

L57 = 0 No No No No No No Yes Yes No Yes


ig

L57 = 1 Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes
yr
op

Note 1: In the table given above, “Yes” indicates that you can update the data, and “No”
C

indicates that you cannot update the data.


Identification between MAZATROL programs and EIA/ISO programs is automatically
made by whether the program currently being executed, is MAZATROL or EIA/ISO,
irrespective of whether it is a main program or subprogram.
If, however, the main program is MAZATROL and its subprograms are EIA/ISO, then
the currently active set of programs is regarded as a MAZATROL program.
Note 2: An alarm 428 MEMORY PROTECT (AUTO OPERATION) will occur if the spindle tool
data is modified during automatic operation based on an EIA/ISO program.

11-45
11

C
op
yr
ig
- NOTE -

ht
(c
)2
TOOL OFFSET FUNCTIONS

01
3
YA
M
A Se
ZA
K ri
al
IM
N
A o.
ZA 26
K

11-46 E
94
C
O 43
Serial No. 269443

R
PO
R
A
TI
O
N
.A
ll
ri
gh
ts
re
ser
ve
d.
Serial No. 269443

PROGRAM SUPPORT FUNCTIONS 12


12 PROGRAM SUPPORT FUNCTIONS

12-1 Fixed Cycles for Turning


When performing roughing and other such operations during turning, these functions permit to
command in a single block the machining program which is normaly commanded in several
blocks. In other words, they simplify the machining program. The following types of fixed cycles
for turning are available.

G-code Function
G90 Longitudinal turning cycle

d.
G92 Threading cycle

ve
G94 Transverse turning cycle

ser
re
1. The programming format is as follows:

ts
G90 X/U_ Z/W_ R_ F_ ;

gh
(Same for G92, G94)

ri
ll
The taper values of fixed cycles G90, G92 and G94 are to be specified by argument R.

.A
2. Fixed cycle commands are modal G-codes and so they are valid until another command in

N
O
the same modal group or a cancel command is set.

TI
The following G-code cancels fixed cycle commands.
43

A
R
94

G00, G01, G02, G03


PO
26

G07,
R
o.

G09,
O
N

G10,
al

G27, G28, G29, G30, G30.1


ri

ZA
Se

G31,
A

G32, G34
IM

G37,
K

G50,
ZA

G52, G53
A
M

3. There are two types of fixed cycle call, move command block call and block-by-block call.
YA

These are selected by a parameter setting.


3

A move command block call calls the fixed cycle macro subprogram only when there is an
01

axial move command in the fixed cycle mode. The block-by-block call calls the fixed cycle
)2

macro subprogram in each block in the fixed cycle mode. Both types are executed until the
(c

fixed cycle is cancelled.


ht
ig

4. A manual interruption can be applied while a fixed cycle for turning (G90, G92 and G94) is
yr

being executed. Upon completion of the interruption, however, the tool must be returned to
op

the position where the manual interruption was applied and then the fixed cycle for turning
C

should be restarted. If it is restarted without the tool having been returned, all subsequent
operation movements will deviate by an amount equivalent to the manual interruption value.
Note: In order that it may function correctly, do not give a command of fixed cycle for turning
in one block together with any one for the following functions (described in this
chapter):
- Compound fixed cycle - Subprogram control
- Hole machining fixed cycle - Macro call
- Hole machining pattern cycle

12-1
Serial No. 269443

12 PROGRAM SUPPORT FUNCTIONS

12-1-1 Longitudinal turning cycle: G90

1. Straight turning
Continuous straight turning operations can be initiated by the following instruction:
G90 X/U_Z/W_F_;

(R) : Rapid motion


(F) : Cutting feed
X-axis
4(R)
U

.
3(F) 1(R)

d
2(F) 2

ve
er
Z

s
W X

re
Z-axis

ts
gh
ri
ll
.A
TEP118

N
O
TI
43

2. Taper turning R
A
94

Continuous taper turning operations can be initiated by the following instruction:


PO
26

G90 X/U_Z/W_I_F_;
R
o.

O
N

(R) : Rapid motion


al

(F) : Cutting feed


ri

ZA

I : Taper depth (incremental in radius value, with sign)


Se

A
IM

X-axis 4(R)
K

1(R) I U
3(F)
ZA

2(F) 2
A

Z
M

W X
YA

Z-axis
3
01
)2
(c

TEP119
ht
ig
yr
op
C

12-2
Serial No. 269443

PROGRAM SUPPORT FUNCTIONS 12


3. Remarks
In the single-block operation mode, the tool stops either at the ending points of operations 1, 2, 3
and 4, or only on completion of one cycle (depending on bit 7 of parameter F111).
Depending on the U, W and I signs, the following shapes are created.

[1] U < 0, W < 0, I < 0 [2] U < 0, W < 0, I > 0

W W

4 U 4 1
U 3
2 3 1 2 2

. d
I

ve
X 2 I X

s er
re
Z Z

ts
gh
ri
[3] U > 0, W < 0, I < 0 [4] U > 0, W < 0, I > 0

ll
.A
N
X
X

O
TI
43

Z A
R
94

Z 2 I
PO

I
26

U 3 2 1
U 3
R

2 4 1
o.

2
O

4
N

W
al

W
ri

ZA
Se

TEP120
IM

A programming error (899 ILLEGAL TAPER LENGTH) occurs for shapes [2] and [3] unless the
K

following condition is satisfied.


ZA

U
|≥| I |
A

|
2
M
YA
3
01
)2
(c
ht
ig
yr
op
C

12-3
Serial No. 269443

12 PROGRAM SUPPORT FUNCTIONS

12-1-2 Threading cycle: G92

1. Straight threading
Straight or cylindrical threading operations can be initiated by the following instruction:
G92 X/U_ Z/W_ F/E_ ;

(R) : Rapid motion


(F) : Threading
X-axis
4(R)

.d
3(R) 1(R) U

ve
2(F) 2

er
Z

s
re
W X
Z-axis

ts
gh
ri
ll
.A
TEP121

N
O
TI
2. Taper threading
43

A
R
94

Taper threading operations can be initiated by the following instruction:


PO
26

G92 X/U_ Z/W_ I_ F/E_ ;


R
o.

O
N

(R) : Rapid motion


al

(F) : Threading
ri

ZA

I : Taper depth (incremental in radius value, with sign)


Se

4(R)
X-axis
IM

I U
3(R) 1(R)
K

2(F) 2
ZA

Z
A
M

W X
Z-axis
YA
3
01
)2

TEP122
(c
ht
ig
yr
op
C

12-4
Serial No. 269443

PROGRAM SUPPORT FUNCTIONS 12


3. Remarks
- Details for thread run-out

.
α : Length of thread run-out

d
ve
If the thread lead is assumed to be L, then the parameter can be set by 0.1 L in
the range 0 to 4.0.

er
θ : Run-out angle of threding

s
re
The parameter (F28) can be set in 45° or 60°. TEP123

ts
gh
- In the single-block operation mode, the tool stops either at the ending points of operations 1, 3

ri
and 4, or only on completion of one cycle (depending on bit 7 of parameter F111).

ll
.A
- The feed hold function causes a non-threading operation (1, 3, or 4) to be stopped immediately,
but the threading operation (2) is either not stopped till completion of the next step (3) or

N
O
immediately changed into run-out and then stopped (according to the setting of bit 2 of

TI
parameter F111).
43

A
R
94

- During threading, use or disuse of dry run will not be changed.


PO
26

- Depending on the U, W and I signs, the following shapes are created.


R
o.

O
N

[1] U < 0, W < 0, I < 0 [2] U < 0, W < 0, I > 0


al

K
ri

ZA

W W
Se

4 4
IM

U U 1
2 3 3
1 2 2
I
K

X X
ZA

2 I
A
M

Z Z
YA

[3] U > 0, W < 0, I < 0 [4] U > 0, W < 0, I > 0


3
01

X X
)2
(c

Z Z 2 I
ht

I
ig

U 3 2 U 3 1
yr

2 4 1 2 4
op
C

W W
TEP124

A programming error (899 ILLEGAL TAPER LENGTH) occurs for shapes [2] and [3] unless the
following condition is satisfied.
U
| |≥| I |
2
- For machines with the optional function for automatic correction of threading start position, the
thread cutting conditions can be changed by “overriding” the spindle speed.
See Subsection 5-10-6 for more information.

12-5
Serial No. 269443

12 PROGRAM SUPPORT FUNCTIONS

12-1-3 Transverse turning cycle: G94

1. Straight facing
Continuous straight facing operations can be initiated by the following instruction:
G94 X/U_Z/W_F_;

X-axis
1(R) (R) : Rapid motion
(F) : Cutting feed

2(F) 4(R) U
2
3(F)

.
d
Z

ve
W X

er
Z-axis

s
re
ts
gh
ri
ll
.A
TEP125

N
O
2. Bevel facing

TI
43

A
Continuous bevel facing operations can be initiated by the following instruction:
R
94

PO

G94 X/U_Z/W_K_F_;
26

R
o.

O
N

(R) : Rapid motion


C

X-axis
K (F) : Cutting feed
al

1(R)
K

K : Taper depth (incremental,


ri

ZA

with sign)
Se

2(F) U
A

4(R) 2
IM

3(F)
Z
K
ZA

W X
Z-axis
A
M
YA
3
01
)2

TEP126
(c
ht
ig
yr
op
C

12-6
Serial No. 269443

PROGRAM SUPPORT FUNCTIONS 12


3. Remarks
- In the single-block operation mode, the tool stops either at the ending points of operations 1, 2,
3 and 4, or only on completion of one cycle (depending on bit 7 of parameter F111).
- Depending on the U, W and K signs, the following shapes are created.

[1] U < 0, W < 0, K < 0 [2] U < 0, W < 0, K > 0

K W K

1(R) 1(R)

U 2(F) U
2(F) 4(R)

.
2 4(R) 2

d
ve
X

er
X
3(F) 3(F)

s
re
W

ts
Z Z

gh
[3] U > 0, W < 0, K < 0 [4] U > 0, W < 0, K > 0

ri
ll
K W W

.A
N
1(R) 3(F)

O
TI
U 2(F) U
43

4(R) 2(F) 4(R)


2 A 2
R
94

PO

X
26

X
3(F) 1(R)
R
o.

O
N

Z Z K
al

TEP127
ri

ZA
Se

A programming error (899 ILLEGAL TAPER LENGTH) occurs for shapes [2] and [3] unless the
A
IM

following condition is satisfied.


|W|≥|K|
K
ZA
A
M
YA
3
01
)2
(c
ht
ig
yr
op
C

12-7
Serial No. 269443

12 PROGRAM SUPPORT FUNCTIONS

12-2 Compound Fixed Cycles


These functions permit various fixed cycles to be initiated by a single instruction with the
corresponding preparatory functions.
The available types of compound fixed cycle for turning are as follows:

G-code Function
G70 Finishing cycle
G71 Longitudinal roughing cycle (leaving finishing allowance)
Compound fixed cycles Ι
G72 Transverse roughing cycle (leaving finishing allowance)
G73 Contour-parallel roughing cycle

d .
G74 Longitudinal cut-off cycle

ve
Compound fixed cycles ΙΙ

er
G75 Transverse cut-off cycle

s
G76 Compound threading cycle

re
ts
- If the finish shape program has not been entered in the memory, any of the above functions for

gh
the compound fixed cycles Ι (G70 to G73) cannot be used.

ri
ll
- The programming formats are as follows.

.A
N
G-code Programming format

O
TI
G70 G70 A_P_Q_ ;
43

G71 U_R_ ; A
R
94

G71
G71 A P_Q_U_W_F_S_T_ ;
PO
26

G72 W_R_ ;
R

G72
o.

G72 A_P_Q_U_W_F_S_T_ ;
O
N

G73 U_W_R_;
al

G73
K

G73 P_Q_U_W_F_S_T_ ;
ri

ZA
Se

G74 R_ ;
G74
A

G74 X(U)_Z(W)_P_Q_R_F_S_T_ ;
IM

G75 R_ ;
G75
K

G75 X(U)_Z(W)_P_Q_R_F_S_T_ ;
ZA

G76 P_Q_R_ ;
A

G76
G76 X(U)_Z(W)_R_P_Q_F_ ;
M
YA

Note: In order that it may function correctly, do not give a command of compound fixed cycle
3

in one block together with any one for the following functions (described in this
01

chapter):
)2
(c

- Fixed cycle for turning - Subprogram control


ht

- Hole machining fixed cycle - Macro call


ig

- Hole machining pattern cycle


yr
op
C

12-8
Serial No. 269443

PROGRAM SUPPORT FUNCTIONS 12


12-2-1 Longitudinal roughing cycle: G71

1. Overview
With commands as shown below for the finishing contour between (A) to (H), roughing by cutting
depth ∆d will be executed by leaving finishing allowances U∆u and W.

(0 or 2 for TC4)

(H) (A) Cycle starting


point

.
d
ve
(G) (F)
(E)

er
s
re
(D) (1 for TC4)

ts
gh
45°
(C) (B)

ri
ll
.A
TEP128

N
O
The parameter TC4 will determine escape pattern from wall at right angle, whether 45° escape or

TI
feedrate accelerated at wall should be made during roughing cycle. By setting 2 for TC4,
43

A
R
94

chamfering speed can be changed. (Refer to parameter TC3.)


PO
26

2. Programming format
R
o.

O
N

G71 U∆d R_;


al

G71 A_ P_ Q_ U∆u W_ F_ S_ T_;


ri

ZA
Se

U∆d : Depth of cut


A
IM

Set an absolute value (in radius value).


The value is modal and remains valid until it is overwritten with a new value.
K
ZA

R : Escape distance
A

The value is modal and remains valid until it is overwritten with a new value.
M

Escape angle is fixed to 45°.


YA

A : Finishing contour program No.


3

P : Head sequence No. for finishing contour


01

Q : End sequence No. for finishing contour


)2

U∆u : Finishing allowance and direction along the X-axis (in diameter or radius value)
(c

W : Finishing allowance and direction along the Z-axis


ht
ig

F_ S_ T_: Feed, Spindle and Tool functions


yr

The roughing cycle is executed using the F-, S- and T-functions specified in or before the
op

G71 block, in stead of those existing in the program section designated by P and Q.
C

- ∆d and ∆u are both specified by address U. The differentiation depends on whether P and Q are
specified in the same block.
Note: Even if F- and S-codes exist in the program section designated by P and Q, they are
considered as for the finishing cycle only and, therefore, ignored in the roughing cycle.

12-9
Serial No. 269443

12 PROGRAM SUPPORT FUNCTIONS

3. Detailed description
The contour of machining by G71 may be one of the four combinations below.
Machining is basically executed by feed motions along the Z-axis. Finishing allowances U∆u and
W may have different signs.

(C) (A) (A) (C)


∆u > 0 ∆u > 0
W>0 W<0

(B) (B)
+X

.
d
ve
er
(B) (B)

s
+Z

re
ts
gh
∆u < 0 ∆u < 0
W>0

ri
W<0
(C) (A) (A) (C)

ll
.A
TEP129

N
The section from A to B must be of a single-axis movement on the X-axis and is to be described

O
TI
in the block designated with P.
43

A
For the section between B and C, a maximum of 32 recesses are allowed.
R
94

PO

Depending upon whether the modal for the block of the motion from A to B is G00 or G01, the
26

infeed on the X-axis is repeated by rapid motion or cutting feed during the roughing cycle.
R
o.

O
N

C
al

(C) (A)
K
ri

ZA
Se

A
IM
K
ZA
A
M
YA

Tool path
3
01

Programmed contour
∆u/2
)2

(B) W
(c

TEP130
ht
ig
yr
op
C

12-10
Serial No. 269443

PROGRAM SUPPORT FUNCTIONS 12


4. Remarks
1. Subprograms can be called from the program section designated by P and Q.
2. The last element of the contour described in the program section designated with P and Q
may be circular (G02 or G03). Do not fail to give the desired G-code explicitly for the section
next to the roughing cycle.
3. The maximum permissible number of blocks for the finishing contour is 100, including
blocks automatically inserted by the NC (e.g. for nose radius compensation).

.
d
ve
er
s
re
ts
gh
100 blocks

ri
ll
.A
N
O
TI
TEP131
43

A
R
94

The Z-axis position, however, must be monotonic increasing or decreasing. For shapes as
PO
26

shown below, the alarm 898 LAP CYCLE ILLEGAL SHAPE DESIGN. will occur and
R

machining stops.
o.

O
N

C
al

K
ri

ZA
Se

A
IM
K
ZA

Reverse motion
on the Z-axis
A
M
YA
3
01
)2
(c

TEP132
ht
ig
yr
op
C

12-11
Serial No. 269443

12 PROGRAM SUPPORT FUNCTIONS

4. Monotonousness of the Z-axis motion is the only requirement for the finishing contour. Even
the initial cut-in may be of simultaneous control of the X- and Z-axis, as shown below.

Initial cut-in

.d
ve
s er
TEP133

re
ts
5. If a roughing cycle command is given in the mode of nose radius compensation, the

gh
roughing cycle operations are executed for the finishing contour accordingly compensated.

ri
6. Set “W0” in general for a contour if it is not monotonic changing on the X-axis. Otherwise

ll
.A
excessive cutting is caused on either side.

N
7. In the first block of repeating section, give a command for each of the pair X(U) and Z(W). If

O
TI
no Z-axis movement is required, “W0” must be set.
43

8.
A
If the machining contour from A through B to C should contain an intermediate point whose
R
94

PO

X-position is not “below” A (as is the case with B’ in the figure below), the alarm 898 LAP
26

CYCLE ILLEGAL SHAPE DESIGN. will occur. Case (Ι) is correct, while case (ΙΙ) will cause
o.

O
N

the alarm.
C
al

K
ri

ZA
Se

(Ⅰ)
(Ⅱ)
IM

(B’)
(C)
K

(A) (A)
ZA
A
M

(C)
YA
3

(B) (B)
01
)2
(c

TEP134
ht
ig

9. M-codes in the program section designated by P and Q are only effective in the mode of
yr

G70 (finishing). They are ignored in the cycle of G71 (also G72 and G73).
op
C

12-12
Serial No. 269443

PROGRAM SUPPORT FUNCTIONS 12


10. Cutting path is as shown below.

B
A
30
1
4 ∆d
3 29 5
13

19 2 14
12 6
24 20 10 9 8 18
7
11 21 A’
23 25 17 15
22
16
28 27 26

.
d
ve
er
TEP135

s
re
5. Sample programs

ts
gh
ri
ll
Cutting depth: 5.

.A
10 40 30 30 2 Escape distance: 1.

N
Workpiece Finishing allowance X: 2.

O
Z: 2.

TI
43

A
R
94

φ140 φ120
PO

φ60 φ160
26

R
o.

O
N

C
al

Unit: mm
ri

ZA
Se

A
IM
K

N001 G00 G96 G98;


ZA

N002 G28 U0 W0;


A

N003 X160.Z2.;
M

N010 G71 U5.R1.;


YA

N011 G71 P012 Q016 U4.W2. F150 S150 M03;


3

N012 G00 X60.S200;


01

N013 G01 Z-30.F100;


)2

N014 G03 X120.Z-60.R30.;


(c
ht

N015 G01 W-40.;


ig

N016 X140.W-10.;
yr

N017 G70 P012 Q016;


op

N018 G28 U0 W0 M05;


C

N019 M30;

12-13
Serial No. 269443

12 PROGRAM SUPPORT FUNCTIONS

12-2-2 Transverse roughing cycle: G72

1. Programming format
G72 W∆d R_;
G72 A_ P_ Q_ U_ W_ F_ S_ T_;
W∆d : Depth of cut
* For other addresses see the description given for G71.

∆d
B A

.
d
ve
er
s
re
ts
gh
ri
Tool path

ll
.A
Programmed contour

N
U/2

O
C

TI
∆w TEP136
43

A
R
94

In G72, parameter TC4 will determine whether escape at 45° from wall should be selected or not
PO
26

in the cycle as in G71. By setting 2 for TC4, feed can be accelerated in up-going slope. (Refer to
R
o.

parameter TC3.)
N

The contour of machining by G72 may be one of the four combinations below.
al

Machining is basically executed by feed motions along the X-axis. Finishing allowances U and
ri

ZA
Se

W∆w may have different signs.


A
IM
K

U<0 (C) (C) U<0


ZA

∆w > 0 ∆w < 0
A
M
YA

X
3

(B) (A) (A) (B)


01
)2

(B) (A) (A) (B)


(c

Z
ht
ig
yr

U<0 U>0
op

∆w < 0 (C) (C) ∆w < 0 TEP137


C

- The section from A to B must be of a single-axis movement on the Z-axis and is to be described
in the block designated with P.
- The maximum permissible number of blocks for the finishing contour from B to C is 100,
including blocks automatically inserted by the NC.
- Depending upon whether the modal for the block of the motion from A to B is G00 or G01, the
infeed on the Z-axis is repeated by rapid motion or cutting feed during the roughing cycle.
- Nose radius compensation amount will be added to the finishing allowances U and W∆w.

12-14
Serial No. 269443

PROGRAM SUPPORT FUNCTIONS 12


2. Sample programs

8 10 11 20 21 10

+X

+Z

. d
ve
φ176 φ120 φ82 φ35

er
Unit: mm

s
re
ts
gh
N001 G00 G96 G98;

ri
N002 G28 U0 W0;

ll
N003 T001001;

.A
N004 X176.Z2.;

N
N010 G72 W7.R1.;

O
TI
N011 G72 P012 Q018 U4.W2. F100 S100 M3;
43

N012 G00 Z-80.S150; A


R
94

PO

N013 G01 X120.W8.F100;


26

N014 W10.;
R
o.

N015 X82.W11.;
N

N016 W20.;
al

K
ri

ZA

N017 X35.W21;
Se

N018 W12.;
A
IM

N019 G70 P012 Q018;


N020 G28 U0 W0 M5;
K
ZA

N021 M30;
A
M
YA
3
01
)2
(c
ht
ig
yr
op
C

12-15
Serial No. 269443

12 PROGRAM SUPPORT FUNCTIONS

12-2-3 Contour-parallel roughing cycle: G73

1. Overview
This function allows efficient execution in roughing when cast or forged parts are to be cut along
the finishing contour.

∆k + ∆w
∆w

∆i + ∆u/2

. d
(A) ∆u/2

ve
s er
(C)

re
ts
∆u/2

gh
(B)

ri
∆w

ll
.A
TEP138

N
O
2. Programming format

TI
43

G73 U∆i W∆k Rd;


A
R
94

PO

G73 P_ Q_ U∆u W∆w F_ S_ T_;


26

R
o.

∆i : Escape distance and direction along the X-axis (in radius value)
O
N

The value is modal and remains valid until it is overwritten with a new value.
al

∆k : Escape distance and direction along the Z-axis


ri

ZA
Se

The value is modal and remains valid until it is overwritten with a new value.
A
IM

d : Number of divisions
This denotes the number of roughing operations to be repeated. The value is modal and
K

remains valid until it is overwritten with a new value.


ZA

* For other addresses see the description given for G71.


A
M

Note: Even if F- and S-codes exist in the program section designated by P and Q, they are
YA

considered as for the finishing cycle only and, therefore, ignored in the roughing cycle.
3
01
)2
(c
ht
ig
yr
op
C

12-16
Serial No. 269443

PROGRAM SUPPORT FUNCTIONS 12


3. Detailed description
- Finishing contour
The finishing program has to describe the contour A→B→C as shown in the figure below.
The section from B to C must be monotonic increasing or decreasing on both the X- and Z-axis.
- One cycle configuration
A cycle is composed as shown below.

[1]: Copying movements according


to the finishing contour.
[2]: Returning in rapid motion
[2] (R)

.d
A

ve
[1]

er
[1]

s
re
[1]

ts
C
[1]

gh
[1]

ri
ll
.A
B

N
TEP139

O
TI
- Nose radius compensation
43

A
If a roughing cycle command is given in the mode of nose radius compensation, the roughing
R
94

PO

cycle operations are executed for the finishing contour accordingly offset with the compen-
26

sation being temporarily canceled, and upon completion of the roughing, the compensation
R
o.

mode is retrieved (for the first block of the finishing cycle).


N

C
al

- Infeed direction
ri

ZA

The shift direction for the infeed is determined by the shape in the finishing program, as shown
Se

in the table below.


IM

1 2 3 4
K
ZA
A

A1 A1
M

C C
A A C
Trace
YA

C
A A
A1 A1
3
01

TEP140
)2

Initial X-axis “–” direction – + +


(c

Overall Z-axis “–” direction + + –


ht

X-axis cutting “+” direction + – –


ig
yr

Z-axis cutting “+” direction – – +


op
C

12-17
Serial No. 269443

12 PROGRAM SUPPORT FUNCTIONS

4. Parameter
- The X-axis escape distance and direction can be set by parameter TC117, whose value will be
overridden with the programmed value.
- The Z-axis escape distance and direction can be set by parameter TC118, whose value will be
overridden with the programmed value.
- The number of divisions can be set by parameter TC72, whose value will be overridden with
the programmed value.

5. Remarks
- The contour-parellel roughing cycle is executed using the F-, M-, S- and T-functions specified

d.
ve
in or before the G73 block, in stead of those existing in the program section designated by P

er
and Q.

s
re
- There are four patterns of machining as shown below. Take care to asign correct signs to the

ts
∆u, ∆w, ∆i and ∆k values.

gh
ri
ll
∆u > 0 ∆u > 0

.A
∆w < 0 ∆w > 0

N
∆i > 0 ∆i > 0

O
∆k < 0 ∆k > 0

TI
43

A
R
94

PO
26

R
o.

O
N

C
al

K
ri

ZA
Se

A
IM
K
ZA

∆u < 0 ∆u < 0
∆w ∆w
A

< 0 > 0
M

∆i < 0 ∆i < 0
YA

∆k < 0 ∆k > 0
3

D732S0014
01

∆i and ∆k, and ∆u and ∆w, are both specified with addresses U and W, respectively. The
)2
(c

differentiation is given by whether P and Q are specified in the same block. That is, addresses
ht

U and W without P and Q in a G73 block refer to ∆i and ∆k, while those with P and Q denote ∆u
ig

and ∆w, respectively.


yr
op

- When the cycle terminates, the tool is returned to point A.


C

- If the contour-parellel roughing cycle is executed in the nose radius compensation mode where
the tool nose center is aligned with the starting point, the amount of nose radius compensation
is added to ∆u and ∆w.
- Others are as with G71.

12-18
Serial No. 269443

PROGRAM SUPPORT FUNCTIONS 12


6. Sample programs

90

75

50 2 3 3
30 5

.
d
φ170

ve
er
φ150

s
re
4

ts
4

gh
2

ri
+X

ll
.A
(φ120) φ80 φ50

N
+Z

O
TI
43

A Unit: mm
R
94

PO
26

R
o.

N010 G00 G96 G98;


O
N

N011 G28 U0 W0;


al

N012 T001001;
ri

ZA
Se

N013 X150.Z5.;
A

N014 G73 U8.W6.R3.;


IM

N015 G73 P016 Q020 U4.W2. F150 S100 M3;


K

N016 G00 X50.;


ZA

N017 G01 Z-30;


A

N018 X80.Z-50.;
M

N019 Z-75.;
YA

N020 X120.Z-90.;
3

N021 G70 P016 Q020;


01

N022 G28 U0 W0 M5;


)2

N023 M30.;
(c
ht
ig
yr
op
C

12-19
Serial No. 269443

12 PROGRAM SUPPORT FUNCTIONS

12-2-4 Finishing cycle: G70


After roughing by the commands G71 to G73, finishing can be initiated by the following
programming format.
G70 A_ P_ Q_ ;

A : No. of the finishing contour program (program being executed in default)


P : Head sequence No. for finishing contour (program head in default)
Q : End sequence No. for finishing contour (end of program in default)
Up to an M99 block if it is read before the block designated with Q.

- The finishing cycle is executed using the F-, S- and T-functions specified in the program

d.
section that is designated with A, P and Q.

ve
er
- When a G70 cycle is completed, the tool returns to the starting point in rapid motion and the

s
re
next block is read.

ts
Example 1: Designation of sequence

gh
numbers only M

ri
N100 G70 P200  Q300; N200!!!;

ll
N110 M

.A
N120 N300!!!;

N
M

O
N200

TI
M Description of the finishing contour
43

A N300
R
94

N310
PO

M
26

R
o.

O
N

C
al

Example 2: Designation of a program


K
ri

ZA

number
Se

M
IM

N100 G70 A100;


N110!!!;
K

N120!!!; O100
ZA

M G01 X100 Z50 F0.5;


A

M
M

M99;
YA
3
01
)2

In both examples 1 and 2, the N110 block is executed after the execution of the N100 cycle.
(c
ht
ig
yr
op
C

12-20
Serial No. 269443

PROGRAM SUPPORT FUNCTIONS 12


12-2-5 Longitudinal cut-off cycle: G74

1. Overview
This function is used for smooth disposal of machining chips in longitudinal cut-off machining.
For SS materials which produce hard-to-cut machining chips this function can be managed for
easy machining chip disposal.

2. Programming format
G74 Re;
G74 Xx/Uu Zz/Ww P∆i Q∆k R∆d Ff Ss Tt;

.d
ve
e : Return distance

er
The value is modal and remains valid until it is overwritten with a new value.

s
x/u : Final X-axis position in absolute/incremental data

re
z/w : Final Z-axis position in absolute/incremental data

ts
gh
∆i : X-axis movement step (in an absolute value)

ri
∆k : Z-axis depth of cut (in an absolute value)

ll
∆d : Tool escape distance at the bottom of cut

.A
Normally set in an absolute value. When omitting the arguments X/U and P, however, set

N
O
the value with a sign as required for the direction of escape.

TI
f : Feed function (rate of feed)
43

s : Spindle function
A
R
94

PO

t : Tool function
26

R
o.

The distance “e” is set by parameter TC74 (pecking return distance in grooving process).
O
N

C
al

K
ri

ZA
Se

A ∆d
IM
K
ZA

∆i
A
M

U
YA

2
3
01
)2
(c
ht
ig
yr

e
op

∆k
C

Z W

TEP141

12-21
Serial No. 269443

12 PROGRAM SUPPORT FUNCTIONS

3. Detailed description
1. X (U), P and R (∆d) are not required for drilling.

15 15 15

.
d
ve
er
G00 X0 Z5.0;

s
50 5 G74 Z-50.0 Q15.0 F0.2;

re
ts
TEP142

gh
ri
2. No escape motion is performed in default of R (∆d).

ll
Normally set the R (∆d) data in an absolute value. When omitting the arguments X (U) and P

.A
for outside turning or inside boring, however, set the data with a sign as required for the

N
O
direction of escape.

TI
43

A
R
94

Four combinations of G74


PO
26

R
o.

O
N

C
al

K
ri

ZA
Se

(B) (A)
IM
K
ZA

(D) (C)
A
M
YA
3
01
)2
(c

∆d > 0 for (A), (B)


ht

∆d < 0 for (C), (D)


ig
yr

TEP143
op
C

3. In the single-block operation mode, all the blocks are executed step by step.

12-22
Serial No. 269443

PROGRAM SUPPORT FUNCTIONS 12


4. Remarks
1. In the single-block operation mode, all the blocks are executed step by step.
2. Omission of address X (U), P and R (∆d) provides the operation of Z-axis alone, resulting in
a deep-hole drilling cycle.
3. “e” and “∆d” are both specified with address R. The differentiation is given by whether Z (W)
is commanded together or not. That is, the R value given with Z (W) is processed as “∆d”.
4. The cycle operation is initiated by a G74 block containing the Z (W) data.

5. Sample programs

.d
ve
er
s
re
ts
gh
40

ri
ll
+X

.A
(φ160)

N
O
φ50 φ100

TI
+Z
43

A
R
94

PO

Unit: mm
26

R
o.

O
N

G00 G96 G98;


al

G28 U0 W0;
ri

ZA
Se

X100.Z2.;
A

G74 R2.;
IM

G74 U-50.Z-40.P5.Q7.F150 S100 M3;


K

G28 U0 W0;
ZA

M30;
A
M
YA
3
01
)2
(c
ht
ig
yr
op
C

12-23
Serial No. 269443

12 PROGRAM SUPPORT FUNCTIONS

12-2-6 Transverse cut-off cycle: G75

1. Overview
This function is used for smooth disposal of machining chips in transverse cut-off machining.
This allows easy disposal of machining chips in face turning as well.

2. Programming format
G75 Re ;
G75 X(U)_ Z(W)_ P_ Q_ R∆d F_ S_ T_ ;

G75 executes cycle operaitons as shown below.

.
d
ve
er
A

s
re
P

ts
e

gh
ri
ll
U

.A
2

N
O
TI
43

A
R
94

PO

Q
26

Z W ∆d
R
o.

X TEP144
O
N

C
al

K
ri

ZA
Se

A
IM
K
ZA
A
M
YA
3
01
)2
(c
ht
ig
yr
op
C

12-24
Serial No. 269443

PROGRAM SUPPORT FUNCTIONS 12


3. Detailed description
1. Z (W), Q, and R∆d are not required for grooving on the outside or inside cylinder surface.

G00 X105.0 Z-60.0;


G75 X90.0 P2.0 F0.05;

.
d
φ100

ve
60
φ90

s er
re
ts
TEP145

gh
ri
2. No escape motion is performed in default of R∆d.

ll
Normally set the R∆d data in an absolute value. When omitting the arguments Z (W) and Q

.A
for facing, however, set the data with a sign as required for the direction of escape.

N
O
TI
43

Four combinations of G75


A
R
94

PO
26

R
o.

(C)
N

(A)
al

K
ri

ZA

∆d ∆d
Se

A
IM
K
ZA

∆d ∆d
A
M

(D)
(B)
YA
3
01
)2
(c

∆d > 0 for (A), (B)


∆d < 0 for (C), (D)
ht
ig

TEP146
yr
op

3. In the single-block operation mode, all the blocks are executed step by step.
C

12-25
Serial No. 269443

12 PROGRAM SUPPORT FUNCTIONS

4. Remarks
1. Both G74 and G75, which are used for cutting off, grooving or drilling, are a cycle to give the
escape of a tool automatically. Four patterns which are symmetrical with each other are
available.
2. The return distance “e” can be set by parameter TC74, whose value will be overridden with
the programmed value.
3. In the single-block operation mode, all the blocks are executed step by step.

5. Sample programs

.
d
15 20

ve
+X

ser
re
ts
+Z

gh
ri
ll
.A
N
O
TI
43

φ70
A φ100
R
94

Unit: mm
PO
26

R
o.

G00 G96 G98;


N

G28 U0 W0;
al

K
ri

X102.Z-20.;
ZA
Se

G75 R2.;
A
IM

G75 W-15.X70.P6.Q5.F150 S100 M3;


G28 U0 W0;
K
ZA

M30;
A
M
YA
3
01
)2
(c
ht
ig
yr
op
C

12-26
Serial No. 269443

PROGRAM SUPPORT FUNCTIONS 12


12-2-7 Compound threading cycle: G76

1. Cycle configuration

U
2

. d
ve
s er
∆d

re
ts
gh
i

ri
X k
TC82

ll
.A
N
O
TI
W
43

Z A
R
94

PO
26

Feed (by F- or E-code) TC82: Length of thread run-out (Parameter)


R
o.

Rapid traverse
O

TEP147
N

C
al

K
ri

ZA
Se

Tool tip
A
IM

a
K

∆d
ZA

∆d n
A

1. cut
M

2. cut k
YA

d = SU105 3. cut
3

n-th cut
01

SU105: Thread finishing allowance


(Parameter) (Diameter value)
)2
(c

d/2
ht
ig

TEP148
yr
op
C

12-27
Serial No. 269443

12 PROGRAM SUPPORT FUNCTIONS

2. Programming format
G76 Pmra Rd; (omission allowed)
G76 Xx/Uu Zz/Ww Ri Pk Q∆d Fl S_ T_;

m : Repeat times of final finishing (1 to 99)


The value is modal and remains valid until it is overwritten with a new value.
r : Length of thread run-out
Express in a two-digit number (00 to 99) the tenfold of that multiplier to the thread lead (l)
which produces the desired length of run-out.
The value is modal and remains valid until it is overwritten with a new value.
a : Tool tip angle (thread angle)

d .
Choose an angle from among 80°, 60°, 55°, 30°, 29° and 0°, and set the numeric value in

ve
er
two digits. The value is modal and remains valid until it is overwritten with a new value.

s
d : Finishing allowance

re
The value is modal and remains valid until it is overwritten with a new value.

ts
gh
i : Radial difference of threading portion

ri
Set i = 0 for parallel thread cutting.

ll
k : Thread height (along the X-axis, in radius value)

.A
∆d : First cutting depth (in radius value)

N
l : Lead of thread (as with the threading by G32)

O
TI
S, T : As with G71
43

Note:
A
“m”, “r” and “a” are commanded together by address P.
R
94

PO

When m = 2 (times), r = 1.2 (× Lead) and a = 60 (deg.), set the argument P as follows:
26

P 02 12 60
o.

O
N

m r a
C
al

K
ri

ZA
Se

A
IM
K
ZA
A
M
YA
3
01
)2
(c
ht
ig
yr
op
C

12-28
Serial No. 269443

PROGRAM SUPPORT FUNCTIONS 12


3. Detailed description
- Length of thread run-out can be set by parameter TC82 by 0.1 × L units in a range 0.1 × L to
4.0 × L (L as lead).
- Depth of cut is determined with ∆d for initial cut, and ∆d n for n-th cut to have a constant
depth for each cut.

Four combinations of G76

.
(C) (A)

d
ve
ser
re
ts
gh
ri
ll
(D) (B)

.A
N
O
TI
43

A
R
94

PO
26

i < 0 for (A), (D)


F- or E-code command
R

i > 0 for (B), (C)


o.

Rapid traverse
N

TEP149
C
al

K
ri

ZA
Se

A
IM
K
ZA
A
M
YA
3
01
)2
(c
ht
ig
yr
op
C

12-29
Serial No. 269443

12 PROGRAM SUPPORT FUNCTIONS

- One cycle configuration


The tool moves at rapid feed for operations [1], [2], [5] and [6] in the cycle and at the cutting
feed based on the value designated to F for operations [3] and [4].

z w

[6] [1]

[5]
U
[2]
2
[4]

.
d
[3]

ve
er
(–i)
k

s
re
r
x

ts
a°/2
When R is negative

gh
TEP151

ri
ll
.A
z w

N
S

O
[6] [1]

TI
[5]
43

A
R
94

[2]
PO

U
26

2
R
o.

k
O
N

[4] [3]
C
al

K
ri

ZA

i
a°/2
Se

r
IM

x
K

When Ri is positive TEP152


ZA
A
M

∆d for first
YA

cutting pass
3


01

Second
)2

cutting n-th
pass cutting
(c

k ∆d × 2 pass
ht

∆d × n
ig
yr
op
C

“Finishing allowance d”/2


(cutting results for “m”
number of passes)

TEP153’

12-30
Serial No. 269443

PROGRAM SUPPORT FUNCTIONS 12


4. Remarks
1. When the feed hold button is pressed during execution of a G76 cycle, undergoing
threading is either not stopped till completion of the next step or immediately changed into
run-out and then stopped (according to the setting of bit 2 of parameter F111), as is the
case with G92. (The feed hold lamp will not light up at all.) If threading is not being carried
out, the feed hold state is immediately established and the feed hold lamp lights up.
2. During execution of a G76 cycle the machining does not stop till completion of operations [1],
[4] and [5] when the mode is switched to another automatic mode or to a manual operation
mode, or in the single-block operation mode.
3. During a G76 cycle, validity or invalidity of dry run will not be changed while threading is

.
d
under way.

ve
er
4. In the single-block operation mode, all the blocks are executed step by step. For blocks of

s
re
threading, however, the subsequent block is continuously executed.

ts
5. For machines with the optional function for automatic correction of threading start position,

gh
the thread cutting conditions can be changed by “overriding” the spindle speed.

ri
See Subsection 5-10-6 for more information.

ll
.A
N
O
+X

TI
43

E A A
R
U
94

B
PO

2
26

a ∆d
R
o.

D
O

B
N

i k k
C

x
al

C
K

2
ri

ZA

r d/2
Se

+Z C
A
IM

z w
K
ZA
A

Rapid traverse
M
YA

Cutting feed
3

D732S0016
01
)2

5. Parameter
(c
ht

- The number of repeatitions of final finishing can be set by parameter TC81, whose value will be
ig

overridden with the programmed value.


yr

- Length of thread run-out can be set by parameter TC82, whose value will be overridden with
op
C

the programmed value.


- The tool tip angle can be set by parameter TC80, whose value will be overridden with the
programmed value.
- The finishing allowance can be set by parameter SU105, whose value will be overridden with
the programmed value.

12-31
Serial No. 269443

12 PROGRAM SUPPORT FUNCTIONS

6. Detailed description
- Setting the tool tip angle provides the machining of a single tip, permitting the decrease in a
load applied to the tool tip.
- Cut amount is held constant by setting the first cut depth as ∆d and n-th cut depth as ∆d n.

Tool tip

a
B
∆d
First cut ∆d n

d.
Second cut

ve
Third cut k

er
n-th cut

s
re
ts
d/2

gh
ri
D732S0017’

ll
.A
- According to the sign of each address, four patterns are available, and inside thread can also

N
be cut.

O
TI
- Threading cycle provides the cutting feed designated by the F- or E-code only from C to D, and
43

A
R
rapid traverse for other movements.
94

PO
26

- For the cycle shown above, the signs of increment are as follows:
R
o.

u, w ...............According to the direction of paths A→C and C→D.


N

i......................According to the direction of path A→C.


al

K
ri

k.....................Plus (always plus)


ZA
Se

∆d ..................Plus (always plus)


A
IM

- Finishing allowance (d; diameter value) can be set by parameter (SU105) within the range as
K

follows:
ZA

0 to 65.535 mm (6.5535 inches)


A
M
YA
3
01
)2
(c
ht
ig
yr
op
C

12-32
Serial No. 269443

PROGRAM SUPPORT FUNCTIONS 12


7. Sample programes

+X

80 20
+Z

1.8

d .
ve
φ60.64

er
φ68 φ100

s
1.8

re
3.68

ts
6

gh
0.1

ri
ll
.A
N
Unit: mm

O
TI
43

G00 G97 G99;


A
R
94

PO

G28 U0 W0;
26

S500 M3;
R
o.

X100.Z20.;
N

C
al

G76 P011060 R0.2;


K
ri

ZA

G76 X60.64 Z-80.P3.68 Q1.8 F6.0;


Se

G28 U0 W0 M5;
IM

M30;
K
ZA
A
M
YA
3
01
)2
(c
ht
ig
yr
op
C

12-33
Serial No. 269443

12 PROGRAM SUPPORT FUNCTIONS

8. Notes
1. For G76 cycle, the notes on threading are as with G32 and G92 threading. The feed hold
function causes the threading operation to be changed immediately into run-out (when F111
bit 2 = 1), as described in item 3 below.
Refer to G92 threading cycle for details.
2. The angle of run-out can be set in parameter F28 within a range from 0° to 89°, but only 45°
or 60° can actually be applied.
Setting of 90° or more validates 45°.
Setting of 0° to 45° and of 46° to 89° is taken respectively as that of 45° and 60°.
3. According to a parameter (F111 bit 2), the feed hold function brings the current threading

d .
operation in one of the following ways to a stop:

ve
- After continued execution of the next block, or

ser
- After run-out operation started immediately at an angle of 60°.

re
The feed is stopped immediately except during threading.

ts
gh
Pressing the cycle start button again causes the tool to be returned in rapid motion by

ri
simultaneous control of the X- and Z-axis to the starting point, and the cycle operation is

ll
continued.

.A
N
4. An alarm occurs in the cases below.

O
- Either X or Z is not specified.

TI
43

- The displacement distance on the X- or Z-axis is 0.


A
R
94

- The thread angle exceeds the range from 0° to 120°.


PO
26

5. In the single-block operation mode, all the blocks are executed step by step. For blocks of
R
o.

threading, however, the next block is also executed in sequence.


N

C
al

6. The data items designated with P, Q and R are differentiated by whether addresses X (U)
K
ri

ZA

and Z (W) are specified in the same block.


Se

7. The cycle operation is initiated by a G76 block containing the X (U) and Z (W) data.
IM

8. For machines with the optional function for automatic correction of threading start position,
K
ZA

the thread cutting conditions can be changed by “overriding” the spindle speed.
See Subsection 5-10-6 for more information.
A
M
YA

12-2-8 General notes on the compound fixed cycles G70 to G76


3

1. Except for the preset parameters, set all the required parameters or arguments in the blocks
01

of the compound fixed cycle G-codes.


)2
(c

2. Provided that the finishing contour program has been registered in the memory, compound
ht

fixed cycle I commands can be executed in the memory, MDI or tape operation mode.
ig
yr

3. Take care not to use twice in the program concerned the sequence numbers that are to be
op

designated with P and Q in the blocks of G70 to G73 for fetching the description of the
C

finishing contour.
4. The maximum permissible number of blocks for the finishing contour (in the section from P
to Q specified in the blocks G71 to G73) is 100, including blocks automatically inserted by
the NC (for corner chamfering or rounding, nose radius compensation, etc.). If this number
is exceeded, a programming error occurs.
5. The finishing contour to be used for the roughing cycles of G71 to G73 must be monotonic
increasing or decreasing on either of, or both, the X- and Z-axis as appropriate.
6. Blocks without motion commands in the finishing contour section are ignored.

12-34
Serial No. 269443

PROGRAM SUPPORT FUNCTIONS 12


7. N, F, S, M and T commands in the finishing contour section are ignored during roughing.
8. A programming error occurs if any of the following commands are present in the finishing
contour section.
- Commands related to reference point return (G27, G28, G29, G30)
- Threading (G33)
- Fixed cycles
- Skip functions (G31, G37)
9. Subprograms can be called from the blocks in the finishing contour section.
10. Except for threading cycles, operation stops at the ending (starting) point of each block in
the single-block operation mode.

d .
11. Note that the next block upon completion of the G71, G72 or G73 cycle differs depending on

ve
whether a program number or the sequence numbers only are designated.

ser
- Designation of sequence numbers only:

re
The next block is that which follows the M

ts
block designated by Q.

gh
N100 G71 P200 Q500 U_ W_!!!!;

ri
The N600 block is executed in the N200

ll
example upon completion of the cycle. N300 Description of the finishing contour

.A
N400

N
N500

O
N600

TI
43

A
R
94

PO
26

- Designation of a program number:


R

The next block is that which follows the M


o.

O
N

cycle command block. N100 G71 A100 U_ W_!!!!;


C
al

N200
K

The N200 block is executed in the


ri

N300
ZA

example upon completion of the cycle.


Se

N400 O100
A

N10 X100.Z50.;
IM

N20
K
ZA
A
M

12. The next block upon completion of the


YA

M
G70 command is that which follows the N100 !!!!!!!!;
3

command block.
01

N200 !!!!!!!!;
N300 !!!!!!!!;
)2

The N1100 block is executed in the


N400 !!!!!!!!;
(c

example upon completion of the G70


N500 !!!!!!!!;
ht

command.
M
ig
yr

N1000 G70 P200 Q500;(or G70 A100;)


N1100 !!!!!!!!;
op

M
C

13. Manual interruption can be applied during a compound fixed cycle (G70 to G76). However,
upon completion of the interruption, the tool must first be returned to the position where the
interruption was applied and then the compound fixed cycle must be restarted.
If it is restarted without the tool having been returned, all subsequent movements will
deviate by an amount equivalent to the manual interruption amount.
14. Compound fixed cycle commands are unmodal commands and so they must be set every
time they are required.

12-35
Serial No. 269443

12 PROGRAM SUPPORT FUNCTIONS

15. Programming error LAP CYCLE ILLEGAL SHAPE DESIGN. is caused for G71 and G72 if,
because of nose radius compensation, there is no further displacement of the Z-axis in the
second block or a reverse motion on the Z-axis should be made.
16. Prohibited commands in the finishing contour program section (designated with P and Q in
a block of G70 to G73) are as follows:
M98/M99
T-code
G20, G21, G94, G95, G52, G53, G68, G69
G32, G77, G78, G79
G10, G27, G28, G29, G30
17. Take care not to use twice in the program concerned the sequence numbers that are to be

d .
ve
designated with P and Q in the blocks of G70 to G73.

er
18. If the last motion command in the finishing contour program section (designated with P and

s
re
Q in a block of G70 to G73) is for corner chamfering (G01 X_ I_ ) (G01 Z_ K_ ) or corner

ts
rounding (G01 Z_ R_ ) (G01 X_ R_ ), alarm NO DIRECTIVE FOR NEXT MOVE R/C occurs.

gh
19. The block designated with P in a G71, G72 or G73 command must be in the G00 or G01

ri
mode.

ll
.A
20. For a manual “handle” interruption (to shift the tool position) after feed hold during execution

N
of the G70 to G76 cycle, the tool must be returned to the original position before pressing

O
TI
the cycle start button to continue the operation.
43

A
If the operation is restarted without the tool having been returned, all subsequent move-
R
94

PO

ments will be shifted by the amount of the manual interruption.


26

Handle interruption values are cancelled by resetting the NC.


R
o.

O
N

21. The example below is given to show the execution timing of an M- or T-function code
C
al

designated in the command block of G70 to G76.


ri

ZA
Se

N041 G00 X100.Z0;


A

N042 G71 P101 Q103 U0.5 W0.5


IM

D4000 F0.5 S150 M08; N041


K

M
ZA

N101 G01 X90.F0.5;


A
M

N102 Z-20.;
YA

N103 X100.; N042 M08


execution point
3
01
)2

TEP155
(c
ht
ig
yr
op
C

12-36
Serial No. 269443

PROGRAM SUPPORT FUNCTIONS 12

12-3 Hole Machining Fixed Cycles: G80 to G89

12-3-1 Outline

1. Function and purpose


When performing predetermined sequences of machining operations such as positioning, hole
machining, boring and tapping, these functions permit to command in a single block the
machining program which is normaly commanded in several blocks. In other words, they simplify
the machining program.
The following types of fixed cycles for hole machining are available.

d .
ve
Hole machining Hole machining Operation at hole Return
G-code Application

er
axis operation bottom movement

s
G80 — — — — Cancel

re
Cutting feed, Normal/High-speed

ts
G83 Z Dwell Rapid feed
intermittent feed deep hole drilling cycle

gh
Dwell, spindle

ri
G84 Z Cutting feed Cutting feed Tapping cycle
reverse rotation

ll
G85 Z Cutting feed Dwell Cutting feed Boring cycle

.A
Spindle reverse Synchronous tapping

N
G84.2 Z Cutting feed Cutting feed
rotation cycle

O
TI
Cutting feed, Normal/High-speed
G87 X Dwell Rapid feed
43

intermittent feed A deep hole drilling cycle


R
94

Dwell, spindle
G88 X Cutting feed Cutting feed Tapping cycle
PO

reverse rotation
26

G89 X Cutting feed Dwell Cutting feed Boring cycle


R
o.

Spindle reverse Synchronous tapping


N

G88.2 X Cutting feed Cutting feed


C

rotation cycle
al

K
ri

ZA
Se

A fixed cycle mode is cancelled when the G80 or any G-code in the 01 group is set. The various
A

data will also be cleared simultaneously to zero.


IM

Note: In order that it may function correctly, do not give a command of hole machining fixed
K
ZA

cycle in one block together with any one for the following functions (described in this
chapter):
A
M

- Fixed cycle for turning - Subprogram control


YA

- Compound fixed cycle - Macro call


3
01

- Hole machining pattern cycle


)2
(c
ht
ig
yr
op
C

12-37
Serial No. 269443

12 PROGRAM SUPPORT FUNCTIONS

2. Programming format

A. Face hole machining


G8∆ X/U_ C/H_ Z/W_ R_ Q_ P_ F_ K_ M_ D_;
Spindle (for G84.2 only)
M-code
Number of repetitions
Hole machining data
Hole positioning data
Hole machining mode (G83, G84, G84.2, G85)

B. Outside hole machining

d .
ve
G8" Z/W_ C/H_ X/U_ R_ Q_ P_ F_ K_ M_;

er
M-code

s
re
Number of repetitions
Hole machining data

ts
Hole positioning data

gh
Hole machining mode (G87, G88, G88.2, G89)

ri
ll
C. Cancel

.A
N
G80 ;

O
TI
D. Data outline and corresponding address
43

A
R
94

- Hole machining modes:


PO
26

These are the fixed cycle modes for drilling (G83, G87), tapping (G84, G84.2, G88, G88.2) and
R
o.

boring (G85, G89).


O
N

These are modal commands and once they have been set, they will remain valid until another
al

hole machining mode command, the cancel command for the hole machining fixed cycle or a G
ri

ZA
Se

command in the 01 group is set.


A
IM

- Hole positioning data:


These are for the positioning of the X(Z)- and C-axes.
K
ZA

These are unmodal data, and they are commanded block by block when the same hole
machining mode is to be executed continuously.
A
M

- Hole machining data:


YA

These are the actual machining data.


3

Except for Q, they are modal. Q in the G83 or G87 command is unmodal and is commanded
01

block by block as required.


)2

- Number of repetitions:
(c
ht

This number is designated for machining holes at equal intervals when the same cycle is to be
ig

repeated.
yr

The setting range is from 0 through 9999 and the decimal point is not valid.
op

The number is unmodal and is valid only in the block in which it has been set. When this
C

number is not designated, it is treated as K1. When K0 is deisgnated, the hole machining data
are stored in the memory but no holes will be machined.
- M-code:
Commanding M210 causes M-code for C-axis clamping to be outputted at the start of operation
2 (described later), and M-code for C-axis unclamping to be outputted at the end of operation 5.
For G84 (G88) and G84.2 (G88.2), M-code for the direction of spindle revolution is specified. If
not specified, the preset data of the respective parameter will be used.

12-38
Serial No. 269443

PROGRAM SUPPORT FUNCTIONS 12


- Spindle (for G84.2 only):
Use the address D as follows to specify the spindle used for hole machining. The default value
is “0” (Milling spindle selection).
Spindle used for hole machining
Argument D
For Upper turret For Lower turret
0 Milling spindle
1 Turning spindle 1 Turning spindle 2
2 Turning spindle 2 Turning spindle 1

Address Signification
G Selection of hole machining cycle sequence (G80, G83, G84, G84.2, G85, G87, G88, G88.2, G89)

.d
X/U, (Z/W)*, C/H Designation of hole position initial point (absolute/incremental value)

ve
Z/W, (X/U)* Designation of hole bottom position (absolute/incremental value from reference point)

er
R Designation of R(apid feed)-point position (incremental value from initial point) (sign ignored.)

s
re
Designation of cut amount for each cutting pass in G83 (G87); always incremental value, radial

ts
Q value (sign ignored, decimal point can be commanded in T32 compatible mode, but not in

gh
Standard mode)
Designation of dwell time at hole bottom point; relationship between time and designated value is

ri
P
same as for G04.

ll
.A
F Designation of feed rate for cutting feed

N
K Designation of number of repetitions, 0 to 9999 (default = 1)

O
M Designation of M-code

TI
D Selection of the spindle used for hole machining (for G84.2 only)
43

A
R
* Addresses in parentheses apply for commands G87, G88 and G89.
94

PO
26

E. Use of the hole machining fixed cycles on the 2nd spindle side
R
o.

O
N

The hole machining fixed cycles can also be used for the lower turret on the 2nd spindle side with
C
al

the aid of the related G-code (G109 L2).


ri

ZA
Se

3. Outline drawing
A
IM

The hole machining axes for the hole machining fixed cycle and the positioning are shown in the
K

outline drawing below.


ZA
A

During the hole machining cycle,


M

the C-axis (spindle) is clamped so


YA

that it does not move.


3
01

z4
)2

Rotary tool for Z-axis


[3]
(c

[4] r4
ht

[1]
ig

q4
[2]
yr
op

q2
x4
C

r2 Rotary tool
z2 for X-axis
x2 +X +Z
C

[1] G83 Xx1 Cc1 Zz1 Rr1 Qq1 Pp1 Ff1 Kk1 ;
[2] G83 Xx2 Cc2 Zz2 Rr2 Qq2 Pp2 Ff2 Kk2 ;
[3] G87 Zz3 Cc3 Xx3 Rr3 Qq3 Pp3 Ff3 Kk3 ;

12-39
Serial No. 269443

12 PROGRAM SUPPORT FUNCTIONS

4. Operations
There are 7 actual operations which are each described in turn below.

Operation 1 Operation 2 Initial point

Operation 3
Operation 7
R-point

Operation 6
Operation 4

.
d
ve
Operation 5
TEP156

er
s
re
Operation 1 : Positionning by rapid feed to the X(Z) and C-axis initial point

ts
Operation 2 : Output of the M-code for C-axis clamping if it is set

gh
Operation 3 : Positionning to the R-point by rapid traverse

ri
Operation 4 : Hole machining by cutting feed

ll
.A
Operation 5 : Operation at the hole bottom position which differs according to the fixed cycle

N
mode. Possible actions include rotary tools reverse rotation (M204), rotary tools

O
forward rotation (M203) and dwell.

TI
43

Operation 6 : Return to the R-point A


R
94

Operation 7 : Return to the initial point at rapid feed


PO
26

(Operation 6 and 7 may be a single operation depending on the fixed cycle mode.)
R
o.

Whether the fixed cycle is to be completed at operation 6 or 7 can be selected by the user
O
N

parameter F162 bit 3.


al

Parameter F162 bit 3 = 0: Initial level return


ri

ZA
Se

Parameter F162 bit 3 = 1: R-point level return


A
IM
K
ZA
A
M
YA
3
01
)2
(c
ht
ig
yr
op
C

12-40
Serial No. 269443

PROGRAM SUPPORT FUNCTIONS 12


12-3-2 Face/Outside deep hole drilling cycle: G83/G87

1. When the Q command is present (deep hole drilling)


G83(G87)X(Z)_ C_ Z(X)_ Rr Qq Pp Ff Kk Mm ;

Parameter F162 bit 3 = 0 Parameter F162 bit 3 = 1

Initial point
Initial point (Mβ) (Mα)
(Mα)
r
r

R-point
R-point q (Mβ)

.
q

d
ve
d
d q

er
q d
d

s
re
q
q

ts
(P)

gh
(P) Z point Z point

ri
D740PB0029

ll
.A
- Return distance “d” is set by the parameter (F12: Pecking return distance in drilling process).

N
The tool returns at rapid traverse.

O
- (Mα): The C-axis clamping M-code (Mm) is outputted here if specified.

TI
43

- (Mβ): The C-axis unclamping M-code (C-axis clamp M-code + 1 = Mm+ 1) is output
A
R
94

when there is a C-axis clamping M-code command (Mm).


PO
26

- (P): Dwell is performed for the duration equivalent to the time designated by P.
R
o.

2. When the Q command is not present (drilling)


N

C
al

G83 (G87) X(Z)_ C_ Z(X)_ R_ P_ F_ K_ M_ ;


ri

ZA
Se

Parameter F162 bit 3 = 0 Parameter F162 bit 3 = 1


IM

Initial point
K

(Mβ) Initial point


ZA

(Mα) (Mα)
A
M
YA

R-point R-point (Mβ)


3
01
)2
(c

Z point (P) Z point (P)


ht
ig

TEP158
yr
op

See 1 for details on (Mα), (Mβ) and (P).


C

12-41
Serial No. 269443

12 PROGRAM SUPPORT FUNCTIONS

12-3-3 Face/Outside tapping cycle: G84/G88


G84 (G88) X(Z)_ C_ Z(X)_ R_ P_ F_ K_ M_ ;

Parameter F162 bit 3 = 0 Parameter F162 bit 3 = 1

Rotary tool Rotary tool

Initial point Initial point


(Mα) (Mα)

R-point (Mβ)
R-point (Mβ)

Forward rotation

.
Forward rotation

d
of rotary tool

ve
of rotary tool

er
Reverse rotation Reverse rotation
Z point (P)

s
of rotary tool of rotary tool Z point (P)

re
TEP159

ts
gh
- (Mα), (Mβ) and (P) are as with G83.

ri
ll
- During the execution G84 (G88), the override cancel status is established and 100 % override

.A
is automatically applied. Dry run is also ignored.

N
O
- When feed hold is applied during the execution of G84 (G88), block stop results after return

TI
43

movement. R
A
94

- The in-tapping signal is output in a G84 (G88) modal operation.


PO
26

R
o.

12-3-4 Face/Outside boring cycle: G85/G89


O
N

G85 (G89) X(Z)_ C_ Z(X)_ R_ P_ F_ K_ M_ ;


al

K
ri

ZA
Se

Parameter F162 bit 3 = 0 Parameter F162 bit 3 = 1


A
IM

Initial point Initial point


K

(Mα) (Mα)
ZA
A
M

R-point (Mβ)
YA

R-point (Mβ)
3

f 2f f 2f
01
)2

Z point (P) Z point (P)


(c
ht

TEP160
ig
yr

- (Mα), (Mβ) and (P) are as with G83.


op

- The tool returns to the R-point at a cutting feed rate which is double the designated feed rate
C

command. However, it does not exceed the maximum cutting feed rate.

12-42
Serial No. 269443

PROGRAM SUPPORT FUNCTIONS 12


12-3-5 Face/Outside synchronous tapping cycle: G84.2/G88.2
G84.2 (G88.2) X(Z)_ C_ Z(X)_ R_ P_ F_ K_ M_ ,C_ ;

Parameter F162 bit 3 = 0 Parameter F162 bit 3 = 1

Rotary tool Rotary tool


Initial point Initial point
(Mα) (Mα)

R-point (Mβ) R-point (Mβ)

Forward rotation Forward rotation

.
of rotary tool

d
of rotary tool

ve
er
Reverse rotation Reverse rotation
of rotary tool Z point (P) of rotary tool Z point (P)

s
re
ts
TEP159

gh
ri
1. Detailed description

ll
.A
- (Mα), (Mβ) and (P) are as with G83.

N
- The spindle is reversed at the hole bottom to perform tapping cycle. During tapping cycle

O
operation by G84.2 (G88.2), feed rate override is ignored. Even if feed hold is applied, the cycle

TI
43

does not stop until the end of return operation. A


R
94

PO

- Specify the special argument C1 with a leading comma (,C1) when the direction of hole
26

machining, that is of the tool’s axial feed, is positive (+Z or +X).


R
o.

O
N

- Tapping cycle and reverse tapping cycle can be performed by specifying spindle normal or
C
al

reverse rotation with M-codes (M03, M04, M203, M204).


K
ri

ZA
Se

Output to the machine side is as follows:


A
IM

Programmed command Z point R point


K

M03 M04 M03


ZA

M04 M03 M04


A

M203 M204 M203


M
YA

M204 M203 M204


3

- As for synchronous tapping on the face (G84.2), the combination of the direction of the Z-axis
01

movement (in the workpiece coordinate system) and that of the spindle rotation determines the
)2

type of tapping: normal or reverse.


(c
ht

Z-axis movement Command for the


ig

Type of tapping direction (in the workpiece direction of spindle


yr

coordinate system) rotation


op

Negative M03/M203
C

Normal tapping
Positive M04/M204
Negative M04/M204
Reverse tapping
Positive M03/M203

Programming example:
1) G00 Z0.
G84.2 Z10. F0.1 M4 ......... Normal tapping
2) G00 Z0.
G84.2 Z–10. F0.1 M4 ....... Reverse tapping

12-43
Serial No. 269443

12 PROGRAM SUPPORT FUNCTIONS

- When G84.2 is commanded by feed per revolution (G95), where the unit of cutting feed rate F
is set to mm/rev or in/rev, tap thread pitch can be commanded directly.
- Give a G88.2 command, in place of G84.2, to use the X-axis as a hole machining axis.
- In tapping cycle (G84), the feed rate of Z-axis per spindle rotation must be equal to the thread
pitch of a tap. This means that the most desirable tapping always fills the following conditions.
P = F/S
P : Tap thread pitch (mm)
F : Z-axis feed rate (mm/min)
S : Spindle speed (min–1)
Spindle rotation and Z-axis feed are independently controlled in tapping cycle (G84). Therefore,

d .
the above condition are not always filled. Spindle rotation and Z-axis feed are both decelerated

ve
and stopped particularly at the hole bottom, and then the spindle and Z-axis move in the

er
reverse direction, giving acceleration.

s
re
Since each acceleration and deceleration are independently performed, the above conditions

ts
are not filled usually. As a result, for improving the accuracy of tapping, it is customary to

gh
compensate the feed by mounting a spring in the tap holder.

ri
ll
On the other hand, for synchronous tapping cycle (G84.2), spinde rotation and Z-axis feed are

.A
controlled so that they are always synchronized. In other words, for normal rotation, the spindle

N
is controlled only in relation to speed. However, for synchronous tapping, position control is

O
TI
given also to spindle rotation. And spindle rotation and Z-axis feed are controlled as the linear
43

A
interpolation of two axes. This fills the condition of P = F/S even in deceleration and accele-
R
94

PO

ration at the hole bottom, permitting tapping of high accuracy.


26

R
o.

2. Remarks
O
N

C
al

1. Synchronous tapping cycle (G84.2) and tapping cycle (G84) differ only in the control method
K
ri

ZA

of spindle when Z-axis moves from point R to point Z and when it does from point Z to point
Se

R. In synchronous tapping, the movement of spindle is detected by the position coder as


IM

shown below, and position control is given. Spindle motor is controlled like a servo motor to
K

give the linear interpolation of two axes of Z-axis and spindle.


ZA

The movement distance of linear interpolation of Z-axis and spindle as well as the feed rate
A

are as given below.


M
YA

Movement distance Feed rate


3
01

z = Distance between point R and point Z


Z-axis Fz = F command value (mm/min, in/min)
(mm, in)
)2
(c

s = z × (S command value / F command


Spindle Fs = S command value (min–1)
value) × 360 (deg)
ht
ig
yr

Synchronous tapping cycle is as with G84 except that it differs from tapping cycle in the
op

control method of spindle when Z-axis moves from point R to point Z and when it does from
C

point Z to point R. Refer to the section of fixed cycle G84 for the notes including
programming.
2. Z-axis is used as a hole machining axis in the above description. Give a G88.2 command to
use the X-axis as a hole machining axis.
Example: G88.2 Z/W_ C/H_ X/U_ R_ F_ ; X-axis is used as a hole machining axis.
3. For synchronous tapping cycle (G84.2), feed rate override is invalid, and it is fixed to 100%.

12-44
Serial No. 269443

PROGRAM SUPPORT FUNCTIONS 12


12-3-6 Hole machining fixed cycle cancel: G80
This command cancels the hole machining fixed cycles (G83, G84, G84.2, G85, G87, G88,
G88.2, G89). The hole machining mode as well as the hole machining data are cancelled.

12-3-7 General notes on the hole machining fixed cycles


1. When the G84 and G88 fixed cycle commands are set, the rotary tool must be rotated in the
designated direction beforehand using a miscellaneous function (M3, M4).
2. If the basic axis, additional axis and R data are present in a block, hole machining is
performed in a fixed cycle mode; it will not be performed if these data are not present.
Even if the X-axis data are present, hole machining will not be executed if a dwell (G04)

.
d
command is present in the block.

ve
3. The hole machining data (Q, P) should be commanded in the block (block including the

ser
basic axis, additional axis and R data) in which the holes are machined.

re
The modal data will not be updated even if these data are commanded in a non-hole

ts
machining block.

gh
ri
4. When resetting is applied during the execution of the G85 (G89) command, the hole

ll
machining data will be erased.

.A
N
5. The hole machining fixed cycles are also cancelled by any G code in the 01 group besides

O
G80. If it is commanded in the same block as the fixed cycle, the fixed cycle will be ignored.

TI
43

m = 01 group code, n = hole machining fixed cycle code


A
R
94

- Gm Gn X(Z)_ C_ Z(X)_ R_ Q_ P_ K_ F_;


PO
26

executed ignored executed ignored memorized


R
o.

O
N

- Gn Gm X(Z)_ C_ Z(X)_ R_ Q_ P_ K_ F_;


C
al

executed ignored executed ignored memorized


ri

ZA
Se

Example: G01 G83 X100.C30.Z50.R–10.Q10.P1 F100.;


A
IM

G83 G01 X100.C30.Z50.R–10.Q10.P1 F100.;


In both cases, G01 X100.C30.Z50.F100. is executed.
K
ZA

6. When a miscellaneous command is set in the same block as the fixed cycle command, it is
A

outputted after the initial positioning.


M

However, the C-axis unclamping M-code (clamp M + 1) is output after the holes have been
YA

machined and the tool returns to the return point.


3
01

When the number of repetitions has been designated, the M command execution in above
)2

condition is exercised only for the initial operation except for the C-axis clamping M-code.
(c

In the case of the C-axis clamping/unclamping M commands, as they are modal, the codes
ht

are outputted with each repetitions until the operation is cancelled by the fixed cycle cancel
ig

command.
yr
op

7. When a tool position offset command (T function) is set in a hole machining fixed cycle
C

mode, execution will follow the tool position offset function.


8. When a hole machining fixed cycle command is set during tool nose radius compensation,
program error occurs.
9. Cutting feed rate by F will be kept after cancelling the drilling cycle.
10. Waiting commands (corresponding M- and P-codes) are all ignored in a hole machining
fixed cycle mode (G83 to G89). Cancel the hole machining fixed cycle mode beforehand
with G80 to give a waiting command.

12-45
Serial No. 269443

12 PROGRAM SUPPORT FUNCTIONS

12-3-8 Sample programs with fixed cycles for hole machining


1. Face deep hole drilling cycle (G83) 5. Outside tapping cycle (G88)
G00 G97 G98; G00 G97 G98;
G28 UW; G28 UW;
M200; M200;
M203 S800; M203 S600;
X100.Z2.C0; X102.Z–50.C0;
G83 X50.H30.Z–20.R5.Q5000 P.2 F200 K3 M210; G88 Z–50.H30.X70.R5.P.2 F300 K3 M203 M210;
G80; G80;
G28 UW; G28 UW;
M30; M30;

d .
2. Face tapping cycle (G84) 6. Outside boring cycle (G89)

ve
G00 G97 G98; G00 G97 G98;

er
G28 UW; G28 UW;

s
re
M200; M200;

ts
M203 S600; M203 S800;

gh
X100.Z2.C0; X102. Z–50.C0;
G84 X50.H30.Z–20.R5.P.2 F300 K3 M203 M210; G89 Z–50. H30.X–70. R5.P.2 F200 K3 M210;

ri
G80; G80;

ll
.A
G28 UW; G28 UW;
M30; M30;

N
O
TI
3. Face boring cycle (G85) 7. Face synchronous tapping cycle (G84.2)
43

G00 G97 G98; A G00 G97 G98;


R
94

G28 UW; G28 UW;


PO
26

M200; M200;
R

M203 S600; M203 S600;


o.

X100.Z2.C0; X100.Z2.C0;
N

G85 X50.H30.Z–20.R5.P.2 F150 K3 M210; G84.2 X50.H30.Z–20.R5.F2.00 K3 M203 M210;


al

G80; G80;
ri

ZA
Se

G28 UW; G28 UW;


A

M30; M30;
IM

4. Outside deep hole drilling cycle (G87) 8. Outside synchronous tapping cycle (G88.2)
K
ZA

G00 G97 G98; G00 G97 G98;


G28 UW; G28 UW;
A
M

M200; M200;
YA

M203 S800; M203 S600


X102. Z–50. C0; X102. Z–50. C0;
3

G87 Z–50.H30.X70.R5.Q5000 P.2 F200 K3 M210; G88.2 Z–50.H30.X70.R5.F2.K3 M203 M210;


01

G80; G80;
)2

G28 UW; G28 UW;


(c

M30; M30;
ht
ig
yr
op
C

12-46
Serial No. 269443

PROGRAM SUPPORT FUNCTIONS 12

12-4 Hole Machining Pattern Cycles: G234.1/G235/G236/G237.1

12-4-1 Overview

1. Function and purpose


Hole machining patterns are used to arrange on a predetermined pattern hole positions at which
to execute a hole-machining cycle.
- Give beforehand a command of the desired hole-machining cycle without any axis positioning
data (which only causes storage of the hole-machining data to be executed at the arranged
hole positions).

.
d
ve
- The execution of this command begins with the positioning to the first one of the arranged holes.

er
The type of hole machining depends on the corresponding cycle designated last.

s
re
- The current mode of hole-machining cycle will remain active over the execution of this

ts
command till it is cancelled explicitly.

gh
ri
- This command will only activate positioning when it is given in any other mode than those of

ll
hole-machining cycle.

.A
- These commands only cause positioning at the speed of the current modal condition (of G-

N
O
code group 01) in default of any preceding hole-machining cycle.

TI
43

Note: Hole machining pattern cycles are only available for machines with the Y-axis control
A
R
94

function. Apply the coordinate conversion function for arranging hole positions in a
PO
26

plane other than the XY-plane.


R
o.

O
N

2. List of hole machining pattern cycles


C
al

K
ri

G-code Description Argument addresses Remarks


ZA
Se

G234.1 Holes on a circle X, Y, I, J, K


A
IM

G235 Holes on a line X, Y, I, J, K


K

G236 Holes on an arc X, Y, I, J, P, K


ZA

G237.1 Holes on a grid X, Y, I, P, J, K


A
M

Note: In order that it may function correctly, do not give a command of hole machining pattern
YA

cycle in one block together with any one for the following functions (described in this
3

chapter):
01
)2

- Fixed cycle for turning - Subprogram control


(c

- Compound fixed cycle - Macro call


ht

- Hole machining fixed cycle


ig
yr

12-4-2 Holes on a circle: G234.1


op
C

As shown in the format below, a command of G234.1 determines a circle of radius “r” around the
center designated by X and Y. The circumference is then divided, beginning from the point of the
central angle “θ”, regularly by “n”, and the hole machining designated beforehand by a fixed cycle
(G83 etc.) will be done around all the vertices of the regular n-gon.
The movement in the XY-plane from hole to hole occurs rapidly (under G00). The argument data
of the G234.1 command will be cleared upon completion of its execution.

12-47
Serial No. 269443

12 PROGRAM SUPPORT FUNCTIONS

1. Programming format
G234.1 Xx Yy Ir Jθ Kn;
X, Y : Coordinates of the center of the circle.
I : Radius (r) of the circle. Always given in a positive value.
J : Central angle (θ) of the first hole. Positive central angles refer to counterclockwise
measurement.
K : Number (n) of holes to be machined. (Setting range: from –9999 to 9999)
The algebraic sign of argument K refers to the rotational direction of the sequential
machining of “n” holes. Set a positive and a negative number respectively for
counterclockwise and clockwise rotation.

2. Sample programes

d.
Given below is an example of G83 hole machining with a figure representing the hole positions.

ve
er
N001 G122.1;

s
re
N002 G83 Z-10. R5. K0. F200;

ts
N003 G234.1 U20. V-30. I20. J20. K-6;

gh
N004 G80;

ri
N005 G123.1;

ll
.A
X

N
O
θ = 20°

TI
43

A Y
R
94

PO
26

r = 20
R
o.

O
N

u = 20
al

K
ri

ZA
Se

n=6
A

Last position before v = –30


IM

G234.1 execution
K

D740PB0022
ZA
A

Use the coordinate conversion function as follows to arrange hole positions in the ZY-plane:
M
YA

N001 G122.1;
N002 G68.5 X0 Y0 Z0 I0 J1 K0 R90.;
3
01

N003 G17 X0 Y0 Z2.5;


)2

N004 G83 Z-10. R5. K0 F200;


(c

N005 G234.1 X20. Y-30. I20. J20. K-6;


ht

N005 G80;
ig

N006 G69.5;
yr
op

N007 G123.1;
C

3. Notes
- Give a G122.1 command as required beforehand to specify in a radius value the X-axis
position in the block of hole machining pattern cycle.
- Use the appropriate axis addresses to designate the axis position in an incremental value.
- The last position of the G234.1 command is on the last one of the arranged holes. Use the
method of absolute data input, therefore, to specify the movement to the position for the next
operation desired. (An incremental command would require a more or less complicated
calculation with respect to that last hole.)

12-48
Serial No. 269443

PROGRAM SUPPORT FUNCTIONS 12


12-4-3 Holes on a line: G235
As shown in the format below, a command of G235 determines a straight line through the
starting point designated by X and Y at the angle “θ” with the X-axis. On this line “n” holes will be
machined at intervals of “d”, according to the current mode of hole machining.
The movement in the XY-plane from hole to hole occurs rapidly (under G00). The argument data
of the G235 command will be cleared upon completion of its execution.

1. Programming format
G235 Xx Yy Id Jθ Kn;
X, Y : Coordinates of the starting point.

d .
I : Interval (d) between holes. Change of sign for argument I causes a centrically

ve
symmetric hole arrangement with the starting point as the center.

er
s
J : Angle (θ) of the line. Positive angles refer to counterclockwise measurement.

re
K : Number (n) of holes to be machined (from 1 to 9999), inclusive of the starting point.

ts
gh
2. Sample programes

ri
ll
Given below is an example of G83 hole machining with a figure representing the hole positions.

.A
N001 G122.1;

N
O
N002 G83 Z–10. R5. K0. F100;

TI
N003 G235 U20. V-10. I25. J30. K3;
43

N004 G80;
A
R
94

PO
26

N005 G123.1;
R
o.

O
N

X
C

n=3
al

K
ri

ZA
Se

Y
A

d = 25
IM

θ = 30°
K
ZA
A

u = 20
M
YA

Last position before


G235 execution v = –10
3
01

D740PB0023
)2
(c

Use the coordinate conversion function as follows to arrange hole positions in the ZY-plane:
ht

N001 G122.1;
ig
yr

N002 G68.5 X0 Y0 Z0 I0 J1 K0 R90.;


op

N003 G17 X0 Y0 Z2.5;


C

N004 G83 Z-10. R5. K0 F200;


N005 G235 X20. Y-10. I25. J30. K3;
N005 G80;
N006 G69.5;
N007 G123.1;

12-49
Serial No. 269443

12 PROGRAM SUPPORT FUNCTIONS

3. Notes
- Give a G122.1 command as required beforehand to specify in a radius value the X-axis
position in the block of hole machining pattern cycle.
- Use the appropriate axis addresses to designate the axis position in an incremental value.
- Omission of argument K or setting “K0” will result in a programming error. A setting of K with
five or more digits will lead to the lowest four digits being used.
- In a block with G235 any words with addresses other than G, L, N, X, Y, U, V, I, J, K, F, M, S, T
and B will simply be ignored.
- Giving a G-code of group 00 in the same block with G235 will cause an exclusive execution of
either code which is given later.

d.
ve
- In a block with G235 a G22 or G23 command will simply be ignored without affecting the

er
execution of the G235 command.

s
re
ts
gh
ri
ll
.A
N
O
TI
43

A
R
94

PO
26

R
o.

O
N

C
al

K
ri

ZA
Se

A
IM
K
ZA
A
M
YA
3
01
)2
(c
ht
ig
yr
op
C

12-50
Serial No. 269443

PROGRAM SUPPORT FUNCTIONS 12


12-4-4 Holes on an arc: G236
As shown in the format below, a command of G236 determines a circle of radius “r” around the
center designated by X and Y. On the circumference “n” holes will be machined, starting from the
point of the central angle “θ”, at angular intervals of “∆θ”, according to the current mode of hole
machining.
The movement in the XY-plane from hole to hole occurs rapidly (under G00). The argument data
of the G236 command will be cleared upon completion of its execution.

1. Programming format
G236 Xx Yy Ir Jθ P∆θ Kn;

d.
X, Y : Coordinates of the center of the arc.

ve
I : Radius (r) of the arc. Always given in a positive value.

ers
J : Central angle (θ) of the first hole. Positive central angles refer to counterclockwise

re
measurement.

ts
P : Angular interval (∆θ) between holes. The algebraic sign of argument P refers to the

gh
rotational direction of the sequential machining of “n” holes. Set a positive and a

ri
negative value respectively for counterclockwise and clockwise rotation.

ll
.A
K : Number (n) of holes to be machined (from 1 to 9999).

N
O
2. Sample programes

TI
43

A
Given below is an example of G83 hole machining with a figure representing the hole positions.
R
94

PO

N001 G122.1;
26

N002 G83 Z–10. R5. K0. F100;


R
o.

N003 G236 U30. V-20. I25. J-70. P30. K5;


N

N004 G80;
al

K
ri

ZA

N005 G123.1;
Se

A
IM

X
K

n=5
ZA

Y
A

∆θ = 30°
M
YA

θ = –70°
3
01

u = 30
)2
(c

Last position before


ht

G236 execution v = –20


ig

D740PB0024
yr
op
C

Use the coordinate conversion function as follows to arrange hole positions in the ZY-plane:
N001 G122.1;
N002 G68.5 X0 Y0 Z0 I0 J1 K0 R90.;
N003 G17 X0 Y0 Z2.5;
N004 G83 Z-10. R5. K0 F200;
N005 G236 X30. Y-20. I25. J-70. P30. K5;
N005 G80;
N006 G69.5;
N007 G123.1;

12-51
Serial No. 269443

12 PROGRAM SUPPORT FUNCTIONS

3. Notes
- Give a G122.1 command as required beforehand to specify in a radius value the X-axis
position in the block of hole machining pattern cycle.
- Use the appropriate axis addresses to designate the axis position in an incremental value.

12-4-5 Holes on a grid: G237.1


As shown in the format below, a command of G237.1 determines a grid pattern of [∆x]∗[nx] by
[∆y]∗[ny] with the point designated by X and Y as starting point. On the grid points the hole
machining designated beforehand by a fixed cycle will be done “nx” in number along the X-axis
at intervals of “∆x”, and “ny” in number along the Y-axis at intervals of “∆y”. The main progression

.
of machining occurs in the X-axis direction.

d
ve
The movement in the XY-plane from hole to hole occurs rapidly (under G00). The argument data

er
of the G237.1 command will be cleared upon completion of its execution.

s
re
ts
1. Programming format

gh
G237.1 Xx Yy I∆x Pnx J∆y Kny;

ri
ll
X, Y : Coordinates of the starting point.

.A
I : Hole interval (∆x) on the X-axis. Set a positive and a negative value to arrange holes

N
in respective directions from the starting point on the X-axis.

O
P : Number (nx) of holes to be arranged on the X-axis (from 1 to 9999).

TI
43

J A
: Hole interval (∆y) on the Y-axis. Set a positive and a negative value to arrange holes
R
94

in respective directions from the starting point on the Y-axis.


PO
26

K : Number (ny) of holes to be arranged on the Y-axis (from 1 to 9999).


R
o.

O
N

2. Sample programs
C
al

Given below is an example of G83 hole machining with a figure representing the hole positions.
ri

ZA
Se

N001 G122.1;
A
IM

N002 G83 Z-10. R5. K0. F20;


N003 G237.1 U30. V20. I25. P3 J-30. K5;
K
ZA

N004 G80;
A

N005 G123.1;
M
YA

X
ny = 5
3
01
)2

Y
(c

∆x = 25
ht

nx = 3
ig
yr
op
C

u = 30
∆y = –30
Last position before
v = 20 G237.1 execution
D740PB0025

12-52
Serial No. 269443

PROGRAM SUPPORT FUNCTIONS 12


Use the coordinate conversion function as follows to arrange hole positions in the ZY-plane:
N001 G122.1;
N002 G68.5 X0 Y0 Z0 I0 J1 K0 R90.;
N003 G17 X0 Y0 Z2.5;
N004 G83 Z-10. R5. K0 F200;
N005 G237.1 X30. Y20. I25. P3 J30. K5;
N005 G80;
N006 G69.5;
N007 G123.1;

3. Notes

d.
- Give a G122.1 command as required beforehand to specify in a radius value the X-axis

ve
er
position in the block of hole machining pattern cycle.

s
re
- Use the appropriate axis addresses to designate the axis position in an incremental value.

ts
- Omission of argument P or K, or setting “P0” or “K0” will result in a programming error. A setting

gh
of K or P with five or more digits will lead to the lowest four digits being used.

ri
ll
- In a block with G237.1 any words with addresses other than G, L, N, X, Y, U, V, I, J, K, F, M, S,

.A
T and B will simply be ignored.

N
O
- Giving a G-code of group 00 in the same block with G237.1 will cause an exclusive execution

TI
of either code which is given later.
43

A
R
94

- In a block with G237.1 a G22 or G23 command will simply be ignored without affecting the
PO
26

execution of the G237.1 command.


R
o.

O
N

C
al

K
ri

ZA
Se

A
IM
K
ZA
A
M
YA
3
01
)2
(c
ht
ig
yr
op
C

12-53
Serial No. 269443

12 PROGRAM SUPPORT FUNCTIONS

12-5 Subprogram Control: M98, M99

1. Function and purpose


Fixed sequences or repeatedly used programs can be stored in the memory as subprograms
which can then be called from the main program when required. M98 serves to call subprograms
and M99 serves to return from the subprogram. Furthermore, it is possible to call other sub-
programs from particular subprograms and the nesting depth can include as many as 8 levels.

Main program Subprogram Subprogram Subprogram Subprogram

. d
O0010; O1000; O1200; O2000; O5000;

ve
er
N20;

s
M98P1000; M98P1200 M98P2000; M98P2500;

re
 Q20;

ts
gh
N60;
M02; M99;  M99; M99P60; M99;

ri
ll
(Level 1) (Level 2) (Level 3) (Level 8)

.A
N
Nesting depth

O
TEP161

TI
43

A
The table below shows the functions which can be executed by adding and combining the tape
R
94

storing and editing functions, subprogram control functions and fixed cycle functions.
PO
26

(○: available ×: not available)


o.

O
N

Case 1 Case 2 Case 3 Case 4


al

1. Tape storing and editing Yes Yes Yes Yes


ri

ZA

2. Subprogram control No Yes Yes No


Se

3. Fixed cycles No No Yes Yes


IM

Function
K

1. Memory operation # # # #
ZA

2. Tape editing (main memory) # # # #


A

3. Subprogram call × # # ×
M
YA

4. Subprogram nesting (*) × # # ×


5. Fixed cycles × × # #
3
01

6. Fixed cycle subprogram editing × × # #


)2

* The nesting depth can include as many as 8 levels.


(c
ht

Note: In order that it may function correctly, do not give a command of subprogram control in
ig

one block together with any one for the following functions (described in this chapter):
yr
op

- Fixed cycle for turning - Hole machining pattern cycle


C

- Compound fixed cycle - Macro call


- Hole machining fixed cycle

12-54
Serial No. 269443

PROGRAM SUPPORT FUNCTIONS 12


2. Programming format
Subprogram call
M98 <_> Q_ L_;
Number of subprogram repetitions (L1 if omitted)
Sequence number in subprogram to be called (head block if omitted)
Program name of subprogram to be called (own program if omitted).
Can only be omitted during memory operation.

Alternatively,
M98 P_ Q_ L_;

.
Number of subprogram repetitions (L1 if omitted)

d
ve
Sequence number in subprogram to be called (head block if omitted)

er
Program number [composed of numerals only] of subprogram to be called (own program if

s
re
omitted). P can only be omitted during memory operation.

ts
Return to main program from subprogram

gh
ri
M99 P_ L_;

ll
Number of times after repetition number has been changed

.A
Sequence number of return destination (returned to block following block of call if omitted)

N
O
TI
3. Creating and entering subprograms
43

A
Subprograms have the same format as machining programs for normal memory operation
R
94

PO

except that the subprogram completion instruction M99 (P_ L_) is entered as an independent
26

block at the last block.


o.

O
N

O∆∆∆∆ ;
C

Program number as subprogram


al

...............;
ri

ZA
Se

...............;
A

M Main body of subprogram


IM

...............;
K

M99; Subprogram return command


ZA

%(EOR) End of record code (% with ISO code and EOR with EIA code)
A
M

The above program is registered by editing operations. For further details, refer to the section on
YA

program editing.
3

Only those subprograms numbers ranging from 1 through 9999 designated by the optional
01

specifications can be used. When there are no program numbers on the tape, the setting number
)2

for “program input” is used.


(c

Up to 8 nesting levels can be used for calling programs from subprograms, and program error
ht
ig

occurs if this number is exceeded.


yr

Main programs and subprograms are registered in order in which they were read because no
op

distinction is made between them. This means that main programs and subprograms should not
C

be given the same numbers. (If the same numbers are given, error occurs during entry.)

12-55
Serial No. 269443

12 PROGRAM SUPPORT FUNCTIONS

;
O#### ;
.................; Subprogram A
M
M99;
%

;
O∆∆∆∆ ;
.................; Subprogram B
M

.
M99;

d
ve
%

ser
;

re
O"""" ;

ts
gh
.................; Subprogram C
M

ri
ll
M99;

.A
%

N
O
Note 1: Main programs can be used during memory and tape operation but subprograms must

TI
43

have been entered in the memory. A


R
94

PO

Note 2: The following commands are not the object of subprogram nesting and can be called
26

even beyond the 8th nesting level.


R
o.

- Fixed cycles
N

C
al

- Pattern cycles
K
ri

ZA
Se

4. Subprogram execution
A
IM

M98: Subprogram call command


K

M99: Subprogram return command


ZA

Programming format
A
M

M98 <_> Q_ L_; or M98 P_ Q_ L_;


YA

Where < > : Name of the subprogram to be called (up to 32 characters)


3

P : Number of the subprogram to be called (up to 8 digits)


01

Q : Any sequence number within the subprogram to be called (up to 5 digits)


)2

L : Number of repetitions from 1 to 9999 with numerical value of four figures; if L is


(c
ht

omitted, the subprogram is executed once ; with L0, there is no execution.


ig

For example,
yr

M98 P1 L3; is equivalent to the following :


op

M98 P1;
C

M98 P1;
M98 P1;

12-56
Serial No. 269443

PROGRAM SUPPORT FUNCTIONS 12


Example 1: When there are 3 subprogram calls (known as 3 nesting levels)

Main program Subprogram 1 Subprogram 2 Subprogram 3

O1; O10; O20;


[1] [2] [3]

M98P1; M98P10; M98P20;

[1]’ [2]’ [3]’


M02; M99; M99; M99;

.
d
ve
Sequence of execution: [1]→[2]→[3]→[3]’→[2]’→[1]’

s er
TEP162

re
ts
For nesting, the M98 and M99 commands should always be paired off on a 1 : 1 basis [1]' for [1],

gh
[2]' for [2], etc.

ri
Modal information is rewritten according to the execution sequence without distinction between

ll
.A
main programs and subprograms. This means that after calling a subprogram, attention must be

N
paid to the modal data status when programming.

O
Example 2: The M98 Q_ ; and M99 P_ ; commands designate the sequence numbers in a

TI
43

program with a call instruction. A


R
94

PO
26

R
o.

O
N

M98Q_; M99P_;
C
al

O123;
ri

ZA

M98Q3; N100__;
Se

Search M98P123;
IM

N200__;
N3__; N300__;
K

N400__;
ZA

M
M99; M
A

M99P100;
M
YA

TEP163
3
01
)2
(c
ht
ig
yr
op
C

12-57
Serial No. 269443

12 PROGRAM SUPPORT FUNCTIONS

Example 3: Main program M98 P2 ;


O1;
M Subprogram 1
M99;
%
O2;
M
N200 Subprogram 2
M
M99;
%

d.
O3;

ve
M

er
N200 Subprogram 3

s
re
M

ts
M99;

gh
%

ri
ll
.A
- When the O2 N200 block is searched with the memory search function, the modal data are

N
updated according to the related data of O2 to N200.

O
- The same sequence number can be used in different subprograms.

TI
43

A
- When the subprogram (No. p1) is to be repeatedly used, it will be repeatedly executed for I1
R
94

PO

times provided that M98 Pp1 Ll1 ; is programmed.


26

R
o.

5. Other precautions
O
N

C
al

- Programming error occurs when the designated program number (P) is not found.
K
ri

ZA
Se

- Single block stop does not occur in the M98P _ ; and M99 ; block. If any address except O, N, P,
A

Q or L is used, single block stop can be executed. (With X100. M98 P100 ; operation branches
IM

to O100 after X100. is executed.)


K
ZA

- When M99 is commanded in the main program, operation returns to the head.
A

- Operation can branch from tape or PTR operation to a subprogram by M98P_ but the
M

sequence number of the return destination cannot be designated with M99P_ ;. (P_ is ignored.)
YA

- Care should be taken that the search operation will take time when the sequence number is
3
01

designated by M99P_ ;
)2
(c
ht
ig
yr
op
C

12-58
Serial No. 269443

PROGRAM SUPPORT FUNCTIONS 12


- In the execution of a subprogram composed of sections each proper to either of the upper and
lower turrets with the aid of G109L_ blocks, only the program sections for that system
(headstock or turret) which is currently active in the main program at the call of the subprogram
will selectively be executed with the other sections being appropriately skipped, as shown
below:
Pattern 1:
Subprogram (WNo. 1000)
Main program (EIA/ISO)

G109L1 G109L1
M (for machining with
(for machining Upper turret)
M Executed
with Upper turret)
M99

d.
M98<1000>

ve
ser
G109L2

re
.
. (for machining with
.

ts
Lower turret) Skipped

gh
M

ri
ll
.A
Pattern 2:

N
Subprogram (WNo. 2000)

O
Main program (EIA/ISO)

TI
43

M
G109L1 A
(for machining with
R
94

G109L2 Upper turret)


PO
26

(for machining M Skipped


with Lower turret)
R

M
o.

O
N

M98<2000>
C
al

K
ri

ZA

G109L2
Se

(for machining with


A

Lower turret) Executed


IM

M
K

M99
ZA
A

- The Z- and C-offset values stored on the SET UP MANAG. display for the main program will
M

remain intact for the execution of a subprogram prepared in the EIA/ISO format.
YA
3
01
)2
(c
ht
ig
yr
op
C

12-59
Serial No. 269443

12 PROGRAM SUPPORT FUNCTIONS

6. MAZATROL program call from EIA/ISO program

A. Overview
MAZATROL machining program can be called as a subprogram from the machining program
described with EIA/ISO codes.
EIA/ISO → MAZATROL (Program call)
MAZATROL (WNo. 1000)
EIA/ISO
MAZATROL machining program is called
from EIA/ISO program, and entire
machining program can be used.

.
d
M98P1000;

ve
ser
re
ts
gh
ri
Note 1: When the execution of MAZATROL machining program is completed, the execution is

ll
returned again to EIA/ISO program.

.A
It should be noted that the used tool, current position and others are changed though

N
O
EIA/ISO modal information is not changed.

TI
43

Note 2: MAZATROL programs (with commands for both the upper and lower turret) can
A
R
94

successfully be called up as a subprogram from two positions of an EIA/ISO program


PO
26

of similar structure on condition that one and the same program is called up on
R
o.

completion of blocks of the same waiting command.


O
N

Example:
al

K
ri

MAZATROL (WNo. 3000)


ZA

Main program (EIA/ISO)


Se

Data for machining


IM

G109L1
with Upper turret
M
M
K

M950
M
ZA

M98<3000>
A
M

Data for machining


YA

G109L2 with Lower turret


M M
3

M
01

M950
M98<3000>
)2
(c
ht
ig

Note 3: The Z- and C-offset values used for the execution of a MAZATROL program as a
yr

subprogram called up from an EIA/ISO program depend upon the setting of parameter
op

F161 bit 6 as follows:


C

F161 bit 6 = 0: Values of the subprogram (MAZATROL)


= 1: Values of the main program (EIA/ISO)

12-60
Serial No. 269443

PROGRAM SUPPORT FUNCTIONS 12


B. Programming format
M98 <_> L_; or M98 P_ L_;
< > or P:
- Name, or number, of the MAZATROL machining program to be called.
- When omitted, the alarm NO DESIGNATED PROGRAM will be displayed.
- Also, when the specified program is not stored, the alarm NO DESIGNATED PROGRAM
will be displayed.
L:
- Number of repetitions of program execution (1 to 9999).
- When omitted or L = 0, the called program will be executed one time (as if L = 1).

C. Detailed description

.
d
ve
1. END unit of the MAZATROL program

er
The END unit of the MAZATROL program to be called must have “1” specified under CONTI.

s
re
for correct return to the EIA/ISO main program.

ts
As for the END unit’s items other than CONTI.: Even if WORK No. is specified, program

gh
chain cannot be made with the MAZATROL program called from an EIA/ISO program.

ri
ll
EIA/ISO MAZATROL

.A
N
O
M98
UNIT CONTI. WORK No.

TI
END 1 ∗∗∗ Ignored
43

A
R
94

Impossible
PO

MAZATROL
26

R
o.

O
N

C
al

K
ri

ZA
Se

Also, REPEAT and SHIFT are ignored even if they are specified.
A
IM

2. MAZATROL program execution


K

When MAZATROL program is called from EIA/ISO program, the MAZATROL program is
ZA

executed like automatic operation of MAZATROL.


A

MAZATROL program is executed independently of EIA/ISO program which has made the
M

call. In other words, it performs the same machining as MAZATROL program alone is
YA

executed. When calling MAZATROL program, always place a tool outside the safety profile
3

beforehand. Failure to do this may cause interference of a workpiece with the tool.
01
)2

Note: The END unit of the MAZATROL program to be called from an EIA/ISO program must
(c

have “1” specified under CONTI. for correct return to the EIA/ISO main program. Never
ht

use an M99 command for the return.


ig

D. Remarks
yr
op

1. MDI interruption and macro interruption signal during MAZATROL program execution are
C

ignored.
2. MAZATROL program cannot be restarted halfway.
3. MAZATROL program call in the mode of a fixed cycle results in an alarm.
4. MAZATROL program call in the mode of nose radius compensation results in an alarm.
5. MAZATROL program call is not available in the MDI operation mode (results in an alarm).
6. A MAZATROL program called by M98 cannot be executed but in its entirety (from the head
to the end).
7. Commands to addresses other than O, N, P, Q, L and H in a block of M98 for MAZATROL
program call will not be processed till completion of the called program.

12-61
Serial No. 269443

12 PROGRAM SUPPORT FUNCTIONS

12-6 End Processing: M02, M30, M998, M999


If the program contains M02, M30, M998, M999 or EOR (%), the block containing one of these
codes will be executed as the end of the program in the NC unit. The program end processing
will not be commanded by M98 or M99. In end processing, tool life processing, parts count, and
work No. search will be executed.
1. M02, M30
Tool life processing only will be executed.
2. M998, M999
Tool life processing, parts count, and work No. search will be executed.
M998(999) <111> Q1;

. d
ve
Specification of execution or non-execution of parts count
(counting updated on POSITION display)

er
0: Parts count non-execution

s
re
1: Parts count execution

ts
Name of the program to be executed next

gh
M-code for program chain
M998: Continuous execution after parts count and work No. search

ri
M999: Ending after parts count and work No. search

ll
.A
As shown below, the next program can be designated alternatively with address S if its

N
“name” consists of numerals only.

O
TI
M998(999) S111 Q1;
43

A
R
94

Specification of execution or non-execution of parts count


PO

(counting updated on POSITION display)


26

0: Parts count non-execution


R

1: Parts count execution


o.

O
N

Number of the program to be executed next


al

M-code for program chain


ri

ZA

M998: Continuous execution after parts count and work No. search
Se

M999: Ending after parts count and work No. search


A
IM

- M998<####>
K
ZA

EIA/ISO program
↓ ↓
A

↓ MAZATROL program ↓
M

↓ or ↓
YA

EIA/ISO program
↓ ↓
3

↓ ↓
01

M998<####>
)2
(c

MAZATROL or EIA/ISO program is called from EIA/ISO program and executed as the next
ht

program.
ig
yr

- M999<####>
op
C

EIA/ISO program

↓ MAZATROL program
↓ or
EIA/ISO program


M999<####>

MAZATROL or EIA/ISO program is only called from EIA/ISO program and the operation is
terminated.

12-62
Serial No. 269443

PROGRAM SUPPORT FUNCTIONS 12


Note 1: The programs to be called up at the end of both the upper and lower turrets’ program
sections must be of the same work number; otherwise an alarm will be caused.
Moreover, use either M998 or M999 for both turrets’ sections in their respective ending
blocks; otherwise an alarm will likewise be caused.
Example 1: Correct use
Subprogram (WNo. 1000)
Main program (EIA/ISO)
G109L1
G109L1
M
M

M950
M999<1000>

.d
ve
G109L2

er
M
G109L2

s
M

re
ts
M950

gh
M999<1000>

ri
ll
Example 2: Wrong use

.A
Subprogram (WNo. 1000)

N
Main program (EIA/ISO)

O
G109L1

TI
G109L1
43

M A
R
94

M
PO
26

M950
R
o.

M998<1000>
O
N

G109L2
al

G109L2
ri

M
ZA
Se

M
A
IM

M950
M999<1000>
K
ZA

Note 2: In order to prevent the machine operation from being inconveniently stopped, the NC
A

will process a block of M998Q1 automatically as that of M999Q1 in case the total
M
YA

number of machined parts should amount to, or exceed, the preset number of parts
required.
3
01

Note 3: Omission of the designation of the next program, be it by name or number, will result in
)2

the current main program being called up as the next one.


(c
ht

12-7 Chamfering and Corner Rounding at Right Angle Corner


ig
yr
op

1. Overview
C

Chamfering or corner rounding can be commanded between two blocks specified by linear
interpolation (G01). For I, J and K, radial data must be always set.

12-63
Serial No. 269443

12 PROGRAM SUPPORT FUNCTIONS

70
30 (b)
C3

(c)

R6 (X50.0 Z70.0) .................. Starting point


G01 Z30.0 R6.0 F ∼;..... (a)
φ100
X100.0 K-3.0 ; ............... (b)
Z0 ...................................... (c)
(a) φ50

d .
Z

ve
TEP169

s er
re
2. Detailed description

ts
gh
1. For chamfering or corner rounding, movement commanded by G01 must be displacement

ri
in the X- or Z-axis only. In the second block, a command perpendicular to the first axis must

ll
be given in the Z- or X-axis.

.A
N
2. The starting point of the second block is the ending point of the first block.

O
Example: G01 Z270.0 R6;

TI
43

X860.0 K–3; A
The starting point of this block has Z270.0 as Z coordinate.
R
94

PO

3. The commands below will cause an alarm.


26

- I, J, K or R is commanded while two axes of X and Z are commanded in G01.


o.

O
N

- Two of I, J, K or R are commanded in G01.


al

K
ri

- X and I, Y and J or Z and K are commanded at the same time in G01.


ZA
Se

- In a block commanding chamfering or corner rounding, movement distance in X- or Z-axis


IM

is smaller than chamfering data or corner radius data.


K

- In a block next to the block commanding chamfering or corner rounding, command G01 is
ZA

not perpendicular to the command in the preceding block.


A
M

4. In threading block, chamfering or corner rounding command will be ignored.


YA

5. Execution by single step mode will require two steps to complete the operation.
3
01

6. When M, T commands are included in the same block, execution point must be considered.
)2

N011 G00 X100.0 Z0;


(c

N012 G01 X90.0 F0.5;


ht
ig

N013 Z-20. R0.5 M08; N011


yr

N014 X100.;
op

N014
C

N012
N013

M08 execution point


TEP170

12-64
Serial No. 269443

PROGRAM SUPPORT FUNCTIONS 12


7. Chamfering and corner rounding programming format

Operation Command Tool movement Remarks


d
Starting
c Specify the point “e”.
point
G01 Z(W)e Ii; a      b i Specify the data only for X-axis
X(U)d; ........ Next block e in the next block.
i
d ≥ e + 2i
a→b→c→d
Chamfering
Z→X i
e Specify the point “e”.
G01 Z(W)e I–i; a      b
X(U)d; ........ Next block i Specify the data only for X-axis
Starting c in the next block.

.
point

d
d d ≤ e – 2i

ve
a→b→c→d

s er
a Starting

re
b point Specify the point “e”.

ts
G01 X(U)e Kk; k c      d Specify the data only for Z-axis

gh
Z(W)d; ........ Next block e in the next block.

ri
k d≥e+k

ll
a→b→c→d

.A
Chamfering
X→Z

N
a Starting

O
point Specify the point “e”.
b

TI
G01 X(U)e K–k; Specify the data only for Z-axis
43

d    c
A k
Z(W)d; ........ Next block in the next block.
R
94

e
k d≤e–k
PO
26

a→b→c→d
R
o.

d
N

Starting
C

r Specify the point “e”.


point c
al

G01 Z(W)e Rr; Specify the data only for X-axis


ri

ZA

X(U)d; ・・・・・ Next block in the next block.


Se

a       b e
d ≥ e + 2r
A

Corner
IM

a→b→c→d
rounding
Z→X a      b e
K

Specify the point “e”.


ZA

Starting
G01 Z(W)e R–r; point r c Specify the data only for X-axis
A

X(U)d; ........ Next block d in the next block.


M

d ≤ e – 2r
YA

a→b→c→d
a
3

Starting
01

point
Specify the point “e”.
)2

G01 X(U)e Rr; Specify the data only for Z-axis


(c

r
Z(W)d; ........ Next block b in the next block.
ht

c d d≥e+r
ig

e a→b→c→d
Corner
yr

rounding
op

Starting a Specify the point “e”.


X→Z point Specify the data only for Z-axis
C

r b in the next block.


G01 X(U)e R–r; d≤e–r
Z(W)d; ........ Next block d e
c
a→b→c→d
TEP171

12-65
Serial No. 269443

12 PROGRAM SUPPORT FUNCTIONS

12-8 Chamfering and Corner Rounding at Arbitrary Angle Corner Function


Chamfering or corner rounding at any angle corner is performed automatically by adding “,C_” or
“,R_” to the end of the block to be commanded first among those command blocks which form
the corner with lines only.

12-8-1 Chamfering at arbitrary angle corner: , C_

1. Function
The arbitrary corner is chamferred between two points on the two lines which form this corner
and displaced by the lengths commanded by “, C_” from their intersection point.

.
d
ve
2. Programming format

er
s
re
N100 G01 X_ Z_ ,C_;
Chamfering is performed at the point where N100 and N200

ts
N200 G01 X_ Z_;

gh
intersect.

ri
Length up to chamfering starting point or ending point from virtual

ll
corner intersection point

.A
N
3. Example of program

O
TI
(a) G01 W100.,C10.F100;
43

(b) U280.W100.; A
R
94

PO
26

X
R
o.

O
N

C
al

K
ri

ZA

(b)
Virtual corner
Se

intersection point 140


A
IM

Chamfering Chamfering
starting point ending point
K
ZA

(a) 10.0
A
M

10.0
YA

Z
3

100.0 100.0
01

TEP172
)2
(c

4. Detailed description
ht

1. The starting point of the block following the corner chamfering is the virtual corner
ig
yr

intersection point.
op

2. When the comma in “ , C ” is not present, it is considered as a C command.


C

3. When both, C_ and , R_ are commanded in the same block, the latter command is valid.
4. Tool offset is calculated for the shape which has already been subjected to corner
chamfering.
5. Program error occurs when the block following the block with corner chamfering does not
contain a linear interpolation command.
6. Program error occurs when the movement amount in the block commanding corner
chamfering is less than the chamfering amount.

12-66
Serial No. 269443

PROGRAM SUPPORT FUNCTIONS 12


7. Program error occurs when the movement amount in the block following the block
commanding corner chamfering is less than the chamfering amount.

12-8-2 Rounding at arbitrary angle corner: , R_

1. Funciton
The arbitrary corner is rounded with the arc whose radius is commanded by “,R_” and whose
center is on the bisecter of this corner angle.

2. Programming format
N100 G01 X_ Z_ ,R_;

.
Rounding is performed at the point where N100 and N200

d
N200 G01 X_ Z_;

ve
intersect.

s er
Arc radius of corner rounding

re
3. Example of program

ts
gh
(a) G01 W100.,R10.F100;

ri
ll
(b) U280.W100.;

.A
N
X-axis

O
TI
43

Corner rounding
A
(b)
R
94

ending point
PO
26

140
R
o.

Corner
N

rounding R10.0
al

starting point Virtual corner


K
ri

intersection point
ZA

(a)
Se

A
IM

Z-axis
K
ZA

100.0 100.0 TEP173


A
M

4. Detailed description
YA

1. The starting point of the block following the corner rounding is the virtual corner intersection
3
01

point.
)2

2. When the comma in “ , R” is not present, it is considered as an R command.


(c
ht

3. When both , C_ and , R_ are commanded in the same block the latter command is valid.
ig

4. Tool offset is calculated for the shape which has already been subjected to corner rounding.
yr
op

5. Program error occurs when the block following the block with corner rounding does not
C

contain a linear command.


6. Program error occurs when the movement amount in the block commanding corner
rounding is less than the R value.
7. Program error occurs when the movement amount in the block following the block
commanding corner rounding is less than the R value.

12-67
Serial No. 269443

12 PROGRAM SUPPORT FUNCTIONS

12-9 Linear Angle Commands

1. Function and purpose


Programming the linear angle and one of the coordinates of the ending point makes the NC unit
automatically calculate the coordinates of that ending point.

2. Programming format
N1 G01 Aa1 Zz1 (Xx1) Designate the angle and the coordinates of the X-axis or the Z-axis.
N2 G01 A–a2 Zz2 Xx2 (Setting Aa3 means the same as setting A–a2.)

d.
ve
er
X

s
re
(z1, x1)
x1

ts
–a2

gh
ri
N1 N2

ll
.A
a3

N
a1
x2

O
TI
(z2, x2)
43

Z
A
R
94

PO

MEP190
26

R
o.

O
N

3. Detailed description
C
al

1. The angle denotes that relative to the plus (+) direction of the first axis (horizontal axis) on
ri

ZA
Se

the selected plane.


A

Assign the sign + for a counterclockwise direction (CCW) or the sign – for a clockwise
IM

direction (CW).
K
ZA

2. Set the ending point on one of the two axes of the selected plane.
A

3. Angle data will be ignored if the coordinates of both axes are set together with angles.
M
YA

4. If angles alone are set, the command will be handled as a geometric command.
3

5. For the second block, the angle at either the starting point or the ending point can be
01

specified.
)2

6. The linear angle command function does not work if address A is to be used for an axis
(c
ht

name or for the No. 2 auxiliary function.


ig

7. This function is valid only for the G01 command; it is not valid for other interpolation or
yr

positioning commands.
op
C

12-68
Serial No. 269443

PROGRAM SUPPORT FUNCTIONS 12

12-10 Macro Call Function: G65, G66, G66.1, G67

12-10-1 User macros


Macroprogram call, data calculation, data input to/output from a personal computer, data control,
judgment, branching, and various other instructions can be used with variables commands to
perform measurements and other operations.

Main program Macroprogram

!!!!!!!!!!!! !!!!!!!!!!!!

.
d
ve
er
s
re
Macroprogram call-
out command

ts
gh
ri
ll
.A
M30 M99

N
MEP164

O
TI
43

A
A macroprogram is a subprogram which is created using variables, calculation instructions,
R
94

control instructions, etc. to have special control features.


PO
26

These special control features (macroprograms) can be used by calling them from the main
R
o.

program as required. These calls use macro call instructions.


N

C
al

Detailed description
ri

ZA
Se

- When command G66 is entered, the designated user macro subprogram willbe called every
A

time after execution of the move commands within a block until G67 (cancellation) is entered.
IM

- Command codes G66 and G67 must reside in the same programm in pairs.
K
ZA

Note: In order that it may function correctly, do not give a command of macro call in one block
A
M

together with any one for the following functions (described in this chapter):
YA

- Fixed cycle for turning - Hole machining pattern cycle


3

- Compound fixed cycle - Subprogram control


01

- Hole machining fixed cycle


)2
(c
ht
ig
yr
op
C

12-69
Serial No. 269443

12 PROGRAM SUPPORT FUNCTIONS

12-10-2 Macro call instructions


Two types of macro call instructions are provided: single-call instructions used to call only at the
designated block, and modal call instructions used to call at each block within a macro call mode.
Modal call instructions are further divided into type A and type B.

1. Single call

Main program Subprogram (O 01)

O01

.
to subprogram

d
ve
er
G65P01Ll1 <argument>

s
re
M99

ts
gh
to main program

ri
ll
.A
N
O
The designated user macro subprogram ends with M99.

TI
Instruction G65 calls the designated user macro subprogram only once.
43

A
R
94

Format:
PO
26

G65 <__> L__ <argument>


R
o.

O
N

Repeat times
al

K
ri

ZA

Program Name (When omitted, own program


Se

will be repeated.)
IM

Alternatively,
K
ZA

G65 P__ L__ <argument>


A
M

Repeat times
YA

Program No. (When P is omitted, own


3
01

program will be repeated.)


)2
(c

<Argument>
ht

When argument is to be delivered to the user macro subprogram as a local variable, designate
ig

the required data with the respective addresses. (Argument designation is not available for a
yr
op

user macro subprogram written in MAZATROL language.)


C

In such a case, the argument can have a sign and a decimal point, irrespective of the address.
Arguments can be specified using method I or II, as shown below.

12-70
Serial No. 269443

PROGRAM SUPPORT FUNCTIONS 12


A. Argument specification I
Format: A_B_C_ !!!!!!! X_Y_Z_
Detailed description
- An argument can be specified using all addresses, except G, L, N, O, and P.
- Except for I, J, and K, addresses does not need be specified in an alphabetical order.
- Addresses I, J, and K must be specified in an alphabetical order.
I_J_K_ ... Correct
J_I_K_ ... Wrong
- Addresses whose specification is not required can be omitted.

d.
- The relationship between addresses that can be specified using argument specification I, and

ve
er
variables numbers in a user macro unit, is shown in the following table:

s
re
Relationship between address and variables number Call commands and usable addresses

ts
Address specified using Variable in macro-

gh
G65, G66 G66.1
method I program

ri
A #1 # #

ll
.A
B #2 # #

N
C #3 # #

O
D #7 # #

TI
43

E #8 A # #
R
94

F #9 # #
PO
26

G #10 × ×*
R
o.

H #11 # #
O
N

I #4 # #
al

J #5 # #
ri

ZA

# #
Se

K #6
A

L #12 × ×*
IM

M #13 # #
K

N #14 × ×*
ZA

O #15 × ×
A

P #16 × ×*
M
YA

Q #17 # #
R #18 # #
3
01

S #19 # #
)2

T #20 # #
(c

U #21 # #
ht

V #22 # #
ig

W #23 # #
yr

X #24 # #
op

Y #25 # #
C

Z #26 # #
#: Usable ×: Unusable *: Usable in G66.1 modal

12-71
Serial No. 269443

12 PROGRAM SUPPORT FUNCTIONS

B. Argument specification II
Format: A_B_C_I_J_K_I_J_K_!!!!!
Detailed description
- Up to a maximum of 10 sets of arguments that each consist of addresses I, J, and K, as well as
A, B, and C, can be specified.
- If identical addresses overlap, specify them in the required order.
- Addresses whose specification is not required can be omitted.
- The relationship between addresses that can be specified using argument specification II, and
variables numbers in a user macro unit, is shown in the following table:

Argument specification Variables in macro- Argument specification Variables in macro-

d .
II addresses programs II addresses programs

ve
A #1 K5 #18

s er
B #2 I6 #19

re
C #3 J6 #20

ts
I1 #4 K6 #21

gh
J1 #5 I7 #22

ri
ll
K1 #6 J7 #23

.A
I2 #7 K7 #24

N
J2 #8 I8 #25

O
TI
K2 #9 J8 #26
43

I3 #10 A K8 #27
R
94

J3 #11 I9 #28
PO
26

K3 #12 J9 #29
R
o.

I4 #13 K9 #30
N

J4 #14 I10 #31


al

K4 #15 J10 #32


ri

ZA
Se

I5 #16 K10 #33


A
IM

J5 #17
K

Note: In the table above, the numerals 1 through 10 have been added to addresses I, J, and
ZA

J just to denote the order of arrangement of the designated sets of arguments: these
A

numerals are not included in actual instructions.


M
YA

C. Combined use of argument specification I and II


3
01

When both method I and method II are used to specify arguments, only the latter of two
)2

arguments which have an address corresponding to the same variable will become valid.
(c

Example: Call command G65 A1.1 B–2.2 D3.3 I4.4 I7.7


ht
ig

Variables
yr

#1: 1.1
op

#2: –2.2
C

#3:
#4: 4.4
#5:
#6:
#7: 7.7
If two arguments (D3.3 and I7.7) are designated for the variable of #7, only the latter
argument (I7.7) will be used.

12-72
Serial No. 269443

PROGRAM SUPPORT FUNCTIONS 12


2. Modal call, type A (Move command call)

Subprogram
Main program
O01
to subprogram

G66P01Ll1 <argument>
M99

to main program

.
G67

d
ve
to subprogram

s er
re
ts
For a block that has a move command code between G66 and G67, the designated user macro

gh
subprogram is executed after that move command has been executed. The subprogram is

ri
executed an l1 number of times for the first call, or once for subsequent calls.

ll
.A
For modal call of type A, the methods of specifying <argument> are the same as used for single

N
call.

O
TI
Format:
43

G66 <__> L__ <argument>


A
R
94

PO
26

Repeat times
R
o.

O
N

Program name
al

K
ri

ZA
Se

Alternatively,
A
IM

G66 P__ L__ <argument>


K
ZA

Repeat times
A
M

Program No.
YA
3

Detailed description
01
)2

- When command G66 is entered, the designated user macro subprogram will be called every
(c

time after execution of the move commands within a block until command G67 (cancellation) is
ht

entered.
ig
yr

- Command codes G66 and G67 must reside in the same program in pairs.
op

Entry of a G67 command without a G66 command results in an alarm 857 INCORRECT USER
C

MACRO G67 PROG.

12-73
Serial No. 269443

12 PROGRAM SUPPORT FUNCTIONS

Example: Drilling cycle

Main program

N1G90G54G0X0Y0Z0
Subprogram
N2G91G00X–50.Y–50.Z–200.
N3G66P9010R–10.Z–30.F100 O9010
N4X–50.Y–50. To subprogram after execution of axis command N10G00Z#18M03
N5X–50. To subprogram after execution of axis command N20G09G01Z#26F#9
N6G67 N30G00Z–[#18+#26]
M M99

d .
To main program

ve
er
–150. –100. –50.

s
W
X

re
N2 N1

ts
N3

gh
N10 Argument R
N4 –50.

ri
N5

ll
–100. N20 N30

.A
Argument Z

N
Y

O
Argument F

TI
43

To subprogram A Z-axis movement


R
94

PO

MEP165
26

R
o.

Note 1: The designated subprogram is executed after the axis commands in the main program
N

have been executed.


al

K
ri

ZA

Note 2: No subprograms are executed for the G67 block and its successors.
Se

A
IM

3. Modal call, type B (Block-to-block call)


K

The designated user macro subprogram is called unconditionally for each of the command
ZA

blocks present between G66.1 and G67. Execution of the macro program is repeated as
A

specified with L for the first call, and only once for each of subsequent calls.
M
YA

Format:
3

G66.1 <__> L__ <argument>


01
)2

Repeat times
(c
ht

Program name
ig
yr
op

Alternatively,
C

G66.1 P__ L__ <argument>

Repeat times

Program No.

12-74
Serial No. 269443

PROGRAM SUPPORT FUNCTIONS 12


Detailed description
- During the G66.1 mode, only the codes O, N, and G in each of the read command blocks are
executed. No other codes in those blocks are executed; codes other than O, N, and G are
handled as arguments. However, only the last G-code and the N-codes following a code other
than O or N become arguments.
- All significant blocks in the G66.1 mode are regarded as preceded by the command G65P_.
For example, the block of
N100G01G90X100. Y200. F400R1000
in the G66.1P1000 mode is handled as equivalent to
N100G65P1000G01G90X100. Y200. F400R1000.

d.
ve
Note: Call is executed even for the G66.1 command block of the G66.1 mode, with the

er
relationship between the addresses of the arguments and the variables numbers

s
re
being the same as for G65 (single call).

ts
- The data range of the G, L, P, and N commands that you can set as new variables using the

gh
G66.1 mode is the same as the data range of usual NC commands.

ri
ll
- Sequence number N, modal G-codes, and O are all updated as modal information.

.A
N
4. G-code macro call

O
TI
The user macro subprograms of the required program number can be called just by setting G-
43

codes.
A
R
94

PO
26

R
o.

Format:
O
N

G×× <argument>
al

K
ri

ZA
Se

G-code which calls macro-subprogram


A
IM
K

Detailed description
ZA

- The instruction shown above performs the same function as those of the instructions listed
A
M

below. Which of these listed instructions will apply is determined by the parameter data to be
YA

set for each G-code.


3

M98P∆∆∆∆
01
)2

G65P∆∆∆∆ <argument>
(c

G66P∆∆∆∆ <argument>
ht
ig

G66.1P∆∆∆∆ <argument>
yr

- Use parameters to set the relationship between G×× (macro call G-code) and P∆∆∆∆ (program
op

number of the macro to be called).


C

- Of G00 through G255, up to a maximum of 10 command codes can be used with this
instruction unless the uses of these codes are clearly predefined by EIA/ISO Standards, such
as G00, G01, G02, etc.
- The command code cannot be included in user macro subprograms that have been called
using G-codes.

12-75
Serial No. 269443

12 PROGRAM SUPPORT FUNCTIONS

5. Auxiliary command macro call (M-, S-, T-, or B-code macro call)
The user macro subprograms of the required program number can be called just by setting M-,
S-, T-, or B-codes.

Format:
Mm (or Ss, Tt and Bb)

M (or S, T and B) code which calls macro-subprogram

Detailed description (The following description also applies to S-, T-, and B-codes.)

d.
ve
- The instruction shown above performs the same function as those of the instructions listed

er
below. Which of these listed instructions will apply is determined by the parameter data to be

s
re
set for each M-code.

ts
gh
M98P∆∆∆∆

ri
G65P∆∆∆∆Mm

ll
.A
G66P∆∆∆∆Mm

N
G66.1P∆∆∆∆Mm

O
TI
- Use parameter to set the relationship between Mm (macro call M-code) and P∆∆∆∆ (program
43

number of the macro to be called).


A
R
94

PO

Up to a maximum of 10 M-codes, ranging from M00 to M95, can be registered. Do not register
26

the M-codes that are fundamentally required for your machine, nor M0, M1, M2, M30, and M96
R
o.

through M99.
N

C
al

- If registered auxiliary command codes are set in the user macro subprograms that have been
ri

ZA

called using M-codes, macro calls will not occur since those special auxiliary command codes
Se

will be handled as usual ones (M-, S-, T-, or B-codes).


IM
K

6. Differences in usage between commands M98, G65, etc.


ZA

- Arguments can be designated for G65, but cannot be designated for M98.
A
M

- Sequence numbers can be designated for M98, but cannot be designated for G65, G66, or
YA

G66.1.
3

- Command M98 executes a subprogram after M98 block commands other than M, P, H, and L
01

have been executed, whereas G65 just branches the program into a subprogram without doing
)2

anything.
(c
ht

- Single-block stop will occur if the block of command M98 has addresses other than O, N, P, H,
ig

and L. For G65, however, single-block stop will not occur.


yr
op

- The level of local variables is fixed for M98, but for G65 does change according to the depth of
C

nesting. (For example, #1s, if present before and after M98, always mean the same, but if
present before and after G65, they have different meanings.)
- Command M98 can have up to a maximum of eight levels of call multiplexity when combined
with G65, G66, or G66.1, whereas the maximum available number of levels for command G65
is four when it is combined with G66 or G66.1.

12-76
Serial No. 269443

PROGRAM SUPPORT FUNCTIONS 12


7. Multiplexity of macro call commands
The maximum available number of levels of macro subprogram call is four, whether it is single or
modal. Arguments in macro call instructions become valid only within the level of the called
macro. Since the multiplexity of macro call is of up to a maximum of four levels, arguments can
be included in a program as local variables each time a macro call is made.
Note 1: When a G65, G66, or G66.1 macro call or an auxiliary command macro call is made,
nesting will be regarded as single-level and thus the level of local variables will also
increase by 1.
Note 2: For modal call of type A, the designated user macro subprogram is called each time a
move command is executed. If, however, multiple G66s are present, the next user

.
macro subprogram will be called even for the move commands in the macro each time

d
ve
axis movement is done.

er
Note 3: User macro subprograms are cancelled in a reverse order to that in which they have

s
re
been arranged.

ts
gh
Example:

ri
ll
User macroprogram operation

.A
Main program
Macro p1

N
G66Pp1

O
(p1 call-out)

TI
Zz1 x1 w1 x2 M99
43

After z1 execution
A
R
94

G66Pp2
PO

Macro p1
26

(p2 call-out)
o.

Zz2 x1 w1 x2 M99
N

After z2 execution
al

K
ri

ZA

G67
(p2 cancel)
Se

Macro p2 Macro p2 Macro p2


A
IM

Macro p1
K
ZA

(p1 call-out)
Zz3 x1 w1 x2 M99
After z3 execution
A
M

G67
YA

(p1 cancel)
Zz4
3
01

Zz5
)2
(c
ht
ig
yr
op
C

12-77
Serial No. 269443

12 PROGRAM SUPPORT FUNCTIONS

8. User macro call based on interruption


Outline
Prior creation of special user macros for interrupt processing allows the user macros to be
executed during automatic operation when a user macro interrupt signal is input. After the user
macro has been executed, the program can also be returned to the interrupted program block
and then started from this block.
Detailed description
- Format for selecting the user macro branching destination

d.
ve
M96<_>L_ (or M96P_L_) (Branching mode on)

er
M When user macroprogram interruption signal is input

s
M during this space, the branch into the specified user

re
macroprogram will be applied.

ts
M97 (Branching mode off)

gh
M

ri
ll
- User macro interrupts can be processed even when the number of levels of macro call

.A
multiplexity during the occurrence of an interrupt is four. The local variables' level of the user

N
macros used for interruption is the same as the level of the user macros existing during the

O
TI
occurrence of an interrupt.
43

A
R
94

PO
26

Interruption branch
R

Interruption return
o.

O
N

O2000 O2100 O5100


al

M
ri

ZA

M96P5100
Se

G1X
IM

Interruption G1Y
M
K

G65P2100 Interruption
ZA

M
A
M

M97
YA

M
M99 M99 M99
3
01

(Level 3) (Level 4)
)2
(c
ht
ig

Local variable Local variable


yr
op
C

12-78
Serial No. 269443

PROGRAM SUPPORT FUNCTIONS 12


12-10-3 Variables
Of all types of variables available for the NC unit, only local variables, common variables, and
part of system variables are retained even after power-off.

1. Multiplexing of variables
Under user macro specifications, variables can have their identifiers (identification numbers)
either transformed into variables, which is referred to as multiplexing, or replaced with
<expression>.
For <expression>, only one arithmetic expression (for either multiplication, division, addition, or
subtraction) can be used.

d.
Multiplexing variables

ve
Example 1:

er
#1=10 #10=20 #20=30 From #1 = 10, #[#[#1]] = #[#10] will result.

s
re
#5=#[#[#1]] From #10 = 20, #[#10] = #20 will result. Therefore #5 = #20, i.e. #5

ts
= 30 will result.

gh
#1=10 #10=20 #20=30 From #1 = 10, #[#[#1]] = #[#10] will result.

ri
#5=1000 From #10 = 20, #[#10] = #20 will result. Therefore #20 = #5, i.e.

ll
.A
#[#[#1]]=#5 #20 = 1000 will result.

N
Example 2: Replacing variables identifiers with <expression>

O
TI
#10=5
43

#[#10+1]=1000 A
#6 = 1000 will result.
R
94

PO

#[#10–1]=–1000 #4 = –1000 will result.


26

#[#10∗3]=100 #15 = 100 will result.


R
o.

#[#10/2]=100 #2 = –100 will result.


N

C
al

2. Undefined variables
ri

ZA
Se

Under user macro specifications, variables remaining unused after power-on or local variables
IM

that are not argument-specified by G65, G66, or G66.1 can be used as <empty>. Also, variables
K

can be forcibly made into <empty>.


ZA

Variable #0 is always used as <empty> one, and this variable cannot be defined on the left side
A

of the expression.
M
YA

A. Arithmetic expression
3
01

#1=#0................. #1 = <empty>
)2

#2=#0+1 ............ #2 = 1
(c

#3=1+#0 ............ #3 = 1
ht
ig

#4=#0∗10 .......... #4 = 0
yr
op

#5=#0+#0 .......... #5 = 0
C

Note: Be careful that <empty> is handled the same as 0 during processing of expressions.
<empty> + <empty> = 0
<empty> + <constant> = constant
<constant> + <empty> = constant

12-79
Serial No. 269443

12 PROGRAM SUPPORT FUNCTIONS

B. Applying variables
Application of an undefined variable alone causes even the address to be ignored.
If #1 = <empty>
G0X#1Y1000 is equivalent to G0Y1000, and
G0X[#1+10]Y1000 is equivalent to G0X10Y1000.

C. Conditional expression
Only for EQ and NE, does <empty> differ from 0 in meaning.

If #101 = <empty> If #101 = 0

.
d
#101EQ#0 <empty> = <empty> holds. #101EQ#0 0 = <empty> does not hold.

ve
<empty> ≠ 0 holds. 0 ≠ 0 does not hold.

er
#101NE0 #101NE0

s
#101GE#0 <empty> ≥ <empty> holds. #101GE#0 0 ≥ <empty> holds.

re
#101GT0 <empty> > 0 does not hold. #101GT0 0 > 0 does not hold.

ts
gh
Hold-conditions and not-hold-conditions list

ri
(For conditional expressions including undefined variables)

ll
.A
Right side EQ NE GT LT GE LE

N
O
Left side Empty Constant Empty Constant Empty Constant Empty Constant Empty Constant Empty Constant

TI
43

Empty H H A H H H
R
94

Constant H H H
PO
26

H: Holds (The conditional expression holds.)


R
o.

Blank: The conditional expression does not hold.


N

C
al

K
ri

ZA
Se

A
IM
K
ZA
A
M
YA
3
01
)2
(c
ht
ig
yr
op
C

12-80
Serial No. 269443

PROGRAM SUPPORT FUNCTIONS 12


12-10-4 Types of variables

1. Common variables (#100 to #199, and #500 to #999)


Common variables refer to the variables to be used in common at any position. The identifiers of
common variables which can be used are from #100 to #199, or from #500 to #999.

2. Local variables (#1 to #33)


Local variables refer to variables that can be defined as <argument> when calling a macro
subprogram, or those which can be used locally within the main program or a subprogram. There
is no relationship between macros. Thus, these variables can be overlapped on each other, but

d .
up to a maximum of four levels of overlapping.

ve
er
G65Pp1Ll1 <argument>

s
re
where p1 : Program number

ts
gh
l1 : Number of repeat times

ri
<Argument> must be: Aa1 Bb1 Cc1 !!! Zz1.

ll
.A
The following represents the relationship between the address specified by <argument> and the

N
local variables number used in the user macro unit:

O
TI
43

Call commands ACall commands


Argument Local Argument Local
R
94

G65 address variable G65 address variable


PO

G66.1 G66.1
26

G66 G66
R

# # # #
o.

A #1 R #18
O
N

# # B #2 # # S #19
al

# # C #3 # # T #20
ri

ZA
Se

# # D #7 # # U #21
A

# # # #
IM

E #8 V #22
# # F #9 # # W #23
K
ZA

× ×* G #10 # # X #24
# # # #
A

H #11 Y #25
M

# # I #4 # # Z #26
YA

# # J #5 – #27
3

# # K #6 – #28
01
)2

× ×* L #12 – #29
# #
(c

M #13 – #30
ht

× ×* N #14 – #31
ig

× × O #15 – #32
yr

× ×* P #16 – #33
op

# #
C

Q #17

Argument addresses marked as × in the table above cannot be used. Only during the G66.1
mode, however, can argument addresses marked with an asterisk (*) in this table be additionally
used. Also, the dash sign (–) indicates that no address is crosskeyed to the local variables
number.

12-81
Serial No. 269443

12 PROGRAM SUPPORT FUNCTIONS

1. Local variables for a subprogram can be defined by specifying <argument> when calling a
macro.

Main program Subprogram (O9900)

To subprogram #5=#4010
G65P9900A60.S100.F800 G91G01 X[#19∗COS[#1]]
Y[#19∗SIN[#1]]F#9
M02 M99

Control of move and


others after referring
to local variables.
A (#1)=60.000

.
Local variable setting by argument

d
ve
F (#9)=800

er
Local variable

s
data table S (#19)=100.000

re
ts
gh
2. Within a subprogram, local variables can be freely used.

ri
ll
.A
N
Main program Subprogram (O1)

O
TI
#30=FUP[#2/#5/2]
43

To subprogram
A #5=#2/#30/2
R
94

M98H100L#30
PO

G65P1A100.B50.J10.F500
26

X#1
R

M99
o.

O
N

N100G1X#1F#9
C
al

Y#5
K
ri

ZA

X–#1
Se

Example of face milling X#5


A
IM

M99
K

Local variables can


ZA

be changed in the
Local variable set by argument
subprogram
A

B
M
YA

A (#1) 100.000
B (#2) 50.000
J
3

F (#9) 500
01

Local variable
J (#5) 10.000 → 8.333
data table
A → 3.
)2

(#30)
(c
ht
ig
yr

In the sample program for face-milling that is shown above, although the argument J has initially
op
C

been programmed as a machining pitch of 10 mm, it has been changed into 8.333 mm to ensure
equal-pitched machining.
Also, local variable #30 contains the calculated data about the number of times of reciprocal
machining.

12-82
Serial No. 269443

PROGRAM SUPPORT FUNCTIONS 12


3. Local variables can be used for each of the four levels of macro call separately. For the
main program (macro level 0), separate local variables are also provided. The local
variables of level 0, however, cannot be designated with arguments.

Main (Level 0) O1 (Macro level 1) O10 (Macro level 2) O100 (Macro level 3)

#1=0.1#2=0.2#3=0.3

P65P1A1.B2.C3. G65P10A10.B20.C30. G65P100A100.B200.

M02 M99 M99 M99

d .
ve
er
s
re
Local variable (0) Local variable (1) Local variable (2) Local variable (3)

ts
#1 0.100 A(#1) 1.000 A(#1) 10.000 A(#1) 100.000

gh
#2 0.200 B(#2) 2.000 B(#2) 20.000 B(#2) 200.000

ri
#3 0.300 C(#3) 3.000 C(#3) 30.000 C(#3)

ll
D(#7) D(#7)

.A
N
Z(#26) Z(#26) Z(#26)

O
TI
#33 #33 #33 #33
43

A
R
94

PO
26

How the local variables are currently being used is displayed on the screen.
R
o.

For further details, refer to the Operating Manual.


N

C
al

K
ri

ZA
Se

A
IM
K
ZA
A
M
YA
3
01
)2
(c
ht
ig
yr
op
C

12-83
Serial No. 269443

12 PROGRAM SUPPORT FUNCTIONS

3. Macro interface input system variables (#1000 to #1035)


You can check the status of an interface input signal by reading the value of the appropriate
variables number (#1000 to #1035).
The read value of the variables number is either 1 (contact closed) or 0 (contact open). You can
also check the status of all input signals of the variables from #1000 to #1031 by reading the
value of variables number 1032. Variables from #1000 to #1035 can only be read; they cannot be
placed on the left side of an arithmetic expression.

System variable Points Interface input signal System variable Points Interface input signal
#1000 1 Register R72, bit 0 #1016 1 Register R73, bit 0
#1001 1 Register R72, bit 1 #1017 1 Register R73, bit 1

d .
#1002 1 Register R72, bit 2 #1018 1 Register R73, bit 2

ve
#1003 1 Register R72, bit 3 #1019 1 Register R73, bit 3

s er
#1004 1 Register R72, bit 4 #1020 1 Register R73, bit 4

re
#1005 1 Register R72, bit 5 #1021 1 Register R73, bit 5

ts
gh
#1006 1 Register R72, bit 6 #1022 1 Register R73, bit 6

ri
#1007 1 Register R72, bit 7 #1023 1 Register R73, bit 7

ll
#1008 1 Register R72, bit 8 #1024 1 Register R73, bit 8

.A
#1009 1 Register R72, bit 9 #1025 1 Register R73, bit 9

N
O
#1010 1 Register R72, bit 10 #1026 1 Register R73, bit 10

TI
#1011 1 Register R72, bit 11 #1027 1 Register R73, bit 11
43

A
R
94

#1012 1 Register R72, bit 12 #1028 1 Register R73, bit 12


PO
26

#1013 1 Register R72, bit 13 #1029 1 Register R73, bit 13


R

#1014 1 Register R72, bit 14 #1030 1 Register R73, bit 14


o.

O
N

#1015 1 Register R72, bit 15 #1031 1 Register R73, bit 15


al

K
ri

ZA

System variable Points Interface input signal


Se

#1032 32 Register R72 and R73


IM

#1033 32 Register R74 and R75


K

#1034 32 Register R76 and R77


ZA

#1035 32 Register R78 and R79


A
M
YA

Note: The following interface input signals are used exclusively in the NC system operation
(cannot be used for other purposes).
3
01

Interface input signal Description


)2
(c

Register R72, bit 0 Touch sensor mounted in the spindle


ht

Register R72, bit 4 X- and Y-axis machine lock ON


ig

Register R72, bit 5 M-, S-, T-code lock ON


yr

Register R72, bit 6 Z-axis machine lock ON


op
C

12-84
Serial No. 269443

PROGRAM SUPPORT FUNCTIONS 12


4. Macro interface output system variables (#1100 to #1135)
You can send an interface output signal by assigning a value to the appropriate variables
number (#1100 to #1135).
All output signals can take either 0 or 1.
You can also send all output signals of the variables from #1100 to #1131 at the same time by
assigning a value to variables number 1132. In addition to the data writing for offsetting the
#1100 to #1135 output signals, the reading of the output signal status can be done.

System variable Points Interface output signal System variable Points Interface output signal
#1100 1 Register R172, bit 0 #1116 1 Register R173, bit 0
#1101 1 Register R172, bit 1 #1117 1 Register R173, bit 1

d .
#1102 1 Register R172, bit 2 #1118 1 Register R173, bit 2

ve
#1103 1 Register R172, bit 3 #1119 1 Register R173, bit 3

s er
#1104 1 Register R172, bit 4 #1120 1 Register R173, bit 4

re
#1105 1 Register R172, bit 5 #1121 1 Register R173, bit 5

ts
gh
#1106 1 Register R172, bit 6 #1122 1 Register R173, bit 6

ri
#1107 1 Register R172, bit 7 #1123 1 Register R173, bit 7

ll
#1108 1 Register R172, bit 8 #1124 1 Register R173, bit 8

.A
#1109 1 Register R172, bit 9 #1125 1 Register R173, bit 9

N
O
#1110 1 Register R172, bit 10 #1126 1 Register R173, bit 10

TI
#1111 1 Register R172, bit 11 #1127 1 Register R173, bit 11
43

A
R
94

#1112 1 Register R172, bit 12 #1128 1 Register R173, bit 12


PO
26

#1113 1 Register R172, bit 13 #1129 1 Register R173, bit 13


R

#1114 1 Register R172, bit 14 #1130 1 Register R173, bit 14


o.

O
N

#1115 1 Register R172, bit 15 #1131 1 Register R173, bit 15


al

K
ri

ZA
Se

System variable Points Interface output signal


A

#1132 32 Register R172 and R173


IM

#1133 32 Register R174 and R175


K

#1134 32 Register R176 and R177


ZA

#1135 32 Register R178 and R179


A
M
YA

Note 1: Data of the system variables from #1100 to #1135 is saved according to the logical
level (1 or 0) of the signal that has been lastly sent. The saved data is cleared by
3
01

power-on/off automatically.
)2

Note 2: The following applies if a data other than 1 or 0 is assigned to the variables from #1100
(c

to #1131:
ht
ig

<empty> is regarded as equal to 0.


yr

Data other than 0 and <empty> is regarded as equal to 1.


op
C

Data less than 0.00000001, however, is regarded as undefined.

12-85
Serial No. 269443

12 PROGRAM SUPPORT FUNCTIONS

(R72, R73) #1032 #1132 (R172, R173)


Input signal Output signal
#1000 #1100

#1001 #1101

#1002 #1102
Read Read
#1003 #1103
only and write

#1028 #1128

d .
#1129

ve
#1029

er
Macro- #1130
#1030

s
instruction

re
#1031 #1131

ts
gh
32 bit (R74, R75) (R174, R175) 32 bit

ri
#1033 #1133

ll
(R76, R77) (R176, R177)

.A
#1034 #1134

N
(R78, R79) (R178, R179)

O
#1035 #1135

TI
43

A
R
94

PO
26

R
o.

5. Tool offset
N

C
al

TOOL OFFSET data of type C are provided for turning machines.


K
ri

ZA

# : Available
Se

× : Unavailable
A

Range of variable Nos. Type A Type B Type C Type D


IM

#100001 - #10001 - #2001 - # Length Geom.


# # Geom. offset Z # Length Z
K

#100000+n #10000+n #2000+n offset


ZA

#110001 - #11001 - #2201 - # Length Wear


× # Wear comp. Z
#110000+n #11000+n #2200+n comp.
A
M

#160001 - #16001 -
YA

#160000+n #16000+n #2401 - # Dia. Geom. # Geom. offset


× # Radius R
*(#120001 - *(#12001 - #2400+n offset Nose-R
3

#120000+n) #12000+n)
01

#170001 - #17001 -
)2

170000+n #17000+n #2601 - # Dia. Wear # Wear comp.


×
(c

*(#130001 - *(#13001 - #2600+n comp. Nose-R


ht

#130000+n) #13000+n)
ig

#120001 - #12001 -
× × # Geom. offset X # Length X
yr

#120000+n #12000+n
op

#130001 - #13001 -
× × # Wear comp. X
C

#130000+n #13000+n
#140001 - #14001 -
× × # Geom. offset Y # Length Y
#140000+n #14000+n
#150001 - #15001 -
× × # Wear comp. Y
#150000+n #15000+n
#180001 - #18001 - # Offsetting # Offsetting
× ×
#180000+n #18000+n direction direction

n: Number of tools available (according to the specification of the machine)

12-86
Serial No. 269443

PROGRAM SUPPORT FUNCTIONS 12


Variable numbers Maximum of n
#100001 - #184000 4000
#10001 - #18999 999
#2001 - #2800 200

*: The numbers of variables used for tool offset depend upon a parameter:
F96 bit 0 = 0: #16001 to #16000+n, and #17001 to #17000+n
= 1: #12001 to #12000+n, and #13001 to #13000+n.

Note: Set bit 0 of parameter F96 to “0” to use the TOOL OFFSET type C data.

Using variables numbers, you can read tool data or assign data.
Usable variables numbers are of the order of either #10000 or #2000. For the order of #2000,

.d
however, only up to 200 sets of tool offsets can be used.

ve
The last three digits of a variables number denote a tool offset number.

ser
As with other variables, tool offset data is to contain the decimal point. The decimal point must

re
therefore be included if you want to set data that has decimal digits.

ts
gh
ri
ll
Common variables Tool offset data

.A
Program example After
execution

N
#101=1000 #101=1000.0

O
#10001=#101
H1=1000.000

TI
#102=#10001
43

#102=1000.0
A
R
94

PO
26

R
o.

Example: Tool offset data measuring


N

C
al

K
ri

ZA
Se

G28Z0T01 Return to zero point


IM

M06 Tool change (for T01) #1


Starting point memory
K

#1=#5003
G00
ZA

G00Z–500. Rapid traverse to safe position


H1
G31Z–100.F100 Measurement with skip feed
A
M

#10001=#5063–#1 Measuring distance calculation G31


#5063
YA

M and tool offset data setting


3
01

Sensor
)2
(c
ht
ig

Note: The example shown above does not allow for any skip sensor signal delay. Also,
yr

#5003 denotes the position of the starting point of the Z-axis, and #5063 denotes the
op

skip coordinate of the Z-axis, that is, the position at which a skip signal was input during
C

execution of G31.

12-87
Serial No. 269443

12 PROGRAM SUPPORT FUNCTIONS

6. Workpiece coordinate system offset


Using variables numbers from 5201 to 5336, you can read workpiece coordinate system offset
data or assign data.
Note: The number of controllable axes depends on the machine specifications.

Axis No. 16th


1st axis 2nd axis 3rd axis Remarks
Data name axis
An external data input/output optional
SHIFT #5201 #5202 #5203 #5216
spec. is required.
G54 #5221 #5222 #5223 #5236
G55 #5241 #5242 #5243 #5256

.
G56 #5261 #5262 #5263 #5276

d
A workpiece coordinate system offset

ve
G57 #5281 #5282 #5283 #5296 feature is required.

er
G58 #5301 #5302 #5303 #5316

s
re
G59 #5321 #5322 #5323 #5336

ts
gh
ri
(Example 1) N1

ll
.A
M
N1 G28X0Y0Z0 –90.

N
N2 #5221=–20.#5222=–20.
N3

O
N3 G90G00G54X0Y0 –10.

TI
43

W1 N11 –20.
A W1
R
94

Workpiece coordinate
PO

N10 #5221=–90.#5222=–10.
26

system of G54 specified


N11 G90G00G54X0Y0
R

by N10
o.

O
N

Workpiece coordinate system of


C

G54 specified by N2
al

M02
ri

ZA
Se

A
IM
K

(Example 2)
Fundamental machine coordinate system
ZA

Coordinate shift
A

M
M

Coordinate
system G55
YA

before G54
change
W2 (G55)
3

W1 (G54)
01

N100 #5221=#5221+#5201
)2

#5222=#5222+#5202
(c

#5241=#5241+#5201
#5242=#5242+#5202
ht

#5201=0 #5202=0 Fundamental machine coordinate system


ig
yr

Coordinate M
G55
op

system after G54


change
C

W2 (G55)
W1 (G54)

MEP166

The example 2 shown above applies only when coordinate shift data is to be added to the offset
data of a workpiece coordinate system (G54 or G55) without changing the position of the
workpiece coordinate system.

12-88
Serial No. 269443

PROGRAM SUPPORT FUNCTIONS 12


[Additional workpiece coordinate system offset]
Variables numbered 70001 to 75996 can be used to read or assign additional workpiece
coordinate system offsetting dimensions. The variable number for the k-th axis origin of the “Pn”
coordinate system can be calculated as follows:
70000 + (n – 1) × 20 + k
Note: The total number of controllable axes depends on the machine specifications.

Axis No. 1st 2nd 3rd 4th 16th


Remarks
Data name axis axis axis axis axis

G54.1P1 #70001 #70002 #70003 #70004 #70016


G54.1P2 #70021 #70022 #70023 #70024 #70036 Only available with

.
the optional function

d
ve
for additional coordi-
G54.1P299 #75961 #75962 #75963 #75964 #75976

er
nate system offset.

s
G54.1P300 #75981 #75982 #75983 #75984 #75996

re
ts
Alternatively, variables numbered 7001 to 7956 can be used to read or assign additional work-

gh
piece coordinate system offsetting dimensions. The variable number for the k-th axis origin of the

ri
“Pn” coordinate system can be calculated as follows:

ll
.A
7000 + (n – 1) × 20 + k

N
O
Note: The total number of controllable axes depends on the machine specifications.

TI
43

Axis No. 1st 2nd 3rd


A 4th 16th
R
94

Remarks
axis axis axis axis axis
PO

Data name
26

G54.1P1 #7001 #7002 #7003 #7004 #7016


R
o.

Only available with


N

G54.1P2 #7021 #7022 #7023 #7024 #7036


C

the optional function


al

G54.1P3 #7041 #7042 #7043 #7044 #7056


K

for additional coordi-


ri

ZA

nate system offset.


Se

G54.1P48 #7941 #7942 #7943 #7944 #7956


IM
K

7. Local coordinate system offset (#5381 to #5386)


ZA
A

As shown below, there are variable numbers provided for reading the local offsetting values on
M

the current workpiece coordinate system.


YA

Variable Nos. Description


3
01

#5381 Local offsetting value for the 1st axis.


)2

#5382 Local offsetting value for the 2nd axis.


(c

#5383 Local offsetting value for the 3rd axis.


ht

#5384 Local offsetting value for the 4th axis.


ig

#5385 Local offsetting value for the 5th axis.


yr

#5386 Local offsetting value for the 6th axis.


op
C

12-89
Serial No. 269443

12 PROGRAM SUPPORT FUNCTIONS

8. Positions of zero points (#5701 to #5776)


As shown below, there are variable numbers provided for reading the axis positions of the 1st to
4th zero point (as set by parameters M4 to M7).

1st axis 2nd axis ..... 16th axis


M4 #5701 #5702 ..... #5716
M5 #5721 #5722 ..... #5736
M6 #5741 #5742 ..... #5756
M7 #5761 #5762 ..... #5776

9. NC alarm (#3000)

d .
ve
The NC unit can be forced into an alarm status using variables number 3000.

er
s
re
#3000 = 70 (CALL#PROGRAMMER#TEL#530)

ts
gh
Alarm No. Alarm message

ri
ll
.A
The setting range for the alarm No. is from 1 to 6999.

N
O
The maximum available length of the alarm message is 31 characters.

TI
43

Note: The type of alarm message displayed on the screen depends on the designated alarm
A
R
94

number, as indicated in the following table.


PO
26

Designated alarm No. Displayed alarm No. Displayed alarm message


o.

O
N

1 to 20 [Designated alarm No.] + 979 Message preset for the displayed alarm No. *1
C
al

21 to 6999 [Designated alarm No.] + 3000 Designated alarm message as it is *2


ri

ZA
Se

*1 Refers to alarm Nos. 980 to 999 whose messages are preset as indicated in Alarm List.
A
IM

*2 Display of a message as it is set in the macro statement.


K
ZA

Program ex. 1 (Command for display


A

of “980 MACRO USER ALARM 1” on


M

condition of #1=0)
YA

M
3

IF[#1NE0]GOTO100 980 MACRO USER ALARM 1


01

Operation stop by
#3000=1
)2

NC alarm
N100!!!!!!!!!!!!
(c

M
ht
ig
yr
op

Program ex. 2 (Command for display of


C

“3021#ORIGINAL#ALARM#1” on condition
of #2=0)

M
IF[#2NE0]GOTO200 Operation stop
3021#ORIGINAL#ALARM#1
#3000=21(#ORIGINAL#ALARM#1) by NC alarm
N200!!!!!!!!!!
M

12-90
Serial No. 269443

PROGRAM SUPPORT FUNCTIONS 12


10. Integrated time (#3001, #3002)
Using variables #3001 and #3002, you can read the integrated time existing during automatic
operation or assign data.

Type Variable No. Unit Data at power-on Initialization Counting


Integrated time 1 3001 Same as at Data is assigned Always during power-on
ms
Integrated time 2 3002 power-off in variables. During auto-starting

The integrated time is cleared to 0 after having reached about 2.44 × 1011 ms (about 7.7 years).

d .
O9010

ve
To subprogram #3001=0

ser
WHILE[#3001LE#20]DO1

re
G65P9010T (Allowable time [ms])

ts
gh
END1

ri
M99

ll
.A
Local variable Execution of blocks from DO1 to END1

N
O
is repeated until the allowable time has
T#20______

TI
elapsed, and then the control jumps to
Into local variable #20
43

A the end block of M99.


R
94

PO
26

11. Validation/invalidation of single-block stop or auxiliary-function finish signal wait (#3003)


o.

O
N

Assigning one of the values listed in the table below to variables number 3003 allows single-
al

block stop to be made invalid at subsequent blocks or the program to be advanced to the next
ri

ZA
Se

block without ever having to wait for the arrival of an auxiliary-function code (M, S, T, or B)
A
IM

execution finish signal (FIN).


K

#3003 Single block stop Auxiliary-function completion signal


ZA

0 Effective Wait
A
M

1 Ineffective Wait
YA

2 Effective No wait
3 Ineffective No wait
3
01

Note: Variable #3003 is cleared to 0 by resetting.


)2
(c
ht
ig
yr
op
C

12-91
Serial No. 269443

12 PROGRAM SUPPORT FUNCTIONS

12. Validation/invalidation of feed hold, feed rate override, or G09 (#3004)


Feed hold, feed rate override, or G09 can be made valid or invalid for subsequent blocks by
assigning one of the values listed in the table below to variables number 3004.

#3004 Bit 0 Bit 1 Bit 2


Contents (Value) Feed hold Feed rate override G09 check
0 Effective Effective Effective
1 Ineffective Effective Effective
2 Effective Ineffective Effective
3 Ineffective Ineffective Effective
4 Effective Effective Ineffective

.
d
5 Ineffective Effective Ineffective

ve
er
6 Effective Ineffective Ineffective

s
7 Ineffective Ineffective Ineffective

re
ts
Note 1: Variable #3004 is cleared to 0 by resetting.

gh
ri
Note 2: Each of the listed bits makes the function valid if 0, or invalid if 1.

ll
.A
13. Program stop (#3006)

N
O
Use of variables number 3006 allows the program to be stopped after execution of the

TI
immediately preceding block.
43

A
R
94

Format:
PO
26

#3006 = 1 (CHECK OPERAT)


R
o.

O
N

Character string to be displayed


al

K
ri

ZA

Additional setting of a character string (in 29 characters at maximum) in parentheses allows the
Se

required stop message to be displayed on the monitor.


IM

14. Mirror image (#3007)


K
ZA

The mirror image status of each axis at one particular time can be checked by reading variables
A

number 3007.
M
YA

Variable #3007 has its each bit crosskeyed to an axis, and these bits indicate that:
If 0, the mirror image is invalid.
3
01

If 1, the mirror image is valid.


)2

Bit 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
(c

Axis no. 6 5 4 3 2 1
ht
ig
yr
op
C

12-92
Serial No. 269443

PROGRAM SUPPORT FUNCTIONS 12


15. G-command modal status
The G-command modal status in a pre-read block can be checked using variables numbers from
4001 to 4026. For variables numbers from #4201 to #4226, the modal status of the block being
executed can be checked in a similar manner to that described above.
Variable Nos.
Block Block Function
pre-read executed
#4001 #4201 Interpolation mode G0-G3 : 0-3, G2.1 : 2.1, G3.1 : 3.1
#4002 #4202 Plane selection G17 : 17, G18 : 18, G19 : 19
#4003 #4203

. d
#4004 #4204 Pre-move stroke check G22 : 22, G23 : 23

ve
#4005 #4205 Feed specification G98 : 98, G99 : 99

s er
#4006 #4206 Inch/metric selection G20/21 : 20/21

re
#4007 #4207 Tool radius compensation G40 : 40, G41 : 41, G42 : 42

ts
gh
#4008 #4208 Tool length offset G43.4 : 43.4, G43.5 : 43.5

ri
#4009 #4209 Fixed cycle G80 : 80, G73/74 : 73/74, G76 : 76, G83-G89 : 83-89

ll
#4010 #4210

.A
#4011 #4211

N
#4012 #4212

O
Workpiece coordinate system G54-G59 : 54-59, G54.1 : 54.1

TI
#4013 #4213 Mode of machining (feed) G61-64 : 61-64, G61.1 : 61.1, G61.4 : 61.4
43

#4014 #4214 Macro modal call


AG66 : 66, G66.1 : 66.1, G67 : 67
R
94

PO
26

#4015 #4215
R

#4016 #4216 Programmed coordinate conversion ON/OF G68.5/69.5 : 68.5/69.5


o.

O
N

#4017 #4217 Constant surface speed control ON/OFF G96/97 : 96/97


C
al

#4018 #4218
ri

ZA

#4019 #4219
Se

#4020 #4220 Cross machining control G110 : 110, G110.1 : 110.1, G111 : 111
IM

#4021 #4221
K

#4022 #4222
ZA

#4023 #4223 Polygonal machining G50.2 : 50.2, G51.2 : 51.2


A
M

#4024 #4224 M-/S-/T-/B-code output to opposite system G112 : 112


YA

#4025 #4225
#4026 #4226 Polar coordinate interpolation ON/OFF G12.1/13.1 : 12.1/13.1
3
01
)2
(c
ht
ig
yr
op
C

12-93
Serial No. 269443

12 PROGRAM SUPPORT FUNCTIONS

16. Other modal information


Modal information about factors other than the G-command modal status in a pre-read block can
be checked using variables numbers from 4101 to 4130. For variables numbers from #4301 to
#4330, the modal information of the block being executed can be checked in a similar manner to
that described above.
Variable Nos. Variable Nos.
Block Block Modal information Block Block Modal information
pre-read executed pre-read executed
#4101 #4301 #4112 #4312
#4102 #4302 No. 2 miscellaneous function #4113 #4313 Miscellaneous function!!!M

d .
#4103 #4303 #4114 #4314 Sequence No.!!!N

ve
#4104 #4304 #4115 #4315 Program No.!!!O

s er
#4105 #4305 #4116 #4316

re
#4106 #4306 #4117 #4317

ts
#4107 #4307 Tool radius comp. No !!!D #4118 #4318

gh
#4108 #4308 #4119 #4319 Spindle function!!!S

ri
ll
#4109 #4309 Rate of feed!!!F #4120 #4320 Tool function!!!T

.A
#4110 #4310 Addt. workpiece coordinate system

N
#4130 #4330 G54-G59: 0,

O
#4111 #4311 Tool length offset No.!!!H G54.1P1-P300: 1-300

TI
43

A
Note 1: Use the variable #4315 from the second block of the program. If it is used in the first
R
94

PO

block, the reading of the program number is not successful.


26

R
o.

Note 2: The variables #4115 and #4315 are only effective for programs whose ID-number or
O
N

name consists of numerals only. During execution of a program whose name contains
al

even one single character other than numerals, the reading in question remains zero
ri

ZA
Se

(0).
A
IM
K
ZA
A
M
YA
3
01
)2
(c
ht
ig
yr
op
C

12-94
Serial No. 269443

PROGRAM SUPPORT FUNCTIONS 12


17. Position information
Using variables numbers from #5001 to #5116, you can check the ending-point coordinates of
the previous block, machine coordinates, workpiece coordinates, skip coordinates, tool position
offset coordinates, and servo deviations.

Position information End point Tool


Servo
coordinates Machine Workpiece Skip position
deviation
of previous coordinate coordinate coordinate offset
amount
Axis. No. block coordinates
1 #5001 #5021 #5041 #5061 #5081 #5101
2 #5002 #5022 #5042 #5062 #5082 #5102

.
3 #5003 #5023 #5043 #5063 #5083 #5103

d
ve
er
16 #5016 #5036 #5056 #5076 #5096 #5116

s
re
Remarks
Possible Impossible Impossible Possible Impossible Possible

ts
(Reading during move)

gh
ri
Note: The number of controllable axes depends on the machine specifications.

ll
.A
1. The ending-point coordinates and skip coordinates read will be those related to the

N
workpiece coordinate system.

O
TI
2. Ending-point coordinates, skip coordinates, and servo deviations can be checked even
43

A
during movement. Machine coordinates, workpiece coordinates, and tool position offset
R
94

coordinates must be checked only after movement has stopped.


PO
26

R
o.

O
N

Fundamental machine coordinate system M


C
al

K
ri

Workpiece coordinate system


ZA

W
Se

A
IM

G00
K
ZA

G01
A
M
YA
3
01

Read
)2

command
End point
(c

coordinates
ht
ig
yr

W Workpiece
op

coordinate system
C

Workpiece
coordinates
Machine
coordinate system
Machine M
coordinates

MEP167

12-95
Serial No. 269443

12 PROGRAM SUPPORT FUNCTIONS

3. Skip coordinates denote the position at which a skip signal has turned on at the block of
G31. If the skip signal has not turned on, skip coordinates will denote the corresponding
ending-point position.

Read
command

.
d
ve
er
Skip coordinate value

s
re
Gauge, etc.

ts
MEP168

gh
ri
4. The ending-point position denotes the tool tip position which does not allow for any tool

ll
offsets, whereas machine coordinates, workpiece coordinates, and skip coordinates denote

.A
the tool reference-point position which allows for tool offsets.

N
O
TI
43

Skip signal A
R
94

PO
26

R
o.

F (Speed)
N

W
Workpiece
al

coordinate system
ri

ZA

Workpiece
Se

Skip signal input coordinates


A

coordinates Machine
IM

M coordinate system
K

Machine coordinates
ZA

Mark $: Read after confirmation of stop.


A

Mark #: Can be read during move.


M

MEP169
YA

The input coordinates of a skip signal denote the position within the workpiece coordinate
3

system. The coordinates stored in variables from #5061 to #5066 are those existing when
01
)2

skip signals were input during movement of the machine. These coordinates can therefore
(c

be read at any time after that. See Chapter 14 for further details.
ht
ig
yr
op
C

12-96
Serial No. 269443

PROGRAM SUPPORT FUNCTIONS 12


Example 1: Workpiece position measurement:
The following shows an example of measuring the distance from a reference
measurement point to the workpiece end:

Argument (Local variable)


O9031
F (#9) 200 N1 #180=#4003
X (#24) 100.000 N2 #30=#5001#31=#5002
Y (#25) 100.000
N3 G91G01Z#26F#9
Z (#26) –10.000
N4 G31X#24Y#25F#9
N5 G90G00X#30Y#31
N6 #101=#30–#5061#102=#31–#5062
G65P9031X100.Y100.Z-10.F200 To subprogram

.
N7 #103=SQR[#101?#101+#102?#102]

d
ve
N8 G91G01Z–#26

er
N9 IF[#180EQ91]GOTO11

s
N10 G90

re
(Common variable)
N11 M99

ts
Skip signal input
#101 87.245

gh
Start point #102 87.245

ri
N4 #103 123.383

ll
Z N3 #102

.A
N8 #103
N5

N
Y
#101

O
X

TI
43

A
R
94

#101 X-axis measuring amount N1 Modal data storage of G90/G91


PO
26

#102 Y-axis measuring amount N2 X, Y starting point data storage


R

#103 Measuring line linear amount N3 Z-axis entry


o.

O
N

#5001 X-axis measuring start point N4 X, Y measuring (Stop at skip input)


C
al

#5002 Y-axis measuring start point N5 Return to X, Y starting point


K
ri

ZA

#5061 X-axis skip input point N6 X, Y measuring incremental data calculation


Se

#5062 Y-axis skip input point N7 Measuring line linear amount calculation
A
IM

N8 Z-axis escape
N9, N10 Modal return of G90/G91
K
ZA

N11 Return from subprogram

Example 2: Skip input coordinates reading:


A
M
YA

–150 –75 –25 Y


–X X
3
01
)2

N1 G91G28X0Y0
(c

N2 G90G00X0Y0
ht

–50
N3 X0Y–100.
ig
yr

N4 G31X–150.Y–50.F80 –75
op

N5 #111=#5061 #112=#5062
C

N6 G00Y0 –100
N7 G31X0
N8 #121=#5061 #122=#5062
N9 M02 –Y
Skip signal
MEP171

#111 = –75. + ε #112 = –75. + ε


#121 = –25. + ε #122 = –75. + ε
where ε denotes an error due to response delay. (See Chapter 14 for further details.) Variable
#122 denotes the skip signal input coordinate of N4 since N7 does not have a Y-command code.

12-97
Serial No. 269443

12 PROGRAM SUPPORT FUNCTIONS

18. Measurement parameters


Variable numbers provided for reading measurement parameters are as follows:
Variables Description Parameter Register R
#3071 Specification of tolerance (Lower limit) for workpiece measurement K17
#3072 Specification of tolerance (Upper limit) for workpiece measurement K18
#3086 Rate of skip feed for measurement K13
#3087 Rate of approach feed for measurement K14
#3088 Rate of skip feed for measurement (for the C-axis) K15
#3089 Rate of approach feed for measurement (for the C-axis) K16
#5501 Stylus eccentricity of touch sensor (X-component) L1
#5502 Stylus eccentricity of touch sensor (Y-component) L2

d.
ve
#5503 Radius of stylus ball of touch sensor (X-component) L3

er
#5504 Radius of stylus ball of touch sensor (Y-component) L4

s
re
#58165 Retry frequency for workpiece measurement K23 R8164, 8165

ts
#58167 Rate of skip feed for measurement K13 R8166, 8167

gh
#58169 Rate of approach feed for measurement K14 R8168, 8169

ri
#58171 Measurement stroke for workpiece measurement K19 R8170, 8171

ll
#58172 Safety contour clearance – Outside diameter (Radius value) TC37 R8172

.A
#58173 Safety contour clearance – Inside diameter (Radius value) TC38 R8173

N
O
#58174 Safety contour clearance – Front face TC39 R8174

TI
#58175 Safety contour clearance – Back face TC40 R8175
43

#58205
A
Measurement stroke for tool nose measurement K20
R
94

PO

#58221 Width of the tool-nose measurement sensor along the X-axis L22
26

#58223 Width of the tool-nose measurement sensor along the Z-axis L23
o.

O
N

#58225 Reference position of the tool-nose measurement sensor in X L24


C
al

#58227 Reference position of the tool-nose measurement sensor in Z L25


K
ri

ZA

#58229 Reference position of the tool-nose measurement sensor in Y L26


Se

#58259 Z-axis escape distance from the approach point after TOOL EYE L28
IM

measurement
K
ZA

19. Tool No. (#51999) and data line No. (#3020) of the spindle tool
A

Using variables numbers 51999 and 3020, you can check the tool number and TOOL DATA line
M
YA

number of the tool mounted in the spindle.


3

System variable Description


01
)2

#51999 Tool number of the spindle tool


(c

#3020 TOOL DATA line number of the spindle tool


ht

Note 1: These system variables are read-only variables.


ig
yr

Note 2: During tool path checking operation both variables (#51999 and #3020) store data with
op

mere reference to the “TNo.” programmed in a T-code and, therefore, remain zero (0)
C

when the program concerned has no T-codes used.

12-98
Serial No. 269443

PROGRAM SUPPORT FUNCTIONS 12


20. MAZATROL tool data
Using variables tabulated below, MAZATROL tool data can be read or written, as required.
Variables from #60001 ............. Tool quantity: 400 (maximum)
Variables from #600001 ........... Tool quantity: 4000 (maximum)
The maximum applicable tool quantity depends on the machine specifications.
(n = Number of index of the tool)
System variables MAZATROL tool data
#60001 to #60000+n #600001 to #600000+n Tool length (milling)/Length A (turning)
#61001 to #61000+n #610001 to #610000+n Tool diameter (milling)

d.
#62001 to #62000+n #620001 to #620000+n Tool life flag

ve
#63001 to #63000+n #630001 to #630000+n Tool damage flag

s er
#64001 to #64000+n #640001 to #640000+n Wear compensation X

re
#65001 to #65000+n #650001 to #650000+n Wear compensation Y

ts
gh
#66001 to #66000+n #660001 to #660000+n Wear compensation Z

ri
#67001 to #67000+n #670001 to #670000+n Group number

ll
#68001 to #68000+n #680001 to #680000+n Length B (turning)

.A
Length A and Length B are calculated as follows:

N
O
Length A = Z-axis value in parameter S23 – TOOL SET Z

TI
43

Length B = X-axis value in parameter S23 – TOOL SET X


R
A
94

Note 1: During tool path check, tool data can be checked but cannot be assigned.
PO
26

Note 2: Tool life flags (variables from #62001/#620001) and tool damage flags (variables from
o.

O
N

#63001/#630001) can take either 1 or 0 as their logical states (1 for ON, 0 for OFF).
C
al

K
ri

21. EIA/ISO tool data


ZA
Se

Using variables tabulated below, EIA/ISO tool data (tool life management data) can be read or
IM

written, as required.
K

Variables from #40001 ............. Tool quantity: 960 (maximum)


ZA

1 ≤ n ≤ 960 (n = Sequence number of the tool data line)


A
M

Variables from #400001 ........... Tool quantity: 4000 (maximum)


YA

1 ≤ n ≤ 4000 (n = Sequence number of the tool data line)


3

The maximum applicable tool quantity depends on the machine specifications.


01
)2

System variables Corresponding data


(c

#41001 to #41000+n #410001 to #410000+n Length offset data No.


ht

#42001 to #42000+n #420001 to #420000+n Tool life flag


ig
yr

#43001 to #43000+n #430001 to #430000+n Tool damage flag


op

#45001 to #45000+n #450001 to #450000+n Tool application time (s)


C

#46001 to #46000+n #460001 to #460000+n Tool life time (s)

Note 1: During tool path check, tool data can be checked but cannot be assigned.
Note 2: Tool life flags (variables from #42001/#420001) and tool damage flags (variables from
#43001/#430001) can take either 1 or 0 as their logical states (1 for ON, 0 for OFF).

12-99
Serial No. 269443

12 PROGRAM SUPPORT FUNCTIONS

22. Date and time (Year-month-day and hour-minute-second)


Variables numbered 3011 and 3012 can be used to read date and time data.

Variable Nos. Description


#3011 Date (Year-month-day)
#3012 Time (Hour-minute-second)

The date stored in #3011 consists of 8 digits (4, 2, and 2 digits denote respectively year, month,
and day), and the time in #3012 is composed of three sets of two-digit data (for hour, minute, and
second in that order).
Example: If the date is December 15, 2006 and the time is 16:45:10, data is set as follows in

d.
ve
the corresponding system variables:

er
#3011 = 20061215

s
re
#3012 = 164510.

ts
gh
23. Total number of machined parts and the number of parts required

ri
Variables numbered 3901 and 3902 can be used to read or assign the total number of machined

ll
.A
parts and the number of parts required.

N
Variable Nos. Description

O
TI
#3901 Total number of machined parts
43

#3902 Number of parts required


A
R
94

PO
26

Note 1: These variables must be integers from 0 to 9999.


R
o.

Note 2: Data reading and writing by these variables is surely suppressed during tool path
N

C
al

checking.
K
ri

ZA
Se

A
IM
K
ZA
A
M
YA
3
01
)2
(c
ht
ig
yr
op
C

12-100
Serial No. 269443

PROGRAM SUPPORT FUNCTIONS 12


24. Setting and using variables names
Any variables name can be assigned to each of common variables #500 through #519. The
variables name, however, must be of seven alphanumerics or less that begin with a letter of the
alphabet.

Format:
SETVNn [NAME1, NAME2, .....]

Starting number of the variable to be named

Name of #n (Variables name)

.d
Name of #n + 1 (Varaibles name)

ve
s er
Each variables name must be separated using the comma (,).

re
Detailed description

ts
gh
- Once a variables name has been set, it remains valid even after power-off.

ri
- Variables in a program can be called using the variables names. The variable to be called must,

ll
.A
however, be enclosed in brackets ([ ]).

N
Example: G01X[#POINT1]

O
[#TIMES]=25

TI
43

A
- Variables names can be checked on the USER PARAMETER No. 1 display. The names
R
94

assigned to variables #500 to #519 are displayed at F47 to F66.


PO
26

Example: Program SETVN500[ABC,EFG]


R
o.

On the display
N

C
al

F46 0
K
ri


ZA

F47 ABC Variables name assigned to #500


Se

F48 EFG ← Variables name assigned to #501


A
IM

F49 ← Variables name assigned to #502


F50
K
ZA
A
M
YA
3
01
)2
(c
ht
ig
yr
op
C

12-101
Serial No. 269443

12 PROGRAM SUPPORT FUNCTIONS

25. Tool data line number (#3022 and #3023)


Variables numbered 3022 and 3023 can be used to read the tool data line number of a particular
tool.

Variable No. Description


#3022 Designation of the required tool (for designation only).
As is the case with a T-code, use the integral and decimal parts respectively
for specifying the required tool with its number and suffix.
#3022=○○○.△△
○○○: Tool number
△△: Suffix

.
#3023 Data line number of the specified tool (for reading only).

d
ve
Use this variable to read out the data line number of the tool specified by the

er
variable #3022.

s
The reading in #3023 is zero (0) if there is no corresponding tool registered in

re
the memory.

ts
gh
Example:

ri
TNo. #3022 setting Reading in #3023

ll
.A
1 A 1.01 1

N
1 B 1.02 2

O
TI
1 C 1.03 3
43

2 A 2.61 A 4
R
94

PO

2 B 2.62 5
26

2 C 2.63 6
R
o.

3 H 3.08 7
N

C
al

3 V 3.22 8
K
ri

ZA

3 Z 3.26 9
Se

M M M M
IM

M M M M
K

Failure – 0
ZA
A

26. System unit and Input unit: Inch or Metric (#3094)


M
YA

Variable numbered 3094 can be used to secure information about the type and combination of
system unit and input unit (inch or metric).
3
01

#3094 value System unit Input unit


)2
(c

0 Metric G21 (Metric)


ht

0 Inch G20 (Inch)


ig

1 Metric G20 (Inch)


yr

2 Inch G21 (Metric)


op
C

27. Inch data input as initial mode ON/OFF (#51000)


Variable numbered 51000 can be used to secure information as to whether or not inch data input
is set (by F91 bit 4) as the initial mode.
#51000 value F91 bit 4 Initial mode
1000 0 Metric data input
10000 1 Inch data input

12-102
Serial No. 269443

PROGRAM SUPPORT FUNCTIONS 12


28. C-axis clamping M-code: M210 or M310 (#3095)
Variable numbered 3095 can be used to secure information as to whether the number of the C-
axis clamping M-code is 210 or 310.

29. MAZATROL coordinate system valid/invalid (#3098)


Variable numbered 51000 can be used to secure information as to whether bit 1 of parameter
F91 is set to “1” or “0” (to make MAZATROL coordinate system valid or invalid).

30. Basic data for tool life management (#3102)


Variable numbered 3102 can be used to obtain information about the data on the basis of which
the tool life management is performed.

. d
ve
#3102 value Basic data for tool life management

er
1 Number of workpieces machined with the tool

s
re
2 Application time of the tool

ts
4 X-axis wear compensation amount

gh
8 Y-axis wear compensation amount

ri
16 Z-axis wear compensation amount

ll
.A
Variable #3102 can take a value of the sum of multiple values enumerated above when the tool

N
O
life management is currently done on the basis of the respective data types.

TI
43

A
31. Contents of the S12 or S23 parameters (#3200 and #3212 or #3223)
R
94

PO
26

Variables numbered 3200, 3210 and 3223 can be used to read the settings of particular S
R

parameters. Use #3200 beforehand to specify the desired axis.


o.

O
N

#3200 setting Description


al

K
ri

0 to 15 Serial numbers of significant axis settings within the current system


ZA
Se

65 to 90 Decimal notation of the ASCII code of axis name within the current system
A
IM

Example 1: #3200 = 0;
K

Designation of the first significant axis setting (normally: X) within the system.
ZA
A

Example 2: #3200 = 67;


M

Designation of the C-axis (’C’ = 0x43 [Hexadecimal] = 67 [Decimal])


YA

Variable Nos. S parameter


3
01

#3212 S12
)2

#3223 S23
(c
ht

Note 1: #3200 is initialized (to zero) by NC-resetting.


ig

Note 2: It is not necessary to repeat writing into #3200 next time the reading with #3212 or
yr

#3223 is to be done for the same axis.


op
C

Note 3: Read #3200 as required to check its last setting.


Note 4: The setting for #3200 is not checked for the appropriateness (as to whether the
designated axis is preset properly) at the block of #3200, but results in an alarm (809
ILLEGAL NUMBER INPUT) being caused at the reading block of #3212 or #3223
when the setting is found inappropriate.

12-103
Serial No. 269443

12 PROGRAM SUPPORT FUNCTIONS

32. Current tool number and Current position in machine coordinates


Using variables tabulated below, it is possible to read the number of the system currently active,
the number of the tool currently used, the machine coordinates of the current position, and the
current Z- and C-offset values.

Variables Description Register R


#8000 Number of the system currently active
#8001 No. of the current tool R1999
#8010 Machine coordinate X
#8011 Machine coordinate Y
#8012 Machine coordinate Z

.
#9101 Current Z-offset value

d
ve
#9102 Current C-offset value

ser
re
33. Positional information for the powered tailstock

ts
gh
Variables numbered 56154 and 56156 can be used to assign the particular positions as required

ri
for moving a powered tailstock.

ll
.A
Variable Nos. Description

N
#56154 Tailstock position 1

O
#56156 Tailstock position 2

TI
43

A
Note 1: The setting range is from –9999.999 to 0 for metric data input, or from –999.9999 to 0
R
94

PO

for inch data input.


26

Note 2: “Position 1” and “Position 2” are the respective positions, to which the tailstock can be
o.

O
N

moved by the miscellaneous functions M741 and M742.


al

K
ri

ZA

34. Amount of workpiece transfer (#3024)


Se

Variable numbered 3024 can be used to set the amount of a workpiece transfer operation which
IM

is performed within an EIA/ISO program. The block of setting the variable #3024 does not cause
K

any axis motion on the machine, but informs the NC unit of the workpiece being transferred so
ZA

that a tool path avoiding collision with the shifted workpiece can be drawn timely for the suc-
A
M

ceeding process by a MAZATROL program on the side of the turning spindle No. 2.
YA

<Example of programming>
3

MAZATROL program
01
)2

HEAD 1 selection EIA/ISO program


(c

M540 (Transfer mode ON)


ht

Machining on the
M
ig

turning spindle No. 1


yr

G90G1W-1200.4 (Transfer)
op

SUB PRO unit


M
C

HEAD 2 selection #3024=1200.4 (Setting transfer amount)

Machining on the
M99
turning spindle No. 2

END unit

Note: For a restart operation, based on a MAZATROL program of the above structure, from a
block of machining on the side of the turning spindle No. 2, enter a block of “#3024 =
1200.4” in the MDI mode before starting the operation.

12-104
Serial No. 269443

PROGRAM SUPPORT FUNCTIONS 12


35. Serial number of the C-axis (#50506)
Variable numbered 50506 can be used to read the serial number of setting of the C-axis.

36. Data on the AUTO MEASURE display


Use the variables tabulated below to read and write the data on the AUTO MEASURE display.
# : Possible
Variables Description Reading Writing
#58066 SNS-TOOL (Sensor tool) #
#58067 OFS-TOOL (Tool to be offset) #
#58069 TARGET DATA X #

.
#

d
#58071 TARGET DATA Y

ve
#58073 TARGET DATA Z # #

er
#58075 MEASURED DATA X #

s
re
#58077 MEASURED DATA Y #

ts
#58079 MEASURED DATA Z # #

gh
#58080 MEASURE POINT #1 (Axis name in ASCII code) # #

ri
#58081 MEASURE POINT #2 (Axis name in ASCII code) # #

ll
.A
#58083 MEASURE POINT #1 (Position) # #
#

N
#58085 MEASURE POINT #2 (Position) #

O
#58087 OFFSET AMOUNT X #

TI
#
43

#58089 OFFSET AMOUNT Y


A
R
94

#58091 OFFSET AMOUNT Z #


PO
26

#58093 OFFSET AMOUNT LENGTH # #


R

#58095 OFFSET AMOUNT ACT-φ #


o.

O
N

#
C

#58097 TOLERANCE LIMIT +/X


al

#58099 TOLERANCE LIMIT –/Z #


ri

ZA
Se

37. Data in register R (#500000 to #516383, #550000 to #566383)


IM

Use the following variables to read and write 2-byte data of register R:
K
ZA

#500000 + No. of register R (#500000 to #516383)


A
M

Example 1: Use the variable numbered 500100 for the R100 register.
YA

Use the following variables to read and write 4-byte data of register R:
3
01

#550000 + No. of register R (#550000 to #566383)


)2

Example 2: Use the variable numbered 560100 for the R10100/R10101 register.
(c
ht
ig
yr
op
C

12-105
Serial No. 269443

12 PROGRAM SUPPORT FUNCTIONS

12-10-5 Arithmetic operation commands


Various operations can be carried out between variables using the following format.
#i = <expression>
where <expression> must consist of a constant(s), a variable(s), a function(s), or an operator(s).
In the table given below, constants can be used instead of #j and/or #k.

[1] Definition/replacement of
#i=#j Definition/replacement
variables
[2] Additional-type operations #i=#j+#k Addition
#i=#j–#k Subtraction

.
#i=#jOR#k Logical additon (For each of 32 bits)

d
ve
#i=#jXOR#k Exclusive OR (For each of 32 bits)

er
[3] Multiplicative-type #i=#j∗#k Multiplication

s
operations #i=#j/#k Division

re
#i=#jMOD#k Surplus

ts
#i=#jAND#k Logical product (For each of 32 bits)

gh
[4] Functions #i=SIN[#k] Sine

ri
#i=COS[#k] Cosine

ll
#i=TAN[#k] Tangent (tanq is used as sinq/cosq.)

.A
#i=ATAN[#j] Arc-tangent (Either ATAN or ATN can be used.)

N
#i=ACOS[#j] Arc-cosine

O
#i=SQRT[#k] Square root (Either SQRT or SQR is available.)

TI
43

#i=ABS[#k] Absolute value


#i=BIN[#k]
A
BINARY conversion from BCD
R
94

PO

#i=BCD[#k] BCD conversion from BINARY


26

#i=ROUND[#k] Rounding to the nearest whole number (Either ROUND or


R
o.

RND is available.)
O
N

#i=FIX[#k] Cutting away any decimal digits


C
al

#i=FUP[#k] Counting any decimal digits as 1s


K
ri

Natural logarithm
ZA

#i=LN[#k]
Se

#i=EXP[#k] Exponent with the base of e (= 2.718 ...)


A
IM

Note 1: In principle, data without a decimal point is handled as data that has a decimal point.
(Example: 1 = 1.000)
K
ZA

Note 2: Offsets from variable #10001, workpiece coordinate system offsets from variable
A

#5201, and other data become data that has a decimal point. If data without a decimal
M

point is defined using these variables numbers, therefore, a decimal point will also be
YA

assigned to the data.


3
01

Example:
)2

Common variable
(c
ht

#101=1000
#101 1000
ig

#10001=#101 Execution
yr

#102 1.000
#102=#10001
op
C

Note 3: The <expression> after a function must be enclosed in brackets ([ ]).

12-106
Serial No. 269443

PROGRAM SUPPORT FUNCTIONS 12


1. Operation priority
Higher priority is given to functions, multiplicative operations, and additive operations, in that
order.
#101=#111+#112∗SIN[#113]
[1] Function
[2] Multiplicative
[3] Additional

2. Specifying an operational priority level


The part to which the first level of operation priority is to be given can be enclosed in brackets

d.
([ ]). Up to five sets of brackets, including those of functions, can be used for one expression.

ve
er
#101=SQRT[[[#111–#112]∗SIN[#113]+#114]∗#15]

s
re
One fold

ts
Two fold

gh
ri
Three fold

ll
.A
3. Examples of operation instructions

N
O
[1] Main program and G65 P100 A10 B20. #1 10.000

TI
argument #101=100.000 #2 20.000
43

specification #102=200.000 A #101 100.000


R
94

#102 200.000
PO
26

[2] Definition, #1=1000 #1 1000.000


R
o.

replacement #2=1000. #2 1000.000


O
N

= #3=#101 #3 100.000
C

Data of common variables


al

#4=#102 #4 200.000
K
ri

#5=#5081 #5 –10.000 Offset amount


ZA
Se

[3] Addition, #11=#1+1000 #11 2000.000


A

subtraction #12=#2–50. #12 950.000


IM

+– #13=#101+#1 #13 1100.000


#14=#5081–3. #14 –13.000
K

#15=#5081+#102 #15 190.000


ZA

[4] Logical addition #3=100 #3 = 01100100


A

OR #4=#3OR14 14 = 00001110
M

#4 = 01101110 = 110
YA

[5] Exclusive OR #3=100 #3 = 01100100


3

XOR #4=#3XOR14 14 = 00001110


01

#4 = 01101010 = 106
)2

[6] Multiplication, #21=100∗100 #21 10000.000


#22=100.∗100
(c

Division #22 10000.000


∗/ #23=100∗100. #23 10000.000
ht

#24=100.∗100. #24 10000.000


ig

#25=100/100 #25 1.000


yr

#26=100./100 #26 1.000


op

#27=100/100. #27 1.000


C

#28=100./100. #28 1.000


#29=#5081∗#101 #29 –1000.000
#30=#5081/#102 #30 –0.050

[7] Surplus #31=#19MOD#20 #19 48


= = 5 surplus 3
MOD #20 9
[8] Logical product #9=100 #9 = 01100100
AND #10=#9AND15 15 = 00001111
#10 = 00000100 = 4

12-107
Serial No. 269443

12 PROGRAM SUPPORT FUNCTIONS

[9] Sine #501=SIN[60] #501 0.866


SIN #502=SIN[60.] #502 0.866
#503=1000∗SIN[60] #503 866.025
#504=1000∗SIN[60.] #504 866.025
#505=1000.∗SIN[60] #505 866.025
#506=1000.∗SIN[60.] #506 866.025
Note: SIN[60] is equal to SIN[60.].
[10] Cosine #541=COS[45] #541 0.707
COS #542=COS[45.] #542 0.707
#543=1000∗COS[45] #543 707.107
#544=1000∗COS[45.] #544 707.107
#545=1000.∗COS[45] #545 707.107
#546=1000.∗COS[45.] #546 707.107
Note: COS[45] is equal to COS[45.].

.
[11] Tangent #551=TAN[60] #551 1.732

d
ve
TAN #552=TAN[60.] #552 1.732
#553=1000∗TAN[60]

er
#553 1732.051
#554=1000∗TAN[60.] #554 1732.051

s
re
#555=1000.∗TAN[60] #555 1732.051
#556=1000.∗TAN[60.]

ts
#556 1732.051

gh
Note: TAN[60] is equal to TAN[60.].

ri
[12]Arc-tangent #561=ATAN[173205/1000000] #561 60.000

ll
ATAN #562=ATAN[173.205/100.] #562 60.000

.A
#563=ATAN[1.732] #563 59.999

N
[13]Arc-cosine #521=ACOS[100000/141421] #521 45.000

O
ACOS #522=ACOS[100./141.421] #522 45.000

TI
43

#523=ACOS[1000/1414.213] #523 45.000


#524=ACOS[10./14.142]
A #524 44.999
R
94

PO

#525=ACOS[0.707] #525 45.009


26

[14]Square root #571=SQRT[1000] #571 31.623


R
o.

SQRT #572=SQRT[1000.] #572 31.623


N

#573=SQRT[10.∗10.+20.∗20.]
C

#573 22.361
al

#574=SQRT[#14∗#14+#15∗#15]
K

#574 190.444
ri

ZA

Note: For enhanced accuracy, perform


Se

operations within [ ] as far as possible.


IM

[15]Absolute value #576=–1000 #576 –1000.000


ABS #577=ABS[#576] #577 1000.000
K
ZA

#3=70.
#4=–50.
A

#580= ABS[#4–#3] #580 120.000


M
YA

[16]BIN, BCD #1=100


#11=BIN[#1] #11 64
3

#12=BCD[#1] #12 256


01

[17]Rounding into the #21=ROUND[14/3] #21 5


)2

nearest whole #22=ROUND[14./3] #22 5


(c

number #23=ROUND[14/3.] #23 5


ht

ROUND #24=ROUND[14./3.] #24 5


ig

#25=ROUND[–14/3] #25 –5
yr

#26=ROUND[–14./3] #26 –5
op

#27=ROUND[–14/3.] #27 –5
C

#28=ROUND[–14./3.] #28 –5
[18]Cutting away any #21=FIX[14/3] #21 4.000
decimal digits #22=FIX[14./3] #22 4.000
FIX #23=FIX[14/3.] #23 4.000
#24=FIX[14./3.] #24 4.000
#25=FIX[–14/3] #25 –4.000
#26=FIX[–14./3] #26 –4.000
#27=FIX[–14/3.] #27 –4.000
#28=FIX[–14./3.] #28 –4.000

12-108
Serial No. 269443

PROGRAM SUPPORT FUNCTIONS 12


[19]Counting any #21=FUP[14/3] #21 5.000
decimal digits as 1s #22=FUP[14./3] #22 5.000
FUP #23=FUP[14/3.] #23 5.000
#24=FUP[14./3.] #24 5.000
#25=FUP[–14/3] #25 –5.000
#26=FUP[–14./3] #26 –5.000
#27=FUP[–14/3.] #27 –5.000
#28=FUP[–14./3.] #28 –5.000
[20]Natural logarithm #101=LN[5] #101 1.609
LN #102=LN[0.5] #102 –0.693
#103=LN[–5] Alarm 860 CALCULATION IMPOSSIBLE
[21]Exponent #104=EXP[2] #104 7.389
EXP #105=EXP[1] #105 2.718
#106 0.135

.
#106=EXP[–2]

d
ve
er
4. Operation accuracy

s
re
The errors listed in the table below are generated by one arithmetic operation, and the error rate

ts
increases each time an operation is performed.

gh
ri
Operation format Mean error Max. error Kind of error

ll
a=b+c ε ε

.A
2.33 × 10–10 5.32 × 10–10 Min. ,
a=b–c c b

N
a=b•c

O
1.55 × 10–10 4.66 × 10–10
ε

TI
a = b/c 4.66 × 10–10 1.86 × 10–9 Relative error
43

A a
b 1.24 × 10–9 3.73 × 10–9
R
94

a=
PO
26

a = sin b
5.0 × 10–9 1.0 × 10–8
ε degree
R

a = cos b Absolute error


o.

O
N

–1 –6 –6
a = tan b/c 1.8 × 10 3.6 × 10
C
al

K
ri

Note: The function TAN (Tangent) is calculated as SIN/COS (Sine/Cosine).


ZA
Se

5. Notes on deterioration of accuracy


IM
K

A. Addition/subtraction
ZA

As for additional-type operations, if an absolute value is subtracted from the other, the relative
A
M

error cannot be reduced below 10–8.


YA

For example, when the true values (such values, by the way, cannot be substitued directly) of
3

#10 and #20 are as follows:


01
)2

#10 = 2345678988888.888
(c

#20 = 2345678901234.567
ht

then #10 – #20 = 87654.321 would not result from calculation of #10 – #20. This is because,
ig

since the effective number of digits of the variable is eight (decimal), the approximate values of
yr
op

#10 and #20 are:


C

#10 = 2345679000000.000
#20 = 2345678900000.000
More strictly, internal binary values slightly differ from these values. Actually therefore, a
significant error results as follows:
#10 – #20 = 100000.000.

12-109
Serial No. 269443

12 PROGRAM SUPPORT FUNCTIONS

B. Logical relationship
As for EQ, NE, GT, LT, GE and LE, the processing is executed in a similar manner to addition
and substraction, so be careful to errors. For example, to judge whether #10 is equal to #20 of
the above example, the conditional expression
IF [#10EQ#20]
is not appropriate due to the errors. In such a case, therefore, give a macro-instruction as shown
below to allow for an acceptable tolerance in the judgement on the equality of two values.
IF [ABS[#10 – #20] LT200000]

C. Trigonometric functions

d.
For trigonometric functions, although the absolute error is guaranteed, the relative error is not

ve
below 10–8. Be careful, therefore, when carrying out multiplication, or division after trigonometric

ser
function operations.

re
ts
12-10-6 Control commands

gh
ri
The flow of a program can be controlled using IF ∼ GOTO ∼ and WHILE DO ∼ commands.

ll
.A
1. Branching

N
O
Format: IF [conditional expression] GOTO n

TI
43

where n is a sequence number in the same program. A


R
94

The branching will occur to the block headed by sequence number ‘n’ if the condition holds, or if
PO
26

the condition does not hold, the next block will be executed.
R
o.

An independent setting of GOTO statement without IF [conditional expression] will perform


O
N

unconditional branching to the specified block.


al

K
ri

ZA

The [conditional expression] consists of the following six types:


Se

A
IM

#i EQ #j = ( #i is equal to #j.)
≠ (#i is not equal to #j.)
K

#I NE #j
ZA

#i GT #j > (#i is larger than #j.)


A

#I LT #j < (#i is smaller than #j.)


M

#I GE #j ≥ (#i is equal to #j, or larger than #j.)


YA

#I LE #j ≤ (#i is equal to #j, or smaller than #j.)


3
01

For GOTO n, n must be a sequence number within the same program. If the sequence number
)2

does not exist in that program, an alarm 843 DESIGNATED SNo. NOT FOUND will occur. An
(c

expression or a variable can be used instead of #i, #j, or n.


ht

Sequence number designation Nn must be set at the beginning of the destination block.
ig

Otherwise, an alarm 843 DESIGNATED SNo. NOT FOUND will result. If, however, the block
yr
op

begins with “/” and Nn follows, the program can be branched into that sequence number.
C

12-110
Serial No. 269443

PROGRAM SUPPORT FUNCTIONS 12

N10 #22=#20 #23=#21 Branching to N100


IF[#2EQ1] GOTO100 if #2 = 1. Search Search
for
#22=#20–#3 for N10
#23=#21–#4 N100 to be
con-
N100 X#22 Y#23 tinued
#1=#1+1 back to
the

.
head

d
ve
s er
re
ts
Note: During search for the branching destination sequence number, if the area from the

gh
block after “IF ...” to the program end (% code) is searched (forward search) in vain,

ri
then the area from the head down to the block before “IF ...” will be searched next

ll
(backward search). It will therefore take more time to execute backward search

.A
(searching in the opposite direction to the flow of the program) than to execute forward

N
O
search.

TI
43

2. Looping A
R
94

PO
26

Format:
R
o.

WHILE [Condition expression] DOm (m = 1, 2, 3 !!! 127)


N

C
al

K
ri

ZA

ENDm
Se

A
IM

The area from the next block to the ENDm block loops while the conditional expression holds. If
K

the conditional expression does not hold, control will be tansferred to the block after ENDm. In
ZA

the format shown above, DOm can precede WHILE.


A

You must always use WHILE [conditional expression] DOm and ENDm in pairs. If you omit
M
YA

WHILE [conditional expression], the area from DOm to ENDm will endlessly loop. In DOm, m (1
to 127) identifies the number of looping. (DO1, DO2, DO3, and so on up to DO127)
3
01

The maximum available number of degrees of multiplicity is 27.


)2
(c
ht
ig
yr
op
C

12-111
Serial No. 269443

12 PROGRAM SUPPORT FUNCTIONS

[1] Same identifying No. can be used repeatedly. [2] The identifying No. of WHILE ∼ DOm is arbitrary.

WHILE ∼ DO1 WHILE ∼ DO1

END1
Usable

END1 WHILE ∼ DO3

END3

Usable
WHILE ∼ DO1 WHILE ∼ DO2

.
END2

d
Usable

ve
er
END1 WHILE ∼ DO1

s
re
END1

ts
gh
[3] Up to 27 levels of WHILE ∼ DOm can be used. [4] The total number of levels of WHILE ∼ DOm must not

ri
ll
m can be 1 to 127, independent of the depth of nesting. exceed 27.

.A
WHILE ∼ DO1
WHILE ∼ DO1 DO1

N
WHILE ∼ DO2

O
TI
WHILE ∼ DO2 DO2 M
WHILE ∼ DO27
43

% A
M %
R
94

%
WHILE ∼ DO27 WHILE ∼ DO28
PO

DO27
26

Usable
Unusable
R

END27 END28
o.

O
N

M END27
al

END2
K

M
ri

ZA

END2
Se

END1
A

END1
IM

Note: For nesting, m once used cannot be used again.


K

[5] WHILE ∼ DOm must precede ENDm. [6] WHILE ∼ DOm must correspond to ENDm one-to-one in the
ZA

same program.
A

WHILE ∼ DO1
M

END1
YA

WHILE ∼ DO1
3

Unusable
01

Unusable
)2

WHILE ∼ DO1 END1


(c
ht
ig

[7] WHILE ∼ DOm must not overlap. [8] Outward branching from the range of WHILE ∼ DOm is
yr

possible.
WHILE ∼ DO1
op

WHILE ∼ DO1
C

Unusable WHILE ∼ DO2

IF ∼ GOTOn
END1
Usable END1

END2
Nn!!!!!!!!

12-112
Serial No. 269443

PROGRAM SUPPORT FUNCTIONS 12


[9] Branching into WHILE ∼ DOm is not allowed. [10] Subprogram can be called using M98, G65, G66, etc. from
WHILE ∼ DO1 the midway of WHILE ∼ DOm.
IF ∼ GOTOn
Unusable Main program Subprogram (O100)
IF ∼ GOTOn
WHILE ∼ DO1 WHILE ∼ DO2
WHILE ∼ DO1 END1
Unusable
G65 P100
Usable END2
WHILE ∼ DO1 To sub-
Nn!!!!!!!! program
END1
Nn!!!!!!!! M99
M02
END1
END1

d .
ve
[11] The looping can be independently programmed in a [12] If WHILE and END are not included in pairs in subprogram

er
subprogram which is called using G65/G66 from the (including macro subprogram), a program error will result at
midway of WHILE ∼ DOm. Up to 27 levels of nesting for

s
M99.

re
both programs can be done.
Main program Subprogram (O100)

ts
gh
Main program Subprogram (O100)

ri
WHILE ∼ DO1 WHILE ∼ DO1
WHILE ∼ DO1 G65 P100

ll
.A
G65 P100 M99

N
Usable M02
END1

O
To sub-

TI
END1 program
43

M99
A Alarm 868 DO-END MIS-MATCH
R
94

PO
26

R
o.

O
N

C
al

K
ri

ZA
Se

A
IM
K
ZA
A
M
YA
3
01
)2
(c
ht
ig
yr
op
C

12-113
Serial No. 269443

12 PROGRAM SUPPORT FUNCTIONS

12-10-7 External output commands (Output via RS-232C)

1. Overview
In addition to standard user macros, the types of macros listed below are provided as external
output commands. These external output macros can be used to output character data or the
numerical data in variables to an external unit via an RS-232C interface. The data are outputted
in a data length of 7 bits with an even-parity bit added.

A. Types and functions of external output macros


POPEN Setup processing for data output

d.
PCLOS Termination processing of data output

ve
er
BPRNT Printout of character data or binary printout of variable data

s
re
DPRNT Printout of character data or numerical printout of variable data on a digit-by-digit

ts
basis

gh
ri
B. Programming order

ll
.A
N
POPEN Open command

O
TI
43

A
R
94

PO

Data output commands


26

BPRNT DPRNT
R
o.

O
N

C
al

Close command
ri

PCLOS
ZA
Se

A
IM

2. Open command POPEN


K
ZA

Programming format: POPEN


A

Detailed description
M
YA

- The command code POPEN must be included before a series of data output command codes.
3

- The control code for DC2 and the percentage code % are output from the NC unit to an
01

external output unit.


)2

- Once POPEN has been set, it will remain valid until PCLOS is set.
(c
ht

3. Close command PCLOS


ig
yr

Programming format: PCLOS


op
C

Detailed description
- The command code PCLOS must be included after all data output command codes.
- The control code for DC4 and the percentage code % are outputted from the NC unit to an
external output unit.
- This command must be used together with POPEN. This command code must be included only
after POPEN.
- This command must be set at the end of the program even after data output has been aborted
using, for example, the NC reset switch.

12-114
Serial No. 269443

PROGRAM SUPPORT FUNCTIONS 12


4. Data output command BPRNT
Programming format:
BPRNT[l1#v1[c1]l2#v2[c2]!!!!!!!!]

Effective digits after decimal point Variable value


c
Variable number × 10
Character string

Detailed description
- The command BPRNT can be used to output characters or to output variable data in binary
form.

d .
- The designated character string is outputted directly in the ISO coded format. Alphanumerics

ve
(A to Z, and 0 to 9) and/or special characters (+, –, ∗, /) can be used. Of these characters, only

er
the asterisk (∗) is outputted as a space code.

s
re
- Since all variables are saved as those having a decimal point, the necessary number of

ts
decimal digits must be enclosed in brackets ([ ]).

gh
All variables are handled as data of four bytes (32 bits), and each byte is outputted as binary

ri
ll
data in the order of the most significant byte first. Minus data is processed as the complement

.A
for that data.

N
Example 1: If three digits are specified for 12.3456, then

O
TI
[12.346 × 103] = 12346 (0000303A)
43

will be outputted as binary data.A


R
94

PO

Example 2: If no digits are specified for –100.0, then


26

–100 (FFFFFF9C)
o.

O
N

will be outputted as binary data.


C
al

- After the specified data has been outputted, the EOB (End Of Block) code is outputted in the
ri

ZA
Se

format of the appropriate ISO code.


A
IM

- Variables containing <empty> are interpreted as 0s.


K

5. Data output command DPRNT


ZA
A

Programming format:
M

DPRNT[l1#v1[d1 c1]l2#v2[c2]LL]
YA
3

Effective digits below decimal point


01

Effective digits above decimal point c+d≤8


)2

Variable number
(c

Character string
ht
ig

Detailed description
yr
op

- Output of character data or decimal output of variable data is performed in the format of ISO
C

codes.
- The designated character string is outputted directly in the ISO coded format.
Alphanumerics (A to Z, and 0 to 9) and/or special characters (+, –, ∗, /) can be used. Of these
characters, only the asterisk (∗) is outputted as a space code.
- Of the data contained in a variable, the necessary number of digits above the decimal point and
that of digits below the decimal point must each be enclosed in brackets ([ ]). The variable
data will then have its total specified number of digits, including the decimal point, outputted in
the ISO coded format in the order of the most significant digit first. No trailing zeros will be left
out in that case.

12-115
Serial No. 269443

12 PROGRAM SUPPORT FUNCTIONS

12-10-8 External output command (Output onto the hard disk)

1. Overview
External output macros can also be used to output data in text file format into the predetermined
directory on the hard disk.

2. Related parameters
- DPR14: Selection of an output destination port
Set DPR14 to “4” (Output onto the hard disk) under OTHER on the DATA I/O PARAMETER
display.
- DPR15: Number of lines in feed section

d.
ve
Set the required number of lines to be fed.

er
- DPR8: Output file size

s
re
Use this parameter to specify the maximum permissible output file size.

ts
Maximum permissible file size: DPR8 × 100 (KB)

gh
ri
A command for outputting a greater file will cause a corresponding alarm.

ll
.A
However, the file size limit is 100 KB if the value in DPR8 is 0.

N
O
Note: Output of a file of smaller size than the limit, however, may not be possible due to a

TI
shortage of available area on the hard disk.
43

A
R
94

The DATA I/O PARAMETER display can be selected by pressing the [DATA I/O PARAM.]
PO
26

menu key on the DATA I/O display.


R
o.

See the Parameter List for details of the parameters.


N

C
al

3. Output file
ri

ZA
Se

The text file will be automatically outputted with a particular file name into the predetermined
A
IM

directory.
K

Output directory: c:\MC_sdg\print\


ZA

Output file name: print.txt


A
M

(A file of this name will be automatically created, if required, or the text data
YA

will be added to the current contents of the file.)


3
01
)2
(c
ht
ig
yr
op
C

12-116
Serial No. 269443

PROGRAM SUPPORT FUNCTIONS 12


File contents:
Given below on the right is an example of text file contents created by the execution of the
program shown on the left under the particular parameter settings.

[Program] [Output example]


print.txt
G28XYZ

POPEN %
DPRNT[OOOOOOOOOOOO] OOOOOOOOOOOO
DPRNT[XXXXXXXXXXXX] XXXXXXXXXXXX

.
d
DPRNT[IIIIIIIIIIII] IIIIIIIIIIII

ve
PCLOS %

s er
re
G0X100.Y100.Z100.

ts
M30

gh
ri
ll
[Parameter]

.A
DPR14: 4

N
O
DPR15: No setting

TI
43

A
R
94

PO
26

4. Related alarms
R
o.

The alarm given for text file output is described below.


N

C
al

No. Message Argument 1 Argument 2 Argument 3


ri

ZA
Se

887 TAPE I/O ERROR –100 File open error 0 0


A
IM

–111 File write error 0 0


–112 File size too great 0 0
K
ZA
A
M
YA
3
01
)2
(c
ht
ig
yr
op
C

12-117
Serial No. 269443

12 PROGRAM SUPPORT FUNCTIONS

12-10-9 Precautions
Use of user macro commands allows a machining program to be created by combining arithmetic
operation, judgment, branchining, or other macro commands with conventional NC commands
such as move commands, M-, S-, T-commands, etc. The statement defined by these macro
commands and that of conventional NC commands are taken as a macro statement and an NC
execute statement, respectively. The treatment of a macro statement has no direct rerations with
machine control. Its treatment as short as possible is effective for shortening machining time.
Parallel processing of the NC execute statement and the macro statement becomes possible
according to the setting of bit 6 of parameter F93.
(It becomes possible to process all macro statements in batch form by setting the parameter bit
to OFF when machining the workpiece, or to execute the macro statements block-by-block by

.
d
ve
setting the parameter bit to ON when checking the program. Therefore, set the parameter bit

er
according to your requirements.)

s
re
Sample program

ts
N1 G91G28X0Y0Z0

gh
N2 G92X0Y0Z0

ri
N3 G00X–100.Y–100.

ll
.A
N4 #101=100.∗COS[210.] Macro statements

N
N5 #102=100.∗SIN[210.]

O
N6 G01X#101Y#102F800

TI
43

A
A macro statement refers to a statement that consists of the following blocks:
R
94

PO

- Arithmetic operation command block (compassing the equal sign =)


26

- Control command block (compassing GOTO, DO ∼ END, etc.)


o.

O
N

- Macro call command block (compassing macro call or cancellation G-code commands G65,
al

K
ri

G66, G66.1, or G67)


ZA
Se

An NC execute statement refers to a non-macro statement.


IM
K
ZA
A
M
YA
3
01
)2
(c
ht
ig
yr
op
C

12-118
Serial No. 269443

PROGRAM SUPPORT FUNCTIONS 12


The flow of processing of these two types of statements is shown below.

N1 N2 N3 N4 N5 N6 N7
Program analysis

Macroprogram statement N4 N5
Parameter treatment
OFF N2 N3 N6 N7
Next command
NC statement
treatment N1 N2 N3 N6
In execution

d .
N1 N2 N3 N4 N5 N6 N7

ve
Program analysis

er
N4 N5

s
Macroprogram statement

re
Parameter treatment
ON

ts
N2 N3 N4 N7
Next command

gh
NC statement

ri
treatment N1 N2 N3 N6
In execution

ll
.A
N
O
Machining program data is displayed as follows:

TI
43

A N4, N5 and N6 are treated in parallel with NC


R
94

execution sentence of N3, and N6 is displayed as


PO
26

Parameter (In execution) N3 G00X–100.Y–100. next command because it is NC execution


R

OFF (Next command) N6 G01X#101Y#102F800 sentence. When N4, N5, and N6 are analized
o.

during NC execution sentence of N3, machine


N

control continues.
al

K
ri

N4 is treated in parallel with the control of NC


ZA
Se

execution sentence of N3, and is displayed as


A

next command.
IM

Parameter (In execution) N3 G00X–100.Y–100.


After N3 is completed, N5 and N6 are analized so
ON (Next command) N4 #101=100.∗COS[210.]
the machine control is forced to wait by the
K
ZA

analyzing time of N5 and N6 before N6 can be


executed.
A
M
YA
3
01
)2
(c
ht
ig
yr
op
C

12-119
Serial No. 269443

12 PROGRAM SUPPORT FUNCTIONS

12-10-10 Specific examples of programming using user macros


The following three examples of programming are shown here:
Example 1: SIN curve
Example 2: Bolt-hole circle
Example 3: Grid

Example 1: SIN curve

Y (sin θ)

.d
G65 Pp1 Aa1 Bb1 Cc1 Ff1 100.

ve
ser
re
A: Initial value 0°
B: Final value 360° X

ts
C: R of R∗SINθ

gh
0 90. 180. 270. 360.
F: Feed rate

ri
ll
.A
N
–100.

O
TI
43

MEP172
A
R
94

PO
26

Main program O9910 (Subprogram)


o.

O
N

M WHILE[#1LE#2]DO1
al

To subprogram
K

G65P9910A0B360.C100.F100
#10=#3∗SIN[#1]
ri

ZA

M Note
Se

G90G1X#1Y#10F#9
A

#1=#1+10.
IM

END1
K

#1 = 0 M99
Local variable set
ZA

in argument #2 = 360.000
A

#3 = 100.000
M

#9 = 100.000
YA

Note: G90G01X#1Y[#3∗SIN[#1]]F#9
makes one block command available.
3
01
)2
(c
ht
ig
yr
op
C

12-120
Serial No. 269443

PROGRAM SUPPORT FUNCTIONS 12


Example 2: Bolt-hole circle
After hole data has been defined using fixed-cycle machining commands G72 to
G89, hole positions are to be designated using macro commands.

Main program –X x1
W

a1 : Start angle
G81Z–100.R50.F300 b1 : Hole quantity a1
To sub y1
G65P9920Aa1Bb1Rr1Xx1Yy1 r1 : Radius
program

.
x1 : X-axis center position

d
–Y

ve
y1 : Y-axis center position

er
MEP173

s
re
O9920
O9920 (Subprogram)

ts
gh
ri
#101=0 0 → #101 #101 = Hole count

ll
#102=#4003 G90,G91 - Read-in

.A
#103=#5001 → #102 #102 = G90 or G91
Note
Preceding coordinate

N
#104=#5002
read-in

O
#111=#1
X → #103 #103 = X-axis present position

TI
→ #104
43

Y #104 = Y-axis present position


Start angle
A → #111 #111 = Start angle
R
94

WHILE[#101LT#2]DO1
PO
26

#120=#24+#18∗COS[#111]
R

Note
#121=#25+#18∗SIN[#111]
o.

No
O

#101 ≤ Hole
N

END
C

quantity
#122=#120 #123=#121
al

IF[#102EQ90]GOTO100 Yes
ri

ZA
Se

Radius∗COS [#111] #120 = Hole position X coordinate


A

#122=#120–#103
Note + center coordinate X → #120
IM

#123=#121–#104 #121 = Hole position Y coordinate


Radius∗SIN [#111] #122 = X-axis absolute value
K

#103=#120 + center coordinate Y → #121 #123 = Y-axis absolute value


ZA

#104=#121 #120 → #122


A

#121 → #123
M

N100 X#122Y#123
YA

#101=#101+1 Note Yes Mode judge G90, G91


#111=#1+360.∗#101/#2
3

#102 = 90
01
)2

END1 No
M99
(c

#120 – #103 → #122 #122 = X-axis incremental value


ht

#121 – #104 → #123 #123 = Y-axis incremental value


ig

#120 → #103 X-axis present position renewal


yr

→ #104
op

#121 Y-axis present position renewal


C

Note: N100X#122Y#123 Drilling command


The processing time can be reduced by
one-block reduced programming.
#101+1 → #101 Hole number count-up
Y
360°∗#101/Hole quantity
+ #1 → #111 #111 = Hole position angle

12-121
Serial No. 269443

12 PROGRAM SUPPORT FUNCTIONS

–X –500. W
G28X Y Z
T1 M06
G90 G43 Z100. H01
G54 G00 X0 Y0
To subprogram
G81 Z-100. R3. F100 M03
G65 P9920X-500. Y-500. A0 B8R100.
G65 P9920X-500. Y-500. A30. B8R200.
G65 P9920X-500. Y-500. A60. B8R300. 100.
–500.

200.
300.

.
–Y

d
ve
s er
MEP174

re
ts
Example 3: Grid

gh
After hole data has been defined using fixed-cycle machining commands G72 to

ri
G89, hole positions are to be designated using macro call commands.

ll
.A
N
O
G81 Zz1 Rr1 Ff1

TI
–X x1
43

G65Pp1 Xx1 Yy1 Ii1 Jj1 Aa1 Bb1


A i1 W
R
94

PO

X : X-axis hole position


26

Y : Y-axis hole position y1


R
o.

j1
O

I : X-axis distance
N

J : Y-axis distance
al

A : X direction hole quantity Subprogram is


ri

ZA

shown on the
B : Y direction hole quantity
Se

next page.
A

–Y
IM
K
ZA

MEP175
A
M
YA

G28X Y Z 100. 100. 100.


W
3

T1 M06 –X
01

G90 G43 Z100. H01


)2

G54 G00 X0 Y0 –75.


(c

G81 Z–100. R3. F100M03


G65P9930 X0 Y0 I100. J–75. A5B3
ht

–75.
ig
yr

To subprogram –Y
op

G84 Z–90. R3. F250M03


C

G65P9930 X0 Y0 I–100. J–75. A5B3 –X

–100.

–Z

MEP176

12-122
Serial No. 269443

PROGRAM SUPPORT FUNCTIONS 12

O9930 (Subprogram) O9930

Start point X coordinate → #101 #101 = X-axis start point


Start point Y coordinate → #102 #102 = Y-axis start point
#101=#24 Y-axis direction distance → #104 #104 = Y direction distance
#102=#25 X-axis hole quantity → #105 #105 = X-axis hole quanty
#104=#10 Y-axis hole quantity –1 → #106 #106 = Y-axis hole quantity – 1
#105=#1
Note 0 → #110 #110 = Y direction line count
#106=#2–1
#110=0 0 → #111 #111 = Even/odd times judge
#111=0 0 → #112 #112 = X-axis drilling direction
#112=0 reverse switch
N2

d .
0 → #113

ve
#113 = X-axis distance initial
X direction distance → #103

er
N2 #113=0 #103 = X direction distance
Note

s
#103=#9

re
No

ts
#105 > 0 N100 X direction hole drilling

gh
WHILE[#105GT0]DO1 completion check
#101=#101+#113

ri
Yes
#105=#105–1 Note

ll
X#101Y#102 #101 + #113 → #101 X coordinates renewal

.A
#105 –1 → #105 X direction hole quantity – 1

N
O
IF[#112EQ1]GOTO10

TI
IF[#111NE1]GOTO10 X#101 Y#102 Drilling command
43

A
R
94

PO

#103=0–#103
26

Note Yes X-axis drilling direction reverse


#112=1 #112 = 1 switch check
R
o.

O
N

N10 #113=#103 No
C

END1 For even times (#111 = 0), X


al

No distance is same as command.


ri

ZA

#111 = 1 For odd times (#111 = 1), X-axis


Se

N100 #106=#106–1
drilling direction reverse switch on
A

#112=0 Note Yes


IM

#110=#110+1
0 – #103 → #103
K

IF[#106LT0]GOTO200
1 → #112
ZA

#105=#1
A

N10
#102=#102+#104
M

Note
#111=#110 #103 → #113 X-axis drilling distance reset
YA

#111=#111AND1
3

N100
01

GOTO2
#106 – 1 → #106
)2

Y-axis hole quantity – 1


→ #112
(c

N200 M99 0 X-axis drilling direction reverse switch off


#110 + 1 → #110
ht

Y direction line count-up


ig

Y direction hole drilling


yr

Yes
completion check
op

#106 < 0
C

END
No

#1 → #105 X-axis hole quantity reset


Note: #102 + #104 → #102 Y coordinates renewal
The processing time can be reduced by one- #110 → #111
block reduced programming. Even times = 0
#111AND 1 → #111
Odd times = 1

12-123
12

C
op
yr
ig
- NOTE -

ht
(c
)2
01
3
YA
PROGRAM SUPPORT FUNCTIONS

M
A Se
ZA
K ri
al
IM
N
A o.
ZA 26
K 94

12-124 E
C
O 43
Serial No. 269443

R
PO
R
A
TI
O
N
.A
ll
ri
gh
ts
re
ser
ve
d.
Serial No. 269443

COORDINATE SYSTEM SETTING FUNCTIONS 13


13 COORDINATE SYSTEM SETTING FUNCTIONS

13-1 Coordinate System Setting Function: G50

1. Function and purpose


A coordinate system can be set by giving a G50 command with the tool being positioned as
required. This coordinate system can be placed anywhere, but its zero point should normally be
set to a point in which the axis of rotation of the workpiece (as determined on the X- and Y-axis)
cuts its front face (as determined on the Z-axis).

2. Programming format

.d
ve
G50 Xx Zz αα; (α is additional axis.)

ser
re
3. Detailed description

ts
For moving the tool by absolute programming data, the coordinate system needs to be deter-

gh
ri
mined in advance. The coordinate system can be set by a command of the following format.

ll
G50 X_ Z_ C_ ;

.A
N
This command sets a coordinate system in which a point on the tool, for example the tool tip

O
position, can be represented with coordinates (X, Z). This coordinate system is called workpiece

TI
43

coordinate system. A
R
94

Once a coordinate system is set, coordinates by absolute programming method will represent
PO
26

the positions in this coordinate system.


R
o.

The command need not have all axes specified. To change coordinate systems in the flow of the
O
N

program, give a command with only an argument for the axis for which change is required.
al

K
ri

Example 1:
ZA
Se

A
IM
K
ZA
A

50 300
M

Chuck Jaw
YA

+X
3

Workpiece
01

+Z
φ350
)2

A
Workpiece
(c

zero point
ht
ig

Unit: mm
yr
op
C

G50 X350.0 Z300.0;


For setting a coordinate system with point A as zero point:
G50 X350.0 Z350.0;

13-1
Serial No. 269443

13 COORDINATE SYSTEM SETTING FUNCTIONS

Example 2:

300
δX

δZ
Chuck Jaw
+X φ700

Workpiece
+Z

Workpiece

. d
zero point

ve
Unit: mm

ser
re
For setting at a reference point:

ts
gh
G50 X700.0 Z300.0;

ri
This coordinate system uses the center of turret rotation as a reference point.

ll
.A
Any point can be used as a reference. To compensate for δX and δZ, use the function of tool

N
position offset. For details, refer to Section 11-2.

O
TI
Remarks
43

A
R
- The basic machine coordinate system is shifted by G50 command to set a virtual machine
94

PO
26

coordinate system.
R
o.

- The G50 function code causes the maximum or minimum spindle speed to be set when it is
O
N

used with argument S or Q. (Refer to the relevant section.)


al

K
ri

- If a G50 command is given during tool offset, the coordinate system will be set in which the
ZA
Se

position without offset is represented with the values specified with the G50 command.
A
IM

- Nose radius compensation is temporarily cancelled by G50.


K

- S value in a block of G50 will be regarded as an argument for maximum spindle speed setting,
ZA

but not as an ordinary spindle function (desired spindle speed setting).


A
M
YA
3
01
)2
(c
ht
ig
yr
op
C

13-2
Serial No. 269443

COORDINATE SYSTEM SETTING FUNCTIONS 13


4. Coordinate system shift
A coordinate system can be shifted by a command of the following format:
G50 U_ W_ H_ ;
This command will create a new coordinate system where a point on a tool, for example, the tool
tip position represented by (X, Z) in the preceding coordinate system will be represented by (X +
U, Z + W). In other words, the above command is equivalent to the following:
G50 X Present X-coordn. + U Z Present Z-coordn. + W C Present C-coordn. + H ;
Example:

.
X

d
ve
er
7.0

s
160.

re
ts
gh
(300.) T01

ri
(φ700)

ll
.A
Z

N
O
TI
43

A
R
94

TEP190
PO
26

(G50 X700.0 Z300.0;)


R
o.

(T01)
N

C
al

G50 U–320.0 W–7.0;


K
ri

ZA

In this example, the coordinate system is corrected for the tool T01 by a shift command.
Se

A
IM

5. G50 command and indications on the POSITION and MACHINE counters


K

Example 1:
ZA

Offset data (–10.0, –10.0)


A

Parameter K95 bit 2 = 0 Parameter K95 bit 2 = 1


Program
M

POSITION MACHINE POSITION MACHINE


YA

N01 G28 U0 W0; (0, 0) (0, 0) (0, 0) (0, 0)


3

N02 G50 X0. Z0.; (0, 0) (0, 0) (0, 0) (0, 0)


01
)2

N03 T001001; (0, 0) (0, 0) (–10, –10) (–10, –10)


(c

N04 G00 X50. Z50.; (40, 40) (40, 40) (40, 40) (40, 40)
ht

N05 G50 X0. Z0.; (–10, –10) (40, 40) (–10, –10) (40, 40)
ig

N06 G00 X50. Z50.; (40, 40) (90, 90) (40, 40) (90, 90)
yr

(40, 40) (90, 90) (50, 50) (100, 100)


op

N07 T001000;
C

N08 G00 X0. Z0.; (0, 0) (50, 50) (0, 0) (50, 50)
N09 G28 U0 W0; (–50, –50) (0, 0) (–50, –50) (0, 0)
N10 M02; (–50, –50) (0, 0) (–50, –50) (0, 0)

13-3
Serial No. 269443

13 COORDINATE SYSTEM SETTING FUNCTIONS

Example 2: Offset data (–10.0, –10.0)

Parameter K95 bit 2 = 0 Parameter K95 bit 2 = 1


Program
POSITION MACHINE POSITION MACHINE
N01 G28 U0 W0; (0, 0) (0, 0) (0, 0) (0, 0)
N02 G50 X0. Z0.; (0, 0) (0, 0) (0, 0) (0, 0)
N03 G00 X50. Z50.; (50, 50) (50, 50) (50, 50) (50, 50)
N04 G50 X0.Z0.T001001; (0, 0) (50, 50) (–10, –10) (40, 40)
N05 G00 X50. Z50.; (40, 40) (90, 90) (40, 40) (90, 90)
N06 T001000; (40, 40) (90, 90) (50, 50) (100, 100)
N07 G00 X0. Z0.; (0, 0) (50, 50) (0, 0) (50, 50)

.
(–50, –50) (0, 0) (–50, –50) (0, 0)

d
N08 G28 U0 W0;

ve
N09 M02; (–50, –50) (0, 0) (–50, –50) (0, 0)

s er
re
Example 3: Offset data (–10.0, –10.0)

ts
Parameter K95 bit 2 = 0 Parameter K95 bit 2 = 1

gh
Program
POSITION MACHINE POSITION MACHINE

ri
ll
N01 G28 U0 W0; (0, 0) (0, 0) (0, 0) (0, 0)

.A
N02 G50 X0.; (0, 0) (0, 0) (0, 0) (0, 0)

N
(50, 50) (50, 50) (50, 50) (50, 50)

O
N03 G00 X50. Z50.;

TI
N04 G50 X0.Z0.T001001; (0, 0) (50, 50) (–10, –10) (40, 40)
43

N05 G00 X50. Z50.; (40, 40)


A
(90, 90) (40, 40) (90, 90)
R
94

PO

(–50, –50) (0, 0) (–50, –50) (0, 0)


26

N06 G28 U0 W0;


R

N07 M02; (–50, –50) (0, 0) (–50, –50) (0, 0)


o.

O
N

Note: Bit 2 of parameter K95 setting selects whether compensation movement is made on T
al

K
ri

ZA

command (Yes = 1, No = 0).


Se

A
IM
K
ZA
A
M
YA
3
01
)2
(c
ht
ig
yr
op
C

13-4
Serial No. 269443

COORDINATE SYSTEM SETTING FUNCTIONS 13

13-2 MAZATROL Coordinate System Cancellation: G52.5

1. Function and purpose


It is a function to select ordinary workpiece coordinate system (G54 to G59). The MAZATROL
coordinate system currently selected is cancelled by this function.
- Command of G52.5 is ignored in the G52.5 mode.
- When a G52.5 command is given in the G53.5 mode, the current MAZATROL coordinate
system is cancelled, and the last workpiece coordinate system that has been cancelled by the
G53.5 command is restored, with the POSITION indications accordingly changed.

.
d
2. Detailed description

ve
er
1. G52.5 must be commanded in an independent block. An alarm will be caused (807 IL-

s
re
LEGAL FORMAT) when G52.5 and move commands are given in the same block.

ts
2. Program example

gh
ri
G50 X__ Z__;

ll
M

.A
G00 X__ Z__; POSITION counter with respect to the G50 system

N
G53.5; POSITION counter changed for the G53.5 system

O
TI
G00 X__ Z__;
43

M
A
R
94

PO

G00 X__ Z__; POSITION counter with respect to the G53.5 system
26

G52.5; POSITION counter changed for the preceding G50 system


R
o.

O
N

3. It depends on a parameter (F114 bit 6) whether G52.5 or G53.5 is selected when turning the
C
al

power on or resetting.
ri

ZA
Se

F114 bit 6 = 0 : Initial selection G52.5


A

F114 bit 6 = 1 : Initial selection G53.5


IM

Here, “reset” refers to the following:


K
ZA

- The reset key is pressed in the G53.5 mode.


A

- A program end code (M30, M998, M999, %) is executed in the G53.5 mode.
M

4. When a G52.5 command is given in the mode of nose radius compensation, compensation
YA

data will be temporarily cancelled in the movement block preceding the G52.5 command. At
3
01

the time of the G52.5 command, the position of the virtual tool tip point is identical with the
)2

programmed position.
(c
ht
ig
yr

Compensation vector G53.5;


op

G41;
C

Nose radius center path


M
Compensation
N3 N1 vector N1 G00 Z10.;
Ce N2 Programmed path N2 G52.5;
Ca N3 G01 X20. Z20.;
G50

G53.5

TEP183

13-5
Serial No. 269443

13 COORDINATE SYSTEM SETTING FUNCTIONS

5. A G52.5 command given in the mode of tool position offset, however, does not cause any
cancellation of offset data.

G53.5;
N2 M
N3
Offset vector N1 G00 Z100.;
N1
N2 G52.5;
Programmed path N3 G01 X100. Z100.;

G50 Ce

.
Ca Nose radius center path

d
ve
G53.5

s er
re
TEP184

ts
gh
ri
ll
.A
N
O
TI
43

A
R
94

PO
26

R
o.

O
N

C
al

K
ri

ZA
Se

A
IM
K
ZA
A
M
YA
3
01
)2
(c
ht
ig
yr
op
C

13-6
Serial No. 269443

COORDINATE SYSTEM SETTING FUNCTIONS 13

13-3 Selection of MAZATROL Coordinate System: G53.5

1. Function and purpose


G53.5 Z_ C_;
Z_: Z-offset value (The corresponding setting on the SETUP INFORMATION display will
be used when argument Z is omitted.)
C_: C-offset value (The corresponding setting on the SETUP INFORMATION display will
be used when argument C is omitted.)
This function is used to change the workpiece coordinate system (G54 to G59) to a MAZATROL
coordinate system. MAZATROL coordinate system is established on the basis of the machine

.
d
coordinate system with reference to the TOOL SET* and Z-OFFSET* values, a system appro-

ve
er
priate to a particular tool and a particular workpiece.

s
re
* TOOL SET: Machine coordinates of positioning the tool tip to the reference workpiece zero
point.

ts
gh
* Z-OFFSET: Amount of offset on the Z-axis from the reference workpiece zero point (used as

ri
the reference for tool setting values) to the zero point of a particular workpiece

ll
(zero point of a MAZATROL coordinate system).

.A
Use of the function eliminates the need for complicated coordinate handling, so that EIA/ISO

N
O
programs can be easily prepared in the same manner as MAZATROL programs.

TI
43

A
R
94

PO
26

Machine
R
o.

zero point
O
N

C
al

Z-OFFSET TOOL SET Z


K
ri

ZA

TOOL SET X
Se

A
IM

Reference workpiece
zero point
K
ZA

Zero point of a MAZATROL


A

coordinate system
M
YA

As shown above, the zero point of a MAZATROL coordinate system refers to positioning the tool
3
01

tip onto the point of intersection between the axis of rotation and the face of the workpiece. In
)2

other words, a G53.5 command is equivalent to a “G50X0Z0;” command given after the above-
(c

mentioned positioning.
ht

- Command of G53.5 is ignored in G53.5 mode.


ig
yr

- When G53.5 is commanded in G52.5 mode, the workpiece coordinate system currently
op

provided is cancelled, and the tool coordinate system for a tool currently selected is set.
C

Current position display is also changed to a value of new coordinate system then.
- When a tool change command (T-code) is executed in the G53.5 mode, the coordinate system
is automatically changed with respect to the new tool.
- When in the G53.5 mode a T-code and a move command are given in the same block, the
coordinate system is always modified after the movement, irrespective of the programming
order of the two commands within the block in question.
- G53.5 must be commanded in an independent block. An alarm will be caused (807 ILLEGAL
FORMAT) when G53.5 and move commands are given in the same block.

13-7
Serial No. 269443

13 COORDINATE SYSTEM SETTING FUNCTIONS

2. Detailed description
1. When a MAZATROL coordinate system is cancelled by G52.5 in the G53.5 mode, the
coordinate system is returned to the workpiece coordinate system of G54 to G59. The
coordinate system to be restored is that which was cancelled by the G53.5 command, not a
system which was set by a G50 command in the G53.5 mode.
When G53.5 is set as an initial condition, the first G52.5 command in a program establishes
the coordinate system of G54.
2. A command with G53.5 as well as G52.5, and a T-code in the G53.5 mode are internally
divided into two blocks. The first output block, however, does not cause a stop in the
single-block operation mode.

d .
Command Output block 1 Output block 2

ve
er
G53.5 Commands other than G53.5 Corresponding G50 command

s
Commands for tool change, G50 command corresponding to the T-

re
T-code in the G53.5 mode
movement, etc. code

ts
gh
G52.5 Commands other than G52.5 Corresponding G50 command

ri
3. Supplement

ll
.A
1. Selection of workpiece coordinate system (G54 to G59) is ignored in G53.5 mode.

N
O
2. Selection of local coordinate system (G52) is ignored in G53.5 mode.

TI
43

3. When zero point return for all axes (other than the C-axis) is not yet finished using watchdog
A
R
94

method, a G53.5 command will cause an alarm. No alarm occurs, however, if a G53.5
PO
26

command is given in the same block with a G28 command the execution of which will fulfill
R
o.

the required condition.


O
N

4. When G53.5 and G50 commands are given in the same block, the commands are executed
al

K
ri

ZA

in the order of G50 to G53.5, irrespective of the programming order of the two commands
Se

within the block in question.


A
IM

5. When multiple G50 commands have been given before the selection of the G53.5 mode,
K

the coordinate system established by the last G50 command will be restored upon
ZA

cancellation of the G53.5 mode.


A
M

6. When in the G53.5 mode a T-code and a G50 command are given in the same block, the
YA

coordinate system is modified with respect to the new tool after the execution of the G50
command.
3
01

7. When in the G53.5 mode a T-code and a G52.5 command are given in the same block, the
)2

G52.5 command only is executed without modification of the coordinate system for the new
(c

tool.
ht
ig
yr
op
C

13-8
Serial No. 269443

COORDINATE SYSTEM SETTING FUNCTIONS 13

13-4 Selection of Workpiece Coordinate System: G54 to G59

1. Function and purpose


G54; Workpiece coordinate system 1
G55; Workpiece coordinate system 2
G56; Workpiece coordinate system 3
G57; Workpiece coordinate system 4
G58; Workpiece coordinate system 5
G59; Workpiece coordinate system 6
Commanding the above permits selection/change of one of six coordinate systems specified

. d
beforehand that are agreed with the machine. (For G53.5 MAZATROL coordinate system, it is

ve
er
ignored.) By this command, subsequent axis commands are used as positioning at selected

s
workpiece coordinate system until the reset key is pressed.

re
ts
gh
ri
ll
Machine

.A
zero point

N
G58

O
TI
43

A
R
94

PO
26

R
o.

G54 G55 G57


N

G56
C
al

K
ri

ZA
Se

A
IM

For the six workpiece coordinate systems, set the distance of each axis from the machine zero
point to the zero point of each coordinate system on the WORK OFFSET display.
K
ZA

2. Remarks
A
M

1. When G54 to G59 and move command are given in the same block, the coordinate system
YA

is changed to the specified one to move to the specified position on a new coordinate
3

system.
01
)2

2. When G54 to G59 are changed independently, the counter display of current position
(c

changes to a value on the specified coordinate system. (Machine does not move.)
ht

3. Workpiece coordinate systems 1 to 6 are correctly established after reference point return
ig
yr

after the power is turned on.


op

4. When the power is turned on or when the reset key is pressed, G54 is selected.
C

5. The distance when coordinate system is moved by G50 is added subsequently to all
workpiece zero point offset values. For example, when coordinate system is moved by “G50
U_ W_” command in the selection of G54, G55 to G59 also move by the same distance.
Therefore, take care when having changed to G55.
6. The coordinate system cannot be established exactly for the C-axis by a command of G54
to G59 if it is given with the C-axis not being connected. Do not fail, therefore, to select the
milling mode (for C-axis connection) before entering G54 to G59 as required for the C-axis.

13-9
Serial No. 269443

13 COORDINATE SYSTEM SETTING FUNCTIONS

13-5 Additional Workpiece Coordinate System Setting and Selection: G54.1


(Option)

1. Function and purpose


In addition to the six standard systems G54 to G59, up to 300 sets of workpiece origin data can
be used to facilitate program creation.
Note 1: Local coordinate system setting is not available in G54.1 mode.
Note 2: Setting a G52-command during G54.1 mode will cause the alarm 949 NO G52 IN
G54.1 MODE.

.
2. Programming format

d
ve
er
A. Selection of a workpiece coordinate system

s
re
G54.1 Pn (n = 1 to 300)

ts
gh
Example: G54.1P48 Selection of P48 system

ri
Note: Omission of P and setting of “P0” function the same as “P1”. Setting a value other than

ll
.A
integers from 0 to 300 at address P causes the alarm 809 ILLEGAL NUMBER INPUT.

N
O
B. Movement in a workpiece coodinate system

TI
43

G54.1Pn (n = 1 to 300) A
R
94

G90 Xx Yy Zz
PO
26

Example: Selection of P1 system


R

G54.1P1
o.

Movement to P1-system origin (0, 0, 0)


N

G90X0Y0Z0
C
al

K
ri

C. Setting of workpiece origin data


ZA
Se

G10 L20 Pn Xx Yy Zz (n = 1 to 300)


IM

Example: G90G10L20P30X–255.Y–50.
K
ZA

Replacement of the X and Y origin data of the P30-system.


A

G91G10L20P30X–3.Y–5.
M

Incremental processing on the X and Y origin data of the P30-system.


YA
3

3. Detailed description
01
)2

A. Remarks on omission of P and/or L


(c
ht

G10 L20 Pn Xx Yy Zz When n = 1 to 300: Correct setting of data for Pn-system origin
ig

Otherwise: Alarm 809 ILLEGAL NUMBER INPUT


yr
op

G10 L20 Xx Yy Zz Correct setting of workpiece origin data for the current system, except
C

for G54- to G59-system (in which case: Alarm 807 ILLEGAL FOR-
MAT)
G10 Pn Xx Yy Zz Correct setting of workpiece origin data for the current system
G10 Xx Yy Zz Correct setting of workpiece origin data for the current system

13-10
Serial No. 269443

COORDINATE SYSTEM SETTING FUNCTIONS 13


B. Precautions for programming
- Do not set together in a block of G54.1 or L20 any G-code that can refer to address P.
Such G-codes are for example:
G04 Pp Dwell
G30 Pp Reference-point return
G72 to G89 Fixed cycle
G65 Pp, M98 Pp Subprogram call
- Setting the G54.1-command without the option will cause the alarm 948 NO G54.1 OPTION.
- Setting “G10 L20” without the option will cause the alarm 903 ILLEGAL G10 L NUMBER.
- Local coordinate system setting is not available in G54.1 mode. Setting a G52-command

. d
ve
during G54.1 mode will cause the alarm 949 NO G52 IN G54.1 MODE.

s er
C. Related system variables

re
ts
The origin data of additional workpiece coordinate systems are assigned to system variables as

gh
listed-up in the following table:

ri
ll
1st axis to 16th axis or 1st axis to 16th axis

.A
P1 #70001 to #70016 P1 #7001 to #7016

N
O
P2 #70021 to #70036 P2 #7021 to #7036

TI
M M
43

M
A M
R
94

PO

M M
26

P299 #75961 to #75976 P47 #7921 to #7936


o.

O
N

P300 #75981 to #75996 P48 #7941 to #7956


C
al

K
ri

ZA

The variable number for the k-th axis origin of the “Pn” coordinate system can be calculated as
Se

follows:
A
IM

70000 + 20 (n – 1) + k or 7000 + 20 (n – 1) + k
K

(n = 1 to 300, k = 1 to 16) (n = 1 to 48, k = 1 to 16)


ZA
A
M
YA
3
01
)2
(c
ht
ig
yr
op
C

13-11
Serial No. 269443

13 COORDINATE SYSTEM SETTING FUNCTIONS

13-6 Shift of Workpiece Coordinate System


Difference may be caused between the workpiece coordinate system considered in program-
ming and the coordinate system specified actually by G50 command or G54 to G59 command.
The coordinate system being specified can be shifted then. The amount to be shifted is specified
at the SHIFT item on the WORK OFFSET display.

Coordinate shift Machine


amount zero point

.
G58

d
ve
s er
re
ts
gh
G54 G55 G56 G57

ri
ll
.A
N
All the six workpiece coordinate systems are shifted by the coordinate shift amount.

O
TI
- When the shift amount is specified, the workpiece coordinate system is shifted immediately.
43

A
R
(The shift amount is reflected in the current position counter.)
94

PO
26

- When “G50 X_ Z_” is specified after the shift amount has been specified, the shift amount is
R
o.

ignored.
O
N

C
al

13-7 Programmed Shift of Workpiece Coordinate System


ri

ZA
Se

G10 L2 P_ X(U)_ Z(W)_ C(H)_ ;


IM

P = 0: Coordinate shift amount is specified.


K

P = 1 to 6: Specified to workpiece coordinate system 1 to 6


ZA

X, Z, C: Workpiece zero point offset value of each axis


A
M

The above command permits rewriting a workpiece offset value to change the position of work-
YA

piece coordinate system. To move the workpiece coordinate system for each program, give the
3

command at the head of the program.


01

Note: The timing at which the rewritten value becomes effective is after G54 to G59
)2

command is subsequently executed.


(c
ht
ig
yr
op
C

13-12
Serial No. 269443

COORDINATE SYSTEM SETTING FUNCTIONS 13

13-8 Selection of Machine Coordinate System: G53

1. Function and purpose


G53 X_ Z_ C_ ;
The above command permits moving the tool to the commanded position in the machine
coordinate system at rapid feed. G53 is valid only for the commanded block.
To move a tool to the position specifically set for the machine including tool change position,
command G53 using the machine coordinate system.
A base point on the machine is referred to as the machine zero point. Machine zero point
depends on machine specifications.

d.
A coordinate system using machine zero point as the zero point of coordinate system is referred

ve
er
to as machine coordinate system.

s
The tool cannot always move to the machine zero point. In some cases, machine zero point is

re
set at a position to which the tool cannot move.

ts
gh
Machine coordinate system is established when the reference point return is executed after the

ri
power is turned on.

ll
Once the machine coordinate system is established, it is not changed by reset, workpiece

.A
coordinate system setting (G50), local coordinate system setting (G52) and other operation

N
unless the power is turned off.

O
TI
The positional information for stored stroke limit (G22, G23), which specifies the stroke of the
43

A
machine, must be set using the coordinate values of the machine coordinate system.
R
94

PO
26

2. Remarks
o.

O
N

1. When G53 is commanded, tool offset and tool nose radius compensation must be cancelled.
al

(Because they are not incorporated when G53 is commanded.)


ri

ZA
Se

2. Since the machine coordinate system must be set before G53 is commanded, at least one
A
IM

manual reference point return or automatic reference point return by G28 should be
executed after the power is turned on.
K
ZA

3. G53 with incremental command can be commanded, but it is meaningless.


A

4. Virtual axes such as Y-axis cannot be commanded. (The execution gives an alarm.)
M
YA

5. This command is valid even with a MAZATROL coordinate system being selected (G53.5).
3
01
)2
(c
ht
ig
yr
op
C

13-13
Serial No. 269443

13 COORDINATE SYSTEM SETTING FUNCTIONS

13-9 Selection of Local Coordinate System: G52


G52 X(U)_ Z(W)_ C(H)_ ;
Give a command of the above format to set a subordinate coordinate system (local coordinate
system) with reference to the current workpiece coordinate system (G54 to G59). When a local
coordinate system is specified, give move commands with coordinate values in the local
coordinate system.
To change the local coordinate system, give another G52 command with the workpiece coordi-
nates of the new zero point.
To cancell the local coordinate system, set the zero point of the local coordinate system to that of
the current workpiece coordinate system. That is, give a command of “G52 X0Z0”.

. d
ve
er
G58 local

s
re
coordinate Machine zero point
system

ts
gh
ri
G58

ll
G56 local G57 local

.A
coordinate coordinate
system system

N
O
TI
43

G54 G55 G56 A G57


R
94

PO
26

R
o.

O
N

Note: G52 can be used in place of G50 command. However, the distance through which the
al

K
ri

current coordinate system is shifted by G52 has no influence at all on the other work-
ZA
Se

piece coordinate systems.


A
IM
K
ZA
A
M
YA
3
01
)2
(c
ht
ig
yr
op
C

13-14
Serial No. 269443

COORDINATE SYSTEM SETTING FUNCTIONS 13

13-10 Automatic Return to Reference Point (Zero Point): G28, G29

1. Function and purpose


- Use a G28 command to perform return to the first reference point (zero point) after rapid
positioning (in G00 mode) to the desired intermediate point along the specified axes.
- Use a G29 command to perform rapid positioning (in G00 mode) through the intermediate point
(of the preceding G28 or G30 command) to the desired point along the specified axes.

Second reference point First reference point

.
(x3, z3, α3)

d
ve
er
G28

s
re
(x2, z2, α2 ) G30
G29

ts
G29

gh
ri
Starting point
Intermediate point (x1, z1, α1)

ll
G30

.A
(0, 0) G28

N
Machine zero point

O
Starting point

TI
TEP191
43

A
R
94

PO

2. Programming format
26

G28 Xx1 Zz1 αα1; (α: Additional axis) Automatic return to reference point
o.

O
N

G29 Xx2 Zz2 αα2; (α: Additional axis) Return to start point
C
al

K
ri

ZA

3. Detailed description
Se

A
IM

1. Command G28 is equivalent to the following commands:


G00 Xx1 Zz1 αα1;
K
ZA

G00 Xx3 Zz3 αα3;


A

Where x3, z3 and α3 denote the coordinates of the appropriate reference point, determined
M
YA

by the parameter as the distance from the zero point of the machine coordinate system.
2. Along the axes for which the initial return to the reference point (zero point) has not been
3
01

completed in manual mode after switching-on, the return occurs using the watchdog method.
)2

In that case, the direction of return is regarded as the same as the designated direction. For
(c

the second time onward, the return occurs at high speed to the reference point that was
ht

stored into the memory by the execution of the first return command. (The return using the
ig
yr

watchdog method can also be selected for the second time onward by a parameter.)
op

3. When return to reference point (zero point) is completed, a return completion signal will be
C

outputted and the monitor of the operation panel will display “#1” in the display field of the
axis name.
4. Command G29 is equivalent to the following commands:
G00 Xx1 Zz1 αα1;
This results in independent rapid motion of each axis.
G00 Xx2 Zz2 αα2;
Where x1, z1 and α1 are the coordinates of the intermediate point specified by G28 or G30.
5. A programming error will result if G29 is commanded without G28 (return to the reference
point) or manual return to the zero point being executed after switching-on.

13-15
Serial No. 269443

13 COORDINATE SYSTEM SETTING FUNCTIONS

6. The coordinates of an intermediate point (x1, z1, α1 ) can be set with absolute as well as
incremental data.
7. G29 is valid for G28 as well as G30, and the positioning to the specified point occurs along
the axes concerned through the latest intermediate point.
8. Tool offset compensation is automatically cancelled (as required) for the path to the refer-
ence point, while it functions as appropriate for the positioning to the intermediate point.
9. During return to the reference point under a machine lock status, movement from the inter-
mediate point to the reference point is omitted. The next block is executed after positioning
to the intermediate point.
10. During return to the reference point in the mirror image mode, the mirror image is only valid

.
d
for the movement from the starting point to the intermediate point. That is, rapid positioning

ve
is performed through the ‘mirrored’ intermediate point to the real reference point.

ser
11. In the single-block operation mode, stop will be made also at the intermediate point.

re
ts
4. Sample programs

gh
ri
Example 1: G28 Xx1 Zz1;

ll
.A
N
Reference point (#1)

O
TI
First movement
First movement
43

A after power-on
after power-on
R
94

PO

Second and subse-


26

G00 Xx3 Zz3; Rapid traverse quent movements


Second and subse-
R
o.

quent movements
O

Intermediate point
N

(x1, z1)
al

Reference point
ri

ZA

Watchdog R (#1)
Se

G0 Xx1 Zz1;
IM

Return start position


TEP192
K
ZA
A

Example 2: G29 Xx2 Zz2;


M

R
YA
3

(G0) Xx1 Zz1;


01
)2

Intermediate point by G28, G30 (x1, z1)


(c
ht

G0 Xx2 Zz2;
ig
yr
op

(x2, z2) TEP192


C

13-16
Serial No. 269443

COORDINATE SYSTEM SETTING FUNCTIONS 13


Example 3: G28 Xx1 Zz1;
M From point A to reference point
M
G30 Xx2 Zz2;
M From point B to second reference point
M
G29 Xx3 Zz3;
From point C to point D

Reference point (#1)

.
d
A R1

ve
Current position (x2, z2) New intermediate point

er
G30
G28

s
D

re
B
(x3, z3)

ts
(x1, z1) G29

gh
Old inter- R2
mediate point

ri
C Second reference point (#2)

ll
.A
N
TEP193

O
TI
43

13-11 Return to Second Reference Point (Zero Point): G30 A


R
94

PO
26

1. Function and purpose


R
o.

O
N

Use a G30 P2 (P3, or P4) command to perform return to the second (third, or fourth) reference
C
al

point (zero point) along the specified axes.


ri

ZA
Se

A
IM

Second reference point


First reference point
K
ZA

G30P2 G28
A

G28
M

(x1, z1,α1) G29


YA

Starting point
Intermediate
G30
point
3
01

G30P3
G30P4
)2

G29
(c

Third reference point


ht

Fourth reference point


ig
yr
op
C

2. Programming format
G30 P2 (P3, or P4) Xx1 Zz1 αα1; (α: Addition axis.)

3. Detailed description
1. Use argument P2, P3, or P4 to designate returning to the second, third, or fourth reference
point (zero point). The return to the second reference point is automatically selected if
argument P is omitted or zero, one, five or a greater integer is set with address P.

13-17
Serial No. 269443

13 COORDINATE SYSTEM SETTING FUNCTIONS

2. Return to the second, third, or fourth reference point is executed in the same manner as the
return to the first reference point via the specified intermediate point.
3. The machine coordinates of the second, third, and fourth reference point are to be preset in
the machine parameters M5, M6, and M7, respectively.
4. The intermediate point for a G29 command is always that which was specified by the
command given last for return to the reference point, be it the second, third, or fourth one.

–Z R#1

Intermediate point First reference point


(x1, z1)

. d
ve
G30 Xx1 Zz1;

s er
re
R#2 G29 Xx2 Zz2;

ts
gh
(x2, z2)

ri
Second reference point +X

ll
.A
TEP196

N
O
TI
5. As for return to the reference point in the plane of tool nose radius compensation, the
43

A
movement from the intermediate point to the reference point is performed with the com-
R
94

pensation being temporarily canceled, and the next G29 command is executed on a path
PO
26

through the non-compensated intermediate point to the ‘compensated’ position as specified


R
o.

in the G29 block.


N

C
al

K
ri

ZA
Se

Second reference point


A

–Z R#2
IM

Nose radius center path Intermediate point


K
ZA

Programmed path
for G30 Xx1 Zz1;
A
M

(x1, z1)
YA

G29 Xx2 Zz2;


3
01

(x2, z2)
)2

+X
(c
ht

TEP197
ig
yr

6. After return to the second reference point, the nose radius compensation values for the
op

axes concerned are temporarily cancelled.


C

7. During return to the second reference point under a mahcine lock status, movement from
the intermediate point to the reference point is omitted. The next block is executed after
positioning to the intermediate point.

13-18
Serial No. 269443

COORDINATE SYSTEM SETTING FUNCTIONS 13


8. During return to the second reference point in the mirror image mode, the mirror image is
only valid for the movement from the starting point to the intermediate point. That is, rapid
positioning is performed through the ‘mirrored’ intermediate point to the real reference point.

–Z R#2

Second reference point

(x1, z1)
With mirror image

.d
for the X-axis

ve
Without mirror image

er
G30 P2 Xx1 Zz1;

s
+X

re
ts
TEP198

gh
ri
9. In the single-block operation mode, no stop will be made at the intermediate point.

ll
.A
13-12 Reference Point Check: G27

N
O
TI
1. Function and purpose
43

A
R
94

As with G28, execution of a G27 command will output a completion signal for return to the refe-
PO
26

rence point if the position arrived on the specified axis is the reference point. This function with
R
o.

positioning data for the reference point can be used, therefore, to check whether or not the
O
N

execution of a program is brought to an end with the reference point being arrived on the
al

specified axes.
ri

ZA
Se

2. Programming format
IM

G27 Xx1 Zz1 αα1 Pp1 ;


K
ZA

Check No.
A

P1 : First reference point check


M

P2 : Second reference point check


YA

P3 : Third reference point check


3

P4 : Fourth reference point check


01

Return control axis


)2
(c

Check command
ht
ig

3. Detailed description
yr
op

- The first reference point check will occur if argument P is omitted.


C

- The number of axes for which the reference point check can be done at the same time depends
on the number of simultaneously controllable axes.
- An alarm will result if the ending position on the specified axis is not the designated reference
point.

13-19
Serial No. 269443

13 COORDINATE SYSTEM SETTING FUNCTIONS

13-13 Programmed Coordinate Conversion ON/OFF: G68.5/G69.5

1. Outline
This command is used to determine a new coordinate system through the translation of the origin
of the currently active workpiece coordinate system and the rotation on an axis of coordinate.
Use this command to specify freely a plane in space which is convenient for programming.

2. Programming format
G68.5 Xx0 Zz0 Yy0 Ii Jj Kk Rr ; ........... Programmed coordinate conversion ON
G69.5 ; ........... Programmed coordinate conversion OFF

d.
ve
Xx0 Zz0 Yy0 : Coordinates of the center of rotation

er
Specify in absolute dimensions the translation of the workpiece origin.

s
re
i, j, k : Designation of rotational axis (1: valid, 0: invalid)

ts
I : X-axis

gh
J : Y-axis

ri
K : Z-axis

ll
.A
r: Angle and direction of rotation on the rotational axis

N
A positive value of angle refers to the left turn when seen from the positive

O
TI
side of the rotational axis.
43

A
R
94

3. Detailed description
PO
26

- It is impossible to change the coordinate system in the G68.5 mode.


o.

O
N

- The coordinate system set by a command of G68.5 is as indicated here below.


al

K
ri

ZA

G17 G68.5 X10. Z–5. Y0 I0 J1 K0 R30.;


Se

+X +Z’
+X’
IM
K
ZA

–Y’
A
M

–Y
YA

+Y’
30°
3

–Z
01

+Z
)2
(c
ht

+Y
–X
ig
yr

After the selection of the G17 (X-Y) plane, the workpiece origin is shifted to the point
op

(X, Z, Y) = (10, –5, 0)


C

and the plane is rotated by 30 degrees on the Y’-axis. The new coordinate system (X’, Y’, Z’)
has thus been established.
- The cancel command G69.5 will set again the coordinate system subjected to the translation
and rotation by the preceding G68.5 command.
- In the G68.5 mode all the dimensions must be entered in radius values.

13-20
Serial No. 269443

COORDINATE SYSTEM SETTING FUNCTIONS 13


4. Sample program
G53.5;
N100 T003003;
G00 B30.; ................................................. Positioning on the B-axis
#100=200; ................................................. Distance btw. B-axis rotat. center and tool ref. position
#1=-SIN[30.]∗#100; .............................. X-axial variation due to the B-axial rotation
#3=#100-COS[30.]∗#100; ..................... Z-axial variation due to the B-axial rotation
G50 X[#1+#5041] Z[#3+#5043];........ Correction of coordinate system against B-axial rotation
G68.5 X10.Z10.Y0 I0 J1 K0 R30.; . Definition of coordinate system by translation of origin to
(X10. Z10. Y0) and rotation on Y’-axis by 30°
G17; ............................................................

.
Selection of the XY-plane

d
ve
G00 X0 Y0 Z20.;

er
G41;

s
re
G01 Z-5. F50;

ts
X10.Y-10.;

gh
G03 X10.Y10.R30.;

ri
M

ll
.A
G40;
G69.5; .......................................................

N
Cancellation of program coord. system rotation mode

O
N200 T005000; ........................................ Tool change, which is inhibited in the G68.5 mode

TI
43

G00 B30.; R
A
G50 X[#1+#5041] Z[#3+#5043];........
94

Correction of coordinate system against B-axial rotation


PO
26

G68.5 X10.Z10.Y0 I0 J1 K0 R30.;


R

G17;
o.

O
N

G00 Z10.;
C
al

G83 X40.Y-30.Z-30.R5.P100 F80; ... Positioning on G17 plane and hole machining on Z-axis
ri

ZA

G80;
Se

G00 Z10.;
IM

G69.5;
K

M
ZA

M30;
A

%
M
YA

X’
3
01

Workpiece origin after G68.5


(on the XY-plane)
)2
(c

Y’
ht
ig

X10.,Z10.,Y0
yr
op

Workpiece origin just before G68.5


C

13-21
Serial No. 269443

13 COORDINATE SYSTEM SETTING FUNCTIONS

5. Restrictions
1. The G68.5 command cannot be given in the following modes:
- Tool nose radius compensation (G40 mode not selected)
- Fixed cycle (G80 not selected in the G-code group 09)
- Opposite turret mirror image (G68 mode)
2. The G68.5 command cannot be given in the mode of cross machining.
3. No tool change commands by T-code can be given in the G68.5 mode. A T-code in this
mode will be processed as a programming error.
4. A block in the G68.5 mode cannot be designated as restart position. The search for such a

d.
block as restart position will cause an alarm.

ve
5. Certain G-codes cannot be given in the G68.5 mode. Refer to the table “Usable G-codes in

er
s
the G68.5 mode” that follows. An alarm will be caused if an unavailable G-code is given.

re
6. If the addresses X, Y and Z are all omitted, no translation of the origin will occur and the

ts
gh
rotation will be performed on an existing axis of coordinate.

ri
7. All the arguments I, J and K must be specified in general as required. If one of the

ll
.A
arguments is omitted, such a block of G68.5 will be processed as a programming error.

N
Example 1: G68.5 X10.Z0 Y0 I0 J1 R30.; Format error

O
TI
If, in particular, all the arguments are omitted, then the axis perpendicular to the currently
43

A
selected plane will be regarded as the axis of rotation.
R
94

PO
26

Example 2: G17;
R

G68.5 X10.Z0 Y0 R30.; Equiv. to G68.5 X10. Z0 Y0 I0 J1 K0 R30.;


o.

O
N

8. A block of G68.5 will be processed as a programming error if all the arguments I, J and K
al

are specified with zero (0).


ri

ZA
Se

Example: G68.5 X10.Z0 Y0 I0 J0 K0 R30.; Format error


A
IM

9. The codes G68.5 and G69.5 are not available for a system without the optional function of
K

coordinate system rotation.


ZA

10. A MAZATROL program cannot be called up as subprogram in the G68.5 mode.


A
M
YA
3
01
)2
(c
ht
ig
yr
op
C

13-22
Serial No. 269443

COORDINATE SYSTEM SETTING FUNCTIONS 13


Usable G-codes in the G68.5 mode

G-code series T Group Function


G00 01 Rapid positioning
G01 01 Linear interpolation
G02 01 Circular interpolation, CW
G03 01 Circular interpolation, CCW
G02 01 Helical interpolation, CW
G03 01 Helical interpolation, CCW
G04 00 Dwell
G09 00 Exact stop
G10 00 Data setting mode
G11 00 Data setting mode cancel

.
G17 02 X-Y plane section

d
ve
G18 02 Z-X plane section

er
G19 02 Y-Z plane section

s
G20 06 Inch command

re
G21 06 Metric command

ts
G22 04 Stored stroke check ON

gh
G23 04 Stored stroke check OFF

ri
G32 01 Thread cutting

ll
.A
G34 01 Variable lead thread cutting
G40 07 Tool radius/nose radius compensation OFF

N
O
G41 07 Tool radius/nose radius compensation, left

TI
G42 07 Tool radius/nose radius compensation, right
43

G60 00 A
Unidirectional positioning
R
94

G61 13 Exact stop check mode


PO
26

G62 13 Automatic corner override mode


R
o.

G64 13 Cutting mode


O
N

G65 00 Macro call


al

G66 14 Modal macro call


ri

ZA

G67 14 Modal macro call cancel


Se

G69.5 16 Program coordinate system rotation mode cancel


IM

G80 09 Hole machining cycle cancel


G83 09 Face drilling cycle
K

G84 09 Face tapping cycle


ZA

G84.2 09 Face synchronous tapping cycle


A
M

G85 09 Face boring cycle


YA

G87 09 Outside drilling cycle


G88 09 Outside tapping cycle
3

G88.2 09 Outside synchronous tapping cycle


01

G89 09 Outside boring cycle


)2

G90 09 Longitudinal turning cycle


(c

G92 09 Thread cutting cycle


ht

G94 09 Transverse turning cycle


ig

G96 17 Constant peripheral speed control ON


yr

G97 17 Constant peripheral speed control OFF


op

G98 05 Feed per minute


C

G99 05 Feed per revolution

13-23
13

C
op
yr
ig
- NOTE -

ht
(c
)2
01
3
YA
M
A Se
ZA
K
COORDINATE SYSTEM SETTING FUNCTIONS

ri
IM al
N
A o.
ZA 26
K

13-24 E
94
C
O 43
Serial No. 269443

R
PO
R
A
TI
O
N
.A
ll
ri
gh
ts
re
ser
ve
d.
Serial No. 269443

MEASUREMENT SUPPORT FUNCTIONS 14


14 MEASUREMENT SUPPORT FUNCTIONS
Measurement by an EIA/ISO program is basically the same as that by a MAZATROL program.
Information given by a MAZATROL program may be executed by the following preparatory
function.
G31: Skip function

14-1 Skip Function: G31

14-1-1 Function description

d.
1. Overview

ve
er
During linear interpolation by G31, when an external skip signal is inputted, the feed will stop, all

s
re
remaining commands will be cancelled and then the program will skip to the next block.

ts
2. Programming format

gh
ri
G31 Xx/Uu Zz/Ww Yy/Vv Ff ;

ll
.A
x, z, y, u, w, v : The coordinates of respective axes. These coordinates are designated using

N
absolute or incremental data.

O
f: Feed rate (mm/min)

TI
43

A
This command starts linear interpolation, and when an external skip signal is inputted, the feed
R
94

PO

will stop, the remaining distance of movement will be cancelled and the next block will be
26

executed.
R
o.

O
N

3. Detailed description
al

K
ri

ZA

1. An asynchronous feed rate commanded previously will be used as feed rate. If an


Se

asynchronous feed command is not made previously and if Ff is not commanded, the alarm
IM

SKIP SPEED ZERO will be caused. F-modal command data will not be updated by the F-
K

command given in the G31 block.


ZA

2. Automatic acceleration/deceleration is not applied to command block G31.


A
M

3. If feed rate is specified per minute, override, dry run and automatic acceleration/de-
YA

celeration will not be allowed. They will be effective when feed rate is specified per
revolution.
3
01

4. Command G31 is unmodal, and thus set it each time.


)2
(c

5. The execution of command G31 will immediately terminate if a skip signal is inputted at the
ht

beginning.
ig

Also, if a skip signal is not inputted until the end of command block G31, execution of this
yr

command will terminate on completion of execution of move commands.


op
C

6. Setting this command code during tool nose radius compensation results in a program error.
7. Under a machine lock status the skip signals will be valid.

14-1
Serial No. 269443

14 MEASUREMENT SUPPORT FUNCTIONS

4. Execution of G31
Example 1: When the next block is an incremental value command
G31 Z1000 F100;
G01 U2000 W1000;

External signal inputted

.
d
ve
Movement when external

er
signal is not inputted

s
re
TEP199

ts
gh
Example 2: When the next block is a one axis move command with absolute value

ri
G31 Z1000 F100;

ll
.A
G01 X1000;

N
O
X

TI
43

A
R
94

Z
PO
26

R
o.

External signal inputted


O
N

C
al

K
ri

ZA

Movement when external


Se

signal is not inputted


A
IM

TEP200
K
ZA

Example 3: When the next block is a two axes move command with absolute value
A

G31 Z1000 F100;


M

G01 X1000 Z2000;


YA
3

X
01
)2
(c

Z
ht

External signal inputted


ig
yr
op
C

Movement when external


signal is not inputted

TEP201

14-2
Serial No. 269443

MEASUREMENT SUPPORT FUNCTIONS 14


14-1-2 Amount of coasting in the execution of a G31 block
The amount of coasting of the machine from the time a skip signal is inputted during G31
command to the time the machine stops differs according to the G31-defined feed rate or the F
command data contained in G31.
Accurate machine stop with a minimum amount of coasting is possible because of a short time
from the beginning of response to a skip signal to the stop with deceleration.
The amount of coasting is calculated as follows:
F F F F
δ0 = × Tp + (t1 ± t2) = × (Tp + t1) ± × t2
60 60 60 60
δ1 δ2

.
d
δ0

ve
: Amount of coasting (mm)

er
F : G31 skip rate (mm/min)

s
Tp : Position loop time constant (s) = (Position loop gain)–1

re
t1 : Response delay time (s) = (The time from skip signal detection until arrival at NC

ts
gh
through PC)

ri
t2 : Response error time = 0.001 (s)

ll
When using command G31 for measurement purposes, measured data δ1 can be corrected.

.A
Such corrections, however, cannot be performed for δ2.

N
O
TI
43

Skip signal inputted


F
A
R
94

PO
26

R
o.

The area of the shaded section denotes the


N

amount of coasting δ0.


C
al

K
ri

ZA
Se

A
IM

Time (s)
t1 ± t2
K

Tp
ZA

Stop pattern at skip signal input


A

TEP202
M
YA

The diagram shown below represents the relationship between the feed rate and the amount of
coasting that will be established if Tp is set equal to 30 ms and, t1 to 5 ms.
3
01
)2

Amount of
Tp = 0.03 Max. value
(c

coasting (δ) 0.050


(mm) t1 = 0.005 Mean. value
ht

Min. value
ig

0.040
yr
op

0.030
C

0.020

0.010

Feed rate F
(mm/min)
0 10 20 30 40 50 60 70
Relationship between the amount of coasting and the feed rate (Example) TEP203

14-3
Serial No. 269443

14 MEASUREMENT SUPPORT FUNCTIONS

14-1-3 Skip coordinate reading error

1. Reading the skip signal input coordinates


Skip signal input coordinate data does not include the amounts of coasting defined by position
loop time constant Tp and cutting feed time constant Ts. Thus skip signal input coordinates can
be checked by reading within the error range shown in the diagram below the workpiece
coordinates existing when skip signals were intputted. The amount of coasting that is defined by
response delay time t1, however, must be corrected to prevent a measurement error from
occurring.

.d
F
ε=± × t2 ε : Reading error (mm)

ve
60
F : Rate of feed (mm/min)

er
t2 : Response delay time 0.001 (s)

s
re
ts
+1

gh
ri
Reading error
0
ε (µm)

ll
60 Rate of feed (mm/min)

.A
–1

N
O
TI
43

A
The shaded section corresponds
R
94

to measured data.
PO
26

Skip signal input coordinate reading error


R
o.

O
N

The reading error at a feed rate of 60 mm/min


C

60
al

ε=± × 0.001
K

60
ri

ZA

= ± 0.001 (mm)
Se

and measured data stays within the reading error range of ± 1 µm.
A
IM

TEP204
K
ZA

2. Reading coordinates other than those of skip signal inputs


A
M

Coordinate data that has been read includes an amount of coasting. If, therefore, you are to
YA

check the coordinate data existing when skip signals were inputted, perform corrections as
3

directed above. If, however, the particular amount of coasting defined by response delay time t2
01

cannot be calculated, then a measurement error will occur.


)2
(c
ht
ig
yr
op
C

14-4 E
Serial No. 269443

PROTECTIVE FUNCTIONS 15
15 PROTECTIVE FUNCTIONS

15-1 Pre-move Stroke Check ON/OFF: G22/G23

1. Function and purpose


While the user-defined software stroke limit check generates an outside machining prohibit area,
the pre-move stroke check function sets an inside machining prohibit area. An alarm will occur
beforehand for an axis movement command whose execution would cause the tool to touch, or
move in or through the prohibit area. The shaded sections in the diagram below show the
machining prohibit areas specified by the stroke check functions concerned.

.d
ve
X-axis

s er
M8

re
I2

ts
Upper limt

gh
for G22

ri
(X, Z)

ll
.A
Z-axis

N
O
(I, K)

TI
Lower limt for G22
43

A
R
94

PO

I3
26

M9
o.

O
N

M8, M9 : Maker-defined software stroke limit


al

I2, I3 : User-defined software stroke limit


ri

ZA
Se

A
IM

2. Programming format
K

G22 X_ Z_ I_ K_ (Inside machining prohibit area specification)


ZA
A
M

Lower limit specification


YA

Upper limit specification


3

G23 (Cancellation)
01
)2

3. Detailed description
(c
ht

1. Both upper-limit and lower-limit values must be specified with machine coordinates.
ig

2. Use X and Z to set the upper limit of the prohibit area, and I and K to set the lower limit. If the
yr

value of X or Z is smaller than that of I or K, then the former and the latter will be used as the
op
C

lower-limit and the upper-limit, respectively.


3. No stroke limit checks will be performed if the upper- and lower-limit values that are
assigned to one and the same axis are identical.
G22X200.Z100.I200.K0

The X-axis does not undergo the stroke check.

4. Give a G23 command to cancel the pre-move stroke limit check function.

15-1
Serial No. 269443

15 PROTECTIVE FUNCTIONS

5. A block of G23 X_Z_ will cause the axis motion command X_Z_ to be executed in the
current mode of axis movement after cancellation of pre-move stroke limit check.
Note: Before setting G22, move the tool to a position outside the prohibit area.

. d
ve
s er
re
ts
gh
ri
ll
.A
N
O
TI
43

A
R
94

PO
26

R
o.

O
N

C
al

K
ri

ZA
Se

A
IM
K
ZA
A
M
YA
3
01
)2
(c
ht
ig
yr
op
C

15-2 E
Serial No. 269443

TWO-SYSTEM CONTROL FUNCTION 16


16 TWO-SYSTEM CONTROL FUNCTION

16-1 Two-Process Control by One Program: G109

1. Outline
When machining of different processes are performed by respective systems on a machine with
two systems of headstock (HD1 and HD2), or turret (TR1 and TR 2), the two systems can be
controlled by a single program.
The program section from “G109L!;” to “%” or to “G109L*;” is used for controlling the !-system.

2. Programming format

d.
ve
G109 L_;

ser
L = 1 : HD1 (or TR1)

re
2 : HD2 (or TR2)

ts
gh
The system number is to be specified by a value following the address L.

ri
ll
3. Notes

.A
N
1. Even if a value following L includes a decimal point or negative sign (–), it is ignored.

O
2. In the mode of single-block operation, the stop can be performed after execution of G109

TI
43

A
block. However, when the number specified by L belongs to the other system such as L2 in
R
94

HD1 operation, the single-block stop does not occur.


PO
26

3. G109 can be specified in the same block as G-codes other than of group 0. When specified
R
o.

in the same block as another G-code of group 0, the G-code specified later is effective.
N

C
al

4. The section from the head of a program to the place where G109 is commanded is common
ri

ZA

to HD1 and HD2, or TR1 and TR2.


Se

Example: Common to HD1 and HD2 (or TR1 and TR2)


IM

G28 U W;
G109 L1;
K

M
ZA

HD1 (or TR1)


M30;
A
M

G109 L2;
YA

M HD2 (or TR2)


3

M30;
01

5. One block including more than 128 characters causes an alarm (ILLEGAL FORMAT).
)2
(c

6. In the remainder of this chapter, “HD1” and “HD2” generally refer to “TR1” and “TR2”,
ht

respectively, at once.
ig
yr

7. The surface speed (cutting speed) of the respective turning spindles is to be specified, with
op

reference to the G109 condition, as follows:


C

G96S__R1 ............to specify the surface speed for the 1st spindle under “G109L1”
G96S__R2 ............to specify the surface speed for the 2nd spindle under “G109L1”
G96S__R2 ............to specify the surface speed for the 1st spindle under “G109L2”
G96S__R1 ............to specify the surface speed for the 2nd spindle under “G109L2”

16-1
Serial No. 269443

16 TWO-SYSTEM CONTROL FUNCTION

16-2 Specifying/Cancelling Cross Machining Control Axis: G110/G111

1. Outline
Axis control of 2nd spindle side by 1st spindle side or that of 1st spindle side by 2nd spindle side
is referred to as cross machining control. Cross machining control axis is specified by G110 and
G111.
Specify after G110 an axis address and the number of the spindle controlling the axis.

2. Programming format
G110 X_ Z_ C_; ..............Cross machining control axis and spindle number are specified.

d.
ve
1: Axis controlled by 1st spindle

er
2: Axis controlled by 2nd spindle

s
re
ts
G111;...............................Cross machining control axis specified by G110 is returned to normal

gh
control (not cross machining).

ri
ll
Specify the Z-axis for the lower turret as follows:

.A
Example:

N
G110 Z2; Selection of the lower turret’s Z-axis

O
TI
G00 Z–100.; All the Z-axial commands between G110 and G111 are processed
43

M A
as those for the lower turret.
R
94

PO

G111; Cancellation of G110


26

Specify the C-axis on the 2nd spindle side as follows:


o.

O
N

Example:
al

G110 C2; Selection of the 2nd headstock’s C-axis


ri

ZA
Se

G00 C45.123.; All the C-axial commands between G110 and G111 are processed
A

M as those for the 2nd spindle side.


IM

G111; Cancellation of G110


K
ZA

Prepare a program as follows to use the C-axis settings on the WORK OFFSET display for the
A

2nd spindle:
M

Example:
YA

G52.5; MAZATROL coordinate system cancellation


3

M200; Milling mode selection for 1st spindle


01

G28UWH;
)2

T0100;
(c

G54; Origin data of the G54 system: C = 30°


ht
ig

G00 C150.; HD1 C-axis motion to 150° (POSITION) or 180° (MACHINE)


yr

M202; Milling mode cancellation for 1st spindle


op

M902; 2nd spindle selection


C

M300; Milling mode selection for 2nd spindle


G110 C2; Selection of 2nd spindle C-axis
G00 C150.; HD2 C-axis motion to 150° (POSITION) or 180° (MACHINE)
G55; Origin data of the G55 system: C = 50°
G00 C150.; HD2 C-axis motion to 150° (POSITION) or 200° (MACHINE)
G56; Origin data of the G56 system: C = 100°
G00 C150.; HD2 C-axis motion to 150° (POSITION) or 250° (MACHINE)
G111; Cancellation of G110
M302; Milling mode cancellation for 2nd spindle

16-2
Serial No. 269443

TWO-SYSTEM CONTROL FUNCTION 16


Prepare a program as follows to use a fixed cycle for hole machining on the 2nd spindle side:
Example:
M902; 2nd spindle selection
M300; Milling mode selection for 2nd spindle
G110 C2; Selection of 2nd spindle C-axis
G00 C0.; HD2 C-axis positioning
G87Z–5.0X5.0P0.2M310; Clamping; Deep-hole drilling cycle
C45.; Unclamping, positioning, clamping; Deep-hole drilling cycle
C90.; Unclamping, positioning, clamping; Deep-hole drilling cycle
M312; Unclamping on the 2nd spindle side
G80; Fixed cycle cancellation
G111; Cancellation of G110

d .
ve
M30; Program end

s er
3. Sample programs

re
ts
Examples of programming for the machine specifications with the secondary spindle

gh
The major sections of a sample program for machines equipped with the secondary spindle are

ri
shown below.

ll
.A
O1234

N
G53.5 MAZATROL coordinate system establishment

O
#101=124.750 (SP1 COF) 1st spindle side C-axis offset

TI
#102=10.664 (SP2 COF) 2nd spindle side C-axis offset
43

A
R
94

(MAIN SPINDLE SIDE)


PO

1st spindle side machining program


26

M901 1st spindle select mode (enter for machining at the 1st spindle side)
R

Spindle clamping speed setting


o.

G50S3000
O
N

M202 1st spindle turning mode


C

G00B0. 2nd spindle side B-axis (W-axis) positioning


al

G00G28U0V0W0 1st spindle return to zero point (X, Y, Z)


ri

ZA
Se

T0100 Tool selection


A

N101(EDG-R) Edge machining with 1st spindle


IM

G96S200 Peripheral speed setting


G00X110.0Z0.1 Positioning
K

G99G01X22.0F0.3 Cutting feed


ZA

G00Z0.8 Positioning
A

N102(OUT-R) O.D. machining with 1st spindle


M

(Machining program omitted for convenience’s sake.)


YA

(TRS CHK) Transfer program


3

G28U0V0W0 1st spindle return to zero point (X, Y, Z)


01

M902 2nd spindle selection


)2

M302 2nd spindle turning mode


M200 (MAIN C-ON) 1st spindle mill-point machining mode
(c

G00C#101 1st spindle C-axis positioning (angle indexing)


ht

M300(SUB C-ON) 2nd spindle mill-point machining mode


ig

G110C2 2nd spindle C-axis selection


yr

G00C#102 2nd spindle C-axis positioning (angle indexing)


op

G111 2nd spindle C-axis selection revoking (G110 cancellation)


C

M306 2nd spindle chuck open


M540 TRS-CHK mode
G00B-686. 2nd spindle side B-axis (W-axis) positioning
M508 Start of pressing action on the 2nd spindle side
G31B-1.1F50 2nd spindle side B-axis (W-axis) positioning for pressing
M202 1st spindle turning mode
M509 2nd spindle M508 cancellation
M541 TRS-CHK mode cancellation
M307 2nd spindle chuck close
M206 1st spindle chuck open
M302 2nd spindle turning mode
G00B-80. 2nd spindle side B-axis (W-axis) positioning

16-3
Serial No. 269443

16 TWO-SYSTEM CONTROL FUNCTION

(SUB SPINDLE SIDE) 2nd spindle machining program


N301(SP2 DRL)
M902 2nd spindle selection (enter for machining at the 2nd spindle side)
T0300 Tool selection
G98G97 Feed per minute and cancellation of constant peripheral speed control
M300 2nd spindle mill-point machining mode
M203S3184 Milling speed selection and milling spindle normal rotation
G110C2 2nd spindle C-axis selection
G0C#102 2nd spindle C-axis positioning (angle indexing)
M310 2nd spindle C-axis clamping
G00X25.Z-5. Positioning
G87Z-5.X5.Q5000P0.2F200 Longitudinal deep-hole drilling cycle
M312 2nd spindle C-axis unclamping
G80 Cancellation of fixed hole-drilling cycle
G00C[#102+180.] 2nd spindle C-axis positioning (angle indexing)

.
2nd spindle C-axis clamping

d
M310

ve
G87Z-5.X5.Q5000P0.2F200 Longitudinal deep-hole drilling cycle

er
M312 2nd spindle C-axis unclamping

s
G80 Cancellation of fixed hole-drilling cycle

re
G111 2nd spindle C-axis selection revoking

ts
G28U0V0W0 Return to zero point (X, Y, Z)

gh
M30 End of program

ri
ll
4. Notes

.A
N
1. After the axis is changed by G110 or G111, always specify the coordinate system by G50.

O
2. G110 and G111 must always be given in a single-command block.

TI
43

3. A
When axis address is commanded by G110 in increment, (for example, U and W are used)
R
94

PO

it causes an alarm. And when a value following the axis address includes a decimal point or
26

negative sign, it is ignored.


R
o.

O
N

4. In the single-block operation mode, the stop is performed after execution of G110 and G111
C
al

blocks.
K
ri

ZA

5. The tool information to be used in tool offsetting does not automatically change for the other
Se

system on the occasion of designating for cross machining control an axis which is in direct
IM

relation to tool movement. Use, therefore, a G53 command (for positioning in the machine
K

coordinate system) as required.


ZA

6. As long as an axis in direct relation to tool movement is controlled for cross machining, do
A
M

not change tools.


YA

7. Give a command of G111 as required at the end of machining section in an EIA/ISO


program which is to be called from a MAZATROL program as a subprogram for point
3
01

machining.
)2

8. The axis being under cross machining control in automatic mode of operation cannot be
(c

controlled in manual mode. An attempt to do so will only result in the alarm ILLEGAL
ht

COMMAND CROSS MACHINING.


ig
yr

9. Barrier is effective also during axis change. In other words, barrier is checked in the region
op

of HD1 side for the axis of HD1 side and in that of HD2 for the axis of HD2 independently of
C

the axis change by G110.


10. Synchronous feed with, or control of feed per, revolution of the milling spindle is not
available during cross machining control.
11. The alarm CROSS MACHINING IMPOSSIBLE will be caused when a command for cross
machining control is given under one of the following incompatible modal conditions:
- Nose radius/Tool radius compensation
- Polar coordinate interpolation
- Cylindrical interpolation

16-4
Serial No. 269443

TWO-SYSTEM CONTROL FUNCTION 16


- Fixed cycle
- Tool tip point control
12. C-axis commands in the cross machining mode can only be given for the preparatory
functions (G-codes) enumerated below.
Usable G-codes for C-axis commands in the cross machining mode

G-code series T Group Function


G00 01 Rapid positioning
G01 01 Linear interpolation
G02 01 Circular interpolation CW
G03 01 Circular interpolation CCW

.
G10 00 Data setting/change

d
ve
G27 00 Reference point return check

er
G28 00 Reference point return

s
re
G29 00 Return from reference point

ts
G30 00 Return to 2nd/3rd/4th reference point

gh
G30.1 00 Return to floating reference point

ri
G36

ll
00 Measurement target data setting

.A
(G36.5)

N
G50 00 Coordinate system setting/Spindle limit speed setting

O
G53 00 MAZATROL coordinate system selection

TI
43

G65 00 A
Macro call
R
94

G66 14 Macro modal call


PO
26

G83 09 Face drilling cycle


R
o.

G84 09 Face tapping cycle


N

G84.2 09 Face synchronous tapping cycle


al

K
ri

ZA

G85 09 Face boring cycle


Se

G87 09 Outside drilling cycle


IM

G88 09 Outside tapping cycle


K

G88.2 09 Outside synchronous tapping cycle


ZA

G89 09 Outside boring cycle


A

G110 00 Cross machining control axis selection


M
YA

G111 00 Cross machining control axis cancellation


G112 00 M-, S-, T-, and B-code output to counterpart
3
01
)2

13. When the axis (normally the X-axis) relevant to the constant peripheral speed control is
designated for cross machining control, the speed of the turning spindle may change
(c
ht

steeply in accordance with the change in positional information to be used in the calculation
ig

of spindle speed for a particular peripheral speed.


yr

14. The inclined Y-axis cannot be controlled for cross machining.


op
C

15. Do not designate the X-axis for cross machining control unless the current position on the
inclined Y-axis is of the zero point. Otherwise an alarm will be caused (CROSS MACHIN-
ING IMPOSSIBLE).
16. As long as the X-axis is undergoing the cross machining control, the inclined Y-axis is inter-
locked internally. In this case a motion command concerning the inclined Y-axis will only
result in an alarm being caused (129 INSIDE INTERLOCK AXIS).

16-5
Serial No. 269443

16 TWO-SYSTEM CONTROL FUNCTION

16-3 M, S, T, B Output Function to Counterpart: G112

1. Outline
The function outputs M-, S-, T- and B-codes (second miscellaneous function) commanded after
G112 to the counterpart system.

2. Programming format
G112 L_ M_ M_ M_ M_ S_ T_ T_ B_;

3. Notes

d.
ve
1. Do not give any other G-code in one block with a G112 command; otherwise the alarm

er
ILLEGAL FORMAT wil be caused.

s
re
2. Do not enter any codes concerned (M, S, T or second miscellaneous function) before

ts
G112L_ within a block; otherwise the alarm ILLEGAL FORMAT wil be caused.

gh
3. Entering values with any other address than N, M, S, T, and that for second miscellaneous

ri
ll
function in one block with a G112 command will lead to the alarm ILLEGAL ADDRESS.

.A
4. The alarm ILLEGAL NUMBER INPUT will be caused if any of the following commands is

N
O
given in one block with a G112 command:

TI
43

M0, M1, M2, M30, M99, M-codes for waiting, and M-, S-, T- or second miscellaneous
A
R
94

function code for macroprogram call.


PO
26

5. Entering a number for the self-system or non-existent system with address L as well as in
R
o.

parameter BA71 will lead to the alarm ILLEGAL NUMBER INPUT.


O
N

6. An attempt to specify an offset number in the T-code format for turning machines will lead to
al

K
ri

ZA

the alarm ILLEGAL NUMBER INPUT.


Se

7. The T-code in a G112 block will only cause the corresponding code for tool designation to
IM

be outputted (without information of tool offsetting).


K

8. The number of the codes concerned to be entered in a G112 block is limited as follows:
ZA
A

4 for M, 1 for S, 2 for T, and 1 for the second miscellaneous function.


M

Entering codes in excess will only result in the last ones within the limit being outputted.
YA

9. The single-block stop can occur after the execution of a G112 block.
3
01

10. Use waiting M-codes so as to output the codes concerned (M, S, T or second miscellaneous
)2

function) to one and the same system at one time from multiple systems.
(c
ht
ig
yr
op
C

16-6 E
Serial No. 269443

COMPOUND MACHINING FUNCTIONS 17


17 COMPOUND MACHINING FUNCTIONS
This chapter describes the functions proper to the machines equipped with two turrets (upper
and lower) which can be operated independently from each other.

17-1 Programming for Compound Machining

1. Outline
The movement of the upper and lower turrets is to be controlled in a single program as follows:
G109 L1;.................................... Selection of the upper turret

.d
ve
Commands for the upper turret

ser
re
M30;

ts
G109 L2;.................................... Selection of the lower turret

gh
ri
ll
Commands for the lower turret

.A
N
O
M30;

TI
43

2. Remarks A
R
94

PO
26

1. If an argument L includes a decimal point or negative sign (–), a programming error will
R

result.
o.

O
N

2. In the mode of single-block operation, the stop can be performed after execution of G109
al

block. However, when the number specified by L belongs to another system, the single-
ri

ZA
Se

block stop does not occur.


A
IM

3. G109 must be given in an independent block. If any other command is given in the same
block, a programming error will result.
K
ZA

4. Note that the program section under no specification by the G109 command is used for all
A

the systems without distinction.


M
YA

5. The restart position for the [RESTART 2 NONMODAL] menu function must be set within a
program section which is prepared commonly for all the systems.
3
01

6. The control for a constant surface speed (by G96) is always conducted with reference to
)2

that tool tip’s position of either turret which is nearer to the axis of turning.
(c
ht

7. The call command for a MAZATROL program must be given in program sections of both
ig

turrets for one and the same program. If it is given for either turret only, the flow of the called
yr

MAZATROL program will enter in a waiting state which cannot be cleared and, as a result,
op

stop the machine operation.


C

17-1
Serial No. 269443

17 COMPOUND MACHINING FUNCTIONS

17-2 Waiting Command: M950 to M997, P1 to P99999999

1. Outline
Waiting commands are used to time the operation of the upper and lower turrets as required.
Two types of waiting command are provided: M-code and P-code, which can be used freely and
even mixedly.
Note: Waiting commands (corresponding M- and P-codes) are all ignored in a hole machin-
ing fixed cycle mode (G83 to G89). Cancel the hole machining fixed cycle mode
beforehand with G80 to give a waiting command.

. d
2. Detailed description

ve
er
A. M-codes for waiting

s
re
The execution of the commands for turret A will be stopped at the position of a waiting M-code

ts
gh
with some number until the program flow for turret B reaches a waiting M-code with the same

ri
number.

ll
.A
Programming format

N
M∗∗∗; (∗∗∗ denotes a number from 950 to 997.)

O
TI
Program structure
43

A
R
94

Commands for the upper turret Commands for the lower turret
PO
26

G109L1; G109L2;
R
o.

A M950;
N

M951;
al

M950;
ri

ZA
Se

B <A>
IM

M951;
K
ZA

M997; M997;
A

C <B>
M
YA

M30; M30;
3
01

Operation
)2

M950; M951; M997;


(c

∇ ∇ ∇
ht

Upper turret A B C
ig
yr

Lower turret <A> <B>


op

∆ ∆ ∆
C

M950; M951; M997;

Note 1: Use waiting M-codes in accordance with the parameter settings concerned:
K49 ........First code number for waiting M-codes,
K50 ........Total number of waiting M-codes.
Note 2: A waiting M-code must be given in a single-command block. It may not function as
waiting command if it is entered in the same block together with other instructions.

17-2
Serial No. 269443

COMPOUND MACHINING FUNCTIONS 17


B. P-codes for waiting
The execution of the commands for turret A will be stopped at the position of a waiting P-code
with some number until the program flow for turret B reaches a waiting P-code with the same or a
larger number.
Programming format
P∗∗∗∗∗∗∗∗; (∗∗∗∗∗∗∗∗ denotes a number from 1 to 99999999.)

Program structure
Commands for the upper turret Commands for the lower turret
G109L1; G109L2;

.
d
ve
A P10;

er
P100;

s
P10;

re
ts
B <A>

gh
ri
P200;

ll
.A
P3000; P3000;

N
C <B>

O
TI
43

M30; M30;
R
A
94

Operation
PO
26

P10; P200; P3000;


R
o.

∇ ∇ ∇
N

C
al

Upper turret A B C
K
ri

ZA
Se

Lower turret <A> <B>


A

∆ ∆ ∆
IM

P10; P100; P3000;


K
ZA

Note 1: A waiting P-code must be given in a single-command block. It may not function as
A
M

waiting command if it is entered in the same block together with other instructions.
YA

Note 2: Use the waiting P-codes in the ascending order of their number, since one turret
3

cannot be released from the wait state until the program flow for the other turret
01

reaches a waiting P-code with the same or a larger number.


)2
(c
ht
ig
yr
op
C

17-3
Serial No. 269443

17 COMPOUND MACHINING FUNCTIONS

17-3 Balanced Cutting

1. Outline
Balanced cutting is achieved through the symmetrical movement of the upper and lower turrets.
It helps the reduction in the vibration of a long workpiece and permits the cutting speed to be
doubled for the saving of the machining time.
During the balanced cutting one turret acts as the main turret (master turret) and the other as the
subordinate turret (servant turret). Enter the movement commands for the balanced cutting in a
program section for the main turret.

.
2. Programming method

d
ve
The balanced cutting can be achieved by combining the following three commands:

s er
re
- Waiting command (M950 to M997 or P1 to P99999999)

ts
- M562;..........Coupling command for the two turrets

gh
- M563;..........Coupling cancellation command

ri
ll
The main points of programming the balanced cutting are the following:

.A
1) Enter the waiting command just before the balanced cutting in order to synchronize the

N
O
movement of both turrets.

TI
43

2) Enter the command M562 for the main turret in order to couple both turrets. The subordinate
A
R
94

turret must have been set in wait state.


PO
26

3) Enter the movement commands for the main turret. The subordinate turret will be moved
R
o.

symmetrically during the balanced cutting.


N

C
al

4) Enter the command M563 after the movement commands for the master turret to cancel the
K
ri

ZA

coupling.
Se

5) Enter the waiting command for the main turret to release the subordinate turret from the wait
IM

state.
K
ZA

3. Program structure
A
M

Given below is an example of program structure with the upper turret as the master.
YA

Commands for the upper turret Commands for the lower turret
3
01

G109L1; G109L2;
)2

Waiting for the start of balanced cutting


(c
ht

P1000; P1000;
ig

M562; Start of coupling


yr
op

Commands for
C

balanced cutting

M563; Cancellation of coupling


P2000; P2000;
Waiting for the end of balanced cutting
M30; M30;

17-4
Serial No. 269443

COMPOUND MACHINING FUNCTIONS 17


4. Sample program
N000 G109 L1; G109 L1: Upper turret selection
M901;
N001 G00 X800.Z70.;
P10; P10: Single command for waiting
M03 S250;
T01T01;
N002 X132.Z60.M08;
M950; M950 for waiting for the
start of cutting
M562;
N003 G01 X78.F0.35;

.
d
N004 G00 X156.Z63.;

ve
N005 Z29.;

er
N006 G01 X150.;

s
re
N007 X148.Z30.;
Movement

ts
N008 X128.; commands for

gh
N009 G00 X800.Z70.; balanced cutting

ri
N010 X112.Z63.T0202;

ll
N011 G01 X120.Z59.F0.4;

.A
N012 Z30.;

N
N013 X130.;

O
TI
N014 G00 X800.Z70.;
43

M563; A
R
94

P20;
PO
26

N015 M09 M05;


R
o.

N100 G109 L2; G109 L2: Lower turret selection


O
N

M901;
al

N101 G00 X800.Z200.;


ri

ZA
Se

P10;
A

M03 S250;
IM

T01T01;
K

N102 X92.Z65.M08;
ZA

M950;
A

P20; P20: Single command for waiting.


M

Required for both turrets


YA
3
01
)2
(c
ht
ig
yr
op
C

17-5
Serial No. 269443

17 COMPOUND MACHINING FUNCTIONS

17-4 Milling with the Lower Turret

1. Programming format
The basic format of programming for milling with the lower turret is an application of the
preparatory function G109 (Two processes in one program; see Section 16-1).
G109 L_;
L = 1: HD1 (TR1)
2: HD2 (TR2)

Example: G28 U W; ....... Common to both spindles (both turrets)

.
G109 L1;

d
ve
M ....... Commands for Upper turret

er
M

s
re
G109 L2; ....... Selection of 2nd spindle (Lower turret)
M200;

ts
gh
M203;

ri
M Commands for Lower turret

ll
M Fixed cycle for hole machining

.A
M210;

N
M30

O
% .............. Common to both spindles (both turrets)

TI
43

<Usable machining patterns>


A
R
94

PO
26

As shown in the table below, not only for turning can the lower turret be used, but also for milling.
R
o.

Table 17-1 Machining patterns


N

C
al

1st spindle 2nd spindle


K
ri

ZA

Turning Milling Turning Milling


Se

A
IM

Lower
K

turret
ZA
A
M
YA

2. G-codes for milling


3
01

The G-codes of fixed cycle for hole machining are available for milling with the lower turret.
)2
(c

(See Section 12-3 for more information on the above G-codes.)


ht
ig
yr
op
C

17-6
Serial No. 269443

COMPOUND MACHINING FUNCTIONS 17


3. Sample program
N000 G00 G97 G98;
N001 G28 U W;
N100 G109 L1; Upper turret selection
N101 T01T01;
N102 M901; 1st spindle selection
N103 M200; Point milling mode
N104 M203 S800; Normal rotation of the milling spindle
N105 X102.Z-50.C0.;
Fixed cycle for hole machin-
N106 G87 Z-50.H30.X70.R5.Q5000 P.2 F200 M210; ing with Upper turret
N107 G80;
N108 M950;

.
M950 for waiting

d
ve
N109 M30;

er
N200 G109 L2; Lower turret selection

s
N201 T0222;

re
N202 M902; 2nd spindle selection

ts
N203 M300;

gh
N204 M203 S800;

ri
N205 X-102.Z-30.C180.;

ll
Fixed cycle for hole machin-

.A
N206 G87 Z-30.H30.X70.R5.Q5000 P.2 F200 M210; ing with Lower turret

N
N207 G80;

O
N208 M950;

TI
43

N209 M30;
A
R
94

PO
26

R
o.

O
N

C
al

K
ri

ZA
Se

A
IM
K
ZA
A
M
YA

D740PB0073
3
01
)2
(c
ht
ig
yr
op
C

17-7
Serial No. 269443

17 COMPOUND MACHINING FUNCTIONS

17-5 Compound Machining Patterns

1. Overview

G109L1 G109L1
M901 (*1) M902 (*2)
M200 (*3) M300 (*3)
M203 (*4) M203S___
C__ (*5) [1] [2] G110C2
C__ (*5)
G111
For EIA: give one of
the command sets
[1] to [4] separately,

.
or the combination

d
ve
of [1] and [3] for
simultaneous

er
execution.

s
G109L2

re
G109L2
M901 M902

ts
M200 [4] [3] M300

gh
M203S___ M203
G110C1

ri
C__ (*5)
C__ (*5)

ll
G111 *1 M901 for the 1st spindle selection.

.A
*2 M902 for the 2nd spindle selection.
*3 M200/M300 for milling mode selection for 1st/2nd spindle.

N
*4 M203 for milling spindle’s normal rotation.

O
*5 Machining data D737PB0074

TI
43

A
R
94

2. Machining pattern list


PO
26

<Single workpiece>
R
o.

- Separate machining (with either turret)


N

!: Possible
C
al

1st spindle 2nd spindle


ri

EIA
ZA

Turning Milling Turning Milling


Se

Upper turret ! ! ! !
IM

Lower turret ! ! ! !
K
ZA

- Parallel machining (on either spindle side with both turrets)


A
M

!: Possible —: Inapplicable
YA

Upper turret
3

EIA 1st spindle 2nd spindle


01

Turning Milling Turning Milling


)2

Turning ! — — —
(c

1st spindle
Milling — ! (Note) — —
ht

Lower
ig

turret Turning — — ! —
2nd spindle
yr

Milling — — — ! (Note)
op
C

Note: Simultaneous milling is possible in the EIA programming format, indeed, but take care
of a phase difference occurring for machine structural reasons.

17-8
Serial No. 269443

COMPOUND MACHINING FUNCTIONS 17


<Dual workpiece>
Parallel machining (on both spindle sides with each turret)
!: Possible —: Inapplicable
Upper turret
EIA 1st spindle 2nd spindle
Turning Milling Turning Milling
Turning — — ! !
1st spindle
Lower Milling — — ! !
turret Turning ! ! — —
2nd spindle
Milling ! ! — —

. d
ve
s er
re
ts
gh
ri
ll
.A
N
O
TI
43

A
R
94

PO
26

R
o.

O
N

C
al

K
ri

ZA
Se

A
IM
K
ZA
A
M
YA
3
01
)2
(c
ht
ig
yr
op
C

17-9
Serial No. 269443

17 COMPOUND MACHINING FUNCTIONS

No. Machining pattern Programming example

1 Upper turret — 1st spindle; Turning, Separate G109L1


M901
M202
M3 S!!!
M Machining data
M5
M950
M30

G109L2
M950

. d
M30

ve
s er
2 Lower turret — 2nd spindle; Turning, Separate

re
G109L1
M950

ts
gh
M30

ri
G109L2

ll
.A
M902

N
M302

O
M303 S!!!

TI
M Machining data
43

A
M305
R
94

M950
PO
26

M30
R
o.

O
N

3 Upper turret — 1st spindle; Milling, Separate


al

G109L1
K
ri

M901
ZA
Se

M200
A

M203 S!!!
IM

M Machining data
K

M205
ZA

M202
M950
A

M30
M
YA

G109L2
3

M950
01

M30
)2
(c

4 Upper turret — 2nd spindle; Milling, Separate G109L1


ht

M902
ig

M300
yr

M203 S!!!
op

M Machining data
C

M205
M302
M950
M30

G109L2
M950
M30

17-10
Serial No. 269443

COMPOUND MACHINING FUNCTIONS 17


No. Machining pattern Programming example

5 Upper turret — 2nd spindle; Turning, Separate G109L1


M902
M302
M303 S!!!
M Machining data
M305
M950
M30

G109L2
M950
M30

. d
ve
s er
6 Lower turret — 2nd spindle; Milling, Separate

re
G109L1
M950

ts
M30

gh
ri
G109L2

ll
M902

.A
M300

N
M203 S!!!

O
M Machining data

TI
M205
43

A
M302
R
94

M950
PO
26

M30
R
o.

O
N

C
al

7 Lower turret — 1st spindle; Milling, Separate


K

G109L1
ri

ZA

M950
Se

M30
A
IM

G109L2
K

M901
ZA

M200
A

M203 S!!!
M

M Machining data
YA

M205
M202
3

M950
01

M30
)2
(c
ht

8 Lower turret — 1st spindle; Turning, Separate G109L1


ig

M950
yr

M30
op
C

G109L2
M901
M202
M3 S!!!
M Machining data
M5
M950
M30

17-11
Serial No. 269443

17 COMPOUND MACHINING FUNCTIONS

No. Machining pattern Programming example

9 Upper turret — 1st spindle; Turning, G109L1 G109L2


Lower turret — 2nd spindle; Turning. M901 M902
M202 M302
M3 S!!! M303 S!!!
M Machining data M Machining data
M5 M305
M950 M950
M30 M30

d .
ve
ser
re
ts
gh
10 Upper turret — 1st spindle; Turning, G109L1 G109L2

ri
Lower turret — 2nd spindle; Milling. M901 M902

ll
.A
M202 M300
M3 S!!! M203 S!!!

N
M Machining data M Machining data

O
TI
M5 M205
43

M950
A M302
R
94

M30 M950
PO
26

M30
R
o.

O
N

C
al

K
ri

ZA
Se

A
IM
K
ZA

11 Upper turret — 1st spindle; Milling, G109L1 G109L2


A

Lower turret — 2nd spindle; Turning.


M

M901 M902
YA

M200 M302
M203 S!!! M303 S!!!
3

M Machining data M Machining data


01

M205 M305
)2

M202 M950
(c

M950 M30
ht

M30
ig
yr
op
C

17-12
Serial No. 269443

COMPOUND MACHINING FUNCTIONS 17


No. Machining pattern Programming example

12 Upper turret — 1st spindle; Milling, G109L1 G109L2


Lower turret — 2nd spindle; Milling. M901 M902
M200 M300
M203 S!!! M203 S!!!
M Machining data M Machining data
M205 M205
M202 M302
M950 M950
M30 M30

d .
ve
ser
re
ts
gh
13 Upper turret — 2nd spindle; Turning, G109L1 G109L2

ri
Lower turret — 1st spindle; Turning. M902 M901

ll
.A
M302 M202
M303 S!!! M3 S!!!

N
M Machining data M Machining data

O
TI
M305 M5
43

M950
A M950
R
94

M30 M30
PO
26

R
o.

O
N

C
al

K
ri

ZA
Se

A
IM
K
ZA

14 Upper turret — 2nd spindle; Milling, G109L1 G109L2


A

Lower turret — 1st spindle; Turning.


M

M902 M901
YA

M300 M202
M203 S!!! M3 S!!!
3

M Machining data M Machining data


01

M205 M5
)2

M302 M950
(c

M950 M30
ht

M30
ig
yr
op
C

17-13
Serial No. 269443

17 COMPOUND MACHINING FUNCTIONS

No. Machining pattern Programming example

15 Upper turret — 2nd spindle; Turning, G109L1 G109L2


Lower turret — 1st spindle; Milling. M902 M901
M302 M200
M303 S!!! M203 S!!!
M Machining data M Machining data
M305 M205
M950 M202
M30 M950
M30

d .
ve
s er
re
ts
16 Upper turret — 2nd spindle; Milling, G109L1 G109L2

gh
Lower turret — 1st spindle; Milling. M902 M901

ri
G28UW T003000

ll
T014000T0 M6

.A
M300 M200

N
M203 S!!! M203 S!!!

O
M950 M950

TI
G110C2M951 M951
43

A (Note) (Note)
M952 G110C1M952
R
94

G00C90. G00C0.
PO
26

G111 G111
R
o.

G00X100.Z0. G00X100.Z-10.
N

G01Z-50.F100 G01X50.F100
al

G00X120. (*) G00Z10. (*)


ri

ZA

Z0. X100.
Se

M M
IM

M205 M205
K

M202 M202
ZA

M953 M953
A

M30 M30
M

(*) Machining data


YA
3

Note: Give commands of cross machining control (G110) successively for the 1st and 2nd
01

spindles.
)2
(c
ht
ig
yr
op
C

17-14
Serial No. 269443

COMPOUND MACHINING FUNCTIONS 17


No. Machining pattern Programming example
17 Upper turret — 1st spindle; Turning,
G109L1 G109L2
Lower turret — 1st spindle; Turning.
M901 M901
M202
M3 S!!!
M950 M950
M Machining data M Machining data
M951 M951
M5
M952 M952
M30 M30

d .
ve
ser
re
ts
gh
18 Upper turret — 2nd spindle; Turning,
G109L1 G109L2

ri
Lower turret — 2nd spindle; Turning.
M902 M902

ll
.A
M302
M303 S!!!

N
M950 M950

O
M Machining data M Machining data

TI
43

M951
A M951
R
M305
94

PO

M952 M952
26

M30 M30
R
o.

O
N

C
al

K
ri

ZA
Se

A
IM
K
ZA

19 Upper turret — 1st spindle; Milling,


G109L1 G109L2
A

Lower turret — 1st spindle; Milling.


M901 M901
M

M950 M950
YA

M200
3

M951 M951
01

M203 S!!! M203 S!!!


)2

M Machining data M Machining data


M205 M205
(c

M202
ht

M952 M952
ig

M30 M30
yr
op
C

17-15
Serial No. 269443

17 COMPOUND MACHINING FUNCTIONS

No. Machining pattern Programming example


20 Upper turret — 2nd spindle; Milling,
G109L1 G109L2
Lower turret — 2nd spindle; Milling.
M902 M902
M950 M950
M300
M951 M951
M203 S!!! M203 S!!!
M Machining data M Machining data
M205 M205
M302
M952 M952
M30 M30

d .
ve
ser
re
ts
gh
ri
ll
.A
N
O
TI
43

A
R
94

PO
26

R
o.

O
N

C
al

K
ri

ZA
Se

A
IM
K
ZA
A
M
YA
3
01
)2
(c
ht
ig
yr
op
C

17-16 E
Serial No. 269443

POLYGONAL MACHINING 18
18 POLYGONAL MACHINING

18-1 Polygonal Machining ON/OFF: G51.2/G50.2

1. Function and purpose


A workpiece is machined in a polygonal shape by turning the rotary tool at a constant rate to the
workpiece at a given rotating speed.
The shape to be machined depends on the following conditions:
- The number of the edges of a rotary tool
- The ratio of the rotating speed of a workpiece to that of a rotary tool

.
d
ve
ser
re
ts
gh
ri
ll
.A
N
O
TI
43

A
R
94

Workpiece Rotary tool axis


PO
26

R
o.

O
N

Polygonal machining has an advantage of machining polygonal workpieces in shorter time than
al

polar coordinate interpolation. However, it has a disadvantage of not giving an accurate polygon.
ri

ZA
Se

As a result, polygonal machining is usually used to machine bolt heads and nuts not requiring an
A
IM

accurate polygon.
K
ZA
A
M
YA
3
01
)2
(c
ht

Quadrangle Octagon
ig
yr

Machining shape by polygonal machining (hatched section)


op

D732S0036
C

18-1
Serial No. 269443

18 POLYGONAL MACHINING

2. Programming format
Starting polygonal machining
G51.2 P_ Q_ D_;
- Give a command so that addresses P and Q provide the following:
(Address P): (Address Q) = (Workpiece rotational speed) : (Rotary tool speed)
- Command the rotational direction of rotary tool with the sign of address Q as follows.
When the sign of Q is “+”, positive direction is selected.
When the sign of Q is “–”, negative direction is selected.
- Use address D to specify the workpiece spindle to be used. The arguments D available, 1 to 4,

d .
refer to the settings of machine parameters (BA55 to BA58) as follows:

ve
er
Argument D Workpiece spindle selected

s
1 As set by parameter BA55

re
2 As set by parameter BA56

ts
gh
3 As set by parameter BA57

ri
4 As set by parameter BA58

ll
.A
- The default value of argument D is “1” (selection of workpiece spindle as set by BA55).

N
An alarm will be caused (809 ILLEGAL NUMBER INPUT) if the specified argument D is not

O
TI
supported as appropriate by the parameter setting concerned. (For example: D3 or D4 is
43

A
entered with the parameters BA57 and BA58 being set to “–1” [Invalid].)
R
94

PO

- The command range of addresses P, Q and D is as follows:


26

R
o.

Address Command range


O
N

P 1 to 9
al

Q –9 to –1, 1 to 9
ri

ZA
Se

D 1 to 4
A
IM

Command arguments P, Q and D with integers. They cannot be commanded with a value
including decimal fraction.
K
ZA

The designation of an address other than P, Q and D in a G51.2 block leads to an alarm (806
A

ILLEGAL ADDRESS), which will also be caused by designating any address in the G50.2
M

block.
YA

Canceling polygonal machining


3
01

G50.2;
)2
(c
ht
ig
yr
op
C

18-2
Serial No. 269443

POLYGONAL MACHINING 18
3. Sample program
G28 U0 W0;
T1100; Selection of tool No. 11 for polygonal machining
G98; Mode of feed per minute
M260; Polygonal machining mode selection
M3 S250; Normal rotation of spindle at 250 min–1
G51.2 P1 Q-2 D1; Reversed rotation of milling spindle at 500 min–1
G0 X100.Z30.;
G0 X46.6 Z3.;
G1 Z-20.F50;
G1 X60.F100;
G0 Z3.; Machining

d.
G0 X46.0;

ve
G1 Z-20.F30;

ser
G1 X60.F100;

re
G0 X100.Z30.;

ts
G50.2; Polygonal machining mode cancellation

gh
M261; Polygonal machining mode cancellation

ri
M205; Milling spindle stop

ll
.A
M5; Spindle stop
M30; End

N
O
TI
4. Notes
43

A
R
94

1. Take care not to program in the following manners (otherwise the alarm 807 ILLEGAL
PO
26

FORMAT will be caused):


R
o.

- Giving G51.2/G50.2 with another command in the same block,


O
N

- Giving G51.2 in the mode of G96 (control for constant surface speed),
al

K
ri

- Giving G51.2 in the mode of G51.2,


ZA
Se

- Selecting the milling mode in the G51.2 mode, or giving G51.2 in the milling mode,
A
IM

- Giving a synchronous tapping command in the mode of G51.2,


K

- Giving a command for spindle synchronization, orientation, or linkage in the G51.2 mode,
ZA

- Giving a fixed cycle command in the mode of G51.2, and vice versa.
A
M

2. Command a proper workpiece rotating speed and ratio of such workpiece rotating speed to
YA

the rotary tool speed so that the maximum rotating speed of rotary tool cannot be exceeded.
3

3. Move command such as one for general control axis cannot be given to the rotary tool axis
01

except the command of reference point return.


)2
(c

4. A mahine coordinate value of rotary tool axis is displayed within a range from 0 to
ht

“movement distance per rotation”. Relative coordinates and absolute coordinates are not
ig

renewed.
yr
op

5. An absolute position detector cannot be mounted on the rotary tool axis.


C

6. Jogging feed and handle feed for the rotary tool axis are ineffective during polygonal
machining.
7. Peforming thread cutting during polygonal maching makes the start point of thread cutting
be shifted. Therefore, cancel the polygonal machining before thread cutting.
8. Rotary tool axis during polygonal machining is not counted as a synchronous control axis.
9. During polygonal machining, it is possible, indeed, but not advisable at all to apply feed hold
or to change the override value for fear of deformation of the workpiece.

18-3
Serial No. 269443

18 POLYGONAL MACHINING

10. Avoid applying an emergency stop or resetting during polygonal machining for fear of
deformation of the workpiece due to a sudden stop of axis motions.
11. The alarm 956 RESTART OPERATION NOT ALLOWED will be caused when it is
attempted to start modal restart operation from a block in the G51.2 mode.
12. The gear for rotary tool, if provided, must be taken into account in setting the ratio of milling
spindle speed to spindle speed (Q : P).
13. Since phase matching between turning and milling spindles cannot be obtained, it is not
possible to start machining with the workpiece in a specific angular position.
14. Give the required commands for multiple cutting steps (e.g. roughing and finishing) in one
and the same program section of the G51.2 mode. If the mode is canceled, it is in genegal

d .
no more possible to obtain the same machining surface.

ve
15. The spindle speed can be changed in the mode of polygonal machining without fear of

ser
disturbing the phase of machining surface.

re
ts
gh
ri
ll
.A
N
O
TI
43

A
R
94

PO
26

R
o.

O
N

C
al

K
ri

ZA
Se

A
IM
K
ZA
A
M
YA
3
01
)2
(c
ht
ig
yr
op
C

18-4 E
Serial No. 269443

MEASUREMENT MACROS 19
19 MEASUREMENT MACROS
This chapter describes the measurement macros provided for implementing MAZATROL
workpiece measuring, tool measuring and coordinate measuring functions on the EIA/ISO
program. The measurement macroprograms are to be called up with G136 (Measurement Macro
Call) and G137 (Correction Macro Call). The use of these G-codes requires the corresponding
settings of the relevant parameters (J).

1. Detailed description
Give special macro call instructions (with G136 and G137) to use the measurement macros.
The appropriate system of workpiece coordinates must be established beforehand for the macro

.
to operate correctly. Moreover, the B-axis positioning in an angle and linear positioning to an

d
ve
intermediate point must be completed as appropriate before the macro call since such

er
operations are not provided for in the macroprogram.

s
re
Note that modal information on G90/G91 (absolute/incremental programming) and the F-code

ts
(rate of feed) may be changed through the execution of the G136 measurement macro.

gh
ri
A. Related parameters for macro call (J29 to J36)

ll
.A
Set the related parameters (J) as instructed below in order that the relevant system macros may

N
correctly be called by the special G-codes.

O
TI
43

No.1 No.2 No.3 No.4 No.5 No.6 No.7 No.8


A No.9 No.10 Description
R
94

J1 J5 J9 J13 J17 J21 J25 J29 J33 J37 Work No. of the called program
PO
26

J2 J6 J10 J14 J18 J22 J26 J30 J34 J38 G-code for macro call
R
o.

J3 J7 J11 J15 J19 J23 J27 J31 J35 J39 Type of macro call
N

J4 J8 J12 J16 J20 J24 J28 J32 J36 J40 Not used
al

K
ri

ZA
Se

Parameters for G136 (Measurement Macro Call)


A
IM

J29 = 100009590 J31 = 1 (G65)


J30 = 136 J32 = 0
K
ZA

Parameters for G137 (Correction Macro Call)


A

J33 = 100009599 J35 = 1 (G65)


M

J34 = 137 J36 = 0


YA
3
01
)2
(c
ht
ig
yr
op
C

19-1
Serial No. 269443

19 MEASUREMENT MACROS

B. Setting the system of workpiece coordinates


The measurement of the outside or inside diameter of a workpiece requires the origins of the X-
and Y-axis coordinates to be set on the axis of the turning spindle, as is the case with turning
operations by a MAZATROL program.
There are no restrictions on the system of coordinates for other measurement patterns.
Set a code from G54 to G59, or use a G92 command, to designate the system of coordinates.

Origin of workpiece coordinates


Measurement pattern
X-axis Y-axis Z-axis

Workpiece Patterns except OD/ID Arbitrary

.
measurement

d
OD and ID On the axis of the turning spindle Arbitrary

ve
Tool measurement Arbitrary (because the machine coordinate system is used)

er
Coordinate measurement MAZATROL coordinate system (G53.5)

s
re
ts
C. Coordinates rotation (G68)

gh
The programmed coordinates rotation mode (G68) must always be canceled before calling the

ri
ll
measurement macro.

.A
N
D. Tool length offset

O
TI
The measurement macro performs length offsetting for the touch sensor in the same manner as
43

for turning tools. A


R
94

PO
26

R
o.

O
N

C
al

K
ri

ZA
Se

A
IM
K
ZA
A
M
YA
3
01
)2
(c
ht
ig
yr
op
C

19-2
Serial No. 269443

MEASUREMENT MACROS 19
E. Measurement patterns and required addresses
The arguments used in the measurement and correction macros are as tabulated below.
Use address Q to specify the measurement pattern.

Address
Pattern G-code
X Y Z A B C H I J K D M U V W R S T Q
X WIDTH G136 ! ! ! ! ! ! ! ! ! ! ! ! ! ! 1
Y WIDTH G136 ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! 2
Z WIDTH G136 ! ! ! ! ! ! ! ! ! ! ! ! ! ! 3
X GROOVE G136 ! ! ! ! ! ! ! ! ! ! ! ! ! ! 4

.
Y GROOVE G136 ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! 5

d
ve
Z GROOVE G136 ! ! ! ! ! ! ! ! ! ! ! ! ! ! 6

er
+X STEP G136 ! ! ! ! ! ! ! ! ! ! ! ! ! ! 7

s
re
–X STEP G136 ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! 8

ts
+Y STEP G136 ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! 9

gh
–Y STEP G136 ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! 10

ri
Workpiece

! ! ! ! ! ! ! ! ! ! ! ! ! ! !

ll
+Z STEP G136 11

.A
–Z STEP G136 ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! 12

N
OUTER X G136 ! ! ! ! ! ! ! ! ! ! 13

O
TI
OUTER Y G136 ! ! ! ! ! ! ! ! ! ! 14
43

INNER X G136 ! ! A ! ! ! ! ! ! ! 15
R
94

PO

INNER Y G136 ! ! ! ! ! ! ! ! ! 16
26

! ! ! ! ! ! ! ! ! ! ! !
R

OUT. X (One-side) G136 21


o.

O
N

INN. X (One-side) G136 ! ! ! ! ! ! ! ! ! ! ! 22


C
al

! ! ! ! ! ! ! ! ! ! ! ! ! !
K

IN WIDTH G136 17
ri

ZA

IN GROOVE G136 ! ! ! ! ! ! ! ! ! ! ! ! ! ! 18
Se

EXT MILL G136 ! ! ! ! ∗ 19


IM

EXT TURN G136 ! ! ! ! ! ∗ 20


K

Correction/Printout G137 ! ! ! ! ! ! —
ZA

TOOL EYE G136 ! ! ! ! 52


Tool

A
M

Correction/Printout G137 ! ! ! ! —
YA

Z FACE G136 ! ! ! ! ! ! ! ! ! ! ! ! 81
Coordinate

! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! 91
3

C FACE G136
01

C GROOVE G136 ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! 92
)2

C STEP G136 ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! 93
(c

Correction/Printout G137 ! ! —
ht
ig

- A blank box indicates that specifying the argument is pointless.


yr

- Tool change occurs in accordance with the argument S (sensor tool).


op
C

- (∗) Do not enter the argument S (for sensor tool), in general, for external measurement.
- OD and ID measuring movements are performed on a YZ- or ZX-plane cutting the third axis (X
or Y) in its origin.
- Set in general the origin of the X- and Y-axis coordinates on the axis of the turning spindle.
- Omit the argument S (sensor designation) as required to suppress tool change operation (e.g.
for fear lest an interference should occur after tool change). In this case, no information on the
sensor tool can be printed out by G137.

19-3
Serial No. 269443

19 MEASUREMENT MACROS

2. Sample instructions for macro call

A. Workpiece measurement (G136: Q1 - Q18)


M
G54 ・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・ [1]
M
G136 X50.Y0.Z-10.A25.B0. C-10. I9. J-9. K10. D1 U65. V0. W0. S4.1 Q1 ・・・・・・・・ [2]
M
G137 A1 B0 C0 V2.0 ・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・ [3]

[1] Coordinate system setting


[2] Tool change for “T4A” and the Protrusion WIDTH along the X-axis measured.

. d
[3] Correction on the “T2” tool and the measurement results printed out.

ve
er
Address Name Description

s
re
X Starting point X X-axis coordinate of the starting measurement point. (Note 3)

ts
Y Starting point Y Y-axis coordinate of the starting measurement point. (Note 3)

gh
Z Starting point Z Z-axis coordinate of the starting measurement point.

ri
ll
A Ending point X X-axis coordinate of the ending measurement point. (Note 3)

.A
B Ending point Y Y-axis coordinate of the ending measurement point. (Note 3)

N
C Ending point Z Z-axis coordinate of the ending measurement point.

O
TI
I Upper tolerance limit Upper limit of tolerance. (Note 3)
43

J Lower tolerance limit


A
Lower limit of tolerance. (Note 3)
R
94

PO

K Measurement stroke Distance for measuring feed. (Notes 1, 3)


26

D Measurement reference 0: Starting measurement point 1: Ending measurement point


o.

O
N

M Direction of approach 0: X (OD turning direction) 1: Z (Facing direction)


C
al

U Approach point X X-axis coordinate of the approach point. (Note 3)


ri

ZA

V Approach point Y Y-axis coordinate of the approach point. (Note 3)


Se

W Approach point Z Z-axis coordinate of the approach point.


IM

S Sensor tool Tool No. and suffix (before and after decimal point) of touch sensor. (Note 2)
K

Q Measurement pattern Designation of measurement pattern.


ZA

- “Diameter” measuring movements must be performed on a YZ- or ZX-plane containing the axis
A
M

of turning operations. For this reason, be sure to set the workpiece origins of the X- and Y-axis
YA

coordinates on the axis of the turning spindle.


3

- Omission of argument Q result in the alarm 994 MACRO MEASUREMENT ALARM 5.


01
)2

Note 1: Argument K for EIA/ISO measurement has almost the same meaning as parameter
(c

K19 for MAZATROL programs. “K” and K19 denote respectively a distance from the
ht

center, and one from the contact point, of the probe, as shown below.
ig
yr
op

K19
C

K K19 : Skipping distance (MAZATROL)


K : Skipping distance (EIA/ISO)

Note 2: See the chapter entitled TOOL FUNCTIONS for more information on the tool specifying
method.
Example) T2.3 ・・・ Tool No. 2 with suffix C
Note 3: In the mode of “G10.9 X1” (Diameter data input for the X-axis), designate positions on
the Y-axis (with addresses Y, B, or U) in diameter values as well as positions on the
X-axis (with X, A, or U).

19-4
Serial No. 269443

MEASUREMENT MACROS 19
B. Workpiece measurement - External (G136: Q19, Q20)
G136 Z1 M100. I9. J-9. D1 Q20 ・・・・・・・・・・・ [1]
G137 A1 B0 C0 V3.0 ・・・・・・・・・・・ [2]
[1] External Z measurement executed.
[2] Correction on the tool “T3” and the measurement results printed out.

Address Name Description


Valid for turning tools only.
Z Data item to be corrected 0: Wear compensation X
1: Wear compensation Z (Note)
I Upper tolerance limit Upper limit of tolerance.

. d
J Lower tolerance limit Lower limit of tolerance.

ve
Change of sign of 0: Not reversed

er
D
correction value 1: Reversed (Note)

s
re
M Desired value Desired value for the section to be measured externally.

ts
19: External measurement of a milling tool

gh
Q Measurement pattern
20: External measurement of a turning tool

ri
ll
Note: Setting a value other than 0 and 1 functions the same as setting “1”.

.A
N
O
TI
43

A
R
94

PO
26

R
o.

O
N

C
al

K
ri

ZA
Se

A
IM
K
ZA
A
M
YA
3
01
)2
(c
ht
ig
yr
op
C

19-5
Serial No. 269443

19 MEASUREMENT MACROS

C. Workpiece measurement - Correction/Printout (G137)


G136 X50.Y0.Z-10.A25.B0. C-10. I9. J-9. K10. D1 U65. V0. W0. S4.1 Q1 ・・・・・・ [1]
M
G137 A1 B0 C0 V2.0 ・・・・・・ [2]

[1] Protrusion WIDTH along the X-axis measured.


[2] Correction on the tool “T2” and output of the measurement results.

Address Name Description


0: No output
1: Output to a text file (C:\MC_sdg\print\print.txt) on the hard disk.
Measurement results
A The maximum permissible size of the text file is 100 MB. (The size limit

d .
output pattern
can be changed by parameter DPR8.)

ve
2: Output to a printer (via RS232C)

s er
Valid for milling tools only.

re
B Data item to be corrected 0: Tool diameter (Note 3)

ts
1: Tool length (Note 5)

gh
0: Executed

ri
C Correction
1: Not executed (Note 4)

ll
.A
Used for an offset No. designated.
Type of the tool for
D 0: Correction for a milling tool

N
correction
1: Correction for a turning tool (Note 5)

O
TI
V No. and suffix (before and after decimal point) of the tool concerned. (Note 1)
43

Tool No. for correction


(Note 2) A
Used for correction on the MAZATROL tool data.
R
94

PO

H
26

Offset No. for correction No. of the offset data on which correction is to be conducted.
(Note 2)
R
o.

O
N

Note 1: See the chapter entitled TOOL FUNCTIONS for more information on the tool specifying
al

method.
ri

ZA
Se

Note 2: Setting both H (offset No.) and V (tool for correction) results in the alarm 993 MACRO
A
IM

MEASUREMENT ALARM 4.
Note 3: Setting a value other than 0 and 1 functions the same as setting “0” (for diameter).
K
ZA

Note 4: Setting a value other than 0 and 1 functions the same as setting “1”.
A
M

Note 5: “D0” for OD/ID measurement or “B1” for Width/Groove measurement leads to the
YA

alarm 192 EXECUTION IMPOSSIBLE.


3

<Data item for correction>


01
)2

1. For an argument V (Tool for correction)


(c

Correction is conducted on the data of the TOOL DATA display.


ht

- For milling tools: LENGTH or ACT-φ


ig
yr

- For turning tools: WEAR COMP. X or Z


op

2. For an argument H (Offset No. for correction)


C

Correction is conducted on the data of the TOOL OFFSET display.


- For type A: Data of the designated No.
- For type B: TOOL LENGTH/RADIUS GEOMETRY data of the designated No.
- For type C: Milling tools: GEOMETRIC OFFSET Z (as length) or NOSE-R (as dia.)
Turning tools: WEAR COMP. Z or X
- For type D: Milling tools: Geometric Offset Z (as length) or NOSE-R (as dia.)
Turning tools: Geometric Offset Z or X

19-6
Serial No. 269443

MEASUREMENT MACROS 19
D. Tool measurement
1. TOOL EYE measurement (G136: Q52)
M283 ・・・・・・・・ TOOL EYE set in the measuring position.
G136 B1 I-9.J-9.M1 R0.2 Q52 ・・・・・・・・ TOOL EYE measurement #1 (with breakage check).
G137 A1 C0 V2.1 ・・・・・・・・ Correction and printout.
M284 ・・・・・・・・ TOOL EYE returned to the waiting position.

Address Name Description


0: Not executed
B Check for breakage
1: Executed (Note 1)
Tolerance for Wear X data.
I Tolerance for Wear X

.
Omit the argument I if tool measurement (for X) is not required.

d
ve
Tolerance for Wear Z data.

er
J Tolerance for Wear Z
Omit the argument J if tool measurement (for Z) is not required.

s
re
Measurement section of the TOOL EYE.

ts
#1. OUT, Normal #2. OUT, Rev.

gh
ri
ll
.A
N
O
TI
43

A
R
M Measurement section
94

PO
26

#3. IN, Normal #4. IN, Rev.


R
o.

O
N

C
al

K
ri

ZA
Se

A
IM
K
ZA

R Nose-R Nose radius of the tool to be measured. (Note 2)


A

Q Measurement pattern 52: TOOL EYE measurement.


M
YA

Note 1: Setting a value other than 0 and 1 functions the same as setting “1”.
3

Note 2: Set the precise value of nose-R of the tool to be measured with address R; other-
01

wise the tool cannot be brought properly into contact with the TOOL EYE sensor.
)2
(c
ht
ig
yr
op
C

19-7
Serial No. 269443

19 MEASUREMENT MACROS

E. Tool measurement - Correction/Printout (G137)


G137 A1 C0 V3.0 ・・・・・・・・ Correction on the tool “T3” and output of the measurement results.

Address Name Description


0: No output
1: Output to a text file (C:\MC_sdg\print\print.txt) on the hard disk.
Measurement results
A The maximum permissible size of the text file is 100 MB. (The size limit
output pattern
can be changed by parameter DPR8.)
2: Output to a printer (via RS232C)
0: Executed
C Correction
1: Not executed (Note 3)
V No. and suffix (before and after decimal point) of the tool concerned. (Note 1)

.
Tool No. for correction

d
(Note 2) Used for correction on the MAZATROL tool data.

ve
H No. of the offset data on which correction is to be conducted.

er
Offset No. for correction
(Note 2)

s
re
ts
Note 1: See the chapter entitled TOOL FUNCTIONS for more information on the tool specifying

gh
method.

ri
Note 2: Setting both H (offset No.) and V (tool for correction) results in the alarm 993 MACRO

ll
.A
MEASUREMENT ALARM 4.

N
Note 3: Setting a value other than 0 and 1 functions the same as setting “1”.

O
TI
43

<Data item for correction> A


R
94

1. For an argument V (Tool for correction)


PO
26

Correction is conducted on the data of the TOOL DATA display.


R
o.

O
N

- For milling tools: LENGTH or ACT-φ


C
al

- For turning tools: WEAR COMP. X or Z


ri

ZA
Se

2. For an argument H (Offset No. for correction)


A
IM

Correction is conducted on the data of the TOOL OFFSET display.


- For type A: Data of the designated No.
K
ZA

- For type B: TOOL LENGTH/RADIUS GEOMETRY data of the designated No.


A

- For type C: Milling tools: GEOMETRIC OFFSET Z (as length) or NOSE-R (as dia.)
M

Turning tools: WEAR COMP. Z or X


YA

- For type D: Milling tools: Geometric Offset Z (as length) or NOSE-R (as dia.)
3

Turning tools: Geometric Offset Z or X


01
)2

<Remarks on TOOL OFFSET type A>


(c

Give G136 commands separately, as required, for measuring the length and diameter of a
ht

tool to set the two types of offset data under different numbers. (A diameter measurement
ig

must always be preceded by the length measurement for the same tool.)
yr

G136 B0 I1.T1 Q51 ・・・・・・・・・・Length measurement for the No. 1 tool.


op
C

G137 A0 C0 H2 ・・・・・・・・・・Correction on the data of offset No. 2.


G136 B0 J1.T1 Q51 ・・・・・・・・・・Diameter measurement for the No. 1 tool.
G137 A0 C0 H3 ・・・・・・・・・・Correction on the data of offset No. 3.

19-8
Serial No. 269443

MEASUREMENT MACROS 19
F. Coordinate measurement [Reference surface Z] (G136: Q81)
G136 X50.Y0.Z-5.C45.R-10.M1 I0.J2.D0.Q81

Address Name Description


X Starting point X X-axis coordinate of the measurement starting point. (Note 1)
Y Starting point Y Y-axis coordinate of the measurement starting point. (Note 1)
Z Starting point Z Z-axis coordinate of the measurement starting point.
A Starting point A A-axis coordinate of the measurement starting point.
B Starting point B B-axis coordinate of the measurement starting point.
C Starting point C C-axis coordinate of the measurement starting point.

d .
R Measurement surface distance Workpiece coordinate (Z) of the surface to be measured.

ve
0: Z-axis value is to be specified with I

er
M Direction of approach
1: X-axis value is to be specified with I (Note 2)

s
re
J Measurement stroke Distance for measuring feed from the starting point.

ts
I Initial point coordinate Axis coordinate in accordance with argument M.

gh
D Head index angle for touch sensor Selection from 0°, 90°, and 180°. (Note 3)

ri
1: Turning spindle 1

ll
T Spindle selection

.A
2: Turning spindle 2 (Note 4)

N
Q Measurement pattern Designation of measurement pattern.

O
TI
- This type of measurement-macro call instruction is only available for G-code series T [Turning
43

A
R
machines]. Giving the instruction for G-code series M [Machining centers] leads to an alarm.
94

PO
26

- Give a G53.5 command beforehand to set a MAZATROL coordinate system; otherwise the
R
o.

measurement results may only be incorrect.


O
N

- Give beforehand a command of change for the desired sensor tool, and index the head as
al

K
ri

required (for the application of the sensor tool).


ZA
Se

- A G136 command with argument Q81 (for measurement of reference surface Z) is designed for
IM

setting, or updating, the Z-OFFSET value on the SET UP MANAG. display.


K

- Giving the instruction in the mode of cylindrical interpolation (G7.1) leads to an alarm (808 MIS
ZA

SET G CODE).
A
M

- Take care not to give from another system (with G112) a command of spindle rotation to be
YA

executed during measurement.


3

Note 1: Enter the coordinates in radius values.


01
)2

Note 2: Setting a value other than 0 and 1 functions the same as setting “1”.
(c

Note 3: Setting an angle other than 0°, 90°, or 180° causes an alarm.
ht
ig

Note 4: Setting a value other than 1 and 2, as well as the omission, functions the same as
yr

setting “1”.
op
C

19-9
Serial No. 269443

19 MEASUREMENT MACROS

G. Coordinate measurement [Ref. surf./Groove width/Step width C] (G136: Q91 to Q93)


G136 X50. Z-5. B0. C45. R10. M1 I0. J2. P0. H50. Q91

Address Name Description


X Starting point X X-axis coordinate of the measurement starting point. (Note 1)
Z Starting point Z Z-axis coordinate of the measurement starting point.
A Starting point A A-axis coordinate of the measurement starting point.
B Starting point B B-axis coordinate of the measurement starting point.
Reference surface C: C coordinate of the meas. starting point.
C Starting point C / Target point C
Groove/Step width C: C coordinate of the target point.
D Width to be measured

d .
ve
Target C-axis coordinate.
R Target point C

er
(Only required for measurement of reference surface C)

s
re
0: Z-axis value is to be specified with I
M Direction of approach
1: X-axis value is to be specified with I (Note 2)

ts
gh
Amount of return movement after measurement.
K Return distance
(Setting unit: mm or in)

ri
ll
Distance for measuring feed from the starting point.

.A
J Measurement stroke
(Setting unit: mm or in)

N
E Number of measurement retrials Number of retrials by shifting the measurement starting point.

O
TI
F Shifting amount for retrial Amount of shifting the starting point for measurement retrial.
43

H Real measurement speed A


Rate of (skip) feed for real measurement.
R
94

PO

W Preliminary measurement speed Rate of (approaching) feed for preliminary measurement.


26

I Initial point coordinate Axis coordinate in accordance with argument M.


R
o.

U X coordinate of C-axis center X-axis coordinate of the center of the C-axis (as set in parameter S5).
N

C
al

Y Y coordinate of C-axis center Y-axis coordinate of the center of the C-axis (as set in parameter S5).
K
ri

ZA

Required for measurement of Step/Groove width C.


Se

Rotational direction for


V 0: CW
A

measurement
IM

1: CCW (Note 2)
S Head index angle for touch sensor Selection from 0°, 90°, and 180°. (Note 3)
K
ZA

1: Turning spindle 1
T Spindle selection
2: Turning spindle 2 (Note 4)
A
M

Q Measurement pattern Designation of measurement pattern.


YA

- This type of measurement-macro call instruction is only available for G-code series T [Turning
3
01

machines]. Giving the instruction for G-code series M [Machining centers] leads to an alarm.
)2

- Give a G53.5 command beforehand to set a MAZATROL coordinate system; otherwise the
(c

measurement results may only be incorrect.


ht
ig

- Give beforehand a command of change for the desired sensor tool, and index the head as
yr

required (for the application of the sensor tool).


op

- A G136 command with argument Q91 (for measurement of reference surface C) is designed
C

for setting, or updating, the C-OFFSET value on the SET UP MANAG. display.
- Giving the instruction in the mode of cylindrical interpolation (G7.1) leads to an alarm (808 MIS
SET G CODE).
- Take care not to give from another system (with G112) a command of spindle rotation to be
executed during measurement.
Note 1: Enter the coordinates in radius values.
Note 2: Setting a value other than 0 and 1 functions the same as setting “1”.

19-10
Serial No. 269443

MEASUREMENT MACROS 19
Note 3: Setting an angle other than 0°, 90°, or 180° causes an alarm.
Note 4: Setting a value other than 1 and 2, as well as the omission, functions the same as
setting “1”.

H. Coordinate measurement - Correction/Printout (G137)


G137 A1 C0 ・・・・・・・・・・・ Correction on setup data and output of the measurement results.

Address Name Description


0: No output
1: Output to a text file (C:\MC_sdg\print\print.txt) on the hard disk.
Measurement results
A The maximum permissible size of the text file is 100 MB. (The size limit
output pattern
can be changed by parameter DPR8.)

d .
ve
2: Output to a printer (via RS232C)

er
0: Executed
C Correction

s
1: Not executed (Note)

re
ts
The data item to be corrected on the SET UP MANAG. display is of the machining program

gh
called up for the currently active system, and depends on the type of the preceding measure-

ri
ment by G136 as follows:

ll
.A
- Reference surface Z ............................Correction on the Z-OFFSET item.

N
O
- Ref. surf. C, Groove/Step width C .......Correction on the C-OFFSET item.

TI
43

Note: Setting a value other than 0 and 1 functions the same as setting “1”.
A
R
94

PO

3. Illustration
26

R
o.

A. Workpiece measurement
N

C
al

The example bellow refers to the measurement operation for Width X. The measuring tool path is
K
ri

ZA

determined by the positional arguments (for starting and ending points, approach point, and
Se

measurement stroke) designated in the macro-call block. The only difference from the corre-
IM

sponding MAZATROL measurement is that the approach point can be designated as desired.
K

1. Programming
ZA

・・・・・・・・Coordinate system setting


A

G54
M

T1 T0 M6 ・・・・・・・・[1] Change for the touch sensor


YA

G0 Xx1 Yy1 Zz1 ・・・・・・・・[2] Intermediate point setting


3

G136 Xx Yy Zz Aa Bb Cc Ii Jj Kk Dd Uu Vv Ww Q1 ・・・・・・・・[3] Measurement of Width X


01

G137 A1 B0 C0 V2.0 ・・・・・・・・Correction and printout


)2
(c
ht
ig
yr
op
C

19-11
Serial No. 269443

19 MEASUREMENT MACROS

2. Tool path

[1]: Tool change position Rapid motion


[2]: Intermediate pt. (x1, y1, z1)
[3]: Approach pt. (u, v, w) Approaching feed
○: Starting meas. pt. (x, y, z) (Parameter K14)
●: Ending meas. pt. (a, b, c) Skip feed (K13) for the
Tool change position [1] designated argument K

[2] [2]

[3]

.
[3]

d
[4]

ve
k

er
k

s
[7]

re
ts
[9]

gh
k

ri
k

ll
.A
N
O
TI
43

A
R
94

X X
PO
26

R
o.

O
N

Z Y
C
al

D740PB0017
K
ri

ZA
Se

[1] Tool change for the touch sensor.


IM

[2] Intermediate point before the approach point; programmed beforehand as required.
K

[3] Rapid traverse (G0 mode) to the approach point (u, v, w).
ZA

The measurement macro controls the operation starting from the point [2] through the
A

measuring movements for the starting and ending points up to the escape on the Z-axis to
M
YA

the approach point level.


3

3. Approach point, escape position, and measurement stroke


01

- The measurement macro controls the movements starting with the motion to the approach
)2

point and ending with the escape to the approach point level for each pattern.
(c
ht

- The position of the approach point also determines the level to be reached by the final
ig

escape as well as the level for the transfer movements from the first for the second
yr

measurement point. This also applies to the Y-axis in the relevant motions on the XY- or
op

YZ-plane. Take due care in designating the approach point, therefore, to allow for a safety
C

clearance for transfer.

19-12
Serial No. 269443

MEASUREMENT MACROS 19

1) Protrusion/Groove Width measurement

Approach pt. (u, v, w)


Approach pt. (u, v, w)

Meas. stroke (k)

2) Step Height measurement

d .
Approach pt. (u, v, w)

ve
s er
re
ts
Approach pt. (u, v, w)

gh
ri
Meas. stroke (k)

ll
.A
Meas. stroke (k)

N
3) Outside/Inside Diameter measurement

O
TI
Meas. stroke (k) Approach pt. (u, v, w) Meas. stroke (k)
43

A
R
94

PO
26

Approach pt. (u, v, w)


R
o.

O
N

C
al

K
ri

ZA
Se

Meas. stroke (k)


IM

4) Inside Protrusion/Groove Width measurement

Meas. stroke (k)


K
ZA
A

Approach pt. (u, v, w)


M
YA

Approach pt. (u, v, w)


3
01
)2
(c

5) Outside/Inside X measurement (on one side)


ht
ig

Approach pt. (u, v, w)


yr

Approach pt. (u, v, w)


op
C

○: Starting meas. pt. (x, y, z)


●: Ending meas. pt. (a, b, c)

D740PB0018

19-13
Serial No. 269443

19 MEASUREMENT MACROS

B. Tool measurement
There are no differences in tool measurement between MAZATROL and EIA/ISO programming
types.

C. Coordinate measurement
There are three types of coordinate measurement to be executed by a G136 block as follows:
- Reference surface Z...........Measurement of Z-OFFSET
- Reference surface C ..........Measurement of C-OFFSET (by one-point measurement)
- Step/Groove width C ..........Measurement of C-OFFSET (by two-point measurement)

.d
1. Reference surface Z

ve
er
This type of measurement macro is designed for measuring the Z-offset value in order that

s
the workpiece coordinate Z of the reference surface may agree with the dimension specified

re
on the machining drawing.

ts
gh
ri
ll
.A
N
O
A

TI
C B
43

A
R
94

D
PO
26

A: Approaching motion
R

B: Rapid motion to the meas. starting point


o.

C: Motion at the rate of measurement feed


N

D: Return to the approach point


al

K
ri

ZA

D740PB0019
Se

A
IM

2. Reference surface C
K

Use this type of macro to measure the C-axis coordinate of the reference surface when the
ZA

protrusion or groove has only one side to be measured.


A
M
YA

Approach pt.
3
01
)2

Starting pt. B
(c

A: Preliminary measurement
A B: Return after preliminary
ht

measurement
ig
yr
op
C

Target angular position


Axis of rotation on the C-axis
on the C-axis D740PB0020

19-14
Serial No. 269443

MEASUREMENT MACROS 19
3. Step/Groove width C
Use this type of macro for both-side measurement on a step or groove to obtain the center
coordinate of the step/groove.
The measurement on the first side is performed in the first step preliminarily at a higher
speed (of approaching) to quickly detect the target surface. Once the preliminary
measurement has been done successfully, a precise measurement is performed in the
second step slowly (at the rate of skip feed).
Since the step or groove has been detected, the measurement on the other side occurs in a
single step at the rate of skip feed.

Approach pt.

d.
ve
D E

er
Starting pt. C

s
A A: Preliminary measurement

re
B: Return after prel. measurement
B

ts
C: Real measurement

gh
D: Return after real measurement
E: Transference to the starting point

ri
of measurement on the other side

ll
F F: Real measurement on the other

.A
G side
G: Return after real measurement on

N
the other side

O
TI
43

Axis of rotation A
R
Target angular position
94

on the C-axis
PO

on the C-axis
26

D740PB0021
o.

O
N

C
al

4. Remarks on G10.9 [Series M] or G122.1/G123.1 [Series T] (Diameter/Radius data input)


K
ri

ZA
Se

A. Workpiece measurement
IM

The designated data of starting and ending points and tolerances in the program, and the related
K

data on the AUTO MEASURE display, are processed and indicated respectively as follows:
ZA
A

OD/ID measurements Other measurement patterns


M

Starting pt. TARGET DATA Starting pt. TARGET DATA


YA

Ending pt. MEASURED DATA Ending pt. MEASURED DATA


Tolerance OFFSET AMOUNT Tolerance OFFSET AMOUNT
3
01

MAZATROL
)2

G10.9X0 (Series M)
(c

G122.1 (Series T)
ht

(Radius data input) Diameter data Radius data


ig

EIA/ISO
G10.9X1 (Series M)
yr

G123.1 (Series T)
op

(Diameter data input)


C

Note 1: The “G10.9X0” (Radius data input) mode is established upon completion of the work-
piece measurement.
Note 2: The K19 parameter functions as a radius value even in the OD/ID measurements.

19-15
Serial No. 269443

19 MEASUREMENT MACROS

B. Tool measurement
Tolerance values X and Z refer to diameter and radius data, respectively. Tolerance X must
denote a radius value, however, if the X-axis is not currently set (*) to the axis of diameter values.
Moreover, preparatory functions G122.1 and G123.1 are not available.
* According to the setting in machine parameter M18 bit 5.

C. Coordinate measurement
All types of data are processed as radius values.
The mode of G122.1 (Radius data input for the X-axis) is automatically selected when the G136
macro concerned is called up.

d .
ve
ser
re
ts
gh
ri
ll
.A
N
O
TI
43

A
R
94

PO
26

R
o.

O
N

C
al

K
ri

ZA
Se

A
IM
K
ZA
A
M
YA
3
01
)2
(c
ht
ig
yr
op
C

19-16 E
Serial No. 269443

TORNADO TAPPING (G130) 20


20 TORNADO TAPPING (G130)

1. Function and purpose


Tornado tapping cycle is provided to machine a tapped hole by one axial cutting motion with the
aid of a special tool. While usual tapping cycles require multiple tools to be used in sequence,
use of this cycle function spares tool change time as well as repetitive cutting motion in order to
enhance the machining efficiency.
This cycle function is only available on machines equipped with the Y-axis control facility.
Note: Tornado tapping function requires the following parameter settings for macro-call G-
codes:

d .
ve
J37 = 100009401 (Fixed value for the number of the macroprogram to be called for

er
tornado tapping)

s
re
J38 = 130 (Fixed value for the number of the G-code to be used for macro call)

ts
J39 = 2 (Fixed value for the type of macro call)

gh
ri
2. Programming format

ll
.A
The following format refers to hole machining on the face [or O. D. surface].

N
G17 [or G19];

O
TI
G130 R_Z_D_T_V_F_H_I_J_K_Q_E_M1 [or M0];
43

X [or Z] _Y_; (Setting of hole position) A


R
94

PO

G67;
26

R
o.

Hole machining axis


O
N

C
al

R
K
ri

ZA

E
Se

Cutting surface
A
IM

R: Position of R-point
I 45° Z: Position of hole bottom
K

D: Hole diameter
ZA

T: Tool diameter
H V: Hole depth
V
A

F: Feed rate
M

H: Chamfering amount
YA

I: Pitch 1
J: Pitch 2
3

K: Bottom finishing (0: No, 1: Yes, Others: Yes)


01

Q: Machining direction (0: CW, 1: CCW)


J E: Position of 2nd R-point
)2

Z
M: Hole machining axis (0: X, 1: Z or oblique)
(c

D TEP300
ht
ig

- The chamfering angle is fixed at 45°.


yr
op

- Arguments D (hole diameter) and T (tool diameter) must satisfy the following condition:
D ≥ T ≥ D/2.
C

- Argument K is used to select whether finishing is to be (K1) or not to be (K0) executed on the
bottom of the hole.
- Set the hole position separately from the macro-call G-code (G130).
- As is the case with usual fixed cycles, actual machining with axial movement can only be
executed for a block containing the hole position data.
- Do not fail to set the code G67 as required to cancel the modal call.
- Set the code G122.1 (Radius data input for the X-axis) as required beforehand to use the
tornado tapping function.

20-1
Serial No. 269443

20 TORNADO TAPPING (G130)

3. Description of movement

A. Hole machining
1. With chamfering
After moving from the current position to the R-point on the hole axis and then approaching
to a point on the 2nd R-point level, chamfering is performed by a spiral-helical interpolation
first, and then cylindrical machining is carried out to the bottom by a circular-helical
interpolation.

Cutting feed
Initial point Rapid traverse
R-point

. d
Approach point

ve
R 2nd R-point

er
E

s
Cutting

re
surface

ts
gh
Chamfer Pitch 1

ri
Hole depth

ll
.A
N
O
TI
Pitch 2
43

A
R
94

Hole diameter TEP301


PO
26

R
o.

2. Without chamfering
O
N

After moving from the current position to the R-point on the hole axis and then approaching
al

K
ri

ZA

through the hole radius and to a point on the 2nd R-point level, cylindrical machining is
Se

carried out from the top to the bottom by a circular-helical interpolation.


A
IM

Cutting feed
K

Initial point Rapid traverse


ZA

R-point
A

Approach point
M

2nd R-point
R
YA

E
3

Cutting
01

surface
)2
(c

Hole depth
ht
ig
yr

Pitch 2
op
C

Hole diameter TEP302

20-2
Serial No. 269443

TORNADO TAPPING (G130) 20


B. Movement on the bottom
1. With bottom finishing
After cutting down to the bottom of the hole by helical interpolation, the tool performs a
circular interpolation for full circle, and then escapes radially to the axis of the hole before
returning in the axial direction to the initial point or R-point at the rapid traverse.

d .
ve
ser
Escape point

re
ts
gh
ri
TEP303

ll
.A
2. Without bottom finishing

N
After cutting down to the bottom of the hole by helical interpolation, the tool escapes radially

O
TI
to the axis of the hole while axially returning through quarter the pitch, and then returns in
43

A
the axial direction to the initial point or R-point at the rapid traverse.
R
94

PO
26

R
o.

O
N

C
al

K
ri

ZA
Se

A
IM

Escape point
K

1/4 pitch
ZA
A
M
YA

TEP304
3
01
)2
(c
ht
ig
yr
op
C

20-3
20

C
op
yr
ig
- NOTE -

ht
(c
)2
TORNADO TAPPING (G130)

01
3
YA
M
A Se
ZA
K ri
al
IM
N
A o.
ZA 26
K

20-4 E
94
C
O 43
Serial No. 269443

R
PO
R
A
TI
O
N
.A
ll
ri
gh
ts
re
ser
ve
d.
Serial No. 269443

EIA/ISO PROGRAM DISPLAY 21


21 EIA/ISO PROGRAM DISPLAY
This chapter describes general procedures for and notes on constructing an EIA/ISO program
newly, and then editing functions.

21-1 Procedures for Constructing an EIA/ISO Program


(1) Press the display selector key.
(2) Press the [PROGRAM] menu key.
! The PROGRAM display will be selected.
(3) Press the [WORK No.] menu key.

.d
!

ve
[WORK No.] is highlighted and the WORK No. SELECT window appears.

er
Remark: Refer to the Operating Manual for the WORK No. SELECT window.

s
re
(4) Enter the new work number of a program to be constructed.

ts
gh
- Specifying a work number of a program registered already in NC unit allows the program

ri
to be displayed on the screen. Therefore, constructing a new program requires specifying

ll
a work number which has not been used. The conditions how work numbers are used are

.A
displayed on the WORK No. SELECT window.

N
O
(5) Press the [EIA/ISO PROGRAM] menu key.

TI
43

- Press the [PROGRAM EDIT] menu key instead of [EIA/ISO PROGRAM] if a work number
A
R
94

of the program already registered has been set in Step (4).


PO
26

R
o.

Cursor
O
N

C
al

K
ri

ZA

(6) Enter the required programming data.


Se

Set data using alphabetic keys, numeric keys and INPUT key .
IM

INPUT
K

- When INPUT key INPUTis pressed, the cursor is moved to the top of the next line, and then
ZA

the data of the next block can be entered.


A

(7) Press the [PROGRAM COMPLETE] menu key to end the editing.
M
YA
3
01
)2
(c
ht
ig
yr
op
C

21-1
Serial No. 269443

21 EIA/ISO PROGRAM DISPLAY

21-2 Editing Function of EIA/ISO PROGRAM Display

21-2-1 General
Establishing a constructing mode on the PROGRAM (EIA/ISO) display allows the following
menu to be displayed as an initial one.

[1] [2] [3] [4] [5] [6]

Terms [1] to [6] represent functions related to the program editing. Use of the functions permits

.
d
ve
the following operations:

er
- Inserting and altering data at any position

s
re
Data can be inserted and altered at any position on the display.

ts
- Erasing the data

gh
Data displayed on the display can be erased.

ri
ll
- Searching for the data

.A
Data can be searched in the following four ways.

N
O
1) Searching for the top line of the program

TI
43

2) Searching for the bottom line of the program


R
A
94

3) Searching for any required line of the program


PO
26

4) Searching for any character string


R
o.

- Copying the data


O
N

Other EIA/ISO programs registered in the NC unit can be copied into the selected program, or
al

any data character string in the selected program can be copied into a given position of the
ri

ZA
Se

selecting program or a new EIA/ISO program.


A
IM

- Moving the data


Any data character string can be moved to a given position of the selecting program or a new
K
ZA

EIA/ISO program.
A

- Replacing the data


M

Any data character string can be replaced by another character string.


YA
3

21-2-2 Operation procedure


01
)2

The procedure for each operation is described below.


(c

(Given that EIA/ISO program, in which several lines of data are already provided, is selected,
ht

and editing mode is established, and also that ALTER menu item is not highlighted in the
ig

operations 3 and onward.)


yr
op

1. Inserting the data


C

(1) Press the [ALTER] menu key as required to obtain the normal display state (ALTER).
- When ALTER is displayed, press the menu key to cancel the highlighting.
(2) Move the cursor to the position where data must be inserted.
- The cursor can be moved to any direction (vertically and horizontally).
(3) Enter the required data.
! Data is inserted in sequence into the position where the cursor is placed.
! Data previously set behind the cursor position are moved behind the inserted data.

21-2
Serial No. 269443

EIA/ISO PROGRAM DISPLAY 21


2. Altering the data
(1) Press [ALTER] menu key to display ALTER.
- When ALTER is displayed, press the menu key to highlight the menu item.
(2) Move the cursor to the position where data must be altered.
- The cursor can be moved to any direction (vertically and horizontally).
(3) Enter the required data.
! Data is altered in sequence from the position where the cursor is placed.
! The character previously set at the cursor position is replaced in sequence by the new
data.

d .
ve
3. Erasing the data

er
(1) Move the cursor to the head of the character string to be erased.

s
re
(2) Press the [ERASE] menu key.

ts
gh
! The character at the cursor position is highlighted and the [ERASE] menu item is also

ri
highlighted.

ll
.A
(3) Move the cursor to the position next to the end of the character string to be erased.

N
! The portion from the head of the character string specified in (1) to the position before

O
TI
the cursor is highlighted, which indicates that the highlighted portion provides the
43

object of erasure. A
R
94

PO
26

N001 G00 X10. IZ10.;


R

G00 X100.
o.

O
N

G00 Z20.I
C

Cursor position
al

N002 M08 in (1)


ri

ZA

M03
Se

Cursor
A
IM

(4) Press the input key.


K

! The character string highlighted in (3) is erased.


ZA

Example: (Continued)
A
M
YA

N001 G00 X10.


N002 M08
3
01

M03
)2
(c

4. Searching for the data


ht
ig

A. Searching for the top line of the program


yr
op

(1) Press the [SEARCH] menu key.


C

(2) Press the [PROG HEAD] menu key.


! The cursor moves to the top line.

B. Searching for the bottom line of the program


(1) Press the [SEARCH] menu key.
(2) Press the [PROG END] menu key.
! The cursor moves to the bottom line.

21-3
Serial No. 269443

21 EIA/ISO PROGRAM DISPLAY

C. Searching for any required line of the program


(1) Press the [SEARCH] menu key.
(2) Press the [SEARCH LINE No.] menu key.
! [SEARCH LINE No.] is highlighted.
(3) Set the line No. of the line to be searched for.
- Enter the line No. with numeric keys, and press the input key.
! The cursor moves to the specified line.
D. Searching for any character string
(1) Press the [SEARCH] menu key.

d.
(2) Press the [SEARCH FORWARD] menu key or [SEARCH BACKWARD] menu key.

ve
!

er
[SEARCH FORWARD] or [SEARCH BACKWARD] is highlighted.

s
re
ts
gh
ri
ll
.A
N
O
TI
43

A
R
94

PO
26

- To search for a character string in the area before the cursor position, press the [SEARCH
R

FORWARD] menu key, and for the area after the cursor position, press [SEARCH
o.

O
N

BACKWARD] menu key.


al

(3) Set the character string to be searched for and press the input key.
ri

ZA
Se

! The cursor moves to the head of the character string which has been found first.
A
IM

- Press the data cancellation key (CANCEL) to stop halfway the searching operation, whose
K

running state is indicated by the message CNC BUSY on the display.


ZA

Remark: Pressing the input key in sequence allows the cursor to move to the character string
A
M

which has been found next.


YA

5. Copying the data


3
01

A. Copying a program
)2

(1) Move the cursor to the position where the program is to be copied.
(c
ht

(2) Press the [COPY] menu key.


ig

(3) Press the [PROGRAM COPY] menu key.


yr

!
op

[PROGRAM COPY] is highlighted and the WORK No. SELECT window appears.
C

(4) Set the work number of the program to be copied and press the input key.
! The program is inserted into the cursor position.
Note: MAZATROL programs cannot be copied.

B. Copying any character string into the selected program


(1) Move the cursor to the head of the character string to be copied.
(2) Press the [COPY] menu key.

21-4
Serial No. 269443

EIA/ISO PROGRAM DISPLAY 21


(3) Press the [LINE(S) COPY] menu key.
! The character at the cursor position is highlighted and the [LINE(S) COPY] menu item
is also highlighted.
(4) Move the cursor to the position next to the end of the character string to be copied.
! The portion from the head of the character string specified in (1) to the position before
the cursor is highlighted, which indicates that the highlighted portion provides the
object of copying.
Example:
N001 G00 X10. IZ10.
G00 X100.
G00 Z20.

d.
Cursor position in (1)

ve
IN002 M08

er
M03 Cursor

s
re
(5) Press the input key.

ts
gh
! The area being highlighted is established as the object to be copied.

ri
(6) Move the cursor to the position where the character string is to be copied.

ll
.A
! The cursor only moves, and the area highlighted does not change.

N
Example:

O
TI
N001 G00 X10. Z10.
43

G00 X100. A
R
94

G00 Z20.
PO
26

N002 M08
R

IM03
o.

O
N

Cursor
al

(7) Press the input key.


K
ri

ZA

! The character string highlighted is copied at the cursor position.


Se

A
IM

Example: (Continued)
N001 G00 X10.Z10.
K

G00 X100.
ZA

G00 Z20.
A

N002 M08
M

Z10.
YA

G00 X100.
G00 Z20.
3

M03
01
)2

C. Copying any character string into a new program


(c
ht

(6) First, carry out Steps (1) to (5) of B. Set the workpiece number of a new program where the
ig

character string is to be copied and press the input key.


yr
op

! The character string is copied in the new program, and the area highlighted is returned
C

to normal display.
Remark: Pressing the [PROGRAM FILE] menu key allows the WORK No. SELECT window to
be displayed.

21-5
Serial No. 269443

21 EIA/ISO PROGRAM DISPLAY

6. Moving the data

A. Moving the selected program to any position


(1) Move the cursor to the head of the character string to be moved.
(2) Press the [MOVE] menu key.
! The character at the cursor position is highlighted and the [MOVE] menu item is also
highlighted.
(3) Move the cursor to the position next to the end of the character string to be moved.
! The portion from the head of the character string specified in (1) to the position before
the cursor is highlighted, which indicates that the highlighted portion provides the

d .
object of moving.

ve
er
Example:

s
re
N001 G00 X10. IZ10.

ts
G00 X100.

gh
G00 Z20.I

ri
N002 M08 Cursor position in (1)

ll
M03

.A
Cursor

N
(4) Press the input key.

O
TI
! The area being highlighted is established as the object to be moved.
43

A
R
94

(5) Move the cursor to the position where the character string is to be moved.
PO
26

! The cursor only moves, and the area highlighted does not change.
R
o.

Example: (Continued)
N

C
al

N001 G00 X10. Z10.


ri

ZA
Se

G00 X100.
A

G00 Z20.
IM

N002 M08
IM03
K
ZA

Cursor
A
M

(6) Press the input key.


YA

! The character string highlighted is moved to the cursor position.


3
01

Example:
)2
(c

N001 G00 X10.


N002 M08
ht

Z10.
ig

G00 X100.
yr

G00 Z20. M03


op
C

B. Movement to a new program


(5) First, carry out Steps (1) to (4) of A. Set the work number of a new program where the
character string is to be moved and press the input key.
! The character string is moved to the new program.
Remark: Pressing the [PROGRAM FILE] menu key allows the WORK No. SELECT window to
be displayed.

21-6
Serial No. 269443

EIA/ISO PROGRAM DISPLAY 21


7. Replacing the data
(1) Move the cursor to the starting position of data replacement.
- Replacement is made downward from the cursor position. To make replacement through-
out the program, therefore, move the cursor to the first character of the top line.
(2) Press the [FIND & REPLACE] menu key.
! [FIND & REPLACE] is highlighted.

d.
ve
ser
re
ts
gh
ri
ll
(3) Set the character string before replacement.

.A
Enter the character string to be replaced using alphanumeric keys, and press the tab key

N
O
.

TI
43

A
(4) Set the new character string after replacement using alphanumeric keys, and press the
R
94

input key.
PO
26

! The cursor moves to the head of the character string before replacement that has been
R
o.

found first after the cursor position specified in (1).


N

C
al

(5) Press the [REPLACE] menu key.


ri

ZA
Se

! The character string before replacement at the cursor position is replaced by the
A

character string after replacement, and the cursor moves to the head of the next
IM

character string before replacement. Pressing the [REPLACE] menu key in sequence
K

allows the character string before replacement to be replaced in order of being found.
ZA
A

When replacing the special character string at the cursor position is not required, press the [NO
M

REPLACE] menu key in place of [REPLACE] menu key.


YA

Remark 1: To stop the replacement, press the [END] menu key.


3
01

Remark 2: To replace all the character strings in the program, press the [NEXT] menu key.
)2

Remark 3: Press the data cancellation key (CANCEL) to stop halfway the total replacement by
(c

the NEXT menu function, whose running state is indicated by the message CNC
ht

BUSY on the display.


ig
yr
op
C

21-7
Serial No. 269443

21 EIA/ISO PROGRAM DISPLAY

21-3 Macro-Instruction Input


This function permits entering the macro-instruction word by word for editing the EIA/ISO
program efficiently.
(1) Press the [MACRO INPUT] menu key.
! The MACRO INPUT window appears.

.
d
ve
ers
re
ts
gh
ri
- The character string selected with the cursor is usable.

ll
.A
(2) Move the cursor to the characters corresponding to the required macro-instruction and

N
press the input key.

O
!

TI
The macro-instruction is entered in the editing zone of the program.
43

A
(3) Press the menu selector key to display the menu for normal data input, and continue
R
94

PO

program editing.
26

R
o.

O
N

C
al

K
ri

ZA
Se

A
IM
K
ZA
A
M
YA
3
01
)2
(c
ht
ig
yr
op
C

21-8
Serial No. 269443

EIA/ISO PROGRAM DISPLAY 21

21-4 Division of Display (Split Screen)

1. Dividing the screen (vertically)


(1) Temporarily cancel the editing mode, if selected, by pressing the [PROGRAM COMPLETE]
menu key.
(2) Press the [DISPLAY 2 PROGRAM] menu key.
! The display of the menu item is highlighted and the WORK No. SELECT window
appears.
(3) Select the work number of the program to be displayed.

d .
! The screen is divided into the left and right part. One and the same section of the

ve
program is initially displayed in both parts.

ser
re
ts
gh
ri
ll
.A
N
O
TI
43

A
R
94

PO
26

R
o.

O
N

C
al

K
ri

ZA
Se

A
IM
K
ZA
A
M
YA
3

D740PB002E
01

- The editing operation can only be carried out in the part the title (WNo.) of which is highlighted.
)2
(c

- The display contents in the other part will remain unchanged even after the editing in the active
ht

part. Press the [CHANGE PROGRAM] menu key to change the display in the other part
ig

according to the editing operation.


yr
op
C

21-9
Serial No. 269443

21 EIA/ISO PROGRAM DISPLAY

2. Canceling the division


(1) Temporarily cancel the editing mode, if selected, by pressing the [PROGRAM COMPLETE]
menu key.
(2) Press anew the [DISPLAY 2 PROGRAM] menu key.
! The highlighting of the menu item is cancelled together with the division of the screen.

d.
ve
ser
re
ts
gh
ri
ll
.A
N
O
TI
43

A
R
94

PO
26

R
o.

O
N

C
al

K
ri

ZA
Se

D740PB003E
A
IM

3. Changing the active part


K
ZA

The editing is only possible for the part whose title (WNo.) is currently highlighted. The method to
change the active part is indicated below.
A
M

The data after the editing will not be displayed in the other part (of the same WNo.) unless this
YA

changing operation is carried out.


3
01
)2
(c
ht
ig
yr
op
C

21-10
Serial No. 269443

EIA/ISO PROGRAM DISPLAY 21


In the example below, the left-hand part is currently active.

d.
ve
ser
re
ts
gh
ri
ll
.A
N
O
TI
43

A
R
94

D740PB002E
PO
26

(1) Press the [CHANGE PROGRAM] menu key.


R
o.

!
O

The highlighting of the title is transferred from the left-hand to the right-hand part to
N

indicate that the latter has been made active.


al

K
ri

ZA

- The contents in the right-hand part will have been modified at the same time according to
Se

the editing operation performed for the left-hand part (of the same WNo.).
IM
K
ZA
A
M
YA
3
01
)2
(c
ht
ig
yr
op
C

D740PB004E

21-11
Serial No. 269443

21 EIA/ISO PROGRAM DISPLAY

21-5 Editing Programs Stored in External Memory Areas


Follow the procedure below to edit machining programs (to be used for Hard Disk, IC Memory
Card, and Ethernet operation) which are created in the EIA/ISO format and stored in external
memory areas. The functions for IC Memory Card and Ethernet operation, however, are optional.
(1) Select [DIR. CHANGE] from the initial menu of the PROGRAM display for EIA/ISO
programs.

.
! The menu item is highlighted and the DIRECTORY CHANGE window appears on the

d
ve
screen.

er
s
re
ts
gh
ri
ll
.A
N
O
TI
43

- The options IC CARD PROGRAMS and ETHERNET OPE. PROGRAM will only be
A
R
94

presented for machines equipped with the corresponding optional functions.


PO
26

(2) Use the cursor keys to select the desired storage area.
R
o.

(3) Click the [OK] button, or press the INPUT key.


N

C
al

!
K

With a memory area other than that of STANDARD PROGRAM being selected, the
ri

ZA

color of the background of the PROGRAM display changes to yellow. Follow the same
Se

creating and editing procedure, however, as for programs in the STANDARD PRO-
IM

GRAM area to prepare a new program, or edit an existing one, for the selected memory
K

area.
ZA

- The area selection made from this window will be maintained till turning off the NC power.
A
M

- The title bar displays the current selection of the memory area.
YA
3
01
)2
(c
ht
ig
yr
op
C

21-12 E

You might also like