NC Programming Manual
NC Programming Manual
(NC)
2016/03/16 1 eCOM3NCPRTP
Introduction
Brother is not responsible or liable for accidents that occur during special
machine use or handling that does not follow the general safety usage
guidelines.
Keep this manual for future reference.
Attach this manual to the machine if it is resold.
Contact the nearest Brother sales office or Brother approved service dealer if
this manual or the safety labels are damaged, lost or missing. (Charges apply)
The re-exporting and resale of this machine is regulated by Japan’s export laws and
regulations in accordance with international export management.
When exporting, permission from the exporting country’s government and/or from the
Japanese government may be required.
Contact a Brother Industries dealer in advance before re-transferring, reselling or
re-exporting this machine.
Copying and reprinting all or part of the content in this manual without permission is illegal.
The content of this manual may be changed without prior notice.
Brother has taken steps to ensure this manual is accurate and complete. However, if you notice
or suspect that there is an error, please contact the nearest Brother sales office or Brother
approved service dealer.
2016/03/16 2 eCOM3NCPRTP
How to Read This Manual
This manual is divided into the following sections.
(1) Overview ------- A summary of the content is provided for the corresponding section.
(2) Warning -------- A warning is provided for any hazards that could potentially cause serious bodily
injury, death or damage to the machine.
The hazards are described in the following order.
(2-1) Hazard level
(2-2) Type of hazard
(2-3) Potential damage
(2-4) Safety directions to avoid danger
(3) Operation procedure --- The procedure describes how to operate each function.
(4) Screenshot ---- A screenshot is inserted into places to highlight certain points in the operation
procedure. The screenshot messages are shown at an approximate position and may
differ slightly from the actual position of the line or column. The same applies to the
font.
(5) Illustration ----- Illustrations, such as explanatory drawings, diagrams that show the dimensions,
positioning, ranges, figures or configurations, are used in certain places where a
written explanation alone may be hard to understand.
1.3 Take the necessary steps to ensure 1.3.1 Before starting operation
safe operation Review the following items before starting
operation.
(1) Turn the main power breaker handle on the control
box door to the OFF position.
Do not touch the primary power and terminal for the
WARNING main power breaker because it has a high voltage.
(2) A sign must be posted to warn others that work is
You may break or fracture your foot in progress.
if you drop a heavy object on it. (3) Do not let others approach the machine or the
moving parts on the machine.
Therefore, use safety footwear when (4) Make sure that there are no unnecessary objects
lifting or carrying heavy objects. around the machine.
1-2 1-3
2016/03/16 3 eCOM3NCPRTP
(This page was intentionally left blank.)
2016/03/16 4 eCOM3NCPRTP
Contents
2019/09/02 1 eCOM3NCPRCO
Contents
2019/09/02 2 eCOM3NCPRCO
Contents
2019/09/02 3 eCOM3NCPRCO
Contents
2019/09/02 4 eCOM3NCPRCO
Contents
2019/09/02 5 eCOM3NCPRCO
Contents
2019/09/02 6 eCOM3NCPRCO
Contents
2019/09/02 7 eCOM3NCPRCO
Contents
2019/09/02 8 eCOM3NCPRCO
Index
CHAPTER 12 M FUNCTION 12
2015/03/09 1 eCOM3NCPRIN
Index
2015/03/09 2 eCOM3NCPRIN
Chapter 1 Program Structure
CHAPTER 1
PROGRAM STRUCTURE
1. Main programs
This program is used for machining one workpiece. Sub programs are called in the middle of
the main program in order to create a program more efficiently.
1 Lastly, M02 (or M30) is used to end the program.
Main program
N0001 G92X100;
N0002 G00Z30;
:
:
:
:
M02;
2. Sub programs
Sub programs are used and called from the main program or other sub programs.
Lastly, M99 is used to end the program.
Sub program
N0010 G91X10
:
:
:
:
M99;
Address Number 1
Word
(Note 1) The address is one character that is a letter between A and Z.
(Note 2) The address “0” is only used for comments.
However, if Type 2 (submicron) and <Program unit>: 1 (Least) are used for the minimum
unit settings, the following applies.
• Feedrate command
Use <Program feed rate unit> in User parameter (Switch 1) to select the feedrate.
However, if Type 2 (submicron) and <Program feed rate unit>: 1 (Minimum) are used for
the minimum unit settings, the following applies.
If an optional block skip (“/”) is used at the header for the block, a command can be issued before
or after that.
N0100/ G90X100;
or
/N0100 G90X100;
(Note 3) The sequence numbers can be in any given order and do not necessarily
have to be sequential.
(Note 4) The sequence number is recognized as a numerical value.
Therefore, 0001, 001, 01, and 1 are treated as the same number.
(Note 1) If a slash “/” is not inserted at the header of the block, an alarm is
triggered.
Note that it can be inserted immediately after the sequence number.
(Note 2) When the [B.SKIP] key is turned ON in single block mode during
automatic operation, it does not stop at the block with a slash “/” but the
next block thereafter.
( ············ )
Control out Control in
Comment
code code
(Note) Make sure that the comment including the control out and control in
codes fit inside 1 block.
2
CHAPTER 2
COORDINATE COMMANDS
1. Machine coordinates
2. Workpiece coordinates
The coordinates are expressed in components using the program axes (X-, Y- and Z-axes on this
machine).
2 Z
Y
X20Y10Z15
Tool target position for
command
15
10
X
0 20
X-axis stroke
Machine zero point
(0, 0, 0)
-X
Y-axis stroke
Table
-Y
CHAPTER 3
3
PREPARATION FUNCTION
List of G code
The G codes with * mark indicates the modal status when the power is turned ON.
Group G code Description Modal/One-shot
G00* positioning
G01 Linear interpolation
G02 Circular/ helical interpolation (CW)
3 G03 Circular/ helical interpolation (CCW)
G02.2 Involute interpolation (CW)
G03.2 Involute interpolation (CCW)
Modal
G102 XZ Circular interpolation (CW)
G103 XZ Circular interpolation (CCW)
G202 YZ Circular interpolation (CW)
G203 YZ Circular interpolation (CCW)
G33 Thread cutting
G392 Thread cutting cycle
G04 Dwell One-shot
G09 Exact stop check One-shot
G10 Programmable data input One-shot
G12 Circular cutting CCW One-shot
G13 Circular cutting CCW One-shot
G17* XY plane selection
G18 ZX plane selection Modal
G19 YZ plane selection
G22* Programmable stroke limit ON
Modal
G23 Programmable stroke limit cancel
G28 Return to the reference point
G29 Return from the reference point One-shot
G30 Return to the 2nd to 6th reference point
G31 Skip function One-shot
G36 Coordinate calculation function
G37 Coordinate calculation function (Line-angle)
One-shot
G38 Coordinate calculation function (Line-X, Y)
G39 Coordinate calculation function (grid)
G40* Tool diameter / nose R compensation cancel
G41 Tool dia. offset left
G42 Tool dia. offset right Modal
G141 Nose R left compensation
G142 Nose R right compensation
G43 Tool length offset +
G44 Tool length offset -
G143 Tool position offset + Modal
G144 Tool position offset -
G49* Tool length/position offset cancel
G50* Scaling cancel
Modal
G51 Scaling
G50.1* Mirror image cancel
Modal
G51.1 Mirror image
G52 Local coordinate system
G53 Machine coordinate system selection One-shot
G53.1 Feature coordinate index
G54* Working coordinate system selection 1
Modal
G55 Working coordinate system selection 2
(Note) Specify the modal during power startup in the user parameter (switch 1)
<Lathe machining infeed direction when power is turned ON>.
If an additional axis command is issued when there is no additional axis option, an alarm is
triggered.
When carrying out G00 based positioning, it first performs an in-position check (Note 1) and then
proceeds to the next block.
One of the following options can be selected for the tool path in the user parameter <Positioning
method>.
If the user parameter <Positioning method> is changed, use idling, for example, to check the tool
path and cycle time before operating, because the tool path during rapid feed or the positioning time
changes.
In addition, be careful because the margin of error due to thermal distortion also changes, adversely
affecting the machining accuracy.
End point
Start point
X
(Note 1) The in-position check refers to checking whether or not the position
detected on the machine has reached a range within the target position
(end point).
However, when there are successive Z-axis only operations, such as G0Z
→ G0Z, the in-position check may not be carried out.
(Note 2) The in-position range used for the in-position check varies according to
the <Machine parameter> that is used for the command that follows.
When the command sequence is G0→G0, the <Positioning end check
distance> applies, and when the command sequence is a cutting
command such as G0→ G1/G2, the <In-position width> applies. However,
when the command sequence is an operation in the same direction such
as G0Z_ → G1Z_, the <Positioning end check distance> applies.
(Note 3) The rapid feedrate is set for each axis in the machine parameter. As a
result, an F command for the feedrate cannot be carried out.
3 (Note 4) The positioning operation during a tool change (G100 and M06) is a
non-linear interpolation type regardless of the type that is selected in the
user parameter <Positioning method>.
X,Y,Z,A,B,C: Command value of the axis for which single direction positioning is performed.
Coordinate of end point for G90 and travel amount for G91
Start point
Start point
Stops temporarily
End point
Overshoot
When the above command is executed, the axis moves from the end point for the preset travel
amount, and then moves to the end point.
G60 is a one shot command and the axis travel path is the same as that for G00.
Overshoot is set by the <single direction positioning excess travel amount> of <user parameter>.
(Note 1) Z axis will not perform single direction positioning in canned cycle
operation. This also applies to X and Y axes traveling a shift amount in
G76 and G87 cycles.
(Note 2) Single direction positioning is not performed for any axis that does not
have the travel amount set for the parameter.
(Note 3) Single direction positioning is performed even when 0 is specified for the
travel amount.
(Note 4) The alarm <<Compensating diameter>> is triggered when the G60
command is issued during cutter compensation and nose R
compensation operations.
(Note 5) Travel to the end point from a position that is passed the end point and
travel from a temporary stop position to the end point are a non-linear
interpolation type regardless of the type that is selected in the user
parameter <Positioning method>.
When opening a door with the door interlock function enabled, the axis may become misaligned due
to the load of the workpiece, etc., because the servo for the rotation axis is turned OFF. Thereafter, if
the shift amount when closing the door is smaller than the machine parameter <Return angle with
servo controller ON>, then it returns to the position prior to turning OFF the servo. However, the
alarm <<Return distance too long>> is triggered when the shift amount is larger than the <Return
angle with servo controller ON>. If you continue in this state, the workpiece will not be machined in
correct position.
Axis command is effective for up to 3 linear axes plus one additional axis. The alarm <<Invalid
Command>> occurs when you command 2 additional axes simultaneously.
The alarm <<No *axis Option>> occurs when you command additional axes in their absence.
3 The feedrate is set by address F. Once the feed rate is commanded, it is effective until another value
is specified.
X, Y, and Z axes, when commanded, are recognized with the feed rate of mm/min (mm/rev) and
additional axis °/min (°/rev).
Y
End point
Start point
α
Feed rate along X axis: Fx = ─── · f
L
β
Feed rate along Y axis: Fy = ─── · f
L
γ
Feed rate along Z axis Fz = ─── · f
L
(L = α2 + β2 + γ2 )
The example below shows linear interpolation of linear axis and rotation axis.
L
Time for B axis distribution Tb = ───
f
δ
Feed rate along B axis Fb = ────
Tb
α
Feed rate along X axis Fx = ─── · f
L
3
β
Feed rate along Y axis Fy = ─── · f
L
γ
Feed rate along Z axis Fz = ─── · f
L
(L= α2 + β2 + γ2 + δ2 )
C : Distance from virtual corner to the chamfer start point and end point.
This can be commanded only for the selected plane surface.
Imaginary
corner Chamfer end point
intersection
C
X
(Note 1) The corner chamfering command block and subsequent block must
contain the interpolation command (G01-G03). The alarm <<Specified G
Code Cannot Be Used>> occurs when interpolation command is missing
or the next block is not a travel command.
(Note 2) The inserted block belongs to the corner chamfer command block. Even if
the feed rate of the next block is different than that of the coner chamfer
command block, the inserted block moves at the feed rate of the corner
chamfer command block. In single block operation, the system does not
stop before the inserted block but stops after it.
C (4)
(7)
(3)
3 (2)
C
(6)
(1)
(5)
When set the programmed path to (1)→(2)→(3)→(4) and the block C as (2), operate to
(1)→(5)→(6)→(7)→(4).
(4)
(3)
C
(7)
(2)
C (6)
(1)
(5)
When the programmed path is (1)→(2)→(3)→(4) and the block (2) is C-specified, the machine
operates through(1)→(5)→(6)→(7)→(4).
2019/09/02 3 - 10 eCOM3NCPR3
Chapter 3 Preparation Function
R : Radius of cornering
This can be commanded only for the selected plane surface.
3
Corner radius
R end point
Virtual corner
intersection
Corner radius start point
X
(Note 1) Corner rounding command block and the next block must be a corner
interpolation command (G01 to G03). The alarm <<Specified G Code
Cannot Be Used>> occurs if they are not an interpolation command or the
next corner is unable to execute travel command.
(Note 2) The inserted block belongs to the corner rounding command block. Even
if the feed rate of the next block is different than that of the coner rounding
command block, the inserted block moves at the feed rate of the corner
rounding command block. In single block operation, the system does not
stop before the inserted block but stops after it.
(Note 3) The cutter compensation / nose R compensation is applied to the shape
after the corner R operation is performed.
(Note 4) When the commanded radius is greater than corner rounding command
block or the next command block, the block is extended as required to
define the corner rounding start or end point
(Note 5) After the feature coordinate setting, the corner R command cannot be
issued before the feature coordinate index.
(7)
R
(4)
(3)
(6)
(5) (2)
(1)
When the programmed path is (1)→(2)→(3)→(4) and the block (2) is R-specified, the machine
operates through (1)→(5)→(6)→(7)→(4).
2019/09/02 3 - 11 eCOM3NCPR3
Chapter 3 Preparation Function
3 ZX plane:
G18 G02 Z_ X_ K_ I_ F_;
R_
YZ plane:
G19 G02 Y_ Z_ J_K_ F_;
R_
Clockwise and counterclockwise are the rotation direction viewed from the positive direction to the
negative direction on the Z axis of the X-Y plane.
2019/09/02 3 - 12 eCOM3NCPR3
Chapter 3 Preparation Function
G102 I_K_
Command X_Z_ F_;
format G103 R_
Clockwise and counterclockwise are the rotation direction viewed from the positive direction to the
negative direction on the Y axis of the X-Z plane.
(Note) When X- and Y- arcs differ, and when any of the following commands are
issued: diameter compensation command (G41 and G42), nose R
compensation command (G141 and G142) and rotational transformation
command (G68 and G168), the respective alarms <<Compensating
diameter>> and <<During rotational transformation>> are triggered, and
operation stops.
In addition, the alarm <<Feature coordinate manufacturing mode
engaged>> is triggered while in feature coordinate manufacturing mode
(G68.2 modal in progress).
2019/09/02 3 - 13 eCOM3NCPR3
Chapter 3 Preparation Function
G202 J_K_
Command Y_Z_ F_;
Format G203 R_
Clockwise and counterclockwise are the rotation direction viewed from the positive direction to the
negative direction on the X axis of the Y-Z plane.
(Note) When X- and Y- arcs differ, and when any of the following commands are
issued: diameter compensation command (G41 and G42), nose R
compensation command (G141 and G142) and rotational transformation
command (G68 and G168), the respective alarms <<Compensating
diameter>> and <<During rotational transformation>> are triggered, and
operation stops.
In addition, the alarm <<Feature coordinate manufacturing mode
engaged>> is triggered while in feature coordinate manufacturing mode
(G68.2 modal in progress).
2019/09/02 3 - 14 eCOM3NCPR3
Chapter 3 Preparation Function
• Absolute positioning
G90 G03 Xx Yy Ii Jj Ff;
Y
End point (x, y)
X
Start point 3
j
Center
• Incremental positioning
G91 G03 Xx Yy Ii Jj Ff;
Y
x
End point
X
y
Start point
Center
i
2019/09/02 3 - 15 eCOM3NCPR3
Chapter 3 Preparation Function
Absolute command
G03 X-60.Y-10.I-50.J-20.F1000;
Incremental command
G03 X-30.Y30.I-50.J-20.F1000;
3 Start point
(-30, -40)
-50
-Y
You may define the center with radius R instead of using vectors I, J, and K. Two different arcs are
possible: an arc less than and the other greater than a half circle. Use a negative value for radius R
when commanding an arc greater than a half circle.
1. G02 X-70.Y-50.R25.F1000;
2. G02 X-70.Y-50.R-25.F1000;
Start point(-60,-20)
R>0
R<0
(1)
(2)
-50
-Y
2019/09/02 3 - 16 eCOM3NCPR3
Chapter 3 Preparation Function
• The tool moves as shown below when an end point is missing on the arc defined by a start point
and the center of the arc.
Motion of radius
Re
Rs
3
θs θe
End point Re
Start point Rs
θe
θs
Center ( I , J )
• The alarm <<Curve Speed Error>> may occur when commanding an end point radius that is
much greater than the start point radius.
• You may not command G36 to G39 in the circular mode. The alarm During <<Arc Mode>>
occurs.
• After the feature coordinate setting, an arc command cannot be issued before the feature
coordinate index.
2019/09/02 3 - 17 eCOM3NCPR3
Chapter 3 Preparation Function
ZX plane:
G18 G02 Z_ X_ Y_ K_ I_ A_ F_;
G03 R_ B_
C_
3 YZ plane:
G19 G02 Y_ Z_ X_ J_ K_ A_ F_;
G03 R_ B_
C_
Up to one linear axis and one additional axis can be controlled simultaneously when commanded for
the surface other than selected plane.
The F code commands the feedrate in the circular interpolation axis..
The alarm <<Feed Rate Error>> occurs when F is greater than the maximum cutting travel speed or
rapid feed.
The feedrate in the other than selected plane axis is determined by the values of "feedrate" in the
circular interpolation axis, "end point X", "end point Y" and "end point Z". It can be calculated as
follows:
Ex)
Setting following values: F=500 (mm/min), R=10 (mm),
θ=360 (º), L=2 (mm)
Fz = (180×2×500) / (π×10×360)
≒ 15.9 (mm/min)
The alarm <<Feed Rate Error>> occurs when the feed rate calculated for the axis of other than the
selected plane is greater than the maximum cutting travel speed of Machine parameter (System 1) or
rapid feed.
When tool dia offset command is given, an offset is applied to the selected plane.
Helical thread cutting interpolation command is not possible while in the inverse time feed (G93)
modal.
If a command is issued, the alarm <<Command not possible during inverse time feed>> is triggered.
2019/09/02 3 - 18 eCOM3NCPR3
Chapter 3 Preparation Function
ZX plane:
{ G18 } G02 Z_ X_ K_ I_ Q_ L_ F_;
{ G18 } G03 Z_ X_ K_ I_ Q_ L_ F_;
YZ plane:
{ G19 } G02 Y_ Z_ J_ K_ Q_ L_ F_;
{ G19 } G03 Y_ Z_ J_ K_ Q_ L_ F_; 3
G02 : Clockwise cutting direction
G03 : Counterclockwise cutting direction
XYZ : End point coordinates
L : Number of rotations (An integer number is used to command When the number is
with decimal point, the number is rounded off.)
Example: Set "L6" for five and 1/4 rotations (5.25 rotations).
Q : Increment or decrement in radius per rotation
Setting a positive value increases the radius for each rotation. Setting a negagive
value decreases the radius for each rotation.
IJK : Vector (distance and direction) from the start point to the center (the same as
circular interpolation)
F : Cutting speed
Y
Start point (0, 100.)
100 End point (X, Y) (0, -50.)
Distance to center (I, J) (0,-100.)
Radius increment/decrement Q -20.0
Count L3
-50
20 Absolute command:
(1) G90 G02 X0.Y-50.I0J-100.Q-20.;
20 (2) G90 G02 X0.Y-50.I0J-100.L3;
Incremental command:
(1) G91 G02 X0Y-150.I0J-100.Q-20.;
(2) G91 G02 X0Y-150.I0J-100.L3.;
Either (1) or (2) will do.
(Note 1) Tool dia offset can be performed only in the offset mode. The alarm
<<Cutter Compensation Error>> occurs in the startup and cancel mode.
(Note 2) The setting for [Tool dia offset] is applied relative to the start point and end
point specified in the program during tool dia offset. The alarm <<Cutter
Compensation Error>> occurs if the tool path after compensation
intersects or touches the center of the spiral.
2019/09/02 3 - 19 eCOM3NCPR3
Chapter 3 Preparation Function
Start point
End
End Start point point
point (center) (center)
(Note 15) Not commanded when mirror image is effective. The alarm <<Mirror Image
Mode>> Is ON occurs.
(Note 16) Spiral interpolation cannot be commanded when scaling is effective. The
alarm <<Scaling>> occurs.
(Note 17) When spiral interpolation and cutter compensation are followed by a
cutter compensation release command in the succeeding block, the end
point will be where a vertical vector is set up at the end point of the spiral
interpolation.
(Note 18) In-position check is performed in the blocks before and after spiral
interpolation.
(Note 19) Spiral interpolation command is not possible while in the inverse time feed
(G93) modal. If a command is issued, the alarm <<Command not possible
during inverse time feed>> is triggered.
2019/09/02 3 - 20 eCOM3NCPR3
Chapter 3 Preparation Function
ZX plane:
{G18} G02 Z_ X_ Y_ K_ I_ J_ Q_ L_ (A_ B_ C_) F_;
{G18} G03 Z_ X_ Y_ K_ I_ J_ Q_ L_ (A_ B_ C_) F_;
YZ plane:
{G19} G02 Y_ Z_ X_ J_ K_ I_ Q_ L_ (A_ B_ C_) F_; 3
{G19} G03 Y_ Z_ X_ J_ K_ I_ Q_ L_ (A_ B_ C_) F_;
Up to one axis (linear axis or additional axis) can be controlled when commanded for the surface
other than selected plane.
2019/09/02 3 - 21 eCOM3NCPR3
Chapter 3 Preparation Function
+Z
25.0 25.0
5.0
5.0
+Y
100.0
3
+X -100
Example of program: The orders of the numerical values in the brackets ( ) are X, Y, and Z.
Start point (0., 100., 0.)
End point (0., -37.5, 12.5)
Distance to the center (0., -100.)
Increment/decrement in radius -25.
Increment/decrement in height 5.
No. of rotations 3
Absolute command
K5
G90 G02 X0.Y-37.5 Z12.5 I0.J-100. Q-25 F300.;
L3
Incremental command
K5
G91 G02 X0.Y-137.5 Z12.5 I0.J-100. Q-25 F300.;
L3
(Note 1) Tool dia offset can be performed only in the offset mode. The alarm
<<Cutter Compensation Error>> occurs in the startup and cancel mode.
(Note 2) During execution of the cutter compensation, tool diameter offset
compensation is performed, on the selected plane, for the start and end
points specified by the program. The alarm <<Cutter Compensation
Error>> occurs when the tool path after compensation intersects or
touches the center of the cone.
(Note 3) The alarm <<Cutter compensation error>> is triggered when the
compensated tool path crosses or touches the center of the cone.
(Note 4) The alarm Arc Radius Error Limit Exceeded occurs when the end point of
the cone calculated from per-rotation radius increment/decrement does
not agree with the programed end point of the cone and the difference is
greater than the specified <arc radius error limit> of User parameter
(Switch 1).
(Note 5) The alarm <<Specified G Code Cannot Be Used>> occurs when corner CR
is specified in the immediately preceding block.
(Note 6) Automatic corner override will not be implemented in the immediately
preceding and succeeding blocks.
(Note 7) Corner CR is not used for conical interpolation. The alarm Specified
Numerical Data Cannot Be Used occurs.
2019/09/02 3 - 22 eCOM3NCPR3
Chapter 3 Preparation Function
(Note 8) The alarm <<Cutter Compensation Error>> occurs when you change the
direction of cutter compensation (G41, G42) in the immediately preceding
and succeeding blocks of conical interpolation.
(Note 9) If the rotation count exceeds 9999 when the amount of increase or
decrease in the radius per rotation and the number of rotations are
specified, then the alarm <<Arc command error>> is triggered.
(Note 10) The alarm <<Arc Command Error>> occurs when a radius is specified by R
parameters.
(Note 11) The alarm <<Arc Command Error>> occurs when radius
increment/decrement is zero.
(Note 12) Do not use a Q0 command when start point radius is the same as end
point radius (use an L command). The alarm <<Arc Command Error>>
occurs.
(Note 13) Cutter compensation for the outside of a circule cannot be performed if
start and end points are set on the center of a circle. The alarm <<Cutter
Compensation Error>> occurs.
3
(Note 14) Direction of travel on the start point when this is at the center (on the end
point when this is at the center) is the same as the direction of travel on
the end point (on the start point).
Start point
End
End Start point point
point (center) (center)
2019/09/02 3 - 23 eCOM3NCPR3
Chapter 3 Preparation Function
(1) (2)
Program path
A virtual circle is set at the start point
(3)
Intersection (start point)
(4)
Intersection
(start point)
Set dia. compensation for the virtual Another virtual circle is set at the end point
circle
Intersection
Virtual circle
(5) (start point) (6) for dia.
Intersection (end point) End point compensation
Start point
Dia. compensation
by program path
Dia. compensation
by virtual circle
2019/09/02 3 - 24 eCOM3NCPR3
Chapter 3 Preparation Function
2019/09/02 3 - 25 eCOM3NCPR3
Chapter 3 Preparation Function
I
Start point End point
(X,Y)
J
R
3
Base circle
X
(Note 1) The involute interpolation option is required to enable and use this
function.
(Note 2) This function can only be used in NC language mode.
Refer to “Chapter 12 Options (23) Involute interpolation function” in the Operation Manual for
further details.
2019/09/02 3 - 26 eCOM3NCPR3
Chapter 3 Preparation Function
Y
(1)
Radius
Compensation
Tool path
(3)
(2) 3
G12; positive compensation
Tool path
Y
(2)
Compensation
Radius
(3)
(1)
(Note 1) The alarm <<Arc Command Error>> occurs when the D command is
omitted.
(Note 2) The alarm <<Arc Command Error>> occurs if the radius (I command) is
zero or a negative value after subracting compensation amount.
(Note 3) The alarm <<Cutter Compensation Error>> occurs when you specify cutter
compensation control command (G40, G41, G42) (startup and cancel
modes) and circle cutting command (G12, G13) simultaneously.
(Note 4) Corner CR may not be set in the circle cutting command and immediately
preceding block command.The alarms <<Specified G Code Cannot Be
Used>> or Specified Numerical Data Cannot Be Used occur, respectively.
(Note 5) The alarm <<Cutter Compensation Too Large>> occurs when the radius
after compensation is smaller than tool diameter.
(Note 6) Circle cutting is performed on the currently selected plane (G17, G18,
G19).
(Note 7) Start and end points are identical in circle cutting.
(Note 8) When circle cutting (G12, G13) is executed during cutter compensation
(G41, G42), the latter is effective for the path compensated by D command.
(Note 9) After the feature coordinate setting, a circular cutting command cannot be
issued before the feature coordinate index.
(Note 10) Circular cutting command is not possible while in the inverse time feed
(G93) modal. If a command is issued, the alarm <<Command not possible
during inverse time feed>> is triggered.
2019/09/02 3 - 27 eCOM3NCPR3
Chapter 3 Preparation Function
or G04 X_;
2019/09/02 3 - 28 eCOM3NCPR3
Chapter 3 Preparation Function
: Program path
: Tool path
In-position check is performed at the end of each block before the tool proceeds to the next block.
The exact stop check is carried out at the end of each block after this command is issued and until the
cutting mode (G64) command is issued.
From this command until G61 is specified, the tool starts, at each joint of blocks, traveling according
to the instructions in the succeeding block as soon as possible, to avoid deceleration to the extent
possible.
(Note 1) Exact stop check is performed also in the cutting mode if a block includes
a positioning mode (G00) or exact stop check (G09), or in the cutting feed
rate blocks that are not continuous.
(Note 2) The finishing operation in the thread cutting cycle is always performed in
the cutting mode regardless of this command.
(Note 3)
Current block
Positioning Cutting feed No traveling
Succeeding block
Positioning × × ×
Cutting feed × ○ ×
No traveling × × ×
○ Cutting mode
× Exact stop check mode
Exact stop check is always performed when the current block clamps at additional axis travel and
when the succeeding block unclamps at additional axis travel.
2019/09/02 3 - 29 eCOM3NCPR3
Chapter 3 Preparation Function
n=0 : [External]
n=1 : G54
n=2 : G55
n=3 : G56
n=4 : G57
n=5 : G58
n=6 : G59
3 The entered value becomes the new compensation amount in the G90 (absolute command) mode
while it is added to the currently set compensation amount to specify the new one in the G91
(incremental command) mode.
(Note 1) When the additional axis is commanded and the optional additional axis is
not installed, an alarm will occur.
(Note 2) The workpiece coordinate zero cannot be changed while in feature
coordinate manufacturing mode (G68.2 modal in progress). The alarm
<<Feature coordinate manufacturing mode engaged>> is triggered.
The entered value becomes the new compensation amount in the G90 (absolute command) mode
while it is added to the currently set compensation amount to specify the new one in the G91
(incremental command) mode.
(Note) The alarm <<Comm. issued to area other than (tool) data area.>> is
triggered when a value is input that is outside of the range set in the <Tool
data range> under the <Tool data> parameter.
2019/09/02 3 - 30 eCOM3NCPR3
Chapter 3 Preparation Function
Command format
The commanded value is used as the new compensation amount in the absolute (G90) mode while it 3
is added to the current set compensation amount in the incremental (G91) mode.
(Note) The alarm <<Comm. issued to area other than (tool) data area.>> is
triggered when a value is input that is outside of the range set in the <Tool
data range> under the <Tool data> parameter.
The compensation specified on X / Y / Z / R becomes the new compensation for the tool number
specified by P when G90 (absolute command) mode is enabled. The new compensation is the sum of
compensation specified on X / Y / Z / R plus the current compensation setting for the tool number
specified by P when G91 (incremental command) mode is enabled. T (Virtual teeth number) is not
based on G90 / G91.
(Note) The alarm <<Comm. issued to area other than (tool) data area.>> is
triggered when a value is input that is outside of the range set in the <Tool
data range> under the <Tool data> parameter.
2019/09/02 3 - 31 eCOM3NCPR3
Chapter 3 Preparation Function
The compensation specified on X / Y / Z / R becomes the new compensation for the tool number
specified by P when G90 (absolute command) mode is enabled. The new compensation is the sum of
compensation specified on X / Y / Z / R plus the current compensation setting for the tool number
3 specified by P when G91 (incremental command) mode is enabled.
(Note) The alarm <<Comm. issued to area other than (tool) data area. >> is
triggered when a value is input that is outside of the range set in the <Tool
data range> under the <Tool data> parameter.
The entered values become the new offset values in the absolute mode (G90) while they are added to
the current offset value to make new ones in the incremental mode (G91).
n=1 : G54
n=2 : G55
n=3 : G56
n=4 : G57
n=5 : G58
n=6 : G59
Q : Storage number (1 to 4) for results of measurement
A new coordinate system is set using the result of automatic measurement (G121 to 129).
Ex) Automatic measurement is performed on G54 coordinate system, yielding the data (120, 80).
We now set a new coordinate system moving this position to (50, 50).
G54 G121 X100. Y100. I20. J20. Z-10. R10. ; (angle measurement)
G10 L99 X50. Y50.;
2019/09/02 3 - 32 eCOM3NCPR3
Chapter 3 Preparation Function
Y Y
Result of measurement
80 50
G54
X
50
Origin of new
coordinate
system 3
X
Origin of old coordinate system 120
When G90 (absolute command) mode is enabled, the command values for X, Y, Z, A, B and C are
set by the reference fixture offset that is specified in P. When G91 (incremental command) mode is
enabled, the sum of the values specified for X, Y, Z, A, B and C is set by the current values set in the
reference fixture offset specified in P. Q (Axis for calculation) is not based on G90 / G91.
2019/09/02 3 - 33 eCOM3NCPR3
Chapter 3 Preparation Function
Not rotatable is determined if you set the maximum speed to zero. Unset is indicated if you select -1.
Feed rate commanded by F is set as feed per minute even in the G95 (feed per revolution) mode.
* For Type 1 least input increment.
2019/09/02 3 - 34 eCOM3NCPR3
Chapter 3 Preparation Function
XY plane selection
ZX plane selection
G17 only is valid for canned cycle, automatic workpiece measurement, coordinate calculation and
feature coordinate setting, and an alarm is triggered for G18 and G19.
Corner CR is only executed when the current and the succeeding block share the same plane. An
alarm occurs if different planes are selected in the blocks.
An alarm is triggered when a plane is selected that is different from the current modal during
diameter compensation and nose R compensation.
Coordinate values commanded in the same block as G53 are recognized in the machine coordinate
system.
(Note) A G53 command is ignored when specified in the incremental mode (G91).
2019/09/02 3 - 35 eCOM3NCPR3
Chapter 3 Preparation Function
Data setting
1. Reference and setting can be performed on the <Workpiece coord zero> screen of the data bank.
2. Setting can be performed from the program using the G10 command.
Refer to "3.6.1 Entering Workpiece coordinate zero“ for the description of command format.
The above command allows you to select 48 sets of workpiece coordinate systems.
3 The same function is available using G54 in place of G54.1.
When there is no P code on the same block after G54.1, the extended workpiece coordinate system 1
is selected.
Data setting
1. Reference and setting can be performed on the <Workpiece coord zero> screen of the data bank.
2. Setting can be performed from the program using the G10 command.
Refer to “3.6.6 Data Input of Extended Workpiece Coordinate Zero” for further details.
This command shifts the zero position in the working coordinate system so that the current tool
position becomes to the commanded coordinate values.
G92 X80 Y60: Current tool position (150, 100) is changed to absolute coordinate position (80, 60)
by this command.
40 New workpiece 80
Origin shift coordinate zero
Old workpiece
coordinate zero 70 150
2019/09/02 3 - 36 eCOM3NCPR3
Chapter 3 Preparation Function
(Note 1) The commanded coordinate values are always absolute regardless of G90
and G91.
(Note 2) The working coordinate values of the not commanded axes do not change.
(Note 3) The current working zero position shifts when G92 is executed, and other
working zero positions also shift the same amount accordingly.
(Note 4) When a command is issued during the cutter compensation and nose R
compensation operations, it travels in a travel direction to a location
where it is able to stand vertically for the offset vector of the plane axis
that was previously selected (for X- and Y-axes when using the G17
modal). The workpiece coordinates, which are used in the G92 command
that is issued, are created for the current position in the program path.
Y
G00X50.Y50.G41D1;
G01Y100.F1000;
G92X0.Y0.;
X50.;
.
100 .
Program path
Tool path
X
50 100
(0, 0) workpiece coordinate zero
2019/09/02 3 - 37 eCOM3NCPR3
Chapter 3 Preparation Function
Tool tip
3
Programmed target value; this will be
the value commanded by G92
(Note 6) When the G92 command is issued during the tool position compensation
operation, the workpiece coordinates are created and used for the tool
teeth in the G92 command that is issued.
100.123
80.456
X
Zero point
(Note 7) When the additional axis is commanded and the optional additional axis is
not installed, an alarm will occur.
2019/09/02 3 - 38 eCOM3NCPR3
Chapter 3 Preparation Function
1. Executing this command creates a local coordinate system in all coordinate systems from G54
to G59.
2. The workpiece coordinate system does not vary even when this command is executed.
3. The local coordinate system of the specified axis is canceled when G92 command is executed.
4. An error will occur when this command is executed during coordinate rotation, scaling or miller
imaging
5. When a command is issued during the cutter compensation and nose R compensation operations, 3
it travels to a position where it is able to stand for the vertical vector at the end point for the
plane axis that was last selected (for X- and Y-axes when using the G17 modal).
6. The local coordinate system is canceled when any of the following operations are performed:
• When “0” is specified for the command value on the axis in the G52 command
• G92 command
• M02 (M30) command
• Operation resetting
By setting the rotation center for the index table in the workpiece coordinate system (G54 to G59,
G54.1, G92, G52 and external workpiece coordinate system shift) as well as setting the X, Y and Z
vector from the rotation center to the workpiece zero point, when the table rotates, this function
automatically calculates if the workpiece zero point has moved to another point in the machine
coordinates. And, it sets a new workpiece coordinate system based on that position.
(Example when using it on the index table (A-axis) for an X-axis turn)
Z (A=0°)
Z (A=-45°)
A-axis rotation center
Workpiece zero point
Machine zero point
Z
Y (A=0°)
Y (A=-45°)
2019/09/02 3 - 39 eCOM3NCPR3
Chapter 3 Preparation Function
G54.2 is a modal G code. Specify from 1 to 8 for the G54.2 P address in order to enable the rotary
fixture offset function. Specify 0 for the P address to cancel or disable the function.
3
(Note 1) When there is no option for the rotary fixture offset function and the G54.2
command is issued, an alarm is triggered. Also, if the P address is not
specified for the G54.2 command, then an alarm is triggered.
(Note 2) An alarm is triggered when the G54.2 command is issued in the following
situations.
• When the G68/G168 modal is operating (alarm: <<During rotational
transformation>>)
• When the G51 modal is operating (alarm: <<Scaling>>)
• When the G51.1 modal is operating (alarm: <<Miror image mode>>)
(Note 3) The alarm <<Rotary fixture offset in progress>> is triggered when the
following commands are issued while the rotary fixture offset function is
enabled.
• G68/G168
• Additional axis command during thread cutting interpolation for
helical screw
(Note 4) When the rotary fixture offset function is enabled, the coordinate system
is not reset by the rotary fixture offset, even if the rotation axis
coordinates change due to a command or edit operation. When a G54.2
command or a rotation command is issued from the next block, the
coordinate system is reset by the rotary fixture offset.
• Workpiece coordinate system setting (G54 to G59, G54.1, G92, G52
and external workpiece cooridnate system shift)
• G10
• G53
• G28/G30
• Motion from the G29 reference position to the middle position
• Reference angle for reference rotary fixture offset
(Note 5) When simultaneous travel commands are issued for the X-, Y- and Z-axes
and for the additional axis while the rotary fixture offset function is
enabled, the X-, Y- and Z-axes are offset based on the angle that is
specified for the additional axis.
(Note 6) The additional axis angle, which corresponds to the turning spindle when
the turning spindle is selected, does not take into account the rotary
fixture offset calculation. (When the G54.2 command or another travel
command on the additional axis is issued, the current rotary fixture offset
is the same as when positioning the additional axis, which corresponds to
the turning spindle, to the reference angle.)
2019/09/02 3 - 40 eCOM3NCPR3
Chapter 3 Preparation Function
When the feature coordinate system is set, this is called feature coordinate manufacturing mode.
The commands are controlled as commands in the feature coordinate system until the feature
coordinate manufacturing mode is cancelled.
Feature coordinate index refers to when the additional axis is moved so that the Z-axis + direction in
the feature coordinate system is in line with the tool axis direction
Relationship between machine coordinate system, workpiece coordinate system and feature 3
coordinate system
Feature coordinate
system
Workpiece
coordinate system
2019/09/02 3 - 41 eCOM3NCPR3
Chapter 3 Preparation Function
Rotation axis
Tilt axis
3
Rotate the rotation axis and tilt axis so that the Z-axis +
direction in the feature coordinate system is in line with the
tool axis direction
Rotation axis
Machining plane and tool
axis are perpendicular
XY in the feature
coordinate system after
indexing is rotated to
60° from the XY in the
workpiece coordinate
Rotates 45° around system
the rotation axis
Tilt axis
Rotates 54.7356°
around the tilt axis
Usage conditions
The feature coordinate setting function is an option that is required to enable and use this function.
This function can only be used in NC language mode.
2019/09/02 3 - 42 eCOM3NCPR3
Chapter 3 Preparation Function
Do not rotate the additional axis after setting the feature coordinate system. The alarm
<<Feature coordinate manufacturing mode engaged>> is triggered.
2019/09/02 3 - 43 eCOM3NCPR3
Chapter 3 Preparation Function
The axis does not travel with this command, it only cancels the feature coordinate
manufacturing mode.
When a modal is enabled for tool length offset, tool position compensation, cutter compensation
and canned cycle after the feature coordinate setting, cancel it before this command. The alarm
<<Feature coordinate command error>> is triggered if the feature coordinate manufacturing
mode is cancelled before cancelling the above modals.
The feature coordinate manufacturing mode is cancelled by resetting operation with M02/M30.
2019/09/02 3 - 44 eCOM3NCPR3
Chapter 3 Preparation Function
However, this excludes when issuing a simultaneous command with G100/M6, which will be
described later.
Issue a feature coordinate index command while in feature coordinate manufacturing mode.
The alarm <<Feature coordinate command error>> is triggered when an attempt is made to
issue a feature coordinate index command in a mode other than feature coordinate
manufacturing mode.
The additional axis travel is for a positioning operation that does not rely on the modal.
(1) Simultaneous command with the canned cycle (G100/M6) for tool change
The feature coordinate index command (G53.1) can be issued only on the same block as
3
the canned cycle (G100/M6) for tool change.
Issue a command with the coordinate values in the feature coordinate system for the X, Y
and Z coordinates in G100/M6.
Do not issue a travel command on the additional axis. The alarm <<Feature coordinate
manufacturing mode engaged>> is triggered.
A short cut is taken when traveling to the established angle. A positive direction is taken
when traveling if the travel amount in the positive and negative directions is the same.
When there is an axis that is set as a tilt axis or rotation axis and the user parameter (switch
2) <*-axis stroke control> is set to <1: Yes>, select an angle within the stroke range. In
addition, select an angle where the axis can travel within the stroke range. The alarm
<<Feature coordinate command error>> is triggered when an angle cannot be found for
the axis to travel. The angle is established using the method above when there are still two
or more sets of angles.
Ex: Angle calculated from command is (tilt axis, rotation axis) = (54.7356, 45)(-54.7356,
135)
Case 1
Tilt axis with stroke between -95 and +5, rotation axis without stroke
Current position (tilt axis, rotation axis) = (30, 0)
Select “-54.7356” where the tilt axis is within the stroke range.
Set of angles (-54.7356, 135) is used because there is no stroke for the rotation axis.
2019/09/02 3 - 45 eCOM3NCPR3
Chapter 3 Preparation Function
Case 2
Tilt axis with stroke between -60 and +60, rotation axis with stroke between 0 and 180
Current position (tilt axis, rotation axis) = (30, 0)
Both tilt axis and rotation axis are within the stroke range.
The set of angles (54.7356, 45) is used because there is little travel from the current
position of the tilt axis.
Case 3
Tilt axis with stroke between -800 and +800, rotation axis without stroke
Current position (tilt axis, rotation axis) = (350, 0)
Both tilt axis and rotation axis are within the stroke range.
The travel amount of the tilt axis is 350 - 54.7356 = 295.2644 and 350 - (-54.7356) =
3 404.7356, and “54.7356” has less travel. However, “350” is the same position as “-10.”
The actual travel amount is (-10) - 54.7356 = -64.7256 and (-10) - (-54.7356) = 44.7356.
“-54.7356” has less travel so the set of angles (-54.7356, 135) is used.
Case 4
Tilt axis with stroke between -60 and +210, rotation axis without stroke
Current position (tilt axis, rotation axis) = (205, 0)
Both tilt axis and rotation axis are within the stroke range.
The shorter travel from the current position on the tilt axis is “305.2644”, the same
position as “-54.7356”. However, the travel goes outside of the stroke range, and
therefore, the set of angles (54.7356, 45) is used.
Case 5
Tilt axis with stroke between -30 and +120, rotation axis with stroke between -30 and
+120
Current position (tilt axis, rotation axis) = (30, 0)
Select “-54.7356” where the tilt axis is within the stroke range.
The alarm <<Feature coordinate command error>> is triggered because the “135” that
makes the pair is outside of the rotation axis stroke range and there is no other set of
angles that can be used.
2019/09/02 3 - 46 eCOM3NCPR3
Chapter 3 Preparation Function
3.7.8.3 Restrictions
1. Simultaneous use with other functions
• A setting command for the feature coordinate system is not possible when the cutter
compensation is ON. The alarm <<Feature coordinate command error>> is triggered.
• Rotational transformation, rotary fixture offset, scaling and mirror image commands are not
possible while in feature coordinate manufacturing mode. The alarm <<Feature coordinate
manufacturing mode engaged>> is triggered.
• After the feature coordinate setting, the following commands cannot be used before the
feature coordinate index. The alarm <<Feature coordinate manufacturing mode engaged>>
is triggered.
- Cutter compensation
- Canned cycle
- Corner R
- Circular interpolation, helical thread cutting interpolation 3
- Circular cutting
- Involute interpolation
3. Special notes
This function is a coordinate conversion function and does not offer compensation for indexing
accuracy that is specific to each machine.
2019/09/02 3 - 47 eCOM3NCPR3
Chapter 3 Preparation Function
3.8.1 Stroke
The maximum stroke of the machine has been set at the factory using <Stroke 1X to Z axis (+/-)> of
<Machine Parameters>. Do not change it.
+Z
+Z
3
Y axis stroke Z軸原点of Z axis
Position
Y軸ストローク origin dimension
寸法位置
Z軸ストローク
Z axis stroke 動作可能領域
Operation range
-X
-X Machine origin
機械原点
(0,0,0)
(0, 0, 0)
X軸ストローク
X axis stroke
-Y
-Y
2019/09/02 3 - 48 eCOM3NCPR3
Chapter 3 Preparation Function
Movable area
-Y
(I, J, K)
(Note 1) Selection criterion for using stroke or programmable stroke as soft limit
on the program:
G22 - - - - Check using programmable stroke limit as soft limit
G23 - - - - Check using stroke as soft limit
2019/09/02 3 - 49 eCOM3NCPR3
Chapter 3 Preparation Function
3 (Note 1) Intermediate point coordinates are memorized for only the axis for which
travel is specified in the G28 block.
For the axes not specified in the G28 block, G28 intermediate point
coordinates defined previously will be used as they are.
(Note 2) Reference points are set by <Reference Points X to Z / Axes 4 to 8> of
<User Parameters>.
(Note 3) Travel to intermediate and reference point is a positioning operation. No
interpolation is performed.
(Note 4) The tool stops at the intermediate point in a single block operation.
(Note 5) Coordinate values of intermediate points are memorized in absolute
values of workpiece coordinate system. When workpiece coordinate
system is changed after commanding a G28, the intermediate point also
moves to the new workpiece coordinate system.
(Note 6) An alarm occurs when an additional axis is commanded in the absence of
the optional additional axis.
(Note 7) When a command is issued during the tool length offset, the tool length
offset stays enabled while traveling to the middle point. When travelling to
the reference position, the tool length offset is cancelled temporarily. The
same also applies during tool position compensation.
Axes move to the specified position via intermedaite point. In the case of incremental commands,
motion from the intermediate point is given in an incremental value. The specified axis goes to the
intermediate point by rapid feed and then to the final position.
2019/09/02 3 - 50 eCOM3NCPR3
Chapter 3 Preparation Function
G30 is the same as G28 except that the axes return to the 2nd through 6th reference points.
You can use G29 for G30 in the same way as you use it for G28.
3
(Note 1) The 2nd through 6th rreference points are set by <2nd through 6th
Reference Points X through Z / Axes 4 through 8> of <User Parameters>.
(Note 2) Omit P_, and return to the 2nd reference point is selected.
(Note 3) An alarm occurs when an additional axis is commanded in the absence of
the optional additional axis.
2019/09/02 3 - 51 eCOM3NCPR3
Chapter 3 Preparation Function
For G131, the <<SENSOR SIGNAL OFF>> alarm occurs when the tool has moved to the target
position without the detection signal turning ON. For G31, G132, an alarm does not occur.
When using G31, after the detection signal turns ON, it decelerates and then stops. When using
G131/G132, after the detection signal turns ON, it decelerates and stops. Then, it returns back to the
same coordinate where the detection signal turned ON.
As the coordinate value when detective signal turns ON is stored in system variables (#5061 ~
#5068, #5071 ~ #5074) of the macro, it can be used in the macro.
In feature coordinate manufacturing mode, the coordinates in the feature coordinate system are
stored in the system variables: #5161 to #5168 and #5171 to #5174.
2019/09/02 3 - 52 eCOM3NCPR3
Chapter 3 Preparation Function
2019/09/02 3 - 53 eCOM3NCPR3
Chapter 3 Preparation Function
Y
P4
3 P4’ P3’
P3 Same factor scaling
P0: Scaling center
P1P2P3P4 → P1’P2’P3’P4’
P0
P1’ P2’
P1 P2
X
Y axis
Shape after
c scaling
O
X axis
Scaling cancel:
2019/09/02 3 - 54 eCOM3NCPR3
Chapter 3 Preparation Function
2019/09/02 3 - 55 eCOM3NCPR3
Chapter 3 Preparation Function
Do not use the first feed rate command for circular interpolation or helical screw cut interpolation
(G02, G03), after commanded by mirror image of scaling, When use it, positioning error occurred
between start point, end point and center point that cause of distortion in the circular arc.
Mirror image is applied to scaling center coordinates and programmed path while the mirror image
(G51.1) is valid.
2019/09/02 3 - 56 eCOM3NCPR3
Chapter 3 Preparation Function
Mirror image
Mirror image setting can be applied simultaneously for the 1st to 3rd axes.
Set the mirror image axis in workpiece coordinates.
Set the mirror image axis. Omit this for axes about which a mirror image is not created.
3
Using G50.1 command is valid while setting a mirror image.
Coordinate values are arbitrarily set.
(Note 1) Using G51.1 command is valid while setting a mirror image. It is regarded
as an addition of mirror axes or a change of the mirror axis coordinates.
(Note 2) Mirror cancel command for the axes that are not mirror-designated will not
invoke an alarm.
60
50
Axis of symmetry
40 (Y=50)
(3) (4)
X
0 40 50 60 100
2019/09/02 3 - 57 eCOM3NCPR3
Chapter 3 Preparation Function
2019/09/02 3 - 58 eCOM3NCPR3
Chapter 3 Preparation Function
2019/09/02 3 - 59 eCOM3NCPR3
Chapter 3 Preparation Function
G17
Command format G18 G68 α_β_R_;
G19
Y
After rotation
Angle of rotation
Plane section command can be omitted. The plane currently selected is valid when it is omitted.
Relationship between selected plane and αβ.
Selected plane α β
G17 X Y
G18 Z X
G19 Y Z
The rotation angle in incremental programming mode is determined in reference to the angle after
the previous rotational transformation, and in reference to the α axis when it is the first rotational
transformation.
2019/09/02 3 - 60 eCOM3NCPR3
Chapter 3 Preparation Function
The coordinate is rotated using the angle obtained from the measurement.
Other features are the same as those for the coordinate rotation function.
The shape specified in the program is rotated.
When the center coordinates are omitted for rotational transformation, the coordinates of the
spindle’s current position are regarded as the rotation center coordinates.
Coordinates are calculated according to the following sequence: mirror, scaling, and then rotational
transformation. Accordingly, set these in this order in a program. Set these in the reverse order to
cancel previous settings. An alarm will occur when the specified sequence is not followed.
2019/09/02 3 - 61 eCOM3NCPR3
Chapter 3 Preparation Function
3 • Absolute command
G90 X90 Y70;
• Incremental command
G91 X60 Y40;
End point
70
40
Start 60
point
X
( 0. 0) 30 90
2019/09/02 3 - 62 eCOM3NCPR3
Chapter 3 Preparation Function
B(-) B(+)
B(-) B(+)
Ex.3 Ex.1
Ex.2
2019/09/02 3 - 63 eCOM3NCPR3
Chapter 3 Preparation Function
Commanding G133 and G134 rotates the spindle clockwise and counterclockwise, respectively.
These are one shot G codes. Use G133/G134 codes each time even for continuous operation.
(Note 1) When the screw pitch is less than the <Minimum tapping pitch> in the
<Machine parameter>, the alarm <<Pitch data error>> is triggered.
(Note 2) A command to change the tap twist direction is not possible while in the
inverse time feed (G93) modal.
If a command is issued, the alarm <<Command not possible during
inverse time feed>> is triggered.
2019/09/02 3 - 64 eCOM3NCPR3
Chapter 3 Preparation Function
2019/09/02 3 - 65 eCOM3NCPR3
Chapter 3 Preparation Function
2019/09/02 3 - 66 eCOM3NCPR3
Chapter 3 Preparation Function
2019/09/02 3 - 67 eCOM3NCPR3
Chapter 3 Preparation Function
2019/09/02 3 - 68 eCOM3NCPR3
Chapter 3 Preparation Function
2019/09/02 3 - 69 eCOM3NCPR3
Chapter 3 Preparation Function
Modal G41
G68.2 G68.2 G321
G0 G2 G2.2 G33 G18 G42 G43 G143 G54.2P G54.2P G68 G73 G74 G94 G98
Comman G1 G3 G3.2 G392
G17
G19
G22 G23 G40
G141 G44 G144
G49 G50 G51 G50.1 G51.1 G54 G54.1
0 1
G61 G66 G67
G168
G69 Before After
G83 G84
G80 G90 G93
G95
G96 G97
G99
G322
d G53 G53.1 G323
G142
G98 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 3 1
G321,
G322, 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 3
G323
G4 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
G9 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
G10 1 1 1 1 1 1 1 1 1 1 1 1 1 1 11 1 11 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
G12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 1 2 1 1 1 1 1 1 1 1 1 2 1 1 1 1 1 2 1 1 1 1 1
G28 1 1 1 1 1 1 1 1 1 2 1 1 1 1 2 1 2 1 1 1 1 1 1 1 2 1 1 1 1 1 1 1 1 1 1 1 1 1
G30 1 1 1 1 1 1 1 1 1 2 1 1 1 1 2 1 2 1 1 1 1 1 1 1 2 1 1 1 1 1 1 1 1 1 1 1 1 1
G31 1 1 1 1 1 1 1 1 1 2 1 1 1 1 2 1 2 1 1 1 1 1 1 1 2 1 1 1 2 2 1 1 2 1 1 1 1 1
G36 1 2 2 2 1 2 1 1 1 2 1 2 1 1 2 1 2 1 1 1 1 1 1 1 2 1 2 2 1 1 1 1 2 1 1 1 1 1
G52 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 1 2 1 1 1 1 1 1 1 2 1 2 2 1 1 1 1 1 1 1 1 1 1
G53 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 1 2 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
G53.1 1 1 1 2 1 2 1 1 1 2 1 2 1 1 2 1 2 1 1 1 2 1 1 1 2 1 1 1 1 1 1 1 1 1 2 1 1 1
G60 1 1 1 1 1 1 1 1 1 2 1 1 1 1 2 1 2 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
G65 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
G92 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 1 2 1 1 1 1 1 1 1 2 1 2 2 1 1 1 1 1 1 1 1 1 1
G100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 1 2 1 1 1 1 1 1 1 1 1 1 1 7 7 1 1 1 1 1 1 1 1
G120 1 1 1 1 1 1 1 1 1 2 1 1 1 1 2 1 2 1 1 1 1 1 1 1 2 1 2 2 1 1 1 1 1 1 1 1 1 1
G121 1 2 1 2 1 2 1 1 1 2 1 2 1 1 2 1 2 1 1 1 1 1 1 1 2 1 2 2 1 1 1 1 2 1 1 1 1 1
G131 1 1 2 1 1 1 1 1 1 2 1 1 1 1 2 1 2 1 1 1 1 1 1 1 2 1 1 1 2 2 1 1 2 1 1 1 1 1
G133 1 1 1 1 1 2 1 1 1 2 1 2 1 1 1 1 10 1 1 1 1 1 1 1 1 1 2 2 1 1 1 1 2 1 2 1 1 1
G173 1 1 1 1 1 2 1 1 1 2 1 2 1 1 1 1 10 1 1 1 1 1 1 1 1 1 2 1 1 1 1 1 2 1 1 1 1 1
G210 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
G376 1 1 1 1 1 1 1 1 1 2 1 1 1 1 2 1 2 1 1 1 1 1 1 1 2 1 2 2 1 1 1 1 2 19 1 1 1 1
2019/09/02 3 - 70 eCOM3NCPR3
Chapter 3 Preparation Function
(Note 1) Refer to “Chapter 13 (1) High accuracy mode A III” for further details on
high accuracy mode A.
(Note 2) The set parameters can be cancelled using M30, reset or turning OFF the
power.
(Note 3) An alarm is triggered when L or P is omitted, or when only the L and P
commands are issued.
(Note 4) When another address is omitted, the current value for the omitted
parameter does not change.
(Note 5) The range that can be set for the numerical values of IJKWQXRB is the
same as the corresponding user parameter.
Refer to the “Chapter 2.5 User Parameter” in the Operation Manual (Data)
for further details.
2019/09/02 3 - 71 eCOM3NCPR3
Chapter 3 Preparation Function
(Note 1) The set parameters can be cancelled using M30, reset or turning OFF the
power.
(Note 2) An alarm is triggered when L or P is omitted, or when only the L and P
commands are issued.
(Note 3) When another address is omitted, the current value for the omitted
parameter does not change.
(Note 4) The range that can be set for the numerical values of JKWQRY is the same
as the corresponding user parameter.
Refer to the “Chapter 2.5 User Parameter” in the “Operation Manual
(Data)” for further details.
2019/09/02 3 - 72 eCOM3NCPR3
Chapter 3 Preparation Function
Lead
Lead
3
Z
Lead Lead
The value for the command at address F is also reflected in the F code modal.
When cutting a taper screw, address F issues a command for the lead on the long axis direction.
When specifying the start angle on the spindle for thread cutting or when machining multiple start
screws, address Q issues a command per block.
2019/09/02 3 - 73 eCOM3NCPR3
Chapter 3 Preparation Function
End point
Y-axis
(Note 1) During a single block operation, it stops after the first block is executed
that is not a thread cutting block (after thread cutting).
(Note 2) When a command is issued while the lathe spindle is not rotating, a
<<Feedrate error>> is triggered.
(Note 3) During thread cutting, the SPINDLE OVERRIDE and FEEDRATE
OVERRIDE are disabled, and the setting is fixed at 100%.
(Note 4) During thread cutting as well, the constant peripheral speed control is
enabled. However, the correct thread lead may not be maintained if the
spindle speed is changed. When cutting a taper screw, do not use the
constant peripheral speed control.
(Note 5) When one of the following operations is performed or when a stop level 3
or 4 alarm is triggered during thread cutting, it stops after the first block is
executed that is not a thread cutting block (after thread cutting).
· [FEED HOLD] switch is pressed.
· [RST] key is pressed.
· [M.LCK] key is pressed.
· [SINGL] key is pressed.
· Mode is changed.
· [Mode of Safe Operation] switch setting is changed.
· [Service Mode] switch setting is changed.
2019/09/02 3 - 74 eCOM3NCPR3
Chapter 3 Preparation Function
Command format X_ Y_
G392 X_ Z_ F_ Q_
Y_ Z_
(2) (4)
C (3) D C T
User parameter
<Cutting amount in thread cutting cycle>
Y-axis
(Note 1) During a single block operation, operations (1), (2), (3) and (4) are
performed all at once.
(Note 2) When the travel distance between C and D is 0, the alarm <<No relief
amount>> is triggered before starting operation (1).
2019/09/02 3 - 75 eCOM3NCPR3
Chapter 3 Preparation Function
(Note 3) When one of the conditions below applies, distance between C and D is 0,
the alarm <<Cutting amount error in thread cutting cycle>> is triggered
before starting operation (1).
• When the travel distance between S and C is greater than the travel
distance between B and C.
• When the travel distance between C and T is greater than the travel
distance between C and D.
(Note 4) When a thread cutting cycle command on a straight screw is issued while
the lathe spindle is not rotating, a <<Feedrate error>> is triggered before
starting operation (2).
(Note 5) During operation (2), the SPINDLE OVERRIDE and FEEDRATE OVERRIDE
are disabled, and the setting is fixed at 100%.
(Note 6) When one of the following operations is performed or when a stop level 3
or 4 alarm is triggered during operation (2), it stops after operation (3).
3 • [FEED HOLD] switch is pressed.
• [RST] key is pressed.
• [M.LCK] key is pressed.
• Mode is changed.
(Note 7) When a stop level 3 alarm is triggered during any of the following
operations: (1), (2), (3) or (4), the machine stops after operation (4).
(Note 8) RAPID TRAVERSE OVERRIDE is always valid. When a thread cutting cycle
command is issued for a straight screw in M322 modal (finishing OFF) and
operation has been stopped using a RAPID TRAVERSE OVERRIDE after
operation (2), the shape of the thread runout changes. In addition, be
careful because the tool may become damaged.
Command format X_ Y_
G392 X_ Z_ R_ F_ Q_
Y_ Z_
Z-axis A
B (1)
User parameter
<Cutting angle in thread cutting cycle>
(2) (4)
S
C (3) D C T
User parameter
<Cutting amount in thread cutting cycle>
Y-axis
2019/09/02 3 - 76 eCOM3NCPR3
Chapter 3 Preparation Function
Taper amount (R) sign Outer diameter machining Inner diameter machining
1 2
(1)
(1)
(4) (2)
+ (4) (2)
(3)
Z (3)
Z
Y
R Y
R
3 4
(1) (1)
2019/09/02 3 - 77 eCOM3NCPR3
Chapter 3 Preparation Function
When a taper command is issued in which the taper amount exceeds start point A from end point C
on the screw, as shown in the diagram, the alarm <<Taper amount too large>> is triggered and it
stops before starting operation (1).
(3)
D C
(4) (2)
Z
3 Y
B A
(1)
The special notes above for the thread cutting cycle of straight screws is the same for the thread
cutting cycle of taper screws.
Command format X_ Y_
G376 X_ Z_ R_ P_ Q_ F_ D_ E_ I_ J_ K_ L_
Y_ Z_
2019/09/02 3 - 78 eCOM3NCPR3
Chapter 3 Preparation Function
3.18.3.1 Infeed
When a command for the complex thread cutting cycle is issued, the infeed is carried out for a “fixed
cutting amount and single edge cutting” until the finishing operation. The infeed amount Qn for nth
cut is as follows:
P (Thread height)
Qn = n × Q
Q
1st cut
2nd cut
nth cut
K (Finishing allowance)
2019/09/02 3 - 79 eCOM3NCPR3
Chapter 3 Preparation Function
P (Thread height)
K (Finishing allowance) Q (Initial infeed amount)
Z-axis B0 A
(1)
B
B1
Bn
Be
3
(2) (4)
E (Finishing amount)
C Ce Cn C1 D
R (Taper amount)
(3)
Y-axis
2019/09/02 3 - 80 eCOM3NCPR3
Chapter 3 Preparation Function
Rough cutting
(1) It travels using rapid feed from start point A to start point Bn for thread cutting on the nth cut.
The infeed amount is calculated based on the formula noted in “3.18.3.1 Infeed” and it travels in
the cutting direction only for the distance that is calculated from the following formula.
dn = (Qn + K) × tan(θ ⁄ 2)
dn : Distance that is traveled in the cutting direction from the start point for thread cutting on
the nth cut (mm)(inch)
Qn : Infeed amount for nth cut (mm) (inch)
K : Finishing allowance (mm) (inch)
θ : Thread angle (°)
P (Thread height) 3
Qn
B0
K (Finishing
allowance) dn
Bn
(2) It travels using the cutting feed from start point Bn for thread cutting on the nth cut until the end
point Cn for thread cutting on the nth cut. The thread finishing is the same as the thread cutting
cycle (G392).
(3) It travels using the rapid feed from end point Cn for thread cutting on the nth cut until point D.
(4) It travels using rapid feed from point D until start point A.
2019/09/02 3 - 81 eCOM3NCPR3
Chapter 3 Preparation Function
Finishing
(1) It travels from start point A to start point Be for finishing. It travels in the cutting direction only
for the distance de that is calculated from the following formula.
de = P × tan(θ ⁄ 2)
de : Distance that is traveled in the cutting direction from the start point for finishing (mm)
(inch)
P : Height of screw thread (mm)(inch)
θ : Thread angle (°)
When de is greater than the travel distance in the cutting direction between B and C, the alarm
<<Cutting amount error in thread cutting cycle>> is triggered, and it stops before starting the
complex thread cutting cycle operation.
3
P (Thread height)
B0
de
Be θ
(2) It travels using the cutting feed from start point Be for finishing until the end point Ce of the
thread. The thread finishing is the same as the thread cutting cycle (G392).
(3) It travels using the rapid feed from end point Ce of the thread until point D.
(4) It travels using rapid feed from point D until start point A.
(1) through (4) is repeated according to the number in the finishing count.
The special notes for the operations are the same as the thread cutting cycle (G392).
2019/09/02 3 - 82 eCOM3NCPR3
Chapter 3 Preparation Function
L
Cutting start L 3
Lc
Complete thread Lc
L
Cutting end L
L = K × ( N / 60 ) × P
Model K
M140X1 0.047
M140X2 0.047
M200X3 0.047
M300X3 0.047
2019/09/02 3 - 83 eCOM3NCPR3
Chapter 3 Preparation Function
3
Z-axis
(4)
Z=45.0
(1) (3)
(2)
Z=25.0
50mm
Y-axis
80mm
L L
Y=-200.0 Y=-116.0
When made using G33 When made using G392 When made using G376
M303 S1000 M303 S1000 M303 S1000
G00 Y-200. Z45. G00 Y-200. Z45. G00 Y-200. Z45.
Z25. (1) G392 G322 Y-116. Z25. F2. M323 G376 G322 Y-116. Z23.5 P2. Q0.5 F2. M323
G33 Y-116. F2. (2)
G00 Z45. (3)
Y-200. (4)
Z24.5 Z24.5
G33 Y-116.
G00 Z45.
Y-200.
Z24. Z24.
G33 Y-116.
G00 Z45.
Y-200.
Z23.5 Z23.5
G33 Y-116.
G00 Z45.
Y-200.
2019/09/02 3 - 84 eCOM3NCPR3
Chapter 3 Preparation Function
60mm
(1) Z-axis
Z=80.0
L 3
Z=28.0 L
(3)
Y-axis
When made using G33 When made using G392 When made using G376
M303 S500 M303 S500 M303 S500
G00 Y-120. Z80. G00 Y-120. Z80. G00 Y-120. Z80.
Y-150. (1) G392 G322 Y-135. Z28. R-15. F2. M323 G376 G322 Y-136.5 Z28. R-15. P2. Q0.5 F2. M323
G33 Y-135. Z28. F2. (2)
G00 Y-120. (3)
Z80. (4)
Y-150.5 Y-135.5
G33 Y-135.5 Z28. F2.
G00 Y-120.
Z80.
Y-151. Y-136.
G33 Y-136. Z28. F2.
G00 Y-120.
Z80.
Y-151.5 Y-136.5
G33 Y-136.5 Z28. F2.
G00 Y-120.
Z80.
2019/09/02 3 - 85 eCOM3NCPR3
Chapter 3 Preparation Function
In the canned cycle for lathe machining, first, it travels using rapid feed from the start point to the
start point for cutting.
At this time, the travel direction is set by the command axis address and the G code modal (Refer to
table below). If that setting is invalid, the alarm <<Invalid command>> is triggered at the time of the
command.
Command axis address G code modal for infeed direction Travel direction
G321 X-axis
X_ Y_ G322 Y-axis
G323 <<Invalid command>>
G321 X-axis
X_ Z_ G322 <<Invalid command>>
G323 Z-axis
G321 <<Invalid command>>
Y_ Z_ G322 Y-axis
G323 Z-axis
The modal can be specified during power startup in the user parameter (switch 1) <Lathe machining
infeed direction when power is turned ON>.
2019/09/02 3 - 86 eCOM3NCPR3
Chapter 3 Preparation Function
Program example
When a thread cutting cycle is performed with the Z-axis as the infeed direction
Z-axis
Z=45.0
Z=25.0
Y-axis
3
50mm
Y=-200.0 Y=-130.0
Program Description
M303 S1000 Lathe spindle rotates clockwise at 1000 min-1
G00 Y-200. Z45. Positioning to start point for thread cutting cycle
G323 Specifies Z-axis as infeed direction
G392 Y-130. Z25. F2. M323 Infeeds on Z-axis and cuts thread on Y-axis
2019/09/02 3 - 87 eCOM3NCPR3
Chapter 3 Preparation Function
2019/09/02 3 - 88 eCOM3NCPR3
Chapter 4 Preparation Functions (Compensation Functions)
CHAPTER 4
PREPARATION FUNCTIONS 4
(COMPENSATION FUNCTIONS)
If either the command G41 or G42 is issued, the cutter compensation mode is enabled. This mode
4 is cancelled by G40.
Before
After compensation After compensation
compensation
Workpiece Workpiece
Tool Tool
G41 G42
(Note 1) When a command is issued with zero travel, or when there are no travel
commands on the X- and Y-axes for more than 3 blocks, the infeed will be
too much or too little.
(Note 2) When the cutter compensation range is set for the tool specified in D
code, the range is checked. The alarm <<Comm. issued to area other than
(tool) data area>> is triggered when the command area is outside of the
range.
(Note 3) If a cutter compensation command (G41 and G42) is issued during G141
and G142 modals, an alarm is triggered. Note, if a tool change command
(G100 and M06) is issued on the same block, no alarm is triggered.
(Note 4) When a cutter compensation command (G141 and G142) is issued while
the feature coordinate is being set (after G68.2 command and before
G53.1 command), the alarm <<Feature coordinate manufacturing mode
engaged>> is triggered. A command is possible while the feature
coordinate is being indexed (after G53.1 command).
(Note) When the cutter wear offset range is set for the tool specified in D code,
the range is checked. The alarm <<Comm. issued to area other than (tool)
data area>> is triggered when the command area is outside of the range.
<Term / symbol explanation>: The terms and symbols that will appear hereafter in the program
explanation are described below.
Block 1
θ
G42
Workpiece side 4
Block 2
180° ≤ θ
Inner side
G41
θ
Block 1
Workpiece side
0º ≤ θ <180º Block 2
Outer side
θ T
G42
D
D CP
L
4.1.3 Startup
Offset mode is enabled for the control when a command that meets all the conditions below is
executed for cancel mode. Startup refers to the travel operation in this situation.
D
G42
S L
L
D
G42
S C
S L
L D
θ
G41
S
C 4
D
L θ
G41
S
CP L
L
D
D
L
θ
G41
S
L CP
L
D
L
G41 C
θ
G41
L D
L S
G41
4
θ
L D
S
C
L
D
L D
L
G41 θ D D
S
L
D L
L D
D D S
G41 θ
L
T C
(Note) When θ ≤ 1°, the setting <0: Type 1 (shortcut)> is used or enabled, even if
<1: Type 2 (detour)> is specified for the user parameter <Start up/cancel>.
D
S
D CP L
G42
4
Arc to straight line
CP
D D
S
G42 C L
C
D
L S
CP
D
G41
θ
Arc to arc
C
C
D
S D
G41 T CP T
(Note 1) When turning on the inner side of a narrow angle (α < 1°), and the offset
vector is abnormally large.
S L
α
D
L Offset vector
D
G41
L
L L
D L
α
T
G41
D
(Note 2) When turning on the inner side of an angle that is almost parallel (180° ≤ θ
< 181°).
Straight line to straight line
θ
G42
L S
L
The processing is the same for: arc → straight line, straight line → arc and arc → arc.
CP L
S
D
L D θ
G41
4
T
θ
G42
D
D
CP L
L S
G42
T
C
θ
D
D
L
S
CP L
Arc to arc
G42
T
T
θ
C
D T
L D
S L T
CP
C
(Note) When turning on the outer side of an angle that is almost parallel (179° ≤
θ < 180°).
Straight line to straight line
L S
L
D
G41
θ
The processing is the same for: arc → straight line, straight line → arc and arc → arc.
G41
G42
C
L
D D
L D D
L S
2019/09/02 4 - 10 eCOM3NCPR4
Chapter 4 Preparation Functions (Compensation Functions)
G42
T
L θ
D D
D D L
L S
4
Arc to arc
G42
T T
θ T
T
C C
D
D
L D D L
L S
G41 C
When the compensation is a small amount as shown in the diagram above, even if an intersection
exists, increasing the compensation may cause the intersection to disappear. In this situation, the
alarm <<Cutter compensation too large>> is triggered at the previous block and operation stops.
2019/09/02 4 - 11 eCOM3NCPR4
Chapter 4 Preparation Functions (Compensation Functions)
2. A travel command is issued excluding an arc, involute interpolation and thread cutting
command.
θ
G42
G40
L L
T
G40
D
S L
G42 C
2019/09/02 4 - 12 eCOM3NCPR4
Chapter 4 Preparation Functions (Compensation Functions)
L S
D
L
G41
θ G40
G41
C
S 4
D
L
θ
G40
S
L CP
L L
D
D
G41
θ L
G40
S
CP L
C
D D
L
G41
θ G40
(Note) When 179° ≤ θ ≤ 180°, the setting <0: Type 1 (shortcut)> is used or
enabled, even if <1: Type 2 (detour)> is specified for the user parameter
<Start up/cancel>.
2019/09/02 4 - 13 eCOM3NCPR4
Chapter 4 Preparation Functions (Compensation Functions)
L S
D
G41
L θ
G40
C S
4 D
G41
G40
D
G41 L
G40 D
S
L
L
G41
L
G40
2019/09/02 4 - 14 eCOM3NCPR4
Chapter 4 Preparation Functions (Compensation Functions)
G41 X_Y_D_;
G40;
L S
G41 G40
4
Arc to straight line
G41 X_Y_D_;
G40;
C
D
T
G40
G41
(Note) The remaining offset is cancelled together with the next travel command.
G42 X_Y_D_;
G40 ;
G01 X_Y_F_;
G42 G40
G01
2019/09/02 4 - 15 eCOM3NCPR4
Chapter 4 Preparation Functions (Compensation Functions)
Offset sign
+ -
G code
G41 Left side offset Right side offset
G42 Right side offset Left side offset
Execution conditions
Straight line Straight line Arc to straight
Offset mode Command Arc to arc
to straight line to arc line
G41 G41 Executes (The stop point is offset by the cutter compensation
G42 G42 perpendicular to the end point of the previous block.)
4 G41 G42
Executes Executes
G42 G41
There is no distinction between the inner side and outer side cutting when changing the
compensation direction, but it varies depending on whether the intersection exists or not. In the
following explanation, the compensation is positive.
2019/09/02 4 - 16 eCOM3NCPR4
Chapter 4 Preparation Functions (Compensation Functions)
G42
D
L G41 S
D L
L S 4
D
G41
G42
D
C
D
G41
Arc to arc
G42
C S
D D
G41 C
2019/09/02 4 - 17 eCOM3NCPR4
Chapter 4 Preparation Functions (Compensation Functions)
L S
L
G41 G42 G42
G41
G41
L D
S L
L S
G42
4
S
C
G42 D
L
L
D
S
T
G42 C S L
C D
D D
L
L G41
S
Center
2019/09/02 4 - 18 eCOM3NCPR4
Chapter 4 Preparation Functions (Compensation Functions)
Arc to arc
G42
G42 C S
C D C
D
L D
L
S
G41
Center
4
Center
D
G42
L C D L
D
G41 G41
2019/09/02 4 - 19 eCOM3NCPR4
Chapter 4 Preparation Functions (Compensation Functions)
C
N1
D2
N2
N3
D1
D1
S
L S C
4
θα
θβ
G42 D1
・
・
・
N1 G42 G1 X_
N2 G2 X_Y_I_J_
N3 G41 D2 G2 X_Y_I_J_
This function checks the difference between the arc angle (θα) at the start and end points in the N2
program path and the arc angle (θβ) at the start and end points in tool center path after being offset.
If θβ is greater than θα by 180° or more, then an alarm is triggered and operation stops before
executing N2.
(Note 1) This function carries out the check at the end point after 3 blocks of
travel. If one of the situations below applies while the offset mode is
enabled, this check function may not work properly because the tool
center path start and end points change after being offset.
• When there is a command that sets a perpendicular vector
• When there are zero travel commands for more than 3 blocks
2019/09/02 4 - 20 eCOM3NCPR4
Chapter 4 Preparation Functions (Compensation Functions)
G42
G42
L
L S
G42
4
G42
C
D
L S
T
G42
G42
C S L
Arc to arc
G42
C
G42 D
2019/09/02 4 - 21 eCOM3NCPR4
Chapter 4 Preparation Functions (Compensation Functions)
N1 G41 X_Y_D1;
N6 Xa1 Yb1;
N7 Xa2 D2; …… Offset changed
N8 Xa3 Yb3;
D2
(a1, b1)
D N7
(a2, b1)
N6 D2
N8
G41
(a3, b3)
4. When cutting the inner side of an arc with a radius that is smaller than the tool radius.
S
D
D≥R
D R
G41
In this situation, the alarm <<Cutter compensation too large>> and stoppage are triggered
because the infeed is not possible. It stops at the end point of the previous block.
2019/09/02 4 - 22 eCOM3NCPR4
Chapter 4 Preparation Functions (Compensation Functions)
5. Infeed insufficient
This occurs when machining a step that is smaller than the tool diameter.
D D
G41 d
Infeed insufficient
6. Corner travel
When cutting the outer side, it can turn on a corner with many angles. The travel mode and
feedrate when turning the corner up to point a in the diagram below are based on the
command that is issued for the current block.
S
4
G41
In addition, as shown in the diagram below, the travel operation is ignored when the corner
travel distance is extremely small, and when ΔVX ≤ ΔV and ΔVY≤ ΔV. The value for ΔV is
set in the user parameter <Corner travel limit>.
ΔVx
D
ΔVy
D
D
G41
D
θ
G41
2019/09/02 4 - 23 eCOM3NCPR4
Chapter 4 Preparation Functions (Compensation Functions)
As a result, extremely small travel operations for a corner can be kept to a minimum.
However, this processing is not carried out when the next block is a circle.
P2 P3
P1
P0
G41
In this situation, if extremely small travel operations are processed, the travel from P2 to P3 is
ignored.
Traveling in a circular arc is ignored and travel from P2 to P3 becomes a small arc pattern.
Therefore, this processing is not carried out.
2019/09/02 4 - 24 eCOM3NCPR4
Chapter 4 Preparation Functions (Compensation Functions)
N4 X_Y_;
N5 Z_;
N6 F_;
N7 Z_;
N8 X_;
N8
N5-N7
N4
4
G41
(Note 1) The same infeed problem arises as noted above for a block with zero
travel.
N4 G91 X_Y_;
N5 X0;
N6 X_;
N6
N5
N4
G42
(Note 2) If there is no travel command for 2 axes on the selected planes during
startup, the startup operation is performed when a travel command is
executed thereafter even on a single axis for either the X- or Y-axis
(when travel amount ≠ 0).
2019/09/02 4 - 25 eCOM3NCPR4
Chapter 4 Preparation Functions (Compensation Functions)
The operation thereafter is the same as described in the section 2. “Tool diameter offset
change” when changed to an offset number where offset ≠ 0.
N2
D2
N3
N1
G41
4 N4
The operation thereafter is the same as described in the section “2. Tool diameter offset
change” when changed to an offset number where offset ≠ 0.
N1 X_Y_;
N2 X_D1; (D1=0)
N3 X_Y_;
N4 X_Y_D2; (D2≠0)
N5 X_;
G42 N2 N5
N1 N3
N4
9. Commands issued during cutter compensation that cause exception processing or that trigger
alarms
(1) Command that sets a perpendicular vector
G10 : Programmable data input
G52 : Local coordinate system setting
G92 : Coordinate system setting
G210 : Programmable data input (high accuracy)
#3000 : Alarm display
#3006 : Message display & stoppage
If the command noted above is issued, the machine travels to a position that is offset by
the cutter compensation using the value from the last X- and Y-axes travel command.
2019/09/02 4 - 26 eCOM3NCPR4
Chapter 4 Preparation Functions (Compensation Functions)
If the command noted above is issued, G40 (cutter compensation cancel) is automatically
triggered. Therefore, the machine travels to a position that is offset by the cutter
compensation using value from the last X- and Y- axes travel command.
P2 P3
P1 P4
P2'
* When operation stops at the end point (P2) of a block and the tool is then moved manually,
the tool travels from P2’ to P3, and the correct path is enabled from P3.
2019/09/02 4 - 27 eCOM3NCPR4
Chapter 4 Preparation Functions (Compensation Functions)
Ls
Le b
a
2019/09/02 4 - 28 eCOM3NCPR4
Chapter 4 Preparation Functions (Compensation Functions)
Rp Rc
(Note 1) When Rc/Rp is less than the <Inner arc override limit> that is set in the
user parameter, that parameter value is multiplied as an alternative to
Rc/Rp.
Actual feedrate = Command speed × (Inner arc override limit / 100)
2019/09/02 4 - 29 eCOM3NCPR4
Chapter 4 Preparation Functions (Compensation Functions)
D1 D1
G41 D1
•
N1
• N3
N1 G1 X_ Y_
N2 G2 X_ Y_ R_
D1
N3 G1 X_ Y_
4 N2
θα
θβ
This function checks the arc angle (θα) at the start and end points in the N2 program path and the
arc angle (θβ) at the start and end points in tool center path after being offset. If the angle is greater
than 180°, then an alarm is triggered and operation stops before executing N2.
(Note 1) When an alarm is triggered, the infeed may already be too great (The
infeed is too great for the workpiece on the N3 side after N1 is executed
in the above example).
(Note 2) This function carries out the check at the end point after 3 blocks of
travel. If one of the situations below applies while the offset mode is
enabled, this check function may not work properly because the tool
center path start and end points change after being offset.
• When there is a cutter compensation G code command or a command
that sets a perpendicular vector
• Zero travel commands for more than 3 blocks
2019/09/02 4 - 30 eCOM3NCPR4
Chapter 4 Preparation Functions (Compensation Functions)
1. Direction check
The cutter compensation function checks between the offset vectors that occur at the end point of
the block for the program path.
The check range is set in the user parameter (switch 1) <Number of blocks to check cutter 4
compensation interference>.
It assumes there is interference when the difference between the angle for the end points on the
program path block and the angle for the offset vectors is greater than 90° and less than 270°.
When there is a block without travelling included, the interference check range becomes smaller.
S
G41 S
D L
S
L D
2019/09/02 4 - 31 eCOM3NCPR4
Chapter 4 Preparation Functions (Compensation Functions)
Difference is not
between 90° and 270°
Cuts in too
much
2019/09/02 4 - 32 eCOM3NCPR4
Chapter 4 Preparation Functions (Compensation Functions)
When there is an arc, this check detects interference if the difference is more than 180° between
the arc’s center angle on the program path and the arc’s center angle in the offset path.
Example when interference is detected (start and end points are the same in the arc block)
S S
G41
D
S
L
4
D D
2019/09/02 4 - 33 eCOM3NCPR4
Chapter 4 Preparation Functions (Compensation Functions)
(Note 1) When the tool length offset is cancelled, it is cancelled by the G49
command or by issuing 0 for the tool number.
(Note 2) The tool length offset is cancelled by the M06 (tool change) or by the
G100 (nonstop ATC) command.
(Note 3) Refer to “4.2.3 Z-axis travel with tool length offset command” for travel
when there is no Z-axis command for G43H_, G44H_, or tool length offset
G49 and H0 command blocks.
(Note 4) When a Z-axis command is issued during the tool length offset for
reference position return (G28) or No. 2 to 6 reference position return
(G30), the tool length offset stays enabled while traveling to the middle
point. And, the tool length offset is cancelled temporarily while travelling
to the reference position.
Refer to “4.2.3 Z-axis travel with tool length offset command” for travel
when the tool length offset operation that was cancelled resumes. When
the tool length offset resumes, if the incremental mode is enabled, it is
the equivalent of traveling from the absolute coordinates right before.
(Note 5) If the G53Z _; or the G120Z_: command is issued with the tool length
offset enabled, the tool length offset is temporarily cancelled and the
travel operation is carried out accordingly.
(Note 6) When the tool length offset range is set for the tool specified in H code,
the range is checked. The alarm <<Comm. issued to area other than (tool)
data area>> is triggered when the command area is outside of the range.
(Note 7) If a tool length offset command (G43 and G44) is issued during G143 and
G144 modals, an alarm is triggered. Note, if a tool change command
(G100 and M06) is issued on the same block, no alarm is triggered.
2019/09/02 4 - 34 eCOM3NCPR4
Chapter 4 Preparation Functions (Compensation Functions)
The tool length wear offset can be set on the tool list screen.
(Note) When the tool length wear offset range is set for the tool specified in H
code, the range is checked. The alarm <<Comm. issued to area other than
(tool) data area>> is triggered when the command area is outside of the
range.
2019/09/02 4 - 35 eCOM3NCPR4
Chapter 4 Preparation Functions (Compensation Functions)
Ex:
G28 X-50. Y-50. Z400.; ← Tool length offset temporarily canceled
···;
During this time, operation is performed while tool
G0 X-100. Y-100.; ←
length offset stays cancelled
···;
G0 Z300.; ← Tool length offset resumed
2019/09/02 4 - 36 eCOM3NCPR4
Chapter 4 Preparation Functions (Compensation Functions)
The nose R compensation function is used on a lathe tool that has rounded teeth (nose R). It
automatically compensates for the difference between the tool teeth that is offset by the tool
position compensation operation and the actual nose R (cutting point).
Tool teeth
4
Insufficient infeed
Tool teeth
2019/09/02 4 - 37 eCOM3NCPR4
Chapter 4 Preparation Functions (Compensation Functions)
If either the command G141 or G142 is issued, the nose R compensation mode is enabled. This
mode is cancelled by G40.
4
The nose R compensation target axis depends on the plane selection command (G17 to G19).
G18 modal
+X
+Z
G19 modal
+Z
+Y
2019/09/02 4 - 38 eCOM3NCPR4
Chapter 4 Preparation Functions (Compensation Functions)
When the coordinates are configured looking from the front of the machine (X and Z plane)
G18 modal
+Z
+X
(Note 1) During nose R compensation, when a command is issued with zero travel, 4
or when there are no travel commands for more than 3 blocks, the infeed
will be too much or too little.
(Note 2) When the cutter/nose R compensation range is set for the tool specified
in D code, the range is checked. The alarm <<Comm. issued to area other
than (tool) data area>> is triggered when the command area is outside of
the range.
(Note 3) If a nose R compensation command (G141 and G142) is issued during
G41 and G42 modals, an alarm is triggered. Note, if a tool change
command (G100 and M06) is issued on the same block, no alarm is
triggered.
(Note 4) When a nose R compensation command (G141 and G142) is issued while
the feature coordinate is being set (after G68.2 command and before
G53.1 command), the alarm <<Feature coordinate manufacturing mode
engaged>> is triggered.
A command is possible while the feature coordinate is being indexed
(after G53.1 command).
(Note) When the cutter/nose R wear range is set for the tool specified in D code,
the range is checked. The alarm <<Comm. issued to area other than (tool)
data area>> is triggered when the command area is outside of the range.
2019/09/02 4 - 39 eCOM3NCPR4
Chapter 4 Preparation Functions (Compensation Functions)
X 6 Z 6
2 1 2 1
0, 9 0, 9
7 5 7 5
3 4 3 4
8 8
Z Y
4
When the coordinates are configured looking from the front of the machine
5
4 1
0, 9
8 6
3 2
7
X
2019/09/02 4 - 40 eCOM3NCPR4
Chapter 4 Preparation Functions (Compensation Functions)
4.3.4 Startup
Offset mode is enabled for the control when a command that meets all the conditions below is
executed for cancel mode. Startup refers to the travel operation in this situation.
In the startup operation, the travel operation occurs so that the nose R center comes to a position
that is perpendicular to the start point of the next block.
G40 4
G142 (Startup)
Y
2019/09/02 4 - 41 eCOM3NCPR4
Chapter 4 Preparation Functions (Compensation Functions)
The following explanation applies to the Y- and Z-planes. When considering the X- and Z-planes
if looking from the front of the machine, the compensation direction is reversed (G141 → G142,
G142 → G141).
<Term / symbol explanation>: The terms and symbols that will appear hereafter in the
explanations are described below.
Block 1
θ
G142
Workpiece side
4
Block 2
180° ≤ θ
Inner side
G14
θ
Block 1
Workpiece side
θ T
G142
D C
D CP
L
: Program path
: Nose R center path
: Auxiliary line
L : Straight line
C : Arc
D : Nose R radius
θ : Angle on workpiece side
T : Arc tangent line
CP : Intersection
S : Single block stop point
2019/09/02 4 - 42 eCOM3NCPR4
Chapter 4 Preparation Functions (Compensation Functions)
D
G142
S L
L
T 4
D
G142
S C
2019/09/02 4 - 43 eCOM3NCPR4
Chapter 4 Preparation Functions (Compensation Functions)
S L
L D
G141 θ
S
4 C
D
L θ
G141
S
CP L
L
D D
L
θ
G141
S
L CP
L
D
L
G14 C
θ
2019/09/02 4 - 44 eCOM3NCPR4
Chapter 4 Preparation Functions (Compensation Functions)
G141
L D
L S
G141
4
θ
L D
S
C
L
D
L D
L
G141 θ D D
S
L DD L
D D S
G141 θ
L
T C
(Note) When θ ≤ 1°, the setting <0: Type 1 (shortcut)> is used or enabled, even if
<1: Type 2 (detour)> is specified for the user parameter <Start up/cancel>.
2019/09/02 4 - 45 eCOM3NCPR4
Chapter 4 Preparation Functions (Compensation Functions)
D
S
D CP L
G142
4
Arc to straight line
CP
D D
S
G142 C L
C
D
L S
CP
D
G141
θ
Arc to arc
C
C
D
S D
G141 T CP T
2019/09/02 4 - 46 eCOM3NCPR4
Chapter 4 Preparation Functions (Compensation Functions)
(Note 1) When turning on the inner side of a narrow angle (α < 1°), and the offset
vector is abnormally large.
Straight line to straight line
S L
α
D
L Offset vector
D
G141
L
4
L L
D L
α
T
G141
D
(Note 2) When turning on the inner side of an angle that is almost parallel (180° ≤ θ
< 181°).
Straight line to straight line
θ
G142
L S
L
The processing is the same for: arc → straight line, straight line → arc and arc → arc.
2019/09/02 4 - 47 eCOM3NCPR4
Chapter 4 Preparation Functions (Compensation Functions)
CP L
S
D
L D θ
G141
4 T
θ
G142
D
D
CP L
L S
C
θ
D
D
L
S
CP L
Arc to arc
G142
T
T
θ
C
D T
D
L
S L T
CP
C
2019/09/02 4 - 48 eCOM3NCPR4
Chapter 4 Preparation Functions (Compensation Functions)
(Note 1) When turning on the outer side of an angle that is almost parallel (179° ≤
θ < 180°).
Straight line to straight line
L S
L
G141
θ
The processing is the same for: arc → straight line, straight line → arc and arc → arc.
G141
G142
C
L
D D
L D D
S
L
2019/09/02 4 - 49 eCOM3NCPR4
Chapter 4 Preparation Functions (Compensation Functions)
T
L θ
D D
D D L
L S
4 Arc to arc
G142
T T
θ T
T
C C
D
D
L D D L
L S
D1 D2
D1
D2 D1
D2
G141 C
When the compensation is a small amount as shown in the diagram above, even if an intersection
exists, increasing the compensation may cause the intersection to disappear. In this situation, the
alarm <<Cutter compensation too large>> is triggered at the previous block and operation stops.
2019/09/02 4 - 50 eCOM3NCPR4
Chapter 4 Preparation Functions (Compensation Functions)
In the offset cancel operation, the travel operation occurs so that the nose R center comes to a
position that is perpendicular to the end point of the block that comes before the offset cancel
block.
End point 4
G40
(G142)
(Note 1) When an arc and thread cutting command are issued, an error is
triggered.
(Note 2) There are two setting types for the startup and cancel operations: <Type
1 (shortcut)> and <Type 2 (detour)>. Use the user parameter <Start
up/cancel> to set one of the types.
θ
G142
G40
L L
T
G40
D
S L
G142 C
2019/09/02 4 - 51 eCOM3NCPR4
Chapter 4 Preparation Functions (Compensation Functions)
L S
D
L
G141
θ G40
G141
C
4 S
D
L
θ
G40
S
L CP
L L
D
D
G141
θ L
G40
S
CP L
C
D D
L
G141
θ G40
(Note) When 179° ≤ θ ≤ 180°, the setting <0: Type 1 (shortcut)> is used or
enabled, even if <1: Type 2 (detour)> is specified for the user parameter
<Start up/cancel>.
2019/09/02 4 - 52 eCOM3NCPR4
Chapter 4 Preparation Functions (Compensation Functions)
L S
D
G141
L θ
G40
C S
D 4
G141
G40
D
G141 L
G40 D
S
L L
G141
L
G40
2019/09/02 4 - 53 eCOM3NCPR4
Chapter 4 Preparation Functions (Compensation Functions)
Straight line
G141 Y_Z_D_;
G40;
L S
G141 G40
4
Arc
G141 Y_Z_D_;
G40;
S
C
D
T
G40
G141
(Note) The remaining offset is cancelled together with the next travel command.
G142 Y_Z_D_;
G40;
G01 Y_Z_F_;
G142 G40
G01
2019/09/02 4 - 54 eCOM3NCPR4
Chapter 4 Preparation Functions (Compensation Functions)
Compensation sign
+ -
G code
G141 Left side offset Right side offset
Execution conditions
Straight line
Straight line Arc to
Offset mode Command to straight
line
to arc straight line
Arc to arc 4
G141 G141 Executes (The location that is offset by the nose R radius at a
position perpendicular to the end point of the previous block
G142 G142
becomes the stop point.)
G141 G142
Executes Executes
G142 G141
There is no distinction between the inner side and outer side cutting when changing the
compensation direction, but it varies depending on whether the intersection exists or not. In the
following explanation, the compensation is positive.
G142
D
L G141 S
D L
L S
G141
G142
D
2019/09/02 4 - 55 eCOM3NCPR4
Chapter 4 Preparation Functions (Compensation Functions)
G142
C
D
G141
Arc to arc
4
G142
C S
D D
G141 C
L S
L
G141 G142 G142
G141
G141
L D
S L
L S
G142
S
C
G142 D
L
L G141
D
S
T
2019/09/02 4 - 56 eCOM3NCPR4
Chapter 4 Preparation Functions (Compensation Functions)
G142
G142 C S L
C D
D D
L
L G141
S
Center
4
Arc to arc
G142
G142 C S
C D C
D
L D
L
S
G141
Center
Center
2019/09/02 4 - 57 eCOM3NCPR4
Chapter 4 Preparation Functions (Compensation Functions)
G142
G142
L
L S
4 G142
G142
C
D
L S
T
G142
G142
C S L
Arc to arc
G142
C
G142 D
2019/09/02 4 - 58 eCOM3NCPR4
Chapter 4 Preparation Functions (Compensation Functions)
N1 G141 Y_Z_D1;
N6 Ya1 Zb1;
N7 Ya2 D2; …… Compensation changed
N8 Ya3 Zb3;
4
D2
(a1, b1)
D1 N7
(a2, b1)
N6
D2
N8
G141
(a3, b3)
4. When cutting the inner side of an arc with a radius that is smaller than the nose R radius.
S
D
D ≥ R
D R
G141
In this situation, the alarm <<Cutter compensation too large>> and stoppage are triggered
because the infeed is not possible. It stops at the end point of the previous block.
2019/09/02 4 - 59 eCOM3NCPR4
Chapter 4 Preparation Functions (Compensation Functions)
5. Infeed insufficient
This occurs when machining a step that is smaller than nose R.
D
D D
G141 d
Infeed insufficient
6. Corner travel
When cutting the outer side, it can turn on a corner with many angles. The travel mode and
feedrate when turning the corner up to point a in the diagram below are based on the
command that is issued for the current block.
4 S
G141
In addition, as shown in the diagram below, the travel operation is ignored when the corner
travel distance is extremely small, and when △VX ≤ △V and △VY≤ △V.
The value for △V is set in the user parameter <Corner travel limit>.
ΔVx
D
ΔVy
D
D
G141
D
θ
G141
As a result, extremely small travel operations for a corner can be kept to a minimum.
2019/09/02 4 - 60 eCOM3NCPR4
Chapter 4 Preparation Functions (Compensation Functions)
N4 Y_Z_;
N5 X_;
N6 F_;
N7 X_;
N8 Y_;
N5-N7 N8
N4
G141
4
(Note 1) The same infeed problem arises as noted above for a block with zero
travel.
N4 G91 Y_Z_;
N5 Y0;
N6 Y_;
N6
N5
N4
G142
(Note 2) If there is no travel command for 2 axes on the selected planes during
startup, the startup operation is performed when a travel command is
executed thereafter even on a single axis for either the Y- or Z-axis (when
travel amount ≠ 0).
2019/09/02 4 - 61 eCOM3NCPR4
Chapter 4 Preparation Functions (Compensation Functions)
The operation thereafter is the same as described in the section “2. Nose R compensation
change” when changed to an offset number where offset ≠ 0.
N2
D2
4 N1
N3
G141
N4
The operation thereafter is the same as described in the section “2. Nose R compensation
change” when changed to a D number where nose R compensation ≠ 0.
N1 Y_Z_;
N2 Y_D1; (D1=0)
N3 Y_Z_;
N4 Y_Z_D2; (D2≠0)
N5 Y_;
G142 N2 N5
N1 N3
N4
2019/09/02 4 - 62 eCOM3NCPR4
Chapter 4 Preparation Functions (Compensation Functions)
9. Commands issued during nose R compensation that cause exception processing or that trigger
alarms
(1) Command that sets a perpendicular vector
G10 : Programmable data input
G52 : Local coordinate system setting
G92 : Coordinate system setting
G210 : Programmable data input (high accuracy)
#3000 : Alarm display
#3006 : Message display & stoppage
If the command noted above is issued, the machine travels to a position that is offset by
the nose R compensation using the value from the last Y- and Z-axes travel command.
If the command noted above is issued, G40 (nose R compensation cancel) is automatically
triggered. Therefore, the machine travels to a position that is offset by the nose R
compensation using the value from the last Y- and Z-axes travel command.
4
(3) Command that triggers the alarm <<Compensating diameter>>
G17~G19 : Plane selection
G28 : Reference position return
G29 : Return from reference position
G30 : No. 2 to 6 reference position return
G33,G376,G392 : Thread cutting
G36~G39 : Coordinate calculation
G60 : Single direction positioning
G66 : Macro program modal call
G68.2 : Feature coordinate setting
G73~G89,G173~G189 : Canned cycle
G120 : Positioning to measurement position
G121~G129 : Automatic measurement
G31,G131,G132 : Skip feed
G133,G134 : Change tap twist direction
M410,M411 : Pallet index
G2,G3 : Arc with 0 start point or 0 end point radius
P2 P3
P1 P4
P2'
* When operation stops at the end point (P2) of a block and the tool is then moved manually,
the tool travels from P2’ to P3, and the correct path is enabled from P3.
2019/09/02 4 - 63 eCOM3NCPR4
Chapter 4 Preparation Functions (Compensation Functions)
Ls
Le b
a
2019/09/02 4 - 64 eCOM3NCPR4
Chapter 4 Preparation Functions (Compensation Functions)
Rp Rc
4
(Note) When Rc/Rp is less than the <Inner arc override limit> that is set in the
user parameter, that parameter value is multiplied as an alternative to
Rc/Rp.
Actual feedrate = Command speed × (Inner arc override limit / 100)
2019/09/02 4 - 65 eCOM3NCPR4
Chapter 4 Preparation Functions (Compensation Functions)
D1 D1
G141 D1
•
• N1 N3
N1 G1 X_ Y_
N2 G2 X_ Y_ R_
N3 G1 X_ Y_ D1
N2
4
θα
θβ
This function checks the arc angle (θα) at the start and end points in the N2 program path and the
arc angle (θβ) at the start and end points in tool center path after being offset. If the angle is greater
than 180°, then an alarm is triggered and operation stops before executing N2.
(Note 1) When an alarm is triggered, the infeed may already be too great (The
infeed is too great for the workpiece on the N3 side after N1 is executed
in the above example).
(Note 2) This function carries out the check at the end point after 3 blocks of
travel. If one of the situations below applies while the offset mode is
enabled, this check function may not work properly because the tool
center path start and end points change after being offset.
• When there is a nose R compensation G code command or a
command that sets a perpendicular vector
• Zero travel commands for more than 3 blocks
2019/09/02 4 - 66 eCOM3NCPR4
Chapter 4 Preparation Functions (Compensation Functions)
This function offsets the tool position so that the teeth move to the position that is programmed.
Even in an absolute command or an incremental command, the coordinates that are offset only for
the tool number compensation specified in H code become the actual end point for the coordinates
of the travel command end point that is programmed.
Offset is performed for X-, Y- and Z-axes. Set 0 for the axis where the compensation does not
apply. 4
1. Tool position compensation (+)
2019/09/02 4 - 67 eCOM3NCPR4
Chapter 4 Preparation Functions (Compensation Functions)
(Note 7) If a tool length offset command (G143 and G144) is issued during G43
and G44 modals, an alarm is triggered. Note, if a tool change command
(G100 and M06) is issued on the same block, no alarm is triggered.
<Travel of X, Y or Z axis when tool length/tool position offset is changed> : <Type 1>
<Error check when traveling during tool length/tool position offset cancel> : <No>
X Y Z
Machine coordinate Machine coordinate Machine coordinate
G90G0X0.Y0.Z100.; -100.000 -200.000 150.000
G143H1; -95.000 -200.000 270.000
G0X10.Y20.Z80.; -85.000 -180.000 250.000
G49; -90.000 -180.000 130.000
<Travel of X, Y or Z axis when tool length/tool position offset is changed> : <Type 2>*
X Y Z
Machine coordinate Machine coordinate Machine coordinate
G90G0X0.Y0.Z100.; -100.000 -200.000 150.000
G143H1; -100.000 -200.000 150.000
G0X10.Y20.Z80.; -85.000 -180.000 250.000
G49; -85.000 -180.000 250.000
2019/09/02 4 - 68 eCOM3NCPR4
Chapter 4 Preparation Functions (Compensation Functions)
* The operation is the same regardless if the parameter <Error check when traveling during
tool length/tool position offset cancel> is set to <Yes> or <No>.
Ex:
G28 X-50. Y-50. Z400.; ← Temporarily cancels the tool position compensation
···;
G0 X-100. Y-100.; ← X- and Y-axes tool position compensation resumes
···;
G0 Z300.; ← Z-axis tool position compensation resumes
2019/09/02 4 - 69 eCOM3NCPR4
Chapter 4 Preparation Functions (Compensation Functions)
2019/09/02 4 - 70 eCOM3NCPR4
Chapter 5 Preparation Function (Canned Cycle)
CHAPTER 5
PREPARATION FUNCTION
(CANNED CYCLE)
5
5.1 Outline
5.2 List of Canned Cycle Function
5.3 Basic Operation of Canned Cycle
5.4 General Rules of Canned Cycle
5.5 Details of Canned Cycle
5.6 One-shot Canned Cycle
5.7 Canned Cycle for Tool Change (Non-stop ATC)
(G100)
5.8 Coordinate Calculation Function
5.1 Outline
A sequence of machine operations mostly in the tool axis direction is included in a single block
and initiated by a single G code.
G177 End milling/tapping Cutting feed Spindle CCW Cutting feed Stop
Motion 1 ……… Move the tool to hole machining position (X-Y axes) by rapid feed
Motion 2 ……… Move the tool to R point by rapid feed
Motion 3 ……… Hole machining (cutting feed)
Motion 4 ……… Operation at the bottom of a hole
Motion 5 ……… Retreat the tool to R point by rapid feed / cutting feed
Motion 6 ……… Return the tool to initial point by rapid feed
Motion 1
Initial point
Motion 2 Motion 6
R point 5
Motion 3 Motion 5
Z point
Motion 4
In a single block operation, the control stops at the end of motions 1, 2, and 6, respectively.
(Note) Temporary stop availability in tapping cycles (G74, G77, G78, G84, G177,
G178, G277, and G278)
G73, G74
G76 ~ G78
G81 ~ G87
G89 Please refer to “5.2 List of canned cycle
(III) Hole machining mode G177, G178 function”
G181, G182
G185, G186
G189
5 G277, G278
Initial point
Z=0
R
R
R point R point
Z
Z point Z point
Initial point
R point
R point
Z point Z point
5
(Note 1) G98 and G99 are modal commands. G98 is always effective when the
machine is powered on.
(Note 2) When a canned cycle command and a tool length offset command exist in
the same block, the tool length offset command is executed after the tool
reaches the R point. Accordingly, the initial point is saved without tool
length offset.
(Note 3) Initial point is the Z axis position in the machine coordinates when the
control is switched from the canned cycle cancel mode to the canned
cycle mode.
1. The control is in one of the hole machining blocks (G73, G74, G76 to G78, G81 to G87, G89,
G177, G178, G181 to G182, G185, G186, G189, G277, and G278) and at least one of X, Y, Z,
R, A, B, and C is included in the block.
2. Any block, including at least one of X, Y, Z, R, A, B, and C, that occurs following a hole
machining block, up until the canned cycle command is canceled in a later block.
Hole machining mode Hole position data Hole machining data Repetition count
G codes : G73, G74, G76 to G78, G81 to G87, G89, G177, G178, G181 to G182,
G185, G186, G189, G277, and G278
5 R : R point position
If you are in the incremental mode, R refers to the distance from the point
before the control enters the canned cycle mode to R point.
Q : Cutting depth, shift value, and distance to feed rate switching point.
(I) G73, G83 – Cutting depth for each stroke
(II) G77, G78, G277, G278 – Cutting depth for each stroke
(III) G76, G87 – Shift value
(IV) G177, G178 – Distance to feed rate switching point
(V) G86, G186 – Orientation angle
(Note) Canned cycle is canceled (G80) if you command the following codes
during a canned cycle operation:
• Tool change canned cycle (G100/M06)
• Changing from spindle to turning spindle (M141 to M142)
• G00 group
(G00/G01/G02/G03/G02.2/G03.2/G102/G103/G202/G203/G33/G392)
commands
Ex)
○ Final drilling
○
5
○ First drilling
Return
R point
d
Rapid feed
5 Cutting feed
Q
d
Z point
Dwell (P sec)
• Retract value d is set on the <G73 relief amount> of User parameter (Switch 1).
• If a negative value is entered for the cutting amount Q, the algebraic symbol (-) is ignored.
Return point
Rapid feed
Cutting feed
R point Spindle stop
Spindle CW
Spindle CCW
5
Z point
• The tool stops on finally reaching the R point when a temporary stop is commanded at any
moment en route from R to Z point and further back to the R point.
• For feed per minute (G94), thread pitch = cutting feed rate ÷ spindle speed.
• For feed per revolution (G95), thread pitch = cutting feed rate.
• The alarm <<Spindle Speed Error>> occurs if S exceeds the <Max. tapping speed> of
Machine parameter (System 1)
• When the synchronized error for the Z-axis and spindle exceeds the Machine parameter
(System 1) <<Synchronized tapping error limit>> during tapping, the alarm <<The tapping
synchronous error is too big.>> is triggered.
When the User parameter (Switch 1) <The tapping synchronous error is too big - alarm stop
level> is set to <0: Level 4> and this alarm is triggered, the tapping operation in progress at
this time continues until the block stop, and then it stops after the tapping operation is
complete.
When the User parameter (Switch 1) <The tapping synchronous error is too big - alarm stop
level> is set to <1: Level 5> and this alarm is triggered, it immediately stops.
• When the screw pitch is less than the <Minimum tapping pitch> in the Machine parameter
(System 1), the alarm <<Pitch data error>> is triggered.
• During the tapping operation, the operation is carried out with the FEEDRATE OVERRIDE
and the SPINDLE OVERRIDE at 100%.
Return point
R point
Rapid feed
5 Cutting feed
Z point
Shift (rapid feed)
Q
Spindle CW
• Dwell (P sec)
• Spindle stops in V-specified rotational position
• The sign is ignored even when a negative value command is issued for the amount of shift for
Q.
• Shift direction, one from among +X, -X, +Y, and -Y, is selected and set beforehand using
<G76,G87 shift direction> of User parameter (Switch 1).
• Shift direction is selectable from only 4 directions of +X, -X, +Y, and -Y. Install the tool such
that the bit faces one of these directions when the spindle stops at the specified rotational
position.
• 0° is considered commanded when you omit V.
2019/09/02 5 - 10 eCOM3NCPR5
Chapter 5 Preparation Function (Canned Cycle)
Return point
R point
Spindle stop
d Rapid feed 5
Cutting feed
Spindle CW
Q
d Spindle CCW
Z point
• Retract value d is set on the <G77,G78 relief amount> of User parameter (Switch 1).
• If a negative value is entered for the cutting amount Q, the algebraic symbol (-) is ignored.
• The tool stops on finally reaching the R point when a temporary stop is commanded at any
moment en route from R to Z point and further back to the R point.
• Screw pitch or number of threads must be designated.
Enter the value after I and J, respectively.
• When I and J exist in the same block, the former is used.
• The alarm <<Spindle Speed Error>> occurs if S exceeds the <Max. tapping speed> of
Machine parameter (System 1).
• The tool returns with the <Max. tapping speed> of Machine parameter (System 1) when
<Tapping cycle return rotational frequency> of User parameter (Switch 1) is selected to
<1:Max. speed.>
• When the synchronized error for the Z-axis and spindle exceeds the Machine parameter
(System 1) <<Synchronized tapping error limit>> during tapping, the alarm <<The tapping
synchronous error is too big.>> is triggered.
When the User parameter (Switch 1) <The tapping synchronous error is too big - alarm stop
level> is set to <0: Level 4> and this alarm is triggered, the tapping operation in progress at
this time continues until the block stop, and then it stops after the tapping operation is
complete.
When the User parameter (Switch 1) <The tapping synchronous error is too big - alarm stop
level> is set to <1: Level 5> and this alarm is triggered, it immediately stops.
• When the screw pitch is less than the <Minimum tapping pitch> in the Machine parameter
(System 1), the alarm <<Pitch data error>> is triggered.
2019/09/02 5 - 11 eCOM3NCPR5
Chapter 5 Preparation Function (Canned Cycle)
• During the tapping operation, the operation is carried out with the FEEDRATE OVERRIDE
and the SPINDLE OVERRIDE at 100%.
I_
Command format G77 X_ Y_ Z_ R_ Q_ S_ L_;
J_
I_
Command format G78 X_ Y_ Z_ R_ Q_ S_;
J_
Return point
R point
Spindle stop
Rapid feed
d
Cutting feed
Spindle CW
Q
Spindle CCW
d
Z point
2019/09/02 5 - 12 eCOM3NCPR5
Chapter 5 Preparation Function (Canned Cycle)
• Retract value d is set on the <G77,G78 relief amount> of User parameter (Switch 1).
• If a negative value is entered for the cutting amount Q, the algebraic symbol (-) is ignored.
• The tool stops on finally reaching the R point when a temporary stop is commanded at any
moment en route from R to Z point and further back to the R point.
• Screw pitch or number of threads must be designated.
Enter the value after I and J, respectively.
• When I and J exist in the same block, the former is used.
• The alarm <<Spindle Speed Error>> occurs if S exceeds the <Max. tapping speed> of
Machine parameter (System 1).
• The tool returns with the <Max. tapping speed> of Machine parameter (System 1) when
<Tapping cycle return rotational frequency> of User parameter (Switch 1) is selected to
<1:Max. speed.>
• When the synchronized error for the Z-axis and spindle exceeds the Machine parameter
(System 1) <<Synchronized tapping error limit>> during tapping, the alarm <<The tapping
synchronous error is too big.>> is triggered.
When the User parameter (Switch 1) <The tapping synchronous error is too big - alarm stop
level> is set to <0: Level 4> and this alarm is triggered, the tapping operation in progress at
this time continues until the block stop, and then it stops after the tapping operation is
complete.
When the User parameter (Switch 1) <The tapping synchronous error is too big - alarm stop
level> is set to <1: Level 5> and this alarm is triggered, it immediately stops.
• When the screw pitch is less than the <Minimum tapping pitch> in the Machine parameter
(System 1), the alarm <<Pitch data error>> is triggered. 5
• During the tapping operation, the operation is carried out with the FEEDRATE OVERRIDE
and the SPINDLE OVERRIDE at 100%.
I_
Command format G78 X_ Y_ Z_ R_ Q_ S_ L_;
J_
2019/09/02 5 - 13 eCOM3NCPR5
Chapter 5 Preparation Function (Canned Cycle)
G81
Command format X_ Y_ Z_ R_ P_ F_;
G82
Return point
R point
5
Rapid feed
Feed rate at start and end of cutting in drilling cycle (G81 or G82) is varied.
G81
Command format X_ Y_ Z_ R_ P_ W_ V_ F_ E_ L_;
G82
2019/09/02 5 - 14 eCOM3NCPR5
Chapter 5 Preparation Function (Canned Cycle)
Return point
R point
Feed rate E W
Feed rate F
Rapid feed
Feed rate L V
Z point Cutting feed
Dwell (P sec)
5
5.5.7 Peck Drilling Cycle (G83)
Return point
R point
d Rapid feed
Cutting feed
Z point
Dwell (P sec)
• Cutting start point d is set on the <G83 cutting start position> of User parameter (Switch 1).
• If a negative value is entered for the cutting amount Q, the algebraic symbol (-) is ignored.
2019/09/02 5 - 15 eCOM3NCPR5
Chapter 5 Preparation Function (Canned Cycle)
Return point
Rapid feed
Cutting feed
5
Spindle CW
Z point
Spindle CCW
The spindle stops at Z point, dwells for P sec, and then rotates reversely.
• The tool stops on finally reaching the R point when a temporary stop is commanded at any
moment en route from R to Z point and further back to the R point.
• For feed per minute (G94), thread pitch = cutting feed rate ÷ spindle speed.
• For feed per revolution (G95), thread pitch = cutting feed rate.
• The alarm <<Spindle Speed Error>> occurs if S exceeds the <Max. tapping speed> of
Machine parameter (System 1).
• When the synchronized error for the Z-axis and spindle exceeds the Machine parameter
(System 1) <<Synchronized tapping error limit>> during tapping, the alarm <<The tapping
synchronous error is too big.>> is triggered.
When the User parameter (Switch 1) <The tapping synchronous error is too big - alarm stop
level> is set to <0: Level 4> and this alarm is triggered, the tapping operation in progress at
this time continues until the block stop, and then it stops after the tapping operation is
complete.
When the User parameter (Switch 1) <The tapping synchronous error is too big - alarm stop
level> is set to <1: Level 5> and this alarm is triggered, it immediately stops.
• When the screw pitch is less than the <Minimum tapping pitch> in the Machine parameter
(System 1), the alarm <<Pitch data error>> is triggered.
• During the tapping operation, the operation is carried out with the FEEDRATE OVERRIDE
and the SPINDLE OVERRIDE at 100%.
2019/09/02 5 - 16 eCOM3NCPR5
Chapter 5 Preparation Function (Canned Cycle)
G85
Command format X_ Y_ Z_ R_ P_ F_;
G89
Return point
R point
Rapid feed
5
Cutting feed
Z point
G85
Command format X_ Y_ Z_ R_ P_ F_ E_;
G89
Return point
R point
Rapid feed
Z point Cutting feed
Dwell (P sec)
2019/09/02 5 - 17 eCOM3NCPR5
Chapter 5 Preparation Function (Canned Cycle)
Return point
R point
Rapid feed
Cutting feed
Z point
5 Dwell (P sec) Spindle stop
Spindle CW
(When Q is omitted)
2019/09/02 5 - 18 eCOM3NCPR5
Chapter 5 Preparation Function (Canned Cycle)
Spindle turns CW
on reaching R
point
Return
R point
Feed rate E W
Feed rate F
Rapid feed
Feed rate L V
Z point Cutting feed
Spindle stop
Dwell (P sec)
(When Q is omitted) Spindle CW
5
Spindle stops at
V-specified rotational
position
Z point
Dwell (P sec)
Rapid feed
Cutting feed
R point
Shift (rapid feed)
Spindle CCW
• The sign is ignored even when a negative value command is issued for the amount of shift for
Q.
• Shift direction, one from among +X, -X, +Y, and –Y, is selected and set beforehand using
<G76,G87 shift direction> of User parameter (Switch 1).
2019/09/02 5 - 19 eCOM3NCPR5
Chapter 5 Preparation Function (Canned Cycle)
• Shift direction is selectable from only 4 directions of +X, -X, +Y, and –Y. Install the tool such
that the bit faces one of these directions when the spindle stops at the specified rotational
position.
• G99 (Return to R point level) does not exist.
• 0° is considered commanded when you omit V.
I_
Command format G177 X_ Y_ Z_ R_ S_ L_ Q_ E_;
J_
Return point
R point
Feed rate E Q
Spindle speed S
Rapid feed
Pitch (I) or number
of threads (J)
Cutting feed
Z point
Spindle CW
Spindle CCW
• The alarm <<Spindle Speed Error>> occurs if S exceeds the <Max. tapping speed> of
Machine parameter (System 1).
• When the synchronized error for the Z-axis and spindle exceeds the Machine parameter
(System 1) <<Synchronized tapping error limit>> during tapping, the alarm <<The tapping
synchronous error is too big.>> is triggered.
When the User parameter (Switch 1) <The tapping synchronous error is too big - alarm stop
level> is set to <0: Level 4> and this alarm is triggered, the tapping operation in progress at
this time continues until the block stop, and then it stops after the tapping operation is
complete.
When the User parameter (Switch 1) <The tapping synchronous error is too big - alarm stop
level> is set to <1: Level 5> and this alarm is triggered, it immediately stops.
• When the screw pitch is less than the <Minimum tapping pitch> in the Machine parameter
(System 1), the alarm <<Pitch data error>> is triggered.
2019/09/02 5 - 20 eCOM3NCPR5
Chapter 5 Preparation Function (Canned Cycle)
I_
Command format G178 X_ Y_ Z_ R_ S_ L_ Q_ E_;
J_
Return point
R point
Feed rate E Q
Spindle speed S
Rapid feed
Pitch (I) or number
of threads (J)
Cutting feed
Z point
Spindle CW
Spindle CCW
• The alarm <<Spindle Speed Error>> occurs if S exceeds the <Max. tapping speed> of
Machine parameter (System 1).
• When the synchronized error for the Z-axis and spindle exceeds the Machine parameter
(System 1) <<Synchronized tapping error limit>> during tapping, the alarm <<The tapping
synchronous error is too big.>> is triggered.
When the User parameter (Switch 1) <The tapping synchronous error is too big - alarm stop
level> is set to <0: Level 4> and this alarm is triggered, the tapping operation in progress at
this time continues until the block stop, and then it stops after the tapping operation is
complete.
When the User parameter (Switch 1) <The tapping synchronous error is too big - alarm stop
level> is set to <1: Level 5> and this alarm is triggered, it immediately stops.
• When the screw pitch is less than the <Minimum tapping pitch> in the Machine parameter
(System 1), the alarm <<Pitch data error>> is triggered.
2019/09/02 5 - 21 eCOM3NCPR5
Chapter 5 Preparation Function (Canned Cycle)
G181
Command format X_ Y_ Z_ R_ I_ J_ P_ W_ V_ F_ E_ L_;
G182
5
Return point
R point
Feed rate E W
Feed rate F
Feed rate L V
I point
Rapid feed
J point
Feed rate E W
Rapid feed
Feed rate F
2019/09/02 5 - 22 eCOM3NCPR5
Chapter 5 Preparation Function (Canned Cycle)
G185
Command format X_ Y_ Z_ R_ I_ J_ P_ F_ E_;
G189
R point
5
Feed rate F Feed rate E
I point
Rapid feed
J point
Rapid feed
Feed rate F Feed rate E
Cutting feed
Z point
Dwell (P sec)
2019/09/02 5 - 23 eCOM3NCPR5
Chapter 5 Preparation Function (Canned Cycle)
5 Return point
Spindle turns CW on reaching
Return point
R point
Feed rate E W
Feed rate F
Feed rate L V
I point
J point
Feed rate E W
Rapid feed
Feed rate F
Cutting feed
Feed rate L V
Z point
Dwell (P sec) Spindle stop Spindle CW
(When Q is omitted)
2019/09/02 5 - 24 eCOM3NCPR5
Chapter 5 Preparation Function (Canned Cycle)
I_
Commad format G277 X_ Y_ Z_ R_ Q_ S_;
J_
Return point
Q
Rapid feed
5
Cutting feed
Spindle CW
Q
Spindle CCW
Z point
• If a negative value is entered for the cutting amount Q, the algebraic symbol (-) is ignored.
• When a temporary stop is commanded during cutting, the control stops on returning from the
hole bottom position Z to the R point.
• Screw pitch or number of threads must be designated.
Enter the value after I and J, respectively.
• When I and J exist in the same block, the former is used.
• An alarm occurs if S exceeds the <Max. tapping speed> of Machine parameter (System 1).
• When <Tapping cycle return rotational frequency> of User parameter (Switch 1) is set to <1:
Max. speed>, the tool returns with <Max. tapping speed>of Machine parameter (System 1).
• When the synchronized error for the Z-axis and spindle exceeds the Machine parameter
(System 1) <<Synchronized tapping error limit>> during tapping, the alarm <<The tapping
synchronous error is too big.>> is triggered.
When the User parameter (Switch 1) <The tapping synchronous error is too big - alarm stop
level> is set to <0: Level 4> and this alarm is triggered, the tapping operation in progress at
this time continues until the block stop, and then it stops after the tapping operation is
complete.
When the User parameter (Switch 1) <The tapping synchronous error is too big - alarm stop
level> is set to <1: Level 5> and this alarm is triggered, it immediately stops.
• When the screw pitch is less than the <Minimum tapping pitch> in the Machine parameter
(System 1), the alarm <<Pitch data error>> is triggered.
• During the tapping operation, the operation is carried out with the FEEDRATE OVERRIDE
and the SPINDLE OVERRIDE at 100%.
2019/09/02 5 - 25 eCOM3NCPR5
Chapter 5 Preparation Function (Canned Cycle)
Return point
Q
Rapid feed
5 Cutting feed
Spindle CW
Q
Spindle CCW
Z point
• If a negative value is entered for the cutting amount Q, the algebraic symbol (-) is ignored.
• When a temporary stop is commanded during cutting, the control stops on returning from the
hole bottom position Z to the R point.
• Screw pitch or number of threads must be designated.
Enter the value after I and J, respectively.
• When I and J exist in the same block, the former is used.
• An alarm occurs if S exceeds the <Max. tapping speed> of Machine parameter (System 1)
• When <Tapping cycle return rotational frequency> of User parameter (Switch 1) is set to <1:
Max. speed>, the tool returns with <Max. tapping speed> of Machine parameter (System 1).
• When the synchronized error for the Z-axis and spindle exceeds the Machine parameter
(System 1) <<Synchronized tapping error limit>> during tapping, the alarm <<The tapping
synchronous error is too big.>> is triggered.
When the User parameter (Switch 1) <The tapping synchronous error is too big - alarm stop
level> is set to <0: Level 4> and this alarm is triggered, the tapping operation in progress at
this time continues until the block stop, and then it stops after the tapping operation is
complete.
When the User parameter (Switch 1) <The tapping synchronous error is too big - alarm stop
level> is set to <1: Level 5> and this alarm is triggered, it immediately stops.
• When the screw pitch is less than the <Minimum tapping pitch> in the Machine parameter
(System 1), the alarm <<Pitch data error>> is triggered.
• During the tapping operation, the operation is carried out with the FEEDRATE OVERRIDE
and the SPINDLE OVERRIDE at 100%.
2019/09/02 5 - 26 eCOM3NCPR5
Chapter 5 Preparation Function (Canned Cycle)
G277 I_
Commad format X_ Y_ Z_ R_ Q_ S_ L_;
G278 J_
Return point
Rapid feed
3rd cutting depth
d Cutting feed
•••
V
Z point
Dwell (P sec)
• Retract value d is set on the <G73 relief amount> of User parameter (Switch 1).
• If a negative value is entered for the cutting amount V and W, the algebraic symbol (-) is
ignored.
2019/09/02 5 - 27 eCOM3NCPR5
Chapter 5 Preparation Function (Canned Cycle)
Return point
R point
5 d
Z point
Dwell (P sec)
Rapid feed
Cutting feed
• Cutting start point d is set on the <G83 cutting start position> of User parameter (Switch 1).
• If a negative value is entered for the cutting amount V and W, the algebraic symbol (-) is
ignored.
2019/09/02 5 - 28 eCOM3NCPR5
Chapter 5 Preparation Function (Canned Cycle)
I_
Command format G77 X_ Y_ Z_ R_ W_ V_ S_;
J_
Return point
W
d 5
2nd cutting depth
d
Rapid feed
Spindle CCW
•••
V
Z point
• Retract value d is set on the <G77,G78 relief amount> of User parameter (Switch 1).
• If a negative value is entered for the cutting amount V and W, the algebraic symbol (-) is
ignored.
• The tool stops on finally reaching the R point when a temporary stop is commanded at any
moment en route from R to Z point and further back to the return point.
• Screw pitch or number of threads must be designated.
Enter the value after I and J, respectively.
• When I and J exist in the same block, the former is used.
• The alarm <<Spindle Speed Error>> occurs if S exceeds the <Max. tapping speed> of
Machine parameter (System 1).
• When the synchronized error for the Z-axis and spindle exceeds the Machine parameter
(System 1) <<Synchronized tapping error limit>> during tapping, the alarm <<The tapping
synchronous error is too big.>> is triggered.
When the User parameter (Switch 1) <The tapping synchronous error is too big - alarm stop
level> is set to <0: Level 4> and this alarm is triggered, the tapping operation in progress at
this time continues until the block stop, and then it stops after the tapping operation is
complete.
When the User parameter (Switch 1) <The tapping synchronous error is too big - alarm stop
level> is set to <1: Level 5> and this alarm is triggered, it immediately stops.
2019/09/02 5 - 29 eCOM3NCPR5
Chapter 5 Preparation Function (Canned Cycle)
I_
Command format G78 X_ Y_ Z_ R_ W_ V_ S_;
J_
Return point
5 W
Spindle CCW
•••
Z point
• Retract value d is set on the <G77,G78 relief amount> of User parameter (Switch 1).
• If a negative value is entered for the cutting amount V and W, the algebraic symbol (-) is
ignored.
• The tool stops on finally reaching the R point when a temporary stop is commanded at any
moment en route from R to Z point and further back to the R point.
• Screw pitch or number of threads must be designated.
Enter the value after I and J, respectively.
• When I and J exist in the same block, the former is used.
• The alarm <<Spindle Speed Error>> occurs if S exceeds the <Max. tapping speed> of
Machine parameter (System 1).
• When the synchronized error for the Z-axis and spindle exceeds the Machine parameter
(System 1) <<Synchronized tapping error limit>> during tapping, the alarm <<The tapping
synchronous error is too big.>> is triggered.
When the User parameter (Switch 1) <The tapping synchronous error is too big - alarm stop
level> is set to <0: Level 4> and this alarm is triggered, the tapping operation in progress at
this time continues until the block stop, and then it stops after the tapping operation is
complete.
When the User parameter (Switch 1) <The tapping synchronous error is too big - alarm stop
level> is set to <1: Level 5> and this alarm is triggered, it immediately stops.
2019/09/02 5 - 30 eCOM3NCPR5
Chapter 5 Preparation Function (Canned Cycle)
I_
Command format G277 X_ Y_ Z_ R_ W_ V_ S_;
J_
Return point
W
5
Rapid feed
Cutting feed
Spindle CW
2nd cutting depth
Spindle CCW
Z point
• If a negative value is entered for the cutting amount V and W, the algebraic symbol (-) is
ignored.
• When a temporary stop is commanded during cutting, the control stops on returning from the
hole bottom position Z to the R point.
• Screw pitch or number of threads must be designated.
Enter the value after I and J, respectively.
• When I and J exist in the same block, the former is used.
• An alarm occurs if S exceeds the <Max. tapping speed> of Machine parameter (System 1).
• When the synchronized error for the Z-axis and spindle exceeds the Machine parameter
(System 1) <<Synchronized tapping error limit>> during tapping, the alarm <<The tapping
synchronous error is too big.>> is triggered.
When the User parameter (Switch 1) <The tapping synchronous error is too big - alarm stop
level> is set to <0: Level 4> and this alarm is triggered, the tapping operation in progress at
this time continues until the block stop, and then it stops after the tapping operation is
complete.
When the User parameter (Switch 1) <The tapping synchronous error is too big - alarm stop
level> is set to <1: Level 5> and this alarm is triggered, it immediately stops.
2019/09/02 5 - 31 eCOM3NCPR5
Chapter 5 Preparation Function (Canned Cycle)
I_
Command format G278 X_ Y_ Z_ R_ W_ V_ S_;
J_
Return
point
Rapid feed
Cutting feed
Spindle CW
2nd cutting depth
Spindle CCW
V
Z point
• If a negative value is entered for the cutting amount V and W, the algebraic symbol (-) is
ignored.
• When a temporary stop is commanded during cutting, the control stops on returning from the
hole bottom position Z to the R point.
• Screw pitch or number of threads must be designated.
Enter the value after I and J, respectively.
• When I and J exist in the same block, the former is used.
• An alarm occurs if S exceeds the <Max. tapping speed> of Machine parameter (System 1).
• When the synchronized error for the Z-axis and spindle exceeds the Machine parameter
(System 1) <<Synchronized tapping error limit>> during tapping, the alarm <<The tapping
synchronous error is too big.>> is triggered.
When the User parameter (Switch 1) <The tapping synchronous error is too big - alarm stop
level> is set to <0: Level 4> and this alarm is triggered, the tapping operation in progress at
this time continues until the block stop, and then it stops after the tapping operation is
complete.
When the User parameter (Switch 1) <The tapping synchronous error is too big - alarm stop
level> is set to <1: Level 5> and this alarm is triggered, it immediately stops.
2019/09/02 5 - 32 eCOM3NCPR5
Chapter 5 Preparation Function (Canned Cycle)
7. 2nd and after cutting depth in G73, G83, G173, and G183
2nd and after cuttring depth in canned cycle G73, G83, G173, and G183 is shown below.
Cutting depth = Factor * 1st cutting depth (W)
Count 2 3 4 5 6 7 8 9
Factor 0.825 0.675 0.525 0.425 0.35 0.3 0.225 0.175
10 11 12 13 14
0.15 0.1 0.1 0.075 0.075
• Use the factor for the 14th count to obtain the 15th and after cutting depth.
• When the cutting depth gets smaller than V, the tool will cut by the V dimension.
8. 2nd and after cutting depth in G77, G78, G273, and G283
2nd and after cuttring depth in canned cycle G77 and G78 is shown below.
Cutting depth = Factor * 1st cutting depth (W)
Count 2 3 4 5 6 7 8 9
Factor 0.85 0.65 0.55 0.4 0.35 0.3 0.2 0.2
10 11 12 13 14 5
0.15 0.1 0.1 0.05 0.05
• Use the factor for the 14th count to obtain the 15th and after cutting depth.
• When the cutting depth gets smaller than V, the tool will cut by the V dimension.
(Note) Reducing and constant steps are switched using W and Q commands.
• When W and Q commands exist in the same block, the W command is
used.
• When W and Q are not commanded, or zero is specified, the whole
depth is cut by a single pass.
• When V is not commanded, or zero is specified, the following applies
(for type 1 minimum setting unit):
V = 0.001 (metric system)
V = 0.0001 (inch system)
2019/09/02 5 - 33 eCOM3NCPR5
Chapter 5 Preparation Function (Canned Cycle)
(Note 1) Cancelling the canned cycle is possible by G80 or any of the following
commands below.
- Canned cycle (G100/M06) for tool change
- Change from spindle to lathe spindle (M141 → M142)
- G00 group
(G00/G01/G02/G03/G02.2/G03.2/G102/G103/G202/G203/G33/G392)
commands
(Note 2) Axis travel is performed after canceling canned cycles if axis travel is
commanded in the same G80 block.
2019/09/02 5 - 34 eCOM3NCPR5
Chapter 5 Preparation Function (Canned Cycle)
R point
Q
5
d Rapid feed
Cutting feed
Q
d
Z point
• Address K is ignored.
2019/09/02 5 - 35 eCOM3NCPR5
Chapter 5 Preparation Function (Canned Cycle)
R point
5
W
Rapid feed
•••
Cutting feed
V
Z point
• Retract value d is set on the <G73 relief amount> of User parameter (Switch 1).
• If a negative value is entered for the cutting amount V and W, the algebraic symbol (-) is
ignored.
2019/09/02 5 - 36 eCOM3NCPR5
Chapter 5 Preparation Function (Canned Cycle)
R point
d
5
Q
Rapid feed
Cutting feed
Z point
• Address K is ignored.
2019/09/02 5 - 37 eCOM3NCPR5
Chapter 5 Preparation Function (Canned Cycle)
5
W
Z
Rapid feed
Cutting feed
• Cutting start point is set on the <G83 cutting start position> of User parameter (Switch 1).
• If a negative value is entered for the cutting amount V and W, the algebraic symbol (-) is
ignored.
2019/09/02 5 - 38 eCOM3NCPR5
Chapter 5 Preparation Function (Canned Cycle)
(3)
Home of ATC
(2) (4)
(1) (5) 5
Single block stop point
Operation
(1) When moving to the distance to Z-axis zero point, spindle orientation is carried out at the
same time.
(Unclamping of added axes is also carried out at the same time.)
(2) Moves to ATC zero return.
When X, Y, A, B and C axes are specified, they are moved to at the same time.
(3) The magazine turns, and the tool specified by T is assigned.
(4) Moves to Z-axis zero point position.
(5) When a Z-axis command is made, the spindle moves to the instructed position.
If a main spindle command (M03 group) is made, the main spindle moves at the same time.
When <2: Equipped (lathe spindle)> is selected for the machine parameter <Optional 5th- to
8th-axis>, the lathe spindle follows the operation described later from section “5.7.2.1 Operation
when spindle is selected (M141 modal)” to section “5.7.2.3 Tool change operation when lathe
spindle is selected”.
2019/09/02 5 - 39 eCOM3NCPR5
Chapter 5 Preparation Function (Canned Cycle)
(Note 1) During cycle operation, (1) and (2), and also (4) and (5) are linked together
in their movement during machining mode.
(Note 2) The machine stops after operation (4) when the [RST] key or the [FEED
HOLD] switch is pressed between (2) and (4). However, the X-, Y-, A-, B-
and C-axis travel stops immediately at (2).
(Note 3) Switching the mode is not possible between (1) and (4).
(Note 4) It is possible to omit all addresses except the G100 address, but a T code
command has to be issued once before the G100 command is issued.
(Note 5) The cutter compensation and the nose R compensation is cancelled
when the G100 command is issued. In addition, the tool length / tool
position offset (Z-axis) is cancelled starting from (1).
(Note 6) When cutter compensation / nose R compensation commands on the
G100 block and travel commands on the selected plane axis are issued,
the cutter compensation / nose R compensation startup operation is
performed in the travel for the selected plane axis in (2). Regardless of
the <Start up/cancel> setting in the User parameter (Switch 1) the
operation is performed following the Type 1 setting.
(Note 7) The X- and Y- axes compensation is enabled from operation (2) and the
Z-axis compensation is enabled from (5) when the tool length / tool
position offset command is issued on the G100 block.
(Note 8) Only the M code commands listed in the “Simultaneous command M
code” (described later) are valid for the G100 block. The alarm
5 <<Specified M code cannot be used.>> is triggered when an unlisted or
invalid M code command is issued.
(Note 9) The alarm <<There is no *-axis option>> is triggered if an A-axis, B-axis or
C-axis command is issued when there is no A-axis, B-axis or C-axis
option.
(Note 10) The <ATC simultaneous operation start position> in the <User
parameter> is not used.
(Note 11) The <ATC reference tool length> in the <User parameter> is not used.
Even if the G100 command is issued when the tool length / tool position
offset is cancelled (G49), (1) travels the distance to Z-axis zero position.
If there is no tool length / tool position offset command on the G100 block,
(5) travels to the Z command position.
(Note 12) When a feature coordinate index (G53.1) command is issued on the G100
block, travel (A-axis, B-axis or C-axis rotation) is performed for the
feature coordinate index in (2).
The alarm <<Feature coordinate manufacturing mode engaged>> is
triggered when an A-axis, B-axis or C-axis command is issued. Issue a
command with the coordinate values in the feature coordinate system for
the X-axis, Y-axis or Z-axis.
When a command is issued on the same block as G100 and G53.1 in G01
modal, the A-axis, B-axis or C-axis travels at rapid feed.
(Note 13) When a G100 command is issued, the machining load monitor (M340) is
disabled in the machining load monitor function.
2019/09/02 5 - 40 eCOM3NCPR5
Chapter 5 Preparation Function (Canned Cycle)
5.7.2 M140X1/M140X2/M200X3/M300X3
Command format G100 T_ X_ Y_ Z_ R_ A_ B_ C_ L_;
(3)
Home of ATC
(2) (4)
(1) (5)
Single block stop point
T : Tool number (1 – 99), or pot number (101 – 149), or group number (901
5
– 930)
X, Y, A, B and C: Target values for tool change operation and travel along X-, Y-, A-, B-
and C-axes
Travel is rapid feed
Z : Target values for operation (5) and travel is rapid feed.
R : R command is ignored.
L : Specifies the tool number, magazine number and group number after L.
The number specified in L becomes the T modal after G100.
2019/09/02 5 - 41 eCOM3NCPR5
Chapter 5 Preparation Function (Canned Cycle)
(Note 1) Pressing the [RST] key, after the tool change starts and before the X- and
Y-axes start to travel, immediately stops the rotating lathe spindle.
However, when the [RST] key is pressed after the X- and Y-axes start to
travel, the rotating lathe spindle stops after the tool change is completed
up until the single block stop.
(Note 2) The lathe spindle rotation does not stop even when the [FEED HOLD]
switch is pressed during a tool change.
5.7.2.4 Notes
(Note 1) Travels in cutting mode when cycle operation is enabled and (1) and (2),
and (4) and (5) are linked in the cutting mode.
(Note 2) The machine stops after operation (4) when the [RST] key or the [FEED
5 HOLD] switch is pressed between (2) and (4). However, the X-, Y-, A- and
B-axis travel stops immediately at (2). When the C-axis is travelling to the
command position, it also stops immediately in the same way as the X-,
Y-, A- and B-axes.
(Note 3) When the C-axis is operating as the lathe spindle, if the [RST] key
is pressed between (2) and (4), it stops after operation (4) (Stops after the
positioning operation is finished when transitioning from the lathe
spindle rotation operation to the positioning operation for the command
position).
The C-axis does not stop even when the [FEED HOLD] switch is pressed.
(Note 4) The mode cannot be changed between (1) and (4).
(Note 5) It is possible to omit all addresses except the G100 address, but a T code
command has to be issued once before the G100 command is issued.
(Note 6) The tool diameter / nose R compensation is cancelled when the G100
command is issued. In addition, the tool length / tool position offset
(Z-axis) is cancelled starting from (1).
(Note 7) When cutter / nose R compensation travel commands are issued on the
G100 block, the cutter / nose R compensation startup operation is
performed using travel in (2). Regardless of the <Start up/cancel> setting
in the User parameter (Switch 1) the operation is performed following the
Type 1 setting.
(Note 8) The X- and Y- axes compensation is enabled from operation (2) and the
Z-axis compensation is enabled from (5) when the tool length / tool
position offset command is issued on the G100 block.
(Note 9) Only the M code commands listed in the “Simultaneous command M
code” (described later) are valid for the G100 block. The alarm
<<Specified M code cannot be used.>> is triggered when an unlisted or
invalid M code command is issued.
(Note 10) The alarm <<There is no *-axis option>> is triggered if an A-axis, B-axis or
C-axis command is issued when there is no A-axis, B-axis or C-axis
option.
(Note 11) The <ATC simultaneous operation start position> in the <User
parameter> is not used.
(Note 12) The <ATC reference tool length> in the <User parameter> is not used.
Even if the G100 command is issued when the tool length / tool position
offset is cancelled (G49), (1) travels the distance to Z-axis zero position.
2019/09/02 5 - 42 eCOM3NCPR5
Chapter 5 Preparation Function (Canned Cycle)
(Note 13) When a feature coordinate index (G53.1) command is issued on the G100
block, travel (A-axis, B-axis or C-axis rotation) is performed for the
feature coordinate index in (2).
The alarm <<Feature coordinate manufacturing mode engaged>> is
triggered when an A-axis, B-axis or C-axis command is issued. Issue a
command with the coordinate values in the feature coordinate system for
the X-axis, Y-axis or Z-axis.
When a command is issued on the same block as G100 and G53.1 in G01
modal, the A-axis, B-axis or C-axis travels at rapid feed.
(Note 14) When a G100 command is issued, the machining load monitor (M340) is
disabled in the machining load monitor function.
(2) (5) 5
R-point
(1) (7)
Single block stop point
(4)
(6) (5)
T : Tool number (1 – 99), or pot number (101 – 149), or group number (901 – 930).
A, B and C : Target values when moving X-, Y-, A-, B- and C-axes at the same time as the tool
change operation, and travel is rapid feed.
X and Y : Target values for operation (6) and travel is rapid feed.
Z : Target values for operation (7) and travel is rapid feed.
R : Return height position before tool change (operates with tool length offset).
When there is no R command, the user parameter (switch 1) <ATC simultaneous
operation start position> is used as the R command value for operation.
L : Specifies the tool number, pot number and group number after L.
Pot with the corresponding tool is indexed after the tool change in operation (4).
(Next tool preparation operation)
2019/09/02 5 - 43 eCOM3NCPR5
Chapter 5 Preparation Function (Canned Cycle)
Operation
(1) When traveling to the R-point on the Z-axis, the spindle orientation and the pot shutter open
operations are carried out at the same time. When there is a T command, the magazine turns.
Thereafter, the pot falls.
(2) When the Z-axis travels to the ATC zero point and the X- and Y-axes travel to the zero point,
travel to the command values on the A-, B- and C-axes also occurs at the same time.
(3) X- and Y-axes travel to the ATC position.
(4) The arm turns to carry out a tool change operation. When there is an L command, the
magazine turns after the tool change. For the tool change, the operation varies depending on
the settings in the ATC tool screen. For details about the tool change operation, refer to the
tool change operation items.
(5) The Z-axis travels to the R-point and the X- and Y-axes travel to the zero point. The
operations are carried out at the same time when the spindle command (M03 group) is issued.
(6) The X- and Y-axes travel to the command value.
(7) The Z-axis travels to the command value.
5.7.3.1 Notes
(Note 1) During cycle operation, travel connecting (1) and (2) as well as (5) and (7)
on the Z-axis occurs in cutting mode.
(Note 2) When the [RST] key or the [FEED HOLD] switch is pressed during
operation (2), it stops after the Z-axis completes travel to the ATC zero
point. However, the X-, Y-, A-, B- and C-axes travel stops immediately.
5 (Note 3) When the [RST] key or the [FEED HOLD] switch is pressed between
operations (3) and (5), it stops after operation (5). However, the A-, B- and
C-axes travel stops immediately.
(Note 4) Between operations (1) and (6), it does not stop at the single block.
(Note 5) Operation (4) moves onto the next operation without checking the pot
rising, the pot shutter closing or checking the preparations for the next
tool.
(Note 6) The mode cannot be changed between operations (1) and (6).
(Note 7) It is possible to omit all addresses except the G100 address, but a T code
command has to be issued once before the G100 command is issued.
(Note 8) The cutter compensation is cancelled when the G100 command is issued.
In addition, the tool length offset is canceled from (2).
(Note 9) When a cutter compensation command is issued on the G100 block, the
cutter compensation startup operation is performed in (6). Regardless of
the user parameter (switch 1) <Start up/cancel> value, the startup
operation follows the Type 1 (shortcut) setting.
(Note 10) The X- and Y- axes compensation is enabled from operation (6) and the
Z-axis compensation is enabled from operation (5) when the tool length
offset command is issued on the G100 block.
(Note 11) When the G100 command is issued while the tool length offset is
cancelled (G49), the user parameter setting <ATC reference tool length>
compensates for the tool length in operation (1).
(Note 12) When there is no tool length/tool position offset command in the G100
block, the user parameter (switch 1) setting <ATC reference tool length>
compensates for the tool length or position in operation (5).
(Note 13) Only the M code commands listed in the “5.7.4 Simultaneous command M
codes” (described later) are valid for the G100 block. The alarm <<Invalid
command M code>> is triggered when an unlisted or invalid M code
command is issued.
(Note 14) The alarm <<There is no *-axis option>> is triggered if an A-axis, B-axis or
C-axis command is issued when there is no A-axis, B-axis or C-axis
option.
(Note 15) When the Z-axis travel falls for operation (1), the Z-axis does not travel in
operation (1).
(Note 16) When the Z-axis travel rises for operation (7), the Z-axis travels to the
command position for operation (5), and does not travel for operation (7).
(Note 17) It is only possible to intervene manually during a single stop operation at
R-point after operation (5). Manual intervention is not possible during any
other operation.
2019/09/02 5 - 44 eCOM3NCPR5
Chapter 5 Preparation Function (Canned Cycle)
(Note 18) When a feature coordinate index (G53.1) command is issued on the G100
block, travel (A-axis, B-axis or C-axis rotation) is performed for the
feature coordinate index in (2). The alarm <<Feature coordinate
manufacturing mode engaged>> is triggered when an A-axis, B-axis or
C-axis command is issued. Issue a command with the coordinate values
in the feature coordinate system for the X-axis, Y-axis or Z-axis. When a
command is issued on the same block as G100 and G53.1 in G01 modal,
the A-axis, B-axis or C-axis travels at rapid feed.
(Note 19) After the feature coordinate setting, an R command cannot be issued
before the feature coordinate index. Otherwise, the alarm <<Feature
coordinate command error>> is triggered.
(Note 20) When the user parameter (quick table) <Pallet 1 loading> or <Pallet 2
loading> is set to <1:At 1st tool change>, if the R-point position for the
first tool change command (G100/M06) is issued at a position lower than
the machine parameter (system 1) <R-point lower limit for pallet loading
during tool change>, the alarm <<Pallet turn restricted range error>> is
triggered.
(Note 21) When a G100 command is issued, the machining load monitor (M340) is
disabled in the machining load monitor function.
When the tool change is between standard tools, the arm turns at a speed that is set by the machine
parameter (system 3) <Rapid feedrate AT-axis 1>.
When the tool change is between large tools, the arm turns at a speed that is set by the machine
parameter (system 3) <Rapid feedrate AT-axis 2>.
The procedure starts from step 2 when the empty pot is already indexed before the tool change.
For the empty pot index in step 1, an empty pot for a large tool is indexed when the tool change is
for a large tool, and an empty pot for a standard tool is indexed when the tool change is for a
standard tool. In addition, the empty pot is indexed turning in the direction that is closest.
When the tool change is for a large tool, the arm turns for steps 4 and 8 at a speed that is set by the
machine parameter (system 3) <Rapid feedrate AT-axis 2>.When the tool change is for a standard
tool, the arm turns at a speed that is set by the machine parameter (system 3) <Rapid feedrate
AT-axis 1>.
2019/09/02 5 - 45 eCOM3NCPR5
Chapter 5 Preparation Function (Canned Cycle)
(Note 1) When changing from a large to standard tool and there is no empty pot
for the large tool, the alarm <<No empty pot>> is triggered.
(Note 2) When changing from a standard to large tool and there is no empty pot
for the standard tool, the alarm <<No empty pot>> is triggered.
The next tool preparation varies depending on the type of tool that is set on the ATC tool screen.
If the spindle tool type and the next tool type are the same, the specified tool is indexed. However,
if the types are different, an empty pot that is the same type as the spindle tool type is indexed.
When the spindle tool is a standard tool and the next tool is a large tool, an empty pot for a
standard tool is indexed.
When the spindle tool is a large tool and the next tool is a standard tool, an empty pot for a large
tool is indexed.
(Note 1) When preparing for the next tool and changing from a large to standard
tool, if there is no empty pot for the large tool, the alarm <<No empty
5 pot>> is triggered.
(Note 2) When preparing for the next tool and changing from a standard to large
tool, if there is no empty pot for the standard tool, the alarm <<No empty
pot>> is triggered.
2019/09/02 5 - 46 eCOM3NCPR5
Chapter 5 Preparation Function (Canned Cycle)
M code Contents
M408 M408 signal ON
M409 M408 signal OFF
M420 ATC arm turn speed (maximum speed)
M421 ATC arm turn speed (large tool speed)
M432
M422 ATC arm turn speed 1
C-axis unclamp
M430
(Simultaneous command is not possible with QT-axis)
C-axis clamp
M431
(Simultaneous command is not possible with QT-axis)
M435 Magazine rotation top speed
M436 Magazine rotational speed 1
M437 Magazine rotational speed 2
M440 B-axis unclamp
M441 B-axis clamp
M442 A-axis unclamp
M443 A-axis clamp
M444 C-axis unclamp
M445 C-axis clamp
M450 One shot signal output
M451
M455
(Proceeds to the next block after the signal has turned off)
One shot signal output
5
M456 (Proceeds to the next block without waiting for the signal off.)
M460 Waiting for M460 signal ON
M461 Waiting for M460 signal OFF
M462 Waiting for M462 signal ON
M463 Waiting for M462 signal OFF
M464 Waiting for M464 signal ON
M465 Waiting for M464 signal OFF
M466 Waiting for M466 signal ON
M467 Waiting for M466 signal OFF
M468 Waiting for M468 signal ON
M469 Waiting for M468 signal OFF
M474 Coil conveyor automatic mode: Enable
M475 Coil conveyor automatic mode: Disable
M480 M480 signal ON
M481 M480 signal OFF
M482 M482 signal ON
M483 M482 signal OFF
M484 M484 signal ON
M485 M484 signal OFF
M486 M486 signal ON
M487 M486 signal OFF
M490 to M494 Coolant through center ON
M495 Coolant through center OFF
M497 Tool replacement tool washing ON
M498 Tool wash ON
M499 Tool wash OFF
M801 to M899 Signal output * for PLC
M900 to M999 Extend signal output
2-bit BCD signal BCD signal output
The M codes are simultaneously carried out when going up to an R point except the following
cases.
2019/09/02 5 - 47 eCOM3NCPR5
Chapter 5 Preparation Function (Canned Cycle)
When using a turret type ATC mechanism, the following M code is output at the same time while
traveling from the “Distance to Z-axis zero point” to the “Z-axis command point”. When using an
arm type ATC mechanism, the code is output at the same time while traveling from the ATC zero
point to the R-point, after the tool change.
(1) M03 (Spindle forward rotation)
(2) M04 (Spindle backward rotation)
(3) M05 (Spindle stop)
(4) M19 (Spindle orientation)
(5) M111 (Spindle orientation to 180°)
(6) M08 (Coolant pump ON)
(7) M490 to M494 (Coolant through center ON)
When using an arm type ATC mechanism, the following M code is output at the same time while
traveling from the R-point to the “Z-axis command point”, after the tool change. In addition, when
a command is issued at the same time as a canned cycle (G100) for a tool change while in memory
operation, it is valid after the magazine turn operation in preparation for the next tool. However, if
a command is issued at the same time while in MDI operation, the alarm <<Specified M code
cannot be used>> is triggered.
• M435 to M437 (specify maximum magazine turn)
Output of an M signal to wait for MFIN is always accepted during ATC. However, if no MFIN is
input before the Z-axis finishes moving down to the R point (Z-axis zero point), the MFIN is
5 waited. After the MFIN is input, the Z-axis moves down to the commanded position.
ATC home
If the <Multiple M codes in one block> of the <user parameter> is set as <1: Yes>, up to 3 codes
can be commanded in the same block.
However, only one of the 2-bit BCD signals, signal outputs (M801 to M899) to PLC, and
expansion signal outputs (M900 to M999) can be commanded.
In addition, if M codes which work simultaneously are commanded at the same time, they are
output simultaneously. If you want to know the order of output, command them separately in
multiple blocks.
2019/09/02 5 - 48 eCOM3NCPR5
Chapter 5 Preparation Function (Canned Cycle)
If the <Automatically use (S or F) command when changing tool> is set as <1:Yes> each value set
in the tool data for the tool in the spindle is automatically updated and output in automatic tool
change.
In addition, if a command is already in a same block of a program in NC, it is first commanded
prior others.
(Note 1) The spindle speed can only be automatically set when the constant
peripheral speed control is cancelled (G97). The automatic setting does
not perform when the constant peripheral speed is being controlled
(G96).
(Note 2) Feed rate can be automatically set only when the feed per minute is set
(G94). It is not automatically set when the rotational speed is set (G95).
(Note 3) If spindle rotational speeds and feed rates in the tool data are not set, the
spindle moves in the current S/F mode.
(Note 4) If dialogue tools are changed by a pot number command, the spindle
rotational speed and feed rate are considered as unset and the spindle is
5
moved in the current S/F mode.
2019/09/02 5 - 49 eCOM3NCPR5
Chapter 5 Preparation Function (Canned Cycle)
G36
Command format : X_ Y_ I_ J_ K_ P_ Q_;
5 G39
2019/09/02 5 - 50 eCOM3NCPR5
Chapter 5 Preparation Function (Canned Cycle)
5
50
30
X
( 0, 0 )
(Note) Coordinate values are measured counterclockwise from the start point.
2019/09/02 5 - 51 eCOM3NCPR5
Chapter 5 Preparation Function (Canned Cycle)
20
20
20
20
20
30
X
(0, 0)
45
30
15
X
( 0, 0 ) 20 40 60
2019/09/02 5 - 52 eCOM3NCPR5
Chapter 5 Preparation Function (Canned Cycle)
5
25
30
(0, 0) X
20
(Note 1) The coordinates for the reference point are also output.
(Note 2) The direction of the X-axis is obtained from the reference point.
2019/09/02 5 - 53 eCOM3NCPR5
Chapter 5 Preparation Function (Canned Cycle)
X
0 50
5
Drilling 6 holes along the circumference of a circle of 50 radius.
:
N100 G81R2.Z-10.F1000K0;
N105 G36X0.Y0.I50.J0.K6P6.;
:
N100 memorizes canned cycle data, and N105 calculates coordinates to drill holes at the specified
position.
2019/09/02 5 - 54 eCOM3NCPR5
Chapter 6 Macro
CHAPTER 6
MACRO
• Variables function
• Calculation function
• Control function
• Call function
Examples of combination of the functions are shown below (Examples 1 and 2).
How to create a macro program is described on the following pages.
N01 G90G0G54.....;
N02 ;
•
•Machining program
•
N50 #100=#100+1; (count up)
N51 IF[#100LT10] GOTO 55; (go to N55 if the content of #100 is less that 10))
N53 M200; (detects tool break)
6 N54 #100=0; (clear counter)
N55 M30;
• Main program
N01 G90G54G0Z30.;
N02 G65P0042X-100.Y-100.R50.Z-3.W2.U0.V30.F1000;
N01 G90G0X[#24+COS[#21]*#18]Y[#25+SIN[#21]*#18];
N02 Z#23;
N03 G1Z#26F#9;
N03 G3X[#24+COS[#22]*#18]Y[#25+SIN[#22]*#18] R#18;
N04 G0Z#23;
N05 M99;
N01
50
N03
30°
Local variables are unique to respective macro program call level. When a macro program is
called, the local variables of the calling program are saved, and the area for new local variables is
prepared for the called macro program.
Local variables and levels are described in 6.5 Call Function.
Common variables can be called and written from any program and level.
Detailed specifications are given in the table below.
Types of variables
Variable No. Variable type Function
#0 Always empty Always empty; cannot enter a value.
#1 to #33 Local variables Used uniquely on respective levels of a macro program.
Initialized to the empty status when power is turned off.
The range of variables that can be input into local variables
is:
-1.0×1099 to -1.0×10-99, 0, 1.0×10-99 to 1.0×1099
(Note) All digits are not necessarily displayed on
the screen but actual variables can be
represented in the above range.
#100 to #199 Common Used in all different macro programs commonly. Initialized
variables to the empty status when power is turned off.
The range of variables that can be input into these common
variables is:
6
-1.0×1099 to -1.0×10-99, 0, 1.0×10-99 to 1.0×1099
(Note) All digits are not necessarily displayed on
the screen but actual variables can be
represented in the above range.
Initialization is also carried out if
<Conversation/NC language change> is
changed in the <user parameter>.
#500 to #999 Used in all different macro programs commonly.
The data is retained when power is turned off.
The range and number of significant digits of variables that
can be input into these common variables is:
(When the minimum set unit is type 1)
Metric: -999999.999 to 999999.999
(6 digits for integer and 3 for fractional portion)
Inch: -99999.9999 to 99999.9999
(5 digits for integer and 4 for fractional portion).
(When the minimum set unit is type 2)
Metric: -999999.9999 to 999999.9999
(6 digits for integer and 4 for fractional portion)
Inch: -99999.99999 to 99999.99999
(5 digits for integer and 5 for fractional portion).
When substituting a variable with a large number of
significant digits at the fractional portion, the fractional
portion is rounded to the above number of digits.
(Note) When an attempt was made to assign a value that exceeds the variable
range, the alarm <<Macro command error>> is triggered.
To display macro variables, press [3][ENT] on the Data Bank Menu screen. Alternatively, select
Menu No. 3 with the cursor and press the [ENT]key.
The values of common variables (#100 to #199 and #500 to #999) and local variables can be
referenced and/or changed.
• Display of values
The values of common variables from #100 to #199 and all local variables are displayed only
when these variables are within the range given below.
The display turns < *********** > if these ranges are exceeded.
All digits are not necessarily displayed even though the value is within the above range.
The rounded figures are shown on the display. The value appearing on the screen may therefore
differ from the actual variable.
6
6.2.6 System Variables
6.2.6.1 Interface I/O Signals
Signal input #1000 to #1031 R
Signal input #1200 to #1231 R
Signal input #1232 to #1263 R
Signal input #1264 to #1295 R
Signal output #1100 to #1131 R/W
Signal output #1300 to #1331 R/W
Signal output #1332 to #1363 R/W
Signal output #1364 to #1395 R/W
Signal batch read #1032 R
(#1000 to #1031) (32-bit)
Signal batch read #1033 R
(#1200 to #1231) (32-bit)
Signal batch read #1034 R
(#1232 to #1263) (32-bit)
Signal batch read #1035 R
(#1264 to #1295) (32-bit)
Signal batch write #1132 R/W
(#1100 to #1131) (32-bit)
Signal batch write #1133 R/W
(#1300 to #1331) (32-bit)
Signal batch write #1134 R/W
(#1332 to #1363) (32-bit)
Signal batch write #1135 R/W
(#1364 to #1395) (32-bit)
[Typical application]
Signals are output from a program to port 10 of standard terminal block.
Assign #1100 to port 10 of the standard terminal block with <External Output Signal> of
<External I/O Signal>.
• Write a command as follows on the program to output signals to port 10 of the standard
terminal block.
•
•
#1100=1;
•
•
(Note 1) When commanded during cutter compensation, the tool moves to where
an offset vector is set vertically perpendicular to the direction of travel of
the previous axis travel.
(Note 2) If characters other than single-byte alphabet and numbers are described,
the operation is not guaranteed.
(Note) When commanded during cutter compensation, the tool moves to where
an offset vector is set vertically perpendicular to the direction of travel of
the previous axis travel.
6
6.2.6.6 Time
Time 1 #3001 R/W Timer in the unit of 10msec.
Clears after 42949672.96 sec (ca. 497 days). Cleared to
zero on turning power on, and counts continuously.
Time 2 #3002 R/W Timer in the unit of 10msec.
Clears after 42949672.96 sec (ca. 497days). Counts the
time when activation LED is lit (STL).
The value is retained when power is turned off.
Date #3011 R Current date
Ex) January 20, 2007
#3011 = 20070120 (Note 1)
Hour #3012 R Current time (24-hour system)
Ex) 4H 17M 5S pm
#3012 = 161705 (Note 2)
(Note 1) The alarm <<Macro Command Error>> occurs when you attempt to
substitute data (#3011) in common variables (#500 to #999).
(Note 2) The alarm <<Macro Command Error>> occurs when you attempt to
substitute hour (#3012) in common variables (#500 to #999) when
<Machine unit system> of <user parameter> is set to <1: Inch>.
#3003
• The default value 0 appears when turning power on.
• Turns 0 on resetting and with M30.
• The control goes to the next block without waiting for MFIN if this is set to <Does Not Wait>.
MFIN OFF is not checked before outputting an M signal.
When <Does Not Wait> is set, output time of M signals is set as < External signal output time
when MFIN is invalid> of <user parameter>.
• When M signal blocks run successively with MFIN set to <Does Not Wait>, the next M signal
is output after time elapse of the above parameter.
#3004
• The default value 0 when turning power on.
• Turns 0 on resetting and with M30.
• When feed rate override is selected to Invalid, override is fixed at 100% irrespective of feed
rate override on the operation panel.
• Spindle override and rapid feed override are also fixed at 100%.
#4113
• The M code returns the M number commanded immediately before.
The number of the last stated M code in the block is given when two or more M codes are
commanded in a block, in the case when <Multiple M codes in one block > of <user
parameter> is selected to <Yes>.
#4114
• Sequence Number returns the N number commanded immediately before.
(Not the block number currently being executed)
N90 #100 = 0;
N100 #100 = #4114:
When commanded as above, 90 is substituted in #100.
#4115
• Program number returns the subprogram number when it is being executed.
#4120
• Pot number command value (101 to 1nn) is returned when T code is commanded by pot
number. Group number command value (901 to 930) is returned when T code is commanded
by group number.
2019/09/02 6 - 10 eCOM3NCPR6
Chapter 6 Macro
#5001 to #5008, #5021 to #5028, #5041 to #5048, #5061 to #5068, #5081 to #5088, #5101 to
#5108, and #5161 to #5168 read the value of X, Y, Z, and additional axes, respectively. 6
#5031 to #5034, #5051 to #5054, #5071 to #5074, #5111 to #5114, and #5171 to #5174 read the
value of PLC1 to 4 axes, respectively.
Read while Traveling is specified No for current position, tool length offset, and servo deviation in
the above table for reasons that the value cannot be warranted because it reflects the result of
look-ahead.
To be specific:
X-10.;
X-10.;
X-10.;
#100 = #5021;
•
•
In the above blocks, for example, the macro command looks ahead while the axes are traveling,
and thus the position of axes in transit rather than the travel end position in the preceding block is
read.
0 : Cap designation
1 to 99 : Tool number set in the NC language mode
1001 to 1099 : Tool number set in the interactive mode
Empty : Undefined
2019/09/02 6 - 11 eCOM3NCPR6
Chapter 6 Macro
2019/09/02 6 - 12 eCOM3NCPR6
Chapter 6 Macro
2019/09/02 6 - 13 eCOM3NCPR6
Chapter 6 Macro
To specify precedence of calculation different from the above general rule, you may use square
brackets ([ ]).
Up to five sets of square brackes, including those of the function, can be used.
2019/09/02 6 - 14 eCOM3NCPR6
Chapter 6 Macro
2019/09/02 6 - 15 eCOM3NCPR6
Chapter 6 Macro
n : Sequence No.
The alarm <<No applicable sequence>> occurs when the specified sequence number n is not in the
range between 1 and 99999, or there is no such sequence number.
Sequence number may be specified by an equation.
Ex) N1 GOTO 3;
N2 GOTO #10;
N3 ;
6 N2 (sequence No. 2) is skipped unconditionally.
If N2 is executed, the control skips to the sequence number of the value of #10.
GOTO instruction is effective within the program to which it belongs. It acts on the first sequence
number that it encounters in the program in the direction toward the end of the program. On
reaching the end of the program, the search starts from the beginning of the program.
n : 1~99999
The control branches to the sequence number n when the conditional equation is satisfied. If not,
the succeeding block is executed.
Types of conditional equations are described below.
2019/09/02 6 - 16 eCOM3NCPR6
Chapter 6 Macro
Ex)
:
:
(1) IF[#100 EQ 50] GOTO 123;
:
:
(2) IF[#101 GT 102] GOTO 123;
:
:
(3) GOTO 124;
:
:
(4) N123;
:
:
(5) N124;
:
:
m = 1~4
END m;
2019/09/02 6 - 17 eCOM3NCPR6
Chapter 6 Macro
:
WHILE [#100 LT 10] DO 1;
:
:
WHILE [#101 EQ 50] DO 1;
:
:
END 1;
:
The identifier m(m=1 to 4) may be used as many times as you want provided that the one-to-one
relationship is maintained.
:
WHILE [#100 LT 10] DO 1;
:
:
END 1;
6 :
:
WHILE [#101 EQ 50] DO 1;
:
:
END 1;
:
(Note 2) You may not cross DOm and ENDm in WHILE instructions.
The alarm <<Macro Command Error>> occurs.
:
WHILE [#100 LT 10] DO 1;
:
:
WHILE [#101 EQ 50] DO 2;
:
:
END 1;
:
:
END 2;
:
2019/09/02 6 - 18 eCOM3NCPR6
Chapter 6 Macro
:
WHILE [#100 LT 10] DO 1;
:
:
WHILE [#101 LT 20] DO 2;
:
:
WHILE [#102 LT 30] DO 3;
:
:
WHILE [#103 LT 40] DO 4;
:
4-fold Double
: Single
Triple
END 4;
:
:
END 3;
:
:
END 2;
: 6
:
END 1;
:
:
2019/09/02 6 - 19 eCOM3NCPR6
Chapter 6 Macro
WHILE [#101 EQ 0] DO 1;
:
:
IF[#101 LT 10] GOTO 123;
:
:
END 1;
:
:
N123;
2019/09/02 6 - 20 eCOM3NCPR6
Chapter 6 Macro
This function is used to help create a unique canned cycle for when the user wishes to repeat the
same operation.
Macro program calling (G65, G66 and G code or M code that is registered in the data bank <G/M
code macro>) can be executed in memory operation mode call, but it cannot be executed from
MDI operation.
The macro program that is called returns to the calling source when M99 is executed.
When the macro program executes M02 or M30 (program end), the program ends without
returning to the calling source. (Memory operation ends.)
G65
G65
M99 M02
Returns Ends
6
A macro program can call other macros with G65/G66. This parental relationship is available for
up to 4 generations (4-fold multiplicity of macro program; this is referred to as multi-layered call).
When calling a macro program, the source program may deliver arbitrary numerical values to the
called program as argument.
Macro program call commands (G65 and G66) are similar to call subprogram (M98). The
difference is described in detail later.
These call functions are described below.
Ex. 1)
G65 P200;
This calls program No. 200 once.
Ex. 2)
G65 P200L2;
is the same as:
G65 P200;
G65 P200;
Program No. 200 is called twice in either case.
2019/09/02 6 - 21 eCOM3NCPR6
Chapter 6 Macro
Modal call is registered by G66 command. Registration is canceled by G67 command. Once modal
call is registered, the designated macro program is executed after axes travel each time an axis
travel is commanded.
Ex. 1)
G66 P10; (1) Register No. 10 ready for call
G01 X-10.0Y-10.0; (2) Call No. 10 after execution
G01 X-1.0Y-1.0; (3) Call No. 10 after execution
6 G67; (4) Cancel registration
G01 X-10.0Y-10.0; (5) Do not call
G01 X-1.0Y-1.0; (6) Do not call
Program No. 10 is called once after executing (2). It is also called once after executing (3). The
program is not called after execution of (5) and (6).
(Note 5) More than 2 G/M code macro commands cannot be used on the same
block. Otherwise, the alarm <<Invalid command>> is triggered.
2019/09/02 6 - 22 eCOM3NCPR6
Chapter 6 Macro
(O0001) (O0002)
G0X#24Y#25;
G28Z#26;
G0Z[#26+10.0];
G200X-100.Y-100.Z300.S3000; G1Z#26M3S#19F1000;
M30; M99;
xxx : G code number registered in the data bank as a <G/M code macro>
However, 0, 65, 66 and 67 cannot be used.
L : Number of repeated calls (9999 times or less)
If omitted, it is processed as 1 time (Refer to G65 description).
Commands cannot be given during extended memory operation/tape
operation.
(Argument) : Data transferred to the macro. Omission is possible.
6
In order to use G code macro calling, preset the following parameters noted in <G/M code macro>
in the data bank.
When an M98, G65 or G66 command is issued inside the macro program that is called using a G
code, the program is called from a folder that is set in <G code macro program folder>. In addition,
a macro call using G code cannot be used inside a program that is called. The system G code
operation is carried out.
(Note 1) The program restrictions or the conditions that trigger an alarm, and the
modal display or the conditions that cancel a modal are processed in the
same way as a simple call (G65P****) or a modal call (G66P****) depending
on the <Call method>.
(Note 2) If the G code number used in a macro call overlaps with a G code number
that is used in the system, the macro call operation takes precedence.
(Note 3) A macro call using G code cannot be used inside a macro program that is
called using G code. The system G code operation is carried out.
(Note 4) When a macro call using M code is carried out inside a macro program
that is called using G code, the system M code operatin is carried out
when the <Macro program call control type> is set to type 1. The macro
program is called when it is set to type 2.
(Note 5) More than 2 G/M code macro commands cannot be used on the same
block. Otherwise, the alarm <<Invalid command>> is triggered.
(Note 6) After a G code based macro is called when the <Call type> is set to <1:
Type 2>, the G code based macro call cannot be used until the modal call
is canceled (G67 command is executed).
2019/09/02 6 - 23 eCOM3NCPR6
Chapter 6 Macro
(Note 7) When there is a G66 command inside the macro program that is called
using a G code, if a travel axis command is issued after the macro
program call is registered, the program is called from a folder that is set
in <G code macro program folder>.
(Note 8) In the following situations, operation is carried out according to the G
code in the system even if executed in MDI operation mode.
• When <System G/M code calling during MDI operation> is set to <1:
Call>
• When executing after switching to MDI operation mode while a macro
program called by G code is running
• When executing after switching to MDI operation mode while a macro
program called by M code is running (when <Macro program call
control type> is set to <0: Type 1>)
(O0001) (O0002)
G0X#24Y#25;
G28Z#26;
G0Z[#26+10.0];
G1Z#26M3S#19F1000;
M200 X-100. Y-100.Z300.S3000;
6
M99;
M30;
In order to use M code macro calling, preset the following parameters noted in <G/M code macro>
in the data bank.
When an M98, G65 or G66 command is issued inside the macro program that is called using an M
code, the program is called from a folder that is set in <M code macro program folder>. In addition,
a macro call using M code cannot be used inside a program that is called. The system M code
operation is carried out.
(Note 1) The program restrictions or an alarm, and the modal display or the
conditions that cancel a modal are processed the same way as a simple
call (G65P****).
2019/09/02 6 - 24 eCOM3NCPR6
Chapter 6 Macro
(Note 2) If the M code number used in a macro call overlaps with an M code
number that is used in the system, the macro call operation takes
precedence.
(Note 3) A macro call using M code cannot be used inside a macro program that is
called using M code. The system M code operation is carried out.
(Note 4) When a macro call using G code is carried out inside a macro program
that is called using M code, the system G code operatin is carried out
when the <Macro program call control type> is set to type 1. The macro
program is called when it is set to type 2.
(Note 5) More than 2 G/M code macro commands cannot be used on the same
block. Otherwise, the alarm <<Invalid command>> is triggered.
(Note 6) When there is a G66 command inside the macro program that is called
using an M code, if a travel axis command is issued after the macro
program call is registered, the program is called from a folder that is set
in <M code macro program folder>.
(Note 7) In the following situations, operation is carried out according to the M
code in the system even if executed in MDI operation mode.
• When <System G/M code calling during MDI operation> is set to <1:
Call>
• When executing after switching to MDI operation mode while a macro
program called by M code is running
• When executing after switching to MDI operation mode while a macro
program called by G code is running (when <Macro program call
control type> is set to <0: Type 1>)
Method 1:
Arguments are specified with all addresses except G, L, N, O, and P.
Address for specifying arguments Variables in macro
A #1
B #2
C #3
D #7
E #8
F #9
G -
H #11
I #4
J #5
K #6
L -
M #13
N -
O -
P -
Q #17
R #18
S #19
T #20
U #21
V #22
W #23
X #24
Y #25
Z #26
2019/09/02 6 - 25 eCOM3NCPR6
Chapter 6 Macro
Method 2
Number of repeats of I, J, and K and A, B, and C can be specified.
Address for specifying arguments Specified number of repeats Variables in macro
A 1 #1
B 1 #2
C 1 #3
I 1 #4
J 1 #5
K 1 #6
I 2 #7
J 2 #8
K 2 #9
I 3 #10
J 3 #11
K 3 #12
I 4 #13
J 4 #14
K 4 #15
I 5 #16
J 5 #17
K 5 #18
I 6 #19
J 6 #20
K 6 #21
I 7 #22
6 J 7 #23
K 7 #24
I 8 #25
J 8 #26
K 8 #27
I 9 #28
J 9 #29
K 9 #30
I 10 #31
J 10 #32
K 10 #33
2019/09/02 6 - 26 eCOM3NCPR6
Chapter 6 Macro
Main program Program 8010 Program 8020 Program 8030 Program 8040
6
M30; M99; M99; M99; M99;
Local variables Local variables Local variables Local variables Local variables
for level 0 for level 1 for level 2 for level 3 for level 4
#1 #1 #1 #1 #1
• • • • •
• • • • •
#4 #4 3.0 #4 5.0 #4 7.0 #4 9.0
#5 #5 4.0 #5 6.0 #5 8.0 #5 10.0
• • • • •
• • • • •
#9 #9 #9 #9 #9
#11 #11 #11 #11 #11
#13 #13 #13 #13 #13
#17 #17 #17 #17 #17
• • • • •
• • • • •
#33 #33 #33 #33 #33
2019/09/02 6 - 27 eCOM3NCPR6
Chapter 6 Macro
G90;
:
POPEN;
BPRNT[#100[3]];
DPRNT[#2[63]];
PCLOS;
:
M30;
6 6.6.1 POPEN
This command links with an external connection. Specify this command prior to respective
commands of BPRNT, DPRNT, and PCLOS.
(Note 1) If POPEN is specified when the POPEN state has already been
established, it is ignored.
(Note 2) When connecting to a <Memory card>, be sure to keep the memory card
inserted without removing it until the PCLOS command or the program is
finished.
2019/09/02 6 - 28 eCOM3NCPR6
Chapter 6 Macro
6.6.2 BPRNT
This command executes an output of characters and a binary output of macro variable values.
(Note 1) The alarm << POPEN is unable. >> occurs if BPRNT is commanded
without first commanding POPEN.
(Note 2) Add the “end of block” code at the end of output data.
1. Output of characters
The following characters are output as they are.
Alphabets “A” to “Z”
Numbers “0” to “9”
Symbols “(” “)” “=” “/” “.” “+” “,” “-” “?”
BPRNT example:
44 41 D4 41 A0 D8 A0 00 00 30 3A 59 A0 FF FF CF C6 5A A0 00 00 00 00 8D 0A
DATA SP X SP 12346 Y SP -12346 Z SP 0 CR,LF
2019/09/02 6 - 29 eCOM3NCPR6
Chapter 6 Macro
6.6.3 DPRNT
This command executes an output of characters and a character string output of macro variable
values.
Command
format DPRNT [ xx #xx [x x] … ];
(Note 1) The alarm << POPEN is unable. >> occurs if DPRNT is commanded
without first commanding POPEN.
(Note 2) Add the “end of block” code at the end of output data.
1. Output of characters
Same as the BPRNT command. Refer to 1. Output of Characters, 6.6.2 BPRNT.
A space code is output for the high-order zero and a positive sign if the <leading zero suppression
(DPRNT)> of the <Communication parameter> is set to <0: Type 1>. Nothing is output if <1:
Type 2>.
When the number of digits after decimal point is other than 0, the decimal point and a value after
decimal point are always output. If the number of digits after decimal point is 0, the decimal point
is not output.
2019/09/02 6 - 30 eCOM3NCPR6
Chapter 6 Macro
DPRNT example:
(1) <Leading zero suppression (DPRNT)> of <Communication parameter> is set to <0: Type 1>
D8 A0 2D A0 B1 B2 33 2E B4 35 36 59 A0 A0 B2 33 2E B4 36 5A A0 A0 A0 30 A0 2D 2E B4 8D 0A
30 36
X SP -SP123.4560 Y SP SP23.46 Z SP SPSP0 SP -.46 CR,LF
(2) <Leading zero suppression (DPRNT)> of <Communication parameter> is set to <1: Type 2>
D8 A0 2D B1 B2 33 2E B4 35 36 30 59 A0 B2 33 2E B4 36 5A A0 30 A0 2D 2E B4 36 8D 0A
X SP -123.4560 Y SP 23.46 Z SP 0 SP -.46 CR,LF
6.6.4 PCLOS
This command cancels the link with the external connection. Specify this command after 6
respective commands of POPEN, BPRNT, and DPRNT.
When PCLOS is specified, if the data output by the BPRNT or DPRNT command is underway, the
PCLOS processing is executed after the data output is completed.
(Note) If PCLOS is specified when the PCLOS state has already been
established (including the state in which POPEN is not executed), it is
ignored.
The external output file saves the output data from POPEN to PCLOS inside the program, or until
the program finishes.
A new output data file is created when an external output file with the same date does not exist in
the memory card. When an external output file with the same date exists, it is added to the file
with the largest sequence number.
When the file size exceeds 20 MB for POPEN, a file with the next available sequence number is
created and saved.
2019/09/02 6 - 31 eCOM3NCPR6
Chapter 6 Macro
A maximum of 100 external output files with the same date can be saved.
However, if a “yyyymmdd_99.log” file already exists when creating a file, the alarm <<External
output file cannot be created.>> is triggered and the file cannot be saved.
Even if there is an available number in the middle of the sequence, it is skipped over and the next
biggest number is used. As a result, even when the maximum (100) is not exceeded, the same
alarm is triggered and the file cannot be saved.
If there is not enough space available on the memory card and the file cannot be saved, the alarm
<<Memory overflow (Memory card)>> is triggered.
The data that is output to the external output file can be opened using software that supports the
following file formats.
Data output using BPRNT command: Binary format
Data output using DPRNT command: Text format
(Note) The output data is added even if the external output file attributes that
exist in the memory card are changed to reading only.
The external output file uses the APPE command to save the output data from POPEN to PCLOS
inside the program, or until the program finishes.
(Note 1) A server that supports the APPE command needs to be specified for the
server used for saving.
(Note 2) This machine cannot be specified as a server for saving.
A new output data file is created when an external output file with the same date does not exist in
the <Output folder>. When an external output file with the same date exists, it is added to the file
with the largest sequence number.
When the file size exceeds 20 MB for POPEN, a file with the next available sequence number is
created and saved.
A maximum of 10000 external output files with the same date can be saved.
However, if an “SSSSSyyyymmdd_9999.log” file already exists when creating a file, the alarm
<<External output file cannot be created.>> is triggered and the file cannot be saved.
Even if there is an available number in the middle of the sequence, it is skipped over and the next
biggest number is used. As a result, even when the maximum (10000) is not exceeded, the same
alarm is triggered and the file cannot be saved.
The data that is output to the external output file can be opened using software that supports the
following file formats.
Data output using BPRNT command: Binary format
Data output using DPRNT command: Text format
When there are a lot of files inside the output folder, it may take some time to process them.
In addition, it may take some time for a reply depending on the server and network configuration.
Therefore, we recommend using a high speed server and network when possible.
2019/09/02 6 - 32 eCOM3NCPR6
Chapter 6 Macro
BPRNT[#[#100][1]];
DPRNT[#100[#1]];
(Note 8) If the following operations are performed before the PCLOS command is
executed, the communication is blocked without carrying out the PCLOS
processing when connected to a <General COMM device>.When
connected to an <FTP server> and a PCLOS command is processed, the
connection to the FTP server is severed. 6
When connecting to a <General COMM device>
• [RST] key is pressed
• Operation is reset (except operation reset by M30)
When connecting to a <Memory card>
• [RST] key is pressed
• Operation reset
• Running program is stopped due to alarm (stop level 3 or higher)
• Running program is stopped when alarm (stop level 2 or higher) is
triggered
When connected to an <FTP server>
• [RST] key is pressed
• Operation reset
• Running program is stopped due to alarm (stop level 3 or higher)
• Running program is stopped when alarm (stop level 2 or higher) is
triggered
2019/09/02 6 - 33 eCOM3NCPR6
Chapter 6 Macro
Insert M99 command to return from an interrupt macro to the main program. The sequence
number in the main program to return to can be specifed using P address.
6 In addition to use of M97, the following operations cancel interruption:
・ Operation reset
・ Commanding M02 (M30)
M97 is effectively commanded in an interrupt program or in a program called from an interrupt
program.
(O0001) (O1000)
Interrupt
signal
M96 P1000; → ignored
Interrupt signal
M97;
With P command
Interrupt signal is not
accepted hereafter
Interrupt
N0200;
signal
→ ignored
M30;
2019/09/02 6 - 34 eCOM3NCPR6
Chapter 6 Macro
Interrupt
(O0001) (O2000) signal
(O1000)
M96 P1000;
M98 P2000;
(Note 4) The alarm <<Interrupted program call error>> occurs at the time of calling
an interrupt program when an interrupt signal is detected during
execution by G65/G66/M98 of subprogram specified as interrupt program.
M96 P1000;
Alarm <<Interrupted program call
error>> occurs
6
M98 P1000;
M30; M99;
(Note 5) The alarm <<Interrupted program call error>> occurs at the time of calling
an interrupt program when an interrupt signal is detected during
execution of a subprogram which parent program is the subprogram
specified in the interrupt program.
Interrupt signal
(Note 6) The alarm <<Subprogram call error>> occurs when calling the parent
program from an interrupt program which has been called during
execution of a subprogram.
Interrupt
(O0001) (O1001) signal (O1000) Alarm <<Subprogram
call error>> occurs
M96 P1000;
M98 P1001;
M98 P1001;
2019/09/02 6 - 35 eCOM3NCPR6
Chapter 6 Macro
(Note 7) When the total program size that is loaded (including the interrupt
program size) exceeds the size that is set in the user parameter (switch 1)
<Program load size>, the machine operates in the extended memory
operation mode. In this mode, the operation may stop for a time period
equivalent to the time required for loading if the size of the interrupt
program is large.
(Note 8) You may specify the interrupt program number using macro variables.
Refer to 8.3 Simple Call Function, Chapter 8 Subprogram Function.
When NC statements are included in the interrupt program or subprogram / macro program
called from the interrupt program, the commands included in the interrupted block are lost,
and the source program re-starts from the block next to the affected block on returning to the
source program.
6
Ordinary program
This portion not executed
Interrupt program
NC statement exists
In the absence of NC statements, the commands in the suspended block continue on returning
to the source program.
Ordinary program
Remainder executed
Interrupt program
No NC statement
Macro statements up to the first NC statement in the interrupt program or subprogram / macro
program called from the interrupt program are processed in parallel with the currently
executed block.
Timing of start of processing of macro statements may differ depending on the contents of the
currently executed block.
2019/09/02 6 - 36 eCOM3NCPR6
Chapter 6 Macro
Ordinary program
Interrupt program
Execute macro Execute NC statement
statement only
Ordinary program
6
Interrupt program Execute macro
statement only Execute NC statement
Multiple operation commands are listed below. All other commands are single operation
commands.
• Reference point return (G28/G29/G30)
• Canned cycle (G73 to G89, G177 to G189)
• Tool replacement canned cycle (G100/M06)
• Coordinate calculation function (G36 to G39)
For both types of interruption, blocks after the first NC statement are executed after completion of
the currently executed block.
Refer to 6.7.6 Macro Statement and NC Statement for the detailed description of NC and macro
statements.
2019/09/02 6 - 37 eCOM3NCPR6
Chapter 6 Macro
In either type of call, the call does not increase multiplicity of subprogram / macro call.
Subprogram / macro call conducted in an interrupt program increases respective multiplicity.
Interrupt signal
ON
OFF
2019/09/02 6 - 38 eCOM3NCPR6
Chapter 6 Macro
(O0001) (O1000)
M96 P1000; G91
G90 M05;
M03 S1000
Interrupt signal
Without P
command
Modal before
interrupt restores
except M code
modal
M99;
6
2. Returning with M99PXXXX (with a sequence number specified)
Modal information, modified in the interrupt program, is valid as it is modified.
You can reference the modal information used before interruption using system variables
#4401 to #4530.
(O0001) (O1000)
Interrupt signal M96 P1000;
N0200;
With P
command
Modal as modified in
interrupt program is valid
M99 P0200;
2019/09/02 6 - 39 eCOM3NCPR6
Chapter 6 Macro
Interrupt occurs B0
A0
Program path
Refer to the “6.7.6 Macro Statement and NC Statement” for the detailed description of NC
statement.
* Only when <User parameter> <Macro command single stop> is selected to <0: No>.
Blocks that do not conduct Single Block Stop in single operation may be said macro statement and
those that do conduct Single Block Stop NC statement.
2019/09/02 6 - 40 eCOM3NCPR6
Chapter 6 Macro
6.7.7 Restrictions
1. The alarm <<Specified G code cannot be used>> occurs when interrupting in the
programmable mirror image (G51.1), rotational transformation (G68), or scaling (G51) mode
and commanding the same programmable mirror image (G51.1), rotational transformation
(G68), or scaling (G51) again in the interrupt program.
2. When <Interrupt macro interrupt type> is set to type 2 and macro program modal call (G66)
and interrupt type macro (M96) are modals, if an interrupt signal is detected during a travel
axis command, the interrupt type macro (M96) is given priority and called. The registered
macro program will not be called in the modal call (G66).
3. Macro modal call (G66) is canceled on calling an interrupt program. G66 must be commanded
in the interrupt program if you wish to perform macro modal call in the interrupt program.
4. The interrupt program is executed after finishing search when an interrupt signal is detected
during search of sequence number of GOTO instruction, END instruction of WHILE – END,
and sequence number of M98Hxxxx and M99Pxxxx.
5. Interrupt signals, which are detected during search of the block specified by program restart
(Sequence Search), are ignored.
6. Interrupt signals, which are detected during search of the block specified by program restart
(Restart) and during return operation, are ignored.
7. When an interrupt signal is detected during a dwell, the interrupt program is executed after the
dwell. 6
8. When an interrupt signal is detected while waiting for ON/OFF of BCD signal output and M
signals of M460, etc., the interrupt program is executed after detecting ON/OFF of the waiting
signal.
9. The alarm << High accuracy A (or B) invalid command >> occurs when commanding M96 in
the high accuracy mode. The alarm << High accuracy A (or B) invalid modal>> occurs when
commanding a high accuracy mode (M260 / M261 / M262 / M265) in the M96 modal.
10. When an NC statement is included in the interrupt program or subprogram / macro program
called from an interrupt program, the M99 command block for returning from the interrupt
program to the original program will perform single block stop in the case of single operation.
11. When the door opens for safety reasons, the interrupt type macro function does not enable.
Refer to “Door Interlock” in the Operation Manual (Operation) for further details on door
open definition.
12. The following operations do not apply: mirror image, scaling, rotational transformation, cutter
compensation and nose R compensation, when performing axis travel for an interrupt program,
and within a sub program / macro program that is called from an interrupt program.
13. It returns to the original path from the second travel operation after the return operation when
an interrupt occurs during a cutter compensation operation and nose R compensation operation
and when there is an NC statement in the interrupt program, and within a sub program / macro
program that is called from an interrupt program.
14. When the item <Interrupt type macro interrupt system> is set to <0: Type 1> (interrupts by
cancelling execution), if travel for tool length offset and for tool position compensation is lost
due to the interruption, compensation will not be executed until the next Z-axis travel
operation, and until the next X-, Y- and Z-axes travel operation.
2019/09/02 6 - 41 eCOM3NCPR6
Chapter 6 Macro
15. Even if the following keys are pressed: [MANU], [MDI] and [EDIT] between the time when
the interrupt signal is detected until the end when the interrupt program is executed with M99,
the alarm <<Interrupt type macro execution is being prepared>> is displayed and the mode
cannot be changed.
16. The alarm <<Interrupt type macro post-process being executed>> occurs and the mode will
not change if you press [MANU], [MDI], or [EDIT] key during the time between completion
of interrupt program and return to the original program.
17. When restoring from the interrupt program during extension memory operation/tape operation,
the sequence number cannot be specified.
If an instruction is given, an <<Invalid command>> alarm will occur.
18. If an interrupt occurs during incremental mode (G91) and an NC sentence exists in the
interrupt program or a sub-program or macro program which is called from the interrupt
program, the first movement command given after the reset will be treated as an incremental
command from the coordinates where the reset occurred.
19. When the command M96 is issued inside the following sub program or macro program, the
alarm <<Interrupt type macro command not possible>> is triggered. If extension or tape
operation is used, the alarm <<Specified M code cannot be used>> is triggered.
• Macro program that is called using G code (or M code).
• Sub program / macro program that is called using the command M98, G65 or G66 from a
macro program that is called using G code (or M code).
6 20. When an interrupt signal (UINT) is detected inside the macro program that is called using G
code (or M code), it interrupts and executed the program that is specified in the M96
command.
21. The alarm <<Feature coordinate manufacturing mode engaged>> is triggered when an M96
command is issued while in feature coordinate manufacturing mode. In addition, the alarm
<<Feature coordinate command error>> is triggered when a feature coordinate setting
command (G68.2) is issued during M96 modal.
(Note 1) The folder is the same one that is referenced when executing the M98
command.
(Note 2) The folders above are referenced as well when an interrupt signal (UINT)
is detected inside the macro program that is called using G code (or M
code).
2019/09/02 6 - 42 eCOM3NCPR6
Chapter 7 Automatic Workpiece Measurement
CHAPTER 7
AUTOMATIC WORKPIECE
MEASUREMENT
+Z
+Y
+X
+Z
+Y
+X
7
3. G122…X and Y coordinates for center of parallel groove
+Z
+Y
+X
+Z
+Y
+X
+Z
+Y
+X
+Z
+Y
+X
+Z 7
+Y
+X
(Note) The commands G121 to G129 cannot be issued when using the lathe
spindle in the following situations. After switching modals, issue the
command.
• M142 modal in progress
• G143/G144 modal in progress
The commands G121 to G129 cannot be issued while in feature
coordinate manufacturing mode (G68.2 modal in progress).
Probe compensation
7
Setting range -9.999 to 9.999 mm
-0.9999 to 0.9999 inch
(When using Type 1 for the minimum unit setting)
<Probe compensation 3> Set the difference between the center of the circle, calculated by
<Probe compensation 4> 3-point measurement (G124 and G125), and the center of the actual
circle. The X value of the difference corresponds to <Probe
compensation 3> and the Y value corresponds to <Probe
compensation 4>. We recommend performing the automatic setting
on the automatic centering - <Probe compensation (3-point circle)>
screen in MDI mode.
Setting range -9.999 to 9.999 mm
-0.9999 to 0.9999 inch
(When using Type 1 for the minimum unit setting)
Item Description
<Measurement motion> <0: Type 1>
<0: Type 1> 1. Detection signal OFF check
<1: Type 2> 2. Travels at measurement speed 1 in specified axis direction
3. Axis travel stops when detection signal turns ON
4. Returns to front traveling the return distance
5. Travels at measurement speed 2 in specified axis direction
6. Axis travel stops when detection signal turns ON
7. Returns to position in Step 4
8. Detection signal OFF check
2
4
5
7 Return distance
after measurement
Return distance
after measurement
Item Description
<Measurement speed 1> Set the first measurement speed for Type 1 measurement motion.
• Relief amount of probe = L (mm)
• Skip feed time constant 1 = t (msec)
• Measurement speed 1 = F1 (mm/min)
• Control system delay = td (msec) = 4 (msec)
• Delay unique to probe = tp (msec)
Tool radius
Item Description
<Measurement travel Set the overtravel when the measurement skip operation exceeds the
limit distance> predicted value (programmed value).
Setting range 0.000 to 99.999 mm
0.0000 to 9.9999 inch
(When using Type 1 for the minimum unit setting)
<Measurement tolerance The alarm <<Large error in measured value (1)>> is triggered if the
1> difference between the measurement result and the predicted value
(programmed value) exceeds this setting. When 0 is set, the error
checking is not performed.
Lb ≧ MAX(1.0, F2 × t / 60000)
(Note) The set values, such as the measurement speed and return distance after
measurement, vary depending on the probe being used. Therefore,
contact the probe manufacturer when deciding on the set values.
The travel speed follows G00/G01 modals when the automatic workpiece measurement is being
performed, when traveling to the measurement start point and when returning from the
measurement point.
G00: Rapid feedrate
G01: F command value
G02/G03/G102/G103/G202/G203: The alarm <<Arc mode>> is triggered.
G02.2/G03.2: The alarm <<Invalid command for involute interpolation modal>> is triggered.
Make sure that no swarf or chips are stuck to the end of the measurement probe or on the
measurement surface. In addition, make sure that there is no disturbance (caused by vibrations
from outside of the machine) that adversely affects the machine. We cannot guarantee the
measurement accuracy when there is swarf or other factors that can cause inaccuracy.
The mode cannot be changed during the automatic workpiece measurement. Attempting to change
the mode will trigger the alarm <<During measurement>>.
To avoid damaging the probe as well, press the [SINGL] key for the first measurement in the
automatic workpiece measurement operation, and check each motion using the single operation.
Perform the automatic workpiece measurement while the tool length offset is engaged.
The tool length offset is cancelled even if the coordinate is set in the machining coordinates using
the G53 command.
(X, Y)
+Z J
L
I
+Y
K
+X
(X, Y)
I
+Z J
K
+Y L
+X
2019/09/02 7 - 10 eCOM3NCPR7
Chapter 7 Automatic Workpiece Measurement
Boss
(Motion)
1. Spindle orientation. Travels to the first measurement start position for the X- and Y-axes.
2. Travels to the measurement height on the Z-axis.
3. First measurement (position J).
4. Measures at position L when there is an L command.
5. Travels to the return height position on the Z-axis.
6. Spindle orientation. Travels to the second measurement start position for the X- and Y-axes.
7. Travels to the measurement height on the Z-axis.
8. Measurement (position I).
9. Measures at position K when there is a K command.
10. Travels to the return height point on the Z-axis.
+Y 7
1st
+X
J
2nd
st
1 +X direction, spindle 0°
nd
2 +Y direction, spindle 0°
2019/09/02 7 - 11 eCOM3NCPR7
Chapter 7 Automatic Workpiece Measurement
2nd +Y
I
+X
1st
st
1 +X direction, spindle 0°
nd
2 -Y direction, spindle 180°
+Y
1st
+X
J
7 I
2 nd
2nd +Y
I
J +X
1st
2019/09/02 7 - 12 eCOM3NCPR7
Chapter 7 Automatic Workpiece Measurement
Groove
(Motion)
1. Spindle orientation. Travels to the first measurement start position for the X- and Y-axes.
2. Travels to the measurement height on the Z-axis.
3. First measurement (position J).
4. Measures at position L when there is an L command.
5. Spindle orientation. Travels to the second measurement start position for the X- and Y-axes.
6. Measurement (position I).
7. Measures at position K when there is a K command.
8. Travels to the return height point on the Z-axis.
+Y
1st
J +X
2nd
I
+Y 7
I
2nd +X
J
1st
1st +Y
2nd
J
+X
I
2019/09/02 7 - 13 eCOM3NCPR7
Chapter 7 Automatic Workpiece Measurement
+Y
I
J +X
2nd
1st
1st +X direction, spindle 0°
2nd +Y direction, spindle 0°
7.4.2 Parallel
Command format
Groove G122 X_ Y_ I_(J_) D_ Z_ R_ Q_;
Boss G123 X_ Y_ I_(J_) D_ Z_ R_ Q_;
+Z
+Y
7 +X
+Z
+Y
+X
2019/09/02 7 - 14 eCOM3NCPR7
Chapter 7 Automatic Workpiece Measurement
Groove
(Motion)
1. Spindle orientation 0°. Travels to the first measurement start position for the X- and Y-axes.
2. Travels to the measurement height on the Z-axis.
3. First measurement.
4. Spindle orientation 180°. Travels to the second measurement start position for the X- and
Y-axes.
5. Second measurement.
6. Travels to the return height position on the Z-axis.
+Y
+X
2nd 1st
+Y
7
J 1st
+X
2nd
Boss
(Motion)
1. Spindle orientation 180°. Travels to the first measurement start position for the X- and Y-axes.
2. Travels to the measurement height on the Z-axis.
3. First measurement.
4. Travels to the return height point on the Z-axis.
5. Spindle orientation 0°. Travels to the second measurement start position for the X- and
Y-axes.
6. Travels to the measurement height on the Z-axis.
7. Second measurement.
8. Travels to the return height on the Z-axis.
2019/09/02 7 - 15 eCOM3NCPR7
Chapter 7 Automatic Workpiece Measurement
I
+Y
+X
2nd 1st
+Y
1st
+X
7
2nd
2019/09/02 7 - 16 eCOM3NCPR7
Chapter 7 Automatic Workpiece Measurement
+Z
+Y
I +X
+Z
I
+Y
+X
+Y
1st
+X
3rd
2nd
2019/09/02 7 - 17 eCOM3NCPR7
Chapter 7 Automatic Workpiece Measurement
1st +Y
+X
7
2nd 3rd
2019/09/02 7 - 18 eCOM3NCPR7
Chapter 7 Automatic Workpiece Measurement
+Y
3rd
+X
2nd
1st
4th
3rd +Y
+X
2nd 1st
4th
2019/09/02 7 - 19 eCOM3NCPR7
Chapter 7 Automatic Workpiece Measurement
+Z
+Y
+X
(Motion)
1. Spindle orientation 0°. Travels to the measurement start position for the X- and Y-axes.
2. Travels to the measurement start point on the Z-axis.
7 3. Executes measurement. (Z-axis minus direction)
+Z
c
+Y
+X
Measurement point a
G120 Xa Yb Zc
2019/09/02 7 - 20 eCOM3NCPR7
Chapter 7 Automatic Workpiece Measurement
When continuing to perform measurements, the measurement results that were previously carried
out are displayed.
2019/09/02 7 - 21 eCOM3NCPR7
Chapter 7 Automatic Workpiece Measurement
Pn : n = 1 G54
2 G55
3 G56
4 G57
5 G58
6 G59
Pn : n = 1 G54.1 P1
2 G54.1 P2
• •
• •
• •
48 G54.1 P48
X, Y and Z : Coordinates for measurement position
Q : Measurement No. being used
Ex: When the measurement value for Measurement No.2 is (X,Y) = (-120,-80) in the machine
coordinates, the following command is issued to change this position to (-40,-40) with G55
using the absolute coordinates.
-40
-40
G55
-40
-80
-Y
(Note) The measurement value is acquired by this function, and the true value
varies depending on the delay that is unique to the probe. Therefore,
contact the probe manufacturer and adjust it accordingly.
2019/09/02 7 - 22 eCOM3NCPR7
Chapter 7 Automatic Workpiece Measurement
2019/09/02 7 - 23 eCOM3NCPR7
Chapter 7 Automatic Workpiece Measurement
2019/09/02 7 - 24 eCOM3NCPR7
Chapter 8 Sub Program Function
CHAPTER 8
8.1 Overview
8.2 Create Sub Program
8.3 Simple Call Function
8.4 Specify Return Number from Sub Program Function
8.5 Call Specifying Sequence No.
8.1 Overview
While programming, if there is a fixed sequence, or a repeated pattern in the program, a sub
program can be registered beforehand to execute this. These sub programs are called when needed,
which can simplify programming tremendously.
This sub program can be called from memory operation mode. It can also be called in the same
way when using extended memory operation.
When using tape operation (with a memory card or general communications device), a sub
program registered in the internal memory can be called. However, a sub program registered in an
external device (with a memory card or general communications device) cannot be called.
In addition, when using tape operation and calling a sub program registered in the internal memory,
the communication with the external device stops temporarily while the sub program from the
internal memory that was called is executing.
Furthermore, a separate sub program can also be called from a sub program which was called. In
this situation, up to 8 sub programs can be called.
M99; M99;
A sub program can also be called repeatedly with one call command.
M99;
(Note 1) Always specify M99 at the last block of the sub program.
(Note 2) The alarm <<Invalid command>> is triggered when another G or M code
command is issued on the M99 command block.
8
When optional
block skip is OFF
/N0100 M99;
When programming as described above, the program continues to operate and repeat the content
from the beginning of the program until N0100 while the optional block skip is turned OFF. If the
optional block skip is turned ON, the program skips the N0100 block and proceeds to execute
from the next block.
(Note 5) When using extended memory operation or tape operation, other sub
programs that are not executing can be edited during operation. However,
the edited content does not apply until that sub program is executed the
next time.
In addition, the alarm <<Editing>> is triggered when an attempt is made
to execute that program while it is saved.
Furthermore, the alarm <<Communicating>> is triggered when an attempt
is made to execute that program while data communication is still in
progress.
(Note 6) If M98 is executed while an external device program is being executed
during tape operation, etc., the communication with the external device
up to that point will stop temporarily until M99 is executed and operation
resumes in the external device program, or until the memory operation
ends (M30 execution or [RST]). Note that other communication means
with the external device is not available during this time period.
(Note 7) When using memory operation and extended memory operation, a
program in the same folder as the main program is called. In addition,
when using tape operation, a program in the root directory or root folder
is called.
(Note 8) The axis does not travel even if an X-, Y- or Z-axis command is issued on
the M98 command block.
(Note 9) When a sequence number (H address) and the number of repetitions (L
address) are specified during extension memory operation and tape
operation, the alarm <<Invalid command>> is triggered.
P : Sequence No.
M98P ;
G01Z_;
N0001;
M99 P0001
N0001;
M99 P0001;
Special notes are provided below when programming and using an H address.
N10 N10
N30
M99 M99
N20 N20
M98P4 M98P4
M99P30 M99P30
(Note 1) When calling with M98H_, the structure becomes 1 layer (1 sub program)
deep even in the same program. (The level does not change in a sub
program call with M98 using local variables for the macro.)
(Note 2) The alarm <<No applicable sequence>> is triggered if there is no
sequence number specified in the H address.
(Note 3) The search for the H address starts from the beginning of the program.
(Note 4) The alarm <<Subprogram number error>> is triggered when no command
has been issued for either the P or H address.
(Note 5) The alarm <<Subprogram call error>> is triggered when the current
program is called by the P address. Specify only using the H address to
call the current program.
(Note 6) The relationship between the main and sub programs for calling the
current program using M98H_ is established with the sequence number.
As a result, the alarm <<Subprogram call error>> is triggered if it jumps
to N10 before M99 is executed when using M98H10.
(Note 7) The macro variable command can be used in the P and H address.
However, the address is ignored when the macro variable field is “blank”.
(Note 8) The sequence number search for the H address is carried out when the
M98 command is issued. Therefore, when the main and sub program are
processed together in one program, the cycle time may be delayed before
they are processed as one.
(Note 9) Calls (M98H_) which specify sequence numbers in the same program
cannot be issued during extension memory operation and tape operation.
Otherwise, the alarm <<Invalid command>> is triggered.
Example 1:
(O0001)
M99
M30
Example 2:
M99 M99
M30 M30
Example 3:
(O0001)
N10 The sequence number search for the H address starts from the
beginning of the program. As shown on the left, it jumps close to
M98H10 the block closer to beginning of the program when there are two
M30
blocks for “N10”. 8
(The alarm <<Subprogram call error>> is triggered when the
“M98H10” block is executed the second time.)
N10
M99
Example 4:
Example 5:
(O0001) (O0001)
M30 M30
M99 M99
Example 6:
M98P2H20 M98P2H20
M99 M99
Example 7:
M99 M99
N30 N30
M99 M99
2017/08/22 8 - 10 eCOM3NCPR8
Chapter 8 Sub Program Function
Example 8:
M99P20 M99P20
Example 9:
(O0001) (O0002)
N40
M99
Example 10:
(O0001) (O0001) (O0001)
8
M98H10 M98H10 M98H10
M98H30 M98H30 M98H30 When creating a program as shown
on the left, the “M98H10” block is
M30 M30 M30 executed twice. After it is executed
N10 N10 N10 for the first time, it resets with
M99. As a result, an error does not
M99 M99 M99 trigger on the block when it
executes the second time. This
N30 N30 N30 program ends normally with M30.
M98H10 M98H10 M98H10
2017/08/22 8 - 11 eCOM3NCPR8
Chapter 8 Sub Program Function
2017/08/22 8 - 12 eCOM3NCPR8
Chapter 9 Feed Function
CHAPTER 9
FEED FUNCTION
(Note 1) The execution speed (actual travel speed on machine) of the feedrate per
rotation is calculated using the following formula.
-1
Execution speed [mm/min] = Feedrate [mm/rev] × Spindle speed [min ] ×
(Spindle override [%] / 100) × (Cutting override [%] / 100)
(Note 2) If the spindle rotation is zero when the feedrate per rotation command is
executed, the alarm <<Feedrate error>> is triggered.
After the inverse time feed (G93) command is issued, the inverse time feed is enabled before the
command for the feedrate per minute (G94) or the feedrate per rotation (G95) is issued.
Ex:
G93;
9 G01 X -100. F6; (6.00 1/min)
G01 Y -100. F6; (6.00 1/min) Inverse time feed enabled
G01 Z -100. F6; (6.00 1/min)
G94 G01 X -50. F1500; Inverse time feed disabled
(Note 1) In the inverse time feed, issue an F command each time on a block for the
cutting feed, in order to issue a machining time command for the
segment.
When there is a block without an F command, the alarm <<Feedrate not
specified>> is triggered.
(Note 2) An inverse time feed (G93) command cannot be issued during the
following modes.
When issuing a command, the alarm <<Specified G code cannot be
used>> is triggered.
• Thread cutting command (G33) in progress and thread cutting cycle
(G392) in progress
• Canned cycle (apart from G80) in progress
• Constant peripheral speed control (G96) in progress
The alarm <<Max. speed exceeded>> or <<Feedrate error>> is triggered for the feedrate per
minute (G94) and the feedrate per rotation (G95) when an attempt is made to move the axis and
the speed exceeds the user parameter (switch 1)setting <Max. actual cutting travel speed>, the
machine parameter (system 1) setting <X-(to Z-)axis max. cutting feedrate> or the machine
parameter (system 2) setting <4th-(to 8th-)axis max. cutting rotation speed>.
When the feedrate calculated from the inverse time is less than the following limit values, the
alarm <<Command data range error>> is triggered.
The execution speed (actual travel speed on machine) calculated for the feedrate per rotation is
rounded off in the command range for the feedrate per minute. However, when the execution
speed is less than the minimum in the command range, the execution speed is assigned the
minimum value in the command range.
Ex: When the minimum unit setting is Type 1 and when the feedrate is 1.2345 mm/rev and the
spindle speed is 4321 min-1:
Execution speed (mm/min) = 1.2345 mm/rev × 4321 min-1 = 5334.2745 mm/min
Any value below 0.01 mm/min is rounded off and the execution speed becomes 5334.27
mm/min.
CHAPTER 10
10.1 S Function
10.2 M Function (Spindle Control)
10.3 M Function (Lathe Spindle Control)
10.4 M Function (Spindle Selection)
10
2019/09/02 10 - 1 eCOM3NCPR10
Chapter 10 Spindle Related Functions (S Function)
10.1 S Function
10.1.1 Spindle Speed Command
A spindle speed (min-1) command is issued.
This command uses the numerical values (under 5 digits) that come after “S” to specify the speed.
(Note 1) The S command is not erased with NC reset, but it must be set when the
power is turned ON.
(Note 2) The S command must always be issued before the spindle rotation
command (M03/M303, M04/M304).
(Note 3) When the S command is on the same block as axis travel, the S command
becomes valid at the same time as the axis travel start.
By issuing a peripheral speed command (m/min, or feet/min) to the G96S address, this function
controls the rotation speed of the spindle so that the cutting speed is maintained at a fixed or
constant level that corresponds to the machining diameter.
The G96 modal S command assumes S = 0 (peripheral speed 0) until the spindle rotation
command (M03/M303) and the spindle reverse rotation command (M04/M304) is issued.
10 When using the constant peripheral speed control, configure the settings so that the workpiece
coordinate zero for the control axis is in the lathe spindle center.
When using the tool length/tool position offset function, the spindle speed is controlled with the
tool length/tool position offset amount added to the current machine coordinates.
The constant peripheral speed control for the rapid feed command (G00) and the tool change
command (G100/M06) calculates the peripheral speed based on the end position of the constant
peripheral speed control axis.
(Note 1) If a constant peripheral speed control command is issued while using the
[SP.CW] key to rotate the spindle, the alarm <<Spindle rotating>> is
triggered. Specify the spindle rotation command on the same block.
(Note 2) Constant peripheral speed control command is not possible while in the
inverse time feed (G93) modal. If a command is issued, the alarm
<<Command not possible during inverse time feed>> is triggered.
2019/09/02 10 - 2 eCOM3NCPR10
Chapter 10 Spindle Related Functions (S Function)
G97 command
Yes
Spindle speed
command
No
Spindle speed (min-1)
issued by S
command
G96 command
Yes
Spindle speed command
10
No
Spindle speed (min-1)
issued by S command
* The peripheral speed will not be set (while power is turned ON) when the spindle is changed
using the spindle selection command (M141/M142).
Ex:
M142 G96 P1 S200 ; Peripheral speed 200
G97 S1000 ; Peripheral speed 200 is saved
M141 G96 P1 ; Peripheral speed is not set (saved peripheral speed is deleted because
the spindle is changed)
2019/09/02 10 - 3 eCOM3NCPR10
Chapter 10 Spindle Related Functions (S Function)
The spindle speed is controlled to a value below the command value issued for the S address, or
above the command value issued for the Q address.
The spindle speed clamp is only valid when the constant peripheral speed control (G96) is enabled.
Always issue the G92 S command when issuing a constant peripheral speed control command
(G96). If a G96 command is executed without the other command, an alarm is triggered.
When the power is turned ON, the settings are not configured. In addition, when the command
value issued for the Q address is larger than the command value issued for the S address, then the
spindle speed is not controlled using the command value issued for the Q address.
When the User parameter (Switch 1) <Tool data spindle rotation exceeded> is set to <0: Alarm>,
if a spindle speed command is issued that exceeds the maximum speed set for the tool, the alarm
<<Tool data spindle rotational frequency error>> is triggered. When set to <1: Clamp at max.
speed>, the tool is clamped at the maximum spindle speed that is set for the tool.
When not set, the spindle speed is not checked. (However, the alarm <<Spindle speed error>> is
triggered when an attempt is made to rotate at a speed that exceeds the Machine parameter
(System 1) <Max. spindle speed>.)
(Note) When the tool is set in conversation language for the spindle, it is
10 processed as “not set”.
2019/09/02 10 - 4 eCOM3NCPR10
Chapter 10 Spindle Related Functions (S Function)
(Note) On a machine equipped with the lathe function, the spindle may vibrate
slightly when carrying out an orientation operation at the zero degree
position while the spindle is fitted with a cutting tool. There is no impact
on the machining or measurement operations. However, to stop this
slight vibration, perform the orientation operation at another position
besides zero degrees, or execute the spindle rotation command
(M03/M04).
2019/09/02 10 - 5 eCOM3NCPR10
Chapter 10 Spindle Related Functions (S Function)
(Note) When there is no lathe spindle, the M303, M304 and M305 commands
cannot be issued.
(Note 1) When there is no lathe spindle, the M141 and M142 commands cannot be
issued.
(Note 2) The M141 and M142 modals are linked with the [L. SP] key. When the [L.
SP] key is turned ON in manual mode, it changes to M142 modal. When it
is turned OFF, it changes to M141 modal.
10
2019/09/02 10 - 6 eCOM3NCPR10
Chapter 11 Tool Related Functions (T Function)
CHAPTER 11
11.1 T Function
11.2 M Function (Tool Control)
11
2019/06/16 11 - 1 eCOM3NCPR11
Chapter 11 Tool Related Functions (T Function)
11.1 T Function
On an arm type ATC mechanism, a T command turns the magazine to the corresponding pot.
On a turret type ATC mechanism, the tool (magazine) is set to index when the tool change
command (G100, M6) is issued.
Command format T_ _ _;
The alarm <<Command data range error>> is triggered when a command is issued in MDI
operation mode.
11
2019/06/16 11 - 2 eCOM3NCPR11
Chapter 11 Tool Related Functions (T Function)
M420 : Turn the arm at the maximum speed that corresponds to the tool type being
changed.
- Standard tool turn speed when a standard tool is used (Note 2).
- Large tool turn speed when a large tool is used (Note 3).
M421/M432 : Turn the arm at a large tool turning speed regardless of the tool type to be changed.
The modal becomes M421 even when an M432 command is issued. (M432 is for
compatibility for B00 control. In the C00 control, the same operation is possible
with M421, and the operation does not change.)
M422 : For the standard tool turning speed, the arm turns at a speed that is calculated
using the user parameter (switch 1) setting <ATC arm turn speed ratio 1 (M422)>.
(Note 4)
M423 : For the standard tool turning speed, the arm turns at a speed that is calculated
using the user parameter (switch 1) setting <ATC arm turn speed ratio 2 (M423)>.
(Note 4)
2019/06/16 11 - 3 eCOM3NCPR11
Chapter 11 Tool Related Functions (T Function)
The turn speed for M436 and M437 is specified in the user parameter <Magazine turn speed ratio
1(M436)> and <Magazine turn speed ratio 2(M437)>.
(Note) When the M435, M436, M437 commands are issued on the same block as
a T command, the alarm <<Invalid command>> is triggered.
2019/06/16 11 - 4 eCOM3NCPR11
Chapter 12 M Function
CHAPTER 12
M FUNCTION
12
2019/06/16 12 - 1 eCOM3NCPR12
Chapter 12 M Function
(Note) The modal command is effective until it is cancelled by the next M code
or changed. The one-shot command is effective only in the commanded
block.
12
2019/06/16 12 - 2 eCOM3NCPR12
Chapter 12 M Function
For “Multiple commands” and “Multiple command limits”, refer to “12.2.1 Multiple M Code
Commands in One Block”.
For multiple M code commands for tool changes, refer to “Chapter5 5.7 Canned cycle for tool
change (Non-stop ATC) (G100)”.
Timing of Modal / Multiple
Group M code Contents
axis motions One-shot commands
M00 Program stop After One-shot Impossible
M01 Optional stop After One-shot Impossible
M02 End of Program
- - Impossible
M30 End of Program
M03 Spindle CW
M04 Spindle CCW
M05* Spindle stop Simultaneous Modal Possible
M19 Spindle orientation
M111 Spindle orientation (180°)
M08 Coolant pump ON Before
Modal Possible
M09* Coolant pump OFF After
M06 Tool change Simultaneous One-shot Possible
M96 Interruptive macro program
- Modal Impossible
M97* Cancel interruptive macro program
M98 Sub Program Call -
- Impossible
M99 Return from Subprogram -
M120 TOUCH signal check (Error when Off.)
After One-shot Possible
M121 TOUCH signal check (Error when On.)
M141* Selection of spindle
Simultaneous Modal Possible
M142 Selection of turning spindle
M159 Prohibit reading ahead - One-shot Impossible
Tool breakage detection
M200 Simultaneous One-shot Possible
(with return motion)
M201 Tool breakage detection Simultaneous One-shot Possible
M203 Tool breakage detection - One-shot Impossible
M211 Workpiece counter 1 set
Simultaneous Modal Possible
M221* Workpiece counter 1 cancel
M212 Workpiece counter 2 set
Simultaneous Modal Possible
M222* Workpiece counter 2 cancel
M213 Workpiece counter 3 set
Simultaneous Modal Possible
M223* Workpiece counter 3 cancel
M214 Workpiece counter 4 set
Simultaneous Modal Possible
M224* Workpiece counter 4 cancel
M230* Tool life counter set
Simultaneous Modal Possible
M231 Tool life counter cancel
M238 To start waveform display measurement
- One-shot Impossible
M239 To finish waveform display measurement
M241 to M249 Tap time constant 10 ~ 90%
M250
Tap time constant selection Possible
M251 Simultaneous Modal
(*)
Tap acceleration kept constant selection
M252 to M254
High speed / Medium speed / Low speed 12
M260 to M267 High precision mode A On (levels 1 ~ 8) Simultaneous
M280 to M287 High precision mode B On (levels 1 ~ 8) Before
Modal Possible
M269*
High precision mode OFF Simultaneous
M289
M270* Positioning finish check distance setting off
Before Modal Possible
M271 to M279 Positioning finish check distance setting
M290* Tool replacement Z axis lower speed 100%
Before Modal Possible
M291 to M293 Tool replacement Z axis lower speed 1~3
M294 Check tool wash filter Before One-shot Possible
Diagnosis of tool wash liquid surface sensor
M295 - One-shot Impossible
failure
M298 Machining mode specification -
Modal Impossible
M299 Cancel machining mode specification -
2019/06/16 12 - 3 eCOM3NCPR12
Chapter 12 M Function
2019/06/16 12 - 4 eCOM3NCPR12
Chapter 12 M Function
(*) The modal during power startup is specified in the user parameter (switch 1) <Tap accel.
setting>.
2019/06/16 12 - 5 eCOM3NCPR12
Chapter 12 M Function
Also when multiple M code commands are issued on the same block for axis travel, the operation
for each M code is described in “Operation timing for axis travel” found in the “12.2 M Code
List.” If multiple commands that operate with the same timing are issued on one block, they are
output simultaneously.
If you need to be aware of the output order for the M codes, set it up so that commands are issued
and broken up into mutliple blocks.
In addition, simultaneously commandable M codes have limits. For combination of M dodes, refer
to the list below.
If simultaneously uncommandable M codes are commanded in one block, the <<Simultaneous
command unable M code>> alarm appears.
Independent
M06 M430/M411 M430/M431 M45X M46X M8XX M9XX BCD Others
command
Independent Impossible Impossible Impossible Impossible Impossible Impossible Impossible Impossible Impossible Impossible
command
M06 - Impossible Impossible Impossible Possible Possible Possible Possible Possible Possible
M430/M411 - - *5 *5 Possible Possible Possible Possible Possible *1
M430/M431 - - - *5 Possible Possible Possible Possible Possible Possible
M45X - - - - *2 Possible Possible Possible Possible Possible
M46X - - - - - *3 Possible Possible Possible Possible
M8XX - - - - - - Impossible Impossible Impossible Possible
M9XX - - - - - - - Impossible Impossible Possible
BCD - - - - - - - - Impossible Possible
Others - - - - - - - - - *4
1. Independent commands
The M codes listed in the following table must be independently commanded and cannot be
commanded together with other M codes simultaneously.
M00 M01 M02 M30
M96 M97 M98 M99
M203 M238 M239 M350
M351 M352 M353 M355
M360 M361 M362 M363
M364 M365 M366 M367
M368 M369 M434 M438
M439 M448 M449 M478
M479 M498 M499 M159
M5xx M478 M298 M299
M476 M477
12
The following M codes are independently commanded only in MDIoperation.
M200 M201
2. M06
For M06 (tool change) and simultaneously commandable M codes, refer to “Chapter5 5.7
Canned cycle for tool change (Non-stop ATC) (G100)”. (*1)
2019/06/16 12 - 6 eCOM3NCPR12
Chapter 12 M Function
9. Others
With respect to the combination of M codes other than the above, the commands other than
the simultaneously commandable M codes like instruction of thesame function ON/OFF,
instruction of spindle motion, specification of time constant, command to coolant through
center and the relatives, etc. can be simultaneously commanded together. (*4)
2019/06/16 12 - 7 eCOM3NCPR12
Chapter 12 M Function
M420,M421,M422,M423,M432
M435, M436, M437
M440, M441
M442, M443
M444, M445
M430, M431 (QT not equipped)
M480, M481
M482, M483
M484, M485
M486, M487
M490 to M494, M495, M496
12
2019/06/16 12 - 8 eCOM3NCPR12
Chapter 12 M Function
(Note) Issue an M03 or M04 command if spindle rotation is required in the block
after M00. Issue a command such as a coolant command when necessary.
However, when the user parameter (switch 1) is set to the following, the
spindle, lathe spindle and coolant automatically return when executing
the following sequence.
• When <Spindle return method for program stop> is set to <0: Method
1>
• When <Lathe spindle return method for program stop> is set to
<0:Method 1>
• When <Coolant return method for program stop> is set to <0: Method
1>
Ex) If M211 and M212 are executed in an operation program when the counted number of the
counter 1 is 1 and the counted number of the counter 2 is 2, the counter 1 counts up per 1 and
the counter 2 counts up per 2 when M02 or M30 is executeded.
2019/06/16 12 - 9 eCOM3NCPR12
Chapter 12 M Function
2019/06/16 12 - 10 eCOM3NCPR12
Chapter 12 M Function
When the M321 command is issued, the input signal TOUCH (touch sensor) is checked and if it is
ON, the alarm <<Detection signal on>> is triggered.
12
2019/06/16 12 - 11 eCOM3NCPR12
Chapter 12 M Function
Example 1: G00 X-50. M444; ← When it travels along the X-axis, the C-axis unclamp is carried
out at the same time.
Example 2: G00 C90. M444; ← The alarm <<Invalid command>> is triggered.
(Note 1) When there is a command on the same block as the axis travel command,
the axis travel starts before the unclamp is finished.
When the M445 command is issued, the C-axis is clamped, and thereafter, the C-axis
unclamp/clamp is automatically controlled. When there is an axis travel command on the same
block, the axis travel is carried out at the same time. However, when there is a C-axis travel
command on the same block, the alarm <<Invalid command>> is triggered.
Example 1: G00 X-50. M445; ← When it travels along the X-axis, the C-axis clamp is carried
out at the same time.
Example 2: G00 C90. M445; ← The alarm <<Invalid command>> is triggered.
(Note 2) When there is a command on the same block as the axis travel command,
the axis travel starts before the clamp is finished.
When C-axis operation is enabled in the <Machine parameter> setting and when the clamp
mechanism is set to <1: Type 2> or <2: Type 3>, this command is valid.
When configured to another setting, the alarm* <<Specified M code cannot be used>> is
triggered.
When the C-axis changes from a clamp status to an unclamp status using an M444 command, the
C-axis returns to a clamp status if an M02 (M30) command is issued, if the reset key is pressed or
if a stop level 5 alarm is triggered. It does not return to clamp status even when the operation reset
is performed.
However, when the machine is not equipped with QT, the M430 has the same function as M444,
12 and M431 has the same function as M445.
Example 1: G00 Y-50. M440; ← When it travels along the Y-axis, the B-axis unclamp is carried
out at the same time.
Example 2: G00 B90. M440; ← The alarm <<Invalid command>> is triggered.
2019/06/16 12 - 12 eCOM3NCPR12
Chapter 12 M Function
(Note 1) When there is a command on the same block as the axis travel command,
the axis travel starts before the unclamp is finished.
When the M441 command is issued, the B-axis is clamped, and thereafter, the B-axis
unclamp/clamp is automatically controlled. When there is an axis travel command on the same
block, the axis travel is carried out at the same time. However, when there is a B-axis travel
command on the same block, the alarm <<Invalid command>> is triggered.
Example 1: G00 Y-50. M441; ← When it travels along the Y-axis, the B-axis clamp is carried
out at the same time.
Example 2: G00 B90. M441; ← The alarm <<Invalid command>> is triggered.
(Note 2) When there is a command on the same block as the axis travel command,
the axis travel starts before the clamp is finished.
When B-axis operation is enabled in the <Machine parameter> setting and when the clamp
mechanism is set to <1: Type 2> or <2: Type 3>, this command is valid.
When configured to another setting, the alarm* <<Specified M code cannot be used>> is
triggered.
When the B-axis changes from a clamp status to an unclamp status using an M440 command, the
B-axis returns to a clamp status if an M02 (M30) command is issued, if the reset key is pressed or
if a stop level 5 alarm is triggered. It does not return to clamp status even when the operation reset
is performed.
Example 1: G00 Z-50. M442; ← When it travels along the Z-axis, the A-axis unclamp is carried
out at the same time.
Example 2: G00 A90. M442; ← The alarm <<Invalid command>> is triggered.
(Note 1) When there is a command on the same block as the axis travel command,
the axis travel starts before the unclamp is finished.
When the M443 command is issued, the A-axis is clamped, and thereafter, the A-axis
unclamp/clamp is automatically controlled. When there is an axis travel command on the same
block, the axis travel is carried out at the same time. However, when there is an A-axis travel
command on the same block, the alarm <<Invalid command>> is triggered.
Example 1: G00 Z-50. M443; ← When it travels along the Z-axis, the A-axis clamp is carried
out at the same time.
Example 2: G00 A90. M443; ← The alarm <<Invalid command>> is triggered.
(Note 2) When there is a command on the same block as the axis travel command,
12
the axis travel starts before the clamp is finished.
When A-axis operation is enabled in the <Machine parameter> setting and when the clamp
mechanism is set to <1: Type 2> or <2: Type 3>, this command is valid.
When configured to another setting, the alarm* <<Specified M code cannot be used>> is
triggered.
When the A-axis changes from a clamp status to an unclamp status using an M442 command, the
A-axis returns to a clamp status if an M02 (M30) command is issued, if the reset key is pressed or
if a stop level 5 alarm is triggered. It does not return to clamp status even when the operation reset
is performed.
2019/06/16 12 - 13 eCOM3NCPR12
Chapter 12 M Function
(Note 1) Use the low acceleration speed M253 or M254 if the alarm <<Servo error
(overload)>> is triggered during a tapping operation for M252 modal.
In addition, use the low acceleration speed M254 if the alarm <<Servo
error (overload)>> is triggered during a tapping operation for M253 modal.
Issue a dwell or similar command to lower the frequency of the tapping
operation when the alarm or error persists.
(Note 2) The machine is initialized in the modal that is set in the user parameter
(switch 1) <Tap accel. setting> when the power is turned ON, when the
[RST] key is pressed, when the M02 or M30 command is executed and
when the operation is reset.
(Note 3) M253 and M254 cannot be used in some of the models.
12
2019/06/16 12 - 14 eCOM3NCPR12
Chapter 13 High-accuracy Mode
CHAPTER 13 (1)
1 Outline
2 How to Use
3 Restrictions
4 Detailed Explanations and Adjustments of Parameters
13
2019/09/02 13 - 1 - 1 eCOM3NCPR13-1
Chapter 13 High-accuracy Mode
1 Outline
1.1 Outline of High-accuracy Mode AIII
The high-accuracy mode AIII is appropriate for contouring or 3-dimentional shape workpiece
machining to atain high-speed, high-accuracy, and high-dignity machining. The high-accuracy
mode AIII has two functions; 1: To improve shape accuracy and 2: To improve face dignity. It
also can change shape accuracy and face dignity in machining by the override values in user
parameters.
The parameter default settings have 6 machining levels available, that is, there is one level that
focuses on shape accuracy or another that focuses on surface quality. The appropriate machining
level can be easily selected depending on the machining needs or requirements. In addition, unique
two levels of parameter setting are available.
The machining level can be changed in an NC program.
Shape error
Commanded path
Tool path
Shape error
(Decrement in radius)
Programmed route
13 Tool path
2019/09/02 13 - 1 - 2 eCOM3NCPR13-1
Chapter 13 High-accuracy Mode
Tool path
Commanded path
(Fine linear block)
Tool path
13
2019/09/02 13 - 1 - 3 eCOM3NCPR13-1
Chapter 13 High-accuracy Mode
2 How to Use
2.1 To Select a Machining Level
High accuracy mode A is equipped with a function to improve shape accuracy and another to
improve surface quality. There are 6 machining levels available in the default settings, such as one
that focuses on shape accuracy and another that focuses on surface quality. Select one from these
six machining levels depending on the machining content. (Note, in the default settings, the
function that improves the surface quality uses smooth override.)
In addition, there are two more levels other than the above levels that can be defined by users so
that the machining levels can be adjusted to the optimum. For detail, refer to the “4 Detailed
explanations and adjustments of parameter”.
Shape accuracy The surface quality is less than when high accuracy
2 M261
(High) mode is not used. Machining time becomes a little
longer because it decelerates in accordance with a
shape. In addition, the top speed of a command is
limited. (F5000 is the default value.)
Both the shape accuracy and face dignity are
emphasized.
Shape accuracy
3 M262
+ face dignity
As the deceleration time become longer, the
machining time may become very long.
The face dignity is emphasized (first recommended
for emphasizing face dignity).
4 Face dignity M263
Use this if smooth face dignity is necessary.
However, shape accuracy becomes bad.
The face dignity is emphasized more than the
machining level 4.
Face dignity
5 M264
(High)
Use this if smoother face dignity is necessary.
However, shape accuracy becomes worse.
High speed is emphasized.
2019/09/02 13 - 1 - 4 eCOM3NCPR13-1
Chapter 13 High-accuracy Mode
Shape
accuracy Level 2: Shape accuracy (high)
Level 1: Shape accuracy
High Level 3: Shape accuracy
M261 + Face accuracy
M262
M260
Level 6: High
Level 4: Face accuracy
speed
Low M264
Face dignity
Low High
Image of machining levels
2. Decide which of the shape accuracy or face dignity is necessary for the machining.
Depending on the stripes (parallel grooves) appering on the machining face, you may know
which of the shape accuracy or the face dignity is necessary to be emphasized.
(1) Stripes (parallel grooves) parallel in the tool ongoing direction appear.
Tool path
13
Presumed cause
There ia a possibility that the stripes (parallel grooves) may appear due to a shape error.
Especially they tend to appear if the commanded speed is too fast or the curvature is too small.
2019/09/02 13 - 1 - 5 eCOM3NCPR13-1
Chapter 13 High-accuracy Mode
(2) Stripes (parallel grooves) perpendicular to the tool path in the ongoing direction appear.
Tool path
Presumed cause
The minute linear command created by CAM or the like for a curved shape is polygonal, so it
tends to generate stripes (parallel grooves). Especially they tend to appear if the speed is too
slow or the curvature is too large. They may be none by minimizing the tolerance of CAM.
(3) If you want to emphasize the shape accuracy or the face dignity more
Use the machining level 2 (shape accuracy (High), M261) or the machining level 5 (face
dignity (High), M264). However, the machining level 2 may take more machining time than
the machining level 1. The machining level 5 worsens the shape accuracy more than the
machining level 4.
(4) The machining level 3 (shape accuracy + face dignity, M262) may take very long machining
time.
13
2019/09/02 13 - 1 - 6 eCOM3NCPR13-1
Chapter 13 High-accuracy Mode
Example of Use
(Program Example)
NC program
G00 X0 Y0 Z0;
;
M260; High-accuracy mode A (Level 1) ON
G01 X20. Y30. Z50.;
X40. Y20. Z30.; High-accuracy mode A (Level 1) in operation
;
M269; High-accuracy mode A (Level 1) OFF
;
M261;
High-accuracy mode A (Level 2) ON
G01 X20. Y30. Z50.;
X40. Y20. Z30.;
High-accuracy mode A (Level 2) in operation
;
M269; High-accuracy mode A (Level 2) OFF
;
M262;
High-accuracy mode A (Level 3) ON
G01 X20. Y30. Z50.;
X40. Y20. Z30.; High-accuracy mode A (Level 3) in operation
;
M269;
High-accuracy mode OFF
M30;
13
2019/09/02 13 - 1 - 7 eCOM3NCPR13-1
Chapter 13 High-accuracy Mode
3 Restrictions
3.1 Commandable Functions
The functions available using commands while high accuracy mode A is executing are as follows.
1. All M code commands are possible except M96 (interrupt type macro).
2. All the G code commands are available when using the automatic corner deceleration function,
the automatic arc deceleration function or the automatic curve approximation deceleration
function. G code commands except the involute interpolation (G02.2/G03.2) command are
available on the fully automatic deceleration function.
13
2019/09/02 13 - 1 - 8 eCOM3NCPR13-1
Chapter 13 High-accuracy Mode
2019/09/02 13 - 1 - 9 eCOM3NCPR13-1
Chapter 13 High-accuracy Mode
Setting
The setting area of the <Corner deceleration override> is up to “0% or 10%-9999%”. The
smaller the setting value is, the more strongly the deceleration function works to minimize the
error and makes the shape accuracy better. In addition, if you input “0%”, the automatic
corner deceleration function goes off.
Setting
The setting area of the <Arc deceleration override> is up to “0% or 10%-9999%” (Default
value “100%”). The smaller the setting value is, the more the deceleration function works
strongly to minimize the error and the shape accuracy becomes better. In addition, if you input
“0%”, the automatic arc deceleration function goes off.
2019/09/02 13 - 1 - 10 eCOM3NCPR13-1
Chapter 13 High-accuracy Mode
Setting
The setting area of the <Curve approximate deceleration override> is up to “0% or
10%-9999%” (Default value is “100%”). The smaller the setting value is, the more strongly
the deceleration function works to minimize the error and the shape accuracy becomes better.
In addition, if you input “0%”, the automatic curve approximate deceleration function goes
off.
Set value
The setting range for the <Accuracy level> is from <0 (Invalid)> to 5.000 mm (when the user
parameter (switch 1) <Machine unit system> is set to <1: Inch>, then the range is from <0
(Invalid)> to 0.1999 inch) (Default value: <0 (Invalid)>).
When the parameter is set to <0 (Invalid)>, the functions: (1) automatic corner deceleration
function, (2) automatic arc deceleration function and (3) automatic curve approximation
deceleration function are enabled. When it is configured to another setting, (1) automatic
corner deceleration function, (2) automatic arc deceleration function and (3) automatic curve
approximation deceleration function are disabled and fully automatic deceleration function is
enabled.
Setting
The setting area of the <Smooth override> is up to ”10%-9999%” (Default value is “100%”).
If it becomes bigger than 100, smoother face dignity is attained. If it becomes smaller than 100,
the shape accuracy becomes better.
13
Guide amount of shape error
Shape errors at a corner, arc, and curve vary depending on the settings of the <Smooth
override>.
The shape error at a corner becomes a value in proportion to the square root of the setting
value. For example, if the error amount when the setting value is set at 100% is 100, it
becomes 140 when set at 200%, and it becomes 70 when set at 50%.
The shape error at an arc or curve becomes a value in proportion to the setting value. For
example, if the error amount when the setting value is set at 100% is 100, it becomes 200
when set at 200% and it becomes 50 when set at 50%.
2019/09/02 13 - 1 - 11 eCOM3NCPR13-1
Chapter 13 High-accuracy Mode
Example) Limit value of cutting feedrate for the reference feedrate A: 10000 mm/min, Max.
feedrate A: 20000 mm/min
Setting
The setting area of the <Smooth path offset level> is “1-5” (The default value is “1”). If this
value is made bigger, the path is offset by more command points to have much smoother path.
However, if it is made big, the path may error.
(If the user parameter (high accuracy) <Smooth path offset function> is “Invalid”, this setting
value becomes invalid.)
13
2019/09/02 13 - 1 - 12 eCOM3NCPR13-1
Chapter 13 High-accuracy Mode
Every time when the [PAGE] key is pressed, the screen display changes to <High accuracy A
(M260~M264)> → <High accuracy A (M265~M267)> → <High accuracy B> → <High accuracy
common>.
(High-accuracy common)
13
2019/09/02 13 - 1 - 13 eCOM3NCPR13-1
Chapter 13 High-accuracy Mode
2019/09/02 13 - 1 - 14 eCOM3NCPR13-1
Chapter 13 High-accuracy Mode
(High-accuracy common)
Parameter name Contents Setting range
Smooth path offset The <Valid/invalid> of the <Smooth path offset function> is set. 0~1
function
Smooth path offset This is used when the <Smooth path offset function> is set <Valid>. 0~99.999
cancel distance If the travel distance of one block is longer than the set value, the (mm)
smooth path offset is cancelled.
If the set value is too large, it may deviate significantly from the
program path. Be careful when changing the value.
Smooth path offset This is used when the <Smooth path offset function> is set <Valid>. 0~120.000
cancel angle If the angle difference between blocks is larger than the set value, the (°)
smooth path offset is cancelled.
If the set value is too large, it may deviate significantly from the
program path. Be careful when changing the value.
Smooth path offset This is used when the <Smooth path offset function> is set <Valid>. 0~9.999
angle determination The smooth path offset is not cancelled even if the block where the (mm)
invalid distance smooth path offset is cancelled for decision of the <Smooth path offset
cancel angle> is less than the value set for a travel distance of one
block.
Smooth path offset Used when <Smooth path offset function> is set to <Valid>. 0~9.999
reference length If the travel distance of one block is longer than the set value, the path (mm)
is offset using the set value.
Minute block deletion Used when the <Smooth path offset function> is set to <Valid>. 0~1
when smooth path When this parameter is set to <1: Enabled>, depending on the settings
offset is cancelled for <Smooth path offset cancel distance> and the <Smooth path offset
cancel angle>, the <Minute block deletion distance> applies the
deletion even if the smooth path offset is cancelled for the block.
(Note) Update the software version to W*10.*** or later in
order to change the parameter setting to <1:
Enabled>.
Accuracy level method Set the deceleration method when the accuracy level is specified in 0~1
high accuracy mode A.
13
2019/09/02 13 - 1 - 15 eCOM3NCPR13-1
Chapter 13 High-accuracy Mode
8.0
7.0
6.0
5.0
4.0
3.0
2.0 Smooth override: 100%
1.0
3.0
Corner shape
2.5
2.0
1.5
Deceleration override: 100%
1.0
0.5
0
0% 100% 200% 300% 400% 500% 600% 700% 800% 900% 1000%
Smooth override setting value
Reference
Corner shape error = E * D * S
E : Error when the corner deceleration override is 100% and the smooth override is 100%
(Guide amount: 100-120 µm)
D : Corner deceleration override/100
13 S : Smooth override/100
2019/09/02 13 - 1 - 16 eCOM3NCPR13-1
Chapter 13 High-accuracy Mode
6.0
Arc/curve shape error
5.0
4.0
3.0
1.0
0
0% 100% 200% 300% 400% 500% 600% 700% 800%
Deceleration override setting value
7.0
Arc/curve shape error
6.0
5.0
4.0
3.0
1.0
0
0% 100% 200% 300% 400% 500% 600% 700% 800% 900% 1000%
Smooth override setting value
Reference
Arc/curved shape error = E * D * S
E : Error when the arc (approximate curve) deceleration override is 100% and the smooth
override is 100% (Guide amount is 10-20 µm)
D : Arc (approximate curve) deceleration override/100
S : Smooth override/100
13
2019/09/02 13 - 1 - 17 eCOM3NCPR13-1
Chapter 13 High-accuracy Mode
13
2019/09/02 13 - 1 - 18 eCOM3NCPR13-1
Chapter 13 High-accuracy Mode
CHAPTER 13 (2)
HIGH-ACCURACY MODE B
1 Outline
2 How to Use
3 Restrictions
4 Explanations on Parameters
13
2019/09/02 13 - 2 - 1 eCOM3NCPR13-2
Chapter 13 High-accuracy Mode
1 Outline
The high-accuracy mode B can perform better shape accuracy machining compared with the
high-accuracy mode A by looking ahead a program and accelerating/decelerating the speed before
interpolation.
The high-accuracy mode B has the following functions as same as the high-accuracy mode A:
• Automatic arc decelerating function
• Automatic curve approximation decelerating function
• Smooth override function
• Smooth path offset function
Note, the following specifications vary based on whether the machine is equipped with the option
or not.
Not equipped: High
Option Equipped: High accuracy mode BII
accuracy mode BI
No. of look ahead blocks 30 or 40 (*1) Machine parameter (high accuracy)
No.8087 <No. of look-ahead blocks B>
Smooth path offset Not available Available
function
*1 The number of look ahead blocks varies depending on the machine model.
No. of look
Machine model
ahead blocks
300X1/S500X1/S700X1/S1000X1/R450X1/R650X1/M140X1 30
S500Z1/S700Z1/R450Z1
S300X1N/S500X1N/S700X1N/S1000X1N/R450X1N/R650X1N 40
M140X2/F600X1
S300X2/S500X2/S700X2
R450X2/R650X2
M200X3/M300X3
In addition, when the machine parameter <No. of look-ahead blocks B> is less than 30 or 40, that
set value is valid.
13
2019/09/02 13 - 2 - 2 eCOM3NCPR13-2
Chapter 13 High-accuracy Mode
2 How to Use
2.1 To Select a Machining Level
High accuracy mode B is equipped with a function to improve shape accuracy (arc deceleration
and curve approximation deceleration) and another to improve surface quality. The default setting
is configured to the optimum machining level for shape accuracy and surface quality.
In addition to the level mentioned above, there are 7 separate user defined levels, and the user can
adjust the settings to the most appropriate machining level. Refer to the “Detailed description of 4
functions and parameter adjustment” in “Chapter 13 (1) High Accuracy Mode A III” for further
details. For details, refer to “Chapter13 (1) 4. Detailed explanations and adjustments of
parameters”.
Example of Use
Program example:
NC program
G00 X0 Y0 Z0;
;
M285; To activate the high-accuracy mode B
G01 X20. Y30. Z50.;
X40. Y20. Z30.; The high-accuracy mode B is in action.
;
M289; To deactivate the high-accuracy mode B
M30;
(Note) If the high-accuracy mode B is used when the above modal status is not
applied, the alarm <<High-accuracy B unable modal>> appeas.
2019/09/02 13 - 2 - 3 eCOM3NCPR13-2
Chapter 13 High-accuracy Mode
3 Restrictions
3.1 Commandable Functions
The functions available using commands while high accuracy mode B is executing are as follows.
1. All M code commands are possible except M96 (interrupt type macro).
2. All G code commands are possible.
2019/09/02 13 - 2 - 4 eCOM3NCPR13-2
Chapter 13 High-accuracy Mode
When set to <1: Valid>, the additional axis travel operates in high accuracy mode B.
When set to <0: Invalid>, the additional axis travel does not operate in high accuracy mode B.
• If a travel command is issued only for the additional axis, then high accuracy mode B is
temporarily canceled only during that command. 13
• The feed axis and the additional axis cannot move at the same time during the cutting feed.
When issuing a travel command on the additional axis in high accuracy mode B, contact the index
manufacturer and set the appropriate value in the machine parameter before using it.
2019/09/02 13 - 2 - 5 eCOM3NCPR13-2
Chapter 13 High-accuracy Mode
4 Explanations on Parameters
(High-accuracy mode B)
Parameter name Contents Setting range
Corner deceleration Used for automatic corner deceleration function. 0, 10-9999
override Automatic corner deceleration is performed at 100 based on the (%)
machine's unique deceleration rate. When a value larger than 100 is set,
the deceleration rate is smaller, making machining time shorter. When
a value smaller than 100 is set, the deceleration rate is larger, resulting
in more accurate machining. In addition, when 0 is set, automatic
corner deceleration is not performed.
This parameter is disabled when the smooth override type is set to <1:
Type 2>.
Arc deceleration Used for automatic arc deceleration. 0, 10-9999
override When 100 is set, automatic arc deceleration is performed based on the (%)
machine's unique deceleration rate. When a value larger than 100 is set,
the deceleration rate is smaller, making machining time shorter. When
a value smaller than 100 is set, the deceleration rate is larger, resulting
in more accurate machining. In addition, when 0 is set, automatic arc
deceleration is not performed.
Curve approximation Used for automatic curve approximation deceleration. 0, 10-9999
deceleration override When 100 is set, automatic curve approximation deceleration is (%)
performed based on the machine's unique deceleration rate. When a
value larger than 100 is set, the deceleration rate is smaller, making
machining time shorter. When a value smaller than 100 is set, the
deceleration rate is larger, resulting in more accurate machining. In
addition, when 0 is set, automatic curve approximation deceleration is
not performed.
Smooth path offset Used when <Smooth path offset function> (described later) is set to 1-5
level <Valid>.
The larger the value is, the smoother the path becomes.
Smooth override Used machine parameter (high accuracy) <High accuracy B cutting 100-9999
feed time constant> at a value of 100. (%)
If the value is larger than 100, the path becomes smoother.
Minute block deletion If the travel distance of one block is less than the parameter value, the 0-2.000
distance block is deleted. (mm)
If <Smooth path offset function> is set to <Valid>, it is executed at a
programmed point after path approximation.
Smooth override type Change the smooth override type. 0-1
<0: Type 1>
Even if the smooth override setting is changed, the speed difference
that is permitted between blocks does not change.
<1: Type 2>
The speed difference that is permitted between blocks is equal to:
machine parameter (high accuracy) “speed difference” × “smooth
override value”/100.
When type 2 is selected, increasing the set value for the smooth
override makes it more difficult to decelerate at corners. Therefore, the
machining time can be reduced.
13
2019/09/02 13 - 2 - 6 eCOM3NCPR13-2
Chapter 13 High-accuracy Mode
(High-accuracy common)
Parameter name Contents Setting range
Smooth path offset The <Valid/invalid> of the <Smooth path offset function> is set. 0-1
function
Smooth path offset This is used when the <Smooth path offset function> is set <Valid>. 0-99.999
cancel distance If the travel distance of one block is longer than the set value, the (mm)
smooth path offset is cancelled.
If the set value is too large, it may deviate significantly from the
program path. Be careful when changing the value.
Smooth path offset This is used when the <Smooth path offset function> is set <Valid>. 0-120.000
cancel angle If the angle difference between blocks is larger than the set value, the (°)
smooth path offset is cancelled.
If the set value is too large, it may deviate significantly from the
program path. Be careful when changing the value.
Smooth path offset This is used when the <Smooth path offset function> is set <Valid>. 0-9.999
angle determination The smooth path offset is not cancelled even if the block where the (mm)
invalid distance smooth path offset is cancelled for decision of the <Smooth path offset
cancel angle> is less than the value set for a travel distance of one
block.
Smooth path offset Use when <Smooth path offset function> is set to <Valid>. 0-9.999
reference length If the travel distance of one block is longer than the set value, the path (mm)
is offset using the set value.
Minute block deletion Used when the <Smooth path offset function> is set to <Valid>. 0~1
when smooth path When this parameter is set to <1: Enabled>, depending on the settings
offset is cancelled for <Smooth path offset cancel distance> and the <Smooth path offset
cancel angle>, the <Minute block deletion distance> applies the
deletion even if the smooth path offset is cancelled for the block.
(Note) Update the software version to W*10.*** or later in
order to change the parameter setting to <1:
Enabled>.
Accuracy level method Set the deceleration method when the accuracy level is specified in 0~1
high accuracy mode A.
13
2019/09/02 13 - 2 - 7 eCOM3NCPR13-2
Chapter 13 High-accuracy Mode
13
2019/09/02 13 - 2 - 8 eCOM3NCPR13-2
Chapter 13 High Accuracy Mode
CHAPTER 13 (3)
1 Overview
2 High Accuracy (Adjustment) Function
3 High Accuracy (Accuracy Specification) Function
4 Mode Selection Using Program Command
5 Check Current Mode
13
2019/09/02 13 - 3 - 1 eCOM3NCPR13-3
Chapter 13 High Accuracy Mode
1 Overview
The quick setting function for high accuracy mode streamlines the steps required for adjusting
parameters in order to access and use high accuracy mode quickly.
There are two functions available: the “High accuracy (adjustment) function” for selecting the
desired function from the graph on the screen and “High accuracy (accuracy specification)
function” for directly specifying the accuracy level.
Use the desired mode to support the machining content.
The shape accuracy refers to the margin of error on the inner turning that occurs during linear
interpolation and circular interpolation as shown in the diagram below.
■ Linear interpolation ■ Circular interpolation
Margin of
Margin of error on Program path
error on inner
inner turning Actual path
turning
The user can add up to 3 machining modes that can be customized in addition to the 6 modes
noted above.
Machining mode Description
Adjustment A Machining mode A set by customer
13 Adjustment B Machining mode B set by customer
Adjustment C Machining mode C set by customer
2019/09/02 13 - 3 - 2 eCOM3NCPR13-3
Chapter 13 High Accuracy Mode
2.1 Usage
This section provides a description on using the high accuracy (adjustment) function.
There are 6 basic machining modes for the high accuracy (adjustment) function, and there are an
additional 2 modes (machining mode adjustment) that the user can customize based on the basic
modes.
2. Enter the desired machining mode number for <Machining mode>, and press the [ENT] key.
The machining mode that is set is displayed in the green box on the graph on the bottom of the
screen.
e.g.) When <1. Std > is set for the <Machining mode>
3. Press the [F0] (Completion mode) key to complete and exit the editing. After pressing the
[RST] key, the setting appears. 13
2019/09/02 13 - 3 - 3 eCOM3NCPR13-3
Chapter 13 High Accuracy Mode
2. Enter <7. Adjust. A> for the <Machining mode>, and press the [ENT] key.
13
2019/09/02 13 - 3 - 4 eCOM3NCPR13-3
Chapter 13 High Accuracy Mode
3. Enter the mode number to set the <Standard mode>, and press the [ENT] key. <7. Adjust. A>
is displayed inside a box on the graph on the bottom of the screen. The fields <Accuracy> and
<Smoothness> will no longer be grayed out.
e.g.) When <6. Finishing S> is set for the <Standard mode>
4. Set the accuracy level for the standard mode that is set in <Accuracy>. The accuracy refers to
the vertical axis on the graph on the bottom of the screen. The higher the value is, the more
accurate (increase) the machining becomes. The smaller the value is, the faster (decrease) the
machining becomes. The accuracy can be adjusted to 5 levels in the positive and negative
directions for the standard mode.
If the <Accuracy> is changed, the display on the axis changes only for the increment set for
the standard mode (<Adjust. A>) on the bottom of the screen.
e.g.) When <6. Finishing S> is set for the <Standard mode>, and <-2> is set for <Accuracy>
13
2019/09/02 13 - 3 - 5 eCOM3NCPR13-3
Chapter 13 High Accuracy Mode
5. Set the smoothness level on the machining surface for the standard mode that is set in
<Smoothness>. The smoothness level is displayed in the light blue gauge. The higher the
value is, the smoother the machining surface becomes.
The smoothness level can be adjusted to 5 levels in the positive and negative directions for the
standard mode (When <2. Rough> is set for the standard mode, the <Smoothness> becomes
+5.) The adjusted value is displayed in the parentheses above the gauge.
e.g.) When <6. Finishing S> is set for the <Standard mode>, and <-2> is set for <Accuracy>
and <3> is set for smoothness
6. Press the [F0] (Completion mode) key to complete and exit the editing. After pressing the
[RST] key, the setting appears.
(Note) The position and the gauge on the graph from <7. Adjust. A> to <9.
Adjust. C> show the relationship with the standard mode. When
comparing with a mode that is not the standard mode, the position on
the graph and the relationship with the gauge may be different from
the actual machining results.
13
2019/09/02 13 - 3 - 6 eCOM3NCPR13-3
Chapter 13 High Accuracy Mode
2.2 Restrictions
• Depending on the machining mode, the alarm <<The high-accuracy B is being executed>>
may trigger and switching the dry run may be unavailable during cutting travel.
• Depending on the machining mode, if cutting travel is carried out in single operation mode,
the operation message <<Command interrupted in high-accuracy mode B>> may appear.
• Depending on the machining mode, the feed axis and the additional axis cannot be moved at
the same time.
• M96 (interrupt type macro) cannot be used.
• When using a feedrate faster than 20,000 mm/min and the machining mode is changed, the
alarm <<Feedrate error>> may trigger.
• When equipped with the option: high accuracy B/smooth path offset, the cycle time may
become shorter and the machining surface may change slightly.
• The following restrictions apply when the smooth path offset function is enabled. Refer to
“Chapter 13 (1) High accuracy mode A“ and “Chapter 13 (2) High accuracy mode B“ for
further details on the smooth path offset function.
1. Block stop position in single operation mode is different from the program command
position.
The mode cannot be changed.
2. The dry run cannot be changed.
3. A block that is cutting with the smooth path offset function cannot be specified as a block
for resuming or restarting the program. If it is specified, the alarm <<Program restart
error>> is triggered.
4. If the user parameter (high accuracy) <Smooth path offset cancel angle> is set too large,
the alarm <<Curve speed error>> may be triggered.
5. The user parameter (high accuracy) <Minute block deletion distance> does not apply to
blocks where the smooth path offset function has been cancelled.
13
2019/09/02 13 - 3 - 7 eCOM3NCPR13-3
Chapter 13 High Accuracy Mode
There are 3 accuracy specification modes, and the default factory settings are as follows.
The set value is a guide and cannot always be guaranteed to fall within the tolerance.
3.1 Usage
The following description is a setting procedure for <1. Accuracy spec. A>.
The setting procedures for <2. Accuracy spec. B> and <3. Accuracy spec. C> are the same.
1. Open the <High accuracy (Accuracy spec.)> screen in the user parameter (high accuracy).
13
2019/09/02 13 - 3 - 8 eCOM3NCPR13-3
Chapter 13 High Accuracy Mode
2. Enter <1. Accuracy spec. A> for the <Accuracy spec. mode>, and press the [ENT] key. The
<Accuracy spec. A> is the mode for rough machining in the default factory settings. To adjust
the accuracy and machining time, change the accuracy level and the smoothness in steps (3)
and (4).
3. Enter the target accuracy in units (setting units depends on the user parameter (switch 1)
<Machine unit system>) of mm for the <Accuracy level>, and press the [ENT] key.
4. Set the smoothness level in <Smoothness>. The higher the value is, the smoother the
machining surface becomes.
5. Press the [F0] (Completion mode) key to complete and exit the editing. After pressing the
[RST] key, the setting appears.
3.2 Restrictions
• The feed axis and the additional axis cannot be moved at the same time while in accuracy
specification mode.
• When equipped with the option: high accuracy B/smooth path offset, the cycle time may
become shorter and the machining surface may change slightly.
• M96 (interrupt type macro) cannot be used.
• The following restrictions apply when the smooth path offset function is enabled. Refer to
“Chapter 13 (1) High accuracy mode A“ and “Chapter 13 (2) High accuracy mode B“ for
further details on the smooth path offset function.
1. Block stop position in single operation mode is different from the program command
position.
2. The mode cannot be changed.
3. The dry run cannot be changed.
4. A block that is cutting with the smooth path offset function cannot be specified as a block
for resuming or restarting the program. If it is specified, the alarm <<Program restart
error>> is triggered.
5. If the user parameter (high accuracy) <Smooth path offset cancel angle> is set too large,
the alarm <<Curve speed error>> may be triggered.
6. The user parameter (high accuracy) <Minute block deletion distance> does not apply to
blocks where the smooth path offset function has been cancelled.
2019/09/02 13 - 3 - 9 eCOM3NCPR13-3
Chapter 13 High Accuracy Mode
Issue a machining mode or an accuracy specification mode command by using the numerical
values that come after the “L” (Refer to the table below).
L0 (OFF) is the setting to not use the high accuracy mode. The same is true when the user
parameter (high accuracy) <Machining mode> and <Accuracy spec. mode> are both <0>.
L0 OFF
L1 Standard
L2 Rough
L3 Medium rough
L4 Medium rough S
L5 Finishing
L6 Finishing S
L7 Adjustment A
L8 Adjustment B
L9 Adjustment C
L21 Accuracy spec. A
L22 Accuracy spec. B
L23 Accuracy spec. C
(Note) If a command is issued when high accuracy mode A/B is ON, the alarm
<<Unavailable modal for machining mode specification>> is triggered and
operation stops.
Issuing an M299 command can cancel the machining mode that was initiated by the command
M298.
13
2019/09/02 13 - 3 - 10 eCOM3NCPR13-3
Chapter 13 High Accuracy Mode
The following is an example of a program when <1. Std.> is set for <Machining mode> in the user
parameter (high accuracy).
(Program example)
G00 X0 Y0 Z0;
;
G01 X20. Y30. Z50.; <Std. >machining mode
X40. Y20. Z30.;
;
M260; High accuracy mode A (Level 1) ON
G01 X20. Y30. Z50.;
X40. Y20. Z30.;
M269;
;
M298 L5; <Finishing> machining mode ON
G01 X20. Y30. Z50.;
X40. Y20. Z30.; <Finishing> machining mode OFF
M299;
;
G01 X20. Y30. Z50.; <Std.> machining mode
X40. Y20. Z30.;
;
M30;
13
2019/09/02 13 - 3 - 11 eCOM3NCPR13-3
Chapter 13 High Accuracy Mode
Status Description
OFF High accuracy mode is not be used.
Standard The machine is operating in <Standard> machine mode.
Rough The machine is operating in <Rough> machine mode.
Medium rough The machine is operating in <Medium rough> machine mode.
Medium rough S The machine is operating in <Medium rough S> machine mode.
Finishing The machine is operating in <Finishing> machine mode.
Finishing S The machine is operating in <Finishing S> machine mode.
Adjustment A The machine is operating in <Adjust. A> machine mode.
Adjustment B The machine is operating in <Adjust. B> machine mode.
Adjustment C The machine is operating in <Adjust. C> machine mode.
Accuracy spec. A The machine is operating in accuracy specification mode: <Accuracy spec. A>.
Accuracy spec. B The machine is operating in accuracy specification mode: <Accuracy spec. B>.
Accuracy spec. C The machine is operating in accuracy specification mode: <Accuracy spec. C>.
M260 to M267 The machine is operating in high accuracy mode A.
M280 to M287 The machine is operating in high accuracy mode B.
13
2019/09/02 13 - 3 - 12 eCOM3NCPR13-3
(This page was intentionally left blank.)
©2012-2019 BROTHER INDUSTRIES, LTD.
All Rights Reserved.
Printed in Japan.
This is the original instructions.
693716001
1908(15)
eCOM3NCPROKU