0% found this document useful (0 votes)
113 views40 pages

CNC Milling - Module - 01

The document outlines the structure and functions of programming commands in CNC machines, including program numbers, sequence numbers, blocks, movement commands, and various function codes (G and M codes). It explains the difference between absolute (G90) and incremental (G91) commands, as well as the work coordinate systems (G54-G59) used for machining. Additionally, it provides examples of programming syntax and the importance of setting coordinate systems for effective machining operations.

Uploaded by

Kedir Temam
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
113 views40 pages

CNC Milling - Module - 01

The document outlines the structure and functions of programming commands in CNC machines, including program numbers, sequence numbers, blocks, movement commands, and various function codes (G and M codes). It explains the difference between absolute (G90) and incremental (G91) commands, as well as the work coordinate systems (G54-G59) used for machining. Additionally, it provides examples of programming syntax and the importance of setting coordinate systems for effective machining operations.

Uploaded by

Kedir Temam
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

2.

3
Program Number O and Comment Statement

Function of Program number O


This identifies the program and must always be at the top of the program

O    ; ( ----------------------------------------)

Program number following O A Comment statement can be added after the


(Numerals within four digits) program number

O numbers are classified depending on the memory area as shown below.

O0001 – O7999 User area


O8000 – O8999 User area (Program protect is possible) *1
O9000 – O9999 Maker area (Program protect is possible)
Any number can be used from the numbers above, but the total number of programs that can be used is limited.

O0001;

O0002;
O1212;

O9999;

*1 Except for FANUC Series 0MC


2.4
Sequence Number N

Function of Sequence number N


This is added to the top block for easy access. It can be eliminated.
N     

Sequence number following N (1-99999 or 1-9999)

Example of sequence numbers in program

1. For every block 2. At any place


O0001; O0002;
N1 ________; N1 _______;
N2 ________; _______; (can be skipped on the way)
N3 ________; _______;
N4 ________; N2 _______;
N5 ________; N3 _______;
N6 ________; _______;
N7 ________; N123 _______; (can be used regardless of number.)
N8 ________; N1 M30; (can be duplicated)
N9 M30; ________

• Ever if the sequence number is not used at all, it causes no problem.

• The sequence number cannot be used before the ‘O’ number (program number).

• The number of digits used in the sequence number (four or five) depends on the control specification.

• It is recommended that the sequence number numbers be used at changes in the process for easy access.

(The current sequence number is displayed on the screen.)

• The sequence number can be used for the program restart function. (Refer to the NC instruction manual

for more information.)


2.5
Word and Block

Block

A set of commends given to the NC for machine motion is called a ‘program’. The program must be described
in the order of machine motion.
• A program is composed of lines called ‘Blocks’.
O0001; <= Block
N2 N1 ; <= Block
N3
N1 N2 ; <= Block Program
N3 ; <= Block
M30; <= Block

A block is composed as follows.

X10.0 Y10.0 ;
Word Word BOE One Block

• ‘EOB’ means the end of block which always must be used at the end of each block.

A word is composed of an address and numerals as shown below.

X 10.0
Address Numerals ------------------- One word

• The minimum unit which can be specified in the program is a ‘word’.

An address without a numeral cannot be used.

A numeral without an address cannot be used.

They must be used together to form a ‘word’.

X ; 10.0; --------------------------------------------------- An alarm results.


2.6
Movement command and setting units

To move machine axes


Give movement commands for X, Y, and Z-axes.

In order to move the cutter, as shown at the left, the


command of X50.0 (providing a decimal point) is given
in the program.

• In the case of decimal point, all of the following hare the same mining.
X50.
X50.0 All mean a movement of X50 mm.
X50.00
X50.000
• The decimal point can be eliminated. In such a case, the data is recognized as referring to the resolution

of NC (0.001).

X50 --------------- X movement 0.05mm

X50000 ---------- X movement 50mm

• Generally decimal points, such as X50.0 , are used for easy recognition for manual programming.

