You are on page 1of 17

CNC Programming

Basics
Program structure
Every program consists of:
1. Program Start
The program start is the program number.
The program number begins with
character/letter O.
2. Program Contents
NC blocks
3. Program End
M30 for a main program
M17 for a sub-program
CNC Prg. Basics

CNC Program Numbers


Program Numbers
O6999
.
.
.
O0256
O0255
.
.
.
O0000

CNC Prg. Basics

CNC Program Blocks (1)


N is the address
Block numbers from
N0000 to
N9999
A block consists of
number and words
Words are contents of a
block
Block numbers are
selected in the jumps of
ten for the purpose of
insertion
CNC Prg. Basics
3

CNC Program Blocks (2)


A block consists of one
or more blocks
A Word consists of a
character (address) and
a number.
Every address has a
certain meaning, on
which the corresponding
number depends

CNC Prg. Basics

CNC Prg. Syntax


Regulations
The maximum block length must not exceeded
four lines. If max. length exceeded alarm 650
occurs.
Every block starts with a block number.
After the block numbers follows the G
command.
Words consists of coordinates X(U), Z(W).
For G02, G03 program interpolation parameter
I and K are placed after X(U), Z(W).
The F word (feed, thread pitch).
The S word (cutting speed).
The T word (tool address).
CNC Prg. Basics
5

Absolute Value
Programming
Example:
P0 N
P0 P1 N G01 X40. Z25.
F
P1 P2 N G01 X60. Z-40.
F
P2
N
Absolute coordinate
system
CNC Prg. Basics

Incremental Value
Programming
Example:
P0 N
P0 P1 N G01 U5. W-25.
F
P1 P2 N G01 X10. Z-15.
F
P2
N

Incremental coordinate
system
CNC Prg. Basics

Mixed Programming
Example:
P0 N
P0 P1 N G01 U5. W-25.
F
P1 P2 N G01 X60. Z-15.
F
P2
N

Mixed coordinate
system
CNC Prg. Basics

Self-holding Functions (1)


The majority of G and M commands and
other words are self-holding, remain active
until overwritten or deactivated/deselected.
Aimed to simplify and to reduce
programming tasks.
Example: G41 can be deactivated by
issuing G40 command.

CNC Prg. Basics

Self-holding Functions (2)

Take-over of G00 commands in block N0110


In block N0120 G00 is deactivated by G01. G01 is activ
N0100 G00 X50. Z+10.
Example 1: N0110
X36. Z+2.
N0120 G01 X40. Z-10. F
N0050 M03
N0060
Example 2:

N0120 M04

M03 activated at N0050


and effective from
N0050 through N120.
M03 deactivated at
N0120 by M04
CNC Prg.
Basics
10
command

Reference Points
M = Machine zero
point.
(unchangeable ref.
Point determined by
machine
manufacturer)
N = Tool mounting
reference point
W = Work piece zero
point. (can be freely
determined by the
programmer and can

CNC Prg. Basics

11

Work piece (1)

CNC Prg. Basics

12

Work piece (2)

CNC Prg. Basics

13

G & M Commands
G00:
G01:
G02:
G03:
G70:
G71:

Rapid traverse
Linear interpolation
Circular interpolation clockwise
Circular interpolation counter clockwise
Measuring in Inch (USA)
Measuring in mm (Other countries)

M03:
M04:
M20:
M21:

Spindle ON clockwise
Spindle ON counter clockwise
Tailstock back
Tailstock forward
CNC Prg. Basics

14

G00, Rapid Traverse


Tool position X69
Z5

Absolute dimensions of
the target point
coordinates:
N030 G90
N040 G00 X48 Z-26
An absolute X coordinate
related to the diameter.

Incremental dimensions
of the target point
coordinates:
N030 G91
N040
G00 X-10,5 Z-31
CNC Prg.
Basics
15

G01, Linear Interpolation


G01 X Z

P0: tool
position

G90:
N030
N040
N050
N060
37

G00 X39 Z2
G01 X39 Z0
G90
G01 X48 Z-

G91:
N030
N040
N050
N060
CNC Prg. 37
Basics

G00 X39 Z2
G01 X39 Z0
G91
G01 X4.5 Z-

16

G90 & G91 Commands


G90
G01 X+140 Z90
Target point
abs.

PO: Start Point


P1: Target Point

G91
G01 X+40 Z-60
Target point
incr.
CNC Prg. Basics

17

You might also like