G-Codes simple definition
G00
Rapid traverse
G01
Linear interpolation
with feedrate
G02
Circular interpolation
(clockwise)
G03
Circular interpolation
(counter clockwise)
G2/G3
Helical interpolation
G04
Dwell time in milliseconds
G05
Spline definition
G06
Spline interpolation
G07
Tangential circular
interpolation /
Helix interpolation
/ Polygon interpolation
/ Feedrate interpolation
G08
Ramping function
at block transition
/ Look ahead "off"
G09
No ramping function
at block transition
/ Look ahead "on"
G10
Stop dynamic block
preprocessing
G11
Stop interpolation
during block preprocessing
G12
Circular interpolation
(cw) with radius
G13
Circular interpolation
(ccw) with radius
G14
Polar coordinate
programming, absolute
G15
Polar coordinate
programming, relative
G16
Definition of the
pole point of the
polar coordinate
system
G17
Selection of the
X, Y plane
G18
Selection of the
Z, X plane
G19
Selection of the
Y, Z plane
G20
Selection of a freely
definable plane
G21
Parallel axes "on"
G22
Parallel axes "off"
G24
Safe zone programming;
lower limit values
G25
Safe zone programming;
upper limit values
G26
Safe zone programming
"off"
G27
Safe zone programming
"on"
G33
Thread cutting with
constant pitch
G34
Thread cutting with
dynamic pitch
G35
Oscillation configuration
G38
Mirror imaging "on"
G39
Mirror imaging "off"
G40
Path compensations
"off"
G41
Path compensation
left of the work
piece contour
G42
Path compensation
right of the work
piece contour
G43
Path compensation
left of the work
piece contour with
altered approach
G44
Path compensation
right of the work
piece contour with
altered approach
G50
Scaling
G51
Part rotation; programming
in degrees
G52
Part rotation; programming
in radians
G53
Zero offset off
G54
Zero offset #1
G55
Zero offset #2
G56
Zero offset #3
G57
Zero offset #4
G58
Zero offset #5
G59
Zero offset #6
G63
Feed / spindle override
not active
G66
Feed / spindle override
active
G70
Inch format active
G71
Metric format active
G72
Interpolation with
precision stop "off"
G73
Interpolation with
precision stop "on"
G74
Move to home position
G75
Curvature function
activation
G76
Curvature acceleration
limit
G78
Normalcy function
"on" (rotational
axis orientation)
G79
Normalcy function
"off"
G80 - G89 for
milling
applications:
G80
Canned cycle "off"
G81
Drilling to final
depth canned cycle
G82
Spot facing with
dwell time canned
cycle
G83
Deep hole drilling
canned cycle
G84
Tapping or Thread
cutting with balanced
chuck canned cycle
G85
Reaming canned cycle
G86
Boring canned cycle
G87
Reaming with measuring
stop canned cycle
G88
Boring with spindle
stop canned cycle
G89
Boring with intermediate
stop canned cycle
G81 - G88 for
cylindrical
grinding
applications:
G81
Reciprocation
without plunge
G82
Incremental face
grinding
G83
Incremental
plunge grinding
G84
Multi-pass face
grinding
G85
Multi-pass
diameter
grinding
G86
Shoulder
grinding
G87
Shoulder
grinding with
face plunge
G88
Shoulder
grinding with
diameter plunge
G90
Absolute programming
G91
Incremental programming
G92
Position preset
G93
Constant tool circumference
velocity "on" (grinding
wheel)
G94
Feed in mm / min
(or inch / min)
G95
Feed per revolution
(mm / rev or inch
/ rev)
G96
Constant cutting
speed "on"
G97
Constant cutting
speed "off"
G98
Positioning axis
signal to PLC
G99
Axis offset
G100
Polar transformation
"off"
G101
Polar transformation
"on"
G102
Cylinder barrel
transformation "on";
cartesian coordinate
system
G103
Cylinder barrel
transformation "on,"
with real-time-radius
compensation (RRC)
G104
Cylinder barrel
transformation with
center line migration
(CLM) and RRC
G105
Polar transformation
"on" with polar
axis selections
G106
Cylinder barrel
transformation "on"
polar-/cylinder-coordinates
G107
Cylinder barrel
transformation "on"
polar-/cylinder-coordinates
with RRC
G108
Cylinder barrel
transformation polar-/cylinder-coordinates
with CLM and RRC
G109
Axis transformation
programming of the
tool depth
G110
Power control axis
selection/channel
1
G111
Power control pre-selection
V1, F1, T1/channel
1 (Voltage, Frequency,
Time)
G112
Power control pre-selection
V2, F2, T2/channel
1
G113
Power control pre-selection
V3, F3, T3/channel
1
G114
Power control pre-selection
T4/channel 1
G115
Power control pre-selection
T5/channel 1
G116
Power control pre-selection
T6/pulsing output
G117
Power control pre-selection
T7/pulsing output
G120
Axis transformation;
orientation changing
of the linear interpolation
rotary axis
G121
Axis transformation;
orientation change
in a plane
G125
Electronic gear
box; plain teeth
G126
Electronic gear
box; helical gearing,
axial
G127
Electronic gear
box; helical gearing,
tangential
G128
Electronic gear
box; helical gearing,
diagonal
G130
Axis transformation;
programming of the
type of the orientation
change
G131
Axis transformation;
programming of the
type of the orientation
change
G132
Axis transformation;
programming of the
type of the orientation
change
G133
Zero lag thread
cutting "on"
G134
Zero lag thread
cutting "off"
G140
Axis transformation;
orientation designation
work piece fixed
coordinates
G141
Axis transformation;
orientation designation
active coordinates
G160
ART activation
G161
ART learning function
for velocity factors
"on"
G162
ART learning function
deactivation
G163
ART learning function
for acceleration
factors
G164
ART learning function
for acceleration
changing
G165
Command filter "on"
G166
Command filter "off"
G170
Digital measuring
signals; block transfer
with hard stop
G171
Digital measuring
signals; block transfer
without hard stop
G172
Digital measuring
signals; block transfer
with smooth stop
G175
SERCOS-identification
number "write"
G176
SERCOS-identification
number "read"
G180
Axis transformation
"off"
G181
Axis transformation
"on" with not rotated
coordinate system
G182
Axis transformation
"on" with rotated
/ displaced coordinate
system
G183
Axis transformation;
definition of the
coordinate system
G184
Axis transformation;
programming tool
dimensions
G186
Look ahead; corner
acceleration; circle
tolerance
G188
Activation of the
positioning axes
G190
Diameter programming
deactivation
G191
Diameter programming
"on" and display
of the contact point
G192
Diameter programming;
only display contact
point diameter
G193
Diameter programming;
only display contact
point actual axes
center point
G200
Corner smoothing
"off"
G201
Corner smoothing
"on" with defined
radius
G202
Corner smoothing
"on" with defined
corner tolerance
G203
Corner smoothing
with defined radius
up to maximum tolerance
G210
Power control axis
selection/Channel
2
G211
Power control pre-selection
V1, F1, T1/Channel
2
G212
Power control pre-selection
V2, F2, T2/Channel
2
G213
Power control pre-selection
V3, F3, T3/Channel
2
G214
Power control pre-selection
T4/Channel 2
G215
Power control pre-selection
T5/Channel 2
G216
Power control pre-selection
T6/pulsing output/Channel
2
G217
Power control pre-selection
T7/pulsing output/Channel
2
G220
Angled wheel transformation
"off"
G221
Angled wheel transformation
"on"
G222
Angled wheel transformation
"on" but angled
wheel moves before
others
G223
Angled wheel transformation
"on" but angled
wheel moves after
others
G265
Distance regulation
– axis selection
G270
Turning finishing
cycle
G271
Stock removal in
turning
G272
Stock removal in
facing
G274
Peck finishing cycle
G275
Outer diameter /
internal diameter
turning cycle
G276
Multiple pass threading
cycle
G310
Power control axes
selection /channel
3
G311
Power control pre-selection
V1, F1, T1/channel
3
G312
Power control pre-selection
V2, F2, T2/channel
3
G313
Power control pre-selection
V3, F3, T3/channel
3
G314
Power control pre-selection
T4/channel 3
G315
Power control pre-selection
T5/channel 3
G316
Power control pre-selection
T6/pulsing output/Channel
3
G317
Power control pre-selection
T7/pulsing output/Channel
3
Note that some of
the above G-codes
are not standard.
Specific control
features, such as
laser power control,
enable those optional
codes.
M codes simple definition
M00
Unconditional stop
M01
Conditional stop
M02
End of program
M03
Spindle clockwise
M04
Spindle counterclockwise
M05
Spindle stop
M06
Tool change (see
Note below)
M19
Spindle orientation
M20
Start oscillation
(configured by G35)
M21
End oscillation
M30
End of program
M40
Automatic spindle
gear range selection
M41
Spindle gear transmission
step 1
M42
Spindle gear transmission
step 2
M43
Spindle gear transmission
step 3
M44
Spindle gear transmission
step 4
M45
Spindle gear transmission
step 5
M46
Spindle gear transmission
step 6
M70
Spline definition,
beginning and end
curve 0
M71
Spline definition,
beginning tangential,
end curve 0
M72
Spline definition,
beginning curve
0, end tangential
M73
Spline definition,
beginning and end
tangential
M80
Delete rest of distance
using probe function,
from axis measuring
input
M81
Drive On application
block (resynchronize
axis position via
PLC signal during
the block)
M101-M108
Turn off fast output
byte bit 1 (to 8)
M109
Turn off all (8)
bits in the fast
output byte
M111-M118
Turn on fast output
byte bit 1 (to 8)
M121-M128
Pulsate (on/off)
fast output byte
bit 1 (to 8)
M140
Distance regulation
“on” (configured
by G265)
M141
Distance regulation
“off”
M150
Delete rest of distance
using probe function,
for a probe input
(one of 16, M151-M168)
M151-M158
Digital input byte
1 bit 1 (to bit
8) is the active
probe input
M159
PLC cannot define
the bit mask for
the probe inputs
M160
PLC can define the
bit mask for the
probe inputs (up
to 16)
M161-M168
Digital input byte
2 bit 1 (to bit
8) is the active
probe input
M170
Continue the block
processing look
ahead of the part
program (cancel
the M171)
M171
Stop the block processing
look ahead of the
probe input part
program segment
(like a G10)
M200
Activate the handwheel
operation in the
automatic mode (to
introduce an offset
in the program)
M201-M208
Select the axis
(by number from
1 to 8) for the
handwheel operation
M209
Activate the handwheel
operation in the
automatic mode,
with PLC control
of the axis selection
M210
Deactivate the handwheel
input while in the
automatic mode
M211
Deactivate this
handwheel feature
and also remove
the handwheel offset
(if any)
M213
Spindle 2 clockwise
M214
Spindle 2 counterclockwise
M215
Spindle 2 stop
M280
Switchable spindle/rotary
axis, rotary axis
on, first combination
M281
Switchable spindle/rotary
axis, rotary axis
on, second combination
M290
Switchable spindle/rotary
axis, spindle enabled,
first combination
M291
Switchable spindle/rotary
axis, spindle enabled,
second combination
Note: Other machine
functions, like
tool change (usually
M06) or coolant
control, have their
M-code value specified
by the PLC application
not by the CNC software.
Most of the
M-code values in
above list are
configurable.
Other M-codes (up
to M699) can be
handled by the PLC
application based
on the particular
machine requirements.