• For Positive and negative signs :

Positive ( + ) X50.0 --------------- Sign ‘+’ can be omitted.

Negative ( - ) X-50.0 ---------------


• With numerals having lower digits than minimum. Setting units (0.001) is used. The top digit is rounded

when over five, and the rest is disregarded.

Example X 1.23456
This digit is rounded, if over five. (That is: X1.235)

• Permissible digit is up to eight. There can be up to eight digits. If there are more than eight an alarm will

sound.

Example X 1. 2 3 4 5 6 7 8 9 ----------- An alarm sounds because it has nine digits.

2.7
Preparatory Function G

Function G

A code Composed of address G and numerals is called G (Preparatory) function. This regulates the function of

the command block. Detailed descriptions of G-codes will be given later.

G  
Numerals within two digits (0-99) following G

Sample of G code

G00 ----------------------------- Rapid traverse command


G01 ------------------------------ Cutting feed command

G02 ------------------------------ Circular interpolation CW command

G03 ------------------------------ Circular interpolation CCW command

Example of use
O0001 (MAKINO);
N1 G90 G54 G00 X0 Y0;
N2 G01 X0 Y-50.0 F100;
N3 X-100.0 Y-50.0;
N9 M30;
• G codes with decimal points or with three digits are allowed to used in some NC controllers.
2.8
Miscellaneous Function M

Function M

Address M and the following numerals controls on/off of machine functions, such as the spindle rotation start or
stop.

M  
Numerals within two digits (0-99) following M

Sample of M codes
M03 --------------------- Spindle rotation start CW

M04 --------------------- Spindle rotation start CCW

M05 --------------------- Spindle rotation stop

M30 --------------------- End of program

• No decimal points are used in the M code.

Example of use

O0002 (Sample);

N1 G90 G54 G00 X0 Y0 M03 ; ----------------- Spindle start CW

N2 G01 X0 Y-50.0 F100 ;

N9 M30 ; ---------------------------------------------------------------- End of program

• M codes with three digits are used with some NC controllers.


2.9

Feedrate F and Spindle Speed S

Function F and S
These are given according to the tools to be used and the material of the workpiece to be cut.
F
Cutting federate, numerals within four digits following F

S
Spindle rotation speed, numerals with four or five, (depending on machine
model) digits following S

Sample of F command

This always must be specified for cutting.


F01 => 1 mm / min
F10.0 => 10 mm / min
F1000 => 1000 mm / min

Sample of S command

This always must be specified for cutting.


S10 => 10 min-1
S1500 => 1500 min-1
S4000 => 4000 min-1

Note

• Some types of machine tools cannot accept the address S.


• Permissible speed range is different depending on the machine type.
• Hereafter, S1000 for spindle rotation speed and F100 / F200 for federate and used in this text as example
data.
Calculation of Speed and Feedrate

V : Cutting speed (m / min)


