HNC-08M CNC System
Programming Manual
V1.0
April, 2009
WuhanChina
Wuhan Huazhong Numerical Control Co., Ltd
Table of Contents
1
GENERAL ...................................................................................................... 3
1.1
Program Introduction of Machining........................................................ 3
1.1.1 The Format of Instruction Programming....................................... 3
1.1.2 Block skip and comments ............................................................. 4
1.1.3 Structure of an NC Program and execution ................................... 4
1.2 G Code................................................................................................... 5
1.2.1 Modal G Code.............................................................................. 5
1.2.2 G-code group ............................................................................... 6
1.2.3 Interpolation Commands and State Commands............................. 9
2
INTERPOLATION COMMAND .................................................................10
2.1
Basic Instructions ..................................................................................10
2.1.1 Rapid positioning (G00) ..............................................................10
2.1.2 Linear InterpolationG01 ...................................................... 11
2.1.3 Circular Interpolation (G02, G03) ...............................................14
2.2 Canned cycle programming ...................................................................19
2.2.1 High-speed Peck Drilling cycle (G73) .........................................19
2.2.2 Left-hand Tapping Cycle (G74) ..................................................21
2.2.3 Fine Boring Cycle (G76) .............................................................23
2.2.4 Drilling Cycle, Spot Drilling (G81) .............................................25
2.2.5 Drilling Cycle Counter Boring Cycle (G82) ................................27
2.2.6 Peck Drilling Cycle (G83) ...........................................................29
2.2.7 Tapping Cycle (G84)...................................................................31
2.2.8 Boring Cycle (G85) .....................................................................33
2.2.9 Boring Cycle (G86) .....................................................................35
2.2.10 Back Boring Cycle (G87) ............................................................36
2.2.11 Boring Cycle (G89) .....................................................................37
2.2.12 Canned Cycle Cancel (G80) ........................................................39
3
STATE COMMAND .....................................................................................41
3.1
3.2
3.3
Absolute and Incremental Programming (G90/G91) ..............................41
Dwell G04.............................................................................................42
Coordinate System ................................................................................42
3.3.1 Setting a Workpiece Coordinate System (G92) ............................42
3.3.2 Selecting a Workpiece Coordinate SystemG54~G59 ...........44
I
3.3.3 Plane Selection (G17/G18/G19) ..................................................45
3.4 Tool compensation ................................................................................45
3.4.1 Tool Length Compensation (G43/G44/G49) ................................45
3.4.2 Cutter Compensation (G40/G41/G42) .........................................47
3.5 Subprogram Control (M98) ...................................................................48
4
HIGH-SPEED AND HIGH-PRECISION MODE (G05.1) ..........................49
4.1
4.2
High-speed and High-precision Mode (G05.1Q1) ..............................50
High-speed and High-precision Mode (G05.1Q2) ..............................50
APPENDIX: PROGRAM ALARM AND DESCRIPTION .........................53
II
1 General
1.1 Program Introduction of Machining
1.1.1 The Format of Instruction Programming
An NC program consists of a sequence of NC blocks, each instruction constituted
by a number of commands. Each command includes two partscommand word
and command parameter. Function is identified by command keyword, such as the
effect of command word G in the G01 is preparatory function, the effect of
command word M in the M03 is miscellaneous function.
As it is shown in Figure 1-1.
Figure 1-1 Structure of an NC Program
Note:
1Many blocks can be written on the same line, separated by the ;.
2The block must be written on the same line, can not be written on
different line.
1.1.2 Block skip and comments
1) block skip
The blocks can be executed optionally if there is a skip symbol \ before them. If
block skip is effective, the blocks which have a skip symbol \ before them are not
executed, else executed.
Warning, the skip symbol is \, instead of /, the latter for the division operator.
The blocks which need skip should be on one line, when block skip is effective,
the blocks on the same line which have a skip symbol before them are skipped and
not executed.
Example:
G0 X0 Y0 Z0
\G00 X20 Y30G01 Z50 F300
M30
When block skip is effective, all the code on the second line is not executed.
2) comment
All information after the is regarded as comments which are ignored when the
program is translated.
Comments can be done on whole line, or partly on the middle. It should be done
on the tail when comment partly.
Example:
M03 S1000;
Rapid positioning (comment whole line)
G90 G00 X100 Y200;
G17 G02 X150 I25 F300;
circular interpolationcomment partly on the tail
1.1.3 Structure of an NC Program and execution
An NC program consists of main program and subprogram. It must have a main
program, but unnecessary to subprogram. Main program should be placed at the
beginning of the program file and end by M30 or M99. Subprogram can be ended
by M99 only, and its name should be digital only, and can not have the extension.
The storage location of subprogram can be divided into two situations:
1) Subprogram and main program can exist in the same file, this time,
subprogram must appear after the main program. The sequence between
subprograms has non-requirements;
2) Subprogram can also be stored as a separate file, and the file name is the
subprogram name.
Program executes as shown in Figure 1-3
Figure 1-3 program execution
1.2 G Code
1.2.1 Modal G Code
G codes are divided into the following two types according to their validity:
1) One-shot G code: The G code is effective only in the block in which it is
specified.
2) Modal G codes: This G codes are stored after the execution by the CNC
system. The G code is effective until another G code of the same group is
specified.
Example:
G53 X0 Y0 Z0 G53 is One-shot G code, and needs to be specified each time
G01 X-200 F300
Y-100
G01 is Modal G code, and it is stored after the execution,
and needs to be specified no longer.
Z-250
M30
1.2.2 G-code group
G codes are divided into several groups according to their function, G codes in 00
group are one-shot G code, while the other groups are modal G code. Multiple G
codes can be specified in the same block if each G code belongs to a different
group. If multiple G codes that belong to the same group are specified in the same
block, only the last G code specified is effective.
The following table is the group of G code in HNC-08M system.
The system supports the G codes that already listed on the following table, else
does not support them yet, please do not use.
Number
G code
01
02
03
04
G00
G01
G02
05
06
G02.4
G03.4
07
08
09
10
G04
G28
G29
11
12
13
G52
G53
G53.1
G03
G30
Group
Function
01
Rapid positioning
Linear interpolation
Circular interpolation/Helical interpolation CW
Circular interpolation/Helical interpolation
CCW
3D Circular interpolation
3D Circular interpolation
00
DwellExact stop
Return to reference point
Return from reference point
Return to the secondthirdfourth reference
point
Setting for local coordinate system
Machine coordinate system selection
Cutter arbor direction Control
14
15
16
G60
G65
G92
17
18
G15
G16
19
20
21
G17
G18
G19
22
23
24
G24
G25
G26
25
26
27
G40
G41
G42
28
29
30
31
32
Single direction positioning
Calling Macro program
Setting for work coordinate system
17
polar coordinate cancel
polar coordinate
02
XY plane selection
ZX plane selection
YZ plane selection
12
Programmable mirror image (AXIS)
Programmable mirror image (POINT)
Programmable mirror image cancel
07
Cutter compensation cancel
Cutter compensation left
Cutter compensation right
G43
G44
G43.4
G44.4
G49
08
Tool length compensation +direction
Tool length compensation - direction
3D Tool length compensation +direction
3D Tool length compensation - direction
Tool length compensation cancel
33
34
G50
G51
11
Scaling cancel
Scaling
35
36
37
38
39
40
G54
G55
G56
G57
G58
G59
14
Workpiece coordinate system 1 selection
Workpiece coordinate system 2 selection
Workpiece coordinate system 3 selection
Workpiece coordinate system 4 selection
Workpiece coordinate system 5 selection
Workpiece coordinate system 6 selection
41
42
G61
G05.1
15
Exact stop mode
High-speed and high-quality mode
43
G68
44
45
G68.1
G69
Coordinate rotation
16
Special coordinate system selection
Coordinate rotation cancel
46
G73
Peck drilling cycle
47
G74
Counter tapping cycle
48
49
50
51
52
53
54
55
56
57
G76
G80
G81
G82
G83
G84
G85
G86
G87
G89
Fine boring cycle
Canned cycle cancel
Drilling cycle
Drilling cycle (Dwell)
Peck drilling cycle
Tapping cycle
Boring cycle
Boring cycle
Back boring cycle
Boring cycle
58
59
G90
G91
03
Absolute command
Increment command
60
61
G94
G95
05
Feed per minute
Feed per rotation (not support yet)
62
63
G98
G99
10
Return to initial point in canned cycle
Return to R point in canned cycle
09
When the power is turned on , Its default setting as following:
01 Group: specified by the following parameter.
P1008 = 0: G00 when power on
P1008 = 1: G01 when power on
02 Group: specified by the following parameter.
P1011 = 0: G17 when power on
P1011 = 1: G18 when power on
P1011 = 2: G19 when power on
03 Group: specified by the parameter.
P1009 = 0: G90 when power on
P1009 = 1: G91 when power on
05 Group: G94 when power on
07 Group: G40 when power on
08 Group: G49 when power on
09 Group: G80 when power on
10 Group: G98 when power on
11 Group: G50 when power on
12 Group: G26 when power on
14 Group: G54 when power on
15 Group: G61 when power on
16 Group: G69 when power on
17 Group: G15 when power on
1.2.3
Interpolation Commands and State Commands
G codes can also be divided into interpolation commands and state commands
according to their function.
1) Interpolation Command
The so-called interpolation command is the command to control the movement of
axis, such as the G00, G01.
Coordinate commands which control the motor position are output after
Interpolation command is executed.
It divides into the movement of the tool and the movement of the workpiece
according to different machine, the movement of tool is assumed for Interpolation
command in this manual.
2) State Command
The state command is that can affect the state of executing interpolation
command .It is stored by the system only. It outputs no coordinates command and
does not control the movement of axis, but will affect the execution and results of
the subsequent interpolation command.
For example: G90 and G91 are state command. The following interpolation
commands control the movement of axis by absolute value mode after G90 ,
similarly the following interpolation commands control the movement of axis by
increment value mode. after G91
2 Interpolation Command
2.1 Basic Instructions
2.1.1
Rapid positioning (G00)
Description
The command G00 moves a tool to the position in the workpiece system specified
with an absolute or an incremental command at a rapid traverse rate.
G00 is a straight line positioning methods, when executing G00, the system adjusts
the speed of each axis automatically to make sure that a tool moves a straight line
from the start point to the end point.
Figure 2-1 G00 Rapid positioning
The rapid traverse rate of G00 can not be specified in the address F, but can be
overrided based on the parameter setting by the switch of rapid traverse
magnification.
P2021: the acceleration of the linear axis G00.
P2022: the acceleration of the rotation axis G00.
P2025: the speed of linear axis G00.
P2026: the speed of rotation axis G00.
Format
G00 IP_;
IP_: In the absolute command, coordinate value of the end point is programmed.
In the incremental command the distance the tool moves is programmed.
2.1.2 Linear InterpolationG01
Description
The command G01 moves a tool to the position in the workpiece system with an
absolute or an incremental command at the speed which is specified in F.
The feedrate which is specified in F is effective until a new value is specified. It
need not be specified for each block. The feedrate should be within the range
which is determined by the system. The system will take the critical value
automatically if it is beyond the range.
1) If the speed which is specified in F is more than its maximum speed, the system
will take the maximum speed.
2) If the speed which is specified in F is less than its minimum speed, the system
will take the minimum speed.
The maximum speed and minimum speed are limited by the following parameter
settings:
P2035: the maximum speed in G01
P2041: the minimum speed in G01
In addition, its acceleration may also be limited the following parameter settings:
P2031: the acceleration of linear axis in G01.
P2032: the acceleration of rotation axis in G01.
Format
G01 IP_ F_;
IP_: For an absolute command, the coordinates of an end position, and for an
incremental command, the distance the tool moves.
F_: Speed of tool feed
Figure 2-2 G01 linear interpolation
mm /min is used as the unit of feed rate for the linear axis, while degrees/ min for
the rotation axis.
When using the linear axis (such as XY or Z) and rotation axis (such as AB or C)
for linear interpolation, the speed specified in F is feedrate along the arc in the
Cartesian coordinates which is composed of the linear axis and the rotation axis .
To obtain the feed speed of rotation axis, the time for movement should be
determined firstly. The feed speed of rotation axis (degrees / min) is equal to the
ratio of the distance that rotation axis moves and the time.
Example
G91 G01 X30 A50 F500
The A axis regards as a linear axis to calculate the feed time.
Feed time
30 2 50 2
0.116 min
500
Rotation axis feed rate v
50
50
431.03degree / min
t
0.116
Example
1) Interpolation of Linear Axis
Figure 2-3 G01 Interpolation of linear axis
2) Interpolation of Rotation Axis
Figure 2-3 G01 Interpolation of rotation axis
2.1.3 Circular Interpolation (G02, G03)
Description
Circular interpolation commands move a tool along a circular arc clockwise (G02)
or counterclockwise (G03). Circular interpolation includes several elements as
following, the user can program with a few of them.
1) The direction of circular interpolation
Clockwise(G02) and counterclockwise(G03) on the XY plane are defined when the
XY plane is viewed in the positivetonegative direction of the Z axis in the
Cartesian coordinate system. Similarly, the ZX plane is viewed in the
positivetonegative direction of the Y axis in the Cartesian coordinate system, the
YZ plane is viewed in the positivetonegative direction of the X axis in the
Cartesian coordinate system
See the figure 2-5 below.
Fig 2-5 Direction of the circular interpolation
2) Expression of the arc end point
The circular arc end point is specified with the command (X, Y, Z) . For an
absolute command, the workpiece coordinates of an arc end point, and for an
incremental command, the distance the tool moves. See the figure2-6 below.
Fig 2-6 Expression of a circular arc end point
3) Distance from the start point to the center of the arc
The arc center is specified by addresses I, J and K. The numerical value following I,
J or K, however, is a vector component in which the arc center is seen from the start
point, and is always specified as an incremental value irrespective of G90 and G91,
as shown below.
I, J and K must be signed according to the direction.
If X, Y, and Z are omitted , the end point is the same as the start point, and a full
circle which the center is specified with I, J, and K is specified.
As shown in Figure 2-7.
Fig 2-7 Expression of arc center
4) Radius
The arc center also can be specified with the radius in addition to the method
above. There are two situations:
a) central angle is less than 180;
b) central angle is more than 180;
The arc should be clearly specified in programming. It is determined by the sign of
the arc radius R. When the central angle is less than 180, R is specified with a
positive value. If the central angle is more than 180, R must be specified with a
negative value. As shown in Fig2-8.
Fig 2-8 Sign of radius
5) The Feedrate
The feedrate in circular interpolation is equal to the feed rate specified by the F
code, and the feedrate along the arc (the tangential feedrate of the arc) is controlled
to be the specified feedrate.
Format
G17:
G18:
G19:
Fig 2-9 Format of the arc command
The working plane is XY.
The working plane is XZ.
The working plane is YZ.
G02:
G03:
X_:
Y_:
Z_:
I_:
J_:
K_:
R_:
F_:
Circular interpolation clockwise direction (CW).
Circular interpolation counterclockwise direction (CCW).
Command values of X axis.
Command values of Y axis.
Command values of Z axis.
X axis distance from the start point to the center of an arc with sign.
Y axis distance from the start point to the center of an arc with sign.
Z axis distance from the start point to the center of an arc with sign.
Arc radius.
Feedrate along the arc.
Note:
1) If I, J, K, and R are all specified in the program, R takes precedence
and the other are ignored.
2) If the axis is not on the plane which is specified, an alarm is output.
Example
Fig 2-10 Circular Interpolation Example
The tool path programming of the above Fig 2-10 is as follows:
1) Absolute programming
G92 X200.0 Y40.0 Z0;
G90 G03 X140.0 Y100.0 R60.0 F300.;
G02 X120.0 Y60.0 R50.0;
or
G92 X200.0 Y40.0Z0;
G90 G03 X140.0 Y100.0 I-60.0 F300.;
G02 X120.0 Y60.0 I-50.0;
2) Incremental programming
G91 G03 X-60.0 Y60.0 R60.0 F3000.;
G02 X-20.0 Y-40.0 R50.0;
or
G91 G03 X-60.0 Y60.0 I-60.0 F300.;
G02 X-20.0 Y-40.0 I-50.0;
2.2 Canned cycle programming
The canned cycle command can execute the specific operation using one G code,
instead of several separated G commands in the program.
Canned cycles make it easier for the programmer to create programs. With a
canned cycle, a frequentlyused machining operation can be specified in a single
block with a G function; without canned cycles, normally more than one block is
required. In addition, the use of canned cycles can shorten the program to save
memory.
2.2.1
High-speed Peck Drilling cycle (G73)
Description
The highspeed peck drilling cycle performs intermittent feeding along the Zaxis.
When this cycle is used, chips can be removed from the hole easily. This allows,
drilling to be performed efficiently.
Before specifying G73, rotate the spindle using a miscellaneous function (M
code).When the G73 code and an M code are specified in the same block, the M
code is executed at the time of the first positioning operation. The system then
proceeds to the next drilling operation.
When K is used to specify the number of repeats, the M code is executed for the first
hole only; for the second and subsequent holes, the M code is not executed.
The action sequences as shown in Figure 2-11. Rapid positioning represents by
dashed in the figure.
Fig 2-11 G73 highspeed peck drilling cycle
Format
(G98/G99) G73 X_ Y_ Z_ R_ Q_ P_ K_ F_ L_;
X_ Y_:
Z_:
Coordinate value of the hole position on XY plane in the absolute
command, or the coordinate value of the hole position with reference to
the initial point on XY plane in the incremental command
Coordinate value of the hole position on Z-axis in the absolute
command, or the coordinate value of the hole position with reference to
the point R on Z-axis in the incremental command
R_:
Q_:
P_:
K_:
F_:
L_:
Coordinate value of the point R in the absolute command, or the
coordinate value of the point R with reference to the initial point in the
incremental command
Depth of cutting for each cutting feed in the incremental command. The
last depth of cutting near the hole may be less than this value, and Q
should be negative.
Dwell time at the bottom of a hole, in milliseconds
Retraction amount at each time in the incremental command
Cutting feedrate
Number of repeats (when L = 1,it can be omitted).
Note:
1) Drilling axis must be Z-axis;
2) Z-point must be less than R-point, else an alarm is output;
3) the parameters of the instruction G73 are stored as modal data, the
same data can be omitted.
Example
M3 S2000;
Cause the spindle to start rotating.
G90 G99 G73 X300 Y-250 Z-150 R-100 Q15 K5 P2000 L5 F120;
Position, drill hole 1, then return to point R.
Y-550;
Position, drill hole 2, then return to point R.
Y-750;
Position, drill hole 3, then return to point R.
X1000;
Position, drill hole 4, then return to point R.
Y-550;
Position, drill hole 5, then return to point R.
G98 Y-750;
Position, drill hole 6, then return to the initial level.
G80 G28 G91 X0 Y0 Z0 ;
drilling cancel, then return to the reference point
M5;
Cause the spindle to stop rotating
2.2.2 Left-hand Tapping Cycle (G74)
G74 is similar to G84, the difference is that G74 command can create a reverse
thread. (Tapping is performed by turning the spindle counterclockwise. Then, the
spindle turns clockwise for retraction when the tool reaches the bottom of the hole).
In rigid tapping mode, using spindle motor to controlling the tapping process.
Spindle motor works as the servo motor. Performing tapping by the interpolation
between the tapping axis and spindle. When tapping is performed in rigid mode, the
spindle rotates one turn every time a thread lead which takes place along the tapping
axis. This operation does not vary even during acceleration or deceleration.
The action sequence of G74 is shown in Figure 2-12. Rapid traverse to the R-point
after positioning Along the X and Y axis, then the spindle turns counterclockwise,
and performs tapping from the R-point to the Z-point. stop and pause the spindle
when the tapping is completed, and then the spindle turns clockwise for retracting to
the R point, then the spindle stops. Rapid traverse is performed to return to the initial
level if it is in the G98 mode.
Fig 2-12 G74 left-hand tapping cycle
Format
G74 X_ Y_ Z_ R_ P_ F_ S_ L_;
X_ Y_:
Z_:
R_:
Coordinate value of the hole position on XY plane in the absolute
command, or the coordinate value of the hole position with reference to
the initial point in the incremental command
Coordinate value of the hole position on Z axis in the absolute
command, or the coordinate value of the hole position with reference to
the point R in the incremental command
Coordinate value of the point R in the absolute command, or the
coordinate value of the point R with reference to the initial point in the
incremental command
P_:
Dwell time at the bottom of a hole, in milliseconds.
F_:
Thread lead
S_:
The spindle speed of Tapping
L_:
Number of repeats ( when L = 1, it can be omitted).
The feedrate specified in the F is invalid during rigid tapping, the feedrate along the
tapping axis is calculated by the following formula:
Feedrate = spindle speed screw lead
Note:
1) Tapping axis must be Z-axis;
2) Z-point must be less than R-point, else an alarm is output;
3) the parameters of the command G74 are stored as modal data, the
same data can be omitted.
2.2.3 Fine Boring Cycle (G76)
Description
G76 command would bore a hole precisely. When the tool reaches the bottom of
the hole, the spindle stops, and the tool is retracted to the direction opposite to the
tool tip.
The shift amount which is opposite to the tool tip along X-axis at the bottom of a
hole is specified by I and J. I and J is modal value retained within canned cycles.
The shift direction is determined when loading a tool.
Fig 2-13 G76 fine boring cycle
Format
(G98/G99) G76 X_ Y_ Z_ R_ I_ J_ P_ F_ L_;
X_ Y_Coordinate value of the hole position in the absolute command, or the
coordinate value of the hole position with reference to the initial point in
the incremental command.
Z_
Coordinate value of the hole position in the absolute command, or the
coordinate value of the hole position with reference to the point R in the
incremental command.
R_ Coordinate value of the point R in the absolute command, or the
coordinate value of the point R with reference to the initial point in the
incremental command.
I_
Shift amount along X-axis at the bottom of a hole.
J_ Shift amount along Y-axis at the bottom of a hole.
P_ Dwell time at the bottom of a hole.
F_ Cutting feedrate.
L_
Number of repeats ( when L = 1, it can be omitted).
Note:
1) Drilling axis must be Z-axis;
2) Z-point must be less than R-point, else an alarm is output;
3) The parameters of the command G76 are stored as modal data, the
same data can be omitted.
2.2.4 Drilling Cycle, Spot Drilling (G81)
Description
This cycle is used for normal drilling. Cutting feed is performed to the bottom of the
hole. The tool is then retracted from the bottom of the hole in rapid traverse.
After positioning along the X-and Y-axes, rapid traverse is performed to point R.
Drilling is performed from point R to point Z. The tool is then retracted in rapid
traverse. Before specifying G81, use a miscellaneous function (M code) to rotate the
spindle. When the G81 command and an M code are specified in the same block, the
M code is executed at the time of the first positioning operation. The system then
proceeds to the next drilling operation. When K is used to specify the number of
repeats, the M code is performed for the first hole only; for the second and
subsequent holes, the M code is not executed.
The action sequence of G81 is shown in Figure 2-14. Rapid positioning represents
by dashed in the figure.
Fig 2-14 G81 drilling cycle, spot drilling
Format
(G98/G99) G81 X_ Y_ Z_ R_ F_ L_;
X_ Y_
Z_
R_
F_
L_
Coordinate value of the hole position on XY plane in the absolute
command, or the coordinate value of the hole position with reference
to the initial point on XY plane in the incremental command.
Coordinate value of the hole position on Z axis in the absolute
command, or the coordinate value of the hole position with reference
to the point R on Z axis in the incremental command.
Coordinate value of the point R in the absolute command, or the
coordinate value of the point R with reference to the initial point in
the incremental command.
Cutting feedrate.
Number of repeats ( when L = 1, it may be omitted).
Note:
1) Drilling axis must be Z-axis;
2) Z-point must be less than R-point, else an alarm is output;
3) the parameters of the command G81 are stored as modal data, the
same data can be omitted.
Example
M3 S2000;
Cause the spindle to start rotating.
G90 G99 G81 X300 Y-250 Z-150 R-100 F120;
Position, drill hole 1, then return to point R.
Y-550;
Position, drill hole 2, then return to point R.
Y-750;
Position, drill hole 3, then return to point R.
X1000;
Position, drill hole 4, then return to point R.
Y-550;
Position, drill hole 5, then return to point R.
G98 Y-750;
Position, drill hole 6, then return to the initial
level.
G80 G28 G91 X0 Y0 Z0 ;
drilling cancel, then return to the reference point
M5;
Cause the spindle to stop rotating
2.2.5 Drilling Cycle Counter Boring Cycle (G82)
Description
This cycle is used for normal drilling. After positioning along the X and Y axes,
rapid traverse is performed to point R. Drilling is then performed from point R to
point Z. When the bottom of the hole has been reached, a dwell is performed. The
tool is then retracted in rapid traverse.
Before specifying G82, use a miscellaneous function (M code) to rotate the spindle.
When the G82 command and an M code are specified in the same block, the M code
is executed at the time of the first positioning operation. The system then proceeds to
the next drilling operation.
When K is used to specify the number of repeats, the M code is executed for the first
hole only; for the second and subsequent holes, the M code is not executed.
When a tool length offset (G43, G44, or G49) is specified in the canned cycle, the
offset is applied at the time of positioning to point R.
The action sequence of G82 is shown in Figure 2-15.
Fig 2-15 G82 drilling cycle counter boring cycle
Format
(G98/G99) G82 X_ Y_ Z_ R_ P_ F_ L_;
X_ Y_
Z_
R_
P_
F_
L_
Coordinate value of the hole position on XY plane in the absolute
command, or the coordinate value of the hole position with reference
to the initial point on XY plane in the incremental command
Coordinate value of the hole position on Z axis in the absolute
command, or the coordinate value of the hole position with reference
to the point R on Z axis in the incremental command
Coordinate value of the point R in the absolute command, or the
coordinate value of the point R with reference to the initial point in
the incremental command
Dwell time at the bottom of the hole
Cutting feedrate
Number of repeats ( when L = 1, it can be omitted)
Note:
1) Drilling axis must be Z-axis;
2) Z-point must be less than R-point, else an alarm is output;
3) the parameters of the command G82 are stored as modal data, the
same data can be omitted.
Example
M3 S2000;
Cause the spindle to start rotating.
G90 G99 G82 X300 Y-250 Z-150 R-100 P1000 F120;
Position, drill hole 1, then return to point R.
Y-550;
Position, drill hole 2, then return to point R.
Y-750;
Position, drill hole 3, then return to point R.
X1000;
Position, drill hole 4, then return to point R.
Y-550;
Position, drill hole 5, then return to point R.
G98 Y-750;
Position, drill hole 6, then return to the initial level.
G80 G28 G91 X0 Y0 Z0 ;
drilling cancel, then return to the reference point
M5;
Cause the spindle to stop rotating
2.2.6 Peck Drilling Cycle (G83)
Description
This cycle performs peck drilling. It performs intermittent cutting feed to the
bottom of a hole while removing shavings from the hole.
Q represents the depth of cut for each cutting feed. It must always be specified as
an incremental value. The tool is retracted to the point R level to remove shavings
after performing the depth Q of each cutting feed. In the second and subsequent
cutting feeds, rapid traverse is performed up to a k point just before where the last
drilling ended, and cutting feed is performed again, Q is the depth of cutting.
K represents the retraction amount at each time in the incremental command, the k
point is the position that the retraction amount is k above the point the last drilling
ended.
Before specifying G83, use a miscellaneous function (M code) to rotate the spindle.
When the G83 command and an M code are specified in the same block, the M
code is executed at the time of the first positioning operation. The system then
proceeds to the next drilling operation.
When K is used to specify the number of repeats, the M code is executed for the
first hole only; for the second and subsequent holes, the M code is not executed.
When a tool length offset (G43, G44, or G49) is specified in the canned cycle, the
offset is applied at the time of positioning to point R.
The action sequence of G83 is shown in Figure 2-16.
Fig 2-16 G83 peck drilling cycle
Format
(G98/G99) G83 X_ Y_ Z_ R_ Q_ K_ F_ L_;
X_ Y_
Z_
Coordinate value of the hole position on XY plane in the absolute
command, or the coordinate value of the hole position with reference
to the initial point on XY plane in the incremental command.
Coordinate value of the hole position on Z axis in the absolute
R_
Q_
K_
F_
L_
command, or the coordinate value of the hole position with reference to
the point R on Z axis in the incremental command.
Coordinate value of the point R in the absolute command, or the
coordinate value of the point R with reference to the initial point in the
incremental command.
Depth of cutting for each cutting feed in the incremental command.
Retraction amount at each time in the incremental command.
Cutting feedrate.
Number of repeats ( when L = 1, it can be omitted).
Note:
1) Drilling axis must be Z-axis;
2) Z-point must be less than R-point, else an alarm is output;
3) the parameters of the command G83 are stored as modal data, the
same data can be omitted.
Example
M3 S2000;
Cause the spindle to start rotating.
G90 G99 G83 X300 Y-250 Z-150 R-100 Q15 K5 L3 F120;
Position, drill hole 1, then return to point R.
Y-550;
Position, drill hole 2, then return to point R.
Y-750;
Position, drill hole 3, then return to point R.
X1000;
Position, drill hole 4, then return to point R.
Y-550;
Position, drill hole 5, then return to point R.
G98 Y-750;
Position, drill hole 6, then return to the initial level.
G80 G28 G91 X0 Y0 Z0 ;
drilling cancel, then return to the reference point
M5;
Cause the spindle to stop rotating
2.2.7 Tapping Cycle (G84)
In rigid tapping mode, using spindle motor to controlling the tapping process.
Spindle motor works as the servo motor. Performing tapping by the interpolation
between the tapping axis and spindle. When tapping is performed in rigid mode,
the spindle rotates one turn every time a thread lead which takes place along the
tapping axis. This operation does not vary even during acceleration or
deceleration.
The action sequence of G84 is shown in Figure 2-17. Rapid traverse to the R-point
after positioning Along the X and Y axis, then the spindle turns counterclockwise,
and performs tapping from the R-point to the Z-point. stop and pause the spindle
when the tapping is completed, and then the spindle turns clockwise for retracting
to the R point, then the spindle stops. Rapid traverse is performed to return to the
initial level if it is in the G98 mode.
Fig 2-17 G84 tapping cycle
Format
G84 X_ Y_ Z_ R_ P_ F_ S_ L_;
X_ Y_:
Z_:
R_:
P_:
Coordinate value of the hole position on XY plane in the absolute
command, or the coordinate value of the hole position with reference to
the initial point in the incremental command
Coordinate value of the hole position on Z axis in the absolute
command, or the coordinate value of the hole position with reference to
the point R in the incremental command
Coordinate value of the point R in the absolute command, or the
coordinate value of the point R with reference to the initial point in the
incremental command
Dwell time at the bottom of a hole, in milliseconds.
F_:
S_:
L_:
Thread lead
The spindle speed of Tapping
Number of repeats ( when L = 1, it can be omitted).
The feedrate specified in the F is invalid during rigid tapping, the feedrate along the
tapping axis is calculated by the following formula:
Feedrate = spindle speed screw lead
Note
1) Tapping axis must be Z-axis;
2) Z-point must be less than R-point, else an alarm is output;
3) the parameters of the command G84 are stored as modal data, the
same data can be omitted.
2.2.8 Boring Cycle (G85)
This cycle is used to bore a hole.
After positioning along the X and Y axes, rapid traverse is performed to point R.
Drilling is performed from point R to point Z. When point Z has been reached,
cutting feed is performed to return to point R., rapid traverse is performed to return
to initial level if it is in G98 mode.
Before specifying G85, use a miscellaneous function (M code) to rotate the spindle.
When the G85 command and an M code are specified in the same block, the M code
is executed at the time of the first positioning operation. The system then proceeds to
the next drilling operation.
When L is used to specify the number of repeats, the M code is executed for the first
hole only; for the second and subsequent holes, the M code is not executed.
When a tool length offset (G43, G44, or G49) is specified in the canned cycle, the
offset is applied at the time of positioning to point R.
The action sequence of G85 is shown in Figure 2-17.
Fig 2-18 G85 boring cycle
Format
(G98/G99) G85 X_ Y_ Z_ R_ P_ F_ L_;
X_ Y_
Z_
P_
K_
F_
L_
Coordinate value of the hole position on XY plane in the absolute
command, or the coordinate value of the hole position with reference
to the initial point on XY plane in the incremental command
Coordinate value of the hole position on Z axis in the absolute
command, or the coordinate value of the hole position with reference
to the point R on Z axis in the incremental command
Dwell time at the bottom of the hole
Retraction amount at each time in the incremental command
Cutting feedrate
Number of repeats ( when L = 1, it can be omitted)
Note
1) Drilling axis must be Z-axis;
2) Z-point must be less than R-point, else an alarm is output;
3) The parameters of the command G85 are stored as modal data, the
same data can be omitted.
Example
M3 S2000;
Cause the spindle to start rotating.
G90 G99 G85 X300 Y-250 Z-150 R-120 P3000 F120;
Position, drill hole 1, then return to point R.
Y-550;
Position, drill hole 2, then return to point R.
Y-750;
Position, drill hole 3, then return to point R.
X1000;
Position, drill hole 4, then return to point R.
Y-550;
Position, drill hole 5, then return to point R.
G98 Y-750;
Position, drill hole 6, then return to the initial level.
G80 G28 G91 X0 Y0 Z0 ;
drilling cancel, then return to the reference point
M5;
Cause the spindle to stop rotating
2.2.9 Boring Cycle (G86)
The action of G86 is the same as G81, when the bottom of the hole has been
reached, the spindle stops, and then the tool is retracted in rapid traverse. It is used
to bore a hole, which is not required the precise boring.
Format
(G98/G99) G86 X_ Y_ Z_ R_ F_ L_;
X_ Y_
Z_
Coordinate value of the hole position on XY plane in the absolute
command, or the coordinate value of the hole position with reference
to the initial point on XY plane in the incremental command
Coordinate value of the hole position on Z axis in the absolute
command, or the coordinate value of the hole position with reference
to the point R on Z axis in the incremental command
R_
F_
L_
Coordinate value of the point R in the absolute command, or the
coordinate value of the point R with reference to the initial point in
the incremental command
Cutting feedrate
Number of repeats ( when L = 1, it can be omitted)
2.2.10 Back Boring Cycle (G87)
The command G87 generally is used to bore a hole which the top is smaller than
the bottom. The Z-point on the bottom of the hole is generally above the reference
point R. The command is different from others.
Fig 2-19 G87 back boring cycle
Format
(G98) G97 X_ Y_ Z_ R_ I_ J_ P_ F_ L_;
X_ Y_
Z_
Coordinate value of the hole position on XY plane in the absolute
command, or the coordinate value of the hole position with reference
to the initial point on XY plane in the incremental command
Coordinate value of the hole position on Z axis in the absolute
command, or the coordinate value of the hole position with reference
R_
I_
J_
P_
F_
L_
to the point R on Z axis in the incremental command
Coordinate value of the point R in the absolute command, or the
coordinate value of the point R with reference to the initial point in
the incremental command
Shift amount along X-axis at the bottom of a hole
Shift amount along Y-axis at the bottom of a hole
Dwell time at the bottom of the hole
Cutting feedrate
Number of repeats ( when L = 1, it can be omitted)
Note:
1) Drilling axis must be Z-axis;
2) Z-point must be less than R-point, else an alarm is output;
3) the parameters of the command G87 are stored as modal data, the
same data can be omitted.
4) G87 can be used with G98 only, invalid with G99.
2.2.11 Boring Cycle (G89)
This cycle is used to bore a hole.
This cycle is almost the same as G86. The difference is that this cycle performs a
dwell at the bottom of the hole.
Before specifying G89, use a miscellaneous function (M code) to rotate the spindle.
When the G89 command and an M code are specified in the same block, the M code
is executed at the time of the first positioning operation. The system then proceeds to
the next drilling operation. When L is used to specify the number of repeats, the M
code is executed for the first hole only; for the second and subsequent holes, the M
code is not executed.
When a tool length offset (G43, G44, or G49) is specified in the canned cycle, the
offset is applied at the time of positioning to point R.
The action sequence of G89 is shown in Figure 2-20.
Fig 2-20 G89 boring cycle
Format
(G98/G99) G89 X_ Y_ Z_ R_ P_ F_ L;
X_ Y_ Coordinate value of the hole position on XY plane in the absolute
command, or the coordinate value of the hole position with reference to
the initial point on XY plane in the incremental command.
Z_
Coordinate value of the hole position on Z axis in the absolute
command, or the coordinate value of the hole position with reference to
the point R on Z axis in the incremental command.
R_
Coordinate value of the point R in the absolute command, or the
coordinate value of the point R with reference to the initial point in the
incremental command.
P_
Dwell time at the bottom of the hole.
F_
Cutting feedrate.
L_
Number of repeats ( when L = 1, it can be omitted).
Example
M3 S2000;
Cause the spindle to start rotating.
G90 G99 G89 X300 Y-250 Z-150 R-120 P1000 F120;
Y-550;
Y-750;
X1000;
Y-550;
G98 Y-750;
G80 G28 G91 X0 Y0 Z0 ;
M5;
Position, drill hole 1, then return to point R then
stop at the bottom of the hole for 1s
Position, drill hole 2, then return to point R.
Position, drill hole 3, then return to point R.
Position, drill hole 4, then return to point R.
Position, drill hole 5, then return to point R.
Position, drill hole 6, then return to the initial level.
drilling cancel, then return to the reference point
Cause the spindle to stop rotating
Note:
1) Drilling axis must be Z-axis;
2) Z-point must be less than R-point, else an alarm is output;
3) The parameters of the command G85 are stored as modal data, the
same data can be omitted.
2.2.12 Canned Cycle Cancel (G80)
Description
All canned cycles are canceled to perform normal operation. Point R and point Z are
cleared. This means that R=0 and Z=0 in incremental mode. Other drilling data is
also canceled (cleared).
Format
G80
Example
M3 S2000;
Cause the spindle to start rotating.
G90 G99 G81 X300 Y-250 Z-150 R-100 F120;
Position, drill hole 1, then return to point R.
Y-550;
Position, drill hole 2, then return to point R.
Y-750;
Position, drill hole 3, then return to point R.
X1000;
Position, drill hole 4, then return to point R.
Y-550;
Position, drill hole 5, then return to point R.
G98 Y-750;
Position, drill hole 6, then return to the initial level.
G80 G28 G91 X0 Y0 Z0 ;
M5;
drilling cancel, then return to the reference point
Cause the spindle to stop rotating
3 State Command
3.1 Absolute and Incremental Programming (G90/G91)
Description
There are two ways to command travels of the tool; the absolute command, and the
incremental command. In the absolute command, coordinate value of the end
position is programmed; in the incremental command, move distance of the position
itself is programmed. G90 and G91 are used to command absolute or incremental
command, respectively.
Format
G90/G91 ;
the command to move the tool, such as G00G01.
Example
The tool path is shown in the Fig 3-1, absolute and incremental programming as
follows:
1) G90 programming
G90 G00 X100 Y200;
2) G91 programming
G91 G00 X-50 Y100;
Fig 3-1 G90/G91 example
3.2 Dwell G04
Description
Stop is performed when the execution of G04 during the automatic running of a
NC program, the dwell time is specified by the P or X following the command
G04, then the following blocks are performed automatically.
It regards 4ms as a counting unit, 4ms is delayed if the time is less than 4ms.
Format
G04 P_/X_;
Specified a time. The dwell time is specified in seconds by the P,
and in millisecond by the X following the command G04.
Only one between the command P and X can be specified, and one must be
specified, else system alarm.
P_ / X_:
3.3 Coordinate System
3.3.1 Setting a Workpiece Coordinate System (G92)
A workpiece coordinate system is set so that a point on the tool, such as the tool tip,
is at specified coordinates.
As shown in Figure 32, if the tool tip location is (X = 50, Y = 40), the workpiece
coordinate system X1O1Y1 is established, if the tool tip location is (X = 70, Y =
50), the workpiece coordinate system X 2 O 2 Y2 is established.
Fig 3-2 Setting a Workpiece Coordinate System
If a coordinate system is set using G92 during tool length offset, a coordinate
system in which the position before offset matches the position specified in G92 is
set. As shown in Figure 3.3
Fig 3-3 Setting a Workpiece Coordinate System by G92
Format
G92 IP_;
IP_:
The coordinates of the tool tip at the set workpiece coordinate system.
the zero position of the axes which are not specified in the workpiece
coordinate remains the same in the command IP_, so the command G92
can set the zero position of all axes in the coordinate system
respectively.
Note:
The values of the workpiece coordinate system which is set by G92 are
losable, it is cleared when power off.
3.3.2 Selecting a Workpiece Coordinate SystemG54~G59
The user can also choose the coordinate system which has been set in CNC system
as the workpiece coordinate system for machining. It can set 6 workpiece
coordinate systems (refer to system operation manual ) as follows:
G54: Workpiece coordinate system 1 selection
G55: Workpiece coordinate system 1 selection
G56: Workpiece coordinate system 1 selection
G57: Workpiece coordinate system 1 selection
G58: Workpiece coordinate system 1 selection
G59: Workpiece coordinate system 1 selection
The zero position of all axes in the workpiece coordinate system is reset by the
workpiece coordinate system which has been chosen.
When the power is turned on, G54 coordinate system is selected.
3.3.3 Plane Selection (G17/G18/G19)
The user needs to select the planes for the functions of circular interpolation
coordinate system rotation mirror image and so on. There are three planes: XY
planeZX planeYZ plane. Select the planes by the following command:
G17:
XY plane, X-axis for the first axis, Y-axis for the second axis;
G18:
ZX plane, Z-axis for the first axis, X axis for the second axis;
G19:
YZ plane, Y-axis for the first axis, Z axis for the second axis;
The default planes are setting by the following parameters when the power is
turned on:
P1011 = 0: XY plane when power on (G17).
P1011 = 1: ZX plane when power on (G18).
P1011 = 2: YZ plane when power on (G19).
3.4 Tool compensation
3.4.1 Tool Length Compensation (G43/G44/G49)
Description
Generally, the tool length assumed during programming is not always equal to the
actual tool length. There is a offset value between them. To simplify the operation
and program, we can store it into the offset memory, then compensate the offset
value by the code of tool length compensation. In this way, normally machining is
performed without changing the program as long as we know the tool offset value,
even using the tools which have different length.
Specify the direction of offset with G43 or G44.
G43:
G44:
Positive offset
Negative offset
Fig 3-4 Tool length compensation
Format
G43/G44
;
G49
G43/G44
H_
G49
H_;
Tool length compensation effective;
Address for specifying the tool length offset value;
The command to move a tool;
Tool length offset cancel;
Note:
1Compensation is performed along the Z-axis only by G43/G44
(positive or negative);
2The command H in the tool length compensation must be specified
with the G43 or G44, else system alarm.
3.4.2 Cutter Compensation (G40/G41/G42)
Description
Generally, during programming the user just programs for the center of the tool
path, but during the actual machining, the tool path should be shifted by the radius
of the tool which is not zero, so the function of cutter compensation is needed
Specify the direction of tool radius compensation with G41 or G42:
G41:
Activate cutter compensation, tool operates in machining operation to the
left of the contour (Fig 3-5a).
G42:
Activate cutter compensation, tool operates in machining operation to the
right of the contour (Fig 3-5b).
Fig 3-5 cutter compensation
Format
G41/G42
;
G40
G41/G42
D_
G40
D_;
Cutter compensation effective; G41-Cutter compensation left;
G42-Cutter compensation right.
Code for specifying as the cutter compensation value. Assign a
cutter compensation values to the D codes. The command D
must be specified with the G41 or G42, else system alarm.
The command to move a tool.
Cutter compensation cancel.
3.5 Subprogram Control (M98)
Description
M98 is used to call a subprogram. The subprogram can be in the same file with the
main program, also can be in a file individually. If it is in the same file with the
main program, the letter O must be specified at the beginning of a program, else
the file name of the subprogram must be specified by a four-digit number, and has
no extension. It must be end with M99.
The subprogram in the same file with the main program has the priority to be
called.
Format
M98 P_;
P_
In the sequence number following the P, the lower four digits are
registered as a subprogram name, the others are the times to be called
which are as many as you can.
Example:
M98 P121001
the subprogram name is 1001and number of times the subprogram be called
repeatedly is 12.
Example
a) The subprogram in the same file with the main program
G00 X0 Y0 Z0
G01 X25 Y40 F1000
M98 P52001
the subprogram 2001 is calledit is called 5 times.
G00 X0 Y0
M30
O2001
M3 S2000
G00 Z-10
G01 Z-50 F100
G00 Z0
M05
M99
b) The subprogram in a file individually
Main programmain.nc
G00 X0 Y0 Z0
G01 X25 Y40 F1000
M98 P52001
the subprogram 2001 is calledit is called 5 times.
G00 X0 Y0
M30
Subprogram (no extension)2001
M3 S2000
G00 Z-10
G01 Z-50 F100
G00 Z0
M05
M99
4 High-speed And High-precision Mode (G05.1)
Generally, it approaches to the complex curving surface by minute line segments
during programming for moldings machining. In general machining mode, it is
insufficient to deal with minute line segments , which leads to low work efficiency
and crude surface. To realize high-speed machining, High-speed and
High-precision Mode which improves the function to deal with minute line
segments can enhance the machining speed.
High-speed High-precision Mode is specified by G05.1
G05.1 Q1High-speed and High-precision Mode on
G05.1 Q2High-speed and High-precision Mode on
G05.1 Q0High-speed and High-precision Mode off
It is in the G61 mode after High-speed High-precision Mode off
Segments look ahead
High-speed and
High-precision Mode
High-speed and
High-precision Mode
50
50
Speed look ahead
High-speed
interpolation for short
line segments
Optimization for uniting
minute line segments
Optimization for length
of short line segments
Splines interpolation
YES
YES
YES
YES
YES
YES
NO
YES
NO
YES
4.1 High-speed and High-precision Mode (G05.1Q1)
Under High-speed and high-precision mode , the value of transition speed in the
point where the nearby line segments is connected is calculated automatically. To
realize high speed machining, it makes the value of transition speed to the
maximum under the precondition of no excessive acceleration appears.
Under High-speed and high-precision mode , the interpolation path is the same
as the programmed path.
4.2 High-speed and High-precision Mode (G05.1Q2)
High-speed and high-precision mode is the spline curve interpolation mode .
Under this mode, the tool path specified by G01 in the program is connected by
spline to interpolation. In the figure as follows if it satisfies the spline condition,
the dashed represents the programmed path and the real line represents the spline
path which is the actual movement of a tool. On the knee point of the programmed
path (such as the point BCD), a tool passes by with a high speed to realize the
high-speed machining.
Fig 4-1 spline interpolation
The line path specified by G01 can be made to spline under definite condition. It
includes the condition as follows:
1) Angle between the vectors of two nearby line segments
The angle is defined in the following figure. If it is less than the limited value, it
satisfies the spline condition and the interpolation controller makes the nearby line
segments to spline for interpolation, else it does not satisfy the spline condition. If
the angle of the line from nearby line exceed the limited value, linear interpolation
is performed for the line.
The limited value of the angle shaped by two nearby line segments is set by the
parameter P2050 for spline interpolation.
Fig 4-2 defining angle of the vectors
2) Ratio of the length of the two nearby line segments
If the ratio between L1 and L2 exceeds the limited value, it does not satisfy the
spline condition. We assume that the limited value is (>1), the spline condition
is defined as follows:
1 L1
L2
If the ratio exceeds the limited value, linear interpolation is performed for the line.
The limited value of the ratio is set by the parameter P2051.
5 Appendix: Program Alarm and Description
Alarm NO.No.1000
Wrong ReasonThis alarm is output when system can not open the program
file.
Solutionit usually happens because1) program file is corrupted, please
rebuild the program file; 2) memory defective, please contact with the
system manufacturer.
Alarm NO.No.1003
Wrong ReasonWrong Format of five axes machining program
DescriptionDuring five axes machining programming, the user can use the
angle programming (ABC format) as well as the tool vector programming
(IJK format), but it can not be mixed in the same program segment,
otherwise an alarm is output..
SolutionModify the program format
Alarm NO.No.1005
Wrong ReasonSystem does not support the instruction that has been used
in the program.
SolutionRefer to System Programming Manual to delete the instruction
that the system does not support.
Alarm NO.No.1007
Wrong ReasonSystem does not support the command word that has been
used in the program.
SolutionRefer to the format of the correlative command in the wrong line
to delete the redundant command word
Alarm NO.No.1008
Wrong ReasonThere are redundant characters in the program segment.
SolutionRefer to the format of the correlative command in programming
manual to delete the redundant characters.
Alarm NO.No.1010
Wrong ReasonThere is no command word corresponding to the command
parameter which has already existed. Example: there is no command word
before the 00 in 00 X20 Y30;.
SolutionInput the command word again.
Alarm NO.No.1011
Wrong ReasonThere is no command parameter corresponding to the
command word which has already existed. Example: there is no command
parameter after the X in G00 X;
SolutionInput the command parameter again.
Alarm NO.No.1012
Wrong ReasonWrong position of the skip symbol.
DescriptionThe skip symbol \ can be placed at the beginning of a block
only, and can not be placed in other positions.
SolutionModify the position of the skip symbol.
Alarm NO.No.1015
Wrong ReasonWrong programming type has been set.
DescriptionSpecial programming type is set for special machining (rigid
tapping). The programming type is set to be not-RTCP for rigid tapping.
SolutionCheck and set the parameter of the programming type correctly.
Alarm NO.No.1020
Wrong ReasonWrong tool number specified by the command T.
DescriptionIf the capacity of the tool library is N, the tool number should
be in [1,N], else error.
SolutionInput the right tool number.
Alarm NO.No.1050
Wrong ReasonWrong parameter specified by the command N.
DescriptionThere are two types: 1) No parameter after the command N; 2)
The parameter following the command N is less than 0.
SolutionInput the right parameter N.
Alarm NO.No.1051
Wrong ReasonWrong parameter specified by the command M.
Description
There are two types: 1) No parameter after the command M; 2)
The parameter following the command M is less than 0.
SolutionInput the right parameter M.
Alarm NO.No.1052
Wrong ReasonWrong parameter specified by the command S.
DescriptionThere are two types: 1) No parameter after the command S; 2)
The parameter following the command S is less than 0.
SolutionInput the right parameter S.
Alarm NO.No.1053
Wrong ReasonWrong parameter specified by the command T.
DescriptionThere are two types: 1) No parameter after the command T; 2)
The parameter following the command T is less than 0.
SolutionInput the right parameter T.
Alarm NO.No.1054
Wrong ReasonWrong parameter specified by the command F.
DescriptionThere are two types: 1) No parameter after the command F; 2)
The parameter following the command F is less than 0.
SolutionInput the right parameter F.
Alarm NO.No.1055
Wrong ReasonWrong parameter specified by the command O.
DescriptionThere are two types: 1) No parameter after the command O; 2)
The parameter following the command O is less than 0.
SolutionInput the right parameter O.
Alarm NO.No.1090
Wrong ReasonThe plane selection command is specified in the blocks
which G68 is effective.
DescriptionWe can not use G17G18G19 in the blocks which G68 is
effective.
SolutionThe plane selection command can be specified after G69 which
makes the G68 ineffective.
Alarm NO.No.1250
Wrong ReasonWrong arc data in the command G02 or G03.
Description System needs to check the arc data during circular
interpolation for the arc command. If the error of the arc data exceeds the
limited value, an alarm of Wrong arc data is output.
Solution1) If the actual arc error is in the reasonable range, modify the
setting of the value limited by arc data in the system parameter (P1085) to
make it greater than the actual arc error. 2) if the actual arc error is
excessive, please calculate the start, end and radius of the arc again to make
sure the arc data is right.
Alarm NO.No.1251
Wrong ReasonThere are axis commands beyond the current plane in the
arc command G02.
DescriptionThe moving axis command in the arc command must be in the
current plane.
Solution1) If the axis command in G02 is correct, please select the plane
again. 2) If the current plane is correct, please modify the wrong axis
command in G02.
Alarm NO.No.1252
Wrong ReasonThe command G02 is half-baked.
SolutionRefer to the format of the command G02 to complement it.
Alarm NO.No.1253
Wrong ReasonThere are axis commands beyond the current plane in the
arc command G03.
DescriptionThe moving axis command in the arc command must be in the
current plane.
Solution1) If the axis command in G03 is correct, please select the plane
again. 2) If the current plane is correct, please modify the wrong axis
command in G03.
Alarm NO.No.1254
Wrong ReasonThe command G03 is half-baked.
SolutionRefer to the format of the command G03 to make it full.
Alarm NO.No.1260
Wrong ReasonThe command G60 is half-baked.
DescriptionSingle direction positioning G60 can not be specified alone ,
there must be the moving axis command following it.
SolutionComplement the moving axis command following it.
Alarm NO.No.1281
Wrong ReasonThe command G92 is half-baked.
DescriptionSingle direction positioning G92 can not be specified alone ,
there must be the command of moving axis following it.
SolutionComplement the moving axis command following it.
Alarm NO.No.1290
Wrong ReasonRedundant time command for G04
DescriptionThe dwell time is specified by the P or X following G04, but
can not be used together.
SolutionDelete the redundant time command.
Alarm NO.No.1291
Wrong ReasonLack of time command following G04
DescriptionThe dwell time must be specified by the P or X following G04.
SolutionComplement the dwell time.
Alarm NO.No.1295
Wrong ReasonWrong format of G05
DescriptionQ must be specified following G05, and its value can be 01
or 2 only, else an alarm is output.
SolutionModify the program.
Alarm NO.No.1300
Wrong ReasonRedundant command for scaling magnification after G51.
DescriptionSame magnifications which are specified by P are applied to
each axes, also different magnifications which are specified by IJ and K
are applied to each axes, but it can not be specified together.
Solution Delete redundant command.
Alarm NO.No.1301
Wrong ReasonThere are axis commands beyond the current plane
following G68
DescriptionThe moving axis command for the center of rotation following
G68 must be in the current plane.
Solution1) If the axis command following G68 is correct, please select the
current plane again. 2) If the current plane is correct, please modify the
wrong axis command following G68.
Alarm NO.No.1305
Wrong ReasonRedundant command for axis of symmetry following G24
DescriptionAxis of symmetry must be specified by single axis only
following G24.
SolutionDelete redundant command for axis of symmetry
Alarm NO.No.1306
Wrong ReasonAxis of symmetry is not specified following G24.
DescriptionThere must be one axis command for axis of symmetry at
least.
SolutionComplement the command for axis of symmetry.
Alarm NO.No.1307
Wrong ReasonThere is axis of symmetry beyond the current plane
following G24.
DescriptionThe axis of symmetry following G24 must be in the current
plane.
Solution1) If the axis command following G24 is correct, please select the
current plane again. 2) If the current plane is correct, please modify the
wrong axis of symmetry command following G24.
Alarm NO.No.1310
Wrong ReasonThere is axis beyond the current plane following G25.
DescriptionThe axis command of point of symmetry following G25 must
be in the current plane.
Solution1) If the axis command following G25 is correct, please select the
current plane again. 2) If the current plane is correct, please modify the
wrong of symmetry command following G25.
Alarm NO.No.1320
Wrong ReasonTarget block which is specified by the skip command does
not exist .
SolutionAdd correct sequence number at the beginning of the target block.
Alarm NO.No.1321
Wrong ReasonSubprogram which is called by M98 or G65 does not exit.
SolutionCheck the program name, if not exist, rebuild it.
Alarm NO.No.1322
Wrong ReasonThe command M98 is half-baked.
DescriptionThe program called must be specified by P following M98.
SolutionComplement the program name called by M98.
Alarm NO.No.1390
Wrong ReasonR level is higher than initial level in canned cycle.
DescriptionR level must be lower than initial level in canned cycle.
Solutionheighten initial level or decline R level
Alarm NO.No.1391
Wrong ReasonR level is higher than the bottom of the hole in canned
cycle.
DescriptionR level must be lower than the bottom of the hole in canned
cycle.
Solutionheighten R level or decline the bottom of the hole
Alarm NO.No.1392
Wrong ReasonWrong number of repeats is specified in the canned cycle.
DescriptionNumber of repeats which is specified by K in the canned cycle
must be greater than or equal to 0.
SolutionSpecify right number of repeats.
Alarm NO.No.1400
Wrong ReasonHave not specified the coordinate value on the bottom of
the hole in the canned cycle G73.
SolutionSpecify the correct coordinate value on the bottom of the hole by
the command Z.
Alarm NO.No.1401
Wrong ReasonHave not specified R level in the canned cycle G73.
SolutionSpecify the correct R level by the command R.
Alarm NO.No.1402
Wrong ReasonHave not specified the depth of cutting for each cutting
feed in the canned cycle G73.
SolutionSpecify the correct depth of cutting level by the command Q.
Alarm NO.No.1440
Wrong ReasonHave not specified the coordinate value on the bottom of
the hole in the canned cycle G81.
SolutionSpecify the correct coordinate value on the bottom of the hole by
the command Z.
Alarm NO.No.1441
Wrong ReasonHave not specified R level in the canned cycle G81.
SolutionSpecify the correct R level by the command R.
Alarm NO.No.1445
Wrong ReasonHave not specified the coordinate value on the bottom of
the hole in the canned cycle G82.
SolutionSpecify the correct coordinate value on the bottom of the hole by
the command Z.
Alarm NO.No.1446
Wrong ReasonHave not specified R level in the canned cycle G82.
SolutionSpecify the correct R level by the command R.
Alarm NO.No.1450
Wrong ReasonHave not specified the coordinate value on the bottom of
the hole in the canned cycle G83.
SolutionSpecify the correct coordinate value on the bottom of the hole by
the command Z.
Alarm NO.No.1451
Wrong ReasonHave not specified R level in the canned cycle G83.
SolutionSpecify the correct R level by the command R.
Alarm NO.No.1452
Wrong ReasonHave not specified the depth of cutting for each cutting
feed in the canned cycle G83.
SolutionSpecify the correct depth of cutting level by the command Q.
Alarm NO.No.1460
Wrong ReasonHave not specified the coordinate value on the bottom of
the hole in the canned cycle G85.
SolutionSpecify the correct coordinate value on the bottom of the hole by
the command Z.
Alarm NO.No.1461
Wrong ReasonHave not specified R level in the canned cycle G85.
SolutionSpecify the correct R level by the command R.
Alarm NO.No.1490
Wrong ReasonHave not specified the coordinate value on the bottom of
the hole in the canned cycle G89.
SolutionSpecify the correct coordinate value on the bottom of the hole by
the command Z.
Alarm NO.No.1491
Wrong ReasonHave not specified R level in the canned cycle G89.
SolutionSpecify the correct R level by the command R.
Alarm NO.No.1495
Wrong ReasonThe setting value of the parameter P1081 is too small.
DescriptionThe retraction value should be greater than 0.1 in the canned
cycle, else an alarm is output.
SolutionModify the parameter P1081.
Alarm NO.No.1550
Wrong ReasonThe command G43/G44 is half-baked.
DescriptionThe offset number for tool length must be specified following
the G43/G44.
SolutionSpecify the correct offset number by the command H.
Alarm NO.No.1551
Wrong ReasonThe offset number for tool length is ineffective following
the G43/G44.
DescriptionThe offset number for tool length should be in the range which
has been specified.
SolutionRefer to the tool parameter list of CNC to specify the correct
offset number.
Alarm NO.No.1580
Wrong ReasonThe reference position specified by the command P
following G30 is ineffective.
Description
The 2nd
3rd and 4th reference position return functions can be
used only after G30, so the parameter after the command P can be 23 or 4
only. Return the 1st reference position using G28.
SolutionSpecify the correct reference number by the command P.
Alarm NO.No.1600
Wrong ReasonHave not specified G68.1 before G53.1.
DescriptionThe special coordinate system must be set by G68.1 before
G53.1.
SolutionSetting the special coordinate system before G53.1.
Alarm NO.No.1610
Wrong ReasonThe 3D arc command can not be used when the polar
coordinate mode is effective.
SolutionPolar coordinate command should be cancelled by G15 before the
3D arc command.
Alarm NO.No.1611
Wrong ReasonThe 3D arc command (G02.4/G03.4) is half-baked.
DescriptionMiddle point and end point of the arc should be specified by
two blocks following G02.4/G03.4.
SolutionModify program to complement the command of G02.4/G03.4.
Alarm NO.No.3000
Wrong ReasonThe line for rebuilding the cutter compensation is not
straight line.
DescriptionThe program segment for rebuilding the cutter compensation
must be straight line, an alarm is output if it is an arc.
SolutionModify it to be a straight line.
Alarm NO.No.3001
Wrong ReasonTool interference.
DescriptionThe interference will occur if the distance between the tool
compensation path and the programmed path is less than the tool radius.
Example: During machining a internal circle, overcutting will occur if the
tool radius is greater than circle radius. During machining a groove,
overcutting will occur if the tool diameter is greater than the groove width.
SolutionModify program or replace the tool with one has a small radius.
Alarm NO.No.3015
Wrong ReasonThe current plane (G17/G18/G19) can not be changed
when the cutter compensation mode (G41/G42) is effective.
Solution The plane can be changed after cancelling the cutter
compensation by G40.
Alarm NO.No.3020
Wrong ReasonWrong plane for cutter compensation.
DescriptionSystem supports cutter compensation on the plane of G17
only, an alarm is output if on the plane of G18/G19.
SolutionChange the plane for cutter compensation.
Alarm NO.No.3022
Wrong ReasonThe arc for compensation is not intersectant.
DescriptionThe tool path from arc to arc is not intersectant after cutter
compensation.
SolutionCheck program and size of the tool.
Alarm NO.No.5000
Wrong ReasonWrong format of G65
SolutionRefer to the right format of G65 in System programming manual.
Alarm NO.No.5001
Wrong ReasonWrong format of IF
SolutionRefer to the right format of IF in System programming manual.
Alarm NO.No.5002
Wrong ReasonWrong format of WHILE
SolutionRefer to the right format of WHILE in System programming
manual.
Alarm NO.No.5003
Wrong ReasonWrong format of mathematic expression
Alarm NO.No.5004
Wrong ReasonWrong format of GOTO
SolutionRefer to the right format of GOTO in System programming
manual.
Alarm NO.No.5005
Wrong ReasonHave not specified the skip block after GOTO.
Solution Specify the correct skip block number by the command L
Alarm NO.No.5006
Wrong ReasonWrong connection of the conditional expression after IF or
WHILE.
DescriptionThe number of conditional expression to connect is two at
most.
SolutionModify program to satisfy the condition.
Alarm NO.No.5007
Wrong Reason Wrong format of conditional expression after IF or
WHILE.
SolutionModify program.
Alarm NO.No.5010
Wrong ReasonWrong using start symbol { of block.
DescriptionStart symbol { must be used with the command IFWHILE
and so on, and that can not be used alone.
SolutionRefer to System programming manual to modify program.
Alarm NO.No.5011
Wrong ReasonHave not specified start symbol { of block after IF and
WHILE.
DescriptionStart symbol { must be specified after IF and WHILE.
SolutionRefer to System programming manual to modify program.
Alarm NO.No.5012
Wrong ReasonNo end symbol} of block.
DescriptionStart symbol { must be used with end symbol }. There is a
{ corresponding to a }, so the number of { is as same as the number of
}. The alarm represents the number of { is more than the number of }.
SolutionModify program.
Alarm NO.No.5013
Wrong ReasonRedundant end symbol} of block.
DescriptionEnd symbol } must be used with Start symbol {. There is a
} corresponding to a{, so the number of { is as same as the number of
}. The alarm represents the number of { is less than the number of }.
SolutionModify program.
Alarm NO.No.5051
Wrong ReasonHave not specified variable after the variable symbol of #.
Alarm NO.No.5052
Wrong ReasonWrong variable has been specified after the variable
symbol of #.
DescriptionVariable is composed of the number limited in a range, an
alarm is output if it exceeds the range.
Solution
Refer to the definition of variable in System programming manual
to use variable correctly.
Alarm NO.No.5080
Wrong ReasonHave not specified the number of macro program after
G65.
SolutionSpecify the correct number of macro program by the command P.
Alarm NO.No.5081
Wrong Reason Wrong number of repeats has been specified after G65.
DescriptionThe number of repeats should be greater than 0, else an alarm
is output.
SolutionSpecify the correct number of repeats by the command L.
Alarm NO.No.5090
Wrong ReasonHave not specified the correct returning command after
ending a subprogram.
DescriptionSubprogram must be ended by M99, an alarm is output if it
ends by M99 or M30.
SolutionSubprogram must be ended by M99.
Alarm NO.No.6001
Wrong ReasonWrong parameter for the function TAN
DescriptionParameter for the function TAN can not be the odd multiple of
90, else an alarm is output.
SolutionModify program.
Alarm NO.No.6002
Wrong ReasonWrong parameter for the function ASIN
DescriptionParameter for the function ASIN should be in [-1,1], else an
alarm is output.
SolutionModify program.
Alarm NO.No.6003
Wrong ReasonWrong parameter for the function ACOS
DescriptionParameter for the function ACOS should be in [-1,1], else an
alarm is output.
SolutionModify program.
Alarm NO.No.6004
Wrong ReasonWrong parameter for the function SQRT
DescriptionParameter for the function SQRT should be greater than or
equal to 0, else an alarm is output.
SolutionModify program.
Alarm NO.No.6005
Wrong ReasonWrong parameter for the function LN
DescriptionParameter for the function LN should be greater than 0, else an
alarm is output.
SolutionModify program.