FANUC Series 30+-MODEL B
FANUC Series 31+-MODEL B
FANUC Series 32+-MODEL B
Common to Lathe System / Machining Center System
OPERATOR'S MANUAL
B-64484EN/03
Page 2
• 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 Series 30i-B, Series 31i-B5 from Japan is 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
some serious accidents or losses are predicted due to a failure of the product, make
adequate consideration for 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”.
Page 3
B-64484EN/03 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
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
DEFINITION OF WARNING, CAUTION, AND NOTE
This manual includes safety precautions for protecting the user and preventing damage to the machine.
Precautions are classified into Warning and Caution according to their bearing on safety. Also,
supplementary information is described as a Note. Read the Warning, Caution, and Note thoroughly
before attempting to use the machine.
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.
•Read this manual carefully, and store it in a safe place.
s-1
Page 4
SAFETY PRECAUTIONSB-64484EN/03
GENERAL WARNINGS AND CAUTIONS
WARNING
1 Never attempt to machine a workpiece without first checking the operation of the
machine. Before starting a production run, ensure that the machine is operating
correctly by performing a trial run using, for example, the single block, feedrate
override, or machine lock function or by operating the machine with neither a tool
nor workpiece mounted. Failure to confirm the correct operation of the machine
may result in the machine behaving unexpectedly, possibly causing damage to
the workpiece and/or machine itself, or injury to the user.
2 Before operating the machine, thoroughly check the entered data.
Operating the machine with incorrectly specified data may result in the machine
behaving unexpectedly, possibly causing damage to the workpiece and/or
machine itself, or injury to the user.
3 Ensure that the specified feedrate is appropriate for the intended operation.
Generally, for each machine, there is a maximum allowable feedrate.
The appropriate feedrate varies with the intended operation. Refer to the manual
provided with the machine to determine the maximum allowable feedrate.
If a machine is run at other than the correct speed, it may behave unexpectedly,
possibly causing damage to the workpiece and/or machine itself, or injury to the
user.
4 When using a tool compensation function, thoroughly check the direction and
amount of compensation.
Operating the machine with incorrectly specified data may result in the machine
behaving unexpectedly, possibly causing damage to the workpiece and/or
machine itself, or injury to the user.
5 The parameters for the CNC and PMC are factory-set. Usually, there is not need
to change them. When, however, there is not alternative other than to change a
parameter, ensure that you fully understand the function of the parameter before
making any change.
Failure to set a parameter correctly may result in the machine behaving
unexpectedly, possibly causing damage to the workpiece and/or machine itself,
or injury to the user.
6 Immediately after switching on the power, do not touch any of the keys on the
MDI panel until the position display or alarm screen appears on the CNC unit.
Some of the keys on the MDI panel 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.
7 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.
8 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
Page 5
B-64484EN/03 SAFETY PRECAUTIONS
CAUTION
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
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.
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.
WARNINGS AND CAUTIONS RELATED TO PROGRAMMING
This section covers the major safety precautions related to programming. Before attempting to perform
programming, read the supplied OPERATOR’S MANUAL carefully such that you are fully familiar with
their contents.
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
Page 6
SAFETY PRECAUTIONSB-64484EN/03
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
Tool post interference check
A tool post interference check 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
Absolute/incremental mode
If a program created with absolute values is run in incremental mode, or vice
versa, the machine may behave unexpectedly.
9
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.
10
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.
11
Programmable mirror image
Note that programmed operations vary considerably when a programmable
mirror image is enabled.
12
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.
s-4
Page 7
B-64484EN/03 SAFETY PRECAUTIONS
WARNINGS AND CAUTIONS RELATED TO HANDLING
This section presents safety precautions related to the handling of machine tools. Before attempting to
operate your machine, read the supplied OPERATOR’S MANUAL carefully, such that you are fully
familiar with their contents.
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.
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.
s-5
Page 8
SAFETY PRECAUTIONSB-64484EN/03
WARNING
8
Software operator's panel and menu switches
Using the software operator's panel and menu switches, in combination with the
MDI panel, 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 panel 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 panel problem. So, when the motors must be stopped,
use the emergency stop button instead of the RESET key to ensure security.
10
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.
11
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.
12
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.
13
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.
14
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.
s-6
Page 9
B-64484EN/03 SAFETY PRECAUTIONS
WARNINGS RELATED TO DAILY MAINTENANCE
WARNING
1
Memory backup 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.
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 OPERATOR’S
MANUAL (Common to T/M series) 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.
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
of the battery replacement procedure.
i
series Maintenance Manual for details
α
s-7
Page 10
SAFETY PRECAUTIONSB-64484EN/03
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
I. GENERAL
Describes chapter organization, applicable models, related manuals, and notes for reading this
manual.
II. PROGRAMMING
Describes each function: Format used to program functions in the NC language, explanations, and
limitations.
III. OPERATION
Describes the manual operation and automatic operation of a machine, procedures for inputting and
outputting data, and procedures for editing a program.
IV. MAINTENANCE
Describes procedures for daily maintenance and replacing batteries.
APPENDIX
Lists parameters, valid data ranges, and alarms.
NOTE
1 This manual describes the functions common to the lathe system and machining
center system. For the functions specific to the lathe system or machining center
system, refer to the OPERATOR’S MANUAL (Lathe System) (B-64484EN-1) or
the OPERATOR’S MANUAL (Machining Center System) (B-64484EN-2).
2 Some functions described in this manual may not be applied to some products.
For detail, refer to the Descriptions manual (B-64482EN).
3 This manual does not detail the parameters not mentioned in the text. For details
of those parameters, refer to the Parameter Manual (B-64490EN).
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.
4 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.
Model name Abbreviation
FANUC Series 30i-B 30i –B Series 30i
FANUC Series 31i-B 31i –B
FANUC Series 31i-B5 31i –B5
FANUC Series 32i-B 32i –B Series 32i
NOTE
1 For an explanatory purpose, the following descriptions may be used according to
the types of path control used:
- T series: For the lathe system
- M series: For the machining center system
Series 31i
- 3 -
Page 34
1.GENERALGENERALB-64484EN/03
NOTE
2 Unless otherwise noted, the model names 31i-B, 31i-B5, and 32i-B are
collectively referred to as 30i. However, this convention is not necessarily
observed when item 3 below is applicable.
3 Some functions described in this manual may not be applied to some products.
For details, refer to the Descriptions (B-64482EN).
Special symbols
This manual uses the following symbols:
M
-
Indicates a description that is valid only for the machine center system set as system control type (in
parameter No. 0983).
In a general description of the method of machining, a machining center system operation is identified by
a phase such as "for milling machining".
-
T
Indicates a description that is valid only for the lathe system set as system control type (in parameter No.
0983).
In a general description of the method of machining, a lathe system operation is identified by a phrase
such as "for lathe cutting".
-
Indicates the end of a description of a system control type.
When a system control type mark mentioned above is not followed by this mark, the description of the
system control type is assumed to continue until the next item or paragraph begins. In this case, the next
item or paragraph provides a description common to the control types.
- 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.
Related manuals of
Series 30i- MODEL B
Series 31i- MODEL B
Series 32i- MODEL B
The following table lists the manuals related to Series 30i-B, Series 31i-B, Series 32i-B. This manual is
indicated by an asterisk(*).
Macro Executor PROGRAMMING MANUAL B-63943EN-2
Macro Compiler PROGRAMMING MANUAL B-66263EN
C Language Executor PROGRAMMING MANUAL B-63943EN-3
PMC
PMC PROGRAMMING MANUAL B-64513EN
Network
PROFIBUS-DP Board CONNECTION MANUAL B-63993EN
Fast Ethernet / Fast Data Server OPERATOR’S MANUAL B-64014EN
DeviceNet Board CONNECTION MANUAL B-64043EN
FL-net Board CONNECTION MANUAL B-64163EN
CC-Link Board CONNECTION MANUAL B-64463EN
Operation guidance function
MANUAL GUIDE i (Common to Lathe System/Machining Center System)
OPERATOR’S MANUAL
MANUAL GUIDE i (For Machining Center System) OPERATOR’S MANUAL
MANUAL GUIDE i (Set-up Guidance Functions) OPERATOR’S MANUAL
Dual Check Safety
Dual Check Safety CONNECTION MANUAL B-64483EN-2
B-63874EN
B-63874EN-2
B-63874EN-1
Related manuals of SERVO MOTOR αi/βi series
The following table lists the manuals related to SERVO MOTOR αi/βi series
Table 2 Related manuals
Manual name Specification number
FANUC AC SERVO MOTOR αi series DESCRIPTIONS
FANUC AC SPINDLE MOTOR αi series DESCRIPTIONS
FANUC AC SERVO MOTOR βi series DESCRIPTIONS
FANUC AC SPINDLE MOTOR βi series DESCRIPTIONS
FANUC SERVO AMPLIFIER αi series DESCRIPTIONS
FANUC SERVO AMPLIFIER βi series DESCRIPTIONS
FANUC SERVO MOTOR αis series
FANUC SERVO MOTOR αi series
FANUC AC SPINDLE MOTOR αi series
FANUC SERVO AMPLIFIER αi series
MAINTENANCE MANUAL
FANUC SERVO MOTOR βis series
FANUC AC SPINDLE MOTOR βi series
FANUC SERVO AMPLIFIER βi series
MAINTENANCE MANUAL
FANUC AC SERVO MOTOR αi series
FANUC AC SERVO MOTOR βi series
FANUC LINEAR MOTOR LiS series
FANUC SYNCHRONOUS BUILT-IN SERVO MOTOR DiS series PARAMETER
MANUAL
FANUC AC SPINDLE MOTOR αi/βi series,
BUILT-IN SPINDLE MOTOR Bi series
PARAMETER MANUAL
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.
1.1 NOTES ON READING THIS MANUAL
CAUTION
1 The function of an CNC machine tool system depends not only on the CNC, but
on the combination of the machine tool, its magnetic cabinet, the servo system,
the CNC, the operator's panels, etc. It is too difficult to describe the function,
programming, and operation relating to all combinations. This manual generally
describes these from the stand-point of the CNC. So, for details on a particular
CNC machine tool, refer to the manual issued by the machine tool builder, which
should take precedence over this manual.
2 In the header field of each page of this manual, a chapter title is indicated so that
the reader can reference necessary information easily.
By finding a desired title first, the reader can reference necessary parts only.
3 This manual describes as many reasonable variations in equipment usage as
possible. It cannot address every combination of features, options and commands
that should not be attempted.
If a particular combination of operations is not described, it should not be attempted.
1.2 NOTES ON VARIOUS KINDS OF DATA
CAUTION
Machining programs, parameters, offset data, etc. are stored in the CNC unit
internal non-volatile memory. In general, these contents are not lost by the
switching ON/OFF of the power. However, it is possible that a state can occur
where precious data stored in the non-volatile memory has to be deleted,
because of deletions from a maloperation, or by a failure restoration. In order to
restore rapidly when this kind of mishap occurs, it is recommended that you
create a copy of the various kinds of data beforehand.
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.
- 6 -
Page 37
II. PROGRAMMING
Page 38
Page 39
B-64484EN/03 PROGRAMMING 1.GENERAL
X
1 GENERAL
Chapter 1, "GENERAL", consists of the following sections:
1.1 TOOL MOVEMENT ALONG WORKPIECE PARTS FIGURE-INTERPOLATION .......................9
1.2 FEED-FEED FUNCTION ..................................................................................................................11
1.3 PART DRAWING AND TOOL MOVEMENT.................................................................................12
1.4 CUTTING SPEED - SPINDLE FUNCTION .....................................................................................21
1.5 SELECTION OF TOOL USED FOR VARIOUS MACHINING - TOOL FUNCTION ...................22
1.6 COMMAND FOR MACHINE OPERATIONS - AUXILIARY FUNCTION...................................23
1.7 PROGRAM CONFIGURATION .......................................................................................................24
1.8 TOOL MOVEMENT RANGE - STROKE ........................................................................................26
1.1 TOOL MOVEMENT ALONG WORKPIECE PARTS FIGURE-
INTERPOLATION
The tool moves along straight lines and arcs constituting the workpiece parts figure (See Chapter,
“INTERPOLATION FUNCTIONS”).
Explanation
The function of moving the tool along straight lines and arcs is called the interpolation.
- Tool movement along a straight line
• For milling machining
• For lathe cutting
Tool
Workpiece
Tool
Program
G01X_Y_ ;
X_ ;
Program
G01Z_ ;
G01X_Z_ ;
Workpiece
Fig. 1.1 (a) Tool movement along a straight line
- 9 -
Z
Page 40
1.GENERALPROGRAMMINGB-64484EN/03
X
- Tool movement along an arc
• For milling machining
Program
G03 X_ Y_ R_ ;
Workpiece
Tool
• For lathe cutting
Program
G02 X_ Z_ R_ ;
or
G03 X_ Z_ R_ ;
Workpiece
Fig. 1.1 (b) Tool movement along an arc
Z
The term interpolation refers to an operation in which the tool moves along a straight line or arc in the
way described above.
Symbols of the programmed commands G01, G02, ... are called the preparatory function and specify the
type of interpolation conducted in the control unit.
(a) Movement along straight line
G01 Y_ ;
X_ Y_ ;
CNC
(b) Movement along arc
G03X_ Y_ R_ ;
X axis
Interpolation
Y axis
a)Movement
along straight
line
b)Movement
along arc
Fig. 1.1 (c) Interpolation function
Tool
movement
NOTE
Some machines move tables instead of tools but this manual assumes that tools
are moved against workpieces.
- 10 -
Page 41
B-64484EN/03 PROGRAMMING 1.GENERAL
1.2 FEED-FEED FUNCTION
Movement of the tool at a specified speed for cutting a workpiece is called the feed.
•For milling machining (feed per minute)
mm/min
F
Workpiece
Table
Tool
• For lathe cutting (feed per revolution)
F
Fig. 1.2 (a) Feed function
Feed amount per minute
(mm/rev)
For example, to feed the tool at a rate of 150 mm/min (feed per minute) or 150 mm/rev (feed per
revolution), specify the following in the program:
F150.0
The function of deciding the feed rate is called the feed function (See Chapter, “FEED FUNCTIONS”).
- 11 -
Page 42
1.GENERALPROGRAMMINGB-64484EN/03
1.3 PART DRAWING AND TOOL MOVEMENT
1.3.1 Reference Position (Machine-specific Position)
A CNC machine tool is provided with a fixed position. Normally, tool change and programming of
absolute zero point as described later are performed at this position. This position is called the reference
position.
• For milling machining
Reference position
Tool
Workpiece
Table
• For lathe cutting
Tool post
Chuck
Fig. 1.3.1 (a) Reference position
Reference
position
Explanation
The tool can be moved to the reference position in two ways:
1. Manual reference position return (See Section, “MANUAL REFERENCE POSITION RETURN”)
Reference position return is performed by manual button operation.
2. Automatic reference position return (See Section, “REFERENCE POSITION RETURN”)
In general, manual reference position return is performed first after the power is turned on. In order
to move the tool to the reference position for tool change thereafter, the function of automatic
reference position return is used.
- 12 -
Page 43
B-64484EN/03 PROGRAMMING 1.GENERAL
1.3.2 Coordinate System on Part Drawing and Coordinate System
Specified by CNC - Coordinate System
• For milling machining
Z
Z
• For lathe cutting
X
Y
Part drawing
Program
X
Tool
Z
Workpiece
Machine tool
Y
X
Coordinate system
CNC
Command
Tool
Y
X
X
Part drawing
Program
Z
Z
Coordinate system
CNC
Command
X
Workpiece
Z
Machine tool
Fig. 1.3.2 (a) Coordinate system
- 13 -
Page 44
1.GENERALPROGRAMMINGB-64484EN/03
Explanation
- Coordinate system
The following two coordinate systems are specified at different locations:
(See Chapter, “ COORDINATE SYSTEM”)
1 Coordinate system on part drawing
The coordinate system is written on the part drawing. As the program data, the coordinate values on
this coordinate system are used.
2. Coordinate system specified by the CNC
The coordinate system is prepared on the actual machine tool table. This can be achieved by
programming the distance from the current position of the tool to the zero point of the coordinate
system to be set.
Y
230
300
Program
origin
Fig. 1.3.2 (b) Coordinate system specified by the CNC
Present tool position
Distance to the zero point of a coordinate system to be set
X
Concrete programming methods for setting coordinate systems specified by the CNC are explained in
Chapter, “ COORDINATE SYSTEM”
The positional relation between these two coordinate systems is determined when a workpiece is set on
the table.
- 14 -
Page 45
B-64484EN/03 PROGRAMMING 1.GENERAL
• For milling machining
Coordinate system on
part drawing estab
Coordinate system
specified by the CNC
established on the table
Table
Y
Y
Workpiece
lished on the workpiece
X
X
• For lathe cutting
Coordinate system specified by the
CNC established on the chuck
X
Workpiece
Z
Chuck
Fig. 1.3.2 (c) Coordinate system specified by CNC and coordinate system on part drawing
Coordinate system on part drawing
established on the workpiece
X
Z
The tool moves on the coordinate system specified by the CNC in accordance with the command program
generated with respect to the coordinate system on the part drawing, and cuts a workpiece into a shape on
the drawing.
Therefore, in order to correctly cut the workpiece as specified on the drawing, the two coordinate systems
must be set at the same position.
- 15 -
Page 46
1.GENERALPROGRAMMINGB-64484EN/03
A
- Methods of setting the two coordinate systems in the same position
M
To set the two coordinate systems at the same position, simple methods shall be used according to
workpiece shape, the number of machinings.
1. Using a standard plane and point of the workpiece.
Y
Fixed distance
Program
origin
Bring the tool center to the workpiece standard point.
nd set the coordinate system specified by CNC at this position.
2. Mounting a workpiece directly against the jig
Jig
Meet the tool center to the reference position. And set the coordinate
specified by CNC at this position. (Jig shall be mounted on the
point from the reference
Workpiece's
standard point
Fixed distance
X
Program origin
3. Mounting a workpiece on a pallet, then mounting the workpiece and pallet on the jig
Pallet
Jig
Workpiece
(Jig and coordinate system shall be specified by the same as (2)).
- 16 -
Page 47
B-64484EN/03 PROGRAMMING 1.GENERAL
p
T
The following method is usually used to define two coordinate systems at the same location.
1 When coordinate zero point is set at chuck face
- Coordinates and
dimensions on part drawing
- Coordinate system on
lathe as s
ecified by CNC
Chuck
X
40
X
Program origin
Workpiece
6040
150
Workpiece
Z
Z
When the coordinate system on the part drawing and the coordinate system specified by the CNC are
set at the same position, the program origin can be set on the chuck face.
2. When coordinate zero point is set at workpiece end face.
- Coordinates and
dimensions on part drawing
- Coordinate system on
lathe as specified by CNC
Chuck
60
Workpiece
100
Workpiece
80
X
30
Z
30
X
Z
Program origin
When the coordinate system on the part drawing and the coordinate system specified by the CNC are
set at the same position, the program origin can be set on the end face of the workpiece.
- 17 -
Page 48
1.GENERALPROGRAMMINGB-64484EN/03
A
X
A
1.3.3 How to Indicate Command Dimensions for Moving the Tool
(Absolute and Incremental Programming)
Explanation
Command for moving the tool can be indicated by absolute command or incremental command (See
Section, “ABSOLUTE AND INCREMENTAL PROGRAMMING”).
- Absolute command
The tool moves to a point at "the distance from zero point of the coordinate system" that is to the position
of the coordinate values.
• For milling machining
• For lathe cutting
Z
X
Command specifying movement from
point A to point B
X
Tool
Y
B(10.0,30.0,5.0)
G90 X10.0 Y30.0 Z5.0 ;
Coordinates of point B
Tool
Workpiece
φ
30
70
Command specifying movement from point A to
point B
B
Z
110
30.0Z70.0;
Coordinates of point B
- 18 -
Page 49
B-64484EN/03 PROGRAMMING 1.GENERAL
A
A
φ
A
- Incremental command
Specify the distance from the previous tool position to the next tool position.
• For milling machining
Z
Tool
• For lathe cutting
Z=-10.0
X
B
Y- 30 .0
Command specifying movement from
point A to point B
X
Workpiece
φ
30
B
X=40.0
Y
G91 X40.0 Y-30.0 Z-10.0 ;
Distance and direction for
movement along each axis
Tool
-30.0 (diameter value)
60
Z
-40.0
Command specifying movement from point
to point B
U-30.0 W-40.0
Distance and direction for movement along each axis
- 19 -
Page 50
1.GENERALPROGRAMMINGB-64484EN/03
A
φ30ABφ
A
A
- Diameter programming / radius programming
Dimensions of the X-axis can be set in diameter or in radius. Which programming is used is determined
according to the setting of bit 3 (DIA) of parameter No. 1006.
1. Diameter programming
In diameter programming, specify the diameter value indicated on the drawing as the value of the X-
axis.
X
Workpiece
40
60
80
Coordinate values of points A and B
Z
(30.0, 80.0), B(40.0, 60.0)
2. Radius programming
In radius programming, specify the distance from the center of the workpiece, i.e. the radius value as
the value of the X-axis.
X
B
60
20
15
80
Workpiece
Coordinate values of points A and B
Z
(15.0, 80.0), B(20.0, 60.0)
- 20 -
Page 51
B-64484EN/03 PROGRAMMING 1.GENERAL
φ
φ
1
1.4 CUTTING SPEED - SPINDLE FUNCTION
Explanation
The speed of the tool with respect to the workpiece when the workpiece is cut is called the cutting speed.
As for the CNC, the cutting speed can be specified by the spindle speed in min
• For milling machining
Tool
Spindle speed N
min
-1
Workpiece
Tool diameter
D mm
V: Cutting speed
m/min
<When a workpiece should be machined with a tool 100 mm in diameter at a cutting speed of 80 m/min.>
The spindle speed is approximately 250 min
-1
, which is obtained from N=1000v/πD. Hence the following
command is required:
S250;
Commands related to the spindle speed are called the spindle speed function (See Chapter, “SPINDLE
SPEED FUNCTION (S FUNCTION)”).
•For lathe cutting
To ol
-1
unit.
Cutting speed
v m/min
Workpiece
Spindle speed
D
N min
-
<When a workpiece 200 mm in diameter should be machined at a cutting speed of 300 m/min.>
The spindle speed is approximately 478 min
-1
, which is obtained from N=1000v/πD. Hence the following
command is required:
S478;
Commands related to the spindle speed are called the spindle speed function (See Chapter, “SPINDLE
SPEED FUNCTION (S FUNCTION)”).
The cutting speed v (m/min) can also be specified directly by the speed value. Even when the workpiece
diameter is changed, the CNC changes the spindle speed so that the cutting speed remains constant.
This function is called the constant surface speed control function (See Section, “CONSTANT
SURFACE SPEED CONTROL (G96, G97)”).
- 21 -
Page 52
1.GENERALPROGRAMMINGB-64484EN/03
A
1.5 SELECTION OF TOOL USED FOR VARIOUS MACHINING -
TOOL FUNCTION
For each of various types of machining (such as drilling, tapping, boring, and milling for milling
machining, or rough machining, semifinish machining, finish machining, threading, and grooving for
lathe cutting), a necessary tool is to be selected. When a number is assigned to each tool and the number
is specified in the program, the corresponding tool is selected.
Examples
M
Tool number
01
02
TC magazine
Fig. 1.5 (a) Tool used for various machining
<When No.01 is assigned to a drilling tool>
When the tool is stored at location 01 in the ATC magazine, the tool can be selected by specifying T01.
This is called the tool function (See Chapter, “TOOL FUNCTION (T FUNCTION)”).
T
Tool number
01
06
02
03
Fig. 1.5 (b) Tool used for various machining
05
04
Tool post
<When No.01 is assigned to a roughing tool>
When the tool is stored at location 01 of the tool post, the tool can be selected by specifying T0101. This
is called the tool function (See Chapter, “TOOL FUNCTION (T FUNCTION)”).
- 22 -
Page 53
B-64484EN/03 PROGRAMMING 1.GENERAL
1.6 COMMAND FOR MACHINE OPERATIONS - AUXILIARY
FUNCTION
When a workpiece is actually machined with a tool, the spindle is rotated, coolant is supplied, and the
chuck is opened/closed. So, control needs to be exercised on the spindle motor of the machine, coolant
valve on/off operation, and chuck open/close operation.
• For milling machining
Tool
Spindle
rotation
Coolant on/off
Workpiece
• For lathe cutting
Coolant on/off
Chuck open/close
Workpiece
Fig. 1.6 (a) Auxiliary function
Spindle rotation
The function of specifying the on-off operations of the components of the machine is called the auxiliary
function. In general, the function is specified by an M code (See Chapter, “AUXILIARY FUNCTION”).
For example, when M03 is specified, the spindle is rotated clockwise at the specified spindle speed.
- 23 -
Page 54
1.GENERALPROGRAMMINGB-64484EN/03
A
1.7 PROGRAM CONFIGURATION
A group of commands given to the CNC for operating the machine is called the program. By specifying
the commands, the tool is moved along a straight line or an arc, or the spindle motor is turned on and off.
In the program, specify the commands in the sequence of actual tool movements.
Block
Block
Tool movement
Block
sequence
Program
Fig. 1.7 (a) Program configuration
Block
:
:
:
:
Block
A group of commands at each step of the sequence is called the block. The program consists of a group of
blocks for a series of machining. The number for discriminating each block is called the sequence number,
and the number for discriminating each program is called the program number (See Chapter,
“PROGRAM CONFIGURATION”).
Explanation
The block and the program have the following configurations.
- Block
1 block
Nxxxxx Gxx Xxxx.x Yxxx.x Mxx Sxx Txx ;
Sequence
number
Preparatory
function
Dimension word
Fig. 1.7 (b) Block configuration
uxiliary
function
Spindle
function
Tool
function
End of block
A block starts with a sequence number to identify the block and ends with an end-of-block code.
This manual indicates the end-of-block code by; (LF in the ISO code and CR in the EIA code).
The contents of the dimension word depend on the preparatory function. In this manual, the portion of the
dimension word may be represent as IP_.
- 24 -
Page 55
B-64484EN/03 PROGRAMMING 1.GENERAL
- Program
;
Oxxxxx ;
Program number
Block
Block
Block
:
:
:
M30 ;
:
:
:
End of program
Fig. 1.7 (c) Program configuration
Normally, a program number is specified after the end-of-block (;) code at the beginning of the program,
and a program end code (M02 or M30) is specified at the end of the program.
- Main program and subprogram
When machining of the same pattern appears at many portions of a program, a program for the pattern is
created. This is called the subprogram. On the other hand, the original program is called the main
program. When a subprogram execution command appears during execution of the main program,
commands of the subprogram are executed. When execution of the subprogram is finished, the sequence
returns to the main program.
Main program
:
:
M98P1001
:
:
:
Subprogram #1
O1001
M98P1002
:
:
M98P1001
:
:
:
M99
Subprogram #2
O1002
M99
Fig. 1.7 (d) Subprogram execution
- 25 -
Page 56
1.GENERALPROGRAMMINGB-64484EN/03
y
1.8 TOOL MOVEMENT RANGE - STROKE
Limit switches are installed at the ends of each axis on the machine to prevent tools from moving beyond
the ends. The range in which tools can move is called the stroke.
Machine zero point
Motor
Limit
switch
Stroke area
Besides strokes defined with limit switches, the operator can define an area which the tool cannot enter
using a program or data in memory. This function is called stroke check (See Section, “STORED
STROKE CHECK”).
Motor
Limit
switch
Machine zero point
these distances.
Specif
Tools cannot enter this area. The area is
specified by data in memory or a program.
- 26 -
Page 57
B-64484EN/03 PROGRAMMING 2.CONTROLLED AXES
2 CONTROLLED AXES
Chapter 2, "CONTROLLED AXES", consists of the following sections:
2.1 NUMBER OF CONTROLLED AXES...............................................................................................27
2.2 NAMES OF AXES .............................................................................................................................27
Machining center system3 axes 3 axes 3 axes 3 axes
NOTE
1 The maximum number of controlled axes that can be used is limited depending
on the option configuration. Refer to the manual provided by the machine tool
builder for details.
2 The number of simultaneously controllable axes for manual operation (jog feed,
manual reference position return, or manual rapid traverse) is 1 or 3 (1 when bit
0 (JAX) of parameter No. 1002 is set to 0 and 3 when it is set to 1).
Series 30i-BSeries 31i-B5Series 31i-B Series 32i-B
Max. 24 axesMax. 12 axesMax. 12 axes Max. 5 axes
Max. 32 axesMax. 20 axesMax. 20 axes Max. 9 axes
2 axes 2 axes 2 axes 2 axes
Max. 24 axesMax. 5 axes Max. 4 axes Max. 4 axes
2.2 NAMES OF AXES
Explanation
The move axes of machine tools are assigned names. These names are referred to as addresses or axis
names. Axis names are determined according to the machine tool. The naming rules comply with
standards such as the ISO standards.
With complex machines, one character would become insufficient for representing axis names. So, up to
three characters can be used for axis names. A move axis may be named "X", "X1", or "XA1". The first
character of the three characters is called the first axis name character, the second character is called the
second axis name character, and third character is called the third axis name character.
Example)
- 27 -
Page 58
2.CONTROLLED AXESPROGRAMMINGB-64484EN/03
X A 1
3rd axis name character
2nd axis name character
1st axis name character
NOTE
1 Axis names are predetermined according to the machine used. Refer to the
manual supplied by the machine tool builder.
2 Since many ordinary machines use one character to represent each address,
one-character addresses are used in the description in this manual.
2.3 INCREMENT SYSTEM
Explanation
The increment system consists of the least input increment (for input) and least command increment (for
output). The least input increment is the least increment for programming the travel distance. The least
command increment is the least increment for moving the tool on the machine. Both increments are
represented in mm, inches, or deg.
Five types of increment systems are available as indicated in Table 2.3 (a). For each axis, an increment
system can be set using a bit from bit 0 to bit 3 (ISA, ISC, ISD, or ISE) of parameter No. 1013.
IS-C, IS-D, and IS-E are optional functions.
Table 2.3 (a) Increment system
Name of increment system Least input increment Least command increment
0.01 mm 0.01 mm
IS-A
IS-B
IS-C
IS-D
IS-E
The least command increment is either metric or inch depending on the machine tool. Set metric or inch
to the bit 0 (INM) of parameter No. 0100.
For selection between metric and inch for the least input increment, G code (G20 or G21) or a setting
parameter selects it.
Combined use of the inch system and the metric system is not allowed. There are functions that cannot be
used between axes with different unit systems (circular interpolation, cutter compensation, etc.). For the
increment system, see the machine tool builder's manual.
0.001 inch 0.001 inch
0.01 deg 0.01 deg
0.001 mm 0.001 mm
0.0001 inch 0.0001 inch
0.001 deg 0.001 deg
0.0001 mm 0.0001 mm
0.00001 inch 0.00001 inch
0.0001 deg 0.0001 deg
0.00001 mm 0.00001 mm
0.000001 inch 0.000001 inch
0.00001 deg 0.00001 deg
0.000001 mm 0.000001 mm
0.0000001 inch 0.0000001 inch
0.000001 deg 0.000001 deg
- 28 -
Page 59
B-64484EN/03 PROGRAMMING 2.CONTROLLED AXES
NOTE
1 The unit (mm or inch) in the table is used for indicating a diameter value for
diameter programming (when bit 3 (DIA) of parameter No. 1006 is set to 1) or a
radius value for radius programming.
2 Some increment systems are unavailable depending on the model. For details,
refer to “Descriptions” (B-64482EN).
2.4 MAXIMUM STROKE
Explanation
The maximum stroke controlled by this CNC is shown in the table below:
Maximum stroke = Least command increment × 999999999 (99999999 for IS-A)
Commands that exceed the maximum stroke are not permitted.
Table 2.4 (a) Maximum strokes
Name of increment system Least input increment Maximum stroke
0.01 mm ±999999.99 mm
IS-A
IS-B
IS-C
IS-D
IS-E
NOTE
1 The actual stroke depends on the machine tool.
2 The unit (mm or inch) in the table is used for indicating a diameter value for
diameter programming (when bit 3 (DIA) of parameter No. 1006 is set to 1) or a
radius value for radius programming.
3 Some increment systems are unavailable depending on the model. For details,
refer to "Descriptions" (B-64482EN).
0.001 inch ±99999.999 inch
0.01 deg ±999999.99 deg
0.001 mm ±999999.999 mm
0.0001 inch ±99999.9999 inch
0.001 deg ±999999.999 deg
0.0001 mm ±99999.9999 mm
0.00001 inch ±9999.99999 inch
0.0001 deg ±99999.9999 deg
0.00001 mm ±9999.99999 mm
0.000001 inch ±999.999999 inch
0.00001 deg ±9999.99999 deg
0.000001 mm ±999.999999 mm
0.0000001 inch ±99.9999999 inch
0.000001 deg ±999.999999 deg
- 29 -
Page 60
3. PREPARATORY FUNCTION
(G FUNCTION)
PROGRAMMINGB-64484EN/03
3 PREPARATORY FUNCTION (G FUNCTION)
A number following address G determines the meaning of the command for the concerned block.
G codes are divided into the following two types.
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_ ;
:
T
There are three G code systems in the lathe system: A, B, and C (Table 3.1(a)). Select a G code system
using bits 6 (GSB) and 7 (GSC) of parameter No. 3401. To use G code system B or C, the corresponding
option is needed. 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
(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.
(6) In the machining center system, the user can select G17, G18, or G19 by setting bits 1 (G18)
and 2 (G19) of parameter No. 3401.
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 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 canned cycle 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 for drilling.
6. G codes are indicated by group.
7. The group of G60 is switched according to the setting of bit 0 (MDL) of parameter No. 5431. (When
the MDL bit is set to 0, the 00 group is selected. When the MDL bit is set to 1, the 01 group is
selected.)
as indicated in Table.
- 30 -
Page 61
3.PREPARATORY FUNCTION
B-64484EN/03 PROGRAMMING
T
8. 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..
G25 G25 G25 Spindle speed fluctuation detection off
G26 G26 G26
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
G30 G30 G30 2nd, 3rd and 4th reference position return
G30.1 G30.1 G30.1
G07.1
(G107)
G12.1
(G112)
G13.1
(G113)
G07.1
(G107)
G12.1
(G112)
G13.1
(G113)
Table 3.2 (b) G code list
Group Function
01
3-dimensional coordinate system conversion CCW
AI contour control (command compatible with high precision
00
00
21
16
06
09
08
00
contour control), High-speed cycle machining, High-speed
binary program operation
HRV3, 4 on/off
Cylindrical interpolation
Programmable data input mode cancel
Polar coordinate interpolation mode
Polar coordinate interpolation cancel mode
YpZp plane selection
Input in mm
Stored stroke check function off
Spindle speed fluctuation detection on
Floating reference point return
- 36 -
Page 67
3.PREPARATORY FUNCTION
B-64484EN/03 PROGRAMMING
Table 3.2 (b) G code list
G code system
A B C
G30.2 G30.2 G30.2
G31 G31 G31 Skip function
G31.8 G31.8 G31.8
G32 G33 G33 Threading
G34 G34 G34 Variable lead threading
G35 G35 G35 Circular threading CW
G36 G36 G36
G37 G37 G37
G37.1 G37.1 G37.1
G37.2 G37.2 G37.2
G38 G38 G38 Tool radius/tool nose radius compensation: with vector held
G39 G39 G39
G40 G40 G40 Tool radius/tool nose radius compensation : cancel
G41 G41 G41 Tool radius/tool nose radius compensation : left
G42 G42 G42 Tool radius/tool nose radius compensation : right
G41.2 G41.2 G41.2 3-dimensional cutter compensation : left (type 1)
G41.3 G41.3 G41.3
G41.4 G41.4 G41.4
G41.5 G41.5 G41.5
G41.6 G41.6 G41.6 3-dimensional cutter compensation : left (type 2)
G42.2 G42.2 G42.2 3-dimensional cutter compensation : right (type 1)
G42.4 G42.4 G42.4
G42.5 G42.5 G42.5
G42.6 G42.6 G42.6
G40.1 G40.1 G40.1 Normal direction control cancel mode
G41.1 G41.1 G41.1 Normal direction control left on
G42 .1 G42 .1 G42 .1
G43 G43 G43
G44 G44 G44
G43.1 G43.1 G43.1
G43.4 G43.4 G43.4
G43.5 G43.5 G43.5
G43.7
(G44.7)
G44.1 G44.1 G44.1
G43.7
(G44.7)
G43.7
(G44.7)
Group Function
In-position check disable 2nd, 3rd, or 4th reference position
00
01
07
19
23
return
EGB-axis skip
Circular threading CCW (When bit 3 (G36) of parameter No.
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
No. 3405 is set to 0)
Automatic tool offset (X axis) (When bit 3 (G36) of parameter
No. 3405 is set to 1)
Automatic tool offset (Z axis) (When bit 3 (G36) of parameter
No. 3405 is set to 1)
Tool radius/tool nose radius compensation: corner rounding
interpolation
3-dimensional cutter compensation : right (type 1) (FS16icompatible command)
3-dimensional cutter compensation : right (type 1) (FS16icompatible command)
3-dimensional cutter compensation : right (type 2)
Normal direction control right on
Tool length compensation +
(Bit 3 (TCT) of parameter No. 5040 must be "1".)
Tool length compensation -
(Bit 3 (TCT) of parameter No. 5040 must be "1".)
Tool length compensation in tool axis direction
(Bit 3 (TCT) of parameter No. 5040 must be "1".)
Tool center point control (type 1)
(Bit 3 (TCT) of parameter No. 5040 must be "1".)
Tool center point control (type 2)
(Bit 3 (TCT) of parameter No. 5040 must be "1".)
Tool offset
(Bit 3 (TCT) of parameter No. 5040 must be "1".)
Tool offset conversion
(Bit 3 (TCT) of parameter No. 5040 must be "1".)
- 37 -
(G FUNCTION)
Page 68
3. PREPARATORY FUNCTION
(G FUNCTION)
PROGRAMMINGB-64484EN/03
Table 3.2 (b) G code list
G code system
A B C
G49
(G49.1)
G50 G92 G92 Coordinate system setting or max spindle speed clamp
G66 G66 G66 Macro modal call A
G66.1 G66.1 G66.1 Macro modal call B
G67 G67 G67
G68 G68 G68 04 Mirror image on for double turret or balance cutting mode
G68.1 G68.1 G68.1
G68.2 G68.2 G68.2 Tilted working plane command
G68.3 G68.3 G68.3 Tilted working plane command by tool axis direction
G68.4 G68.4 G68.4
G69 G69 G69 04
G69.1 G69.1 G69.1 17
G70 G70 G72 Finishing cycle
G71 G71 G73 Stock removal in turning
G72 G72 G74
G49
(G49.1)
G50.2
(G250)
G51.2
(G251)
G54
(G54.1)
G49
(G49.1)
G50.2
(G250)
G51.2
(G251)
G54
(G54.1)
Group Function
23
00
18
22
20
00
14
15
12
17
00
Tool length compensation cancel
(Bit 3 (TCT) of parameter No. 5040 must be "1".)
Workpiece coordinate system preset
Scaling
Programmable mirror image
Polygon turning cancel
Polygon turning
Tool center point retention type tool axis direction control
Workpiece coordinate system 1 selection
Workpiece coordinate system 6 selection
Cutting mode
Macro modal call A/B cancel
Coordinate system rotation start or 3-dimensional coordinate
system conversion mode on
Tilted working plane command (incremental multi-command)
Mirror image off for double turret or balance cutting mode
cancel
Coordinate system rotation cancel or 3-dimensional
coordinate system conversion mode off
The G00 command moves a tool to the position in the workpiece system specified with an absolute or an
incremental programming at a rapid traverse rate.
In the absolute programming, coordinate value of the end point is programmed.
In the incremental programming the distance the tool moves is programmed.
Format
G00 IP_ ;
IP_ : For an absolute programming, the coordinates of an end point, and for an
incremental programming, the distance the tool moves.
Explanation
Either of the following tool paths can be selected according to bit 1 (LRP) of parameter No. 1401.
•Nonlinear interpolation type positioning The tool is positioned with the rapid traverse rate for each axis separately. The tool path is normally
•Linear interpolation type positioning The tool is positioned within the shortest possible time at a speed that is not more than the rapid
traverse rate for each axis.
Linear interpolation type positioning
Start position
End position
Non linear interpolation type positioning
The rapid traverse rate in G00 command is set to the parameter No. 1420 for each axis independently by
the machine tool builder. In the positioning mode actuated by G00, the tool is accelerated to a
predetermined speed at the start of a block and is decelerated at the end of a block. Execution proceeds to
the next block after confirming the in-position.
"In-position " means that the feed motor is within the specified range.
This range is determined by the machine tool builder by setting to parameter No. 1826.
Limitation
The rapid traverse rate cannot be specified in the address F.
Even if linear interpolation type positioning is specified, nonlinear type interpolation positioning is used
in the following cases. Therefore, be careful to ensure that the tool does not foul the workpiece.
• G28 specifying positioning between the reference and intermediate positions.
• G53
4.2 SINGLE DIRECTION POSITIONING (G60)
For accurate positioning without play of the machine (backlash), final positioning from one direction is
available.
Overrun
Start point
Start point
End point
Temporary stop
Format
G60 IP_ ;
IP_ : For an absolute programming, the coordinates of an end point, and for an
incremental programming, the distance the tool moves.
Explanation
An overrun and a positioning direction are set by the parameter No. 5440. Even when a commanded
positioning direction coincides with that set by the parameter, the tool stops once before the end point.
G60, which is a one-shot G-code, can be used as a modal G-code in group 01 by setting 1 to the bit 0
(MDL) of parameter No. 5431.
This setting can eliminate specifying a G60 command for every block. Other specifications are the same
as those for a one-shot G60 command. When a one-shot G code is specified in the single direction
positioning mode, the one-shot G command is effective like G codes in group 01.
•Single direction positioning is not performed along an axis for which no overrun distance is set in
parameter No. 5440.
•Single direction positioning is not performed along an axis for which travel distance 0 is specified.
• The mirror image function is not applied in a parameter-set direction. Even in the mirror image
mode, the direction of single direction positioning remains unchanged. If positioning of linear
interpolation type is used, and the state of mirror image when a single direction positioning block is
looked ahead differs from the state of mirror image when the execution of the block is started, an
alarm is issued. When switching mirror image in the middle of a program, disable looking ahead by
specifying a non-buffering M code. Then, switch mirror image when there is no look-ahead block.
•In the cylindrical interpolation mode (G07.1), single direction positioning cannot be used.
•In the polar coordinate interpolation mode (G12.1), single direction positioning cannot be used.
•When specifying single direction positioning on a machine that uses arbitrary angular axis control,
first position the angular axis then specify the positioning of the Cartesian axis. If the reverse
specification order is used, or the angular axis and Cartesian axis are specified in the same block, an
incorrect positioning direction can result.
•In positioning at a restart position by program restart function, single direction positioning is not
performed.
M
• During canned cycle for drilling, no single direction positioning is effected in drilling axis.
• The single direction positioning does not apply to the shift motion in the canned cycles of G76 and
G87.
T
•The G-code for single direction positioning is always G60, if G-code system is A or B or C in all
case.
•The single direction positioning can not be commanded during the multiple repetitive cycle
(G70-G76).
•No single direction positioning is effected in the drilling or patting axis, during canned cycle for
drilling (G83-G89) and the rigid tapping (G84, G88). However, it can be commanded for
positioning.
• The single direction positioning can not be commanded during the canned cycle (G90, G92, G94).
• During the single direction positioning mode (G60), the following G-code can not be commanded.
IP_ : For an absolute programming, the coordinates of an end point, and for an incremental
programming, the distance the tool moves.
F_ : Speed of tool feed (Feedrate)
Explanation
A tools move along a line to the specified position at the feedrate specified in F.
The feedrate specified in F is effective until a new value is specified. It need not be specified for each
block.
The feedrate commanded by the F code is measured along the tool path. If the F code is not commanded,
the feedrate is regarded as zero.
The feedrate of each axis direction is as follows.
α
β
γ
G01
α
β
Feed rate of α axis direction : f
Feed rate of β axis direction :
Feed rate of γ axis direction :
Feed rate of ζ axis direction :
ζ
Ff ;
γ
ζ
α
α
2222
ζγβα
+++=L
F×=
β
F×=
γ
γ
f
F×=
ζ
f
F×=
L
β
f
L
L
ζ
L
The feedrate of the rotary axis is commanded in the unit of deg/min (the unit is decimal point position).
When the straight line axis α (such as X, Y, or Z) and the rotating axis β (such as A, B, or C) are linearly
interpolated, the feedrate is that in which the tangential feedrate in the α and β cartesian coordinate
system is commanded by F (mm/min).
β-axis feedrate is obtained ; at first, the time required for distribution is calculated by using the above
formula, then the β-axis feedrate unit is changed to deg/min.
A calculation example is as follows.
G91 G01 X20.0B40.0 F300.0 ;
This changes the unit of the C axis from 40.0 deg to 40mm with metric input.
The time required for distribution is calculated as follows:
22
+
300
4020
)(14907.0mm
The feedrate for the C axis is
40
14907.0
mindeg/3.268
In simultaneous 3 axes control, the feedrate is calculated the same way as in 2 axes control.
The command below will move a tool along a circular arc.
Format
Arc in the XpYp plane
G17
G03
Xp_ Yp_
R_
F_ ;
Arc in the ZpXp plane
G02 I_ K_
G02 I_ J_
G18
G03
Zp_ Xp_
R_
F_ ;
Arc in the YpZp plane
G02 J_ K_
G19
G03
Command Description
G17 Specification of arc on XpYp plane
G18 Specification of arc on ZpXp plane
G19 Specification of arc on YpZp plane
G02 Circular Interpolation : Clockwise direction (CW)
G03 Circular Interpolation : Counterclockwise direction (CCW)
Xp_ Command values of X axis or its parallel axis (set by parameter No. 1022)
Yp
_
Zp
_
I_ Xp axis distance from the start point to the center of an arc with sign
J_ Yp axis distance from the start point to the center of an arc with sign
K_ Zp axis distance from the start point to the center of an arc with sign
R_ Arc radius (with sign, radius value for lathe cutting)
F_ Feedrate along the arc
T
Yp_ Zp_
F_ ;
R_
Command values of Y axis or its parallel axis (set by parameter No. 1022)
Command values of Z axis or its parallel axis (set by parameter No. 1022)
NOTE
The U-, V-, and W-axes can be used with G-codes B and C.
Explanation
- Direction of the circular interpolation
"Clockwise"(G02) and "counterclockwise"(G03) on the XpYp plane (ZpXp plane or YpZp plane) are
defined when the XpYp plane is viewed in the positive-to-negative direction of the Zp axis (Yp axis or
Xp axis, respectively) in the Cartesian coordinate system. See the figure below (Fig. 4.4 (a)).
The end point of an arc is specified by address Xp, Yp or Zp, and is expressed as an absolute or
incremental value according to G90 or G91. For the incremental value, the distance of the end point
which is viewed from the start point of the arc is specified with sign.
- Distance from the start point to the center of arc
The arc center is specified by addresses I, J, and K for the Xp, Yp, and Zp axes, respectively. The
numerical value following I, J, or K, however, is a vector component in which the arc center is seen from
the start point, and is always specified as an incremental value irrespective of G90 and G91, as shown
below (Fig. 4.4 (b)).
I, J, and K must be signed according to the direction.
End point (x,y)
y
x
End point (z,x)
x
Start
i
point
z
k
Start
point
End point (y,z)
z
y
Start
point
Center
Center
Fig. 4.4 (b)
i
Center
k
I0, J0, and K0 can be omitted.
If the difference between the radius at the start point and that at the end point exceeds the permitted value
in a parameter No.3410, an alarm PS0020 occurs.
- Command for a circle
When Xp, Yp, and Zp are omitted (the end point is the same as the start point) and the center is specified
with I, J, and K, a 360° arc (circle) is specified.
G02 I_ ; Command for a circle
- Arc radius
The distance between an arc and the center of a circle that contains the arc can be specified using the
radius, R, of the circle instead of I, J, and K.
In this case, one arc is less than 180°, and the other is more than 180° are considered. When an arc
exceeding 180° is commanded, the radius must be specified with a negative value. If Xp, Yp, and Zp are
all omitted, if the end point is located at the same position as the start point and when R is used, an arc of
0° is programmed
G02R_ ; (The cutter does not move.)
For arc <1> (less than 180°)
G91 G02 XP60.0 YP55.0 R50.0
For arc <2> (greater than 180°)
G91 G02 XP60.0 YP55.0 R-50.0
The feedrate in circular interpolation is equal to the feedrate specified by the F code, and the feedrate
along the arc (the tangential feedrate of the arc) is controlled to be the specified feedrate.
The error between the specified feedrate and the actual tool feedrate is ±2% or less. However, this
feedrate is measured along the arc after the tool radius compensation is applied
Limitation
- Simultaneously specifying R with I, J, and K
If I, J, K, and R addresses are specified simultaneously, the arc specified by address R takes precedence
and the other are ignored.
- Specifying an axis that is not contained in the specified plane
If an axis not comprising the specified plane is commanded, an alarm PS0021 occurs.
For example,
For milling machining:
If the X-axis and a U-axis parallel to the X-axis are specified when the XY plane is specified
For lathe cutting:
If the X-axis and a U-axis parallel to the X-axis are specified when the ZX plane is specified with G
code system B or C
- Specifying a semicircle with R
When an arc having a center angle approaching 180° is specified, the calculated center coordinates may
contain an error. In such a case, specify the center of the arc with I, J, and K.
- Difference in the radius between the start and end points
If the difference in the radius between the start and end points of the arc exceeds the value specified in
parameter No. 3410, alarm PS0020 is generated.
When an end point does not lie on the arc, a spiral results, as shown below.
End point
e
γ
(t)
Start point
s
γ
e
γ
Radius
Start point
γ
θ
(t)
θ
s
γ
Center
s(t)
+=
End point
θ
Center
θ
ts)e(
)(θγγγγ−
θ
The arc radius changes linearly with the center angle θ(t). Spiral interpolation is performed using a
circular command that specifies one arc radius for the start point and another arc radius for the end point.
To use spiral interpolation, set a large value in parameter No. 3410, used to specify the limit on the arc
radius error.
Helical interpolation which moved helically is enabled by specifying up to two other axes which move
synchronously with the circular interpolation by circular commands.
Format
Arc in the XpYp plane
G17
G03
Xp_ Yp_
R_
α_ (β_) F_ ;
Arc in the ZpXp plane
G02 K_ I_
G02 I_ J_
G18
G03
Zp_ Xp_
R_
α_ (β_) F_ ;
Arc in the YpZp plane
G02 J_ K_
G19
G03
α, β : Any one axis where circular interpolation is not applied.
Up to two other axes can be specified.
Yp_ Zp_
R_
α_ (β_) F_ ;
Explanation
A tangential velocity of an arc in a specified plane or a tangential velocity about the linear axis can be
specified as the feedrate, depending on the setting of bit 5 (HTG) of parameter No.1403.
An F command specifies a feedrate along a circular arc, when HTG is specified to 0. Therefore, the
feedrate of the linear axis is as follows:
Length of linear axis
F ×
Length of circular arc
Determine the feedrate so the linear axis feedrate does not exceed any of the various limit values.
Z
Tool path
X
he feedrate along the circumference of two circular interpolated axes is the
pecified feedrate.
Y
If HTG is set to 1, specify a feedrate along the tool path about the linear axis. Therefore, the tangential
velocity of the arc is expressed as follows:
F ×
(Length of arc)
Length of arc
2
+ (Length of linear axis)2
The velocity along the linear axis is expressed as follows:
• Tool radius/tool nose radius compensation is applied only for a circular arc.
• Tool offset and tool length compensation cannot be used in a block in which a helical interpolation
is commanded.
4.6 HELICAL INTERPOLATION B (G02, G03)
The helical interpolation B function differs from the helical interpolation function just in that circular
interpolation and a movement on four axes outside the specified plane can be simultaneously performed.
For the restrictions and parameters, see the description of the helical interpolation function.
Format
Arc in the XpYp plane
G17
Arc in the ZpXp plane
G18
Arc in the YpZp plane
G19
α, β, γ, δ : Any axis to which circular interpolation is not applied.
Up to four axes can be specified.
Spiral interpolation is enabled by specifying the circular interpolation command together with a desired
number of revolutions or a desired increment (decrement) for the radius per revolution.
Conical interpolation is enabled by specifying the spiral interpolation command together with an
additional axis of movement, as well as a desired increment (decrement) for the position along the
additional axes per spiral revolution.
Format
- Spiral interpolation
XpYp plane
G17
X_Y_I_J_Q_L_F_;
G03
ZpXp plane
G02
G02
G18
Z_X_K_I_Q_L_F_;
G03
YpZp plane
G02
G19
Y_Z_J_K_Q_L_F_;
G03
X, Y, Z : Coordinates of the end point
L : Number of revolutions (positive value without a decimal point) (*1)
Q : Radius increment or decrement per spiral revolution (*1, *2)
I, J, K : Signed distance from the start point to the center (same as the distance specified
for circular interpolation)
F : Feedrate
(*1) Either the number of revolutions (L) or the radius increment or decrement (Q) can be
omitted. When L is omitted, the number of revolutions is automatically calculated from
the distance between the current position and the center, the position of the end point,
and the radius increment or decrement. When Q is omitted, the radius increment or
decrement is automatically calculated from the distance between the current position
and the center, the position of the end point, and the number of revolutions. If both L
and Q are specified but their values contradict, Q takes precedence. Generally, either
L or Q should be specified. The L value must be a positive value without a decimal
point. To specify four revolutions plus 90°, for example, round the number of
revolutions up to five and specify L5.
(*2) The increment system for Q depends on the reference axis.
X, Y, Z : Coordinates of the end point
L : Number of revolutions (positive value without a decimal point) (*1)
Q : Radius increment or decrement per spiral revolution (*1, *2)
I, J, K : Two of the three values represent a signed vector from the start point to the center.
The remaining value is a height increment or decrement per spiral revolution in
conical interpolation. (*1)
When the XpYp plane is selected:
The I and J values represent a signed vector from the start point to the center.
The K value represents a height increment or decrement per spiral revolution.
When the ZpXp plane is selected:
The K and I values represent a signed vector from the start point to the center.
The J value represents a height increment or decrement per spiral revolution.
When the YpZp plane is selected:
The J and K values represent a signed vector from the start point to the center.
The I value represents a height increment or decrement per spiral revolution.
F : Feedrate (The tangential velocity about the linear axis is specified.)
(*1) One of the height increment/decrement (I, J, K), radius increment/decrement (Q), and
the number of revolutions (L) must be specified. The other two items can be omitted.
• Sample command for the XpYp plane
G02 K_
X_ Y_ I_ J_ Z_
Q_ G18
F_ ;
G03
L_
If both L and Q are specified, but their values contradict, Q takes precedence. If both
L and a height increment or decrement are specified, but their values contradict, the
height increment or decrement takes precedence. If both Q and a height increment or
decrement are specified, but their values contradict, Q takes precedence. The L value
must be a positive value without a decimal point. To specify four revolutions plus 90°,
for example, round the number of revolutions up to five and specify L5.
(*2) The increment system for Q depends on the reference axis.
Explanation
- Function of spiral interpolation
Spiral interpolation in the XY plane is defined as follows:
2
0
0
X0 : X coordinate of the center
: Y coordinate of the center
Y
0
R : Radius at the beginning of spiral interpolation
Q' : Variation in radius
When the programmed command is assigned to this function, the following expression is obtained:
θ
222
)Q)
++=−−+−−
SS
(L'(RJ)Y(YI)X(X
360
where
: X coordinate of the start point
X
S
: Y coordinate of the start point
Y
S
I : X coordinate of the vector from the start point to the center
J : Y coordinate of the vector from the start point to the center
R : Radius at the beginning of spiral interpolation
Q : Radius increment or decrement per spiral revolution
L' : (Current number of revolutions) - 1
θ: Angle between the start point and the current position (degrees)
- Controlled axes
For conical interpolation, two axes of a plane and two additional axes, that is, four axes in total, can be
specified. A rotary axis can be specified as the additional axis.
- Difference between end points
If the difference between the programmed end point and the calculated end point of a spiral exceeds a
value specified in parameter No. 3471 about any axis of a selected plane, an alarm PS5123 will be issued.
If the difference between the programmed height and calculated height of the end point a cone exceeds a
value specified in parameter No. 3471, an alarm PS5123 will be issued. The figure below (Fig. 4.7 (a))
illustrates details.
Y
100.0
X
-30.0
α
G90 G02 X0 Y-33.5 I0 J-100.F300;
The coordinates of the programmed end point are (0, -33.5) while the coordinates of
the calculated end point are (0, -30.0). A value greater than the difference (α:
Tolerance) is specified in parameter No. 3471. If the end point is exceeded, an alarm
PS5123 will be issued. The same is specified for the height of conical interpolation.
The spiral or conical interpolation command can be programmed in tool radius compensation mode. This
compensation is performed in the same way as described in "When it is exceptional" in "Tool Movement
in Offset Mode" section. A virtual circle centered on the center of spiral interpolation is thought at the end
of a block. The tool path is obtained by performing tool radius compensation along the virtual circle and
the blocks before and after the spiral interpolation. When the end point of the block is at the center of the
spiral interpolation, no virtual circle can be drawn. If drawing is attempted, an alarm PS5124 is issued.
Tool center path
Virtual circle
Programmed spiral
interpolation
r
Center
r
After cutter
compensation
- Actual cutting feedrate
A constant speed is maintained in spiral interpolation or conical interpolation. The angular velocity near
the center, however, may increase because of the small radius of the spiral. This can be avoided by
maintaining the angular velocity after the radius of the spiral reaches a value specified in parameter No.
3472. Consequently, the actual cutting feedrate decreases.
An example is illustrated below (Fig. 4.7 (b)).
While the radius of the spiral shown
at the left is greater than the value
specified in parameter No. 3472, the
actual cutting feedrate is F100. As
the radius decreases, the actual
feedrate also decreases, the actual
feedrate near the end point being
about F65.
Fig. 4.7 (b)
- Deceleration by acceleration
During spiral interpolation, the function of deceleration by acceleration is enabled. The feedrate may
decrease as the tool approaches the center of the spiral.
- Dry run
When the dry run signal is inverted from 0 to 1 or from 1 to 0 during movement along an axis, the
movement is accelerated or decelerated to the desired speed without first reducing the speed to zero.
Polar coordinate interpolation is a function that exercises contour control in converting a command
programmed in a Cartesian coordinate system to the movement of a linear axis (movement of a tool) and
the movement of a rotary axis (rotation of a workpiece). This function is useful for grinding a cam shaft.
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.
Specifying G13.1 cancels the polar coordinate interpolation mode.
- Polar coordinate interpolation plane
G12.1 starts the polar coordinate interpolation mode and selects a polar coordinate interpolation plane
(Fig. 4.8 (a)). Polar coordinate interpolation is performed on this plane.
Origin of the local coordinate system (G52 command)
(Or origin of the workpiece coordinate system)
Fig. 4.8 (a) Polar coordinate interpolation plane
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.
- Distance moved and feedrate for polar coordinate interpolation
•The unit for coordinates on the hypothetical axis is the same as the unit for the linear axis (mm/inch). In the polar coordinate interpolation mode, program commands are specified with Cartesian
coordinates on the polar coordinate interpolation plane. The axis address for the rotary axis is used
as the axis address for the second axis (hypothetical axis) in the plane. Whether a diameter or radius
is specified for the first axis in the plane is the same as for the rotary axis regardless of the
specification for the first axis in the plane.
The hypothetical axis is at coordinate 0 immediately after G12.1 is specified. Polar interpolation is
started assuming the rotation angle of 0 for the position of the tool when G12.1 is specified.
Example)
When a value on the X-axis (linear axis) is input in millimeters
G12.1;
G01 X10. F1000. ; ........A 10-mm movement is made on the Cartesian coordinate system.
C20. ;............................. A 20-mm movement is made on the Cartesian coordinate system.
G13.1;
When a value on the X-axis (linear axis) is input in inches
G12.1;
G01 X10. F1000. ; ......A 10-inch movement is made on the Cartesian coordinate system.
C20. ;............................. A 20-inch movement is made on the Cartesian coordinate system.
G13.1;
•The unit for the feedrate is mm/min or inch/min. 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.
G94, G95..............Feed per minute, feed per revolution
- Circular interpolation in the polar coordinate plane
The addresses for specifying the radius of an arc for circular interpolation (G02 or G03) in the polar
coordinate interpolation plane depend on the first axis in the plane (linear axis).
• I and J in the Xp-Yp plane when the linear axis is the X-axis or an axis parallel to the X-axis.
• J and K in the Yp-Zp plane when the linear axis is the Y-axis or an axis parallel to the Y-axis.
• K and I in the Zp-Xp plane when the linear axis is the Z-axis or an axis parallel to the Z-axis.
The radius of an arc can be specified also with an R command.
NOTE
In a lathe system, 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.
- Current position display in the polar coordinate interpolation mode
Actual coordinates are displayed. However, the remaining distance to move in a block is displayed based
on the coordinates in the polar coordinate interpolation plane (Cartesian coordinates).
- Coordinate system for the polar coordinate interpolation
Basically, before G12.1 is specified, a local coordinate system (or workpiece coordinate system) where
the center of the rotary axis is the origin of the coordinate system must be set.
- Compensation in the direction of the hypothetical axis in polar coordinate
interpolation
If the first axis of the plane has an error from the center of the rotary axis in the hypothetical axis
direction, in other words, if the rotary axis center is not on the X-axis, the hypothetical axis direction
compensation function in the polar coordinate interpolation mode is used. With the function, the error is
considered in polar coordinate interpolation. The amount of error is specified in parameter No. 5464.
(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)
X-axis
- Shifting the coordinate system in polar coordinate interpolation
In the polar coordinate interpolation mode, the workpiece coordinate system can be shifted. The current
position display function shows the position viewed from the workpiece coordinate system before the
shift. The function to shift the coordinate system is enabled when bit 2 (PLS) of parameter No. 5450 is
specified accordingly.
The shift can be specified in the polar coordinate interpolation mode, by specifying the position of the
center of the rotary axis C (A, B) in the X-C (Y-A, Z-B) interpolation plane with reference to the origin of
the workpiece coordinate system, in the following format.
G12.1 X_ C_ ; (Polar coordinate interpolation for the X-axis and C-axis)
G12.1 Y_ A_ ; (Polar coordinate interpolation for the Y-axis and A-axis)
G12.1 Z_ B_ ; (Polar coordinate interpolation for the Z-axis and B-axis)
C
G12.1 Xx Cc ;
Center of C-axis
c
Origin of workpiece
coordinate system
x
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.).
The polar coordinate interpolation mode (G12.1 or G13.1) cannot be started or terminated in the tool
radius/tool nose radius compensation mode (G41 or G42). G12.1 or G13.1 must be specified in the tool
radius/tool nose radius compensation canceled mode (G40).
For the tool radius/tool nose radius compensation canceled mode (G40) command, be sure to specify the
polar coordinate axis to cancel the offset vector.
- Tool length offset command
Tool length offset must be specified in the polar coordinate interpolation cancel mode before G12.1 is
specified. It cannot be specified in the polar coordinate interpolation mode. Furthermore, no offset values
can be changed in the polar coordinate interpolation mode.
- Tool offset command
A tool offset must be specified before the G12.1 mode is set. No offset can be changed in the G12.1
mode.
- Program restart
For a block in the G12.1 mode, the program and the block cannot be restarted.
- Cutting feedrate for the rotary axis
Polar coordinate interpolation converts the tool movement for a figure programmed in a Cartesian
coordinate system to the tool movement in the rotary axis (C-axis) and the linear axis (X-axis). When the
tool comes close to the center of the workpiece, the C-axis velocity component increases. If the maximum
cutting feedrate for the C-axis (parameter No. 1430) is exceeded, the automatic feedrate override function
and automatic speed clamp function are enabled.
If the maximum cutting feedrate for the X-axis is exceeded, the automatic feedrate override function and
automatic speed clamp function are enabled.
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
2
3
L1
L2
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
2 The following function cannot be used for the rotary axis of polar coordinate
interpolation.
• Index table indexing function
- Automatic speed control for polar coordinate interpolation
If the velocity component of the rotary axis exceeds the maximum cutting feedrate in the polar coordinate
interpolation mode, the speed is automatically controlled.
- 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(%)
- Automatic speed clamp
If the velocity component of the rotary axis after automatic override still exceeds the maximum cutting
feedrate, the speed of the rotary axis is automatically clamped. As a result, the velocity component of the
rotary axis will not exceed the maximum cutting feedrate.
The automatic speed clamp function works only when the center of the tool is very close to the center of
the rotary axis.
Automatic speed control for polar coordinate interpolation
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 is output. However, the operation may not
stop immediately.
3 The clamped speed may exceed the clamp value by a few percent.
In cylindrical interpolation function, the amount of movement of a rotary axis specified by angle is
converted to the amount of movement on the circumference to allow linear interpolation and circular
interpolation with another axis.
Since programming is enabled with the cylinder side face expanded, programs such as a program for
grooving cylindrical cams can be created very easily.
Format
G07.1
IP
(enables cylindrical interpolation).
G07.1 IP 0;
IP : An address for the rotary axis
r : The radius of the workpiece
Specify G07.1 IPr; and G07.1 IP0; in separate blocks.
G107 can be used instead of G07.1.
NOTE
Only a positive value is effective as the radius of the workpiece. If a negative
value is specified, alarm PS0175 is issued.
Explanation
- Plane selection (G17, G18, G19)
To specify a G code for plane selection, set the rotary axis in parameter No. 1022 as a linear axis that is
one of the basic three axes of the basic coordinate system or an axis parallel to one of the basic axes. For
example, when rotary axis C-axis is assumed to be parallel to the X-axis, specifying G17, axis address C,
and Y at the same time can select a plane formed by the C-axis and Y-axis (the Xp-Yp plane).
T
NOTE
The U-, V-, and W-axes can be used with G-codes B and C.
- Feedrate
A feedrate specified in the cylindrical interpolation mode is the feedrate on the circumference.
- Circular interpolation (G02, G03)
Circular interpolation can be performed between the rotary axis set for cylindrical interpolation and
another linear axis. Radius R is used in commands in the same way as described.
The unit for a radius is not degrees but millimeters (for metric input) or inches (for inch input).
<Example Circular interpolation between the Z axis and C axis>
For the C axis of parameter No.1022, 5 (axis parallel with the X axis) is to be set. In this case, the
command for circular interpolation is
G18 Z_C_;
G02 (G03) Z_C_R_;
For the C axis of parameter No.1022, 6 (axis parallel with the Y axis) may be specified instead. In
this case, however, the command for circular interpolation is
G19 C_Z_;
G02 (G03) Z_C_R_;
- Tool radius/tool nose radius compensation
To perform tool radius/tool nose radius compensation in the cylindrical interpolation mode, cancel any
ongoing tool radius/tool nose radius compensation mode before entering the cylindrical interpolation
mode. Then, start and terminate tool radius/tool nose radius compensation within the cylindrical
interpolation mode.
- Cylindrical interpolation accuracy
In the cylindrical interpolation mode, the amount of travel of a rotary axis specified by an angle is once
internally converted to a distance of a linear axis on the outer surface so that linear interpolation or
circular interpolation can be performed with another axis. After interpolation, such a distance is converted
back to an angle. For this conversion, the amount of travel is rounded to a least input increment.
So when the radius of a cylinder is small, the actual amount of travel can differ from a specified amount
of travel. Note, however, that such an error is not accumulative.
If manual operation is performed in the cylindrical interpolation mode with manual absolute on, an error
can occur for the reason described above.
= travelofamount actual The
⎡
⎢
⎣
REV MOTION
⎡
π
×REV MOTION
R22
⎢
⎣
valueSpecified
π
×
××
⎤
R22
⎤
⎥
⎥
⎦
⎦
MOTION REV : The amount of travel per rotation of the rotary axis (360°)
R : Workpiece radius
[]
: Rounded to the least input increment
Limitation
- Arc radius specification in the circular interpolation
In the cylindrical interpolation mode, an arc radius cannot be specified with word address I, J, or K.
- Positioning
In the cylindrical interpolation mode, positioning operations (including those that produce rapid traverse
cycles such as G28, G53, G73, G74, G76, G80 to G89) cannot be specified. Before positioning can be
specified, the cylindrical interpolation mode must be cancelled. Cylindrical interpolation (G07.1) cannot
be performed in the positioning mode (G00).
- Cylindrical interpolation mode setting
In the cylindrical interpolation mode, the cylindrical interpolation mode cannot be reset. The cylindrical
interpolation mode must be cancelled before the cylindrical interpolation mode can be reset.
- Rotary axis
Only one rotary axis can be set for cylindrical interpolation. Therefore, it is impossible to specify more
than one rotary axis in the G07.1 command.
- Rotary axis roll-over
If a rotary axis using the roll-over function is specified at the start of the cylindrical interpolation mode,
the roll-over function is automatically disabled in the cylindrical interpolation mode. After the cylindrical
interpolation mode is canceled, the roll-over function is enabled automatically.
If a rotary axis using the multiple rotary axis control function is specified at the start of the cylindrical
interpolation mode, the rotary axis control function is automatically disabled in the cylindrical
interpolation mode. After the cylindrical interpolation mode is canceled, the rotary axis control function is
enabled automatically.
- Tool radius/tool nose radius compensation
If the cylindrical interpolation mode is specified when tool radius/tool nose radius compensation is
already being applied, correct compensation is not performed. Specify compensation in the cylindrical
interpolation mode.
- Canned cycle for drilling
Canned cycles (G73, G74, and G81 to G89 for M series / G80 to G89 for T series) for drilling, cannot be
specified during cylindrical interpolation mode.
M
- Coordinate system setting
In the cylindrical interpolation mode, a workpiece coordinate system (G92, G54 to G59) or local
coordinate system (G52) cannot be specified.
- Tool offset
A tool offset must be specified before the cylindrical interpolation mode is set. No offset can be changed
in the cylindrical interpolation mode.
- Index table indexing function
Cylindrical interpolation cannot be specified when the index table indexing function is being used.
- Parallel axis
The rotary axis specified for cylindrical interpolation must not be a parallel axis.
T
- Coordinate system setting
In the cylindrical interpolation mode, a workpiece coordinate system G50 cannot be specified.
- Mirror image for double turret
Mirror image for double turret, G68 and G69, cannot be specified during cylindrical interpolation mode.
(* A command with a decimal point can also be used.)
Z
Z
C
R
mm
120
110
90
70
60
N05
N06
N11
N07
N08
0
30
60 70
N09
N10
150
N12
230190
270
N13
360
4.9.2 Cylindrical Interpolation by Plane Distance Command
Overview
In the conventional rotary axis command in cylindrical interpolation, the angle of the rotary axis is
specified.
This function enables the rotary axis command in cylindrical interpolation to be specified by distance on
the developed plane by setting parameters.
Format
G07.1
IP
:
G07.1 IP 0;
IP : An address for the rotary axis
r : The radius of the workpiece
Specify G07.1 IPr; and G07.1 IP0; in separate blocks.
G107 can be used instead of G07.1.
Starts the cylindrical interpolation mode (enables cylindrical interpolation)
Only a positive value is effective as the radius of the workpiece. If a negative
value is specified, alarm PS0175 is issued.
Explanation
By using bit 2 (DTO) of parameter No. 3454, it is possible to switch the rotation axis command during
cylindrical interpolation between the angle of the rotation axis and the distance on the developed plane.
•In the case of the angle of the rotation axis (When bit 2 (DTO) of parameter No. 3454 is set to 0) The rotation axis command in cylindrical interpolation mode is executed with the angle of the
rotation axis. From the program, specify the angle of the rotation axis that corresponds to the
specified point on the developed plane.
The rotation axis command uses the angle of the rotation axis [deg].
Specify with the
angle of the
rotation axis.
•In the case of the distance on the developed plane (When bit 2 (DTO) of parameter No. 3454 is set to
1)
The rotation axis command in cylindrical interpolation is executed with the distance on the
developed plane. The rotation axis command uses the distance on the developed plane and, therefore,
the command unit varies depending on which of inch or metric input to use.
Specify with the
distance on the
developed plane.
Rotation axis command
Note
NOTE
1 For details of the operation of cylindrical interpolation, as well as limitations, see
Subsection, "Cylindrical Interpolation".
2 This function is an optional function.
- 70 -
Loading...
+ hidden pages
You need points to download manuals.
1 point = 1 manual.
You can buy points or you can get point for every manual you upload.