1000𝑉  : 3.14
𝑁=
𝜋𝐷 D : Cutter diameter (mm)
N : Spindle rotation speed (S command, mm-1
Sz : Feed per tooth
𝐹 = 𝑆𝑧 . 𝑍 . 𝑁 Z : Number of cutter blades
F : Feedrate (mm / min)

Informative data : Endmilling (High speed steel)


• Roughing
Workpiece
Cast Iron Aluminum Steel
Material
Revolution Feedrate mm Revolution Feedrate Revolution Feedrate
speed min-1 / min speed min-1 mm / min speed min-1 mm / min
Cutter No. of
Cutting speed Feed per Cutting Feed per Cutting Feed per
Diameter Flutes
m / min tooth mm / speed m / tooth mm / Speed m / tooth mm /
tooth min tooth min tooth
1100 115 5000 500 1000 100
8 2
28 0.05 126 0.05 25 0.05
900 110 4100 490 820 82
10 2
28 0.06 129 0.06 26 0.05
770 105 3450 470 690 84
12 2
29 0.07 130 0.07 26 0.06
660 100 3000 440 600 80
14 2
29 0.07 132 0.07 26 0.07
600 94 2650 420 530 76
16 2
30 0.08 133 0.08 27 0.07
CHAPTER 3
PROGRAMMING I
3.1
Absolute Command G90 and
Modal
Incremental Command G91

For dimensional command, absolute command and incremental command are available.
Hereafter, the absolute command and the incremental command are abbreviated as ABS and INC respectively in
this text.
Example use ABS and INC

• For movement from A to B, movement commands are specified as follows.


ABS --- G90 X60.0 Y60.0;
INC --- G91 X40.0 Y40.0;
• For movement from B to A, movement commands are specified as follows.
ABS --- G90 X20.0 Y20.0;
INC --- G91 X-40.0 Y-40.0;

• The difference between the two ways can be described as:


o ‘ABS’ specifies the destination of movement with the coordinate value.
o ‘INC’ specifies the distance from the start point to the end point of movement.
• ABS is the absolute value command system.
• INC is the incremental value command system.
INC G91

Function G91
The movement is specified by the direction and the incremental value to the destination referring to the current
position.
Under G91 mode, movements always are specified on the basis of current
position.
Rightward movement from current position :X+
Leftward movement from current position :X–
Upward movement from current position :Y+
Downward movement from current position :Y–
G91 X50.0 ;

G91 X-50.0 ;

G91 Y55.0 ;

G91 Y-50.0 ;

ABS G90

Function of G90
The destination of movement is specified with the coordinate value regardless of current position.
• The coordinate value is given with X directional element and Y
directional element as the origin (0, 0).
• In case of this example figure, the coordinate of each point (X, Y) is :
P1 ( 30, 20)
P2 (-30, 20)
P3 (-30, -20)
P4 ( 30, -20)

G90 X60.0 Y10.0 ;

G90 X10.0 Y10.0 ;


G90 X10.0 Y60.0 ;

G90 X10.0 Y5.0 ;

Summery

• When the same command is given, different motion results between the absolute mode G90 and
incremental mode G91 as shown below.

You can select either the absolute mode G90 or incremental mode G91 arbitrarily for the convenience of your
programming
Information : which is more convenient?

(A) ABS is better …


• When each hole position is indicated from a reference point
as shown the right figure. Programming is made easy by
setting the left bottom corner of the workpiece as the origin.
(B) INC is better …
• When the pitch between the positions of each hole is
indicated as shown the right figure.
• When positioning with the same pitch is repeated.
Example

• Regarding a movement pattern, two ways of programming are possible with G90 (ABS) or with G91
(INC).
Origin Mark
Origin :Intersection of two coordinate axes, in case of the
figure on the left. : (X0 Y0)

ABS INC

O1; O2;

G90 G54 (X20.0) Y60.0; G90 G54 (X0) Y50.0;

X60.0 Y10.0; X40.0 Y-50.0;

(X60.0) Y60.0; (X0) Y50.0;

M30; M30;

Specify ABS (G90) or INC (G91) at the start of the movements.

• Commands in ( ) can be omitted


Exercise 1

• Program the following with ABS (G90) and INC (G91)

ABS INC
3.2
Coordinate System

The methods of movement commands, INC (91) and ABS (G90), are available as shown before. For ABS
programming, which uses coordinate values of destination, the work-zero position (X0 Y0) must have been
established in advance at any point on the machine table.

• Available coordinate systems are listed below.

Machine G53 : Machine


Coordinate Coordinate System
System

G92 : Altering Work


Coordinate System
Coordinate System

Work G54 - G59 : Work G52 : Local


Coordinate Coordinate Coordinate
System System System
3.3
Work Coordinate System G54 – G59 Modal

What is ‘Work Coordinate System’?


The work coordinate system is a coordinate system to be set specially for a workpiece which is fixed on the table.
The machining programs are created on the basis of this work coordinated system.
• You should be careful to avoid using the work coordinate system and altering work coordinate system
G92 in the same program together.

Setting procedure

To set a work coordinate system, the distance and direction from the machine origin to the program datum

position (datum of workpiece, fixture, etc.) must be inputted into the NC.

• The line _____ _ _____ Means the stroke end of machine axis.

• The machine origin is a inherent point provided for each axis respectively. In the case of vertical spindle

type machines, the machine axis are on the positive stroke end of X, Y and Z axes.
Example of Use

1. Several kinds of workpieces can be machined continuously with one program.

O0001;
G90 G54 G00 X0 Y0;
Machining of with G54.
G90 G55 G00 X0 Y0;
Machining of with G55;
M30;

2. Once the work coordinate system is established, positioning is enabled from any points thereafter.

O0002;
G90 G54 G00 X0 Y0;
Z100.0;
.
.
M30;
Setting Procedure

1. The main spindle is positioned at the desired point of the machining origin on the workpiece with a
centering tool.

2. Memorize the machining coordinate values of current position display. (X1 and Y1 of the figure below)

3. Input the Value X1 and Y1 on the work offset screen.

4. Then, a tool to be used actually is positioned to a point which is desired to be set as Z0.

Memorize the machine coordinate point Value at this


position.
The top of the workpiece is set as Z0.
• When a spacer block is used, the thickness of the spacer block should be taken into consideration.
5. The machine coordinate value of Z axis is inputted on the work offset screen in the same manner as X
and Y.

6. The work coordinate system is selected among G54-G59 and specified in the program.

O0001;
G90 G54 G00 X0 Y0; ---------- Positioning to zero (X0, Y0) of G54
.
.
.
M30;

Summary

• When absolute commands (G90) are used in the program, the zero setting i.e., informing the zero
position to the control unit, must be carried out in advanced.
The work coordinate system G54 G55 are the same.
• In the program, a coordinate system, selected among G54 – G59, must be specified.

G90 G ? G00 X0 Y0
G54 ~ G59
• Specifying only ‘G90 G00 X0 Y0’ does not give the position of X0 Y0.

G90 G00 X0 Y0
Which X0 Y0 do I have to go to ?

• In case of some NC units, eliminating G54 – G59 cause automatic G54 activation.

For even such a case, we recommend to specify one of G54 – G59 for positive programming.
3.4

Rapid Traverse G00 and Linear Interpolation G01 Modal

Rapid Traverse (G00)


The cutter moves at a rapid traverse rate with non-linear or linear interpolation.
The rapid traverse rate depends on the machine type.

Cutting feed motion (G01)


Command G01 is used cut straight lines.
The federate is Specified with F in the Program.
Program sample of G00 and G01

• In the right figure, the line ‘ - - - - - ‘ shows rapid traverse and


the line ‘_____ ‘ shows the cutting feed.
• The contour is started from the zero point and returned to
it with clockwise rotation.
• The cutting feedrate is F100. This must be specified on the same
block as G01 or before.

֎֎֎ G90 Mode ֎֎֎


O1;
N1 G90 G54 G00 X20.0 Y20.0 S1000 M03; [0 → 1]
N2 G01 Y50.0 F100; [1 → 2]
N3 X50.0; [2 → 3]
N4 Y20.0; [3 → 4]
N5 X20.0; [4 → 1]
N6 G00 X0 Y0; [1 → 0]
N7 M05;
N8 M30;
֎֎֎ G91 Mode ֎֎֎
O1;
N1 G90 G54 G00 X20.0 Y20.0 S1000 M03; [0 → 1]
N2 G01 Y30.0 F100; [1 → 2]
N3 X30.0; [2 → 3]
N4 Y-30.0; [3 → 4]
N5 X-30.0; [4 → 1]
N6 G00 X-20 Y-20; [1 → 0]
N7 M05;
N8 M30;
Exercise 2

Start from the origin and return to it with clockwise rotation. Use F100 as feedrate. Create the program under
ABS and INC modes respectively.

Rapid Traverse G00


Cutting Feed G02

ABS INC
3.5

Modal
Circular Interpolation G02, G03

Circular Interpolation
Commands, G02, G03 are used to cut circles or circular arcs. G02 is specified for CW circular motion. G03 for
CCW circular motion.

Programming format

Plane Radius Center Cutting


+ CW or CCW + End of Arc + + ;
Selection of Arc Feedrate

G17 G02 X_ Y_ R_
G18 X_ Z_ I_ J_
G19 + G03 + Y_ Z_ + I_ K_ + F__;
J_ K_

Start : Start point of Circular arc


End : End point of circular arc
Center : Center of arc
• The plane selection is necessary for circular interpolation. In this section,
however, it is omitted from description.
Dimension I and J

Command I and J specify the distance from the start point of circular arc A to the center. I, J and K must be
specified incrementally even under ABS mode, adding plus or minus for the direction of I, J, K.

I: X element of the distance


J: Y element of the distance
K: Z element of the distance

• Under ABS mode


G90 G03 X20.0 Y40.0 I-30.0 J-10.0 F100;

Distance from Point A (start of circular arc) to the


center.

• Under INC mode


G91 G03 X-20.0 Y20.0 I-30.0 J-10.0 F100;

Distance from Point A (start of circular arc) to the


center.

• Dimensions I, J and K are the same data regardless of ABS or INC.


Specifying radius of circular arc R

The radius of circular arc can be directly specified by R instead of specifying the center of circular arc I, J, and
K.

• Under ABS mode


G90 G02 X70.0 Y20.0 R50.0 F100;

Arc radius R

Coordinate of point B (end of arc)

• Under INC mode


G91 G02 X50.0 Y-50.0 R50.0 F100;

Arc radius R

Coordinate of point B (end of arc)

Note: When the center angle of arc is 180o or more, the radius R must be specified with negative (-) sign.

• Under ABS mode


G90 G02 X70.0 Y20.0 R-50.0 F100;
• Under INC mode
G91 G02 X50.0 Y-50.0 R-50.0 F100;
A complete Circle

With I, J, and K, a complete circle can be programmed by using one black.

• A complete circle from A to A in CW


o Under ABS mode
▪ G90 G02 (X0 Y40.0) J-40.0 F100;
o Under INC Mode
▪ G91 G02 (X0 Y0) J-40.0 F100;
• A complete circle from B to B in CW
o Under ABS mode
▪ G90 G02 (X40.0 Y0) I-40.0 F100;
o Under INC Mode
▪ G91 G02 (X0 Y0) I-40.0 F100;

• Commands in ( ) can be omitted.

• The arc radius R programming is not available to a complete circle and I, J and K are used.

• If I, J, K and R are specified in the same block, R has the priority and I, J and K are ignored.
Example

Start from the Zero point turn clockwise and return to the zero. The cutting feedrate is F100 for lines and
arcs. The cutting feedrate mark ▲ shows the bondary between blocks.

The line means rapid travers,


The line means cutting feed.

O1;
N1 G90 G54 G17 G00 X-60.0 Y-40.0 M03 S1000;
N2 G01 (X-60.0) Y0 F100;
N3 G02 X0 Y60.0 I60.0; (or use R60.0 instead of I60.0)
N4 G01 X40.0 Y0;
N5 G02 X0 Y-40.0 I-40.0; (or use R40.0 instead of I-40.0)
N6 G01 X-60.0 (Y-40.0);
N7 G00 X0 Y0;
N8 M30;

• Commands in ( ) can be omitted.


Exercise 3

Start from the zero point , turn clockwise and return to the zero point. Use F100 as cutting feedrate. Use I and
J for arcs.

• The radius of circular arcs, are all 10mm.

ABS Mode INC Mode


Exercise 4

Start from the zero point , turn clockwise and return to the zero point. Use F100 as cutting feedrate.

N.B: The R radius Program is not available to


complete circle.

ABS Mode INC Mode


Exercise 5

Start from the zero point , turn clockwise and return to the zero point. The lines means rapid traverse,
the line means cutting feed. The cutting feedrate is F100 for lines and arcs. The mark ▲ shows the
boundary between blocks.

X Y
P1 6.000 29.394
P2 54.000 19.596
P3 38.000 -16.000
P4 24.000 -18.000
P5 32.000 -24.000

ABS Mode INC Mode


3.6

Modal
Plane Selection G17, G18, G19

What is plane selection?


It is necessary to select a plane on which the circular interpolation, tool radius compensation, coordinate rotation
or drilling carried out.

Y A plane is signified with a horizontal axis first and then a vertical axis,

example, the left figure is called ‘XY’ plane. This plane is viewed from

the positive side of Z axis.

G17 (XY PLANE)

The XY plane is the plane which is viewed from the positive side

of Z axis toward the negative direction, i.e., the workpiece top

surface is viewed from direction.

Note: The top surface can be viewed from the negative side of

the Z axis.

However, it is not an ‘XY’ plane, but a ‘YX’ plane. The ‘YX’

plane cannot be used in programming.


G18 (ZX PLANE)

The ZX plane is the plane which is viewed from the positive side
of Y-axis, e.g., plane A which is viewed from direction in
the left figure.
This plane is viewed from the positive side of Y axis. G02 and
G03 in a ZX plane are illustrated as follows.

Note: Usually, the operator stands on the negative side of Y-

axis.

When standing on the -Y axis side of the workpiece you

must be cautious in your programming.

G19 (YZ PLANE)

The YZ plane is the plane which is viewed from the positive side

of X axis, e.g., plane B which is viewed from direction in

the left figure.


3.7

Modal
Absolute/Incremental command for Z-axis movement.

When the cutter is started 100mm above the top of the workpiece and driven 10mm in z direction:

ABS INC

G90 G54 G00 Z2.0; G91 G54 G00 Z-98.0;

G01 Z-10.0 F100; G01 Z-12.0 F100;

G00 Z100.0; G00 Z110.0;


Example

Start from the zero point (origin 0,0), turn clockwise and return to the zero. The start position is 100mm above
the top of the workpiece and the depth of cut is 10mm.

O 0009; O 0010;
G90 G54 G00 X30.0 Y10.0 M03 S100; G91 G00 X30.0 Y10.0 M03 S1000;
Z2.0; Z-98.0;
G01 Z-10.0 F100; G01 Z-12.0 F100;
Y30.0; Y20.0;
X20.0; X-10.0 ;
X30.0 Y60.0; X10.0 Y30.0;
X70.0; X40.0;
X80.0 Y30.0; X10.0 Y-30.0;
X70.0; X-10.0;
Y10.0; Y-20.0;
X30.0; X-40.0;
G00 Z100.0 M05; G00 Z110.0 M05;
X0 Y0; X-30.0 Y-10.0;
M30; M30;
3.8

Preparatory Function (G – Code) Table.

Available G – Code to FS 15MA B : Basic


G – Code Table (1/2) O : Option
Code Group Function
G00 Positioning B
G01 Linear Interpolation B
01
G02 Circular Interpolation CW (Clock Wise) B
G03 Circular Interpolation CCW (Counter Clock Wise) B
G04 Dwell B
G09 00 Exact Stop B
G10 Data Setting B
G17 Xp Yp Plane Where ; Xp : X axis or the parallel axis B
G18 02 Zp Xp Plane Yp : Y axis or the parallel axis B
G19 Yp Zp Plane Zp : Z axis or the parallel axis B
G20 Inch input O
06
G21 Metric Input O
G22 Stored stroke check function on O
04
G23 Stored stroke check function off O
G27 Reference point return check B
G28 Reference point return check B
G29 00 Reference point return check B
G30 Second, third, or fourth reference point return O
G30.1 Floating reference point return B
G40 Tool Radius Compensation cancel B
G41 07 Tool Radius Compensation left B
G42 Tool Radius Compensation right B
G43 Tool length Compensation Positive (+) B
08
G44 Tool length Compensation Positive (-) B
G45 Tool position offset increase O
G46 00 Tool position offset decrease O
G47 Tool position offset double increase O
G48 Tool position offset double decrease O
G49 08 Tool length compensation cancel B
G50 Scaling cancel O
11
G51 Scaling O
G50.1 Programmable mirror image cancel O
18
G51.1 Programmable mirror image O
G52 Local coordinate system setting B
00
G53 Machine coordinate system selection B
G54 Work coordinate system 1 selection B
G55 Work coordinate system 2 selection B
G56 Work coordinate system 3 selection B
14
G57 Work coordinate system 4 selection B
G58 Work coordinate system 5 selection B
G59 Work coordinate system 6 selection B
G60 00 Single direction positioning B
G61 Exact stop mode B
G62 Automatic corner override O
15
G63 Tapping mode B
G64 Cutting mode B
G65 00 Macro call O
G66 Macro modal call A O
G66 1 12 Macro modal call B O
G67 Macro modal call A/B cancel O
G68 Coordinate rotation O
16
G69 Coordinate rotation cancel O
G72.1 Rotation copy O
00
G72.2 Parallel copy O
G73 Pack drill cycle B
G74 Left-handed tapping cycle B
G76 Fine boring cycle B
09
G80 Canned cycle cancel B
G81 Drilling cycle, spot boring cycle B
G82 Drilling cycle, counterboring B
G83 Peck drilling cycle B
G84 Tapping cycle B
G84.2 Rigid tapping cycle O
G84.3 Rigid counter tapping cycle O
G85 Boring cycle B
G86 Boring cycle B
G87 Back boring cycle B
G88 Boring cycle B
G89 Boring cycle B
G90 Absolute command B
03
G91 Incremental command B
G92 Alternation of work-coordinate system B
00
G92.1 Work coordinate present B
G98 Canned cycle initial level return B
10
G99 Canned cycle reference point level return B

• G-codes marked with are defaulted codes used when the power is turned on or reset. For G00/G01 and
G90/G91, either code can be selected as a defaulted code with the parameter. (At shipment from MAKINO,
G00, G17, G91 and G49 are set as default codes.)
For G20/G21, the status displayed immediately before the power is turned off is resumed.
• If a G code is used other than what is on the G code table, or G code whose corresponding option is not
provided as specified, an alarm occurs.
• G codes can be classified as below.

Type Feature

One shot G code It is effective only for the specified block.

It is effective unit other code belongs to the same


Modal G code
group or canceling code is given.

• On above G code table, group no. 00 is a one-shot G code which is effective only the specified block.
Example

One-Shot O1;
G91 G01 X100.0 F100;
G04 P1000; ------------------------- G04 is effective only for the block.
Y50.0;

• G04 dwell : Next motion is delayed for the specified time.


• P1000 : 1 second

Modal The G00 (positioning) and G01 (linear interpolation) are modal G codes which belong to
group 01.
G01 X ___________;
Y ___________; G01 is effective.
Z ___________;

G02 X ___________;
Y ___________; G00 is effective.
Z ___________;

• Several G codes belong to different groups can be specified in the same block in arbitrary order. However the
G code in group 01 must be specified before G code in group 09.

G91 G00 G17 G40 G49 G80;


Group 09

Group 08

Group 07

Group 02

Group 01

Group 03
Command ‘G40 G49 G91 G00 G80 G17;’ is also permitted

• If two or more G codes belong to a group are specified in the same block, the last one becomes effective.

G01 G02 G03 G00 X100.0;

In this case, all of the G codes belong to group 01, so the last specified G00 becomes effective, resulting in X

positive movement by 10mm at rapid traverse.

You might also like