Fanuc 0i TF Operator Manual Trang 1
Fanuc 0i TF Operator Manual Trang 1
Fanuc 0i TF Operator Manual Trang 1
B-64604EN-1/01
• No part of this manual may be reproduced in any form.
• All specifications and designs are subject to change without notice.
The products in this manual are controlled based on Japan’s “Foreign Exchange and
Foreign Trade Law”. The export of from Japan subject to an export license by the
government of Japan. Other models in this manual may also be subject to export controls.
Further, re-export to another country may be subject to the license of the government of
the country from where the product is re-exported. Furthermore, the product may also be
controlled by re-export regulations of the United States government.
Should you wish to export or re-export these products, please contact FANUC for advice.
The products in this manual are manufactured under strict quality control. However, when
a serious accident or loss is predicted due to a failure of the product, pay careful attention
to safety.
In this manual we have tried as much as possible to describe all the various matters.
However, we cannot describe all the matters which must not be done, or which cannot be
done, because there are so many possibilities.
Therefore, matters which are not especially described as possible in this manual should be
regarded as “impossible”.
B-64604EN-1/01 SAFETY PRECAUTIONS
SAFETY PRECAUTIONS
This section describes the safety precautions related to the use of CNC units.
It is essential that these precautions be observed by users to ensure the safe operation of machines
equipped with a CNC unit (all descriptions in this section assume this configuration). Note that some
precautions are related only to specific functions, and thus may not be applicable to certain CNC units.
Users must also observe the safety precautions related to the machine, as described in the relevant manual
supplied by the machine tool builder. Before attempting to operate the machine or create a program to
control the operation of the machine, the operator must become fully familiar with the contents of this
manual and relevant manual supplied by the machine tool builder.
CONTENTS
WARNING
Applied when there is a danger of the user being injured or when there is a
danger of both the user being injured and the equipment being damaged if the
approved procedure is not observed.
CAUTION
Applied when there is a danger of the equipment being damaged, if the
approved procedure is not observed.
NOTE
The Note is used to indicate supplementary information other than Warning and
Caution.
s-1
SAFETY PRECAUTIONS B-64604EN-1/01
CAUTION
1 Immediately after switching on the power, do not touch any of the keys on the
MDI unit until the position display or alarm screen appears on the CNC unit.
Some of the keys on the MDI unit are dedicated to maintenance or other special
operations. Pressing any of these keys may place the CNC unit in other than its
normal state. Starting the machine in this state may cause it to behave
unexpectedly.
2 The OPERATOR’S MANUAL and programming manual supplied with a CNC
unit provide an overall description of the machine's functions, including any
optional functions. Note that the optional functions will vary from one machine
model to another. Therefore, some functions described in the manuals may not
actually be available for a particular model. Check the specification of the
machine if in doubt.
3 Some functions may have been implemented at the request of the machine-tool
builder. When using such functions, refer to the manual supplied by the
machine-tool builder for details of their use and any related cautions.
s-2
B-64604EN-1/01 SAFETY PRECAUTIONS
CAUTION
4 The liquid-crystal display is manufactured with very precise fabrication
technology. Some pixels may not be turned on or may remain on. This
phenomenon is a common attribute of LCDs and is not a defect.
NOTE
1 Programs, parameters, and macro variables are stored in non-volatile memory in
the CNC unit. Usually, they are retained even if the power is turned off.
Such data may be deleted inadvertently, however, or it may prove necessary to
delete all data from non-volatile memory as part of error recovery.
To guard against the occurrence of the above, and assure quick restoration of
deleted data, backup all vital data, and keep the backup copy in a safe place.
2 The number of times to write machining programs to the non-volatile memory is
limited.
You must use "High-speed program management" when registration and the
deletion of the machining programs are frequently repeated in such case that the
machining programs are automatically downloaded from a personal computer at
each machining.
In "High-speed program management", the program is not saved to the
non-volatile memory at registration, modification, or deletion of programs.
WARNING
1 Coordinate system setting
If a coordinate system is established incorrectly, the machine may behave
unexpectedly as a result of the program issuing an otherwise valid move
command. Such an unexpected operation may damage the tool, the machine
itself, the workpiece, or cause injury to the user.
2 Positioning by nonlinear interpolation
When performing positioning by nonlinear interpolation (positioning by nonlinear
movement between the start and end points), the tool path must be carefully
confirmed before performing programming. Positioning involves rapid traverse. If
the tool collides with the workpiece, it may damage the tool, the machine itself,
the workpiece, or cause injury to the user.
3 Function involving a rotation axis
When programming polar coordinate interpolation or normal-direction
(perpendicular) control, pay careful attention to the speed of the rotation axis.
Incorrect programming may result in the rotation axis speed becoming
excessively high, such that centrifugal force causes the chuck to lose its grip on
the workpiece if the latter is not mounted securely. Such mishap is likely to
damage the tool, the machine itself, the workpiece, or cause injury to the user.
s-3
SAFETY PRECAUTIONS B-64604EN-1/01
WARNING
4 Inch/metric conversion
Switching between inch and metric inputs does not convert the measurement
units of data such as the workpiece origin offset, parameter, and current
position. Before starting the machine, therefore, determine which measurement
units are being used. Attempting to perform an operation with invalid data
specified may damage the tool, the machine itself, the workpiece, or cause injury
to the user.
5 Constant surface speed control
When an axis subject to constant surface speed control approaches the origin of
the workpiece coordinate system, the spindle speed may become excessively
high. Therefore, it is necessary to specify a maximum allowable speed.
Specifying the maximum allowable speed incorrectly may damage the tool, the
machine itself, the workpiece, or cause injury to the user.
6 Stroke check
After switching on the power, perform a manual reference position return as
required. Stroke check is not possible before manual reference position return is
performed. Note that when stroke check is disabled, an alarm is not issued even
if a stroke limit is exceeded, possibly damaging the tool, the machine itself, the
workpiece, or causing injury to the user.
7 Interference check for each path
Interference check for each path function is performed based on the tool data
specified during automatic operation. If the tool specification does not match the
tool actually being used, the interference check cannot be made correctly,
possibly damaging the tool or the machine itself, or causing injury to the user.
After switching on the power, or after selecting a tool post manually, always start
automatic operation and specify the tool number of the tool to be used.
8 Same address command in same block
The G code or M code including the same address cannot be commanded on
the same block. If you use the same address, it may result in the machine
behaving unexpectedly, possibly causing damage to the workpiece and/or
machine itself, or injury to the user. Command on separate block.(About
address P, refer to the appendix “List of functions include address P in the
program command”)
CAUTION
1 Absolute/incremental mode
If a program created with absolute values is run in incremental mode, or vice
versa, the machine may behave unexpectedly.
2 Plane selection
If an incorrect plane is specified for circular interpolation, helical interpolation, or
a canned cycle, the machine may behave unexpectedly. Refer to the
descriptions of the respective functions for details.
3 Torque limit skip
Before attempting a torque limit skip, apply the torque limit. If a torque limit skip
is specified without the torque limit actually being applied, a move command will
be executed without performing a skip.
4 Programmable mirror image
Note that programmed operations vary considerably when a programmable
mirror image is enabled.
s-4
B-64604EN-1/01 SAFETY PRECAUTIONS
CAUTION
5 Compensation function
If a command based on the machine coordinate system or a reference position
return command is issued in compensation function mode, compensation is
temporarily canceled, resulting in the unexpected behavior of the machine.
Before issuing any of the above commands, therefore, always cancel
compensation function mode.
WARNING
1 Manual operation
When operating the machine manually, determine the current position of the tool
and workpiece, and ensure that the movement axis, direction, and feedrate have
been specified correctly. Incorrect operation of the machine may damage the
tool, the machine itself, the workpiece, or cause injury to the operator.
2 Manual reference position return
After switching on the power, perform manual reference position return as
required.
If the machine is operated without first performing manual reference position
return, it may behave unexpectedly. Stroke check is not possible before manual
reference position return is performed.
An unexpected operation of the machine may damage the tool, the machine
itself, the workpiece, or cause injury to the user.
3 Manual numeric command
When issuing a manual numeric command, determine the current position of the
tool and workpiece, and ensure that the movement axis, direction, and command
have been specified correctly, and that the entered values are valid.
Attempting to operate the machine with an invalid command specified may
damage the tool, the machine itself, the workpiece, or cause injury to the
operator.
4 Manual handle feed
In manual handle feed, rotating the handle with a large scale factor, such as 100,
applied causes the tool and table to move rapidly. Careless handling may
damage the tool and/or machine, or cause injury to the user.
5 Disabled override
If override is disabled (according to the specification in a macro variable) during
threading, rigid tapping, or other tapping, the speed cannot be predicted,
possibly damaging the tool, the machine itself, the workpiece, or causing injury
to the operator.
6 Origin/preset operation
Basically, never attempt an origin/preset operation when the machine is
operating under the control of a program. Otherwise, the machine may behave
unexpectedly, possibly damaging the tool, the machine itself, the tool, or causing
injury to the user.
s-5
SAFETY PRECAUTIONS B-64604EN-1/01
WARNING
7 Workpiece coordinate system shift
Manual intervention, machine lock, or mirror imaging may shift the workpiece
coordinate system. Before attempting to operate the machine under the control
of a program, confirm the coordinate system carefully.
If the machine is operated under the control of a program without making
allowances for any shift in the workpiece coordinate system, the machine may
behave unexpectedly, possibly damaging the tool, the machine itself, the
workpiece, or causing injury to the operator.
8 Software operator's panel and menu switches
Using the software operator's panel and menu switches, in combination with the
MDI unit, it is possible to specify operations not supported by the machine
operator's panel, such as mode change, override value change, and jog feed
commands.
Note, however, that if the MDI unit keys are operated inadvertently, the machine
may behave unexpectedly, possibly damaging the tool, the machine itself, the
workpiece, or causing injury to the user.
9 RESET key
Pressing the RESET key stops the currently running program. As a result, the
servo axes are stopped. However, the RESET key may fail to function for
reasons such as an MDI unit problem. So, when the motors must be stopped,
use the emergency stop button instead of the RESET key to ensure security.
CAUTION
1 Manual intervention
If manual intervention is performed during programmed operation of the
machine, the tool path may vary when the machine is restarted. Before restarting
the machine after manual intervention, therefore, confirm the settings of the
manual absolute switches, parameters, and absolute/incremental command
mode.
2 Feed hold, override, and single block
The feed hold, feedrate override, and single block functions can be disabled
using custom macro system variable #3004. Be careful when operating the
machine in this case.
3 Dry run
Usually, a dry run is used to confirm the operation of the machine. During a dry
run, the machine operates at dry run speed, which differs from the
corresponding programmed feedrate. Note that the dry run speed may
sometimes be higher than the programmed feed rate.
4 Cutter and tool nose radius compensation in MDI mode
Pay careful attention to a tool path specified by a command in MDI mode,
because cutter or tool nose radius compensation is not applied. When a
command is entered from the MDI to interrupt in automatic operation in cutter or
tool nose radius compensation mode, pay particular attention to the tool path
when automatic operation is subsequently resumed. Refer to the descriptions of
the corresponding functions for details.
s-6
B-64604EN-1/01 SAFETY PRECAUTIONS
CAUTION
5 Program editing
If the machine is stopped, after which the machining program is edited
(modification, insertion, or deletion), the machine may behave unexpectedly if
machining is resumed under the control of that program. Basically, do not
modify, insert, or delete commands from a machining program while it is in use.
NOTE
The CNC uses batteries to preserve the contents of its memory, because it must
retain data such as programs, offsets, and parameters even while external
power is not applied.
If the battery voltage drops, a low battery voltage alarm is displayed on the
machine operator's panel or screen.
When a low battery voltage alarm is displayed, replace the batteries within a
week. Otherwise, the contents of the CNC's memory will be lost.
Refer to the Section "METHOD OF REPLACING BATTERY" in the Chapter,
"ROUTINE MAINTENANCE" of OPERATOR’S MANUAL (Common to
Lathe/Machining Center System) for details of the battery replacement
procedure.
WARNING
2 Absolute pulse coder battery replacement
When replacing the memory backup batteries, keep the power to the machine
(CNC) turned on, and apply an emergency stop to the machine. Because this
work is performed with the power on and the cabinet open, only those personnel
who have received approved safety and maintenance training may perform this
work.
When replacing the batteries, be careful not to touch the high-voltage circuits
(marked and fitted with an insulating cover).
Touching the uncovered high-voltage circuits presents an extremely dangerous
electric shock hazard.
s-7
SAFETY PRECAUTIONS B-64604EN-1/01
NOTE
The absolute pulse coder uses batteries to preserve its absolute position.
If the battery voltage drops, a low battery voltage alarm is displayed on the
machine operator's panel or screen.
When a low battery voltage alarm is displayed, replace the batteries within a
week. Otherwise, the absolute position data held by the pulse coder will be lost.
Refer to the FANUC SERVO MOTOR αi series Maintenance Manual for details
of the battery replacement procedure.
WARNING
3 Fuse replacement
Before replacing a blown fuse, however, it is necessary to locate and remove the
cause of the blown fuse.
For this reason, only those personnel who have received approved safety and
maintenance training may perform this work.
When replacing a fuse with the cabinet open, be careful not to touch the
high-voltage circuits (marked and fitted with an insulating cover).
Touching an uncovered high-voltage circuit presents an extremely dangerous
electric shock hazard.
s-8
B-64604EN-1/01 TABLE OF CONTENTS
TABLE OF CONTENTS
SAFETY PRECAUTIONS........................................................................... S-1
DEFINITION OF WARNING, CAUTION, AND NOTE ............................................. s-1
GENERAL WARNINGS AND CAUTIONS............................................................... s-2
WARNINGS AND CAUTIONS RELATED TO PROGRAMMING ............................ s-3
WARNINGS AND CAUTIONS RELATED TO HANDLING...................................... s-5
WARNINGS RELATED TO DAILY MAINTENANCE ............................................... s-7
I. GENERAL
1 GENERAL ............................................................................................... 3
1.1 GENERAL FLOW OF OPERATION OF CNC MACHINE TOOL ................... 5
1.2 NOTES ON READING THIS MANUAL.......................................................... 6
1.3 NOTES ON VARIOUS KINDS OF DATA ...................................................... 7
II. PROGRAMMING
1 GENERAL ............................................................................................. 11
1.1 OFFSET ...................................................................................................... 11
2 PREPARATORY FUNCTION (G FUNCTION) ...................................... 12
3 INTERPOLATION FUNCTION .............................................................. 16
3.1 POLAR COORDINATE INTERPOLATION (G12.1, G13.1) ......................... 16
3.2 CONSTANT LEAD THREADING (G32) ...................................................... 24
3.3 VARIABLE LEAD THREADING (G34)......................................................... 27
3.4 CIRCULAR THREADING (G35, G36) ......................................................... 28
3.5 CONTINUOUS THREADING....................................................................... 31
3.6 MULTIPLE THREADING ............................................................................. 32
4 FUNCTIONS TO SIMPLIFY PROGRAMMING ..................................... 34
4.1 CANNED CYCLE (G90, G92, G94) ............................................................. 34
4.1.1 Outer Diameter/Internal Diameter Cutting Cycle (G90) ........................................35
4.1.1.1 Straight cutting cycle ......................................................................................... 35
4.1.1.2 Taper cutting cycle ............................................................................................ 36
4.1.2 Threading Cycle (G92)...........................................................................................37
4.1.2.1 Straight threading cycle ..................................................................................... 37
4.1.2.2 Taper threading cycle ........................................................................................ 40
4.1.3 End Face Turning Cycle (G94) ..............................................................................43
4.1.3.1 Face cutting cycle .............................................................................................. 43
4.1.3.2 Taper cutting cycle ............................................................................................ 44
4.1.4 How to Use Canned Cycles (G90, G92, G94)........................................................45
4.1.5 Canned Cycle and Tool Nose Radius Compensation.............................................47
4.1.6 Restrictions on Canned Cycles...............................................................................48
4.2 MULTIPLE REPETITIVE CANNED CYCLE (G70-G76) .............................. 51
4.2.1 Stock Removal in Turning (G71) ...........................................................................52
4.2.2 Stock Removal in Facing (G72) .............................................................................66
4.2.3 Pattern Repeating (G73) .........................................................................................70
4.2.4 Finishing Cycle (G70) ............................................................................................74
c-1
TABLE OF CONTENTS B-64604EN-1/01
c-3
TABLE OF CONTENTS B-64604EN-1/01
III. OPERATION
1 DATA INPUT/OUTPUT ....................................................................... 307
1.1 INPUT/OUTPUT ON EACH SCREEN ....................................................... 307
1.1.1 Inputting and Outputting Y-axis Offset Data .......................................................307
1.1.1.1 Inputting Y-axis offset data ............................................................................. 307
1.1.1.2 Outputting Y-axis Offset Data......................................................................... 308
1.1.2 Inputting and Outputting Tool Offset / 2nd Geometry Data ................................309
1.1.2.1 Inputting tool offset / 2nd geometry data......................................................... 309
1.1.2.2 Outputting tool offset / 2nd geometry data ...................................................... 310
1.1.3 Inputting and Outputting 4th/5th Axis Offset Data..............................................311
1.1.3.1 Inputting 4th/5th axis offset data ..................................................................... 311
1.1.3.2 Outputting 4th/5th Axis Offset Data................................................................ 312
1.2 INPUT/OUTPUT ON THE ALL IO SCREEN.............................................. 314
1.2.1 Inputting and Outputting Y-axis Offset Data .......................................................315
1.2.2 Inputting and Outputting Tool Offset / 2nd Geometry Tool Offset .....................316
APPENDIX
A PARAMETERS.................................................................................... 359
A.1 DESCRIPTION OF PARAMETERS........................................................... 359
A.2 DATA TYPE............................................................................................... 408
A.3 STANDARD PARAMETER SETTING TABLES......................................... 409
B LIST OF FUNCTIONS INCLUDE ADDRESS P IN THE PROGRAM
COMMAND.......................................................................................... 410
B.1 LIST OF FUNCTIONS INCLUDE ADDRESS P IN THE ARGUMENT OF
G CODE .................................................................................................... 410
B.2 LIST OF FUNCTIONS INCLUDE ADDRESS P IN THE ARGUMENT OF
M AND S CODE ........................................................................................ 414
c-4
I. GENERAL
B-64604EN-1/01 GENERAL 1.GENERAL
1 GENERAL
This manual consists of the following parts:
NOTE
1 This manual describes the functions that can operate in the CNC model for lathe
system (path control type). For other functions not specific to the lathe system,
refer to the Operator's Manual (Common to Lathe System/Machining Center
System) (B-64604EN).
2 This manual does not detail the parameters not mentioned in the text. For details
of those parameters, refer to the Parameter Manual (B-64610EN).
Parameters are used to set functions and operating conditions of a CNC
machine tool, and frequently-used values in advance. Usually, the machine tool
builder factory-sets parameters so that the user can use the machine tool easily.
3 This manual describes not only basic functions but also optional functions. Look
up the options incorporated into your system in the manual written by the
machine tool builder.
Applicable models
This manual describes the models indicated in the table below.
In the text, the abbreviations indicated below may be used.
NOTE
1 For explanatory purposes, the following descriptions may be used according to
the CNC model :
- 0i-TF : Lathe system (T series)
2 For the FANUC Series 0i-MODEL F, parameters need to be set to enable or
disable some basic functions. For these parameters, refer to "PARAMETERS
OF 0i-F BASIC FUNCTIONS" in the PARAMETER MANUAL (B-64610EN).
-3-
1.GENERAL GENERAL B-64604EN-1/01
Special symbols
This manual uses the following symbols:
- IP
Indicates a combination of axes such as X_ Y_ Z_
In the underlined position following each address, a numeric value such as a coordinate value is placed
(used in PROGRAMMING.).
- ;
Indicates the end of a block. It actually corresponds to the ISO code LF or EIA code CR.
The above servo motors and the corresponding spindles can be connected to the CNC covered in this
manual. In the αi SV, αi SP, αi PS, and βi SV series, however, they can be connected only to 30
i-B-compatible versions. In the βi SVSP series, they cannot be connected.
This manual mainly assumes that the FANUC SERVO MOTOR αi series of servo motor is used. For
servo motor and spindle information, refer to the manuals for the servo motor and spindle that are actually
connected.
Part Part
drawing program
Before the actual programming, make the machining plan for how to machine the part.
Machining plan)
1. Determination of workpieces machining range
2. Method of mounting workpieces on the machine tool
3. Machining sequence in every cutting process
4. Cutting tools and cutting conditions
-5-
1.GENERAL GENERAL B-64604EN-1/01
Outer
diameter
Grooving cutting End face cutting
Workpiece
Prepare the program of the tool path and cutting condition according to the workpiece figure, for each
cutting.
-6-
B-64604EN-1/01 GENERAL 1.GENERAL
-7-
II. PROGRAMMING
B-64604EN-1/01 PROGRAMMING 1.GENERAL
1 GENERAL
Chapter 1, "GENERAL", consists of the following sections:
1.1 OFFSET
Explanation
- Tool offset
Usually, several tools are used for machining one workpiece. The tools have different tool length. It is
very troublesome to change the program in accordance with the tools.
Therefore, the length of each tool used should be measured in advance. By setting the difference between
the length of the standard tool and the length of each tool in the CNC (see Chapter, “Setting and
Displaying Data” in the OPERATOR’S MANUAL (Common to Lathe System/Machining Center
System)), machining can be performed without altering the program even when the tool is changed. This
function is called tool offset.
Standard Rough Finishing Grooving Threading
tool cutting tool tool tool
tool
Workpiece
- 11 -
2. PREPARATORY FUNCTION
(G FUNCTION) PROGRAMMING B-64604EN-1/01
Type Meaning
One-shot G code The G code is effective only in the block in which it is specified.
Modal G code The G code is effective until another G code of the same group is specified.
(Example)
G01 and G00 are modal G codes in group 01.
G01 X_ ;
Z_ ; G01 is effective in this range.
X_ ;
G00 Z_ ; G00 is effective in this range.
X_ ;
G01 X_ ;
:
There are three G code systems in the lathe system : A,B, and C (Table 2 (a)). Select a G code system
using bits 6 (GSB) and 7 (GSC) parameter No. 3401. Generally, OPERATOR’S MANUAL describes the
use of G code system A, except when the described item can use only G code system B or C. In such
cases, the use of G code system B or C is described.
Explanation
1. When the clear state (bit 6 (CLR) of parameter No. 3402) is set at power-up or reset, the modal G
codes are placed in the states described below.
(1) The modal G codes are placed in the states marked with as indicated in Table.
(2) G20 and G21 remain unchanged when the clear state is set at power-up or reset.
(3) Which status G22 or G23 at power on is set by bit 7 (G23) of parameter No. 3402. However,
G22 and G23 remain unchanged when the clear state is set at reset.
(4) The user can select G00 or G01 by setting bit 0 (G01) of parameter No. 3402.
(5) The user can select G90 or G91 by setting bit 3 (G91) of parameter No. 3402.
When G code system B or C is used in the lathe system, setting bit 3 (G91) of parameter No.
3402 determines which code, either G90 or G91, is effective.
2. G codes other than G10 and G11 are one-shot G codes.
3. When a G code not listed in the G code list is specified, or a G code that has no corresponding
option is specified, alarm PS0010, “IMPROPER G-CODE” occurs.
4. Multiple G codes can be specified in the same block if each G code belongs to a different group. If
multiple G codes that belong to the same group are specified in the same block, only the last G code
specified is valid.
5. If a G code belonging to group 01 is specified in a for drilling, the canned cycle for drilling is
cancelled. This means that the same state set by specifying G80 is set. Note that the G codes in
group 01 are not affected by a G code specifying a canned cycle.
6. When G code system A is used, absolute or incremental programming is specified not by a G code
(G90/G91) but by an address word (X/U, Z/W, C/H, Y/V). Only the initial level is provided at the
return point of the canned cycle for drilling..
7. G codes are indicated by group.
- 12 -
2.PREPARATORY FUNCTION
B-64604EN-1/01 PROGRAMMING (G FUNCTION)
Table 2 (a) G code list
G code system
Group Function
A B C
G00 G00 G00 Positioning (Rapid traverse)
G01 G01 G01 Linear interpolation (Cutting feed)
01
G02 G02 G02 Circular interpolation CW or helical interpolation CW
G03 G03 G03 Circular interpolation CCW or helical interpolation CCW
G04 G04 G04 Dwell
G04.1 G04.1 G04.1 G code preventing buffering
G05.1 G05.1 G05.1 AI contour control
G05.4 G05.4 G05.4 HRV3 on/off
G07.1 G07.1 G07.1
Cylindrical interpolation
(G107) (G107) (G107)
00
AI contour control (advanced preview control compatible
G08 G08 G08
command)
G09 G09 G09 Exact stop
G10 G10 G10 Programmable data input
G10.6 G10.6 G10.6 Tool retract and recover
G11 G11 G11 Programmable data input mode cancel
G12.1 G12.1 G12.1
Polar coordinate interpolation mode
(G112) (G112) (G112)
21
G13.1 G13.1 G13.1
Polar coordinate interpolation cancel mode
(G113) (G113) (G113)
G17 G17 G17 XpYp plane selection
G18 G18 G18 16 ZpXp plane selection
G19 G19 G19 YpZp plane selection
G20 G20 G70 Input in inch
06
G21 G21 G71 Input in mm
G22 G22 G22 Stored stroke check function on
09
G23 G23 G23 Stored stroke check function off
G25 G25 G25 Spindle speed fluctuation detection off
08
G26 G26 G26 Spindle speed fluctuation detection on
G27 G27 G27 Reference position return check
G28 G28 G28 Return to reference position
G28.2 G28.2 G28.2 In-position check disable reference position return
G29 G29 G29 Movement from reference position
00
G30 G30 G30 2nd, 3rd and 4th reference position return
In-position check disable 2nd, 3rd, or 4th reference position
G30.2 G30.2 G30.2
return
G31 G31 G31 Skip function
G32 G33 G33 Threading
G34 G34 G34 Variable lead threading
G35 G35 G35 Circular threading CW
Circular threading CCW (When bit 3 (G36) of parameter No.
G36 G36 G36 3405 is set to 1) or Automatic tool offset (X axis) (When bit 3
(G36) of parameter No. 3405 is set to 0)
Automatic tool offset (Z axis) (When bit 3 (G36) of parameter
G37 G37 G37
01 No. 3405 is set to 0)
Automatic tool offset (X axis) (When bit 3 (G36) of parameter
G37.1 G37.1 G37.1
No. 3405 is set to 1)
Automatic tool offset (Z axis) (When bit 3 (G36) of parameter
G37.2 G37.2 G37.2
No. 3405 is set to 1)
G38 G38 G38 Tool radius/tool nose radius compensation: with vector held
Tool radius/tool nose radius compensation: corner rounding
G39 G39 G39
interpolation
- 13 -
2. PREPARATORY FUNCTION
(G FUNCTION) PROGRAMMING B-64604EN-1/01
- 14 -
2.PREPARATORY FUNCTION
B-64604EN-1/01 PROGRAMMING (G FUNCTION)
Table 2 (a) G code list
G code system
Group Function
A B C
G70 G70 G72 Finishing cycle
G71 G71 G73 Stock removal in turning
G72 G72 G74 Stock removal in facing
G73 G73 G75 00 Pattern repeating cycle
G74 G74 G76 End face peck drilling cycle
G75 G75 G77 Outer diameter/internal diameter drilling cycle
G76 G76 G78 Multiple-thread cutting cycle
G71 G71 G72 Traverse grinding cycle
G72 G72 G73 Traverse direct sizing/grinding cycle
01
G73 G73 G74 Oscillation grinding cycle
G74 G74 G75 Oscillation direct sizing/grinding cycle
G80 G80 G80 10 Canned cycle cancel for drilling
G81.1 G81.1 G81.1 00 High precision oscillation function
G81 G81 G81 Spot drilling (FS10/11-T format)
G82 G82 G82 Counter boring (FS10/11-T format)
G83 G83 G83 Cycle for face drilling
G83.1 G83.1 G83.1 High-speed peck drilling cycle (FS10/11-T format)
G83.5 G83.5 G83.5 High-speed peck drilling cycle
G83.6 G83.6 G83.6 Peck drilling cycle
G84 G84 G84 Cycle for face tapping
10
G84.2 G84.2 G84.2 Rigid tapping cycle (FS10/11-T format)
G85 G85 G85 Cycle for face boring
G87 G87 G87 Cycle for side drilling
G87.5 G87.5 G87.5 High-speed peck drilling cycle
G87.6 G87.6 G87.6 Peck drilling cycle
G88 G88 G88 Cycle for side tapping
G89 G89 G89 Cycle for side boring
G90 G77 G20 Outer diameter/internal diameter cutting cycle
G92 G78 G21 01 Threading cycle
G94 G79 G24 End face turning cycle
G91.1 G91.1 G91.1 00 Maximum specified incremental amount check
G96 G96 G96 Constant surface speed control
02
G97 G97 G97 Constant surface speed control cancel
G96.1 G96.1 G96.1 Spindle indexing execution (waiting for completion)
G96.2 G96.2 G96.2 Spindle indexing execution (not waiting for completion)
00
G96.3 G96.3 G96.3 Spindle indexing completion check
G96.4 G96.4 G96.4 SV speed control mode ON
G98 G94 G94 Feed per minute
05
G99 G95 G95 Feed per revolution
- G90 G90 Absolute programming
03
- G91 G91 Incremental programming
- G98 G98 Canned cycle : return to initial level
11
- G99 G99 Canned cycle : return to R point level
- 15 -
3.INTERPOLATION FUNCTION PROGRAMMING B-64604EN-1/01
3 INTERPOLATION FUNCTION
Chapter 3, "INTERPOLATION FUNCTION", consists of the following sections:
NOTE
When bit 5 (NPI) of parameter No.8137 is 0, this function can be used.
Format
G12.1; Starts polar coordinate interpolation mode (enables polar coordinate
interpolation).
Specify linear or circular interpolation using coordinates in a Cartesian
coordinate system consisting of a linear axis and rotary axis (hypothetical
axis).
G13.1; Polar coordinate interpolation mode is cancelled (for not performing polar
coordinate interpolation).
Specify G12.1 and G13.1 in Separate Blocks.
Explanation
- Polar coordinate interpolation mode (G12.1)
The axes of polar coordinate interpolation (linear axis and rotary axis) should be specified in advance,
with corresponding parameters. Specifying G12.1 places the system in the polar coordinate interpolation
mode, and selects a plane (called the polar coordinate interpolation plane) formed by one linear axis and a
hypothetical axis intersecting the linear axis at right angles. The linear axis is called the first axis of the
plane, and the hypothetical axis is called the second axis of the plane. Polar coordinate interpolation is
performed in this plane.
In the polar coordinate interpolation mode, both linear interpolation and circular interpolation can be
specified by absolute or incremental programming.
Tool radius compensation can also be performed. The polar coordinate interpolation is performed for a
path obtained after tool radius compensation.
The tangential velocity in the polar coordinate interpolation plane (Cartesian coordinate system) is
specified as the feedrate, using F.
- 16 -
B-64604EN-1/01 PROGRAMMING 3.INTERPOLATION FUNCTION
Linear axis
(unit: mm or inch)
When the power is turned on or the system is reset, polar coordinate interpolation is canceled (G13.1).
The linear and rotation axes for polar coordinate interpolation must be set in parameters Nos. 5460 and
5461 beforehand.
CAUTION
The plane used before G12.1 is specified (plane selected by G17, G18, or G19)
is canceled. It is restored when G13.1 (canceling polar coordinate interpolation)
is specified.
When the system is reset, polar coordinate interpolation is canceled and the
plane specified by G17, G18, or G19 is used.
Specify the feedrate as a speed (relative speed between the workpiece and tool) tangential to the
polar coordinate interpolation plane (Cartesian coordinate system) using F.
NOTE
The parallel axes U, V, and W can be used in the G code system B or C.
- Movement along axes not in the polar coordinate interpolation plane in the
polar coordinate interpolation mode
The tool moves along such axes normally, independent of polar coordinate interpolation.
- 18 -
B-64604EN-1/01 PROGRAMMING 3.INTERPOLATION FUNCTION
Rotary axis
(X, C)
X-axis
Error in the direction of
hypothetical axis (P)
Center of rotary axis
(X, C) : Point in the X-C plane (The center of the rotary axis is considered to be the origin of
the X-C plane.)
X : X coordinate in the X-C plane
C : Hypothetical axis coordinate in the X-C plane
P : Error in the direction of the hypothetical axis (specified in parameter No. 5464)
C
G12.1 Xx Cc ;
Center of C-axis
X
Origin of workpiece
coordinate system x
Limitation
- Changing the coordinate system during polar coordinate interpolation
In the G12.1 mode, the coordinate system must not be changed (G92, G52, G53, relative coordinate reset,
G54 through G59, etc.).
- 19 -
3.INTERPOLATION FUNCTION PROGRAMMING B-64604EN-1/01
- Program restart
For a block in the G12.1 mode, the program and the block cannot be restarted.
- 20 -
B-64604EN-1/01 PROGRAMMING 3.INTERPOLATION FUNCTION
WARNING
1 Consider lines L1, L2, and L3. ΔX is the distance the tool moves per time unit at
the feedrate specified with address F in the Cartesian coordinate system. As the
tool moves from L1 to L2 to L3, the angle at which the tool moves per time unit
corresponding to ΔX in the Cartesian coordinate system increases from θ1 to θ2
to θ3. In other words, the C-axis component of the feedrate becomes larger as
the tool moves closer to the center of the workpiece. The C component of the
feedrate may exceed the maximum cutting feedrate for the C-axis because the
tool movement in the Cartesian coordinate system has been converted to the
tool movement for the C-axis and the X-axis.
ΔX
θ1 L1
θ2
L2
θ3
L3
L: Distance (in mm) between the tool center and workpiece center when the
tool center is the nearest to the workpiece center
R: Maximum cutting feedrate (deg/min) of the C axis
Then, a speed specifiable with address F in polar coordinate interpolation can be
given by the formula below. If the maximum cutting feedrate for the C-axis is
exceeded, the automatic speed control function for polar coordinate interpolation
automatically controls the feedrate.
π
F<L×R× (mm/min)
180
- Automatic override
If the velocity component of the rotary axis exceeds the permissible velocity (maximum cutting feedrate
multiplied by the permission factor specified in parameter No. 5463), the feedrate is automatically
overridden as indicated below.
Override = (Permissible velocity) ÷ (Velocity component of rotary axis) × 100(%)
- 21 -
3.INTERPOLATION FUNCTION PROGRAMMING B-64604EN-1/01
C-axis
[Example]
G90 G00 X10.0 C0. ; D C B A
G12.1 ;
G01 C0.1 F1000 ; X-axis
-10. +10.
X-10.0 :
G13.1 ;
Suppose that the maximum cutting feedrate of the rotary axis is 360 (3600 deg/min) and that the
permission factor of automatic override for polar coordinate interpolation (parameter No. 5463) is 0
(90%). If the program indicated above is executed, the automatic override function starts working when
the X coordinate becomes 2.273 (point A). The automatic speed clamp function starts working when the
X coordinate becomes 0.524 (point B).
The minimum value of automatic override for this example is 3%. The automatic speed clamp function
continues working until the X coordinate becomes -0.524 (point C). Then, the automatic override
function works until the X coordinate becomes -2.273 (point D).
(The coordinates indicated above are the values in the Cartesian coordinate system.)
NOTE
1 While the automatic speed clamp function is working, the machine lock or
interlock function may not be enabled immediately.
2 If a feed hold stop is made while the automatic speed clamp function is working,
the automatic operation halt signal *SP is output. However, the operation may
not stop immediately.
3 The clamped speed may exceed the clamp value by a few percent.
- 22 -
B-64604EN-1/01 PROGRAMMING 3.INTERPOLATION FUNCTION
Example
Sample program for polar coordinate interpolation in a Cartesian coordinate system consisting of the
X-axis (a linear axis) and a hypothetical axis
Hypothetical axis
N204 N203
N205
N202 N201 N200
X axis
Tool
N208
N206
N207
Z axis
O0001;
.
N010 T0101
.
N0100 G90 G00 X60.0 C0 Z ; Positioning to start point
N0200 G12.1; Start of polar coordinate interpolation
N0201 G42 G01 X20.0F ;
N0202 C10.0;
N0203 G03 X10.0 C20.0 R10.0;
N0204 G01 X-20.0; Geometry program
N0205 C-10.0; (program based on cartesian coordinates on
N0206 G03 X-10.0 C-20.0 I10.0 J0; X axis-hypothetical axis plane)
N0207 G01 X20.0;
N0208 C0;
N0209 G40 X60.0;
N0210 G13.1; Cancellation of polar coordinate interpolation
N0300 Z ;
N0400 X C ;
.
N0900M30;
- 23 -
3.INTERPOLATION FUNCTION PROGRAMMING B-64604EN-1/01
L L
Format
G32IP_F_; X axis
End point_
IP_: End point
F _: Lead of the long axis
(always radius programming)
δ2
X α Start point
Z
δ1
Z axis
0
Explanation
In general, threading is repeated along the same tool path in rough cutting through finish cutting for a
screw. Since threading starts when the position coder mounted on the spindle outputs a
one-spindle-rotation signal, threading is started at a fixed point and the tool path on the workpiece is
unchanged for repeated threading. Note that the spindle speed must remain constant from rough cutting
through finish cutting. If not, incorrect thread lead will occur.
- 24 -
B-64604EN-1/01 PROGRAMMING 3.INTERPOLATION FUNCTION
X
Tapered thread
LX
Z
LZ
α≤45° lead is LZ
α≥45° lead is LX
In general, the lag of the servo system, etc. will produce somewhat incorrect leads at the starting and
ending points of a thread cut. To compensate for this, a threading length somewhat longer than required
should be specified.
Table 3.2 (a) lists the ranges for specifying the thread lead.
- Continuous threading
The "continuous threading" is effective for G32.
- 25 -
3.INTERPOLATION FUNCTION PROGRAMMING B-64604EN-1/01
Example
1. Straight threading
2.Tapered threading
WARNING
1 Feedrate override is effective (fixed at 100%) during threading.
2 It is very dangerous to stop feeding the thread cutter without stopping the
spindle. This will suddenly increase the cutting depth. Thus, the feed hold
function is ineffective while threading. If the feed hold button is pressed during
threading, the tool will stop after a block not specifying threading is executed as
if the SINGLE BLOCK button were pushed. However, the feed hold lamp (SPL
lamp) lights when the FEED HOLD button on the machine control panel is
pushed. Then, when the tool stops, the lamp is turned off (Single Block stop
status).
3 When the FEED HOLD button is pressed again in the first block after threading
mode that does not specify threading (or the button has been held down), the
tool stops immediately at the block that does not specify threading.
4 When threading is executed in the single block status, the tool stops after
execution of the first block not specifying threading.
- 26 -
B-64604EN-1/01 PROGRAMMING 3.INTERPOLATION FUNCTION
WARNING
5 When the mode was changed from automatic operation to manual operation
during threading, the tool stops at the first block not specifying threading as
when the feed hold button is pushed as mentioned in Warning 3.
However, when the mode is changed from one automatic operation mode to
another, the tool stops after execution of the block not specifying threading as for
the single block mode in Note 4.
6 When the previous block was a threading block, cutting will start immediately
without waiting for detection of the one-spindle-rotation signal even if the present
block is a threading block.
(Example)
G00 Z0.0 X50.0 ; One-rotation signal is
G32 Z10.0 F_ ; : Detected
Z20.0 ; : Not detected
G32 Z30.0 ; : Not detected
7 Because the constant surface speed control is effective during scroll thread or
tapered screw cutting and the spindle speed changes, the correct thread lead
may not be cut. Therefore, do not use the constant surface speed control during
threading. Instead, use G97.
8 A movement block preceding the threading block must not specify chamfering or
corner R.
9 A threading block must not specifying chamfering or corner R.
10 The spindle speed override function is disabled during threading. The spindle
speed is fixed at 100%.
11 Thread cycle retract function is ineffective to G32.
12 If tool offset (with the T code or G43.7) is specified in during of the threading
mode, or in a block for threading, alarm PS0509, “TOOL OFFSET COMMAND
IS NOT AVAILABLE”, is issued.
NOTE
When bit 1 (NVL) of parameter No.8137 is 0, this function can be used.
- 27 -
3.INTERPOLATION FUNCTION PROGRAMMING B-64604EN-1/01
Format
G34 IP_ F_ K_ Q_ ;
IP_ : End point
F_ : Lead in longitudinal axis direction at the start point
K_ : Increment and decrement of lead per spindle revolution
Q_ : Shift amount of starting angle of thread cutting
Explanation
Address other than K are the same as in straight/taper thread cutting with G32.
The K value depends on the increment system of the reference axis, as indicated in Table 3.3 (a).
If the specified K value exceeds the range indicated in Table 3.3 (a), if the maximum lead is exceeded
after a change due to the K value, or if the lead value is negative, an alarm PS0313, "ILLEGAL LEAD
COMMAND", will be issued.
- Continuous threading
The "continuous threading" is effective for G34.
CAUTION
The "thread cutting cycle retract" is not effective for G34.
Example
Lead at the start point: 8.0 mm
Lead increment: 0.3 mm/rev
G34 Z-72.0 F8.0 K0.3 ;
L: Lead
- 28 -
B-64604EN-1/01 PROGRAMMING 3.INTERPOLATION FUNCTION
NOTE
This function is an optional function.
Format
A sample format for the G18 plane (Z-X plane) is indicated below. When using the format for the G17
plane (X-Y plane), change the addresses Z, X, K, and I to X, Y, I, and J respectively. When using the
format for the G19 plane (Y-Z plane), change the addresses Z, X, K, and I to Y, Z, J, and K respectively.
G35 I_ K_
X(U)_ Z(W)_ F_ Q_ ;
G36 R_
X(U), Z(W) : Specify the arc end point (in the same way as for G02, G03).
I, K : Specify the arc center relative to the start point, using relative coordinates (in the
same way as for G02, G03).
R : Specify the arc radius.
F : Specify the lead in the direction of the major axis.
Q : Specify the shift of the threading start angle
(0° to 360°, with least input increment of 0.001)
(The value cannot be programmed with a decimal point.)
X F
Start point
End point (Z, X)
I R
Z
K
Arc center
Explanation
- Specifying the arc radius
If R is specified with I and K, only R is effective.
- Shift angle
If an angle greater than 360° is programmed, it is set to 360°.
- Continuous threading
The "continuous threading" is effective for G35, G36.
- 29 -
3.INTERPOLATION FUNCTION PROGRAMMING B-64604EN-1/01
Limitation
- Range of specifiable arc
An arc must be specified such that it falls within a range in which the major axis of the arc is always the
Z-axis or always the X-axis, as shown in Fig. 3.4 (b) and Fig. 3.4 (c). If the arc includes a point at which
the major axis changes from the X-axis to Z-axis, or vice versa, as shown in Fig. 3.4 (d), an alarm PS5058,
"G35/G36 FORMAT ERROR", is issued.
X
Z
45°
Fig. 3.4 (b) Range in which the Z-axis is the major axis
Start point
45°
End point
Fig. 3.4 (c) Range in which the X-axis is the major axis
- 30 -
B-64604EN-1/01 PROGRAMMING 3.INTERPOLATION FUNCTION
End point
Z
45°
End point
End point
r
r
Center Center
Start point
Start point
Fig. 3.4 (e) Movement when the end point is not on an arc
Explanation
Since the system is controlled in such a manner that the synchronism with the spindle does not deviate in
the joint between blocks wherever possible, it is possible to performed special threading operation in
which the lead and shape change midway.
G32 G32
G32
Even when the same section is repeated for threading while changing the depth of cut, this system allows
a correct machining without impairing the threads.
- 31 -
3.INTERPOLATION FUNCTION PROGRAMMING B-64604EN-1/01
- Start angle
The address Q (Angle for shifting the threading start angle) is only effective the first threading command
block of continuous threading.
In the continuous threading, the addresses Q of the threading in the blocks after the first are ignored.
L : Lead
Format
(Constant lead threading)
G32 IP _ F_ Q_ ;
IP : End point
F_ : Lead in longitudinal direction
G32 IP _ Q_ ;
Q_ : Angle for shifting the threading start angle
(Increment: 0.001 degrees, Valid setting range: 0 to 360 degrees)
Explanation
- Available threading commands
G32: Constant lead threading
G34: Variable lead threading
G35, G36: Circular threading
G76/G78: Multiple threading cycle (Only when the FS10/11 tape format is used.)
G92: Threading cycle
Limitation
- Start angle
The start angle is not a continuous state (modal) value. It must be specified each time it is used. If a value
is not specified, 0 is assumed.
- Pocket calculator type decimal point programming (Bit 0(DPI) of parameter No.3401)
- The least input increment is 10 times greater than the least command increment (Bit 7(IPR) of
parameter No.1004)
- Multiple threading cycle (G76 (G code system A/B)) (G78 (G code system C))
The address Q of the G76/G78 multiple threading cycle command is used for the minimum cutting depth
or the depth of cut in 1st cut. For this reason, the angle for shifting the threading start angle can not be
commanded.
However, if the FS10/11 tape format is used, in G76/G78 multiple threading cycle, the address Q is
possible to specify the angle for shifting the threading start angle.
Example
Program for producing double-threaded screws (with start angles of 0 and 180
degrees)
X40.0 ;
W-38.0 F4.0 Q0 ;
X72.0 ;
W38.0 ;
X40.0 ;
W-38.0 F4.0Q180000 ;
X72.0 ;
W38.0 ;
- 33 -
4. FUNCTIONS TO SIMPLIFY
PROGRAMMING PROGRAMMING B-64604EN-1/01
NOTE
1 Explanatory figures in this section use the ZX plane as the selected plane,
diameter programming for the X-axis, and radius programming for the Z-axis.
When radius programming is used for the X-axis, change U/2 to U and X/2 to X.
2 A canned cycle can be performed on any plane (including parallel axes for plane
definition). When G-code system A is used, however, U, V, and W cannot be set
as a parallel axis.
3 The direction of the length means the direction of the first axis on the plane as
follows:
ZX plane: Z-axis direction
YZ plane: Y-axis direction
XY plane: X-axis direction
4 The direction of the end face means the direction of the second axis on the
plane as follows:
ZX plane: X-axis direction
YZ plane: Z-axis direction
XY plane: Y-axis direction
- 34 -
4.FUNCTIONS TO SIMPLIFY
B-64604EN-1/01 PROGRAMMING PROGRAMMING
X axis
(R)....Rapid traverse
Z (F) ....Cutting feed
W
4(R)
A
3(F) 2(F) 1(R) U/2
A’
X/2
Z axis
Explanation
- Operations
A straight cutting cycle performs four operations:
(1) Operation 1 moves the tool from the start point (A) to the specified coordinate of the second axis on
the plane (specified X-coordinate for the ZX plane) in rapid traverse.
(2) Operation 2 moves the tool to the specified coordinate of the first axis on the plane (specified
Z-coordinate for the ZX plane) in cutting feed. (The tool is moved to the cutting end point (A') in the
direction of the length.)
(3) Operation 3 moves the tool to the start coordinate of the second axis on the plane (start X-coordinate
for the ZX plane) in cutting feed.
(4) Operation 4 moves the tool to the start coordinate of the first axis on the plane (start Z-coordinate for
the ZX plane) in rapid traverse. (The tool returns to the start point (A).)
NOTE
In single block mode, operations 1, 2, 3 and 4 are performed by pressing the
cycle start button once.
- 35 -
4. FUNCTIONS TO SIMPLIFY
PROGRAMMING PROGRAMMING B-64604EN-1/01
X a xis
(R ) ....R apid trave rse
4(R ) (F ) ....C utting feed
A
3(F )
U /2 1(R )
A’
2(F )
R
X/2 W
Z
Z axis
Explanation
The figure of a taper is determined by the coordinates of the cutting end point (A') in the direction of the
length and the sign of the taper amount (address R). For the cycle in the Fig. 4.1.1.2 (a), a minus sign is
added to the taper amount.
NOTE
The increment system of address R for specifying a taper depends on the
increment system for the reference axis. Specify a radius value at R.
- Operations
A taper cutting cycle performs the same four operations as a straight cutting cycle.
However, operation 1 moves the tool from the start point (A) to the position obtained by adding the taper
amount to the specified coordinate of the second axis on the plane (specified X-coordinate for the ZX
plane) in rapid traverse.
Operations 2, 3, and 4 after operation 1 are the same as for a straight cutting cycle.
NOTE
In single block mode, operations 1, 2, 3, and 4 are performed by pressing the
cycle start button once.
- Relationship between the sign of the taper amount and tool path
The tool path is determined according to the relationship between the sign of the taper amount (address R)
and the cutting end point in the direction of the length in the absolute or incremental programming as
Table 4.1.1.2 (a).
- 36 -
4.FUNCTIONS TO SIMPLIFY
B-64604EN-1/01 PROGRAMMING PROGRAMMING
X X
Z W
Z
4(R)
2(F)
R
U/2 3(F) 1(R)
X X
Z Z W
4(R)
1(R) R
2(F)
U/2 X U/2 3(F)
3(F)
2(F) 1(R)
R
4(R)
X W
- 37 -
4. FUNCTIONS TO SIMPLIFY
PROGRAMMING PROGRAMMING B-64604EN-1/01
X axis
Z W
3(R) 4(R) A
2(F) 1(R) U/2
A’
X/2
Z axis
(R) ... Rapid traverse
(F).... Cutting feed
Approx.
(The chamfered angle in the left figure is 45
45°
degrees or less because of the delay in the
r servo system.)
Explanation
The ranges of thread leads and restrictions related to the spindle speed are the same as for threading with
G32.
- Operations
A straight threading cycle performs four operations:
(1) Operation 1 moves the tool from the start point (A) to the specified coordinate of the second axis on
the plane (specified X-coordinate for the ZX plane) in rapid traverse.
(2) Operation 2 moves the tool to the specified coordinate of the first axis on the plane (specified
Z-coordinate for the ZX plane) in cutting feed. At this time, thread chamfering is performed.
(3) Operation 3 moves the tool to the start coordinate of the second axis on the plane (start X-coordinate
for the ZX plane) in rapid traverse. (Retraction after chamfering)
(4) Operation 4 moves the tool to the start coordinate of the first axis on the plane (start Z-coordinate for
the ZX plane) in rapid traverse. (The tool returns to the start point (A).)
CAUTION
Notes on this threading are the same as in threading in G32. However, a stop by
feed hold is as follows; Stop after completion of path 3 of threading cycle.
NOTE
In the single block mode, operations 1, 2, 3, and 4 are performed by pressing
cycle start button once.
- 38 -
4.FUNCTIONS TO SIMPLIFY
B-64604EN-1/01 PROGRAMMING PROGRAMMING
- Thread chamfering
Thread chamfering can be performed. A signal from the machine tool, initiates thread chamfering. The
chamfering distance r is specified in a range from 0.1L to 12.7L in 0.1L increments by parameter No.
5130. (In the above expression, L is the thread lead.)
A thread chamfering angle between 1 to 89 degrees can be specified in parameter No. 5131. When a
value of 0 is specified in the parameter, an angle of 45 degrees is assumed.
For thread chamfering, the same type of acceleration/deceleration after interpolation, time constant for
acceleration/deceleration after interpolation, and FL feedrate as for threading are used.
NOTE
Common parameters for specifying the amount and angle of thread chamfering
are used for this cycle and threading cycle with G76.
By setting bit 4 (ROC) of parameter No. 1403 to 1, rapid traverse override can be disabled for the feedrate
of retraction after chamfering.
NOTE
During retraction, the machine does not stop with an override of 0% for the
cutting feedrate regardless of the setting of bit 4 (RF0) of parameter No. 1401.
- 39 -
4. FUNCTIONS TO SIMPLIFY
PROGRAMMING PROGRAMMING B-64604EN-1/01
R apid traverse
C utting feed
CAUTION
Another feed hold cannot be made during retreat.
- Inch threading
Inch threading specified with address E is not allowed.
- 40 -
4.FUNCTIONS TO SIMPLIFY
B-64604EN-1/01 PROGRAMMING PROGRAMMING
X axis
Z W
A
4(R)
U/2 (R) ....Rapid traverse
3(R) 1(R)
A’ (F) ....Cutting feed
2(F)
R
X/2
Z axis
Explanation
The ranges of thread leads and restrictions related to the spindle speed are the same as for threading with
G32.
The figure of a taper is determined by the coordinates of the cutting end point (A') in the direction of the
length and the sign of the taper amount (address R). For the cycle in the Fig. 4.1.2.2 (a), a minus sign is
added to the taper amount.
NOTE
The increment system of address R for specifying a taper depends on the
increment system for the reference axis. Specify a radius value at R.
- Operations
A taper threading cycle performs the same four operations as a straight threading cycle.
However, operation 1 moves the tool from the start point (A) to the position obtained by adding the taper
amount to the specified coordinate of the second axis on the plane (specified X-coordinate for the ZX
plane) in rapid traverse.
Operations 2, 3, and 4 after operation 1 are the same as for a straight threading cycle.
CAUTION
Notes on this threading are the same as in threading in G32. However, a stop by
feed hold is as follows; Stop after completion of path 3 of threading cycle.
- 41 -
4. FUNCTIONS TO SIMPLIFY
PROGRAMMING PROGRAMMING B-64604EN-1/01
NOTE
In the single block mode, operations 1, 2, 3, and 4 are performed by pressing
cycle start button once.
- Relationship between the sign of the taper amount and tool path
The tool path is determined according to the relationship between the sign of the taper amount (address R)
and the cutting end point in the direction of the length in the absolute or incremental programming as
Table 4.1.2.2 (a).
X X
Z W
Z
4(R)
2(F)
R
U/2 3(F) 1(R)
X X
Z Z W
4(R)
1(R) R
2(F)
U/2 X U/2 3(F)
3(F)
2(F) 1(R)
R
4(R)
W
X
- 42 -
4.FUNCTIONS TO SIMPLIFY
B-64604EN-1/01 PROGRAMMING PROGRAMMING
X a xis
1 (R ) (R ) ... R a p id tra v e rs e
A (F ).... C u ttin g fe e d
2 (F ) 4 (R )
U /2
A’ 3 (F )
X /2 W
Z a x is
Explanation
- Operations
A face cutting cycle performs four operations:
(1) Operation 1 moves the tool from the start point (A) to the specified coordinate of the first axis on the
plane (specified Z-coordinate for the ZX plane) in rapid traverse.
(2) Operation 2 moves the tool to the specified coordinate of the second axis on the plane (specified
X-coordinate for the ZX plane) in cutting feed. (The tool is moved to the cutting end point (A') in
the direction of the end face.)
(3) Operation 3 moves the tool to the start coordinate of the first axis on the plane (start Z-coordinate for
the ZX plane) in cutting feed.
(4) Operation 4 moves the tool to the start coordinate of the second axis on the plane (start X-coordinate
for the ZX plane) in rapid traverse. (The tool returns to the start point (A).)
NOTE
In single block mode, operations 1, 2, 3, and 4 are performed by pressing the
cycle start button once.
- 43 -
4. FUNCTIONS TO SIMPLIFY
PROGRAMMING PROGRAMMING B-64604EN-1/01
X axis
1(R)
A
(R) ... Rapid traverse
2(F) 4(R) (F) ... Cutting feed
U/2
A’ 3(F)
X/2 R W
Z axis
Z
Explanation
The figure of a taper is determined by the coordinates of the cutting end point (A') in the direction of the
end face and the sign of the taper amount (address R). For the cycle in the Fig. 4.1.3.2 (a), a minus sign is
added to the taper amount.
NOTE
The increment system of address R for specifying a taper depends on the
increment system for the reference axis. Specify a radius value at R.
- Operations
A taper cutting cycle performs the same four operations as a face cutting cycle.
However, operation 1 moves the tool from the start point (A) to the position obtained by adding the taper
amount to the specified coordinate of the first axis on the plane (specified Z-coordinate for the ZX plane)
in rapid traverse.
Operations 2, 3, and 4 after operation 1 are the same as for a face cutting cycle.
NOTE
In single block mode, operations 1, 2, 3, and 4 are performed by pressing the
cycle start button once.
- 44 -
4.FUNCTIONS TO SIMPLIFY
B-64604EN-1/01 PROGRAMMING PROGRAMMING
- Relationship between the sign of the taper amount and tool path
The tool path is determined according to the relationship between the sign of the taper amount (address R)
and the cutting end point in the direction of the end face in the absolute or incremental programming as
Table 4.1.3.2 (a).
X X Z
1(R)
Z R W
Z
3(F)
U/2 2(F) 4(R)
U/2 2(F) 4(R)
3(F)
1(R)
R W
Z
X X W
R
Z Z
3(F)
1(R)
2(F) 4(R)
U/2 4(R) U/2
2(F)
1(R)
3(F)
Z Z R
W
Shape of
product
- 45 -
4. FUNCTIONS TO SIMPLIFY
PROGRAMMING PROGRAMMING B-64604EN-1/01
Shape of material
Shape of product
Shape of material
Shape of product
Shape of material
Shape of product
- 46 -
4.FUNCTIONS TO SIMPLIFY
B-64604EN-1/01 PROGRAMMING PROGRAMMING
0
Tool nose radius
center path 8 3
Total tool nose 4
5 7
1 2
6
Programmed path
5 7
1 6 2
Programmed path
- 47 -
4. FUNCTIONS TO SIMPLIFY
PROGRAMMING PROGRAMMING B-64604EN-1/01
5 7 5 7
2 1 2
1,6,2 1 6 1,6,2 6
Total tool
Total tool 4,5,1 8,0,6 nose 4,5,1 8,0,6
nose
3,7,2 3,7,2
- 48 -
4.FUNCTIONS TO SIMPLIFY
B-64604EN-1/01 PROGRAMMING PROGRAMMING
Example
X axis 66
4
8 12
16
Workpiece
0
The modal values common to canned cycles are cleared when a one-shot G code other than G04 is
specified.
Since the canned cycle mode is not canceled by specifying a one-shot G code, a canned cycle can be
performed again by specifying modal values. If no modal values are specified, no cycle operations are
performed.
When G04 is specified, G04 is executed and no canned cycle is performed.
Example
N003 T0101;
:
:
N010 G90 X20.0 Z10.0 F0.2;
N011 G00 T0202; ← Cancels the canned cycle mode.
N012 G90 X20.5 Z10.0;
- Parallel axis
When G code system A is used, U, V, and W cannot be specified as a parallel axis.
- 49 -
4. FUNCTIONS TO SIMPLIFY
PROGRAMMING PROGRAMMING B-64604EN-1/01
- Reset
If a reset operation is performed during execution of a canned cycle when any of the following states for
holding a modal G code of group 01 is set, the modal G code of group 01 is replaced with the G01 mode:
• Reset state (bit 6 (CLR) of parameter No. 3402 = 0)
• Cleared state (bit 6 (CLR) of parameter No. 3402 = 1) and state where the modal G code of group 01
is held at reset time (bit 1 (C01) of parameter No. 3406 = 1)
Example of operation)
If a reset is made during execution of a canned cycle (X0 block) and the X20.Z1. command is
executed, linear interpolation (G01) is performed instead of the canned cycle.
- Manual intervention
After manual intervention is performed with the manual absolute on command before the execution of a
canned cycle or after the stop of the execution, when a cycle operation starts, the manual intervention
amount is canceled even with an incremental cycle start command.
Example of G94
Cancellation
Manual intervention
1(R)
2(F) 4(R)
3(F)
- 50 -
4.FUNCTIONS TO SIMPLIFY
B-64604EN-1/01 PROGRAMMING PROGRAMMING
NOTE
1 When bit 3 (NMR) of parameter No.8137 is 0, "Multiple repetitive canned cycle"
can be used.
Though, a canned grinding cycle and multiple repetitive canned cycle cannot be
used simultaneously. When the canned grinding cycle (the option, "Grinding
function A" or "Grinding function B") is enabled, the multiple repetitive canned
cycle is disabled.
2 Explanatory figures in this section use the ZX plane as the selected plane,
diameter programming for the X-axis, and radius programming for the Z-axis.
When radius programming is used for the X-axis, change U/2 to U and X/2 to X.
3 A multiple repetitive canned cycle can be performed on any plane (including
parallel axes for plane definition). When G-code system A is used, however, U,
V, and W cannot be set as a parallel axis.
- 51 -
4. FUNCTIONS TO SIMPLIFY
PROGRAMMING PROGRAMMING B-64604EN-1/01
Format
ZpXp plane
G71 U(Δd) R(e) ;
G71 P(ns) Q(nf) U(Δu) W(Δw) F(f ) S(s ) T(t ) ;
N (ns) ; The move commands for the target figure from A
... to A’ to B are specified in the blocks with
N (nf) ; sequence numbers ns to nf.
YpZp plane
G71 W(Δd) R(e) ;
G71 P(ns) Q(nf) V(Δw) W(Δu) F(f ) S(s ) T(t ) ;
N (ns) ;
...
N (nf) ;
XpYp plane
G71 V(Δd) R(e) ;
G71 P(ns) Q(nf) U(Δw) V(Δu) F(f ) S(s ) T(t ) ;
N (ns) ;
...
N (nf) ;
Δd : Depth of cut
The cutting direction depends on the direction AA'. This designation is modal and is
not changed until the other value is designated. Also this value can be specified by
the parameter No. 5132, and the parameter is changed by the program command.
e : Escaping amount
This designation is modal and is not changed until the other value is designated. Also
this value can be specified by the parameter No. 5133, and the parameter is changed
by the program command.
ns : Sequence number of the first block for the program of finishing shape.
nf : Sequence number of the last block for the program of finishing shape.
Δu : Distance of the finishing allowance in the direction of the second axis on the plane
(X-axis for the ZX plane)
Δw : Distance of the finishing allowance in the direction of the first axis on the plane (Z-axis
for the ZX plane)
f,s,t : Any F , S, or T function contained in blocks ns to nf in the cycle is ignored, and the F,
S, or T function in this G71 block is effective.
Decimal point
Unit Diameter/radius programming Sign
input
Depends on the increment Not
Δd Radius programming Allowed
system for the reference axis. required
Depends on the increment Not
e Radius programming Allowed
system for the reference axis. required
- 52 -
4.FUNCTIONS TO SIMPLIFY
B-64604EN-1/01 PROGRAMMING PROGRAMMING
Decimal point
Unit Diameter/radius programming Sign
input
Depends on the increment Depends on diameter/radius programming
Δu Required Allowed
system for the reference axis. for the second axis on the plane.
Depends on the increment Depends on diameter/radius programming
Δw Required Allowed
system for the reference axis. for the first axis on the plane.
(R) C
B
A
(R) Δd
(F)
45° e
(F)
Target figure
Δu/2
+X A’
Explanation
- Operations
When a target figure passing through A, A', and B in this order is given by a program, the specified area
is removed by Δd (depth of cut), with the finishing allowance specified by Δu/2 and Δw left. After the last
cutting is performed in the direction of the second axis on the plane (X-axis for the ZX plane), rough
cutting is performed as finishing along the target figure. After rough cutting as finishing, the block next to
the sequence block specified at Q is executed.
NOTE
1 While both Δd and Δu are specified by the same address, the meanings of them
are determined by the presence of addresses P and Q.
2 The cycle machining is performed by G71 command with P and Q specification.
3 F, S, and T functions which are specified in the move command between points
A and B are ineffective and those specified in G71 block or the previous block
are effective. M and second auxiliary functions are treated in the same way as F,
S, and T functions.
4 When the constant surface speed control function is enabled (bit 0 (SSC) of
parameter No. 8133 is set to 1), the G96 or G97 command specified in the move
command between points A and B are ineffective, and that specified in G71
block or the previous block is effective.
- Target figure
Patterns
The following four cutting patterns are considered. All of these cutting cycles cut the workpiece with
moving the tool in parallel to the first axis on the plane (Z-axis for the ZX plane). At this time, the signs
of the finishing allowances of Δu and Δw are as follows:
- 53 -
4. FUNCTIONS TO SIMPLIFY
PROGRAMMING PROGRAMMING B-64604EN-1/01
B A A B
U(+)…W (+) U(+)…W (-)
+X
+Z
Limitation
(1) For U(+), a figure for which a position higher than the cycle start point is specified cannot be
machined.
For U(-), a figure for which a position lower than the cycle start point is specified cannot be
machined.
(2) For type I, the figure must show monotone increase or decrease along the first and second axes on
the plane.
(3) For type II, the figure must show monotone increase or decrease along the first axis on the plane.
- Start block
In the start block in the program for a target figure (block with sequence number ns in which the path
between A and A' is specified), G00 or G01 must be specified. If it is not specified, alarm PS0065,
“G00/G01 IS NOT IN THE FIRST BLOCK OF SHAPE PROGRAM” is issued.
When G00 is specified, positioning is performed along A-A'. When G01 is specified, linear interpolation
is performed with cutting feed along A-A'.
In this start block, also select type I or II.
If X-axis does not move at start block, alarm PS0325 “UNAVAILABLE COMMAND IS IN SHAPE
PROGRAM” is issued.
- Check functions
During cycle operation, whether the target figure shows monotone increase or decrease is always
checked.
NOTE
When tool nose radius compensation is applied, the target figure to which
compensation is applied is checked.
- 54 -
4.FUNCTIONS TO SIMPLIFY
B-64604EN-1/01 PROGRAMMING PROGRAMMING
- Types I and II
Selection of type I or II
For G71, there are types I and II.
When the target figure has pockets, be sure to use type II.
Escaping operation after rough cutting in the direction of the first axis on the plane (Z-axis for the ZX
plane) differs between types I and II. With type I, the tool escapes to the direction of 45 degrees. With
type II, the tool cuts the workpiece along the target figure. When the target figure has no pockets,
determine the desired escaping operation and select type I or II.
NOTE
To use type II, the multiple repetitive canned cycle II option is required.
Selecting type I or II
In the start block for the target figure (sequence number ns), select type I or II.
(1) When type I is selected
Specify the second axis on the plane (X-axis for the ZX plane). Do not specify the first axis on the
plane (Z-axis for the ZX plane).
(2) When type II is selected
Specify the second axis on the plane (X-axis for the ZX plane) and first axis on the plane (Z-axis for
the ZX plane).
When you want to use type II without moving the tool along the first axis on the plane (Z-axis for
the ZX plane), specify the incremental programming with travel distance 0 (W0 for the ZX plane).
- Type I
(1) In the block with sequence number ns, only the second axis on the plane (X-axis (U-axis) for the ZX
plane) must be specified.
Example
ZX plane
G71 U10.0 R5.0 ;
G71 P100 Q200....;
N100 X(U)_ ; (Specifies only the second axis on the plane.)
: ;
: ;
N200…………;
(2) The figure along path A'-B must show monotone increase or decrease in the directions of both axes
forming the plane (Z- and X-axes for the ZX plane). It must not have any pocket as shown in the Fig.
4.2.1 (c).
B
A
A’
Fig. 4.2.1 (c) Figure which does not show monotone increase or decrease (type I)
- 55 -
4. FUNCTIONS TO SIMPLIFY
PROGRAMMING PROGRAMMING B-64604EN-1/01
CAUTION
If a figure does not show monotone change along the first or second axis on the
plane, alarm PS0064, “THE FINISHING SHAPE IS NOT A MONOTONOUS
CHANGE(FIRST AXES)” or PS0329, “THE FINISHING SHAPE IS NOT A
MONOTONOUS CHANGE(SECOND AXES)” is issued. If the movement does
not show monotone change, but is very small, and it can be determined that the
movement is not dangerous, however, the permissible amount can be specified
in parameters Nos. 5145 and 5146 to specify that the alarm is not issued in this
case.
(3) The tool escapes to the direction of 45 degrees in cutting feed after rough cutting.
(4) Immediately after the last cutting, rough cutting is performed as finishing along the target figure. Bit
1 (RF1) of parameter No. 5105 can be set to 1 so that rough cutting as finishing is not performed.
- Type II
(R)
(F) C
(R) A
B Δd
(R)
(F)
Δd
(F)
Fig. 4.2.1 (e) Cutting path in stock removal in turning (type II)
When a target figure passing through A, A', and B in this order is given by the program for a target figure
as shown in the Fig. 4.2.1 (e), the specified area is removed by Δd (depth of cut), with the finishing
allowance specified by Δu/2 and Δw left. Type II differs from type I in cutting the workpiece along the
figure after rough cutting in the direction of the first axis on the plane (Z-axis for the ZX plane).
After the last cutting, the tool returns to the start point specified in G71 and rough cutting is performed as
finishing along the target figure, with the finishing allowance specified by Δu/2 and Δw left.
- 56 -
4.FUNCTIONS TO SIMPLIFY
B-64604EN-1/01 PROGRAMMING PROGRAMMING
(1) In the block with sequence number ns, the two axes forming the plane (X-axis (U-axis) and Z-axis
(W-axis) for the ZX plane) must be specified. When you want to use type II without moving the tool
along the Z-axis on the ZX plane in the first block, specify W0.
Example
ZX plane
G71 U10.0 R5.0;
G71 P100 Q200.......;
N100 X(U)_ Z(W)_ ; (Specifies the two axes forming the plane.)
: ;
: ;
N200…………;
(2) The figure need not show monotone increase or decrease in the direction of the second axis on the
plane (X-axis for the ZX plane) and it may have concaves (pockets).
+X
+Z 10 ... 3 2 1
The figure must show monotone change in the direction of the first axis on the plane (Z-axis for the
ZX plane), however. The Fig. 4.2.1 (g) cannot be machined.
+Z
CAUTION
For a figure along which the tool moves backward along the first axis on the
plane during cutting operation (including a vertex in an arc command), the
cutting tool may contact the workpiece. For this reason, for a figure which does
not show monotone change, alarm PS0064 “THE FINISHING SHAPE IS NOT A
MONOTONOUS CHANGE(FIRST AXES)” is issued. If the movement does not
show monotone change, but is very small, and it can be determined that the
movement is not dangerous, however, the permissible amount can be specified
in parameter No. 5145 to specify that the alarm is not issued in this case.
The first cut portion need not be vertical. Any figure is permitted if monotone change is shown in
the direction of the first axis on the plane (Z-axis for the ZX plane).
- 57 -
4. FUNCTIONS TO SIMPLIFY
PROGRAMMING PROGRAMMING B-64604EN-1/01
+X
+Z
(3) After turning, the tool cuts the workpiece along its figure and escapes in cutting feed.
Fig. 4.2.1 (i) Cutting along the workpiece figure (type II)
The escaping amount after cutting (e) can be specified at address R or set in parameter No. 5133.
When moving from the bottom, however, the tool escapes to the direction of 45 degrees.
Bottom
Fig. 4.2.1 (j) Escaping from the bottom to the direction of 45 degrees
(4) When a position parallel to the first axis on the plane (Z-axis for the ZX plane) is specified in a
block in the program for the target figure, it is assumed to be at the bottom of a pocket.
(5) After all rough cutting terminates along the first axis on the plane (Z-axis for the ZX plane), the tool
temporarily returns to the cycle start point. At this time, when there is a position whose height equals
to that at the start point, the tool passes through the point in the position obtained by adding depth of
cut Δd to the position of the figure and returns to the start point.
Then, rough cutting is performed as finishing along the target figure. At this time, the tool passes
through the point in the obtained position (to which depth of cut Δd is added) when returning to the
start point.
Bit 2 (RF2) of parameter No. 5105 can be set to 1 so that rough cutting as finishing is not performed.
- 58 -
4.FUNCTIONS TO SIMPLIFY
B-64604EN-1/01 PROGRAMMING PROGRAMMING
Start point
{ {
Depth of cut Δd
Fig. 4.2.1 (k) Escaping operation when the tool returns to the start point (type II)
+X
+Z
Fig. 4.2.1 (l) Rough cutting order in the case of monotone decrease (type II)
(b) When the figure shows monotone increase along the first axis on the plane (Z-axis for the ZX
plane)
Rough cutting is performed in the order <1>, <2>, and <3> from
the leftmost pocket.
+X
+Z
Fig. 4.2.1 (m) Rough cutting order in the case of monotone increase (type II)
- 59 -
4. FUNCTIONS TO SIMPLIFY
PROGRAMMING PROGRAMMING B-64604EN-1/01
35
4
3 34 1
5
24
9 10
25 2
23 29 22 21
28 11 6
30 26 8
15
27
7
33 31 16 12
14 20
32
13
19 18 17
Fig. 4.2.1 (n) Cutting path for multiple pockets (type II)
The following figure shows how the tool moves after rough cutting for a pocket in detail.
g Rapid traverse
22 21
•
D
20
Escaping from
the bottom
Cutting feed 19
Fig. 4.2.1 (o) Details of motion after cutting for a pocket (type II)
Cuts the workpiece at the cutting feedrate and escapes to the direction of 45 degrees. (Operation 19)
Then, moves to the height of point D in rapid traverse. (Operation 20)
Then, moves to the position the amount of g before point D. (Operation 21)
Finally, moves to point D in cutting feed.
The clearance g to the cutting feed start position is set in parameter No. 5134.
For the last pocket, after cutting the bottom, the tool escapes to the direction of 45 degrees and returns to
the start point in rapid traverse. (Operations 34 and 35)
CAUTION
1 This CNC differs from the FANUC Series 0i-C in cutting of a pocket.
The tool first cuts the nearest pocket to the start point. After cutting of the pocket
terminates, the tool moves to the nearest but one pocket and starts cutting.
2 When the figure has a pocket, generally specify a value of 0 for Δw (finishing
allowance). Otherwise, the tool may dig into the wall on one side.
This CNC differs from the FANUC Series 0i-C in the path of cutting after turning depending on the
figure of the workpiece. When the tool becomes moving only along the first axis on the plane (Z-axis for
the ZX plane) according to the figure of the workpiece during cutting, it starts retraction along the second
axis on the plane (X-axis for the ZX plane).
When bit 0 (R16) of parameter No. 5108 is set to 1, the cutting can be continued along the first axis on
the plane.
The cutting path that the target figure program of Fig. 4.2.1 (n) is executed by the setting of bit 0 (R16) of
parameter No. 5108, is shown in Fig. 4.2.1 (p).
- 60 -
4.FUNCTIONS TO SIMPLIFY
B-64604EN-1/01 PROGRAMMING PROGRAMMING
Program example
G42;..............................Specify this command before a multiple repetitive canned cycle command.
G71U1.0R0.5;
G71P10Q20;
N10G00X0;
:
N20X50.0;
G40;..............................Specify this command after the program specifying a target finishing figure.
When this cycle is specified in the tool nose radius compensation mode, offset is temporarily canceled
during movement to the start point. Start-up is performed in the first block. Offset is temporarily canceled
again at the return to the cycle start point after termination of cycle operation. Start-up is performed again
according to the next move command. This operation is shown in the Fig. 4.2.1 (q).
Start-up
Offset cancel
Offset cancel
Start-up
- 61 -
4. FUNCTIONS TO SIMPLIFY
PROGRAMMING PROGRAMMING B-64604EN-1/01
This cycle operation is performed according to the figure determined by the tool nose radius
compensation path when the offset vector is 0 at start point A and start-up is performed in a block
between path A-A'.
B A
Position between A-
A' in which start-up is
Target figure program for
performed
which tool nose radius
compensation is not applied
+X
A’
Fig. 4.2.1 (r) Path when tool nose radius compensation is applied
A
B
A’
Position between
+X A-A' in which start-
up is performed
Target figure program for
Tool nose center path when tool
which tool nose radius
+Z nose radius compensation is
compensation is not applied
applied with G42
NOTE
To perform pocketing in the tool nose radius compensation mode, specify the
linear block A-A' outside the workpiece and specify the figure of an actual
pocket. This prevents a pocket from being dug.
When the bit 2 (NT1) of parameter No. 5106 is set to 1, the tool nose radius compensation G40/G41/G42
commanded in the target figure program of the multiple repetitive cycle G71/G72/G73 is ignored and no
alarm is occurred.
When the bit 3 (NT2) of parameter No. 5106 is set to 1, the tool nose radius compensation commanded in
the target figure program of the multiple repetitive cycle G70 is valid. However there is following
limitations.
(1) The tool nose radius compensation cancel G40 is selected as the modal when the finishing cycle G70
is commanded.
If the tool nose radius compensation is commanded in the target figure program when G41/G42 is
selected as the modal at the finishing cycle G70 command, the alarm PS0325 “UNAVAILABLE
COMMAND IS IN SHAPE PROGRAM” is occurred.
- 62 -
4.FUNCTIONS TO SIMPLIFY
B-64604EN-1/01 PROGRAMMING PROGRAMMING
(2) Do not command G41/G42 excluding the end block in the target figure program.
If G41 or G42 is specified at the last block of the target figure program, the PS0325 alarm
(UNAVAILABLE COMMAND IS IN SHAPE PROGRAM) is issued.
(3) Command G40 at the last block of the target figure program (commanded by Q address)
If G40 is not commanded at the last block of the target figure program when G41 or G42 is
commanded at the first block, the PS0538 alarm “OFFSET IS NOT CANCELED” is occurred.
Program example of the tool nose radius compensation in the target figure of G70)
G40 ;
G70 P10 Q20 ... ;
N10 G41 ... ;
:
N20 G40 ... ;
Path of DTP = 1
In the multiple repetitive cycle G71/G72 of type II, when bit 3 (NSP) of parameter No. 5108 is set to 1,
the cutting is executed not to repeat the same cutting path. (When bit 3 (NSP) of parameter No. 5108 is
set to 1, the operation of bit 0 (R16) of parameter No. 5108 = 1 is always selected.)
- Case of target figure without pocket.
In the conventional method, the path AB is cut twice as Fig. 4.2.1 (w).
When bit 3 (NSP) of parameter No. 5108 is set to 1, the overlap is avoided as Fig. 4.2.1(x).
B A
- 63 -
4. FUNCTIONS TO SIMPLIFY
PROGRAMMING PROGRAMMING B-64604EN-1/01
B A
(3)
(2)
D C (4) B A
(1)
(3)
(2)
D C (4) B A
(1)
- 64 -
4.FUNCTIONS TO SIMPLIFY
B-64604EN-1/01 PROGRAMMING PROGRAMMING
I H G F E D C B A
- 65 -
4. FUNCTIONS TO SIMPLIFY
PROGRAMMING PROGRAMMING B-64604EN-1/01
Format
ZpXp plane
G72 W(Δd) R(e) ;
G72 P(ns) Q(nf) U(Δu) W(Δw) F(f ) S(s ) T(t ) ;
N (ns) ; The move commands for the target figure from A
... to A’ to B are specified in the blocks with
N (nf) ; sequence numbers ns to nf.
YpZp plane
G72 V(Δd) R(e) ;
G72 P(ns) Q(nf) V(Δw) W(Δu) F(f ) S(s ) T(t ) ;
N (ns) ;
...
N (nf) ;
XpYp plane
G72 U(Δd) R(e) ;
G72 P(ns) Q(nf) U(Δw) V (Δu) F(f ) S(s ) T(t ) ;
N (ns) ;
...
N (nf) ;
Δd : Depth of cut
The cutting direction depends on the direction AA'. This designation is modal and is not
changed until the other value is designated. Also this value can be specified by the
parameter No. 5132, and the parameter is changed by the program command.
e : Escaping amount
This designation is modal and is not changed until the other value is designated. Also
this value can be specified by the parameter No. 5133, and the parameter is changed
by the program command.
ns : Sequence number of the first block for the program of finishing shape.
nf : Sequence number of the last block for the program of finishing shape.
Δu : Distance of the finishing allowance in the direction of the second axis on the plane
(X-axis for the ZX plane)
Δw : Distance of the finishing allowance in the direction of the first axis on the plane (Z-axis
for the ZX plane)
f,s,t : Any F , S, or T function contained in blocks ns to nf in the cycle is ignored, and the F, S,
or T function in this G72 block is effective.
Decimal point
Unit Diameter/radius programming Sign
input
Depends on the increment Not
Δd Radius programming Allowed
system for the reference axis. required
Depends on the increment Not
e Radius programming Allowed
system for the reference axis. required
- 66 -
4.FUNCTIONS TO SIMPLIFY
B-64604EN-1/01 PROGRAMMING PROGRAMMING
Decimal point
Unit Diameter/radius programming Sign
input
Depends on the increment Depends on diameter/radius programming
Δu Required Allowed
system for the reference axis. for the second axis on the plane.
Depends on the increment Depends on diameter/radius programming
Δw Required Allowed
system for the reference axis. for the first axis on the plane.
Δd
(F): Cutting feed
C (R): Rapid traverse
A'
A
Tool path
(F)
e (R)
(R) 45°
Target figure
(F)
+X Δu/2
B
+Z Δw
Explanation
- Operations
When a target figure passing through A, A', and B in this order is given by a program, the specified area
is removed by Δd (depth of cut), with the finishing allowance specified by Δu/2 and Δw left.
NOTE
1 While both Δd and Δu are specified by the same address, the meanings of them
are determined by the presence of addresses P and Q.
2 The cycle machining is performed by G72 command with P and Q specification.
3 F, S, and T functions which are specified in the move command between points
A and B are ineffective and those specified in G72 block or the previous block
are effective. M and second auxiliary functions are treated in the same way as F,
S, and T functions.
4 When the constant surface speed control function is enabled (bit 0 (SSC) of
parameter No. 8133 is set to 1), G96 or G97 command specified in the move
command between points A and B are ineffective, and that specified in G72
block or the previous block is effective.
- Target figure
Patterns
The following four cutting patterns are considered. All of these cutting cycles cut the workpiece with
moving the tool in parallel to the second axis on the plane (X-axis for the ZX plane). At this time, the
signs of the finishing allowances of Δu and Δw are as follows:
- 67 -
4. FUNCTIONS TO SIMPLIFY
PROGRAMMING PROGRAMMING B-64604EN-1/01
+X
B B
U(-)...W(+)... U(-)...W(-)... +Z
A A
A' A' Both linear and circular
interpolation are possible
A' A'
A A
U(+)...W(+)... U(+)...W(-)...
B B
Fig. 4.2.2 (b) Signs of the values specified at U and W in stock removal in facing
Limitation
(1) For W(+), a figure for which a position higher than the cycle start point is specified cannot be
machined.
For W(-), a figure for which a position lower than the cycle start point is specified cannot be
machined.
(2) For type I, the figure must show monotone increase or decrease along the first and second axes on
the plane.
(3) For type II, the figure must show monotone increase or decrease along the second axis on the plane.
- Start block
In the start block in the program for a target figure (block with sequence number ns in which the path
between A and A' is specified), G00 or G01 must be specified. If it is not specified, alarm PS0065,
“G00/G01 IS NOT IN THE FIRST BLOCK OF SHAPE PROGRAM” is issued.
When G00 is specified, positioning is performed along A-A’. When G01 is specified, linear interpolation
is performed with cutting feed along A-A’.
In this start block, also select type I or II.
If Z-axis does not move at start block, alarm PS0325 “UNAVAILABLE COMMAND IS IN SHAPE
PROGRAM” is issued.
- Check functions
During cycle operation, whether the target figure shows monotone increase or decrease is always
checked.
NOTE
When tool nose radius compensation is applied, the target figure to which
compensation is applied is checked.
- 68 -
4.FUNCTIONS TO SIMPLIFY
B-64604EN-1/01 PROGRAMMING PROGRAMMING
- Types I and II
Selection of type I or II
For G72, there are types I and II.
When the target figure has pockets, be sure to use type II.
Escaping operation after rough cutting in the direction of the second axis on the plane (X-axis for the ZX
plane) differs between types I and II. With type I, the tool escapes to the direction of 45 degrees. With
type II, the tool cuts the workpiece along the target figure. When the target figure has no pockets,
determine the desired escaping operation and select type I or II.
Selecting type I or II
In the start block for the target figure (sequence number ns), select type I or II.
(1) When type I is selected
Specify the first axis on the plane (Z-axis for the ZX plane). Do not specify the second axis on the
plane (X-axis for the ZX plane).
(2) When type II is selected
Specify the second axis on the plane (X-axis for the ZX plane) and first axis on the plane (Z-axis for
the ZX plane).
When you want to use type II without moving the tool along the second axis on the plane (X-axis for
the ZX plane), specify the incremental programming with travel distance 0 (U0 for the ZX plane).
- Type I
G72 differs from G71 in the following points:
(1) G72 cuts the workpiece with moving the tool in parallel with the second axis on the plane (X-axis on
the ZX plane).
(2) In the start block in the program for a target figure (block with sequence number ns), only the first
axis on the plane (Z-axis (W-axis) for the ZX plane) must be specified.
- Type II
G72 differs from G71 in the following points:
(1) G72 cuts the workpiece with moving the tool in parallel with the second axis on the plane (X-axis on
the ZX plane).
(2) The figure need not show monotone increase or decrease in the direction of the first axis on the
plane (Z-axis for the ZX plane) and it may have concaves (pockets). The figure must show
monotone change in the direction of the second axis on the plane (X-axis for the ZX plane),
however.
(3) When a position parallel to the second axis on the plane (X-axis for the ZX plane) is specified in a
block in the program for the target figure, it is assumed to be at the bottom of a pocket.
(4) After all rough cutting terminates along the second axis on the plane (X-axis for the ZX plane), the
tool temporarily returns to the start point. Then, rough cutting as finishing is performed.
- 69 -
4. FUNCTIONS TO SIMPLIFY
PROGRAMMING PROGRAMMING B-64604EN-1/01
Format
ZpXp plane
G73 W(Δk) U(Δi) R(d) ;
G73 P(ns) Q(nf) U(Δu) W(Δw) F(f ) S(s ) T(t ) ;
N (ns) ; The move commands for the target figure from A
... to A’ to B are specified in the blocks with
N (nf) ; sequence numbers ns to nf.
YpZp plane
G73 V(Δk) W(Δi) R(d) ;
G73 P(ns) Q(nf) V(Δw) W(Δu) F(f ) S(s ) T(t ) ;
N (ns) ;
...
N (nf) ;
XpYp plane
G73 U(Δk) V(Δi) R(d) ;
G73 P(ns) Q(nf) U(Δw) V(Δu) F(f ) S(s ) T(t ) ;
N (ns) ;
...
N (nf) ;
Δi : Distance of escape in the direction of the second axis on the plane (X-axis for the ZX
plane)
This designation is modal and is not changed until the other value is designated. Also
this value can be specified by the parameter No. 5135, and the parameter is changed
by the program command.
Δk : Distance of escape in the direction of the first axis on the plane (Z-axis for the ZX
plane)
This designation is modal and is not changed until the other value is designated. Also
this value can be specified by the parameter No. 5136, and the parameter is changed
by the program command.
d : The number of division
This value is the same as the repetitive count for rough cutting. This designation is
modal and is not changed until the other value is designated. Also, this value can be
specified by the parameter No. 5137, and the parameter is changed by the program
command.
ns : Sequence number of the first block for the program of finishing shape.
nf : Sequence number of the last block for the program of finishing shape.
Δu : Distance of the finishing allowance in the direction of the second axis on the plane
(X-axis for the ZX plane)
Δw : Distance of the finishing allowance in the direction of the first axis on the plane (Z-axis
for the ZX plane)
f, s, t : Any F, S, and T function contained in the blocks between sequence number "ns" and
"nf" are ignored, and the F, S, and T functions in this G73 block are effective.
- 70 -
4.FUNCTIONS TO SIMPLIFY
B-64604EN-1/01 PROGRAMMING PROGRAMMING
Decimal point
Unit Diameter/radius programming Sign
input
Depends on the increment
Δi Radius programming Required Allowed
system for the reference axis.
Depends on the increment
Δk Radius programming Required Allowed
system for the reference axis.
Depends on the increment Depends on diameter/radius programming for
Δu Required Allowed
system for the reference axis. the second axis on the plane.
Depends on the increment Depends on diameter/radius programming for
Δw Required Allowed
system for the reference axis. the first axis on the plane.
NOTE
Decimal point input is allowed with d. However, a value rounded off to an integer
is used as the number of division, regardless of the setting of bit 0 (DPI) of
parameter No. 3401. When an integer is input, the input integer is used as the
number of division.
Δk+Δw
D
Δw
Δi+Δu/2
Δu/2
C
A
(R)
B (R)
(F)
Δu/2
A'
+X Δw
Target figure (F): Cutting feed
(R): Rapid traverse
+Z
Fig. 4.2.3 (a) Cutting path in pattern repeating
Explanation
- Operations
When a target figure passing through A, A', and B in this order is given by a program, rough cutting is
performed the specified number of times, with the finishing allowance specified by Δu/2 and Δw left.
NOTE
1 While the values Δi and Δk, or Δu and Δw are specified by the same address
respectively, the meanings of them are determined by the presence of
addresses P and Q.
2 The cycle machining is performed by G73 command with P and Q specification.
3 After cycle operation terminates, the tool returns to point A.
4 F, S, and T functions which are specified in the move command between points
A and B are ineffective and those specified in G73 block or the previous block
are effective. M and second auxiliary functions are treated in the same way as F,
S, and T functions.
- 71 -
4. FUNCTIONS TO SIMPLIFY
PROGRAMMING PROGRAMMING B-64604EN-1/01
- Target figure
Patterns
As in the case of G71, there are four target figure patterns. Be careful about signs of Δu, Δw, Δi, and Δk
when programming this cycle.
- Start block
In the start block in the program for the target figure (block with sequence number ns in which the path
between A and A' is specified), G00 or G01 must be specified. If it is not specified, alarm PS0065,
“G00/G01 IS NOT IN THE FIRST BLOCK OF SHAPE PROGRAM” is issued.
When G00 is specified, positioning is performed along A-A’. When G01 is specified, linear interpolation
is performed with cutting feed along A-A’.
- Check function
The following check can be made.
It explains that the movement when the O0001 shown in Fig. 4.2.3 (b) is executed by the single block
operation.
The finishing shape specified by N10-N30 of the O0001 is shown in Fig. 4.2.3 (c).
O0001;
G00X100.0Z0.0;
G73U6.0W6.0R3.0;
N30
G73P10Q30U6.0W3.0F1.0S500; N10
N10G00X60.0W0.0;
N15G01Z-10.0;
N20G02X80.0Z-20.0R10.0;
N30G01X100.0; N20
M30; N15
Fig. 4.2.3 (b) Sample program Fig. 4.2.3 (c) Finishing shape of O0001
When bit 2 (PRS) of parameter No. 5125 is set to 0, in case the O0001 is executed by the single block
operation, the stop position of single block operation are the end point of each cycles and the end point of
each blocks in the finishing shape as shown in Fig. 4.2.3 (d). The single block stop does not executed at
the end point of escape from the cycle start point.
- 72 -
4.FUNCTIONS TO SIMPLIFY
B-64604EN-1/01 PROGRAMMING PROGRAMMING
When bit 2 (PRS) of parameter No. 5125 is set to 1, in case the O0001 is executed by the single block
operation, the stop position of single block operation are the end point of each cycles and the end point of
escape from the cycle start point as shown in Fig. 4.2.3 (e).
- 73 -
4. FUNCTIONS TO SIMPLIFY
PROGRAMMING PROGRAMMING B-64604EN-1/01
Format
G70 P(ns) Q(nf) ;
ns : Sequence number of the first block for the program of finishing shape.
nf : Sequence number of the last block for the program of finishing shape.
Explanation
- Operations
The blocks with sequence numbers ns to nf in the program for a target figure are executed for finishing.
The F, S, T, M, and second auxiliary functions specified in the G71, G72, or G73 block are ignored and
the F, S, T, M, and second auxiliary functions specified in the blocks with sequence numbers ns to nf are
effective.
When cycle operation terminates, the tool is returned to the start point in rapid traverse and the next G70
cycle block is read.
- Target figure
Check function
The following check can be made.
Example
G71 P100 Q200 ...;
N100 ...;
...;
...;
N200 ...;
G71 P300 Q400 ...;
N300 ...;
...;
...;
N400 ...;
...;
...;
G70 P100 Q200 ; (Executed without a search for the first to third cycles)
G70 P300 Q400 ; (Executed after a search for the fourth and subsequent
cycles)
- 74 -
4.FUNCTIONS TO SIMPLIFY
B-64604EN-1/01 PROGRAMMING PROGRAMMING
NOTE
The memory addresses of P and Q blocks stored during rough cutting cycles by
G71, G72, and G73 are erased after execution of G70.
All stored memory addresses of P and Q blocks are also erased by a reset.
NOTE
The tool returns to the cycle start point always in the nonlinear positioning mode
regardless of the setting of bit 1 (LRP) of parameter No. 1401.
Before executing a finishing cycle for a target figure with a pocket cut by G71 or
G72, check that the tool does not interfere with the workpiece when returning
from the end point of the target figure to the cycle start point.
Program example
G42;..............................Specify this command before a multiple repetitive canned cycle command.
G70P10Q20;
G40;..............................Specify this command after a multiple repetitive canned cycle command.
Like G71, this cycle operation is performed according to the figure determined by the tool nose radius
compensation path when the offset vector is 0 at start point A and start-up is performed in a block
between path A-A'.
- 75 -
4. FUNCTIONS TO SIMPLIFY
PROGRAMMING PROGRAMMING B-64604EN-1/01
Example
X axis 2
Start point
7
2
88
φ160
φ120
φ40
φ80
Z axis
60 10 10 10 20 20 2
190
- 76 -
4.FUNCTIONS TO SIMPLIFY
B-64604EN-1/01 PROGRAMMING PROGRAMMING
16
16
B
X axis
130
110
14
2
φ180
φ160
φ120
φ80
Z axis
0
2 14
20
40 10 40 10 20 40
220
- 77 -
4. FUNCTIONS TO SIMPLIFY
PROGRAMMING PROGRAMMING B-64604EN-1/01
Format
G74R (e) ;
G74X(U)_ Z(W)_ P(Δi) Q(Δk) R(Δd) F (f ) ;
e : Return amount
This designation is modal and is not changed until the other value is designated.
Also this value can be specified by the parameter No. 5139, and the parameter is
changed by the program command.
X_,Z_ : Coordinate of the second axis on the plane (X-axis for the ZX plane) at point B and
Coordinate of the first axis on the plane (Z-axis for the ZX plane) at point C
U_,W_ : Travel distance along the second axis on the plane (U for the ZX plane) from point A
to B
Travel distance along the first axis on the plane (W for the ZX plane) from point A to
C
(When G code system A is used. In other cases, X_,Z_ is used for specification.)
Δi : Travel distance in the direction of the second axis on the plane (X-axis for the ZX
plane)
Δk : Depth of cut in the direction of the first axis on the plane (Z-axis for the ZX plane)
Δd : Relief amount of the tool at the cutting bottom
f : Feedrate
NOTE
Normally, specify a positive value for Δd. When X (U) and Δi are omitted, specify
a value with the sign indicating the direction in which the tool is to escape.
- 78 -
4.FUNCTIONS TO SIMPLIFY
B-64604EN-1/01 PROGRAMMING PROGRAMMING
Δd A
Δi
C
(R) (R)
(F) (F) (F)
(F) (F) U/2
(R) (R) (R) (R) Δi
X
Z W B
+X
(R) ... Rapid traverse
e (F) ... Cutting feed
+Z
Fig. 4.2.5 (a) Cutting path in end face peek drilling cycle
Explanation
- Operations
A cycle operation of cutting by Δk and return by e is repeated.
When cutting reaches point C, the tool escapes by Δd. Then, the tool returns in rapid traverse, moves to
the direction of point B by Δi, and performs cutting again.
NOTE
1 While both e and Δd are specified by the same address, the meanings of them
are determined by specifying the X, Y, or Z axis. When the axis is specified, Δd
is used.
2 The cycle machining is performed by G74 command with specifying the axis.
- 79 -
4. FUNCTIONS TO SIMPLIFY
PROGRAMMING PROGRAMMING B-64604EN-1/01
Format
G75R (e) ;
G75X(U)_ Z(W)_ P(Δi) Q(Δk) R(Δd) F (f ) ;
e : Return amount
This designation is modal and is not changed until the other value is designated.
Also this value can be specified by the parameter No. 5139, and the parameter is
changed by the program command.
X_, Z_ : Coordinate of the second axis on the plane (X-axis for the ZX plane) at point B and
Coordinate of the first axis on the plane (Z-axis for the ZX plane) at point C
U_, W_ : Travel distance along the second axis on the plane (U for the ZX plane) from point
A to B
Travel distance along the first axis on the plane (W for the ZX plane) from point A
to C
(When G code system A is used. In other cases, X_,Z_ is used for specification.)
Δi : Depth of cut in the direction of the second axis on the plane (X-axis for the ZX
plane)
Δk : Travel distance in the direction of the first axis on the plane (Z-axis for the ZX
plane)
Δd : Relief amount of the tool at the cutting bottom
f : Feedrate
Decimal point
Unit Diameter/radius programming Sign
input
Depends on the increment system for
e Radius programming Not required Allowed
the reference axis.
Depends on the increment system for
Δi Radius programming Not required Not allowed
the reference axis.
Depends on the increment system for
Δk Radius programming Not required Not allowed
the reference axis.
Depends on the increment system for
Δd Radius programming NOTE Allowed
the reference axis.
NOTE
Normally, specify a positive value for Δd. When Z (W) and Δk are omitted,
specify a value with the sign indicating the direction in which the tool is to
escape.
- 80 -
4.FUNCTIONS TO SIMPLIFY
B-64604EN-1/01 PROGRAMMING PROGRAMMING
C (R) A
(R)
(F) Δi
(R) e
(F)
Δi
(R)
U/2
(F) Δi
(R)
(F)
Δi
(R)
(F) Δi’
B
Δd
Δk
X
Z W
+X
(R) ... Rapid traverse
(F) ... Cutting feed
+Z
Fig. 4.2.6 (b) Outer diameter/internal diameter drilling cycle
Explanation
- Operations
A cycle operation of cutting by Δi and return by e is repeated.
When cutting reaches point B, the tool escapes by Δd. Then, the tool returns in rapid traverse, moves to
the direction of point C by Δk, and performs cutting again.
Both G74 and G75 are used for grooving and drilling, and permit the tool to relief automatically. Four
symmetrical patterns are considered, respectively.
- 81 -
4. FUNCTIONS TO SIMPLIFY
PROGRAMMING PROGRAMMING B-64604EN-1/01
Format
G76 P(m) (r) (a) Q(Δdmin) R(d ) ;
G76 X(U)_ Z(W)_ R(i ) P(k ) Q(Δd) F (L ) ;
m : Repetitive count in finishing (1 to 99)
This value can be specified by the parameter No. 5142, and the parameter is changed by
the program command.
r : Chamfering amount (0 to 99)
When the thread lead is expressed by L, the value of L can be set from 0.0L to 9.9L in
0.1L increment (2-digit number). This value can be specified by the parameter No. 5130,
and the parameter is changed by the program command.
a : Angle of tool nose
One of six kinds of angle, 80°, 60°, 55°, 30°, 29°, and 0°, can be selected, and specified
by 2-digit number. This value can be specified by the parameter No. 5143, and the
parameter is changed by the program command.
m, r, and a are specified by address P at the same time.
(Example) When m=2, r=1.2L, a=60°, specify as shown below (L is lead of thread).
P 02 12 60
a
r
m
Δdmin : Minimum cutting depth
When the cutting depth of one cycle operation becomes smaller than this limit, the
cutting depth is clamped at this value. This value can be specified by parameter
No. 5140, and the parameter is changed by the program command.
d : Finishing allowance
This value can be specified by parameter No. 5141, and the parameter is changed
by the program command.
X_, Z_ : Coordinates of the cutting end point (point D in the Fig. 4.2.7 (a)) in the direction of
the length
U_, W_ : Travel distance to the cutting end point (point D in the Fig. 4.2.7 (a)) in the direction
of the length
(When G code system A is used. In other cases, X_,Z_ is used for specification.)
i : Taper amount
If i = 0, ordinary straight threading can be made.
k : Height of thread
Δd : Depth of cut in 1st cut
L : Lead of thread
- 82 -
4.FUNCTIONS TO SIMPLIFY
B-64604EN-1/01 PROGRAMMING PROGRAMMING
E (R) A
(R) (R)
U/2
B
(F)
Δd
D
X i k
r C
Z W
+X
+Z
Tool nose
a Δd
Δd√n
1st
2nd k
3rd
nth
- 83 -
4. FUNCTIONS TO SIMPLIFY
PROGRAMMING PROGRAMMING B-64604EN-1/01
+X k
Explanation
- Operations
This cycle performs threading so that the length of the lead only between C and D is made as specified in
the F code. In other sections, the tool moves in rapid traverse.
The time constant for acceleration/deceleration after interpolation and FL feedrate for thread chamfering
and the feedrate for retraction after chamfering are the same as for thread chamfering with G92 (canned
cycle).
NOTE
1 The meanings of the data specified by address P, Q, and R determined by the
presence of X (U) and Z (W).
2 The cycle machining is performed by G76 command with X (U) and Z (W)
specification.
3 The values specified at addresses P, Q, and R are modal and are not changed
until another value is specified.
4 Specify a value smaller than the height of thread as the finishing allowance. (d <
k)
CAUTION
Notes on threading are the same as those on G32 threading. For feed hold in a
threading cycle, however, see "Feed hold in a threading cycle" described below.
- Relationship between the sign of the taper amount and tool path
The signs of incremental dimensions for the cycle shown in Fig. 4.2.7 (a) are as follows:
Cutting end point in the direction of the length for U and W:
Minus (determined according to the directions of paths A-C and C-D)
Taper amount (i): Minus (determined according to the direction of path A-C)
Height of thread (k): Plus (always specified with a plus sign)
Depth of cut in the first cut (Δd): Plus (always specified with a plus sign)
The four patterns shown in the Table 4.2.7 (a) are considered corresponding to the sign of each address. A
female thread can also be machined.
- 84 -
4.FUNCTIONS TO SIMPLIFY
B-64604EN-1/01 PROGRAMMING PROGRAMMING
Table 4.2.7 (a)
Outer diameter machining Internal diameter machining
1. U < 0, W < 0, i < 0 2. U > 0, W < 0, i > 0
X X
Z W
Z
4(R)
2(F)
i
U/2 3(R) 1(R)
X X
Z Z W
4(R)
1(R) i
2(F)
U/2 X U/2 3(R)
3(R)
2(F) 1(R)
i
4(R)
W
X
- Thread chamfering
Thread chamfering can be performed in this threading cycle. A signal from the machine tool initiates
thread chamfering.
The maximum amount of thread chamfering (r) that can be specified in the command is 99 (9.9L). The
amount can be specified in a range from 0.1L to 12.7L in 0.1L increments in parameter No. 5130.
A thread chamfering angle between 1 to 89 degrees can be specified in parameter No. 5131. When a
value of 0 is specified in the parameter, an angle of 45 degrees is assumed.
For thread chamfering, the same type of acceleration/deceleration after interpolation, time constant for
acceleration/deceleration after interpolation, and FL feedrate as for threading are used.
NOTE
Common parameters for specifying the amount and angle of thread chamfering
are used for this cycle and G92 threading cycle.
- 85 -
4. FUNCTIONS TO SIMPLIFY
PROGRAMMING PROGRAMMING B-64604EN-1/01
By setting bit 4 (ROC) of parameter No. 1403 to 1, rapid traverse override can be disabled for the feedrate
of retraction after chamfering.
NOTE
During retraction, the machine does not stop with an override of 0% for the
cutting feedrate regardless of the setting of bit 4 (RF0) of parameter No. 1401.
R a p id tra ve rse
C u ttin g fe ed
F e e d h o ld is a p plied a t this po in t
The angle of chamfering during retraction is the same as that of chamfering at the end point.
- 86 -
4.FUNCTIONS TO SIMPLIFY
B-64604EN-1/01 PROGRAMMING PROGRAMMING
CAUTION
Another feed hold cannot be performed during retraction.
- Inch threading
Inch threading specified with address E is not allowed.
Example
1.8
3.68
X axis
1.8
ϕ60.64
ϕ68
0 Z axis
25 105
In a block in which G70, G71, G72, or G73 is specified, the following functions cannot be specified:
- Custom macro calls (simple call, modal call, and subprogram call)
- 87 -
4. FUNCTIONS TO SIMPLIFY
PROGRAMMING PROGRAMMING B-64604EN-1/01
In blocks with sequence numbers between those specified at P and Q in G70, G71, G72, and G73, the
following commands can be specified:
(1) Dwell (G04)
(2) G00, G01, G02, and G03
When a circular interpolation command (G02, G03) is used, there must be no radius difference
between the start point and end point of the arc. If there is a radius difference, the target finishing
figure may not be recognized correctly, resulting in a cutting error such as excessive cutting.
(3) Custom macro branch and repeat command
The branch destination must be between the sequence numbers specified at P and Q, however.
High-speed branch specified by bits 1 and 4 of parameter No. 6000 is invalid. No custom macro call
(simple, modal, or subprogram call) cannot be specified.
(4) Direct drawing dimension programming command and chamfering and corner R command
Direct drawing dimension programming and chamfering and corner R require multiple blocks to be
specified. The block with the last sequence number specified at Q must not be an intermediate block
of these specified blocks.
When G70, G71, G72, or G73 is executed, the sequence number specified by address P and Q should not
be specified twice or more in the same program.
When #1 = 2500 is executed using a custom macro, 2500.000 is assigned to #1. In such a case, P#1 is
equivalent to P2500.
Cancellation
Manual intervention
- 88 -
4.FUNCTIONS TO SIMPLIFY
B-64604EN-1/01 PROGRAMMING PROGRAMMING
- Multi-spindle control
When a spindle selection by address P of multi-spindle control or the command by the extended spindle
name is used, S code cannot be specified at the block of multiple repetitive canned cycle command
(G71-G73). (The alarm PS5305 “ILLEGAL SPINDLE NUMBER” is issued.)
In this case, instead of specifying S code at the block of multiple repetitive canned cycle command
(G71-G73) is specified, specify S code before the multiple repetitive canned cycle command (G71-G73)
block.
- 89 -
4. FUNCTIONS TO SIMPLIFY
PROGRAMMING PROGRAMMING B-64604EN-1/01
NOTE
When bit 4 (NCD) of parameter No.8137 is 0, this function can be used.
Explanation
The canned cycle for drilling consists of the following six operation sequences.
Operation 1 Positioning of X (Z) and C axis
Operation 2 Rapid traverse up to point R level
Operation 3 Hole machining
Operation 4 Operation at the bottom of a hole
Operation 5 Retraction to point R level
Operation 6 Rapid traverse up to the initial level
Operation 1
Initial level
Operation 2 Operation 6
Point R level
Operation 5
Operation 3
Rapid traverse
Operation 4
Feed
- 90 -
4.FUNCTIONS TO SIMPLIFY
B-64604EN-1/01 PROGRAMMING PROGRAMMING
G83 and G87, G84 and G88, and G85 and G89 have the same function respectively except for axes
specified as positioning axes and a drilling axis.
- Drilling mode
G83 to G85/G87 to G89 are modal G codes and remain in effect until canceled. When in effect, the
current state is the drilling mode.
Once drilling data is specified in the drilling mode, the data is retained until modified or canceled.
Specify all necessary drilling data at the beginning of canned cycles; when canned cycles are being
performed, specify data modifications only.
The feedrate specified at F is retained also after the drilling cycle is canceled. When Q data is required, it
must be specified in each block. Once specified, the M code used for C-axis clamp/unclamp functions as
a modal code. It is canceled by specifying G80.
Initial level
Point R level
- Number of repeats
To repeat drilling for equally-spaced holes, specify the number of repeats in K_.
K is effective only within the block where it is specified.
Specify the first hole position in incremental programming.
If it is specified in absolute programming, drilling is repeated at the same position.
- 91 -
4. FUNCTIONS TO SIMPLIFY
PROGRAMMING PROGRAMMING B-64604EN-1/01
When K0 is specified, drilling data is just stored without drilling being performed.
NOTE
For K, specify an integer of 0 or 1 to 9999.
- Cancel
To cancel a canned cycle, use G80 or a group 01 G code.
- Symbols in figures
Subsequent subsections explain the individual canned cycles. Figures in these explanations use the
following symbols:
- 92 -
4.FUNCTIONS TO SIMPLIFY
B-64604EN-1/01 PROGRAMMING PROGRAMMING
CAUTION
1 In each canned cycle, addresses R, Z, and X are handled as follows:
R_ : Always handled as a radius.
Z_ or X_ : Depends on diameter/radius programming.
2 For the B or C G-code system, G90 or G91 can be used to select an incremental
or absolute programming for hole position data (X, C or Z, C), the distance from
point R to the bottom of the hole (Z or X), and the distance from the initial level to
the point R level (R).
3 For canned cycles for drilling specified in the Series 10/11 format (by setting bit 1
(FCV) of parameter No. 0001 to 1 and bit 3 (F16) of parameter No. 5102 to 0),
incremental programming is used for point R data when bit 6 (RAB) of parameter
No. 5102 is set to 0.
When bit 6 (RAB) of parameter No. 5102 is set to 1, in G code system A,
absolute programming is used, and in G code system B or C, absolute or
incremental programming is used according to G90 or G91.
For canned cycles for drilling in the Series 0i-C format, incremental programming
is used for point R data.
- High-speed peck drilling cycle (G83, G87) (bit 2 (RTR) of parameter No. 5101
=0)
This cycle performs high-speed peck drilling. The drill repeats the cycle of drilling at the cutting feedrate
and retracting the specified retraction distance intermittently to the bottom of a hole. The drill draws
cutting chips out of the hole when it retracts.
- 93 -
4. FUNCTIONS TO SIMPLIFY
PROGRAMMING PROGRAMMING B-64604EN-1/01
Format
G83 X(U)_ C(H)_ Z(W)_ R_ P_ Q_ F_ K_ M_ ;
or
G87 Z(W)_ C(H)_ X(U)_ R_ P_ Q_ F_ K_ M_ ;
X_ C_ or Z_ C_ : Hole position data
Z_ or X_ : The distance from point R to the bottom of the hole
R_ : The distance from the initial level to point R level
P_ : Dwell time at the bottom of a hole
Q_ : Depth of cut for each cutting feed
F_ : Cutting feedrate
K_ : Number of repeats (When it is needed)
M_ : M code for C-axis clamp (When it is needed.)
G83 or G87 (G98 mode) G83 or G87 (G99 mode)
Mα Initial level Mα
M (α + 1), P2
Point R M (α + 1), P2 Point R Point R level
q q
d d
q d q d
q q
Point Z Point Z
P1 P1
- 94 -
4.FUNCTIONS TO SIMPLIFY
B-64604EN-1/01 PROGRAMMING PROGRAMMING
- Peck drilling cycle (G83, G87) (bit 2 (RTR) of parameter No. 5101 =1)
Format
G83 X(U)_ C(H)_ Z(W)_ R_ P_ Q_ F_ K_ M_ ;
or
G87 Z(W)_ C(H)_ X(U)_ R_ P_ Q_ F_ K_ M_ ;
X_ C_ or Z_ C_ : Hole position data
Z_ or X_ : The distance from point R to the bottom of the hole
R_ : The distance from the initial level to point R level
P_ : Dwell time at the bottom of a hole
Q_ : Depth of cut for each cutting feed
F_ : Cutting feedrate
K_ : Number of repeats (When it is needed.)
M_ : M code for C-axis clamp (When it is needed.)
G83 or G87 (G98 mode) G83 or G87 (G99 mode)
Mα Initial level Mα
M (α + 1), P2
M (α + 1), P2 Point R level
Point R Point R
q q
d d
q q
d d
q q
Point Z Point Z
P1 P1
Example
M51 ; Setting C-axis index mode ON
M3 S2000 ; Rotating the drill
G00 X50.0 C0.0 ; Positioning the drill along the X- and C-axes
G83 Z-40.0 R-5.0 Q5000 F5.0 M31 ; Drilling hole 1
C90.0 Q5000 M31 ; Drilling hole 2
C180.0 Q5000 M31 ; Drilling hole 3
C270.0 Q5000 M31 ; Drilling hole 4
G80 M05 ; Canceling the drilling cycle and stopping drill rotation
M50 ; Setting C-axis index mode off
NOTE
If the depth of cut for each cutting feed (Q) is not commanded, normal drilling is
performed. (See the description of the drilling cycle.)
- 95 -
4. FUNCTIONS TO SIMPLIFY
PROGRAMMING PROGRAMMING B-64604EN-1/01
Format
G83 X(U)_ C(H)_ Z(W)_ R_ P_ F_ K_ M_ ;
or
G87 Z(W)_ C(H)_ X(U)_ R_ P_ F_ K_ M_ ;
X_ C_ or Z_ C_ : Hole position data
Z_ or X_ : The distance from point R to the bottom of the hole
R_ : The distance from the initial level to point R level
P_ : Dwell time at the bottom of a hole
F_ : Cutting feedrate
K_ : Number of repeats (When it is needed.)
M_ : M code for C-axis clamp (When it is needed.)
G83 or G87 (G98 mode) G83 or G87 (G99 mode)
Mα Initial level Mα
Point Z Point Z
P1 P1
Example
M51 ; Setting C-axis index mode ON
M3 S2000 ; Rotating the drill
G00 X50.0 C0.0 ; Positioning the drill along the X- and C-axes
G83 Z-40.0 R-5.0 P500 F5.0 M31 ; Drilling hole 1
C90.0 M31 ; Drilling hole 2
C180.0 M31 ; Drilling hole 3
C270.0 M31 ; Drilling hole 4
G80 M05 ; Canceling the drilling cycle and stopping drill rotation
M50 ; Setting C-axis index mode off
- 96 -
4.FUNCTIONS TO SIMPLIFY
B-64604EN-1/01 PROGRAMMING PROGRAMMING
Format
G84 X(U)_ C(H)_ Z(W)_ R_ P_ F_ K_ M_ ;
or
G88 Z(W)_ C(H)_ X(U)_ R_ P_ F_ K_ M_ ;
X_ C_ or Z_ C_ : Hole position data
Z_ or X_ : The distance from point R to the bottom of the hole
R_ : The distance from the initial level to point R level
P_ : Dwell time at the bottom of a hole
F_ : Cutting feedrate
K_ : Number of repeats (When it is needed.)
M_ : M code for C-axis clamp (when it is needed.)
G84 or G88 (G98 mode) G84 or G88 (G99 mode)
Mα Initial level Mα
Spindle CW Spindle CW
M (α + 1), P2 M (α + 1), P2
Point R Point R
Point R level
P1 Point Z P1 Point Z
Explanation
Tapping is performed by rotating the spindle clockwise. When the bottom of the hole has been reached,
the spindle is rotated in the reverse direction for retraction. This operation creates threads.
Feedrate overrides are ignored during tapping. A feed hold does not stop the machine until the return
operation is completed.
NOTE
Bit 3 (M5T) of parameter No. 5105 specifies whether the spindle stop command
(M05) is issued before the direction in which the spindle rotates is specified with
M03 or M04. For details, refer to the operator's manual created by the machine
tool builder.
- Q command
After setting bit 6 (PCT) of parameter No. 5104 to 1, add address Q to the ordinary tapping cycle
command format and specify the depth of cut for each tapping.
- 97 -
4. FUNCTIONS TO SIMPLIFY
PROGRAMMING PROGRAMMING B-64604EN-1/01
In the peck tapping cycle, the tool is retracted to point R for each tapping. In the high-speed peck
tapping cycle, the tool is retracted by the retraction distance specified for parameter No. 5213 in advance.
Which operation is to be performed can be selected by setting bit 5 (PCP) of parameter No. 5200.
Operation
First, ordinary tapping cycle operation is explained as basic operation.
Before specifying a tapping cycle, rotate the spindle using a miscellaneous function.
1. When a command to position the tool to a hole position, positioning is performed.
2. When point R is specified, positioning to point R is performed.
3. Tapping is performed to the bottom of the hole in cutting feed.
4. When a dwell time (P) is specified, the tool dwells.
5. Miscellaneous function M05 (spindle stop) is output and the machine enters the FIN wait state.
6. When FIN is returned, miscellaneous function M04 (reverse spindle rotation) is output and the
machine enters the FIN wait state.
7. When FIN is returned, the tap is removed until point R is reached in cutting feed.
8. When a dwell time (P) is specified, the tool dwells.
9. Miscellaneous function M05 (spindle stop) is output and the machine enters the FIN wait state.
10. When FIN is returned, miscellaneous function M03 (forward spindle rotation) is output, and the
machine enters the FIN wait state.
11. When FIN is returned, the tool returns to the initial point in rapid traverse when return to the initial
level is specified.
Tapping
Point R level
<8> Dwell
<3> Tapping to the bottom of the hole <9> Output of miscellaneous function M05
3-1. The tool cuts the workpiece by the depth of cut q specified by address Q.
3-2. Miscellaneous function M05 (spindle stop) is output, and the machine enters the FIN wait state.
3-3. When FIN is returned, miscellaneous function M04 (reverse spindle rotation) is output, and the
machine enters the FIN wait state.
- 98 -
4.FUNCTIONS TO SIMPLIFY
B-64604EN-1/01 PROGRAMMING PROGRAMMING
3-4. When FIN is returned, the tool is retracted to point R in cutting feed.
3-5. Miscellaneous function M05 (spindle stop) is output, and the machine enters the FIN wait state.
3-6. When FIN is returned, miscellaneous function M03 (forward spindle rotation) is output, and the
machine enters the FIN wait state.
3-7. When FIN is returned, the tool moves to the position the clearance d (parameter No. 5213) apart
from the previous cutting point in cutting feed (approach).
3-1. The tool cuts the workpiece by the clearance d (parameter No. 5213) + depth of cut q (specified by
address Q).
Tapping is performed to the bottom of the hole by repeating the above steps.
When a dwell time (P) is specified, the tool dwells only when it reaches at the bottom of the hole and
reaches point R last.
<1> Tapping
q <4> Retraction
<1> Tapping
q
<1> Tapping q
<2> Output of miscellaneous function M05
3-1. The tool cuts the workpiece by the depth of cut q specified by address Q.
3-2. Miscellaneous function M05 (spindle stop) is output, and the machine enters the FIN wait state.
3-3. When FIN is returned, miscellaneous function M04 (reverse spindle rotation) is output, and the
machine enters the FIN wait state.
3-4. When FIN is returned, the tool is retracted by the retraction distance d specified by parameter No.
5213 in cutting feed.
3-5. Miscellaneous function M05 (spindle stop) is output, and the machine enters the FIN wait state.
3-6. When FIN is returned, miscellaneous function M03 (forward spindle rotation) is output, and the
machine enters the FIN wait state.
- 99 -
4. FUNCTIONS TO SIMPLIFY
PROGRAMMING PROGRAMMING B-64604EN-1/01
3-1. When FIN is returned, the tool cuts the workpiece by the retraction distance d (parameter No. 5213)
+ depth of cut q (specified by address Q).
Tapping is performed to the bottom of the hole by repeating the above steps.
When a dwell time (P) is specified, the tool dwells only when it reaches at the bottom of the hole and
reaches point R.
q: Depth of cut
d: Retraction distance
Point R level
<1> Tapping q
d <4> Retraction
<1> Tapping
q
<2> Output of miscellaneous function M05
Notes
1. The depth of cut specified by address Q is stored as a modal value until the canned cycle mode is
canceled.
In both examples 1 and 2 below, address Q is not specified in the N20 block, but the peck tapping
cycle is performed because the value specified by address Q is valid as a modal value. If this
operation is not suitable, specify G80 to cancel the canned cycle mode as shown in N15 in example
3 or specify Q0 in the tapping block as shown in N20 in example 4.
Example 1
N10 G84 X100.0 C0.0 Z-100.0 Q20.0 ;
N20 X150.0 C90.0 ; ← The peck tapping cycle is also performed in this block.
N30 G80 ;
Example 2
N10 G83 X100.0 C0.0 Z-100.0 Q20.0 ;
N20 G84 Z-100.0 ; ← The peck tapping cycle is also performed in this block.
N30 G80 ;
Example 3
N10 G83 X100.0 C0.0 Z-100.0 Q20.0 ;
N15 G80 ; ← The canned cycle mode is canceled.
N20 G84 Z-100.0 ;
N30 G80 ;
- 100 -
4.FUNCTIONS TO SIMPLIFY
B-64604EN-1/01 PROGRAMMING PROGRAMMING
Example 4
N10 G83 X100.0 C0.0 Z-100.0 Q20.0 ;
N20 G84 Z-100.0 Q0 ; ←Q0 is added.
N30 G80 ;
2. The unit for the drilling axis is used as the unit of Q. Any sign is ignored.
4. Perform operation in the peck tapping cycle within point R. That is, set a value which does not
exceed point R for d (parameter No. 5213).
Example
M51 ; Setting C-axis index mode ON
M3 S2000 ; Rotating the drill
G00 X50.0 C0.0 ; Positioning the drill along the X- and C- axes
G84 Z-40.0 R-5.0 P500 F5.0 M31 ; Drilling hole 1
C90.0 M31 ; Drilling hole 2
C180.0 M31 ; Drilling hole 3
C270.0 M31 ; Drilling hole 4
G80 M05 ; Canceling the drilling cycle and stopping drill rotation
M50 ; Setting C-axis index mode off
Format
G85 X(U)_ C(H)_ Z(W)_ R_ P_ F_ K_ M_ ;
or
G89 Z(W)_ C(H)_ X(U)_ R_ P_ F_ K_ M_ ;
X_ C_ or Z_ C_ : Hole position data
Z_ or X_ : The distance from point R to the bottom of the hole
R_ : The distance from the initial level to point R level
P_ : Dwell time at the bottom of a hole
F_ : Cutting feedrate
K_ : Number of repeats (When it is needed.)
M_ : M code for C-axis clamp (When it is needed.)
G85 or G89 (G98 mode) G85 or G89 (G99 mode)
Mα Initial level Mα
Point R level
Point R M (α + 1), P2 M (α + 1), P2
Point R
Point Z Point Z
P1 P1
Explanation
After positioning, rapid traverse is performed to point R.
Drilling is performed from point R to point Z.
After the tool reaches point Z, it returns to point R at a feedrate twice the cutting feedrate.
Example
M51 ; Setting C-axis index mode ON
M3 S2000 ; Rotating the drill
G00 X50.0 C0.0 ; Positioning the drill along the X- and C-axes
G85 Z-40.0 R-5.0 P500 F5.0 M31 ; Drilling hole 1
C90.0 M31 ; Drilling hole 2
C180.0 M31 ; Drilling hole 3
C270.0 M31 ; Drilling hole 4
G80 M05 ; Canceling the drilling cycle and stopping drill rotation
M50 ; Setting C-axis index mode off
Format
G80 ;
Explanation
Canned cycle for drilling is canceled to perform normal operation. Point R and point Z are cleared.
Other drilling data is also canceled (cleared).
Example
M51 ; Setting C-axis index mode ON
M3 S2000 ; Rotating the drill
G00 X50.0 C0.0 ; Positioning the drill along the X- and C-axes.
G83 Z-40.0 R-5.0 P500 F5.0 M31 ; Drilling hole 1
C90.0 M31 ; Drilling hole 2
C180.0 M31 ; Drilling hole 3
C270.0 M31 ; Drilling hole 4
G80 M05 ; Canceling the drilling cycle and stopping drill rotation
M50 ; Setting C-axis index mode off
Details
Set the M codes for C-axis clamp/unclamp in the following parameters.
- 102 -
4.FUNCTIONS TO SIMPLIFY
B-64604EN-1/01 PROGRAMMING PROGRAMMING
When the M code for clamp set in parameter No. 5110 or 13544 (valid when bit 4 (CME) of parameter
No. 5161 is set to 1) is specified in the block for a canned cycle for drilling, the specified M code is
output before the tool is fed in rapid traverse to the point-R level after positioned. The M code for
unclamp paired with that specified M code is output after the tool retracts to the point-R level.
Example 1:
When bit 4 of parameter No. 5161 is set to 1, and 68, 78, 168, and 178 are specified in parameters
Nos. 5110, 13543, 13544 and 13545, respectively, the following M codes are output.
Command Clamp Unclamp
G83X_C_...M68 M68 M78
G83X_C_...M168 M168 M178
Example 2:
When bit 4 of parameter No. 5161 is set to 0, and 68 is specified in parameter No. 5110, respectively,
the following M codes are output.
Command Clamp Unclamp
G83X_C_...M68 M68 M69
NOTE
1 Both the M codes for clamp and unclamp are set to 0, the setting of the pair is
invalid.
2 If the same M code for clamp is set for pairs 1 and 2, the setting for pair 1 that is
specified in parameter No. 13543 is used as the M code for unclamp.
Explanation
A canned cycle for drilling consists of a sequence of six operations.
Operation 1 Positioning of axes X (Z) and C (including also another axis)
Operation 2 Rapid traverse up to point R level
Operation 3 Hole machining
Operation 4 Operation at the bottom of a hole
Operation 5 Retraction to point R level
Operation 6 Rapid traverse up to the initial point
- 103 -
4. FUNCTIONS TO SIMPLIFY
PROGRAMMING PROGRAMMING B-64604EN-1/01
Operation 1
Initial level
Operation 2 Operation 6
Point R level
Operation 5
Operation 3
Rapid traverse
Operation 4
Feed
When bit 7 (SAC) of parameter No.11507 is set to 0, the spindle speed arrival signal SAR is checked after
waiting for elapsing time that is set parameter No.3740 for each drilling.
When bit 7 (SAC) of parameter No.11507 is set to 1, in drilling since the second times, the spindle speed
arrival signal SAR is checked immediately that is set parameter No.3740 is not related.
However, when command and state are the following conditions, CNC is waiting for elapsing time that is
set parameter No.3740 before checking the spindle speed arrival signal SAR.
- Canned cycle for drilling is canceled by G80 or G code of group 01.
- S code is commanded.
- G code of canned cycle for drilling is commanded which is different modal G code.
- The spindle speed arrival signal SAR becomes “0”.
- CNC becomes reset state.
- Single block
When drilling cycle is performed with a single block, the operation stops at the end points of operations 1,
2, 6 in Fig. 4.3 (a).
Consequently, it follows that operation is started up 3 times to drill one hole. The operation stops at the
end points of operations 1, 2 with the feed hold lamp ON. If there is a remaining repetitive count at the
end of operation 6, the operation is stopped by feed hold. If there is no remaining repetitive count, the
operation is stopped in the single block stop state.
- Feed hold
When "Feed Hold" is applied between operations 3 and 5 by G84/G88, the feed hold lamp lights up
immediately if the feed hold is applied again to operation 6.
- Override
During operation with G84 and G88, the feedrate override is 100%.
- 105 -
4. FUNCTIONS TO SIMPLIFY
PROGRAMMING PROGRAMMING B-64604EN-1/01
NOTE
When bit 3 (NRG) of parameter No.8135 is 0, this function can be used.
- 106 -
4.FUNCTIONS TO SIMPLIFY
B-64604EN-1/01 PROGRAMMING PROGRAMMING
4.4.1 Front Face Rigid Tapping Cycle (G84) / Side Face Rigid
Tapping Cycle (G88)
Controlling the spindle motor in the same way as a servo motor in rigid mode enables high-speed tapping.
Format
G84 X (U)_ C (H)_ Z (W)_ R_ P_ F_ K_ M_ ;
or
G88 Z (W)_ C (H)_ X (U)_ R_ P_ F_ K_ M_ ;
Operation 1
Operation 6
Operation 2 Spindle stop
Spindle stop
Spindle CW P2 Spindle CW P2
Point R Point R level Point R Point R level
Operation 3 Operation 5
Point Z Point Z
P P
Spindle stop Spindle stop Spindle CCW
Operation 4 Spindle CCW
P2 performs dwelling of C-axis unclamp. (The dwell time is set in parameter No. 5111.)
In front face rigid tapping (G84), the plane first axis is used as the drilling axis and the other axes are used
as positioning axes.
Bit 0 (RTX) of parameter No. 5209 Plane selection Drilling axis
G17: Xp-Yp plane Xp
0 G18: Zp-Xp plane Zp
G19: Yp-Zp plane Yp
1 Zp
- 107 -
4. FUNCTIONS TO SIMPLIFY
PROGRAMMING PROGRAMMING B-64604EN-1/01
In side face rigid tapping (G88), the plane first axis is used as the drilling axis and the other axes are used
as positioning axes.
Bit 0 (RTX) of parameter No. 5209 Plane selection Drilling axis
G17: Xp-Yp plane Yp
0 G18: Zp-Xp plane Xp
G19: Yp-Zp plane Zp
1 Xp
Operation 1
Operation 6
Operation 2 Spindle stop
Spindle stop Spindle CW
Spindle CW
Operation 3 Operation 5
Point Z Point Z
P P
Spindle Spindle stop Spindle CCW
Spindle stop Operation 4
A G code cannot discriminate between front face tapping cycle and side face tapping cycle using Series
10/11 format commands(G84.2). The drilling axis is determined by plane selection (G17/G18/G19).
Specify the plane selection that becomes equivalent to front face tapping cycle or side face tapping cycle
as appropriate. (When FXY (bit 0 of parameter No. 5101) is 0, the Z-axis is used as the drilling axis.
When FXY is 1, plane selection is as Table 4.4.1 (a).)
Thus, the rigid tapping mode can be specified in two formats: G84/G88(FS0i-F format) and
G84.2(FS10/11 format). A usable format can be selected by parameter setting.
Parameter
Bit 1 (FCV) of Bit 3 (F16) of Executable command format
parameter No. 0001 parameter No. 5102
FS0i-F format only (The number of repeats is specified using address
0 -
K.)
FS10/11 format or
1 0
FS0i-F format (The number of repeats is specified using address L.)
1 1 FS0i-F format only (The number of repeats is specified using address L.)
Explanation
Once positioning for the X-axis (G84) or Z-axis (G88) has been completed, the spindle is moved, by
rapid traverse, to point R. Tapping is performed from point R to point Z, after which the spindle stops and
observes a dwell time. Then, the spindle starts reverse rotation, retracts to point R, stops rotating, then
moves to the initial level by rapid traverse.
During tapping, the feedrate override and spindle override are assumed to be 100%. For retraction
(operation 5), however, a fixed override of up to 2000% can be applied by setting bit 4 (DOV) of
parameter No. 5200, bit 3 (OVU) of parameter No. 5201, and parameter No. 5211.
- Rigid mode
Rigid mode can be specified by applying any of the following methods:
(1) Specifying M29S***** before a tapping block
(2) Specifying M29S***** within a tapping block
(3) Handling G84 or G88 as a G code for rigid tapping (Set bit 0 (G84) of parameter No. 5200 to 1.)
- Thread lead
In feed per minute mode, the feedrate divided by the spindle speed is equal to the thread lead. In feed per
rotation mode, the feedrate is equal to the thread lead.
- Override
Various types of override functions are invalid. The following override functions can be enabled by
setting corresponding parameters:
(1) Extraction override
(2) Override signal
- Dry run
Dry run can be executed also in G84 (G88). When dry run is executed at the feedrate for the drilling axis
in G84 (G88), tapping is performed according to the feedrate. Note that the spindle speed becomes faster
at a higher dry run feedrate.
- 109 -
4. FUNCTIONS TO SIMPLIFY
PROGRAMMING PROGRAMMING B-64604EN-1/01
- Machine lock
Machine lock can be executed also in G84 (G88).
When G84 (G88) is executed in the machine lock state, the tool does not move along the drilling axis.
Therefore, the spindle does not also rotate.
- Reset
When a reset is performed during rigid tapping, the rigid tapping mode is canceled and the spindle motor
enters the normal mode. Note that the G84 (G88) mode is not canceled in this case when bit 6 (CLR) of
parameter No. 3402 is set.
- Interlock
Interlock can also be applied in G84 (G88).
- Manual feed
For rigid tapping by manual handle feed, see the section "Rigid Tapping by Manual Handle."
With other manual operations, rigid tapping cannot be performed.
- Backlash compensation
In the rigid tapping mode, backlash compensation is applied to compensate the lost motion when the
spindle rotates clockwise or counterclockwise. Set the amount of backlash in parameters Nos. 5321 to
5324.
Along the drilling axis, backlash compensation has been applied.
Limitation
- Axis switching
Before the drilling axis can be changed, the canned cycle must be canceled. If the drilling axis is changed
in rigid mode, alarm PS0206, “CAN NOT CHANGE PLANE (RIGID TAP)” is issued.
- S commands
When a value exceeding the maximum rotation speed for the gear being used is specified, alarm PS0200,
“ILLEGAL S CODE COMMAND” is issued. If such a command that the number of pulses of 8 msec is
32768 or more on the detection unit level or the number of pulses of 8 msec is 32768 or more for a serial
spindle is specified, alarm PS0202, “POSITION LSI OVERFLOW” is issued.
<Example>
For a built-in motor equipped with a detector having a resolution of 4095 pulses per rotation, the
maximum spindle speed during rigid tapping is as follows:
- 110 -
4.FUNCTIONS TO SIMPLIFY
B-64604EN-1/01 PROGRAMMING PROGRAMMING
(4095×1000÷8×60)÷4095=7500 (min-1)
For a serial spindle
(32767×1000÷8×60)÷4095=60012(min-1) [Note: Ideal value]
- F commands
Specifying a value larger than the upper limit for cutting feed will cause alarm PS0201, “FEEDRATE
NOT FOUND IN RIGID TAP” to be issued.
- Unit of F command
Metric input Inch input Remarks
G98 1mm/min 0.01inch/min Decimal point programming allowed
G99 0.01mm/rev 0.0001inch/rev Decimal point programming allowed
- M29
If an S command and axis movement are specified between M29 and G84, alarm PS0203, “PROGRAM
MISS AT RIGID TAPPING” is issued. If M29 is specified in a tapping cycle, alarm PS0204, “ILLEGAL
AXIS OPERATION” is issued.
- P
Specify P in a block that performs drilling. If P is specified in a non-drilling block, it is not stored as
modal data.
- Cancel
Do not specify a G code of the 01 group (G00 to G03) and G84 in a single block. Otherwise, G84 will be
canceled.
- Tool offset
In the canned cycle mode, tool offsets are ignored.
- Program restart
A program cannot be restarted during rigid tapping.
- R
The value of R must be specified in a block which performs drilling. If the value is specified in a block
which does not perform drilling, it is not stored as modal data.
- Subprogram call
In the canned cycle mode, specify the subprogram call command M98P_ in an independent block.
Example
Tapping axis feedrate: 1000 mm/min
Spindle speed: 1000 min-1
Screw lead: 1.0 mm
<Programming for feed per minute>
G98 ; ...................................... Command for feed per minute
G00 X100.0 ;................................. Positioning
M29 S1000;................................... Command for specifying rigid mode
G84 Z-100.0 R-20.0 F1000 ;......... Rigid tapping
<Programming for feed per rotation>
- 111 -
4. FUNCTIONS TO SIMPLIFY
PROGRAMMING PROGRAMMING B-64604EN-1/01
Format
When rigid tapping is specified with G84 (G88) if bit 5 (PCP) of parameter No. 5200 = 0, high-speed
peck rigid tapping is assumed.
G84 X(U)_ C(H)_Z(W)_ R_ P_ Q_ F_ K_ M_ ;
or
G88 Z(W)_ C(H)_X(U)_ R_ P_ Q_ F_ K_ M_ ;
When rigid tapping is specified with G84 (G88) if bit 5 (PCP) of parameter No. 5200 = 1, peck rigid
tapping is assumed.
- 112 -
4.FUNCTIONS TO SIMPLIFY
B-64604EN-1/01 PROGRAMMING PROGRAMMING
G84 X(U)_ C(H)_Z(W)_ R_ P_ Q_ F_ K_ M_ ;
or
G88 Z(W)_ C(H)_X(U)_ R_ P_ Q_ F_ K_ M_ ;
Note P1, Mα, M(α+1), and P2 are not executed or output without being specified or set.
Explanation
- Cutting start distance
Cutting start distance d is set by parameter No. 5213.
- Amount of return
Amount of return for each time d is set by parameter No. 5213.
- Return speed
For the speed of return operation, a maximum of 2000% of override can be enabled by setting bit 4
(DOV) of parameter No. 5200, bit 3 (OVU) of parameter No. 5201, and parameter No. 5211 as with
travel from the bottom of the hole (point Z) to point R.
- 113 -
4. FUNCTIONS TO SIMPLIFY
PROGRAMMING PROGRAMMING B-64604EN-1/01
- Override
Various types of override functions are invalid. The following override functions can be enabled by
setting corresponding parameters:
- Extraction override
- Override signal
Details are given later.
- Dry run
Dry run can be executed also in G84 (G88). When dry run is executed at the feedrate for the drilling axis
in G84 (G88), tapping is performed according to the feedrate. Note that the spindle speed becomes faster
at a higher dry run feedrate.
- Machine lock
Machine lock can be executed also in G84 (G88).
When G84 (G88) is executed in the machine lock state, the tool does not move along the drilling axis.
Therefore, the spindle does not also rotate.
- Reset
When a reset is performed during rigid tapping, the rigid tapping mode is canceled and the spindle motor
enters the normal mode. Note that the G84 (G88) mode is not canceled in this case when bit 6 (CLR) of
parameter No. 3402 is set.
- Interlock
Interlock can also be applied in G84 (G88).
- Manual feed
For rigid tapping by manual handle feed, see the section "Rigid Tapping by Manual Handle."
With other manual operations, rigid tapping cannot be performed.
- Backlash compensation
In the rigid tapping mode, backlash compensation is applied to compensate the lost motion when the
spindle rotates clockwise or counterclockwise. Set the amount of backlash in parameters Nos. 5321 to
5324.
Along the drilling axis, backlash compensation has been applied.
- 114 -
4.FUNCTIONS TO SIMPLIFY
B-64604EN-1/01 PROGRAMMING PROGRAMMING
Limitation
- Axis switching
Before the drilling axis can be changed, the canned cycle must be canceled. If the drilling axis is changed
in rigid mode, alarm PS0206, “CAN NOT CHANGE PLANE (RIGID TAP)” is issued.
- S commands
- If a speed higher than the maximum speed for the gear being used is specified, alarm PS0200,
“ILLEGAL S CODE COMMAND” is
issued.
- When the rigid tapping canned cycle is cancelled, the S command used for rigid tapping is cleared to
S0.
- F command
Specifying a value larger than the upper limit for cutting feed will cause alarm PS0011, “FEED ZERO
( COMMAND )” to be issued.
- Unit of F command
Metric input Inch input Remarks
G98 1mm/min 0.01inch/min Decimal point programming allowed
G99 0.01mm/rev 0.0001inch/rev Decimal point programming allowed
- M29
If an S command and axis movement are specified between M29 and G84, alarm PS0203 is issued. If
M29 is specified in a tapping cycle, alarm PS0204 is issued.
- P/Q
Specify P and Q in a block that performs drilling. If they are specified in a block that does not perform
drilling, they are not stored as modal data.
When Q0 is specified, the peck rigid tapping cycle is not performed.
- Cancel
Do not specify a G code of the 01 group (G00 to G03) and G84 in a single block. Otherwise, G84 will be
canceled.
- Tool offset
In the canned cycle mode, tool offsets are ignored.
- Subprogram call
In the canned cycle mode, specify the subprogram call command M98P_ in an independent block.
- 115 -
4. FUNCTIONS TO SIMPLIFY
PROGRAMMING PROGRAMMING B-64604EN-1/01
NOTE
When the rigid tapping canned cycle is cancelled, the S value used for rigid
tapping is also cleared (as if S0 is specified).
Accordingly, the S command specified for rigid tapping cannot be used in a
subsequent part of the program after the cancellation of the rigid tapping canned
cycle.
After canceling the rigid tapping canned cycle, specify a new S command as
required.
Explanation
- Specifying the override in the parameter
Set bit 4 (DOV) of parameter No. 5200 to 1 and set the override in parameter No. 5211.
An override from 0% to 200% in 1% steps can be set. Bit 3 (OVU) of parameter No. 5201 can be set to 1
to set an override from 0% to 2000% in 10% steps.
The difference in the spindle speed is converted to the actual override by the following calculation.
Therefore, the spindle speed at extraction may not be the same as that specified at address "J". If the
override does not fall in the range between 100% and 200%, it is assumed to be 100%.
Spindle speed at extraction (specified at J )
Override (%) = × 100
Spindle speed (specified at S )
- 116 -
4.FUNCTIONS TO SIMPLIFY
B-64604EN-1/01 PROGRAMMING PROGRAMMING
The override to be applied is determined according to the setting of parameters and that in the command
as shown in the Table 4.4.4.1 (a).
NOTE
1 Do not use a decimal point in the value specified at address "J".
If a decimal point is used, the value is assumed as follows:
Example)
When the increment system for the reference axis is IS-B
- When pocket calculator type decimal point programming is not used
The specified value is converted to the value for which the least input
increment is considered.
"J200." is assumed to be 200000 min-1.
- When pocket calculator type decimal point programming is used
The specified value is converted to the value obtained by rounding down
to an integer.
"J200." is assumed to be 200 min-1.
2 Do not use a minus sign in the value specified at address "J".
If a minus sign is used, a value outside the range between 100% to 200% is
assumed.
3 The maximum override is obtained using the following equation so that the
spindle speed to which override at extraction is applied do not exceed the
maximum used gear speed (specified in parameters Nos. 5241 to 5244). For this
reason, the obtained value is not the same as the maximum spindle speed
depending on the override.
Maximum spindle speed (specified in parameters)
Maximum override (%) = × 100
Spindle speed (specified at S )
4 When a value is specified at address "J" for specifying the spindle speed at
extraction in the rigid tapping mode, it is valid until the canned cycle is canceled.
There are the following relationships between this function and override to each operation:
(1) At cutting
When the override cancel signal is set to 0: Value specified by the override signal
When the override cancel signal is set to 1: 100%
- 117 -
4. FUNCTIONS TO SIMPLIFY
PROGRAMMING PROGRAMMING B-64604EN-1/01
(2) At extraction
- When the override cancel signal is set to 0: Value specified by the override signal
- When the override cancel signal is set to 1 and extraction override is disabled:
100%
- When the override cancel signal is set to 1 and extraction override is enabled:
Value specified for extraction override
NOTE
1 The maximum override is obtained using the following equation so that the
spindle speed to which override is applied do not exceed the maximum used
gear speed (specified in parameters Nos. 5241 to 5244). For this reason, the
obtained value is not the same as the maximum spindle speed depending on the
override.
Maximum spindle speed (specified in parameters)
Maximum override (%) = × 100
Spindle speed (specified at S )
2 Since override operation differs depending on the machine in use, refer to the
manual provided by the machine tool builder.
- 118 -
4.FUNCTIONS TO SIMPLIFY
B-64604EN-1/01 PROGRAMMING PROGRAMMING
In the descriptions below, an axis used for cutting with a grinding wheel and an axis used for grinding
with a grinding wheel are referred to as follows:
During execution of a canned grinding cycle, the following functions cannot be used:
For a depth of cut on a cutting axis and a distance of grinding on a grinding axis, the incremental system
(parameter No. 1013) for the reference axis (parameter No. 1031) is used. If 0 is set in parameter No.
1031 (reference axis), the incremental system for the first axis is used.
WARNING
The G codes for canned grinding cycles G71, G72, G73, and G74 (G72, G73,
G74, and G75 when G code system C is used) are G codes of group 01. A G
code for cancellation such as G80 used for a canned cycle for drilling is
unavailable. By specifying a G code of group 00 other than G04, modal
information such as a depth of cut is cleared but no canned grinding cycle can
be canceled. To cancel a canned grinding cycle, a G code of group 01 other
than G71, G72, G73, and G74 needs to be specified. So, when switching to
another axis move command from G71, G72, G73 or G74, for example, be sure
to specify a G code of group 01 such as G00 or G01 to cancel the canned
grinding cycle. If another axis move command is specified without canceling the
canned grinding cycle, an unpredictable operation can result because of
continued cycle operation.
NOTE
1 To use this function, the option "Grinding function A" or "Grinding function B" is
required.
2 A canned grinding cycle and multiple repetitive canned cycle cannot be used
simultaneously.
When the canned grinding cycle is enabled, the multiple repetitive canned cycle
is disabled.
- 119 -
4. FUNCTIONS TO SIMPLIFY
PROGRAMMING PROGRAMMING B-64604EN-1/01
NOTE
3 If the G code for a canned grinding cycle (G71, G72, G73, or G74) is specified,
the canned grinding cycle is executed according to the values of A, B, W, U, I,
and K preserved as modal data while the cycle is valid, even if a block specified
later specifies none of G71, G72, G73, and G74.
Example:
G71 A_ B_ W_ U_ I_ K_ H_ ;
; ← The canned grinding cycle is executed even if an empty block is specified.
%
4 When switching from a canned cycle for drilling to a canned grinding cycle,
specify G80 to cancel the canned cycle for drilling.
5 When switching from a canned grinding cycle to another axis move command,
cancel the canned cycle according to the warning above.
- 120 -
4.FUNCTIONS TO SIMPLIFY
B-64604EN-1/01 PROGRAMMING PROGRAMMING
Format
G71 A_ B_ W_ U_ I_ K_ H_ ;
A_ : First depth of cut (The cutting direction depends on the sign.)
B_ : Second depth of cut (The cutting direction depends on the sign.)
W_ : Grinding range (The grinding direction depends on the sign.)
U_ : Dwell time
I_ : Feedrate for A and B
K_ : Feedrate for W
H_ : Repetitive count (from 1 to 9999)
G71
X
W
A <1>(I) <3>(K)
<2>U <4>(I)
B
<6>(K) <5>U
Explanation
The traverse grinding cycle consists of six operations.
The operations from <1> to <6> are repeated until the repetitive count specified in address H is reached.
In the case of single block operation, the operations from <1> to <6> are executed with one cycle start
operation.
- 121 -
4. FUNCTIONS TO SIMPLIFY
PROGRAMMING PROGRAMMING B-64604EN-1/01
Limitation
- Cutting axis
As a cutting axis, the first controlled axis is used. By setting bit 0 (FXY) of parameter No. 5101 to 1, the
axis can be switched using a plane selection command (G17, G18, or G19).
- Grinding axis
Specify a grinding axis by setting an axis number for other than the cutting axis in parameter No. 5176.
Specify a grinding command in W without using an axis name. The axis name corresponding to the set
axis number can also be used for specification.
- A, B, W
The commands of A, B, and W are all incremental commands.
When none of A and B are specified or A=B=0, spark-out operation (execution of only movement in the
grinding direction) is performed.
- H
When H is not specified or H=0, the specification of H=1 is assumed.
The specification of H is valid only in the block where H is specified.
- Clear
The data A, B, W, U, I, and K in the canned cycle is modal information common to G71, G72, G73, and
G74. So, the data remains valid until new data is specified. The data is cleared when a G code of group 00
other than G04 or a G code of group 01 other than G71, G72, G73, and G74 is specified. The
specification of H is valid only in the block where H is specified.
- B code
During the canned cycle, no B code (second auxiliary function) can be specified.
NOTE
1 If no grinding axis is specified when G71 is specified, alarm PS0455, “ILLEGAL
COMMAND IN GRINDING” is issued.
2 If the specified cutting axis number and grinding axis number are the same,
alarm PS0456, “ILLEGAL PARAMETER IN GRINDING” is issued.
3 Even if G90 (absolute command) is specified while this cycle is valid, each of the
A, B, and W commands is an incremental command.
- 122 -
4.FUNCTIONS TO SIMPLIFY
B-64604EN-1/01 PROGRAMMING PROGRAMMING
Format
G72 P_ A_ B_ W_ U_ I_ K_ H_ ;
P_ : Gage number (1 to 4)
A_ : First depth of cut (The cutting direction depends on the sign.)
B_ : Second depth of cut (The cutting direction depends on the sign.)
W_ : Grinding range (The grinding direction depends on the sign.)
U_ : Dwell time
I_ : Feedrate for A and B
K_ : Feedrate for W
H_ : Repetitive count (from 1 to 9999)
G72
X
W
A <1>(I) <3>(K)
<2>U <4>(I)
B
<6>(K) <5>U
Explanation
If the multi-step skip option is specified, a gage number can be specified. The method of gage number
specification is the same as for the multi-step skip option. If the multi-step skip option is not specified, the
conventional skip signal is used.
The commands and operations other than gage number specification are the same as for G71.
- If the skip signal is input during operation <1> or <4> (movement by A or B), cutting is immediately
stopped to return to coordinate α selected as the cycle start point.
(End)
- If the skip signal is input during operation <2> or <5> (dwell), dwell operation is immediately
stopped to return to coordinate α selected as the cycle start point.
- 123 -
4. FUNCTIONS TO SIMPLIFY
PROGRAMMING PROGRAMMING B-64604EN-1/01
- If the skip signal is input during operation <3> or <6> (grinding feed), the tool returns to coordinate
α selected as the cycle start point after the end of movement over W.
Skip signal
Limitation
- Cutting axis
As a cutting axis, the first controlled axis is used. By setting bit 0 (FXY) of parameter No. 5101 to 1, the
axis can be switched using a plane selection command (G17, G18, or G19).
- Grinding axis
Specify a grinding axis by setting an axis number for other than the cutting axis in parameter No. 5177.
Specify a grinding command in W without using an axis name. The axis name corresponding to the set
axis number can also be used for specification.
- P
If a value other than P1 to P4 is specified, the skip function is disabled.
The specification of P is valid only in the block where P is specified.
- A, B, W
The commands of A, B, and W are all incremental commands.
When none of A and B are specified or A=B=0, spark-out operation (execution of only movement in the
grinding direction) is performed.
- H
When H is not specified or H=0, the specification of H=1 is assumed.
The specification of H is valid only in the block where H is specified.
- Clear
The data A, B, W, U, I, and K in the canned cycle is modal information common to G71, G72, G73, and
G74. So, the data remains valid until new data is specified. The data is cleared when a G code of group 00
other than G04 or a G code of group 01 other than G71, G72, G73, and G74 is specified. The
specification of P or H is valid only in the block where P or H is specified.
- B code
During the canned cycle, no B code (second auxiliary function) can be specified.
NOTE
1 If no grinding axis is specified when G72 is specified, alarm PS0455, “ILLEGAL
COMMAND IN GRINDING” is issued.
2 If the specified cutting axis number and grinding axis number are the same,
alarm PS0456, “ILLEGAL PARAMETER IN GRINDING” is issued.
3 Even if G90 (absolute command) is specified while this cycle is valid, each of the
A, B, and W commands is an incremental command.
- 124 -
4.FUNCTIONS TO SIMPLIFY
B-64604EN-1/01 PROGRAMMING PROGRAMMING
NOTE
4 If a value from P1 to P4 is specified without specifying the multi-step skip option,
alarm PS0370, “G31P/G04Q ERROR” is issued.
Format
G73 A_ (B_) W_ U_ K_ H_ ;
A_ : First depth of cut (The cutting direction depends on the sign.)
B_ : Second depth of cut (The cutting direction depends on the sign.)
W_ : Grinding range (The grinding direction depends on the sign.)
U_ : Dwell time
K_ : Feedrate for W
H_ : Repetitive count (from 1 to 9999)
G73
X
W
<1>U
<2>(K)
A
A(B) <3>U
<4>(K)
Explanation
The oscillation grinding cycle consists of four operations.
The operations from <1> to <4> are repeated until the repetitive count specified in address H is reached.
In the case of single block operation, the operations from <1> to <4> are executed with one cycle start
operation.
- 125 -
4. FUNCTIONS TO SIMPLIFY
PROGRAMMING PROGRAMMING B-64604EN-1/01
Limitation
- Cutting axis
As a cutting axis, the first controlled axis is used. By setting bit 0 (FXY) of parameter No. 5101 to 1,
the axis can be switched using a plane selection command (G17, G18, or G19).
- Grinding axis
Specify a grinding axis by setting an axis number for other than the cutting axis in parameter No.
5178. Specify a grinding command in W without using an axis name. The axis name corresponding to the
set axis number can also be used for specification.
- B
If B is not specified, B=A is assumed.
The specification of B is valid only in the block where B is specified.
- A, B, W
The commands of A, B, and W are all incremental commands.
When none of A and B are specified or A=B=0, spark-out operation (execution of only movement in the
grinding direction) is performed.
- H
When H is not specified or H=0, the specification of H=1 is assumed.
The specification of H is valid only in the block where H is specified.
- Clear
The data A, W, U, and K in the canned cycle is modal information common to G71, G72, G73, and G74.
So, the data remains valid until new data is specified. The data is cleared when a G code of group 00 other
than G04 or a G code of group 01 other than G71, G72, G73, and G74 is specified. The specification of B
or H is valid only in the block where B or H is specified.
- B code
During the canned cycle, no B code (second auxiliary function) can be specified.
NOTE
1 If no grinding axis is specified when G73 is specified, alarm PS0455, “ILLEGAL
COMMAND IN GRINDING” is issued.
2 If the specified cutting axis number and grinding axis number are the same,
alarm PS0456, “ILLEGAL PARAMETER IN GRINDING” is issued.
3 Even if G90 (absolute command) is specified while this cycle is valid, each of the
A, B, and W commands is an incremental command.
- 126 -
4.FUNCTIONS TO SIMPLIFY
B-64604EN-1/01 PROGRAMMING PROGRAMMING
Format
G74 P_ A_ (B_) W_ U_ K_ H_ ;
P_ : Gage number (1 to 4)
A_ : First depth of cut (The cutting direction depends on the sign.)
B_ : Second depth of cut (The cutting direction depends on the sign.)
W_ : Grinding range (The grinding direction depends on the sign.)
U_ : Dwell time
K_ : Feedrate for W
H_ : Repetitive count (from 1 to 9999)
G74
X
W
<1>U
<2>(K)
A
A(B) <3>U
<4>(K)
Explanation
If the multi-step skip option is specified, a gage number can be specified. The method of gage number
specification is the same as for the multi-step skip option. If the multi-step skip option is not specified, the
conventional skip signal is used.
The commands and operations other than gage number specification are the same as for G73.
- If the skip signal is input during operation <1> or <3> (dwell), dwell operation is immediately
stopped to return to coordinate α selected as the cycle start point.
- If the skip signal is input during operation <2> or <4> (A, B, grinding feed), the tool returns to
coordinate α selected as the cycle start point after the end of movement over W.
Skip signal Skip signal
(End)
(End)
- 127 -
4. FUNCTIONS TO SIMPLIFY
PROGRAMMING PROGRAMMING B-64604EN-1/01
Limitation
- Cutting axis
As a cutting axis, the first controlled axis is used. By setting bit 0 (FXY) of parameter No. 5101 to 1, the
axis can be switched using a plane selection command (G17, G18, or G19).
- Grinding axis
Specify a grinding axis by setting an axis number for other than the cutting axis in parameter No. 5179.
Specify a grinding command in W without using an axis name. The axis name corresponding to the set
axis number can also be used for specification.
- P
If a value other than P1 to P4 is specified, the skip function is disabled.
The specification of P is valid only in the block where P is specified.
- B
If B is not specified, B=A is assumed.
The specification of B is valid only in the block where B is specified.
- A, B, W
The commands of A, B, and W are all incremental commands.
When none of A and B are specified or A=B=0, spark-out operation (execution of only movement in the
grinding direction) is performed.
- H
When H is not specified or H=0, the specification of H=1 is assumed.
The specification of H is valid only in the block where H is specified.
- Clear
The data A, W, U, and K in the canned cycle is modal information common to G71, G72, G73, and G74.
So, the data remains valid until new data is specified. The data is cleared when a G code of group 00 other
than G04 or a G code of group 01 other than G71, G72, G73, and G74 is specified. The specification of P,
B, or H is valid only in the block where P, B, or H is specified.
- B code
During the canned cycle, no B code (second auxiliary function) can be specified.
NOTE
1 If no grinding axis is specified when G74 is specified, alarm PS0455, “ILLEGAL
COMMAND IN GRINDING” is issued.
2 If the specified cutting axis number and grinding axis number are the same,
alarm PS0456, “ILLEGAL PARAMETER IN GRINDING” is issued.
3 Even if G90 (absolute command) is specified while this cycle is valid, each of the
A, B, and W commands is an incremental command.
4 If a value from P1 to P4 is specified without specifying the multi-step skip option,
alarm PS0370, “G31P/G04Q ERROR” is issued.
- 128 -
4.FUNCTIONS TO SIMPLIFY
B-64604EN-1/01 PROGRAMMING PROGRAMMING
NOTE
When bit 2 (CCR) of parameter No.8134 is 1, this function can be used.
Format
- Chamfering
First axis on the selected plane → second axis on the selected plane
(G17 plane: XP → YP, G18 plane: ZP → XP, G19 plane: YP → ZP)
Format
G17 plane: G01 XP(U)_ J(C)±j ;
G18 plane: G01 ZP(W)_ I(C)±i ;
G19 plane: G01 YP(V)_ K(C)±k ;
Explanation Tool movement
XP(U)__ Specifies movement from point a to
YP(V)__ point b with an absolute or incremental Positive direction along
the second axis on the
ZP(W)__ programming in the figure on the right. selected plane c
XP is the address of the X-axis of the
i, j, k
three basic axes or an axis parallel to a d
45°
the X-axis. YP is the address of the 45° b
Start point
Y-axis of the three basic axes or an axis i, j, k
parallel to the Y-axis. ZP is the address Negative direction c
of the Z-axis of the three basic axes or along the second axis
on the selected plane
an axis parallel to the Z-axis.
I(C)±i Specify the distance between points b Moves from a to d and c.
J(C)±j and c in the figure shown at right with a (Positive direction along the second axis on the
K(C)±k sign following address I, J, K, or C. (Use selected plane when a plus sign is specified at I, J, K,
I, J, or K when bit 4 (CCR) of parameter or C or negative direction when a minus sign is
No. 3405 is set to 0 or C when the bit is specified at I, J, K, or C)
set to 1.)
- 129 -
4. FUNCTIONS TO SIMPLIFY
PROGRAMMING PROGRAMMING B-64604EN-1/01
- Chamfering
Second axis on the selected plane → first axis on the selected plane
(G17 plane: YP → XP, G18 plane: XP → ZP, G19 plane: ZP → YP)
Format
G17 plane: G01 YP(V)_ I(C)±i ;
G18 plane: G01 XP(U)_ K(C)±k ;
G19 plane: G01 ZP(W)_ J(C)±j ;
Explanation Tool movement
XP(U)__ Specifies movement from point a to Moves from a to d and c.
YP(V)__ point b with an absolute or incremental (Positive direction along the first axis on the selected
ZP(W)__ programming in the figure on the right. plane when a plus sign is specified at I, J, K, or C or
XP is the address of the X-axis of the negative direction when a minus sign is specified at I,
three basic axes or an axis parallel to J, K, or C)
the X-axis. YP is the address of the
Y-axis of the three basic axes or an axis a Start point
parallel to the Y-axis. ZP is the address
of the Z-axis of the three basic axes or
an axis parallel to the Z-axis.
I(C)±i Specify the distance between points b
d
J(C)±j and c in the figure shown at right with a
K(C)±k sign following address I, J, K, or C. (Use 45° 45°
I, J, or K when bit 4 (CCR) of parameter
No. 3405 is set to 0 or C when the bit is Negative direction c b c Positive direction
along the first axis on i, j, k i, j, k along the first axis on
set to 1.) the selected plane the selected plane
- Corner R
First axis on the selected plane → second axis on the selected plane
(G17 plane: XP → YP, G18 plane: ZP → XP, G19 plane: YP → ZP)
Format
G17 plane: G01 XP(U)_ R±r ;
G18 plane: G01 ZP(W)_ R±r ;
G19 plane: G01 YP(V)_ R±r ;
Explanation Tool movement
XP(U)__ Specifies movement from point a to Positive direction along
the second axis on the
YP(V)__ point b with an absolute or incremental selected plane c
ZP(W)__ programming in the figure on the right. r
XP is the address of the X-axis of the
a d
three basic axes or an axis parallel to
b
the X-axis. YP is the address of the Start point
Y-axis of the three basic axes or an axis
parallel to the Y-axis. ZP is the address r
c
of the Z-axis of the three basic axes or Negative direction along
the second axis on the
an axis parallel to the Z-axis. selected plane
R±r Specify the radius of the arc connecting
Moves from a to d and c.
points d and c in the figure shown at
(Positive direction along the second axis on the
right with a sign following address R.
selected plane when +r is specified at R or negative
direction when -r is specified at R)
- 130 -
4.FUNCTIONS TO SIMPLIFY
B-64604EN-1/01 PROGRAMMING PROGRAMMING
- Corner R
Second axis on the selected plane → first axis on the selected plane
(G17 plane: YP → XP, G18 plane: XP → ZP, G19 plane: ZP → YP)
Format
G17 plane: G01 YP(V)_ R±r ;
G18 plane: G01 XP(U)_ R±r ;
G19 plane: G01 ZP(W)_ R±r ;
Explanation Tool movement
XP(U)__ Specifies movement from point a to Moves from a to d and c.
YP(V)__ point b with an absolute or incremental (Positive direction along the first axis on the selected
ZP(W)__ programming in the figure on the right. plane when +r is specified at R or negative direction
XP is the address of the X-axis of the when -r is specified at R)
three basic axes or an axis parallel to a Start point
the X-axis. YP is the address of the
Y-axis of the three basic axes or an axis
parallel to the Y-axis. ZP is the address
of the Z-axis of the three basic axes or
an axis parallel to the Z-axis. d
r r
R±r Specify the radius of the arc connecting
points d and c in the figure shown at
right with a sign following address R. Negative direction c b c Positive direction
along the first axis on along the first axis on
the selected plane the selected plane
Explanation
By G01 specified for chamfering or corner R, the tool must be moved only along one of the two axes on
the selected plane. The command in the next block must move the tool only along the other axis on the
selected plane.
Example:
When the A-axis is set as an axis parallel to the basic X-axis (by setting parameter No. 1022 to 5),
the following program performs chamfering between cutting feed along the A-axis and that along
the Z-axis:
G18 A0 Z0
G00 A100.0 Z100.0
G01 A200.0 F100 K30.0
Z200.0
The following program causes an alarm. (Because chamfering is specified in the block to move the
tool along the X-axis, which is not on the selected plane)
G18 A0 Z0
G00 A100.0 Z100.0
G01 X200.0 F100 K30.0
Z200.0
The following program also causes an alarm. (Because the block next to the chamfering command
moves the tool along the X-axis, which is not on the selected plane)
G18 A0 Z0
G00 A100.0 Z100.0
G01 Z200.0 F100 I30.0
X200.0
A radius value is specified at I, J, K, R, and C.
In an incremental programming, use point b in the figure in "Format" as the start point in the block next to
a chamfering or corner R block. That is, specify the distance from point b. Do not specify the distance
from point c.
- 131 -
4. FUNCTIONS TO SIMPLIFY
PROGRAMMING PROGRAMMING B-64604EN-1/01
Example
X
N001 G18 ;
N002 G00 X268.0 Z530.0 ;
530.0 N003 G01 Z270.0 R6.0 ;
N004 X860.0 K-3.0 ;
270.0 N005 Z0 ;
N004
End point K3.0
N003
R6
N002
Cutting start point
Z
φ860
φ268
Limitation
- Alarms
In the following cases, an alarm is issued:
1) Chamfering or corner R is specified in a block for threading (alarm PS0050, “CHF/CNR NOT
ALLOWED IN THRD BLK”).
2) G01 is not specified in the block next to the G01 block in which chamfering or corner R is specified
(alarm PS0051, “MISSING MOVE AFTER CNR/CHF” or PS0052, “CODE IS NOT G01 AFTER
CHF/CNR”).
3) An axis which is not on the selected plane is specified as a move axis in the block in which
chamfering or corner R is specified or the next block (alarm PS0051 or PS0052).
4) A plane selection command (G17, G18, or G19) is specified in the block next to the block in which
chamfering or corner R is specified (alarm PS0051).
5) When bit 4 (CCR) of parameter No. 3405 is set to 0 (to specify chamfering at I, J, or K), two or
more of I, J, K, and R are specified in G01 (alarm PS0053, “TOO MANY ADDRESS
COMMANDS”).
6) Chamfering or corner R is specified in the G01 block to move the tool along more than one axis
(alarm PS0054, “NO TAPER ALLOWED AFTER CHF/CNR”).
7) The travel distance along an axis specified in the block in which chamfering or corner R is specified
is smaller than the amount of chamfering or corner R (alarm PS0055, “MISSING MOVE VALUE
IN CHF/CNR”). (See the Fig. 4.6 (a).)
G18 The solid line indicates
G01 W30.0 F100.0 I50.0 ; the tool path when
G01 U100.0 ; chamfering is not
performed.
Chamfering block to
be inserted
50.0
x
30.0 (smaller than 50.0)
z
50.0
- 132 -
4.FUNCTIONS TO SIMPLIFY
B-64604EN-1/01 PROGRAMMING PROGRAMMING
8) An invalid combination of a move axis and I, J, or K is specified for chamfering (alarm PS0306,
“MISMATCH AXIS WITH CNR/CHF”).
9) An invalid sign is specified at I, J, K, R, or C (chamfering or corner R in the direction opposite to the
movement in the next block is specified) (alarm PS0051). (See the Fig. 4.6 (b).)
Chamfering block to
G18 be inserted (positive X
G01 W100.0 F100.0 I50.0 ; direction)
G01 U-100.0 ;
1. If the amount of inner chamfering or corner R is too small as compared with compensation and
cutting is generated, alarm PS0041, “INTERFERENCE IN CUTTER COMPENSATION” is issued.
(See the Fig. 4.6 (c).)
(The solid line indicates the programmed path after chamfering. The
dotted line indicates the tool center path or tool nose radius center path.)
Fig. 4.6 (c)
2. A function is available which intentionally changes the compensation direction by specifying the I, J,
or K command in the G01 block in the cutter or tool nose radius compensation mode (see the
explanations of cutter or tool nose radius compensation). To use this function when the chamfering
and corner R function is enabled (bit 2 (CCR) of parameter No. 8134 is set to 1), set bit 4 (CCR) of
parameter No. 3405 to 1 so that the I, J, and K commands are not used as chamfering commands.
Operation to be performed under each condition is explained below.
(1) When the chamfering and corner R function is not used (bit 2 (CCR) of parameter No.8134 =
0)
In the G01 block in the cutter or tool nose radius compensation mode, the cutter or tool nose
radius compensation direction can be specified at address I, J, or K.
No chamfering is performed.
- 133 -
4. FUNCTIONS TO SIMPLIFY
PROGRAMMING PROGRAMMING B-64604EN-1/01
(2) When the chamfering and corner R function is used (bit 2 (CCR) of parameter No.8134 = 1)
(2-1) When bit 4 (CCR) of parameter No. 3405 is set to 0
In the G01 block in the cutter or tool nose radius compensation mode, chamfering can be
specified at address I, J, or K. Corner R can also be specified at address R.
The cutter or tool nose radius compensation direction cannot be specified.
(2-2) When bit 4 (CCR) of parameter No. 3405 is set to 1
In the G01 block in the cutter or tool nose radius compensation mode, the cutter or tool
nose radius compensation direction can be specified at address I, J, or K.
Chamfering or corner R can also be specified at address C or R.
- 134 -
4.FUNCTIONS TO SIMPLIFY
B-64604EN-1/01 PROGRAMMING PROGRAMMING
Format
G68 : Double turret mirror image on
G69 : Mirror image cancel
Explanation
Mirror image can be applied to the X-axis of the three basic axes that is set by parameter No. 1022 with
the G code command.
When G68 is designated, the coordinate system is shifted to the double turret side, and the X-axis sign is
reversed from the programmed command to perform symmetrical cutting. This function is called the
mirror image for double turret.
To use this function, set the distance between the two tool posts to a parameter No. 1290.
Use this command in the independent block, do not use other commands in the same line.
Example
- For turning
60
120
<1> Z
φ80 φ40
180
φ120
<2> 120
Tool post B
- 135 -
4. FUNCTIONS TO SIMPLIFY
PROGRAMMING PROGRAMMING B-64604EN-1/01
NOTE
A diameter value is specified for the X-axis.
Limitation
NOTE
1 When the G68 command based on this function is enabled, the X-axis
coordinate value that can be read with the custom macro system variables
#5041 and up or #100101 and up (current specified position (in the workpiece
coordinate system)) is a position with mirror image applied.
2 This function cannot be used together with the balance cut function. The
operation depends on the combination of the systems as follows:
System in which this function is used
- One-path system
System in which this function does not operate
- System with two paths
NOTE
When bit 2 (NDD) of parameter No.8137 is 0, this function can be used.
Format
Examples of command formats for the G18 plane (ZX plane) are shown. This function can be specified in
the following formats also for the G17 plane (XY plane) and G19 plane (YZ plane).
The following formats are changed as follows:
For the G17 plane: Z → X, X → Y
For the G19 plane: Z → Y, X → Z
X
(X2 , Z2)
1 X2_ (Z2_), A_ ; A
(X1 , Z1)
Z
- 136 -
4.FUNCTIONS TO SIMPLIFY
B-64604EN-1/01 PROGRAMMING PROGRAMMING
X
(X3 , Z3)
A2
,A1_ ;
2 A1
X3_ Z3_, A2_ ; (X2 , Z2)
(X1 , Z1)
Z
X
(X3 , Z3)
X2_ Z2_, R1_ ;
A2
X3_ Z3_ ; R1
3 or
,A1_, R1_ ; A1
(X2 , Z2)
X3_ Z3_, A2_ ;
(X1 , Z1)
Z
X
(X3 , Z3)
X2_ Z2_, C1_ ; A2
X3_ Z3_ ;
4 or
,A1_, C1_ ; C1 A1
X3_ Z3_, A2_ ; (X2 , Z2)
(X1 , Z1)
Z
X
(X4 , Z4)
(X3 , Z3)
X2_ Z2_ , R1_ ;
X3_ Z3_ , R2_ ; A2
R2
X4_ Z4_ ;
5 or R1
,A1_, R1_ ;
A1
X3_ Z3_, A2_, R2_ ; (X2 , Z2)
X4_ Z4_ ;
(X1 , Z1)
Z
X
C2
X2_ Z2_ , C1_ ;
X3_ Z3_ , C2_ ; (X4 , Z4) (X3 , Z3)
X4_ Z4_ ; A2
6 or
,A1_, R1_ ;
(X2 , Z2)
X3_ Z3_, A2_, C2_ ;
C1 A1
X4_ Z4_ ;
(X1 , Z1)
Z
- 137 -
4. FUNCTIONS TO SIMPLIFY
PROGRAMMING PROGRAMMING B-64604EN-1/01
X
C2
X2_ Z2_ , R1_ ; (X3 , Z3)
X3_ Z3_ , C2_ ; (X4 , Z4)
X4_ Z4_ ; A2
7 or
,A1_, R1_ ; R1
X3_ Z3_, A2_, C2_ ; A1
X4_ Z4_ ; (X2 , Z2)
(X1 , Z1)
Z
X
(X4 , Z4)
X2_ Z2_ , C1_ ; (X3 , Z3)
X3_ Z3_ , R2_ ;
X4_ Z4_ ; A2
8 or R2
,A1_, C1_ ;
(X2 , Z2)
X3_ Z3_, A2_, R2_ ;
C1 A1
X4_ Z4_ ;
(X1 , Z1)
Z
Explanation
A program for machining along the curve shown in Fig. 4.8 (a) is as follows :
+X
X (x 2) Z (z2) , C (c 1) ; a3
X (x 3) Z (z3) , R (r2) ;
X (x 4) Z (z4) ; (x3, z3) +Z
(x4, z4)
or r2 a2
,A (a1) , C (c 1) ;
X (x 3) Z (z3) , A (a2) , R (r 2) ;
X (x 4) Z (z4) ; (x2, z2)
c1 a1
(x1, z 1)
Start point
- 138 -
4.FUNCTIONS TO SIMPLIFY
B-64604EN-1/01 PROGRAMMING PROGRAMMING
+X
A
A’
+Z
Limitation
NOTE
1 Direct drawing dimension programming commands are valid only during memory
operation.
2 The following G codes are not applicable to the same block as commanded by
direct input of drawing dimensions or between blocks of direct input of drawing
dimensions which define sequential figures.
(a) G codes other than G04 in group 00
(b) G codes other than G00, G01, and G33 in group 01
(c) G codes in group 10 (canned cycle for drilling)
(d) G codes in group 16 (plane selection)
(e) G22 and G23
3 Corner R cannot be inserted into a threading block.
4 When the chamfering and corner R function is enabled (bit 2 (CCR) of parameter
No. 8134 is set to 1), both functions cannot be used simultaneously. When bit 0
(CRD) of parameter No. 3453 is set to 1, direct drawing dimension programming
is enabled. (At this time, chamfering and corner R are disabled.)
5 When the end point of the previous block is determined in the next block
according to sequential commands of direct drawing dimension programming
during single block operation, the machine does not stop in the single block stop
mode, but stop in the feed hold stop mode at the end point of the previous block.
6 The angle allowance in calculating the point of intersection in the program below
is ±1°.
(Because the travel distance to be obtained in this calculation is too large.)
(a) X_ ,A_ ; (If a value within 0°±1° or 180°±1° is specified for the angle
instruction A, the alarm PS0057, “NO SOLUTION OF BLOCK END” occurs.)
(b) Z_ ,A_ ; (If a value within 90°±1° or 270°±1° is specified for the angle
instruction A, the alarm PS0057 occurs.)
7 An alarm PS0058, “END POINT NOT FOUND” occurs if the angle made by the 2
lines is within ±1° when calculating the point of intersection.
8 Chamfering or corner R is ignored if the angle made by the 2 lines is within ±1°.
- 139 -
4. FUNCTIONS TO SIMPLIFY
PROGRAMMING PROGRAMMING B-64604EN-1/01
NOTE
9 Both a dimensional command (absolute programming) and angle instruction
must be specified in the block following a block in which only the angle
instruction is specified.
(Example)
N1 X_ ,A_ ,R_ ;
N2 ,A_ ;
N3 X_ Z_ ,A_ ;
In addition to the dimensional command, angle command must be specified in
block N3. If the angle command is not specified, alarm PS0056, “NO END
POINT & ANGLE IN CHF/CNR” is issued. If the coordinates are not specified
with an absolute programming, alarm PS0312, “ILLEGAL COMMAND IN
DIRECT DRAWING DIMENSIONS PROGRAMMING” is issued.
10 In the tool nose radius compensation mode, a block in which only the angle
command is specified in direct drawing dimension programming is assumed to
be a block with no move command. For details of compensation when sequential
blocks with no move command are specified, see the explanation of tool nose
radius compensation.
11 If two or more blocks with no move command are specified between sequential
commands of direct drawing dimension programming, alarm PS0312 is issued.
12 When bit 4 (CCR) of parameter No. 3405 is set to 1, address A in the G76
(multiple threading cycle) block specifies the tool nose angle.
When A or C is used as an axis name, it cannot be used in the angle or
chamfering command in direct drawing dimension programming. Use ,A_ or ,C_
(when bit 4 (CCR) of parameter No. 3405 is set to 0).
13 In a multiple repetitive canned cycle, in blocks with sequence numbers between
those specified at P and Q, a program using direct drawing dimension
programming can be used. The block with the last sequence number specified at
Q must not be an intermediate block of these specified blocks.
14 If a minus value is commanded as a chamfering value / corner R value, alarm
PS0055, “MISSING MOVE VALUE IN CHF/CNR” is issued. When bit 7 (CRC) of
parameter No. 3458 is set to 1, alarm is not issued even if a minus value is
commanded as a chamfering value / corner R value and a minus value is
converted to a plus value.
- 140 -
4.FUNCTIONS TO SIMPLIFY
B-64604EN-1/01 PROGRAMMING PROGRAMMING
Example
X
R20
R15 R6
φ100
φ300
φ60
10°
1 × 45°
30
180
22°
- 141 -
5.COMPENSATION FUNCTION PROGRAMMING B-64604EN-1/01
5 COMPENSATION FUNCTION
Chapter 5, "COMPENSATION FUNCTION", consists of the following sections:
Standard tool
Actual tool
Offset amount
on X axis
Offset amount
on Z axis
NOTE
Tool geometry offset and tool wear offset are valid, when the bit 6 (NGW) of
parameter No. 8136 is 0.
- 142 -
B-64604EN-1/01 PROGRAMMING 5.COMPENSATION FUNCTION
X axis geometry
offset value
Offset amount
Actual tool on X axis
X axis wear offset value
Imaginary tool
Fig. 5.1.1 (a) If tool geometry offset and tool wear offset are distinguished
from each other (left) and if they are not (right)
Set the distance from tool nose to the point on the program ( tool nose of standard tool, or tool mounting
position ) to a tool geometry offset value.
Generally, a sign of tool wear offset value is the opposite to a sign of tool geometry offset value. In the
example of the above figure, the geometry offset value is a positive and the wear offset value is a
negative.
*1 The maximum number of digits of a T code can be specified using parameter No. 3032. (1 to 8
digits)
*2 When parameter No. 5028 is set to 0, the number of digits of a T code used for offset number
specification depends on the number of tool offsets.
Example)
When the number of tool offsets is 1 to 9: Lower one digit
When the number of tool offsets is 10 to 99: Lower two digits
- 143 -
5.COMPENSATION FUNCTION PROGRAMMING B-64604EN-1/01
When the number of tool offsets is 100 to 999: Lower three digits
5.1.5 Offset
Explanation
- Offset methods
Two methods are available to geometry offset and wear compensation, offset with tool movement and
compensation with coordinate shift. Which offset method to select can be specified with bit 2 (LWT) and
bit 4 (LGT) of parameter No. 5002. When tool geometry and wear compensation is disabled (bit 6
(NGW) of parameter No. 8136 is set to 1), offset with tool movement is assumed unconditionally.
Parameter
Bit 6(NGW) of
Compensation element LWT=0 LWT=1 LWT=0 LWT=1
No.8136
LGT=0 LGT=0 LGT=1 LGT=1
Wear and geometry not
1 Tool movement
distinguished
Wear compensation Tool movement Coordinate shift Tool movement Coordinate shift
0
Geometry compensation Coordinate shift Coordinate shift Tool movement Tool movement
Programmed path
NOTE
1 When G50 X_Z_T_ ; is specified, the tool is not moved.
The coordinate system in which the coordinate value of the tool position (X,Z) is
set. The tool position is obtained by subtracting the offset value corresponding to
the tool offset number specified in the T code.
- 144 -
B-64604EN-1/01 PROGRAMMING 5.COMPENSATION FUNCTION
NOTE
2 The G codes in the 00 group other than G50 must not be specified in the same
block as that containing a T code. If one of G28, G29, G30, and G53 is specified
in the same block as that containing a T code, alarm PS0245, “T-CODE NOT
ALLOWED IN THIS BLOCK”, is issued.
Offset method Bit 6 (LWM) of parameter No. 5002=0 Bit 6 (LWM) of parameter No. 5002=1
Tool movement When a T code is specified When an axial movement is specified
When a T code is specified
Coordinate shift
(Note that geometry offset can be canceled only if bit 5 (LGC) of parameter No. 5002 = 1.)
<1> The power to the CNC is turned off and turned back on
<2> The reset button on the MDI unit is pressed
<3> A reset signal is input from the machine to the CNC
In cases <2> and <3> above, it is possible to select a cancel operation using bit 3 (LVC) of parameter No.
5006 and bit 7 (TGC) of parameter No. 5003.
Parameter
Offset method LVC=0 LVC=1 LVC=0 LVC=1
TGC=0 TGC=0 TGC=1 TGC=1
Wear offset Canceled. Canceled.
Tool
Not canceled. (When axial movement is Not canceled. (When axial movement
movement Geometry offset
specified) is specified)
Coordinate Wear offset Not canceled. Canceled. Not canceled. Canceled.
shift Geometry offset Not canceled. Not canceled. Canceled. Canceled.
- 145 -
5.COMPENSATION FUNCTION PROGRAMMING B-64604EN-1/01
Example
N1 X60.0 Z50.0 T0202 ; Creates the offset vector corresponding to tool offset number 02.
N2 Z100.0 ;
N3 X200.0 Z150.0 T0200 ; Cancels the offset vector with offset number 0.
N2
Limitation
- Helical interpolation (G02, G03)
Tool offset cannot be specified in a block in which helical interpolation is used.
- 146 -
B-64604EN-1/01 PROGRAMMING 5.COMPENSATION FUNCTION
When the command or operation is When the next axial movement command
specified is specified
Tool movement The tool offset value is temporarily The tool offset value is reflected.
canceled.
Coordinate shift Coordinates with the tool offset value Coordinates with the tool offset value
reflected are assumed. reflected are assumed.
NOTE
When bit 1 (YOF) of parameter No.8132 is 1, this function can be used.
Explanation
Y axis offset results in the same operation as tool offset. For an explanation of the operation, related
parameters, and the like, refer to the item “Tool Offset.”
- 147 -
5.COMPENSATION FUNCTION PROGRAMMING B-64604EN-1/01
NOTE
1 This function is an optional function.
To use this function, this option and "Tool geometry offset and Tool wear offset"
are required. "Tool geometry offset and Tool wear offset" can be used, when bit
6 (NGW) of parameter No.8136 is 0.
2 When the "Y-axis offset" is enabled (bit 1 (YOF) of parameter No.8132 is 1), the
"2nd Geometry tool offset" for Y axis can be used.
Format
• If bit 1 (LGN) of parameter No. 5002 = 1
M (M code that enables second geometry tool offset) ;
T ;
Explanation
- Specification method
Offset using the second geometry tool offset is performed with a program command.
Specify the second geometry tool offset with a T code command, and using the second geometry tool
offset signal G2SLC, specify whether to set the offset value of the specified tool geometry offset number
to the first geometry tool offset only or to the first geometry tool offset plus the second geometry tool
offset. If using the first geometry tool offset plus the second geometry tool offset, specify the axis to
which the second geometry tool offset is to be applied, using the appropriate one of the second geometry
tool offset axis select signal G2X, G2Z, and G2Y.
Generally, before a T code command, specify the M code to enable the second geometry tool offset. For
details, refer to the manual supplied by the machine tool builder. The same number as the first geometry
tool offset number is always selected as the second geometry tool offset number.
During execution, the tool offset value for each axis is either of the following:
• First geometry tool offset value + tool wear offset value
• First geometry tool offset value + second geometry tool offset value + tool wear offset value
- 148 -
B-64604EN-1/01 PROGRAMMING 5.COMPENSATION FUNCTION
Example)
• The code is a 4-digit code. (The number of digits of a T code is specified with parameter No. 3032.)
• The offset type is tool movement (bit 4 (LGT) of parameter No. 5002 = 1).
• The lower two digits of the T code is the tool geometry offset number (parameter No. 5028 = 2).
• Offset is performed when the T code block is executed (bit 6 (LWM) of parameter No. 5002 = 0).
• The X axis data for first geometry tool offset number 1 is 1.000.
• The X axis data for second geometry tool offset number 1 is 10.000.
• The tool geometry offset number is specified with the tool selection number (bit 1 (LGN) of
parameter No. 5002 = 1).
• Signals G2SLC = '1', G2X = '1', and G2Z = G2Y = '0'
If T0102 is specified under the above conditions, the upper two digits 01 of the T code cause the first
and second geometry tool offset numbers 1 to be selected, so that the absolute and machine
coordinates will be 11.000 on the X axis only.
- Offset data
The data for the second geometry tool offset can be set for each path. The number of items of the data can
be set with parameter No. 5024. The data remains stored even after the power is turned off.
If the data is to be made common to paths, use the common memory between each path.
Example
X
T01
T11 to T16/X
(second) : 120
T01/Z (first) : 5
Z
O
T13
T11 - T16
T12
Second path - - -
(linear turret)
T11/Z (second) : 10
T12/Z (second) : - 30
T13/Z (second) : - 70
Fig. 5.1.7 (a) Example of the application of the second geometry tool offset
- 149 -
5.COMPENSATION FUNCTION PROGRAMMING B-64604EN-1/01
In the machine configuration shown in the Fig. 5.1.7 (a), for the offset data for the tool mounted to the
first path (standard turret), set the offset data of the tool itself as the first geometry tool offset data. (The
second geometry tool offset data is 0.) For the offset data for the tool mounted to the second path (linear
turret), set the offset data of the tool itself as the first geometry tool offset data and the offset data from
the workpiece origin at the mounting position as the second geometry tool offset data. Usually, the offset
data of the tool itself is measured separately from the offset data at the mounting position, these data can
be set separately by using the second geometry tool offset.
First geometry tool offset Second geometry tool offset
No. X axis Z axis No. X axis Z axis
01 20.000 5.000 01 0.000 0.000
: : : : : :
10 25.000 8.000 10 0.000 0.000
11 -20.000 5.000 11 120.000 10.000
12 -10.000 3.000 12 120.000 -30.000
13 -15.000 0.000 13 120.000 -70.000
: : : : : :
16 -18.000 7.000 16 120.000 -190.000
NOTE
This function is an optional function.
Explanation
The operation of 4th/5th axis offset is the same as the operation of tool offset. For the operation, see
Section 5.1, "TOOL OFFSET".
- 150 -
B-64604EN-1/01 PROGRAMMING 5.COMPENSATION FUNCTION
Format
G10 P_ X_ Y_ Z_ R_ Q_ E_ F_ ;
or
G10 P_ U_ V_ W_ C_ Q_ E_ F_;
P : Offset number
0 : Specifies a workpiece coordinate system shift value.
1 to 200 : Specifies a tool wear offset value.
10000+(1 to 200) : Specifies a tool geometry offset value, with a number (1 to 200)
representing an offset number.
X : X axis offset value (absolute)
Y : Y axis offset value (absolute)
Z : Z axis offset value (absolute)
U : X axis offset value (incremental)
V : Y axis offset value (incremental)
W : Z axis offset value (incremental)
R : Tool nose radius compensation value (absolute)
C : Tool nose radius compensation value (incremental)
Q : Virtual tool nose number
E : 4th axis offset value (absolute)
F : 5th axis offset value (absolute)
- Explanation
As in the G10 format above, address E for inputting a 4th axis offset value and address F for inputting a
5th axis offset value allow absolute values only to be input.
NOTE
1 When compared with the conventional G10 format for changing tool offset
values, address E for specifying a 4th axis offset value and address F for
specifying a 5th axis offset value are newly added in the format above.
2 When a program based on the G10 format above is executed, only those offset
values that correspond to programmed axis addresses and offset numbers are
rewritten.
Example) When parameters are set to follow, the command address 'A' and 'B' are used for setting of a
tool offset.
- Parameter No.5044 is set to 4 (4th axis offset is the 4th axis)
- Parameter No.5045 is set to 5 (5th axis offset is the 5th axis)
- Parameter No.1020 (4th axis ,5th axis) = 65, 66 (Address name of 4th /5th axis offset is 'A' and
'B')
- Bit 2 (OFN) of No.11403 is set to 1 (Address depend on parameter No.1020)
- 151 -
5.COMPENSATION FUNCTION PROGRAMMING B-64604EN-1/01
%
G10 P01 X_ Z_ A_ B_
G10 P02 X_ Z_ A_ B_
...
G10 P__ X_ Z_ A_ B_
%
A_ : Tool compensation data (4th axis offset value in the example).
B_ : Tool compensation data (5th axis offset value in the example).
The other addresses are the same as for the tool compensation amount.
NOTE
1 The axis name that can be used as a specification address is only 'A', and 'B'.
If specification address 'A' or 'B' is used, the address 'V' (incremental command
of Y-axis offset) cannot be used.
2 If the either of following is set, the default specification addresses 'Y', 'E', and 'F'
are used.
- Parameter No.1020 is set to axis name other than 'A(65)' or 'B(66)'.
- An extended axis name is used.
3 When bit 2 (OFN) of parameter No.11403 is set to 1, conventional offset data
cannot be read. If conventional offset data is read, set 0 to bit 2 (OFN) of
parameter No.11403.
Limitation
1. This function is a software option.
2. This function supports the common memory between each path.
3. This function does not support direct input/counter input of tool offset values.
4. This function does not support offset value writing using a custom macro variable.
5. This function does not support the PMC window function.
However, this function supports writing/reading of 4th/5th axis offset values to and from the C
Language Executor.
6. This function does not support external data input. So, no 4th/5th axis offset value can be modified
with a PMC ladder.
7. This function does not support the second geometry tool offset function.
8. This function does not support the tool management function.
9. This function does not support the wrong operation prevention function.
- 152 -
B-64604EN-1/01 PROGRAMMING 5.COMPENSATION FUNCTION
NOTE
When bit 7 (NCR) of parameter No.8136 is 0, "Tool nose radius compensation"
can be used.
Insufficient
Tool nose
depth of
cutting
A
Start point
Start point
When programmed using the tool When programmed using the
nose center imaginary tool nose
Fig. 5.2.1 (a) Tool nose radius center and imaginary tool nose
- 153 -
5.COMPENSATION FUNCTION PROGRAMMING B-64604EN-1/01
CAUTION
In a machine with reference positions, a standard position like the turret center
can be placed over the start point. The distance from this standard position to
the nose radius center or the imaginary tool nose is set as the tool offset value.
Setting the distance from the standard position to the tool nose radius center as
the offset value is the same as placing the tool nose radius center over the start
point, while setting the distance from the standard position to the imaginary tool
nose is the same as placing the imaginary tool nose over the standard position.
To set the offset value, it is usually easier to measure the distance from the
standard position to the imaginary tool nose than from the standard position to
the tool nose radius center.
OFX OFX
(Tool offset (Tool offset
in X axis) in X axis)
OFZ OFZ
(Tool offset (Tool offset
in Z axis) in Z axis)
Setting the distance from the standard position Setting the distance from the standard position to
to the tool nose center as the tool offset value the imaginary tool nose center as the tool offset
value
The start position is placed over the tool nose center The start position is placed over the imaginary tool
nose
Fig. 5.2.1 (b) Tool offset value when the turret center is placed over the start point
Unless tool nose radius compensation is If tool nose radius compensation is used, accurate
performed, the tool nose center path is the cutting will be performed.
same as the programmed path.
Start- Start-
Tool nose center path up Tool nose center path up
Fig. 5.2.1 (c) Tool path when programming using the tool nose center
Without tool nose radius compensation, the With tool nose radius compensation, accurate
tool nose radius center path is the same as cutting will be performed.
the programmed path.
Imaginary tool
Imaginary tool nose path
nose path Start-
Start-
up up
Fig. 5.2.1 (d) Tool path when programming using the imaginary tool nose
- 154 -
B-64604EN-1/01 PROGRAMMING 5.COMPENSATION FUNCTION
G18
Z
Y
G17
X
Z
G19
Y Imaginary tool nose number 1 Imaginary tool nose number 2
Imaginary tool nose numbers 0 and 9 are used when the tool nose center coincides with the start point. Set
imaginary tool nose number to address OFT for each offset number.
Bit 7 (WNP) of parameter No. 5002 is used to determine whether the tool geometry offset number or the
tool wear offset number specifies the direction of the virtual tool nose for tool nose radius compensation.
- 155 -
5.COMPENSATION FUNCTION PROGRAMMING B-64604EN-1/01
When the tool geometry compensation and tool wear compensation is disabled (bit 6 (NGW) of parameter
No. 8136 is set to 1), the contents displayed on the tool offset screen become as Table 5.2.3 (a):
When the tool geometry compensation and tool wear compensation is enabled (bit 6 (NGW) of parameter
No. 8136 is set to 0), the contents displayed on the tool offset screen become as Table 5.2.3 (b) and Table
5.2.3 (c):
- 156 -
B-64604EN-1/01 PROGRAMMING 5.COMPENSATION FUNCTION
NOTE
When the geometry offset number is made common to the tool selection by the
bit 1 (LGN) of parameter No. 5002 setting and a T code for which the geometry
offset and wear offset number differ from each other is designated, the imaginary
tool nose direction specified by the geometry offset number is valid.
Example) T0102
OFR=OFGR01+OFWR02
OFT=OFT01
By setting bit 7 (WNP) of parameter No. 5002 appropriately, the imaginary tool
nose direction specified with the wear offset number can be made valid.
- 157 -
5.COMPENSATION FUNCTION PROGRAMMING B-64604EN-1/01
G42 X axis
Z axis
Workpiece
G41
G40
The workpiece position can be changed by setting the coordinate system as shown below.
Z axis
G41 (the workpiece is on
the left side)
X axis
Workpiece
- 158 -
B-64604EN-1/01 PROGRAMMING 5.COMPENSATION FUNCTION
CAUTION
If the sign of the compensation value is changed from plus to minus and vice
versa, the offset vector of tool nose radius compensation is reversed, but the
direction of the imaginary tool tip does not change. For a use in which the
imaginary tool tip is adjusted to the starting point, therefore, do not change the
sign of the compensation value for the assumed program.
Explanation
- Tool movement when the workpiece position does not change
When the tool is moving, the tool nose maintains contact with the workpiece.
(G42) (G42)
(G42) (G42)
(G42) (G42)
Enlarged
diagram
Fig. 5.2.4 (c) Tool movement when the workpiece position does not change
- Tool movement when the workpiece position changes
The workpiece position against the tool changes at the corner of the programmed path as shown in the Fig.
5.2.4 (d).
A
C Workpiece
position G41
G42
Workpiece B
position
A B C
G41 G42
Fig. 5.2.4 (d) Tool movement when the workpiece position changes
Although the workpiece does not exist on the right side of the programmed path in the above case, the
existence of the workpiece is assumed in the movement from A to B. The workpiece position must not be
changed in the block next to the start-up block. In the above example, if the block specifying motion from
A to B were the start-up block, the tool path would not be the same as the one shown.
- Start-up
The block in which the mode changes to G41 or G42 from G40 is called the start-up block.
G40 _ ;
G41 _ ; (Start-up block)
- 159 -
5.COMPENSATION FUNCTION PROGRAMMING B-64604EN-1/01
Transient tool movements for offset are performed in the start-up block. In the block after the start-up
block, the tool nose center is positioned Vertically to the programmed path of that block at the start point.
G40
(G42)
G42 (Start-up)
- Offset cancel
The block in which the mode changes to G40 from G41 or G42 is called the offset cancel block.
G41 _ ;
G40 _ ; (Offset cancel block)
The tool nose center moves to a position vertical to the programmed path in the block before the cancel
block.
The tool is positioned at the end position in the offset cancel block (G40) as shown below.
End position
G40
(G42)
N7
N6 N8
Programmed path
- 160 -
B-64604EN-1/01 PROGRAMMING 5.COMPENSATION FUNCTION
(G42)
(G42)
G42
In the block that first changes from G40 to G41/G42, the above positioning of the tool nose center is not
performed.
- Tool movement when the moving direction of the tool in a block which
includes a G40 (offset cancel) command is different from the direction of the
workpiece
When you wish to retract the tool in the direction specified by X(U) and Z(W) canceling the tool nose
radius compensation at the end of machining the first block in the Fig. 5.2.4 (i), specify the following :
G40 X(U) _ Z(W) _ I _ K _ ;
where I and K are the direction of the workpiece in the next block, which is specified in incremental
mode.
I, K
Moving direction of tool
U, W
G40
(G42)
G40 U_ W_ I_ K_ ;
Fig. 5.2.4 (i) If I and K are specified in the same block as G40
Thus, this prevents the tool from overcutting, as shown in Fig. 5.2.4 (j).
G40
(G42)
G40 U_ W_ ;
Fig. 5.2.4 (j) Case in which overcutting occurs in the same block as G40
The workpiece position specified by addresses I and K is the same as that in the preceding block.
Specify I_K_; in the same block as G40. If it is specified in the same block as G02 or G03, it is assumed
to be the center of the arc.
- 161 -
5.COMPENSATION FUNCTION PROGRAMMING B-64604EN-1/01
If I and/or K is specified with G40 in the offset cancel mode, the I and/or K is ignored. The numeral is
followed I and K should always be specified as radius values.
G40 G01 X_ Z_ ;
G40 G01 X_ Z_ I_ K_ ; Offset cancel mode (I and K are ineffective.)
Example
X
<3>
φ300
<1>
<2>
200
φ60 Z
120
0
30 150
(G40 mode)
<1> G42 G00 X60.0 ;
<2> G01 X120.0 W-150.0 F10 ;
<3> G40 G00 X300.0 W150.0 I40.0 K-30.0 ;
If the number of such blocks consecutively specified is more than N-2 blocks (where N is the number of
blocks to read in offset mode (parameter No. 19625)), the tool arrives at the position vertical to this block
at the end point of the previous block.
If the feed distance is 0 (<5>), this applies even if only one block is specified.
- 162 -
B-64604EN-1/01 PROGRAMMING 5.COMPENSATION FUNCTION
0
Tool nose radius
center path 8 3
Total tool nose 4
5 7
1 2
6
Programmed path
5 7
1 6 2
Programmed path
- 163 -
5.COMPENSATION FUNCTION PROGRAMMING B-64604EN-1/01
(G42)
Programmed path
(G41)
Fig. 5.2.5 (b) Tool nose radius compensation when chamfering is performed
(G42)
Programmed path
(G41)
Fig. 5.2.5 (c) Tool nose radius compensation when a corner arc is inserted
- 164 -
B-64604EN-1/01 PROGRAMMING 5.COMPENSATION FUNCTION
Cutter
compensation
cancel
Start-up
Format
- Start up (tool compensation start)
G00(or G01)G41(or G42) IP_T_;
G41 : Cutter compensation left (Group 07)
G42 : Cutter compensation right (Group 07)
IP_ : Command for axis movement
T_ : Same T code as that of tool offset
- 165 -
5.COMPENSATION FUNCTION PROGRAMMING B-64604EN-1/01
Explanation
- Offset cancel mode
At the beginning when power is applied the control is in the offset cancel mode. In the offset cancel mode,
the vector is always 0, and the tool center path coincides with the programmed path.
- Start-up
When a cutter compensation command (G41 or G42) is specified in the offset cancel mode, the CNC
enters the offset mode.
Moving the tool with this command is called start-up.
Specify positioning (G00) or linear interpolation (G01) for start-up.
If circular interpolation (G02, G03) is specified, alarm PS0034, “ONLY G00/G01 ALLOWED IN
STUP/EXT BLK” occurs.
For the start-up and subsequent blocks, the CNC prereads as many blocks as the number of preread
blocks set in the parameter No. 19625.
- Offset mode
In the offset mode, compensation is accomplished by positioning (G00), linear interpolation (G01), or
circular interpolation (G02, G03).
If three or more blocks that move the tool cannot be read in offset mode, the tool may make either an
excessive or insufficient cut.
If the offset plane is switched in the offset mode, alarm PS0037, “CAN NOT CHANGE PLANE IN
G41/G42” occurs and the tool is stopped.
- 166 -
B-64604EN-1/01 PROGRAMMING 5.COMPENSATION FUNCTION
N7
N6 N8
Programmed path
Programmed path
Fig. 5.3 (d) Tool center paths when positive and negative cutter compensation values are specified
NOTE
The cutter compensation value for which the T code corresponds to 0 always
means 0.
It is not possible to set the cutter compensation value corresponding to T0.
- 167 -
5.COMPENSATION FUNCTION PROGRAMMING B-64604EN-1/01
- Offset vector
The offset vector is the two dimensional vector that is equal to the cutter compensation value assigned by
T code. It is calculated inside the control unit, and its direction is up-dated in accordance with the
progress of the tool in each block.
The offset vector is deleted by reset.
- 168 -
B-64604EN-1/01 PROGRAMMING 5.COMPENSATION FUNCTION
Example
250R
N5
C1(700,1300)
P4(500,1150) P5(900,1150)
C3 (-150,1150) C2 (1550,1150)
650R 650R
N4 N6
N3 N7
P2 P3(450,900) P6(950,900) P7
(250,900) (1150,900)
N8
N2
P9(700,650)
P1 P8
(250,550) (1150,550)
N10 N9
Y axis
N1
N11
X axis Unit : mm
Start point
- 170 -
B-64604EN-1/01 PROGRAMMING 5.COMPENSATION FUNCTION
5.4.1 Overview
The following explanation focuses on tool nose radius compensation, but applies to cutter compensation
as well. Examples in which XY planes are used, however, apply to cutter compensation only.
G41 and G42 specify an offset mode, while G40 specifies cancellation of the offset.
Programmed path
180°≤a 0°≤α<180°
- 171 -
5.COMPENSATION FUNCTION PROGRAMMING B-64604EN-1/01
Vectors are connected with linear Vectors are connected with circular
interpolation. interpolation.
Fig. 5.4.1 (a) Linear connection type Fig.5.4.1 (b) Circular connection type
[Bit 2 (CCC) of parameter No. 19607 = 0] [Bit 2 (CCC) of parameter No. 19607 = 1]
- Cancel mode
The tool nose radius compensation enters the cancel mode under the following conditions. (The system
may not enter the cancel mode depending on the machine tool.)
(1) Immediately after the power is turned on
(2) After the key on the MDI unit is pushed
(3) After a program is forced to end by executing M02 or M30
(4) After the tool nose radius compensation cancel command (G40) is exercised
In the cancel mode, the magnitude of a compensation vector is 0 at all times and the path of the virtual
tool nose matches the programmed path. A program must end in cancel mode. If it ends in the tool nose
radius compensation mode, the tool cannot be positioned at the end point, and the tool stops at a location
the compensation vector length away from the end point.
NOTE
The operation performed when a reset operation is performed during tool nose
radius compensation varies according to the setting of bit 6 (CLR) of parameter
No. 3402.
• When CLR=0
The reset state is set. The modal information of G41/G42 in group 07 is
preserved. To perform tool nose radius compensation, however, an offset
number (T code) needs to be specified again.
• When CLR=1
The cleared state is set. The modal information of G40 in group 07 is
preserved. To perform tool nose radius compensation, G41/G42 and an
offset number (T code) need to be specified.
- Start-up
When a block which satisfies all the following conditions is executed in cancel mode, the CNC enters the
offset mode. Control during this operation is called start-up.
(1) G41 or G42 is contained in the block, or has been specified to place the CNC in the offset mode.
(2) 0 < compensation number of tool nose radius compensation ≤ maximum compensation number
(3) Positioning (G00) or linear interpolation (G01) mode
(4) A compensation plane axis command with a travel distance of 0 (except start-up type C) is specified.
If start-up is specified in circular interpolation (G02, G03) mode, alarm PS0034, “NO CIRC ALLOWED
IN STUP/EXT BLK” will occur.
Workpiece coordinate system switching (G54 to G59) cannot be specified in the start-up block.
- 172 -
B-64604EN-1/01 PROGRAMMING 5.COMPENSATION FUNCTION
As a start-up operation, one of the three types A, B, and C can be selected by setting bits 0 (SUP) and 1
(SUV) of parameter No. 5003 appropriately. The operation to be performed if the tool moves around an
inner side is of single type only.
G41
Programmed path
N2
N1
Programmed path
G41
N2
N1
1 0 Type C When the start-up block and the cancel block are blocks without tool
1 movement, the tool moves by the cutter or tool nose radius
compensation value in the direction vertical to the block subsequent
to the start-up block and the block preceding the cancel block.
Intersection
Tool nose radius center path
N1
For a block with tool movement, the tool follows the SUP setting: If it
is 0, type A is assumed and if 1, type B is assumed.
As the setting of parameter No. 19625, that is, the number of blocks to read, increases, it is possible to
predict overcutting (interference) for up to more subsequent commands. Increases in blocks to read and
analyze, however, cause reading and analysis to take more time.
- 173 -
5.COMPENSATION FUNCTION PROGRAMMING B-64604EN-1/01
N1
N2
N2
N1 Tool nose radius center path
Programmed path
NOTE
When an auxiliary function (M code), spindle speed function (S code), tool
function (T code), or second auxiliary function (B code) is specified in the N1
block in the figure above, FIN is not accepted if the tool stops at the stop point in
a block created internally (excluding the single block stop point).
- Meaning of symbols
The following symbols are used in subsequent figures:
• S indicates a position at which a single block is executed once.
• SS indicates a position at which a single block is executed twice.
• SSS indicates a position at which a single block is executed three times.
• L indicates that the tool moves along a straight line.
• C indicates that the tool moves along an arc.
• r indicates the cutter or tool nose radius compensation value.
• An intersection is a position at which the programmed paths of two blocks intersect with each other
after they are shifted by r.
• indicates the center of the tool nose radius.
- 174 -
B-64604EN-1/01 PROGRAMMING 5.COMPENSATION FUNCTION
Explanation
- Tool movement around an inner side of a corner (180°≤ α)
Linear→Linear
α
Workpiece
Programmed path
r
G42
Linear→Circular
α
Work-
G42 r piece
S
C
L
Start point Tool nose radius Programmed path
center path
- 175 -
5.COMPENSATION FUNCTION PROGRAMMING B-64604EN-1/01
- Cases in which the start-up block is a block with tool movement and the tool
moves around the outside at an obtuse angle (90°≤ α<180°)
Tool path in start-up has two types A and B, and they are selected by bit 0 (SUP) of parameter No. 5003.
Linear→Linear Start point
G42
α Workpiece
L Programmed path
r
r Work
Work-
piece
piece
S
C
G42
α
Workpiece
L
Programmed path
r
r
L
S Tool nose radius
Intersection center path
Type L
Linear→Circular
B (Linear connection type)
Start point
G42
α
r Work-
r piece
S
C
L L
Intersection
Tool nose radius center path Programmed path
- 176 -
B-64604EN-1/01 PROGRAMMING 5.COMPENSATION FUNCTION
L
Programmed path
r
r
C L
S Tool nose radius
center path
Type
B Linear→Circular Start point
(Circular
connection type) G42
α
r Workpiece
r
C S
C
- 177 -
5.COMPENSATION FUNCTION PROGRAMMING B-64604EN-1/01
- Cases in which the start-up block is a block with tool movement and the tool
moves around the outside at an acute angle (α<90°)
Tool path in start-up has two types A and B, and they are selected by bit 0 (SUP) of parameter No. 5003.
Linear→Linear Start point
G42
L Workpiece
α
Programmed path
r
G42
L
α
r Work-
piece
S C
Linear→Linear
(Linear connection type) Start point
L
G42
Workpiece
r α
L
Programmed path
r
L
G42
r α
L
r
L
Work-
S L C piece
Tool nose radius center path
Programmed path
- 178 -
B-64604EN-1/01 PROGRAMMING 5.COMPENSATION FUNCTION
Programmed path
r
C
r Work-
C piece
S C
Tool nose radius center path
Programmed path
- Tool movement around the outside linear → linear at an acute angle less than
1 degree (α<1°)
S Tool nose radius center path
L
r L
Programmed path
(G41)
N6 N8
S
- 179 -
5.COMPENSATION FUNCTION PROGRAMMING B-64604EN-1/01
For type C
The tool shifts by the compensation value in the direction vertical to the block with tool movement
subsequent to the start-up block.
Without tool
movement
L
α
S Programmed path
L
Tool nose radius center path
S
Intersection
- 180 -
B-64604EN-1/01 PROGRAMMING 5.COMPENSATION FUNCTION
NOTE
The condition necessary for an interference check, described later, differs from
this condition. For details, see the explanation of the interference check.
- 181 -
5.COMPENSATION FUNCTION PROGRAMMING B-64604EN-1/01
Programmed path
Linear→Circular
α
Work-
piece
Intersection
S C
L
Tool nose radius Programmed path
center path
Circular→Linear
α Workpiece
Programmed path
L
S Tool nose radius
C Intersection center path
Circular→Circular α
Work-
Intersection piece
S
C C
- 182 -
B-64604EN-1/01 PROGRAMMING 5.COMPENSATION FUNCTION
- Tool movement around the inside (α<1°) with an abnormally long vector,
linear → linear
Intersection
S
r Tool nose radius center path
Programmed path
r
Intersection
Also in case of arc to straight line, straight line to arc and arc to arc, the reader should infer in the same
procedure.
- 183 -
5.COMPENSATION FUNCTION PROGRAMMING B-64604EN-1/01
α Workpiece
L Programmed path
S
Intersection L Tool nose radius
center path
Linear→Circular
(Linear
connection type)
Work-
L r
piece
S L C
Intersection
r Programmed path
C
L
Intersection S L Tool nose radius
center path
Circular→Circular
(Linear
connection type)
α
Programmed path
r Work-
r piece
C
Tool nose L
radius center S L
path Intersection C
- 184 -
B-64604EN-1/01 PROGRAMMING 5.COMPENSATION FUNCTION
Linear→Linear
(Circular
connection type)
α Workpiece
L
r Programmed path
r
C L
S Tool nose radius
center path
Linear→Circular
(Circular
connection type)
r
Work-
L r
piece
C
S C
Programmed path
r
r
C
C L
S Tool nose radius
center path
Circular→Circular
(Circular
connection type)
α
Programmed path
r Work-
r piece
C
Tool nose radius
center path C
S C
- 185 -
5.COMPENSATION FUNCTION PROGRAMMING B-64604EN-1/01
Workpiece
r α
L
Programmed path
r
L
S L L Tool nose radius
center path
Linear→Circular
(Linear
connection type) L
r α
L
Work-
r piece
L
S L
C Programmed path
Tool nose radius
center path
Circular→Linear
(Linear
connection type)
Workpiece
r α
L
Programmed path
r
L
S L L Tool nose radius center path
Circular→Circular
(Linear
connection type)
r α
L
Work-
r piece
L
S L C
- 186 -
B-64604EN-1/01 PROGRAMMING 5.COMPENSATION FUNCTION
Linear→Linear
(Circular
connection type) L
Workpiece
r α
Programmed path
r
C
r α
r Work-
piece
C
S
C
Programmed path
Tool nose radius
center path
Circular→Linear
(Circular
connection type)
Workpiece
r α
Programmed path
r
C
Circular→Circular
(Circular
connection type)
r α
Work-
r piece
C
S
C
- 187 -
5.COMPENSATION FUNCTION PROGRAMMING B-64604EN-1/01
- When it is exceptional
End position for the arc is not on the arc
If the end of a line leading to an arc is not on the arc as illustrated below (Fig. 5.4.3 (a)), the system
assumes that the tool nose radius compensation has been executed with respect to an imaginary circle that
has the same center as the arc and passes the specified end position. Based on this assumption, the system
creates a vector and carries out compensation. The same description applies to tool movement between
two circular paths.
Workpiece
End the arc
Imaginary circle
Programmed path
r r
Tool nose radius
center path
r C L
L
Center of the arc L S
Arc A P Arc B
- 188 -
B-64604EN-1/01 PROGRAMMING 5.COMPENSATION FUNCTION
- When the center of the arc is identical with the start point or the end position
If the center of the arc is identical with the start point or end point, alarm PS0041, “INTERFERENCE IN
CUTTER COMPENSATION” is displayed, and the tool will stop at the start point of the preceding block
of the arc.
(G41)
N5 G01 W50.0 ;
Tool nose radius center path N6 W50.0 ;
N7 G02 W100.0 I0 K0 ;
Alarm is displayed and the
N8 G01 U-100.0 ;
tool stops
N5 N6 N7
Programmed path
N8
Sign of compensation
+ -
G code
G41 Left side offset Right side offset
G42 Right side offset Left side offset
The offset direction can be changed in the offset mode. If the offset direction is changed in a block, a
vector is generated at the intersection of the tool nose radius center path of that block and the tool nose
radius center path of a preceding block.
However, the change is not available in the start-up block and the block following it.
- 189 -
5.COMPENSATION FUNCTION PROGRAMMING B-64604EN-1/01
r
Programmed path r
L G41
Linear→Circular
r
Workpiece
G41
G42
Programmed path
r
Workpiece
Intersection
Tool nose radius center path L S
Circular→Linear
Workpiece
G42
Programmed path
r
Tool nose radius center path
C L
S
Intersection r
G41
Workpiece
Circular→Circular
C
Workpiece
G42
r
Programmed path
r
G41
- 190 -
B-64604EN-1/01 PROGRAMMING 5.COMPENSATION FUNCTION
Workpiece r
Programmed path G42 (G42)
G41
A B
L Workpiece
r
Linear→Circular Intersection
S
L
L
Programmed path
Circular→Circular
C
(G42)
r r
C L
L S
Center Center
Tool nose radius
center path
- 191 -
5.COMPENSATION FUNCTION PROGRAMMING B-64604EN-1/01
The length of tool center path larger than the circumference of a circle
Normally there is almost no possibility of generating this situation. However, when G41 and G42 are
changed, or when a G40 was commanded with address I, J, and K this situation can occur.
In this case of the Fig. 5.4.3 (c), the cutter compensation is not performed with more than one circle
circumference: an arc is formed from P1 to P2 as shown. Depending on the circumstances, an alarm may
be displayed due to the "Interference Check" described later. To execute a circle with more than one
circumference, the circle must be specified in segments.
Tool nose radius
center path Programmed path
N5 N7
P1 P2
(G42)
N5 G01 U-700.0 W500.0 ;
N6
N6 G41 G02 I-500.0 ;
N7 G42 G01 U700.0 W500.0 ;
r L
L
Circular→Linear
r
G42 mode L
C
S Intersection
Programmed path
- 192 -
B-64604EN-1/01 PROGRAMMING 5.COMPENSATION FUNCTION
L L
L L
Before specifying G28 (reference position return), G29 (return from reference position), G30 (second,
third, and fourth reference position returns), and G53 (machine coordinate system selection) commands,
cancel offset mode, using G40. If an attempt is made to specify any of the commands in offset mode, the
offset vector temporarily disappears.
- Canned cycles (G90, G92, G94) and multiple repetitive canned cycles (G71 to
G76)
See the cautions for the tool nose radius compensation related canned cycles.
N9
N8 S S
Programmed path
(G42)
N5 G01 U50.0 W-60.0 ;
N6 W-80.0 ;
N7 G90 U-60.0 W-80.0 R-30.0 ;
N8 G01 U120.0 W50.0 ;
N9 W50.0 ;
- 193 -
5.COMPENSATION FUNCTION PROGRAMMING B-64604EN-1/01
Compensation vector
I, J, K
In G42 mode, the direction specified by I, J, and K is assumed an imaginary tool movement direction, and
an offset vector is created vertical to that direction and on the right side.
I, J, K
Compensation vector
Example
If I and J are specified at the start of compensation (with
tool movement)
N50
N40
(G40)
N30
N10 G41 U100.0 W100.0 N60
N20
K1 T0101 ;
N20 G04 X1000 ; T1 Tool nose radius
N30 G01 F1000 ;
N10 center path
N40 S300 ;
N50 M50 ;
N60 W150.0 ; Programmed path
- 194 -
B-64604EN-1/01 PROGRAMMING 5.COMPENSATION FUNCTION
If I and J are specified at the start of compensation
(without tool movement)
(G40)
N30
N10 G41 K1 T0101 ;
N20 U100.0 W100.0 ; Tool nose radius
N30 W150.0 ; center path
N20
Note) In N10, a vector is specified Programmed path
with a size of T1 in the
direction vertical to the Z
N10
axis, using K1.
T1
Programmed path
N10
T1
Limitation
If an IJ type vector is specified, tool interference may occur due to that vector alone, depending on the
direction. If this occurs, no interference alarm will occur, or no interference avoidance will be performed.
Overcutting may, therefore, result.
- 195 -
5.COMPENSATION FUNCTION PROGRAMMING B-64604EN-1/01
Overcutting
(I, J)
Start-up/cancel
Type C
N30 N40
Programmed
N10 G42 T0101 F1000 ; path N20
N20 W100.0;
N30 U100.0 W100.0 K10.0 ; N50
N10
N40 U-100.0 W100.0 ;
N50 G40 ;
Tool nose radius
center path
In offset mode, the number of blocks without movement consecutively specified must not exceed N-2
(where N is the number of blocks to read in offset mode (parameter No. 19625). If commanded, a vector
whose length is equal to the offset value is produced in a normal direction to tool motion in earlier block,
so overcutting may result.
N6 U100.0 W100.0 ; N7,N8 N9
N7 S21 ; Programmed path
N8 G04 X10.0 ;
N9 W100.0 ;
(No. of blocks to read in N6
offset mode = 3) L Tool nose radius
SSS center path
L Blocks N7 and N8 are executed here.
(G42) N6
N5 G01 U40.0 W40.0 ; Programmed path
N6 W40.0 ;
:
: N5
L
Tool nose radius
S center path
L Intersection
(G42) N6 N7
Programmed path
N5 G01 U40.0 W40.0 ;
N6 M50 ;
N7 W40.0 ;
: N5
: L
Tool nose radius
SS center path
L Block N6 is executed here.
- Corner movement
When two or more offset vectors are produced at the end of a block, the tool moves linearly from one
vector to another. This movement is called the corner movement.
If these vectors almost coincide with each other (the distance of corner movement between the vectors is
judged short due to the setting of parameter No. 5010), corner movement is not performed. In this case,
the vector to the single block stop point takes precedence and remains, while other vectors are ignored.
This makes it possible to ignore the very small movements arising from performing tool nose radius
compensation, thereby preventing velocity changes due to interruption of buffering.
- 197 -
5.COMPENSATION FUNCTION PROGRAMMING B-64604EN-1/01
ΔVX
r S
N2
Programmed path
ΔVlimit is determined with the setting of parameter (No. 5010).
If the vectors are not judged to almost coincide (therefore, are not erased), movement to turn around the
corner is performed. The corner movement that precedes the single block stop point belongs to the
previous block, while the corner movement that succeeds the single block stop point belongs to the latter
block.
This move belongs to block N6, thus, the feedrate is equal
to that in block N6.
S
This move belongs to block N7, thus, the
feedrate is equal to that in block N7.
N6 N7
However, if the path of the next block is semicircular or more, the above function is not performed.
The reason for this is as follows:
(G17) P2 P3 P4 P5
N4 G41 G01 U150.0 V200.0 ;
N5 U150.0 V200.0 ;
N6 G02 J-600.0 ;
N7 G01 U150.0 V-200.0 ; P1 P6
N8 G40 U150.0 V-200.0 ;
N5 N7
N4 N8
Programmed path N6
- 198 -
B-64604EN-1/01 PROGRAMMING 5.COMPENSATION FUNCTION
If the vector is not ignored, the tool path is as follows:
P1 → P2 → P3 → (Circle) → P4 → P5 → P6
But if the distance between P2 and P3 is negligible, the point P3 is ignored. Therefore, the tool path is as
follows:
P2 → P 4
Namely, circle cutting by the block N6 is ignored.
- 199 -
5.COMPENSATION FUNCTION PROGRAMMING B-64604EN-1/01
Programmed path
r
G40
Circular→Linear
α
Work-
piece r
G40
S
C
L
Programmed path Tool nose radius center path
- 200 -
B-64604EN-1/01 PROGRAMMING 5.COMPENSATION FUNCTION
- If the cancel block is a block with tool movement, and the tool moves around
the outside at an obtuse angle (90° ≤ α < 180°)
Linear→Linear
G40
Workpiece α
Programmed path L
G40
α
L
Work-
piece r
S
C
Linear→Linear
(Linear
connection type) G40
Workpiece α
L
Programmed path
r
Work- r
piece r
S
C Inter- L
section
L
Programmed path Tool nose radius center path
- 201 -
5.COMPENSATION FUNCTION PROGRAMMING B-64604EN-1/01
Linear→Linear
(Circular
connection type) G40
Workpiece α
L
Programmed path
r
C S
Tool nose radius center path
Type
B Circular→Linear
(Circular
connection type) G40
α
Work- r
piece r
C S
C
- 202 -
B-64604EN-1/01 PROGRAMMING 5.COMPENSATION FUNCTION
- If the cancel block is a block with tool movement, and the tool moves around
the outside at an acute angle (α<90°)
Linear→Linear
G40
Workpiece L α
G40
L α
Work- r
piece G42
C S
Tool nose radius
center path
Programmed path
Linear→Linear
(Linear
connection type) L
Workpiece G40
α r
L
Programmed path
r S
α r
L
S
Work- r
piece
L
C L
Tool nose radius
center path
Programmed path
- 203 -
5.COMPENSATION FUNCTION PROGRAMMING B-64604EN-1/01
Linear→Linear
(Circular
connection type) L
S
Workpiece G40
α r
Programmed path
r C
C
Work- r
piece
C S
Tool nose radius
center path
Programmed path
- If the cancel block is a block with tool movement, and the tool moves around
the outside at an acute angle of 1 degree or less in a linear → linear manner
(α≤1°)
S Tool nose radius center path
L
r L
(G42) Programmed path
1° or less
G40
- 204 -
B-64604EN-1/01 PROGRAMMING 5.COMPENSATION FUNCTION
For type C
The tool shifts by the compensation value in the direction vertical to the block preceding the cancel
block.
Programmed path
L
S
(I, K)
G40
N2
P Tool nose radius center path
r S N1
r
(G42) Programmed path
Workpiece
In this case, note that the CNC obtains an intersection of the tool path irrespective of whether inner or
outer side machining is specified.
E
G40
P Tool nose radius
center path
S
r
Programmed path
(G42)
r
(I, K)
- 205 -
5.COMPENSATION FUNCTION PROGRAMMING B-64604EN-1/01
When an intersection is not obtainable, the tool comes to the normal position to the previous block at the
end of the previous block.
E
Tool nose radius
P G40 center path
S
r
(G42) Programmed path
(I, K)
r
- Length of the tool center path larger than the circumference of a circle
In the example shown below, the tool does not trace the circle more than once. It moves along the arc
from P1 to P2. The interference check function described below may raise an alarm.
To make the tool trace a circle more than once, program two or more arcs.
P1
Tool nose radius center path
P2
Programmed path N7
N5
(I, J) N6
(G17 G41)
N5 G01 U100.0 ;
N6 G02 J-60.0 ;
N7 G40 G01 U50.0 V50.0 I-10.0 J-10.0 ;
- 206 -
B-64604EN-1/01 PROGRAMMING 5.COMPENSATION FUNCTION
Programmed path
Workpiece
Programmed path
Fig. 5.4.5 (b) Machining a step larger than the tool nose radius
- 207 -
5.COMPENSATION FUNCTION PROGRAMMING B-64604EN-1/01
Arc center
Workpiece Arc
Fig. 5.4.5 (c) Machining a step smaller than the tool nose radius
After compensation
N6
N1
In the program example above (Fig. 5.4.5 (d)), when executing block N1, blocks N3 and N6 are also
entered into the buffer storage, and by the relationship among them the correct compensation is
performed as in the Fig. 5.4.5 (d).
Then, suppose that the block N3 (move command in Z axis) is divided into N3 and N5.
- 208 -
B-64604EN-1/01 PROGRAMMING 5.COMPENSATION FUNCTION
After compensation
Workpiece
N6
N1
At this time, because the number of blocks to read is 3, blocks up to N5 can be read at the start of N1
compensation, but block N6 cannot be read. As a result, compensation is performed only on the basis of
the information in block N1, and a vertical vector is created at the end of the compensation start block.
Usually, therefore, overcutting will result as shown in the Fig. 5.4.5 (e).
In such a case, it is possible to prevent overcutting by specifying a command with the exactly the same
direction as the advance direction immediately before movement along the Z axis beforehand, after the
tool is moved along the Z axis using the above rule.
N1 G00 G41 U500.0 V400.0 T0101 ;
N2 V100.0 ;
N3 W-250.0 ;
N5 G01 W-50.0 F100 ;
N6 V1000.0 F200 ;
After compensation N6
Workpiece
N2
N1
As the block N2 has the move command in the same direction as that of the block N6, the correct
compensation is performed.
Alternatively, it is possible to prevent overcutting in the same way by specifying an IJ type vector with
the same direction as the advance direction in the start-up block, as in N1 G00 G41 U500.0 V500.0 I0 J1
T0101;, after the tool has moved along the Z axis.
- 209 -
5.COMPENSATION FUNCTION PROGRAMMING B-64604EN-1/01
Explanation
- Condition under which an interference check is possible
To perform an interference check, it is necessary to read at least three blocks with tool movement. If,
therefore, three or more blocks with tool movement cannot be read in offset mode because blocks without
tool movement, such as independent auxiliary function and dwell, are specified in succession, excessive
or insufficient cutting may occur because an interference check fails. Assuming the number of blocks to
read in offset mode, which is determined by parameter No. 19625, to be N and the number of commands
in those N blocks without tool movement that have been read to be M, the condition under which an
interference check is possible is
(N - 3) ≥ M.
For example, if the maximum number of blocks to read in offset mode is 8, an interference check is
possible even if up to five blocks without tool movement are specified. In this case, three adjacent blocks
can be checked for interference, but any subsequent interference that may occur cannot be detected.
NOTE
There are no settings for performing a direction check only.
Even if multiple number of compensation vector groups are generated, a check is performed on all pairs.
The judgment method is as follows: For a check on the compensation vector group in (block 1 - block 2)
and those in (block N-1 - block N), the direction vector from the specified (end point of block 1) to the
(end point of block N-1) is compared with the direction vector from the (point resulting from adding the
compensation vector to be checked to the end of block 1) to the (point resulting from adding the
compensation vector to be checked to the end of block N-1), and if the direction is 90o or greater or 270o
or less, they are judged to intersect and interfere. This is called a direction check.
- 210 -
B-64604EN-1/01 PROGRAMMING 5.COMPENSATION FUNCTION
Example of interference standard <1>
(If the block 1 end-point vector intersects with the block 7 end-point vector)
The direction differs by
180°.
Programmed path
Block 2 Block 7
Block 1 Block 8
Block 3
Block 6
Block 4 Block 5
Block 1
The directions of
these two paths are
different (180°).
Block 2
- 211 -
5.COMPENSATION FUNCTION PROGRAMMING B-64604EN-1/01
Example of <2> (if block 2 is circular and the start point of the post-compensation arc coincide with the
end point)
Tool nose radius
Programmed path
center path
Block 3
Block 1
Programmed path
Block 2
Stopped
A C
B
There is no actual interference, but since the direction programmed in block B is opposite to that of the
path after the tool nose radius compensation, the tool stops and an alarm is displayed.
- 212 -
B-64604EN-1/01 PROGRAMMING 5.COMPENSATION FUNCTION
<2> Groove which is smaller than the cutter or tool nose radius compensation value
Programmed
path Tool nose radius center path
Stopped
A
B C
- 213 -
5.COMPENSATION FUNCTION PROGRAMMING B-64604EN-1/01
Stopped
Tool nose radius
center path
Block 1
Block 8
Programmed path
Block 2 Block 7
Block 3
Block 6
Block 4 Block 5
V1
V2
V5
V4
V3
Programmed path
If, after vector erasure, the last single vector still interferes, or if there is only one vector at the beginning
and it interferes, an alarm will occur immediately after the start of the previous block (end point for a
single block) and the tool stops. In the example shown in the Fig. 5.4.6.2 (c), V2 and V3 interfere, but,
even after erasure, an alarm will occur because the final vectors V1 and V4 interfere.
- 214 -
B-64604EN-1/01 PROGRAMMING 5.COMPENSATION FUNCTION
Stopped
Tool center path
Programmed path
V4 V1
V3 V2
Explanation
- Interference avoidance method
Let us consider a case in which an interference occurs between the compensation vector between (block 1
- block 2) and the compensation vector between (block N-1 - block N). The direction vector from the end
point of block 1 to the end point of block N-1 is called a gap vector. At this time, a post-compensation
intersection vector between (block 1 - gap vector) and a post-compensation intersection vector between
(gap vector - block N) is determined, and a path connecting them is created.
- 215 -
5.COMPENSATION FUNCTION PROGRAMMING B-64604EN-1/01
Movement o f block 7
Post-compensation
path Gap vector
Block 1
Block 8
Block 2 Block 7
Programmed path
Block 3 Block 6
Block 4 Block 5
In this case, the post-compensation end points of blocks 2 to 6 coincide with the end
point of block 1. Thus, after compensation, blocks 2 to 6 will be blocks without tool
movement.
If the post-compensation intersection vector of (block 1 - gap vector) and the post-compensation
intersection vector of (gap vector - block N) further intersect, vector erasure is first performed in the same
way as in "Interference between adjacent three blocks". If the last vectors that remains still intersects, the
post-compensation intersection vector of (block 1 - block N) is re-calculated.
Post-compensation path
Re-calculation
Programmed path
Block 1 Block 8
Block 1 Block 8
Post-compensati
Post-compensation on intersection
Post-compensation vector between
intersection vector
intersection between block 1 and
between block 1
gap vector and block 8 block 8
and gap vector
Block 2 Gap vector
Block 7 Block 2 Block 7
- 216 -
B-64604EN-1/01 PROGRAMMING 5.COMPENSATION FUNCTION
If the cutter or tool nose radius compensation value is greater than the radius of the specified arc as shown
in the Fig. 5.4.6.3 (c), and a command is specified which results in compensation with respect to the
inside of the arc, interference is avoided by performing intersection calculation with an arc command
being assumed a linear one. In this case, avoided vectors are connected with linear interpolation.
Post-compensation path
Programmed path
Programmed path
Block 1
Block 3
Block 2
Fig. 5.4.6.3 (d)
- 217 -
5.COMPENSATION FUNCTION PROGRAMMING B-64604EN-1/01
If the circular pocket shown in the Fig. 5.4.6.3 (e) is to be machined, the end-point vector of block 1 and
the end-point vector of block 2 are judged to interfere, and an attempt is made to calculate, as an
interference avoidance vector, the intersection vector of the post-compensation path of block 1 and the
post-compensation path of block 3.
In this case, because blocks 1 and 3 are circular, no post-compensation intersection exists. In this case, an
alarm will occur immediately before block 1 and the tool will stop, as in the previous example.
Stopped
Block 1
Block 3
Block 2
Programmed path
Block 1
Block 3
Block 2
Fig. 5.4.6.3 (f)
- 218 -
B-64604EN-1/01 PROGRAMMING 5.COMPENSATION FUNCTION
If a pocket in which the bottom is wider than the top, such as that shown in the Fig. 5.4.6.3 (g), is to be
machined, the end-point vector of block 1 and the end-point vector of block 2 are judged to interfere, and
an attempt is made to calculate, as an interference avoidance vector, the intersection vector of the
post-compensation path of block 1 and the post-compensation path of block 3. In this case, the relation
between blocks 1 and 3 is judged an outer one, the post-avoidance path results in overcutting as compared
with the original command. In such a case, interference avoidance operation is judge dangerous; an alarm
will occur immediately before block 1 and the tool will stop.
Stopped
Tool center path
Programmed path
Block 1 Block 3
Block 2
Post-compensation intersection
of blocks 1 and 3
Block 5
Block 4
Block 1
Block 3
Block 2
- 219 -
5.COMPENSATION FUNCTION PROGRAMMING B-64604EN-1/01
NOTE
1 For "If it is judged dangerous to avoid interference" and "If further interference
with an interference avoidance vector occurs", by setting bit 6 (NAA) of
parameter No. 19607 appropriately, it is possible to suppress an alarm to
continue machining. For "If no interference avoidance vector exists", however, it
is not possible to avoid an alarm regardless of the setting of this parameter.
2 If a single block stop occurs during interference avoidance operation, and an
operation is performed which differs from the original movement, such as
manual intervention, MDI intervention, cutter or tool nose radius compensation
value change, intersection calculation is performed with a new path. If such an
operation is performed, therefore, an interference may occur again although
interference avoidance has been performed once.
5.4.7 Cutter or Tool Nose Radius Compensation for Input from MDI
Explanation
- MDI operation
During MDI operation, that is, if a program command is specified in MDI mode in the reset state to make
a cycle start, intersection calculation is performed for compensation in the same way as in memory
operation/DNC operation. Compensation is performed in the same way if a subprogram is called from
program memory due to MDI operation.
MDI command Subprogram in program memory N3
G00 X0 Y0 ; O9000 ;
M98 P9000 ; N1 G41 G17 G01 U10.0 V10.0
M02 ; T0101 ;
N2 V15.0 ;
N3 U15.0 ;
N4 V-15.0 ;
N5 U-15.0 ; N2 N4
N6 G40 U-10.0 V-10.0 ;
M99 ;
N1
N5
N6
- MDI intervention
If MDI intervention is performed, that is, if a single block stop is performed to enter the automatic
operation stop state in the middle of memory operation, DNC operation, and the like, and a program
command is specified in MDI mode to make a cycle start, cutter compensation does not perform
intersection calculation, retaining the last compensation vector before the intervention.
- 220 -
B-64604EN-1/01 PROGRAMMING 5.COMPENSATION FUNCTION
(G41) W30.0 ;
N2 U30.0 W10.0 ; U20.0 W20.0 ;
N3 U-30.0 W10.0 ; U-20.0 W20.0 ;
N4 W40.0 ;
N2 N3
N4
Program command
- 221 -
5.COMPENSATION FUNCTION PROGRAMMING B-64604EN-1/01
Format
(In offset mode)
G38 IP_ ;
IP :Value specified for axial movement
Explanation
- Vector retention
By specifying the above command, a vector is created at the end point of the block immediately
preceding the G38 block, vertical to that block. In the G38 block, the vertical vector output in the
previous block is retained. G38 is a one-shot G code. With the next move command without a G38
command, the compensation vector is re-created.
Limitation
- Mode
Specify G38 in either G00 or G01 mode. If it is specified in G02 or G03 (circular interpolation) mode, a
radial error may occur at the start and end points.
- Start-up/cancel
In start-up/cancel, the operation is as described in Subsections 5.4.2 and 5.4.4. Thus, G38 cannot be
specified in the following blocks:
1) Start-up command (G41 or G42) block
2) Cancel command (G40) block
3) Block immediately preceding the cancel command (G40) block
Example
:
: (In offset mode)
N1 G38 X0.0 Z10.0 ;
N2 G38 X5.0 Z15.0 ; X axis
N3 G38 X0.0 Z10.0 ;
N4 Z20.0 ;
:
:
Z axis
Program command
(15.0, 5.0)
- 222 -
B-64604EN-1/01 PROGRAMMING 5.COMPENSATION FUNCTION
Format
In offset mode
G39 ;
or
I_J_
G39 I_K_ ;
J_K_
Explanation
- Corner circular interpolation
When the command indicated above is specified, corner circular interpolation in which the radius equals
compensation value can be performed. G41 or G42 preceding the command determines whether the arc is
clockwise or counterclockwise. G39 is a one-shot G code.
- G39 without I, J, or K
When G39; is programmed, the arc at the corner is formed so that the vector at the end point of the arc is
perpendicular to the start point of the next block.
Limitation
- Move command
In a block containing G39, no move command can be specified. Otherwise, an alarm will occur.
- Inner corner
In an inner corner block, G39 cannot be specified. Otherwise, overcutting will occur.
- 223 -
5.COMPENSATION FUNCTION PROGRAMMING B-64604EN-1/01
Example
- G39 without I, J, or K
:
: (In offset mode)
N1 Z10.0 ; X axis
N2 G39 ;
N3 X-10.0 ;
:
:
Z axis
Programmed path
(10.0, -10.0)
(I=-1.0, K=2.0)
Tool nose radius
center path
(20.0, -10.0)
- 224 -
B-64604EN-1/01 PROGRAMMING 5.COMPENSATION FUNCTION
(1) With a turret holding multiple tools, tools are changed by turning the turret (T command).
(2) With an automatic tool changer (ATC), tools are changed by using both cartridge indexing (T
command) and tool change (such as M06) commands.
To support the tool change method explained in (2) above, the following tool selection specifications
apply to this function:
<1> Tool compensation by a T command is disabled. This means that the T command performs auxiliary
functions only.
<2> Tool compensation is enabled by using a G code instead of the T command. In this case, the
following types of tool compensation are enabled:
• Tool offset (compensation equivalent to that of a T command in the case of turret rotation type)
Format
M06 T_ ; Change tool
:
Gxx D_ ; Tool compensation start
:
:
G49 ; Tool compensation cancel
Explanation
- Selecting a tool change method
Bit 3 (TCT) of parameter No. 5040 selects a tool change method.
This changes the way for specifying tool compensation.
This parameter setting has influence on the following range (Table 5.7 (a)):
- 225 -
5.COMPENSATION FUNCTION PROGRAMMING B-64604EN-1/01
- T command operation
(1) When bit 3 (TCT) of parameter No.5040 is 0
The T command performs an auxiliary function and tool offset.
The code signal issued to the machine is the T command value except the last 1 to 3 digits.
For example, suppose that the following command is issued when 2 is set in parameter No. 5028 (the
number of digits comprising the offset number in the T code command):
T0313 ;
The T code signal sent to the machine indicates 03.
The tool compensation number, indicated by the lowest 2 digits, is 13.
- Tool offset
(1) When bit 3 (TCT) of parameter No.5040 is 0
The T command performs tool offset.
- 226 -
B-64604EN-1/01 PROGRAMMING 5.COMPENSATION FUNCTION
(2) When bit 3 (TCT) of parameter No.5040 is 1
G codes of group 23 such as G43 can be specified. The following G codes can be specified:
G43.7: Tool offset
Specify a compensation number with D_. The D code is specified in the same way as for tool offset
and tool nose radius compensation.
The reverse meanings can be set for G43/G44 and G43.7 by setting bit 4 (TLG) of parameter No.
5040.
Limitation
- Multiple repetitive canned cycle
When a multiple repetitive canned cycle is executed with bit 3 (TCT) of parameter No. 5040 set to 1, note
the following:
CAUTION
1 When a G71 to G76 command is specified in the Series 10/11 program format, a
value such as the depth of cut is specified with a D code. In this case, a D
command specified after G71 to G76 is assumed to be the depth of cut. For
example, suppose that the command shown below is specified. In this case, the
D command <1> is assumed to be the tool compensation number, and the D
command <2> is assumed to be the depth of cut.
Example:
D10 G71 P_Q_ U_ W_ D7000 F_ S_;
<1> <2>
2 In the operation of G71 to G73, a G code such as G43 and a D command
specified in the finish figure blocks (the portion enclosed by the sequence
numbers specified with P_ and Q_) are ignored, and the compensation amount
set when the G71 to G73 block is specified becomes valid.
WARNING
Before modifying the setting of this parameter, ensure that the offset is canceled.
If the setting is modified with the offset applied, offset operation may be
performed incorrectly after that, or alarm PS0368 may be issued.
- 227 -
5.COMPENSATION FUNCTION PROGRAMMING B-64604EN-1/01
NOTE
When bit 7 (IGA) of parameter No.6240 is 0, this function can be used.
Format
Txx ; Specifies an offset number for tool position compensation.
G36 X_ ; or G37 Z_ ;
Automatic tool offset. Absolute programming.
G36 and G37 are valid only in the block in which it is specified.
Explanation
- Coordinate system
When moving the tool to a position for measurement, the coordinate system must be set in advance. (The
workpiece coordinate system for programming is used in common.)
- Offset
The current tool offset value is further offset by the difference between the coordinate value (α or β)
when the tool has reached the measurement position and the value of xa or za specified in G36Xxa or
G37Zza.
Offset value x = Current offset value x+(α-xa)
Offset value z = Current offset value z+(β-za)
xa : Programmed X-axis measurement point
za : Programmed Z-axis measurement point
These offset values can also be altered from the MDI keyboard.
- 228 -
B-64604EN-1/01 PROGRAMMING 5.COMPENSATION FUNCTION
approach end signal turns on during movement across area B, alarm is generated. If the approach end
signal does not turn on before point V, and tool stops at point V and alarm PS0080 is generated.
Predicted measurement position
FR FP
U V
X, Z
A B C D
S (xs, zs) T
ε ε
Starting
position γ
|xa-xs|. |za-zs|
U (xa, za)
FR : Rapid traverse rate
FP : Measurement feedrate (set by parameter(No.6241))
γ : Parameters No.6251, No.6252
ε : Parameters No.6254, No.6255
- G code
If bit 3 (G36) of parameter No. 3405 has been set to 1, G37.1 and G37.2 are used as the G codes for
automatic tool compensation for the X- and Z-axes, respectively.
Example
Tool number T01
50
300
X-axis
Programmed zero point measurement
position 380
Z-axis measurement position
100
800
G50 X760.0 Z1100.0 ; Programming of absolute zero point (Coordinate system setting)
S01 M03 T0101 ; Specifies tool T1, offset number 1, and spindle revolution
G36 X200.0 ; Moves to the X-axis measurement position
If the tool has reached the measurement position at X198.0 since the correct
measurement position is 200.0mm, the offset value is altered by
198.0-200.0=-2.0mm.
G00 X204.0 ; Retracts a little along the X axis.
G37 Z800.0 ; Moves to the Z-axis measurement position.
If the tool has reached the measurement position at Z804.0 since the correct
measurement position is 800.0mm, the offset value is altered by
804.0-800.0=4.0mm.
T0101 ; The new offset value becomes valid when the T code is specified again.
- 229 -
5.COMPENSATION FUNCTION PROGRAMMING B-64604EN-1/01
WARNING
1 Measurement speed(Fp), γ, and ε are set as parameters (Fp : No.6241, γ :
No.6251, ε : No.6254) by machine tool builder. ε must be positive numbers so
that γ>ε.
2 Cancel the tool nose radius compensation before G36, G37.
3 A delay or variation in detection of the measurement position arrival signal is 0 to
2 msec on the CNC side excluding the PMC side. Therefore, the measurement
error is the sum of 2 msec and a delay or variation (including a delay or variation
on the receiver side) in propagation of the measurement position arrival signal
on the PMC side, multiplied by the feedrate set in parameter No. 6241.
4 A delay or variation in time after detection of the measurement position arrival
signal until a feed stops is 0 to 8 msec. To calculate the amount of overrun,
further consider a delay in acceleration/deceleration, servo delay, and delay on
the PMC side.
5 When a manual movement is inserted into a movement at a measurement
feedrate, return the tool to the position before the inserted manual movement for
restart.
6 When tool nose radius compensation is enabled (bit 7 (NCR) of parameter No.
8136 is set to 0), the tool offset amount is determined considering the value of
tool nose R. Make sure that tool nose radius value is set correctly.
(Condition under which the tool-nose radius compensation is considered)
For the X-axis (first axis of the basic three axes) : TIP=0/5/7
For the Z-axis (third axis of the basic three axes) : TIP=0/6/8
For the Y-axis (second axis of the basic three axes) : TIP=0
A
nose radius value
Movement considering
Actual movement
B
Tool nose
tool
radius
value
C Measurement
position
The tool actually moves from point A to point B, but the tool offset value is
determined assuming that the tool moves to point C considering the tool nose
radius value.
NOTE
1 When there is no T code command before G36 or G37, alarm PS0081, “G37
OFFSET NO. UNASSIGNED” is generated.
2 When a T code is specified in the same block as G36 or G37, alarm PS0082,
“G37 SPECIFIED WITH T CODE” is generated.
- 230 -
6.MEMORY OPERATION
B-64604EN-1/01 PROGRAMMING USING Series 10/11 FORMAT
NOTE
1 Registration to memory and memory operation are possible only for the
functions available in Series 0i.
2 Do not change the setting of this parameter (bit 1 (FCV) of parameter No. 0001)
during memory operation. Change the setting of this parameter in the reset
state.
Chapter 6, "MEMORY OPERATION USING Series 10/11 FORMAT", consists of the following
sections:
6.1 ADDRESSES AND SPECIFIED RANGE FOR SERIES 10/11 PROGRAM FORMAT ...............231
6.2 SUBPROGRAM CALLING.............................................................................................................231
6.3 CANNED CYCLE ............................................................................................................................232
6.4 MULTIPLE REPETITIVE CANNED CYCLE................................................................................249
6.5 CANNED CYCLE FOR DRILLING ...............................................................................................283
- 231 -
6. MEMORY OPERATION
USING Series 10/11 FORMAT PROGRAMMING B-64604EN-1/01
Explanation
- Address
Address L cannot be used in Series 0i program format but can be used in the Series 10/11 format.
(When the custom macro is enabled (bit 6(NCV) of parameter No. 8135 is 0), address L can be used
regardless of whether the format is Series 10/11 or not, however.)
- Subprogram number
The specifiable value range is the same as that for Series 0i (1 to 9999).
If a value of more than five digits is specified, the last four digits are assumed as the subprogram number.
- Repetition count
The repetition count L can be specified in the range from 1 to 9999. If no repetition count is specified, 1
is assumed.
NOTE
1 Explanatory figures in this section use the ZX plane as the selected plane,
diameter programming for the X-axis, and radius programming for the Z-axis.
When radius programming is used for the X-axis, change U/2 to U and X/2 to X.
2 A canned cycle can be performed on any plane (including parallel axes for plane
definition). When G code system A is used, however, U, V, and W cannot be set
as a parallel axis.
3 The direction of the length means the direction of the first axis on the plane as
follows:
ZX plane: Z-axis direction
YZ plane: Y-axis direction
XY plane: X-axis direction
4 The direction of the end face means the direction of the second axis on the
plane as follows:
ZX plane: X-axis direction
YZ plane: Z-axis direction
XY plane: Y-axis direction
- 232 -
6.MEMORY OPERATION
B-64604EN-1/01 PROGRAMMING USING Series 10/11 FORMAT
X axis
(R)....Rapid traverse
Z (F) ....Cutting feed
W
4(R)
A
3(F) 2(F) 1(R) U/2
A’
X/2
Z axis
Explanation
- Operations
A straight cutting cycle performs four operations:
(1) Operation 1 moves the tool from the start point (A) to the specified coordinate of the second axis on
the plane (specified X-coordinate for the ZX plane) in rapid traverse.
(2) Operation 2 moves the tool to the specified coordinate of the first axis on the plane (specified
Z-coordinate for the ZX plane) in cutting feed. (The tool is moved to the cutting end point (A') in the
direction of the length.)
(3) Operation 3 moves the tool to the start coordinate of the second axis on the plane (start X-coordinate
for the ZX plane) in cutting feed.
(4) Operation 4 moves the tool to the start coordinate of the first axis on the plane (start Z-coordinate for
the ZX plane) in rapid traverse. (The tool returns to the start point (A).)
NOTE
In single block mode, operations 1, 2, 3 and 4 are performed by pressing the
cycle start button once.
- 233 -
6. MEMORY OPERATION
USING Series 10/11 FORMAT PROGRAMMING B-64604EN-1/01
X axis
(R ).... R a pid tra ve rse
(F ) .... C u ttin g fe ed
4 (R )
A
3 (F )
U /2 1 (R )
A’
2(F )
X /2 I
W
Z
Z axis
Explanation
Address I, J, or K for specifying a taper varies with the plane selected.
The figure of a taper is determined by the coordinates of the cutting end point (A') in the direction of the
length and the sign of the taper amount (address I, J, or K). For the cycle in the figure above, a minus sign
is added to the taper amount.
NOTE
The increment system of address I, J, or K for specifying a taper depends on the
increment system for the reference axis. Specify a radius value at I, J, or K.
- Operations
A taper cutting cycle performs the same four operations as a straight cutting cycle.
However, operation 1 moves the tool from the start point (A) to the position obtained by adding the taper
amount to the specified coordinate of the second axis on the plane (specified X-coordinate for the ZX
plane) in rapid traverse.
Operations 2, 3, and 4 after operation 1 are the same as for a straight cutting cycle.
- 234 -
6.MEMORY OPERATION
B-64604EN-1/01 PROGRAMMING USING Series 10/11 FORMAT
NOTE
In single block mode, operations 1, 2, 3, and 4 are performed by pressing the
cycle start button once.
- Relationship between the sign of the taper amount and tool path
The tool path is determined according to the relationship between the sign of the taper amount (address I,
J, or K) and the cutting end point in the direction of the length in the absolute or incremental
programming as Table 6.3.1.2 (a).
X X
Z W
Z
4(R)
2(F)
I
U/2 3(F) 1(R)
X X
Z Z W
4(R)
1(R) I
2(F)
U/2 X U/2 3(F)
3(F)
2(F) 1(R)
I
4(R)
X W
- 235 -
6. MEMORY OPERATION
USING Series 10/11 FORMAT PROGRAMMING B-64604EN-1/01
X axis
Z W
4(R) A
3(R) U/2
2(F) 1(R)
A’
X/2
Z axis
(R) ... Rapid traverse
(F).... Cutting feed
Explanation
The ranges of thread leads and restrictions related to the spindle speed are the same as for threading with
G32.
- Operations
A straight threading cycle performs four operations:
(1) Operation 1 moves the tool from the start point (A) to the specified coordinate of the second axis on
the plane (specified X-coordinate for the ZX plane) in rapid traverse.
(2) Operation 2 moves the tool to the specified coordinate of the first axis on the plane (specified
Z-coordinate for the ZX plane) in cutting feed. At this time, thread chamfering is performed.
(3) Operation 3 moves the tool to the start coordinate of the second axis on the plane (start X-coordinate
for the ZX plane) in rapid traverse. (Retraction after chamfering)
(4) Operation 4 moves the tool to the start coordinate of the first axis on the plane (start Z-coordinate for
the ZX plane) in rapid traverse. (The tool returns to the start point (A).)
CAUTION
Notes on this threading are the same as in threading in G32.
However, a stop by feed hold is as follows; Stop after completion of path 3 of
threading cycle.
NOTE
In the single block mode, operations 1, 2, 3, and 4 are performed by pressing
cycle start button once.