Warnings, Cautions, and Notes
as Used in this Publication
Warning notices are used in this publication to emphasize that hazardous voltages, currents,
temperatures, or other conditions that could cause personal injury exist in this equipment or
may be associated with its use.
In situations where inattention could cause either personal injury or damage to equipment, a
Warning notice is used.
Caution notices are used where equipment might be damaged if care is not taken.
GFL-001
Warning
Caution
Note
Notes merely call attention to information that is especially significant to understanding and
operating the equipment.
This document is based on information available at the time of its publication. While efforts
have been made to be accurate, the information contained herein does not purport to cover all
details or variations in hardware or software, nor to provide for every possible contingency in
connection with installation, operation, or maintenance. Features may be described herein
which are not present in all hardware and software systems. GE Fanuc Automation assumes
no obligation of notice to holders of this document with respect to changes subsequently made.
GE Fanuc Automation makes no representation or warranty, expressed, implied, or statutory
with respect to, and assumes no responsibility for the accuracy, completeness, sufficiency, or
usefulness of the information contained herein. No warranties of merchantability or fitness for
purpose shall apply.
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.
This manual includes safety precautions for protecting the user and preventing damage to the
machine. Precautions are classified into W arning 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–2
B–63604EN/01
2
SAFETY PRECAUTIONS
GENERAL W ARNINGS 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.
s–3
SAFETY PRECAUTIONS
B–63604EN/01
WARNING
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.
NOTE
Programs, parameters, and macro variables are stored in nonvolatile memory in the CNC unit.
Usually, they are retained even if the power is turned of f. Such data may be deleted inadvertently,
however, or it may prove necessary to delete all data from nonvolatile memory as part of error
recovery.
T o 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.
s–4
B–63604EN/01
3
1. Coordinate system setting
SAFETY PRECAUTIONS
W ARNINGS 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 and programming manual carefully
such that you are fully familiar with their contents.
WARNING
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.
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.
s–5
SAFETY PRECAUTIONS
WARNING
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
B–63604EN/01
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–6
B–63604EN/01
4
1. Manual operation
SAFETY PRECAUTIONS
W ARNINGS 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 and programming manual carefully,
such that you are fully familiar with their contents.
WARNING
When operating the machine manually , determine the current position of the tool and workpiece,
and ensure that the movement axis, direction, and feedrate have been specified correctly.
Incorrect operation of the machine may damage the tool, the machine itself, the workpiece, or
cause injury to the operator.
2. Manual reference position return
After switching on the power, perform manual reference position return as required. If the
machine is operated without first performing manual reference position return, it may behave
unexpectedly . Stroke check is not possible before manual reference position return is performed.
An unexpected operation of the machine may damage the tool, the machine itself, the workpiece,
or cause injury to the user.
3. Manual numeric command
When issuing a manual numeric command, determine the current position of the tool and
workpiece, and ensure that the movement axis, direction, and command have been specified
correctly, and that the entered values are valid.
Attempting to operate the machine with an invalid command specified may damage the tool, the
machine itself, the workpiece, or cause injury to the operator.
4. Manual handle feed
In manual handle feed, rotating the handle with a large scale factor, such as 100, applied causes
the tool and table to move rapidly. Careless handling may damage the tool and/or machine, or
cause injury to the user.
5. Disabled override
If override is disabled (according to the specification in a macro variable) during threading, rigid
tapping, or other tapping, the speed cannot be predicted, possibly damaging the tool, the machine
itself, the workpiece, or causing injury to the operator.
6. Origin/preset operation
Basically, never attempt an origin/preset operation when the machine is operating under the
control of a program. Otherwise, the machine may behave unexpectedly, possibly damaging the
tool, the machine itself, the tool, or causing injury to the user.
s–7
SAFETY PRECAUTIONS
WARNING
7. Workpiece coordinate system shift
Manual intervention, machine lock, or mirror imaging may shift the workpiece coordinate
system. Before attempting to operate the machine under the control of a program, confirm the
coordinate system carefully.
If the machine is operated under the control of a program without making allowances for any shift
in the workpiece coordinate system, the machine may behave unexpectedly, possibly damaging
the tool, the machine itself, the workpiece, or causing injury to the operator.
8. Software operator ’s panel and menu switches
Using the software operator’s panel and menu switches, in combination with the MDI 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.
B–63604EN/01
9. 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.
10.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.
11. 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.
12.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.
13.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–8
B–63604EN/01
5
1. Memory backup battery replacement
SAFETY PRECAUTIONS
W ARNINGS RELATED TO DAILY MAINTENANCE
WARNING
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
fitted with an insulating cover).
Touching the uncovered high–voltage circuits presents an extremely dangerous electric shock
hazard.
and
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 maintenance section of the operator’s manual or programming manual for details of the
battery replacement procedure.
s–9
SAFETY PRECAUTIONS
B–63604EN/01
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
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 maintenance section of the operator’s manual or programming manual for details of the
battery replacement procedure.
and
s–10
B–63604EN/01
3. Fuse replacement
SAFETY PRECAUTIONS
WARNING
For some units, the chapter covering daily maintenance in the operator’s manual or programming
manual describes the fuse replacement procedure.
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
Touching an uncovered high–voltage circuit presents an extremely dangerous electric shock
hazard.
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, characteristics, and restrictions. When a program is created
through conversational automatic programming function, refer to the
manual for the conversational automatic programming function
(Table1).
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 replacing batteries.
APPENDIX
Lists tape codes, valid data ranges, and error codes.
1. GENERAL
Some functions described in this manual may not be applied to some
products. For detail, refer to the DESCRIPTIONS manual
(B–63522EN).
This manual does not describe parameters in detail. For details on
parameters mentioned in this manual, refer to the manual for parameters
(B–63610EN).
This manual describes all optional functions. Look up the options
incorporated into your system in the manual written by the machine tool
builder.
The models covered by this manual, and their abbreviations are:
Product nameAbbreviations
FANUC Series 21i–TB21i–TBSeries 21i
FANUC Series 210i–TB210i–TBSeries 210i
3
GENERAL1. GENERAL
B–63604EN/01
Special symbols
_
DP
I
D ;
Related manuals of
Series 16i/18i/21i/160i/
180i/210i–MODEL B
This manual uses the following symbols:
Indicates a combination of axes such as X__ Y__ Z (used in
PROGRAMMING.).
Indicates the end of a block. It actually corresponds to the ISO code LF
or EIA code CR.
The following table lists the manuals related to Series 16i, Series 18i,
Series 21i, Series 160i, Series 180i, Series 210i–MODEL B. This manual
is indicated by an asterisk(*).
Manual name
DESCRIPTIONSB–63522EN
CONNECTION MANUAL (HARDWARE)B–63523EN
CONNECTION MANUAL (FUNCTION)B–63523EN–1
OPERA T ORS MANUAL (16i/18i/160i/180i–TB)B–63524EN
OPERATOR’S MANUAL (16i/18i/160i/180i–MB)B–63534EN
PROGRAMMING MANUAL
FAPT MACRO COMPILER (For Personal Computer)
PROGRAMMING MANUAL
C Language Executor PROGRAMMING MANUALB–62443EN–3
CAP (T series)
FANUC Super CAPi T OPERATORS MANUALB–63284EN
FANUC Symbol CAPi T OPERATOR’S MANUALB–63304EN
MANUAL GUIDE For Lathe PROGRAMMING MANUALB–63343EN
MANUAL GUIDE For Lathe OPERA T OR’S MANUALB–63344EN
B–61803E–1
B–66102E
CAP (M series)
FANUC Super CAPi M OPERATOR’S MANUALB–63294EN
MANUAL GUIDE For Milling PROGRAMMING MANUALB–63423EN
MANUAL GUIDE For Milling OPERA T OR’S MANUALB–63424EN
4
B–63604EN/01
GENERAL
1. GENERAL
Related manuals of
SERVO MOTOR a series
Manual name
PMC
PMC Ladder Language PROGRAMMING MANUALB–61863E
PMC C Language PROGRAMMING MANUALB–61863E–1
Network
FANUC I/O Link–II CONNECTION MANUALB–62714EN
Profibus–DP Board OPERA T OR’S MANUALB–62924EN
DeviceNet Board OPERA T OR ’S MANUALB–63404EN
Ethernet Board/DA T A SERVER Board
OPERATOR’S MANUAL
Specification
number
B–63354EN
The following table lists the manuals related to SER VO MOT OR a series
Manual name
AC SERVO MOTOR a series DESCRIPTIONSB–65142E
AC SERVO MOTOR a series PARAMETER MANUALB–65150E
Specification
number
AC SPINDLE MOTOR a series DESCRIPTIONSB–65152E
AC SPINDLE MOTOR a series PARAMETER MANUALB–65160E
SERVO AMPLIFIER a series DESCRIPTIONSB–65162E
SERVO MOTOR a series MAINTENANCE MANUALB–65165E
5
GENERAL1. GENERAL
Cutting process
B–63604EN/01
1.1
GENERAL FLOW OF
OPERATION OF CNC
MACHINE TOOL
When machining the part using the CNC machine tool, first prepare the
program, then operate the CNC machine by using the program.
1) First, prepare the program from a part drawing to operate the CNC
machine tool.
How to prepare the program is described in the Chapter II.
PROGRAMMING.
2) The program is to be read into the CNC system. Then, mount the
workpieces and tools on the machine, and operate the tools according
to the programming. Finally, execute the machining actually.
How to operate the CNC system is described in the Chapter III.
OPERATION.
Part
drawing
CHAPTER II PROGRAMMINGCHAPTER III OPERA TION
Part
programming
CNC
MACHINE TOOL
Before the actual programming, make the machining plan for how to
machine the part.
Machining plan
1. Determination of workpieces machining range
2. Method of mounting workpieces on the machine tool
3. Machining sequence in every cutting process
4. Cutting tools and cutting conditions
Decide the cutting method in every cutting process.
Cutting process
Cutting procedure
1. Cutting method
: Rough
Semi
Finish
2. Cutting tools
3. Cutting conditions
: Feedrate
Cutting depth
4. Tool path
123
End face
cutting
Outer diameter
cutting
Grooving
6
B–63604EN/01
GENERAL
1. GENERAL
Grooving
Outer
diameter
cutting
Workpiece
End
face
cutting
Prepare the program of the tool path and cutting condition according to
the workpiece figure, for each cutting.
7
1.2
CAUTIONS ON
READING THIS
MANUAL
GENERAL1. GENERAL
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 Headings are placed in the left margin so that the reader can
easily access necessary information. When locating the
necessary information, the reader can save time by
searching though these headings.
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.
B–63604EN/01
1.3
CAUTIONS ON
V ARIOUS KINDS OF
DATA
CAUTION
Machining programs, parameters, variables, 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.
8
II. PROGRAMMING
B–63604EN/01
1
GENERAL
PROGRAMMING
1. GENERAL
11
PROGRAMMING1. GENERAL
B–63604EN/01
1.1
TOOL MOVEMENT
ALONG WORKPIECE
P ARTS FIGURE–
INTERPOLATION
Explanations
D Tool movement along a
straight line
The tool moves along straight lines and arcs constituting the workpiece
parts figure (See II–4).
X
Tool
Workpiece
Fig.1.1 (a) Tool movement along the straight line which is parallel to Z–axis
Program
G01 Z...;
Z
D Tool movement along an
arc
X
Tool
Workpiece
Fig.1.1 (b) T ool movement along the taper line
X
Workpiece
Tool
Program
G02X ... Z ... R ... ;
or
G03X ... Z ... R ... ;
Z
Program
G01 X ... Z... ;
Z
Fig. 1.1 (c) T ool movement along an arc
12
B–63604EN/01
PROGRAMMING
1. GENERAL
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 Z__;
X––Z––––;
Control unit
Interpolation
a) Movement
along straight
line
b) Movement
along arc
Fig. 1.1 (d)Interpolation function
(b) Movement along arc
G03X––Z––;
X axis
Y axis
Tool
movement
NOTE
Some machines move workpiece (spindle) instead of tools
but this manual assumes that tools are moved against
workpieces.
D Thread cutting
Threads can be cut by moving the tool in synchronization with spindle
rotation. In a program, specify the thread cutting function by G32.
X
Workpiece
Fig. 1.1 (e) Straight thread cutting
Tool
Z
F
Program
G32Z––F––;
13
PROGRAMMING1. GENERAL
B–63604EN/01
1.2
FEED–
FEED FUNCTION
X
Workpiece
Fig. 1.1 (f) T aper thread cutting
Tool
Program
G32X––Z––F––;
Z
F
Movement of the tool at a specified speed for cutting a workpiece is called
the feed.
Chuck
Workpiece
Tool
Fig. 1.2Feed function
Feedrates can be specified by using actual numerics.
For example, the following command can be used to feed the tool 2 mm
while the workpiece makes one turn :
F2.0
The function of deciding the feed rate is called the feed function (See
II–5).
14
B–63604EN/01
1.3
PART DRAWING AND
TOOL MOVEMENT
PROGRAMMING
1. GENERAL
1.3.1
Reference Position
(Machine–Specific
Position)
Explanations
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.
Tool post
Chuck
Fig. 1.3.1Reference position
The tool can be moved to the reference position in two ways:
1.Manual reference position return (See III–3.1)
Reference position return is performed by manual button operation.
Reference
position
2.Automatic reference position return (See II–6)
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.
15
1.3.2
Coordinate System on
Part Drawing and
Coordinate System
Specified by CNC –
Coordinate System
PROGRAMMING1. GENERAL
X
Part drawing
B–63604EN/01
X
Program
Z
Z
Coordinate system
CNC
Command
X
Workpiece
Explanations
D Coordinate system
Z
Machine tool
Fig. 1.3.2 (a) Coordinate system
The following two coordinate systems are specified at different locations:
(See II–7)
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. 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.
X
230
300
Program
zero point
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
Z
16
B–63604EN/01
PROGRAMMING
1. GENERAL
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.
D Methods of setting the
two coordinate systems
in the same position
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
X
Workpiece
60
40
150
Fig. 1.3.2 (c)Coordinates and dimensions on part drawing
X
40
Z
Workpiece
Z
Fig. 1.3.2 (d) Coordinate system on lathe as specified by CNC
(made to coincide with the coordinate system on part drawing)
17
PROGRAMMING1. GENERAL
2. When coordinate zero point is set at work end face.
X
B–63604EN/01
Workpiece
60
100
Fig. 1.3.2 (e) Coordinates and dimensions on part drawing
Workpiece
80
30
30
Z
X
Z
Fig. 1.3.2 (f) Coordinate system on lathe as specified by CNC
(made to coincide with the coordinate system on part drawing)
18
B–63604EN/01
1.3.3
How to Indicate
Command Dimensions
for Moving the Tool –
Absolute, Incremental
Commands
PROGRAMMING
1. GENERAL
Explanations
D Absolute command
Methods of command for moving the tool can be indicated by absolute
or incremental designation (See II–8.1).
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.
Tool
X
Workpiece
φ30
70
Command specifying movement from point A to point B
G90X30.0Z70.0;
B
110
A
Z
Fig. 1.3.3 (a) Absolute command
19
Coordinates of point B
PROGRAMMING1. GENERAL
B–63604EN/01
D Incremental command
Specify the distance from the previous tool position to the next tool
position.
Tool
A
X
φ60
B
Z
φ30
40
Command specifying movement from point A to point B
U–30.0W–40.0
Distance and direction for
movement along each axis
D Diameter programming /
radius programming
Fig. 1.3.3 (b) Incremental command
Dimensions of the X axis can be set in diameter or in radius. Diameter
programming or radius programming is employed independently in each
machine.
1. Diameter programming
In diameter programming, specify the diameter value indicated on the
drawing as the value of the X axis.
X
B
φ30
A
Z
Workpiece
φ40
60
80
Coordinate values of points A and B
A(30.0, 80.0), B(40.0, 60.0)
Fig. 1.3.3 (c) Diameter programming
20
B–63604EN/01
PROGRAMMING
1. GENERAL
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
20
Workpiece
60
80
Coordinate values of points A and B
A(15.0, 80.0), B(20.0, 60.0)
Fig. 1.3.3 (d) Radius programming
A
15
Z
1.4
CUTTING SPEED –
SPINDLE SPEED
FUNCTION
Examples
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
–1
in min
unit.
Tool
Workpiece
Fig. 1.4 Cutting speed
V: Cutting speed
v m/min
φD
N min
–1
<When a workpiece 200 mm in diameter should be machined at
a cutting speed of 300 m/min. >
–1
The spindle speed is approximately 478 min
, 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 II–9).
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 II–9.3).
21
PROGRAMMING1. GENERAL
B–63604EN/01
1.5
SELECTION OF
TOOL USED FOR
VARIOUS
MACHINING – TOOL
FUNCTION
Examples
When drilling, tapping, boring, milling or the like, is performed, it is
necessary to select a suitable tool. When a number is assigned to each tool
and the number is specified in the program, the corresponding tool is
selected.
Tool number
01
06
0205
04
03
Fig. 1.5 T ool used for various machining
<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 II–10).
Tool post
1.6
COMMAND FOR
MACHINE
OPERATIONS –
MISCELLANEOUS
FUNCTION
When machining is actually started, it is necessary to rotate the spindle,
and feed coolant. For this purpose, on–off operations of spindle motor and
coolant valve should be controlled (See II–11).
Coolant on/off
Chuck open/close
Workpiece
Fig. 1.6 Command for machine operations
The function of specifying the on–off operations of the components of the
machine is called the miscellaneous function. In general, the function is
specified by an M code.
For example, when M03 is specified, the spindle is rotated clockwise at
the specified spindle speed.
CW spindle rotation
22
B–63604EN/01
PROGRAMMING
1. GENERAL
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 sequence
Block
Program
Block
⋅
⋅
⋅
⋅
Block
Fig. 1.7 (a) Program configuration
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 II–12).
23
PROGRAMMING1. GENERAL
B–63604EN/01
Explanations
D Block
The block and the program have the following configurations.
1 block
N fffffG ffXff.f Zfff.fM ffS ffT ff ;
Sequence
number
Preparatory
function
Dimension word Miscel-
laneous
function
Fig. 1.7 (b)Block configuration
Spindle
function
Tool
function
End of
block
A block begins with a sequence number that identifies that 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_.
D Program
;
Offff;
⋅
⋅
⋅
M30 ;
Fig. 1.7 (c) Program configuration
Program number
Block
Block
Block
⋅
⋅
⋅
End of program
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.
24
B–63604EN/01
PROGRAMMING
1. GENERAL
D 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
⋅
⋅
⋅
M98P1002
⋅
⋅
⋅
M98P1001
⋅
⋅
Subprogram #1
O1001
M99
Subprogram #2
O1002
Program for
hole #1
Program for
hole #2
⋅
M99
25
1.8
COMPENSATION
FUNCTION
Explanations
PROGRAMMING1. GENERAL
B–63604EN/01
D Machining using the end
of cutter – Tool length
compensation function
Usually, several tools are used for machining one workpiece. The tools
have different tool length. It is very troublesome to change the program
in accordance with the tools.
Therefore, the length of each tool used should be measured in advance.
By setting the difference between the length of the standard tool and the
length of each tool in the CNC (data display and setting : see III–11),
machining can be performed without altering the program even when the
tool is changed. This function is called tool length compensation.
Workpiece
Standard
tool
Rough
cutting
tool
Fig. 1.8 Tool offset
Finishing
tool
Grooving
tool
Thread
cutting
tool
26
B–63604EN/01
PROGRAMMING
1. GENERAL
1.9
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. Besides the stroke limits, data in memory can
be used to define an area which tools cannot enter.
Table
Motor
Limit switch
Machine zero point
Specify these distances.
Tools cannot enter this area. The area is specified by data in memory or
a program.
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.
27
2
PROGRAMMING2. CONTROLLED AXES
CONTROLLED AXES
B–63604EN/01
28
B–63604EN/01
2.1
CONTROLLED AXES
PROGRAMMING
Item
Number of basic controlled axes2 axes
Controlled axis expansion (total)Max. 4 axes (Included in Cs axis)
Number of basic simultaneously
The number of simultaneously controllable axes for manual
operation (jog feed, incremental feed, or manual handle
feed) is 1 or 3 (1 when bit 0 (JAX) of parameter 1002 is set
to 0 and 3 when it is set to 1).
2.2
NAMES OF AXES
Limitations
D Default axis name
D Duplicate axis name
The names of two basic axes are always X and Z; the names of additional
axes can be optionally selected from A, B, C, U, V, W, and Y by using
parameter No.1020.
Each axis name is determined according to parameter No. 1020. If the
parameter specifies 0 or anything other than the nine letters, the axis name
defaults to a number from 1 to 4.
When a default axis name (1 to 4) is used, the system cannot operate in
MEM or MDI mode.
If the parameter specifies an axis name more than once, only the first axis
to be assigned that axis name becomes operable.
NOTE
1 When G code system A is used, the letters U, V, and W
cannot be used as an axis name (hence, the maximum of
six controlled axes), because these letters are used as
incremental commands for X, Y, and Z. To use the letters
U, V, and W as axis names, the G code system must be B
or C. Likewise, letter H is used as an incremental command
for C, thus incremental commands cannot be used if A or B
is used as an axis name.
2 In G76 (multiple–thread cutting), the A address in a block
specifies the tool nose angle instead of a command for axis
A.
If C or A is used as an axis name, C or A cannot be used as
an angle command for a straight line in chamfering or direct
drawing dimension programming. Therefore, “,C” and “,A”
should be used according to bit 4 (CCR) of parameter No.
3405.
29
PROGRAMMING2. CONTROLLED AXES
B–63604EN/01
2.3
INCREMENT SYSTEM
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 degrees.
The increment system is classified into IS–B and IS–C (Tables 2.3(a) and
2.3(b)). Select IS–B or IS–C using bit 1 (ISC) of parameter 1004. When
the IS–C increment system is selected, it is applied to all axes and the 1/10
increment system option is required.
T able 2.3 (a) Increment system IS–B
Least input incrementLeast command increment
Metric mm 0.001mm(Diameter)0.0005mm
system
ma-
machine
Inch mm 0.001mm(Diameter)0.00005inch
machine
chine
system
input
inch 0.0001inch(Diameter)0.0005mm
input
input
inch 0.0001inch(Diameter)0.00005inch
input
0.001mm(Radius)0.001mm
0.001deg0.001deg
0.0001inch(Radius)0.001mm
0.001deg0.001deg
0.001mm(Radius)0.0001inch
0.001deg0.001deg
0.0001inch(Radius)0.0001inch
0.001deg0.001deg
T able 2.3 (b) Increment system IS–C
Least input incrementLeast command increment
Metricmm0.0001mm(Diameter)0.00005mm
system
ma-
machine
Inchmm0.0001mm(Diameter)0.000005inch
machine
chine
system
input
inch0.00001inch(Diameter)0.00005mm
input
input
inch0.00001inch(Diameter)0.000005inch
input
0.0001mm(Radius)0.0001mm
0.0001deg0.0001deg
0.00001inch(Radius)0.0001mm
0.0001deg0.0001deg
0.0001mm(Radius)0.00001inch
0.0001deg0.0001deg
0.00001inch(Radius)0.00001inch
0.0001deg0.0001deg
Whether the least command increment is measured in millimeters or
inches depends on the machine. Select either the increment in advance
according to the setting of parameter INM (No.1001#0). A G code (G20
or G21) or a setting parameter can be used to toggle the least command
increment between millimeter input and inch input.
30
B–63604EN/01
PROGRAMMING
2. CONTROLLED AXES
An axis in the metric system cannot be used together with a one in the inch
system, or vice versa. In addition, some features such as circular
interpolation and tool–nose radius compensation cannot be used for both
axes in different units. For the unit to be set, refer to the manual supplied
by the machine manufacturer.
2.4
MAXIMUM STROKES
The maximum stroke controlled by this CNC is shown in the table below:
Maximum stroke=Least command increment"99999999
T able 2.4 Maximum strokes
Increment system
Metric machine
IS–B
IS–C
system
Inch machine
system
Metric machine
system
Inch machine
system
Maximum strokes
"99999.999 mm
"99999.999 deg
"9999.9999 inch
"99999.999 deg
"9999.9999 mm
"9999.9999 deg
"999.99999 inch
"9999.9999 deg
NOTE
1 The unit in the table is a diameter value with diameter
programming and a radius value in radius programming.
2 A command exceeding the maximum stroke cannot be
specified.
3 The actual stroke depends on the machine tool.
31
3. PREPARATORY FUNCTION
(G FUNCTION)
PREPARATORY FUNCTION (G FUNCTION)
3
PROGRAMMING
A number following address G determines the meaning of the command
for the concerned block.
G codes are divided into the following two types.
TypeMeaning
One–shot G codeThe G code is effective only in the block in which it is
specified
Modal G codeThe G code is effective until another G code of the same
group is specified.
(Example)
G01 and G00 are modal G codes.
B–63604EN/01
G01X_;
Z_;
X_;
G00Z_;
There are three G code systems : A,B, and C (Table 3). Select a G code
system using bits 6 (GSB) and 7 (GSC) of parameter 3401. T o use G code
system B or C, the corresponding option is needed. Generally, this
manual describes the use of G code system A, except when the described
item can use only G code system B or C. ln such cases, the use of G code
system B or C is described.
G01 is effective in this range
32
B–63604EN/01
PROGRAMMING
3. PREPARATORY FUNCTION
(G FUNCTION)
Explanations
1. If the CNC enters the clear state (see bit 6 (CLR) of parameter 3402)
when the power is turned on or the CNC is reset, the modal G codes
change as follows.
(1)G codes marked with in Table 3 are enabled.
(2)When the system is cleared due to power–on or reset, whichever
specified, either G20 or G21, remains effective.
(3)Bit 7 of parameter No. 3402 can be used to specify whether G22
or G23 is selected upon power–on. Resetting the CNC to the clear
state does not affect the selection of G22 or G23.
(4) Setting bit 0 (G01) of parameter 3402 determines which code,
either G00 or G01, is effective.
(5) Setting bit 3 (G91) of parameter 3402 determines which code,
either G90 or G91, is effective.
2. G codes of group 00 except G10 and G11 are single–shot G codes.
3. P/S larm (No.010) is displayed when a G code not listed in the G code
list is specified or a G code without a corresponding option is
specified.
4. G codes of different groups can be specified in the same block.
If G codes of the same group are specified in the same block, the G
code specified last is valid.
5. If a G code of group 01 is specified in a canned cycle, the canned cycle
is canceled in the same way as when a G80 command is specified. G
codes of group 01 are not affected by G codes for specifying a canned
cycle.
6. When G code system A is used, absolute or incremental programming
is specified not by a G code (G90/G91) but by an address word (X/U,
Z/W, C/H, Y/V). When G code system A is used for a drilling cycle,
only the initial level is provided at the return point.
G19G19G19YpZp plane selection
G20G20G70Input in inch
G21G21G71
G22G22G22
G23G23G23
G25G25G25
G26G26G26
G27G27G27Reference position return check
G28G28G28Return to reference position
G30G30G30
G31G31G31Skip function
G32G33G33Thread cutting
G34G34G34
G36G36G36Automatic tool compensation X
G37G37G37
G40G40G40
G41G41G41
G42G42G42Tool nose radius compensation right
G50G92G92Coordinate system setting or max. spindle speed setting
G50.3G92.1G92.1
G50.2
(G250)
G51.2
(G251)
G07.1
(G107)
G12.1
(G112)
G13.1
(G113)
G50.2
(G250)
G51.2
(G251)
G07.1
(G107)
G12.1
(G112)
G13.1
(G113)
G50.2
(G250)
G51.2
(G251)
PROGRAMMING
T able 3 G code list (1/3)
GroupFunction
Positioning (Rapid traverse)
01
00
21
16
06
09
08
00
01
00
07
00
20
Circular interpolation CW
Cylindrical interpolation
Polar coordinate interpolation mode
Polar coordinate interpolation cancel mode
ZpXp plane selection
Input in mm
Stored stroke check function on
Stored stroke check function off
Spindle speed fluctuation detection off
Spindle speed fluctuation detection on
2nd, 3rd and 4th reference position return
Variable–lead thread cutting
Automatic tool compensation Z
Tool nose radius compensation cancel
Tool nose radius compensation left
Workpiece coordinate system preset
Polygonal turning cancel
Polygonal turning
B–63604EN/01
34
B–63604EN/01
ABC
G52G52G52Local coordinate system setting
G53G53G53
G54G54G54
G55G55G55Workpiece coordinate system 2 selection
G56G56G56Workpiece coordinate system 3 selection
G57G57G57
G58G58G58Workpiece coordinate system 5 selection
G59G59G59Workpiece coordinate system 6 selection
G65G65G6500Macro calling
G66G66G66Macro modal call
G67G67G67
G68G68G68Mirror image for double turrets ON or balance cut mode
G69G69G69
G70G70G72Finishing cycle
G71G71G73Stock removal in turning
G72G72G74
G73G73G75Pattern repeating
G74G74G76End face peck drilling
G75G75G77Outer diameter/internal diameter drilling
G76G76G78Multiple threading cycle
G80G80G80
G83G83G83Cycle for face drilling
G84G84G84Cycle for face tapping
G86G86G86
G87G87G87Cycle for side drilling
G88G88G88Cycle for side tapping
G89G89G89Cycle for side boring
G90G77G20Outer diameter/internal diameter cutting cycle
G92G78G2101Thread cutting cycle
G94G79G24Endface turning cycle
G96G96G96Constant surface speed control
G97G97G97
G98G94G94Per minute feed
G99
*G90G90
*G91G91
*G98G98Return to initial level (See Explanations 6)
*G99G99
G code
G95G95
3. PREPARATORY FUNCTION
PROGRAMMING
T able 3 G code list (2/3)
GroupFunction
00
14
12
04
00
10
02
05
03
11
Machine coordinate system setting
Workpiece coordinate system 1 selection
Workpiece coordinate system 4 selection
Macro modal call cancel
Mirror image for double turrets OFF or balance cut mode cancel
Stock removal in facing
Canned cycle for drilling cancel
Cycle for face boring
Constant surface speed control cancel
Per revolution feed
Absolute programming
Incremental programming
Return to R point level (See Explanations 6)
(G FUNCTION)
35
3. PREPARATORY FUNCTION
(G FUNCTION)
G code
ABC
G100G100G100B axis control–Program registration completion
G101G101G101B axis control–First program registration start
G102G102G10200B axis control–Second program registration start
G103G103G103B axis control–Third program registration start
G110G110G110B axis control–One motion operation programming
PROGRAMMING
T able 3 G code list (3/3)
GroupFunction
B–63604EN/01
36
B–63604EN/01
4
PROGRAMMING
INTERPOLATION FUNCTIONS
4. INTERPOLATION FUNCTIONS
37
PROGRAMMING4. INTERPOLATION FUNCTIONS
B–63604EN/01
4.1
POSITIONING
(G00)
Format
Explanations
The G00 command moves a tool to the position in the workpiece system
specified with an absolute or an incremental command at a rapid traverse
rate.
In the absolute command, coordinate value of the end point is
programmed.
In the incremental command the distance the tool moves is programmed.
G00IP_;
IP_: For an absolute command, the coordinates of an end
position, and for an incremental command, the distance
the tool moves.
Either of the following tool paths can be selected according to bit 1 (LRP)
of parameter No. 1401.
D Nonlinear interpolation positioning
The tool is positioned with the rapid traverse rate for each axis
separately. The tool path is normally straight.
D Linear interpolation positioning
The tool path is the same as in linear interpolation (G01). The tool is
positioned within the shortest possible time at a speed that is not more
than the rapid traverse rate for each axis. However, the tool path is not
the same as in linear interpolation (G01).
Linear interpolation positioning
End position
Non linear interpolation positioning
Start position
The rapid traverse rate in the 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.
38
B–63604EN/01
Examples
PROGRAMMING
X
56.0
4. INTERPOLATION FUNCTIONS
30.5
30.0
Restrictions
φ40.0
Z
< Radius programming >
G00X40.0Z56.0 ; (Absolute command)
or
G00U–60.0W–30.5;(Incremental command)
The rapid traverse rate cannot be specified in the address F.
Even if linear interpolation positioning is specified, nonlinear
interpolation positioning is used in the following cases. Therefore, be
careful to ensure that the tool does not foul the workpiece.
D G28 specifying positioning between the reference and intermediate
positions.
D G53
39
PROGRAMMING4. INTERPOLATION FUNCTIONS
B–63604EN/01
4.2
LINEAR
INTERPOLATION
(G01)
Format
Explanations
Tools can move along a line.
G01 IP_F_;
IP_:For an absolute command, the coordinates of an end
point , and for an incremental command, the distance
the tool moves.
F_:Speed of tool feed (Feedrate)
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.
For feed–per–minute mode under 2–axis simultaneous control, the
feedrate for a movement along each axis as follows :
Examples
D Linear interpolation
G01ααββ
< Diameter programming >
G01X40.0Z20.1F20 ; (Absolute command)
or
G01U20.0W–25.9F20 ; (Incremental command)
Ff ;
Feed rate of α axis direction :
Feed rate of β axis direction :
2
Ǹ
L + a2) b
X
20.1
Fa +
F
+
b
46.0
a
L
b
L
f
f
40
φ40.0
End point
Start point
φ20.0
Z
B–63604EN/01
PROGRAMMING
4. INTERPOLATION FUNCTIONS
4.3
CIRCULAR
INTERPOLATION
(G02, G03)
Format
The command below will move a tool along a circular arc.
Arc in the XpYp plane
G17
G02
G03
Arc in the ZpXp plane
G18
G02
G03
Arc in the YpZp plane
G02
G19
G03
Xp_Yp_
Xp_Zp_
Yp_Zp_
I_J_
R_
I_K_
R_
J_K_
R_
F_
F_
F_
Table.4.3 Description of the command format
CommandDescription
G17Specification of arc on XpYp plane
G18Specification of arc on ZpXp plane
G19Specification of arc on Y pZp plane
G02Circular Interpolation Clockwise direction (CW)
G03Circular Interpolation Counterclockwise direction (CCW)
X
p_
Y
p_
Z
p_
I_Xp axis distance from the start point to the center of an arc with
J_Yp axis distance from the start point to the center of an arc with
Command values of X axis or its parallel axis
(set by parameter No. 1022)
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)
sign, radius value
sign, radius value
k_Zp axis distance from the start point to the center of an arc with
sign, radius value
R_Arc radius with no sign (always with radius value)
F_Feedrate along the arc
41
Explanations
PROGRAMMING4. INTERPOLATION FUNCTIONS
B–63604EN/01
NOTE
The U–, V–, and W–axes (parallel with the basic axis) can
be used with G–codes B and C.
D Direction of the circular
interpolation
D Distance moved on an
arc
D Distance from the start
point to the center of arc
“Clockwise”(G02) and “counterclockwise”(G03) on the X
plane or YpZp plane) are defined when the XpYp plane is viewed
(Z
pXp
in the positive–to–negative direction of the Z
axis (Yp axis or Xp axis,
p
pYp
plane
respectively) in the Cartesian coordinate system. See the figure below.
Yp
G02
G17
G03
Xp
Xp
G03
G02
Zp
G18
Zp
G02
G19
G03
Yp
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.
The arc center is specified by addresses I, J, and K for the Xp, Y p, 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.
I, J, and K must be signed according to the direction.
D Full–circle programming
End point (x,y)
yx
x
Center
Start
i
point
j
End point (z,x)
z
Center
End point (y ,z)
z
k
Start
point
i
y
Center
Start
j
point
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 value in a parameter (No.3410), an P/S alarm
(No.020) occurs.
When X
p, Yp
, and Z
are omitted (the end point is the same as the start
p
point) and the center is specified with I, J, and K, a 360° arc (circle) is
specified.
42
B–63604EN/01
PROGRAMMING
4. INTERPOLATION FUNCTIONS
D 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
considered. An arc with a sector angle of 180
°, and the other is more than 180° are
°or wider cannot be
specified. 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°)
G02 W60.0 U10.0 R50.0
For arc (2) (greater than 180°)
An arc with a sector angle of 180°
or wider cannot be specified
within a single block.
F300.0 ;
(2)
Start point
r=50mm
End point
(1)
r=50mm
X
D Feedrate
Restrictions
D Simultaneously
specifying R with I, J,
and K
D Specifying an axis that is
not contained in the
specified plane
D Difference in the radius
between the start and
end points
Z
The feedrate in circular interpolation is equal to the feed rate 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 feed rate is measured along the arc after the
tool nose radius compensation is applied
If I, J, K, and R addresses are specified simultaneously, the arc specified
by address R takes precedence and the other are ignored.
If an axis not contained in the specified plane is commanded, an alarm
is displayed.
For example, when a ZX plane is specified in G–code B or C, specifying
the X–axis or U–axis (parallel to the X–axis) causes P/S alarm No. 028
to be generated.
If the difference in the radius between the start and end points of the arc
exceeds the value specified in parameter No. 3410, P/S alarm No. 020 is
generated.
If the end point is not on the arc, the tool moves in a straight line along
one of the axes after reaching the end point.
43
PROGRAMMING4. INTERPOLATION FUNCTIONS
B–63604EN/01
D Specifying a semicircle
with R
If an arc having a central angle approaching 180 is specified with R, the
calculation of the center coordinates may produce an error . In such a case,
specify the center of the arc with I, J, and K.
Examples
D Command of circular
interpolation X, Z
G02X_Z_I_K_F_;G03X_Z_I_K_F_;
End point
X–axis
X
Z
Center of arc
K
(Absolute programming)
(Diameter
programming)
Start point
Z–axisZ–axisZ–axis
End point
X–axisX–axis
X
Z
(Absolute programming)
G02X_Z_R_F_;
End point
(Diameter
programming)
Start point
K
R
X
Z
Center of arc
(Diameter
programming)
Start point
(Absolute programming)
X
15.0
R25.0
(Diameter programming)
G02X50.0Z30.0I25.0F0.3; or
G02U20.0W–020.0I25.0F0.3; or
G02X50.0Z30.0R25.0F0.3 or
10.0
G02U20.0W–20.0R25.F0.3;
φ50.0
30.0
Z
50.0
44
B–63604EN/01
PROGRAMMING
4. INTERPOLATION FUNCTIONS
4.4
POLAR COORDINA TE
INTERPOLATION
(G12.1, G13.1)
Format
D Specify G12.1 and G13.1
in Separate Blocks.
Explanations
D Polar coordinate
interpolation plane
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 method is useful in cutting
a front surface and grinding a cam shaft on a lathe.
Specify linear or circular interpolation using coordinates
in a Cartesian coordinate system consisting of a linear
axis and rotary axis (virtual axis).
Polar coordinate interpolation mode is cancelled (for
not performing polar coordinate interpolation)
G1 12 and G113 can be used in place of G12.1 and G13.1,
respectively.
G12.1 starts the polar coordinate interpolation mode and selects a polar
coordinate interpolation plane (Fig. 4.4 (a)). Polar coordinate interpolation
is performed on this plane.
Rotary axis (virtual axis)
(unit:mm or inch)
Linear axis
(unit:mm or inch)
Origin of the workpiece coordinate system
Fig4.4 (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 (No. 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.
45
PROGRAMMING4. INTERPOLATION FUNCTIONS
B–63604EN/01
D 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)
The unit for the feedrate
is mm/min or inch/min
D G codes which can be
specified in the polar
coordinate interpolation
mode
D Circular interpolation in
the polar coordinate
plane
In the polar coordinate interpolation mode, program commands are
specified with Cartesian coordinates on the polar coordinate interpolation
plane. The axis address for the rotation axis is used as the axis address
for the second axis (virtual axis) in the plane. Whether a diameter or
radius is specified for the first axis in the plane is the same as for the
rotation axis regardless of the specification for the first axis in the plane.
The virtual axis is at coordinate 0 immediately after G12.1 is specified.
Polar interpolation is started assuming the angle of 0 for the position of
the tool when G12.1 is specified.
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.
G01Linear interpolation. . . . . . . . . . . .
G02, G03Circular interpolation. . . . . . . . .
G04Dwell. . . . . . . . . . . . . .
G40, G41, G42Tool nose radius compensation . . . .
(Polar coordinate interpolation is applied to the
path after cutter compensation.)
G65, G66, G67Custom macro command. . . .
G98, G99Feed per minute, feed per revolution. . . . . . . . .
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).
D I and J in the Xp–Y p plane when the linear axis is the X–axis or an axis
parallel to the X–axis.
D J and K in the Yp–Zp plane when the linear axis is Y–axis or an axis
parallel to the Y–axis.
D K and I in the Zp–Xp plane when the linear axis is the Z–axis or an axis
parallel to the Z–axis.
D Movement along axes
not in the polar
coordinate interpolation
plane in the polar
coordinate interpolation
mode
D Current position display
in the polar coordinate
interpolation mode
The radius of an arc can be specified also with an R command.
NOTE
The U–, V–, and W–axes (parallel with the basic axis) can
be used with G–codes B and C.
The tool moves along such axes normally, independent of polar
coordinate interpolation.
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).
46
B–63604EN/01
Restrictions
PROGRAMMING
4. INTERPOLATION FUNCTIONS
Coordinate system for the
D
polar coordinate
interpolation
D Tool nose radius
compensation command
D Program restart
D Cutting feedrate for the
rotation axis
Before G12.1 is specified, a workpiece coordinate system) where the
center of the rotary axis is the origin of the coordinate system must be set.
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 cannot be started or terminated
(G12.1 or G13.1) in the tool nose radius compensation mode (G41 or
G42). G12.1 or G13.1 must be specified in the tool nose radius
compensation canceled mode (G40).
For a block in the G12.1 mode, the program cannot be restarted.
Polar coordinate interpolation converts the tool movement for a figure
programmed in a Cartesian coordinate system to the tool movement in the
rotation axis (C–axis) and the linear axis (X–axis). When the tool moves
closer to the center of the workpiece, the C–axis component of the
feedrate becomes larger and may exceed the maximum cutting feedrate
for the C–axis (set in parameter (No. 1422)), causing an alarm (see the
figure below). To prevent the C–axis component from exceeding the
maximum cutting feedrate for the C–axis, reduce the feedrate specified
with address F or create a program so that the tool (center of the tool when
tool nose radius compensation is applied) does not move close to the
center of the workpiece.
WARNING
Consider lines L1, L2, and L3. ∆X is the distance the tool moves
∆
θ1
θ2
θ3
X
L1
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
L2
to θ3.
L3
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.
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. Specify a speed allowed by the formula. The formula provides a theoretical
value; in practice, a value slightly smaller than a theoretical value may need to be used due to
a calculation error.
π
F < L × R ×
180
(mm/min)
D Diameter and radius
programming
Even when diameter programming is used for the linear axis (X–axis),
radius programming is applied to the rotary axis (C–axis).
47
PROGRAMMING4. INTERPOLATION FUNCTIONS
B–63604EN/01
Examples
Example of Polar Coordinate Interpolation Program Based on X Axis
(Linear Axis) and C Axis (Rotary Axis)
C’ (hypothetical axis)
N204
N205
N206
C axis
N203
N202
N208
N207
Path after tool nose radius compensation
Program path
N201
N200
X axis
Tool
Z axis
X axis is by diameter programming, C axis is by radius programming.
O0001 ;
N010 T0101
N0100 G00 X120.0 C0 Z _ ; Positioning to start position
N0200 G12.1 ; Start of polar coordinate interpolation
N0201 G42 G01 X40.0 F _ ;
N0202 C10.0 ;
N0203 G03 X20.0 C20.0 R10.0 ;
N0204 G01 X–40.0 ; Geometry program
N0205 C–10.0 ; (program based on cartesian coordinates on
N0206 G03 X–20.0 C–20.0 I10.0 J0 ; X–C’ plane)
N0207 G01 X40.0 ;
N0208 C0 ;
N0209 G40 X120.0 ;
N0210 G13.1 ; Cancellation of polar coordinate interpolation
N0300 Z __ ;
N0400 X __C __ ;
N0900M30 ;
48
B–63604EN/01
PROGRAMMING
4. INTERPOLATION FUNCTIONS
4.5
CYLINDRICAL
INTERPOLATION
(G07.1)
Format
Explanations
D Plane selection
(G17, G18, G19)
The amount of travel of a rotary axis specified by an angle is once
internally converted to a distance of a linear axis along 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 the
amount of travel of the rotary axis.
The cylindrical interpolation function allows the side of a cylinder to be
developed for programming. So programs such as a program for
cylindrical cam grooving can be created very easily.
G07.1 IP r ; Starts the cylindrical interpolation mode
(enables cylindrical interpolation).
:
:
:
G07.1 IP 0 ; The cylindrical interpolation mode is cancelled.
IP : An address for the rotation axis
r : The radius of the cylinder
Specify G07.1 IP r ; and G07.1 IP 0; in separate blocks.
G107 can be used instead of G07.1.
Use parameter No. 1002 to specify whether the rotation axis is the X–, Y–,
or Z–axis, or an axis parallel to one of these axes. Specify the G code to
select a plane for which the rotation axis is the specified linear axis.
For example, when the rotation axis is an axis parallel to the X–axis, G17
must specify an Xp–Y p plane, which is a plane defined by the rotation axis
and the Y–axis or an axis parallel to the Y–axis.
Only one rotation axis can be set for cylindrical interpolation.
D Feedrate
NOTE
The U–, V–, and W–axes (parallel with the basic axis) can
be used with G–codes B and C.
A feedrate specified in the cylindrical interpolation mode is a speed on the
developed cylindrical surface.
49
PROGRAMMING4. INTERPOLATION FUNCTIONS
B–63604EN/01
D Circular interpolation
(G02,G03)
D Cutter compensation
D Cylindrical interpolation
accuracy
In the cylindrical interpolation mode, circular interpolation is possible
with the rotation axis and another linear axis. Radius R is used in
commands in the same way as described in Section 4.4.
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__;
To perform cutter compensation in the cylindrical interpolation mode,
cancel any ongoing cutter compensation mode before entering the
cylindrical interpolation mode. Then, start and terminate cutter
compensation within the cylindrical interpolation mode.
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.
Restrictions
D Arc radius specification
in the cylindrical
interpolation mode
D Circular interpolation
and tool nose radius
compensation
The actual amount
of travel
MOTION REV
R
MOTION REV
=
2×2πR
The amount of travel per rotation of the rotation axis (Set-
:
ting value of parameter No. 1260)
:
Workpiece radius
: Rounded to the least input increment
Specified value
2×2πR
MOTION REV
In the cylindrical interpolation mode, an arc radius cannot be specified
with word address I, J, or K.
If the cylindrical interpolation mode is started when tool nose radius
compensation is already applied, circular interpolation is not correctly
performed in the cylindrical interpolation mode.
50
B–63604EN/01
PROGRAMMING
4. INTERPOLATION FUNCTIONS
D Positioning
D Coordinate system
setting
D Cylindrical interpolation
mode setting
D Canned cycle for drilling
during cylindrical
interpolation mode
D Mirror Image for Double
Turret
In the cylindrical interpolation mode, positioning operations (including
those that produce rapid traverse cycles such as G28, G80 through 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).
In the cylindrical interpolation mode, a workpiece coordinate system
G50 cannot be specified.
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.
Canned cycles for drilling, G81 to G89, cannot be specified during
cylindrical interpolation mode.
Mirror image for double turret, G68 and G69, cannot be specified during
cylindrical interpolation mode.
T apered screws and scroll threads in addition to equal lead straight threads
can be cut by using a G32 command.
The spindle speed is read from the position coder on the spindle in real
time and converted to a cutting feedrate for feed–per minute mode, which
is used to move the tool.
L
L
Fig. 4.6 (b) T apered screw
L
Fig. 4.6 (c) Scroll thread
G32IP_F_;
IP_: End point
F_: Lead of the long axis
(always radius programming)
Explanations
X axis
End point
δ
X
0
Fig. 4.6 (d) Example of thread cutting
2
Z
α
δ
1
L
Start point
Z axis
In general, thread cutting is repeated along the same tool path in rough
cutting through finish cutting for a screw. Since thread cutting starts when
the position coder mounted on the spindle outputs a 1–turn signal,
threading is started at a fixed point and the tool path on the workpiece is
unchanged for repeated thread cutting. Note that the spindle speed must
remain constant from rough cutting through finish cutting. If not,
incorrect thread lead will occur.
53
PROGRAMMING4. INTERPOLATION FUNCTIONS
X
Tapered thread
LX
α
LZ
αx45° leadisLZ
αy45° leadisLX
Fig. 4.6 (e) LZ and LX of a tapered thread
B–63604EN/01
Z
In general, the lag of the servo system, etc. will produce somewhat
incorrect leads at the starting and ending points of a thread cut. To
compensate for this, a threading length somewhat longer than required
should be specified.
Table 4.6 lists the ranges for specifying the thread lead.
T able. 4.6 Ranges of lead sizes that can be specified
Least command increment
mm input0.0001 to 500.0000mm
Inch input0.000001 inch to 9.999999inch
54
B–63604EN/01
Explanations
1. Straight thread cutting
X axis
PROGRAMMING
30mm
4. INTERPOLATION FUNCTIONS
The following values are used in programming :
Thread lead :4mm
δ1=3mm
δ
=1.5mm
2
Depth of cut :1mm (cut twice)
(Metric input, Diameter programming)
δ
2
2. Tapered thread cutting
X axis
φ50
δ
2
φ43
0
30
70
40
δ
1
G00 U–62.0 ;
G32 W–74.5 F4.0 ;
Z axis
G00 U62.0 ;
W74.5 ;
U–64.0 ;
(For the second cut, cut 1mm more)
G32 W–74.5 ;
G00 U64.0 ;
W74.5 ;
The following values are used in programming :
Thread lead : 3.5mm in the direction of the Z axis
δ1=2mm
δ
=1mm
2
Cutting depth in the X axis direction is 1mm
(Cut twice)
(Metric input, Diameter programming)
G00 X 12.0 Z72.0 ;
δ
1
Z axis
φ14
G32 X 41.0 Z29.0 F3.5 ;
G00 X 50.0 ;
Z 72.0 ;
X 10.0 ;
(Cut 1mm more for the second cut)
G32 X 39.0 Z29.0 ;
G00 X 50.0 ;
Z 72.0 ;
55
PROGRAMMING4. INTERPOLATION FUNCTIONS
B–63604EN/01
WARNING
1 Feedrate override is effective (fixed at 100%) during thread cutting.
2 it is very dangerous to stop feeding the thread cutter without stopping the spindle. This will
suddenly increase the cutting depth. Thus, the feed hold function is ineffective while thread
cutting. If the feed hold button is pressed during thread cutting, the tool will stop after a block
not specifying thread cutting is executed as if the SINGLE BLOCK button were pushed.
However, the feed hold lamp (SPL lamp) lights when the FEED HOLD button on the machine
control panel is pushed. Then, when the tool stops, the lamp is turned off (Single Block stop
status).
3 When the FEED HOLD button is held down, or is pressed again in the first block that does not
specify thread cutting immediately after a thread cutting block, the tool stops at the block that
does not specify thread cutting.
4 When thread cutting is executed in the single block status, the tool stops after execution of the
first block not specifying thread cutting.
5 When the mode was changed from automatic operation to manual operation during thread
cutting, the tool stops at the first block not specifying thread cutting as when the feed hold button
is pushed as mentioned in Note 3.
However, when the mode is changed from one automatic operation mode to another, the tool
stops after execution of the block not specifying thread cutting as for the single block mode in
Note 4.
6 When the previous block was a thread cutting block, cutting will start immediately without
waiting for detection of the 1–turn signal even if the present block is a thread cutting block.
G32Z _ F_ ;
Z _; (A 1–turn signal is not detected before this block.)
G32 ; (Regarded as threading block.)
Z_ F_ ;(One turn signal is also not detected.)
7 Because the constant surface speed control is effective during scroll thread or tapered screw
cutting and the spindle speed changes, the correct thread lead may not be cut. Therefore, do
not use the constant surface speed control during thread cutting. Instead, use G97.
8 A movement block preceding the thread cutting block must not specify chamfering or corner
R.
9 A thread cutting block must not specifying chamfering or corner R.
10The spindle speed override function is disabled during thread cutting. The spindle speed is
fixed at 100%.
11Thread cycle retract function is ineffective to G32.
56
B–63604EN/01
PROGRAMMING
4. INTERPOLATION FUNCTIONS
4.7
VARIABLE–LEAD
THREAD CUTTING
(G34)
Format
Explanations
Specifying an increment or a decrement value for a lead per screw
revolution enables variable–lead thread cutting to be performed.
Fig. 4.7 Variable–lead screw
G34 IP_F_K_;
IP : End point
F : Lead in long
K : Increment and decrement of lead per spindle revolution
itudinal axis direction at the start point
Address other than K are the same as in straight/taper thread cutting with
G32.
Table 4.7 lists a range of values that can be specified as K.
Examples
Table 4.7 Range of valid K values
Metric input"0.0001 to"500.0000 mm/rev
Inch input"0.000001 to"9.999999 inch/rev
P/S alarm (No. 14) is produced, for example, when K such that the value
in Table 4.7 is exceeded is directed, the maximum value of lead is
exceeded as a result of increase or decrease by K or the lead has a negative
value.
WARNING
The “Thread Cutting Cycle Retract” is not effective for G34.
Lead at the start point: 8.0 mm
Lead increment: 0.3 mm/rev
G34 Z–72.0 F8.0 K0.3 ;
57
PROGRAMMING4. INTERPOLATION FUNCTIONS
B–63604EN/01
4.8
CONTINUOUS
THREAD CUTTING
Explanations
This function for continuous thread cutting is such that fractional pulses
output to a joint between move blocks are overlapped with the next move
for pulse processing and output (block overlap) .
Therefore, discontinuous machining sections caused by the interruption
of move during continuously block machining are eliminated, thus
making it possible to continuously direct the block for thread cutting
instructions.
Since the system is controlled in such a manner that the synchronism
with the spindle does not deviate in the joint between blocks wherever
possible, it is possible to performed special thread cutting operation in
which the lead and shape change midway.
G32
G32
Fig. 4.8 Continuous thread cutting
G32
Even when the same section is repeated for thread cutting while changing
the depth of cut, this system allows a correct machining without impairing
the threads.
NOTE
1 Block overlap is effective even for G01 command,
producing a more excellent finishing surface.
2 When extreme micro blocks continue, no block overlap may
function.
58
B–63604EN/01
PROGRAMMING
4. INTERPOLATION FUNCTIONS
4.9
MULTIPLE–THREAD
CUTTING
Format
Explanations
Using the Q address to specify an angle between the one–spindle–rotation
signal and the start of threading shifts the threading start angle, making
it possible to produce multiple–thread screws with ease.
Multiple–thread screws.
(constant–lead threading)
G32 IP_ F_ Q_ ;
G32 IP_ Q_ ;
IP_ : End point
F_ : Lead in longitudinal direction
Q_ : Threading start angle
The start angle is not a continuous–state (modal) value. It must be
specified each time it is used. If a value is not specified, 0 is assumed.
The start angle (Q) increment is 0.001 degrees. Note that no decimal point
can be specified.
Example:
For a shift angle of 180 degrees, specify Q180000.
Q180.000 cannot be specified, because it contains a decimal point.
A start angle (Q) of between 0 and 360000 (in 0.001–degree units) can be
specified. If a value greater than 360000 (360 degrees) is specified, it is
rounded down to 360000 (360 degrees).
For the G76 multiple–thread cutting command, always use the FS15 tape
format.
59
Examples
PROGRAMMING4. INTERPOLATION FUNCTIONS
Program for producing double–threaded screws
(with start angles of 0 and 180 degrees)
G00 X40.0 ;
G32 W–38.0 F4.0 Q0 ;
G00 X72.0 ;
W38.0 ;
X40.0 ;
G32 W–38.0 F4.0 Q180000
;
G00 X72.0 ;
W38.0 ;
B–63604EN/01
60
B–63604EN/01
PROGRAMMING
4. INTERPOLATION FUNCTIONS
4.10
SKIP FUNCTION
(G31)
Format
Explanations
Linear interpolation can be commanded by specifying axial move
following the G31 command, like G01. If an external skip signal is input
during the execution of this command, execution of the command is
interrupted and the next block is executed.
The skip function is used when the end of machining is not programmed
but specified with a signal from the machine, for example, in grinding. It
is used also for measuring the dimensions of a workpiece.
For details of how to use this function, refer to the manual supplied by the
machine tool builder.
G31 IP_ ;
G31:One–shot G code (If is effective only in the block in which
it is specified)
The coordinate values when the skip signal is turned on can be used in a
custom macro because they are stored in the custom macro system
variable #5061 to #5068, as follows:
#5061 X axis coordinate value
#5062 Z axis coordinate value
#5063 3rd axis coordinate value
#5064 4th axis coordinate value
WARNING
To increase the precision of the tool position when the skip
signal is input, feedrate override, dry run, and automatic
acceleration/deceleration is disabled for the skip function
when the feedrate is specified as a feed per minute value.
To enable these functions, set bit 7 (SKF) of parameter No.
6200 to 1. If the feedrate is specified as a feed per rotation
value, feedrate override, dry run, and automatic
acceleration/deceleration are enabled for the skip function,
regardless of the setting of the SKF bit.
NOTE
1 If G31 command is issued while tool nose radius compensation is
applied, an P/S alarm of No.035 is displayed. Cancel the cutter
compensation with the G40 command before the G31 command
is specified.
2 For the high–speed skip option, executing G31 during feed–per–
rotation mode causes P/S alarm (No.211) to be generated.
61
Examples
D The next block to G31 is an
incremental command
PROGRAMMING4. INTERPOLATION FUNCTIONS
G31 W100.0 F100;
U50.0;
B–63604EN/01
U50.0
D The next block to G31 is an
absolute command for 1
axis
Skip signal is input here
X
Z
Fig.4.10(a) The next block is an incremental command
G31 Z200.00 F100;
X100.0;
Skip signal is input here
100.0
50.0
W100
Actual motion
Motion without skip signal
X100.0
X200.0
D The next block to G31 is an
absolute command for 2
axes
Actual motion
Motion without skip signal
Fig.4.10(b) The next block is an absolute command for 1 axis
G31 G90X200.0 F100;
X300.0 Z100.0;
X
Skip signal is input here
10
0
100200300
Fig 4.10(c) The next block is an absolute command for 2 axes
(300,100)
Actual motion
Motion without skip signal
Z
62
B–63604EN/01
PROGRAMMING
4. INTERPOLATION FUNCTIONS
4.11
MULTISTAGE SKIP
Format
In a block specifying P1 to P4 after G31, the multistage skip function
stores coordinates in a custom macro variable when a skip signal (4–point
or 8–point ; 8–point when a high–speed skip signal is used) is turned on.
Parameters No. 6202 to No. 6205 can be used to select a 4–point or
8–point (when a high–speed skip signal is used) skip signal. One skip
signal can be set to match multiple Pn or Qn (n=1,2,3,4) as well as to
match a Pn or Qn on a one–to–one basis.
A skip signal from equipment such as a fixed–dimension size measuring
instrument can be used to skip programs being executed.
In plunge grinding, for example, a series of operations from rough
machining to spark–out can be performed automatically by applying a
skip signal each time rough machining, semi–fine machining,
fine–machining, or spark–out operation is completed.
Move command
G31 IP __ F __ P __ ;
IP_ : End point
F_ : Feedrate
P_ : P1–P4
Dwell
G04 X (U, P)__ (Q__) ;
Explanations
D Correspondence to skip
signals
X(U, P)_ : Dwell time
Q_ : Q1 – Q4
Multistage skip is caused by specifying P1, P2, P3, or P4 in a G31 block.
For an explanation of selecting (P1, P2, P3, or P4), refer to the manual
supplied by the machine tool builder.
Specifying Q1, Q2, Q3, or Q4 in G04 (dwell command) enables dwell
skip in a similar way to specifying G31. A skip may occur even if Q is
not specified. For an explanation of selecting (Q1, Q2, Q3, or Q4), refer
to the manual supplied by the machine tool builder.
Parameter Nos. 6202 to 6205 can be used to specify whether the 4–point
or 8–point skip signal is used (when a high–speed skip signal is used).
Specification is not limited to one–to–one correspondence. It is possible
to specify that one skip signal correspond to two or more Pn’s or Qn’s
(n=1, 2, 3, 4). Also, bits 0 (DS1) to 7 (DS8) of parameter No. 6206 can
be used to specify dwell.
CAUTION
Dwell is not skipped when Qn is not specified and
parameters DS1–DS8 (No. 6206#0–#7) are not set.
63
PROGRAMMING4. INTERPOLATION FUNCTIONS
B–63604EN/01
4.12
TORQUE LIMIT SKIP
(G31 P99)
Format
Explanations
D G31 P99
With the motor torque limited (for example, by a torque limit command,
issued through the PMC window), a move command following G31 P99
(or G31 P98) can cause the same type of cutting feed as with G01 (linear
interpolation).
With the issue of a signal indicating a torque limit has been reached
(because of pressure being applied or for some other reason), a skip
occurs.
For details of how to use this function, refer to the manuals supplied by
the machine tool builder.
G31 P99 IP_ F_ ;
G31 P98 IP_ F_ ;
G31: One–shot G code (G code effective only in the block in which it
is issued)
If the motor torque limit is reached, or a SKIP signal is received during
execution of G31 P99, the current move command is aborted, and the next
block is executed.
D G31 P98
D Torque limit command
D Custom macro system
variable
Limitations
D Axis command
If the motor torque limit is reached during execution of G31 P98, the
current move command is aborted, and the next block is executed. The
SKIP signal <X0004#7/Tool post 2 X0013#7> does not affect G31 P98.
Entering a SKIP signal during the execution of G31 P98 does not cause
a skip.
If a torque limit is not specified before the execution of G31 P99/98, the
move command continues; no skip occurs even if a torque limit is
reached.
When G31 P99/98 is specified, the custom macro variables hold the
coordinates at the end of a skip. (See Section 4.9.)
If a SKIP signal causes a skip with G31 P99, the custom macro system
variables hold the coordinates based on the machine coordinate system
when it stops, rather than those when the SKIP signal is entered.
Only one axis can be controlled in each block with G31 P98/99.
If two or more axes are specified to be controlled in such blocks, or no axis
command is issued, P/S alarm No. 015 is generated.
D Degree of servo error
D High–speed skip
When a signal indicating that a torque limit has been reached is input
during execution of G31 P99/98, and the degree of servo error exceeds
32767, P/S alarm No. 244 is generated.
With G31 P99, a SKIP signal can cause a skip, but not a high–speed skip.
64
B–63604EN/01
PROGRAMMING
4. INTERPOLATION FUNCTIONS
D Simplified
synchronization and
slanted axis control
D Speed control
D Consecutive commands
G31 P99/98 cannot be used for axes subject to simplified synchronization
or the X–axis or Z–axis when under slanted axis control.
Bit 7 (SKF) of parameter No. 6200 must be set to disable dry run,
override, and auto acceleration or deceleration for G31 skip commands.
Do not use G31 P99/98 in consecutive blocks.
WARNING
Always specify a torque limit before a G31 P99/98
command. Otherwise, G31 P99/98 allows move
commands to be executed without causing a skip.
NOTE
If G31 is issued with tool nose radius compensation
specified, P/S alarm No. 035 is generated. Therefore,
before issuing G31, execute G40 to cancel tool nose radius
compensation.
deceleration time
constant for a cutting feedrate
Time
67
PROGRAMMING5. FEED FUNCTIONS
B–63604EN/01
D Tool path in a cutting
feed
If the direction of movement changes between specified blocks during
cutting feed, a rounded–corner path may result (Fig. 5.1 (b)).
X
Programmed path
Actual tool path
0
Fig. 5.1 (b) Example of tool path between two blocks
Z
In circular interpolation, a radial error occurs (Fig. 5.1(c)).
X
∆r:Error
Programmed path
Actual tool path
r
0
Fig. 5.1 (c)Example of radial error in circular interpolation
Z
5.2
RAPID TRAVERSE
Format
Explanations
The rounded–corner path shown in Fig. 5.1(b) and the error shown in Fig.
5.1(c) depend on the feedrate. So, the feedrate needs to be controlled for
the tool to move as programmed.
G00 IP_ ;
G00 : G code (group 01) for positioning (rapid traverse)
IP_ ; Dimension word for the end point
The positioning command (G00) positions the tool by rapid traverse. In
rapid traverse, the next block is executed after the specified feedrate
becomes 0 and the servo motor reaches a certain range set by the machine
tool builder (in–position check).
A rapid traverse rate is set for each axis by parameter No. 1420, so no rapid
traverse feedrate need be programmed.
The following overrides can be applied to a rapid traverse rate with the
switch on the machine operator’s panel:F0, 25, 50, 100%
F0: Allows a fixed feedrate to be set for each axis by parameter No. 1421.
For detailed information, refer to the appropriate manual of the machine
tool builder.
68
B–63604EN/01
PROGRAMMING
5. FEED FUNCTIONS
5.3
CUTTING FEED
Format
Explanations
Feedrate of linear interpolation (G01), circular interpolation (G02, G03),
etc. are commanded with numbers after the F code.
In cutting feed, the next block is executed so that the feedrate change from
the previous block is minimized.
Two modes of specification are available:
1. Feed per minute (G98)
After F, specify the amount of feed of the tool per minute.
2. Feed per revolution (G99)
After F, specify the amount of feed of the tool per spindle revolution.
Feed per minute
G98 ; G code (group 05) for feed per minute
F_ ; Feedrate command (mm/min or inch/min)
Feed per revolution
G99 ;G code (group 05) for feed per revolution
F_ ;Feedrate command (mm/rev or inch/rev)
D Tangential speed
constant control
D Feed per minute (G98)
Cutting feed is controlled so that the tangential feedrate is always set at
a specified feedrate.
X
End point
F
Start
point
Linear interpolation
Fig. 5.3 (a) T angential feedrate (F)
X
Starting
point
F
CenterEnd point
ZZ
Circular interpolation
After specifying G98 (in the feed per minute mode), the amount of feed
of the tool per minute is to be directly specified by setting a number after
F . G98 is a modal code. Once a G98 is specified, it is valid until G99 (feed
per revolution) is specified. At power–on, the feed per revolution mode
is set.
An override from 0% to 254% (in 1% steps) can be applied to feed per
minute with the switch on the machine operator’s panel. For detailed
information, see the appropriate manual of the machine tool builder.
69
PROGRAMMING5. FEED FUNCTIONS
B–63604EN/01
D Feed per revolution
(G99)
F
Fig. 5.3 (b) Feed per minute
Feed amount per minute
(mm/min or inch/min)
WARNING
No override can be used for some commands such as for
threading.
After specifying G99 (in the feed per revolution mode), the amount of
feed of the tool per spindle revolution is to be directly specified by setting
a number after F . G99 is a modal code. Once a G99 is specified, it is valid
until G98 (feed per minute) is specified.
An override from 0% to 254% (in 1% steps) can be applied to feed per
revolution with the switch on the machine operator’s panel. For detailed
information, see the appropriate manual of the machine tool builder.
If bit 0 (NPC) of parameter No. 1402 has been set to 1, feed–per–rotation
commands can be specified even when a position coder is not being used.
(The CNC converts feed–per–rotation commands to feed–per–minute
commands.)
D Cutting feedrate clamp
F
Fig. 5.3 (c)Feed per revolution
Feed amount per spindle revolution
(mm/rev or inch/rev)
CAUTION
1 When the speed of the spindle is low, feedrate fluctuation
may occur. The slower the spindle rotates, the more
frequently feedrate fluctuation occurs.
2 No override can be used for some commands such as for
threading.
A common upper limit can be set on the cutting feedrate along each axis
with parameter No. 1422. If an actual cutting feedrate (with an override
applied) exceeds a specified upper limit, it is clamped to the upper limit.
70
B–63604EN/01
PROGRAMMING
5. FEED FUNCTIONS
NOTE
An upper limit is set in mm/min or inch/min. CNC calculation
may involve a feedrate error of ±2% with respect to a
specified value. However, this is not true for
acceleration/deceleration. To be more specific, this error is
calculated with respect to a measurement on the time the
tool takes to move 500 mm or more during the steady state:
D Reference
5.4
DWELL (G04)
Format
Explanations
See Appendix C for a range of feedrates that can be specified.
Dwell G04 X_ ; or G04 U_ ; or G04 P_ ;
X_ : Specify a time (decimal point permitted)
U_ : Specify a time (decimal point permitted)
P_ : Specify a time (decimal point not permitted)
By specifying a dwell, the execution of the next block is delayed by the
specified time.
Bit 1 (DWL) of parameter No. 3405 can specify dwell for each rotation
in feed per rotation mode (G99).
Table 5.4 (a)
Command value range of the dwell time (Command by X or U)
Increment systemCommand value rangeDwell time unit
IS–B0.001 to 99999.999
s or rev
IS–C0.0001 to 9999.9999
Table 5.4 (b)
Command value range of the dwell time (Command by P)
Increment systemCommand value rangeDwell time unit
IS–B1 to 999999990.001 s or rev
IS–C1 to 999999990.0001 s or rev
71
6
PROGRAMMING6. REFERENCE POSITION
REFERENCE POSITION
A CNC machine tool has a special position where, generally, the tool is
exchanged or the coordinate system is set, as described later. This
position is referred to as a reference position.
B–63604EN/01
72
B–63604EN/01
6.1
REFERENCE
POSITION RETURN
PROGRAMMING
6. REFERENCE POSITION
D Reference position
The reference position is a fixed position on a machine tool to which the
tool can easily be moved by the reference position return function.
For example, the reference position is used as a position at which tools
are automatically changed. Up to four reference positions can be
specified by setting coordinates in the machine coordinate system in
parameters (No. 1240 to 1243).
Y
2nd reference position
3rd reference position
Reference position
4th reference
position
X
Machine zero point
Fig. 6.1 (a) Machine zero point and reference positions
73
PROGRAMMING6. REFERENCE POSITION
B–63604EN/01
D Reference position
return
D Reference position
return check
Tools are automatically moved to the reference position via an
intermediate position along a specified axis. When reference position
return is completed, the lamp for indicating the completion of return goes
on.
X
Intermediate position
Reference position
Z
Fig. 6.2 (b) Reference position return
The reference position return check (G27) is the function which checks
whether the tool has correctly returned to the reference position as
specified in the program. If the tool has correctly returned to the reference
position along a specified axis, the lamp for the axis goes on.
Format
D Reference position
return
D Reference position
return check
G28 _ ;
IP
G30 P2 _ ;
G30 P3 _ ;
G30 P4 _ ;
IP_ : Command specifying the intermediate position
(Absolute/incremental command)
IPG27 _ ;
IP_ : Command specifying the reference position
(Absolute/incremental command)
Reference position return
2nd reference position return
IP
3rd reference position return
IP
4th reference position return
IP
(P2 can
be omitted.)
74
B–63604EN/01
Explanations
PROGRAMMING
6. REFERENCE POSITION
D Reference position
return (G28)
D 2nd, 3rd, and 4th
reference position return
(G30)
D Reference position
return check (G27)
Restrictions
D Status the machine lock
being turned on
Positioning to the intermediate or reference positions are performed at the
rapid traverse rate of each axis.
Therefore, for safety, the tool nose radius compensation, and tool offset
should be cancelled before executing this command.
In a system without an absolute–position detector, the first, third, and
fourth reference position return functions can be used only after the
reference position return (G28) or manual reference position return (see
III–3.1) is made. The G30 command is generally used when the automatic
tool changer (ATC) position differs from the reference position.
G27 command positions the tool at rapid traverse rate. If the tool reaches
the reference position, the reference position return lamp lights up.
However , if the position reached by the tool is not the reference position,
an alarm (No. 092) is displayed.
The lamp for indicating the completion of return does not go on when the
machine lock is turned on, even when the tool has automatically returned
to the reference position. In this case, it is not checked whether the tool
has returned to the reference position even when a G27 command is
specified.
D First return to the
reference position after
the power has been
turned on (without an
absolute position
detector)
D Reference position
return check in an offset
mode
D Lighting the lamp when
the programmed position
does not coincide with
the reference position
Reference
When the G28 command is specified when manual return to the reference
position has not been performed after the power has been turned on, the
movement from the intermediate point is the same as in manual return to
the reference position.
In this case, the tool moves in the direction for reference position return
specified in parameter ZMIx (bit 5 of No. 1006). Therefore the specified
intermediate position must be a position to which reference position
return is possible.
In an offset mode, the position to be reached by the tool with the G27
command is the position obtained by adding the offset value. Therefore,
if the position with the offset value added is not the reference position, the
lamp does not light up, but an alarm is displayed instead. Usually , cancel
offsets before G27 is commanded.
When the machine tool is an inch system with metric input, the reference
position return lamp may also light up even if the programmed position
is shifted from the reference position by least input increment. This is
because the least input increment of the machine is smaller than its least
command increment.
D Manual reference
position return
See III–3.1.
75
7
PROGRAMMING7. COORDINATE SYSTEM
COORDINATE SYSTEM
By teaching the CNC a desired tool position, the tool can be moved to the
position. Such a tool position is represented by coordinates in a
coordinate system. Coordinates are specified using program axes.
When two program axes, the X–axis and Z–axis, are used, coordinates
are specified as follows:
X_Z_
This command is referred to as a dimension word.
B–63604EN/01
X
β
α
Z
Zero point
Fig. 7 T ool position specified by XαZβ
Coordinates are specified in one of following three coordinate systems:
(1) Machine coordinate system
(2) Workpiece coordinate system
(3) Local coordinate system
The number of the axes of a coordinate system varies from one machine
to another. So, in this manual, a dimension word is represented as IP_.
76
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.