Professional Documents
Culture Documents
Fundamentals of CNC Machining
Fundamentals of CNC Machining
Full Screen
Technical Collaborator:
Narrator:
Responsible Person:
Contents
Page 1 of 286
Go Back
Full Screen
Contents
1 FUNDAMENTAL GEOMETRICAL PRINCIPLES
1.1 Description of workpiece points . . . . . . . . . . . . . . . . . . . . .
1.1.1 Workpiece coordinate systems . . . . . . . . . . . . . . . . . .
1.1.2 Definition of workpiece positions . . . . . . . . . . . . . . . .
1.1.3 Polar coordinates . . . . . . . . . . . . . . . . . . . . . . . . .
1.1.4 Absolute dimensions . . . . . . . . . . . . . . . . . . . . . . .
1.1.5 Incremental dimensions . . . . . . . . . . . . . . . . . . . . .
1.1.6 Plane designation . . . . . . . . . . . . . . . . . . . . . . . . .
1.2 Position of zero points . . . . . . . . . . . . . . . . . . . . . . . . . .
1.3 Position of coordinate system . . . . . . . . . . . . . . . . . . . . . .
1.3.1 Overview of various coordinate systems . . . . . . . . . . . .
1.3.2 Machine coordinate system . . . . . . . . . . . . . . . . . . .
1.3.3 Basic coordinate system . . . . . . . . . . . . . . . . . . . . .
1.3.4 Workpiece coordinate system . . . . . . . . . . . . . . . . . .
1.3.5 Frame system . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.3.6 Assignment of workpiece coordinate system to machine axes .
1.3.7 Current workpiece coordinate system . . . . . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
5
5
5
5
9
10
12
14
15
16
16
18
21
22
23
26
27
Contents
Page 2 of 286
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Go Back
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
51
51
55
57
60
63
69
Full Screen
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
77
77
79
85
91
94
115
5 FRAMES
5.1 General . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.2 Frame instructions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.3 Programmable zero offset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.3.1 TRANS, ATRANS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.3.2 G58, G59: Axial programmable ZO (SW 5 and later) . . . . . . . . . .
5.4 Programmable rotation, ROT, AROT . . . . . . . . . . . . . . . . . . . . . . .
5.5 Programmable frame rotations with solid angles, ROTS, AROTS and CROTS
5.6 Programmable scale factor, SCALE, ASCALE . . . . . . . . . . . . . . . . . . .
5.7 Programmable mirroring, MIRROR, AMIRROR . . . . . . . . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
119
119
120
122
122
127
130
142
143
148
6 TOOL OFFSETS
6.1 General information . . . . . . . . . . . . . . .
6.2 List of tool types . . . . . . . . . . . . . . . . .
6.3 Tool selection/tool call T . . . . . . . . . . . .
6.3.1 Tool change with M06 (mill) . . . . . .
6.3.2 Tool change with T command (rotate) .
6.4 Tool offset D . . . . . . . . . . . . . . . . . . .
6.5 Tool selection T with tool management . . . .
6.5.1 Turning machine with circular magazine
6.5.2 Milling machine with chain magazine . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
154
154
158
159
159
163
164
167
168
169
Contents
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Page 3 of 286
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Go Back
. . . . .
AP, RP
. . . . .
. . . . .
. . . . .
. . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Full Screen
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
170
170
171
171
7 MISCELLANEOUS FUNCTION
182
7.1 Auxiliary function outputs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 182
7.1.1 M functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 182
8 TURNING CYCLES
8.1 General information . . . . . . . . . . . . .
8.2 Preconditions . . . . . . . . . . . . . . . . .
8.3 Grooving cycle - CYCLE93 . . . . . . . . .
8.4 Undercut cycle - CYCLE94 . . . . . . . . .
8.5 Stock removal cycle - CYCLE95 . . . . . .
8.6 Thread undercut - CYCLE96 . . . . . . . .
8.7 Thread cutting - CYCLE97 . . . . . . . . .
8.8 Thread chaining - CYCLE98 . . . . . . . .
8.9 Thread recutting . . . . . . . . . . . . . . .
8.10 Extended stock removal cycle - CYCLE950
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
185
185
185
189
203
209
227
232
242
251
253
9 APPENDIX
9.1 Excersises & Problems of CNC Machining . . .
9.1.1 Geometrical Definitions . . . . . . . . .
9.1.2 Cutting Conditions, Time Consumption
9.1.3 Physical Phenomena . . . . . . . . . . .
9.1.4 CNC Programming . . . . . . . . . . . .
9.2 Example . . . . . . . . . . . . . . . . . . . . . .
9.3 Vocabulary . . . . . . . . . . . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
281
281
281
281
282
283
285
285
.
.
.
.
.
.
.
.
.
.
10 REFERENCES
286
Contents
Page 4 of 286
Go Back
1.
1.1.
1.1.1.
Full Screen
Milling:
Turning:
In order for the machine or control to operate with the specified positions, these data must be made in a
reference system that corresponds to the direction of motion of the axis slides. A coordinate system with the
axes X, Y and Z is used for this purpose. DIN 66217 stipulates that machine tools must use right-handed,
rectangular (Cartesian) coordinate systems.
1.1.2.
To specify a position, imagine that a ruler is placed along the coordinate axes. You can now describe every point
in the coordinate system by specifying the direction (X, Y and Z) and three numerical values. The workpiece
zero always has the coordinates X0, Y0 and Z0.
Contents
Page 5 of 286
Go Back
Full Screen
Example:
For the sake of simplicity, we will only use one plane of the coordinate system in this example, i.e. the X/Y
plane. Points P1 to P4 then have the following coordinates:
P1
P2
P3
P4
corresponds
corresponds
corresponds
corresponds
to
to
to
to
X100
X-50
X-105
X70
Y50
Y100
Y-115
Y-75
Contents
Page 6 of 286
Go Back
Full Screen
Example:
Contents
corresponds
corresponds
corresponds
corresponds
to
to
to
to
Page 7 of 286
X25
X40
X40
X60
Z-7.5
Z-15
Z-25
Z-35
Go Back
Full Screen
Example:
corresponds to
corresponds to
X-20
X13
Y-20
Y-13
Z23
Z27
The infeed depth must also be described in milling operations. To do this, we need to specify a numerical
value for the third coordinate (Z in this case).
Contents
Page 8 of 286
Go Back
Full Screen
Example:
corresponds to
corresponds to
corresponds to
X10
X30
X45
Y45
Y60
Y20
Z-5
Z-20
Z-15
Polar coordinates
The coordinates used up to this point to specify points in the coordinate system are called Cartesian coordinates. However, there is another way to specify coordinates, namely as polar coordinates. It is useful to use
polar coordinates in cases where a workpiece or part of a workpiece is dimensioned by radius and angle. The
origin of the dimensional measurements is referred to as the pole.
Contents
Page 9 of 286
Go Back
Full Screen
Example:
The points P1 and P2 can then be described - with reference to the pole - as follows:
P1
P2
1.1.4.
corresponds to radius
corresponds to radius
=100
=60
plus angle
plus angle
=30
=75
Absolute dimensions
With absolute dimensions, all the positional parameters refer to the currently valid zero point. Applied to tool
movement this means: The absolute dimensions describe the position to which the tool is to travel.
Contents
Page 10 of 286
Go Back
Full Screen
The positional parameters for points P1 to P3 in absolute dimensions referring to the zero point are the
following:
P1
P2
P3
Contents
corresponds to
corresponds to
corresponds to
Page 11 of 286
X20
X50
X70
Y35
Y60
Y20
Go Back
Full Screen
The positional parameters for points P1 to P4 in absolute dimensions referring to the zero point are the
following:
P1
P2
P3
P4
1.1.5.
corresponds
corresponds
corresponds
corresponds
to
to
to
to
X25
X40
X40
X60
Z-7.5
Z-15
Z-25
Z-35
Incremental dimensions
Production drawings are frequently encountered, however, where the dimensions refer not to the origin, but to
another point on the workpiece. In order to avoid having to convert such dimensions, it is possible to specify
them in incremental dimensions. Incremental dimensions refer to the positional data for the previous point.
Applied to tool movement this means: The incremental dimensions describe the distance the tool is to travel.
Contents
Page 12 of 286
Go Back
Full Screen
P1
P2
P3
corresponds to
corresponds to
corresponds to
Contents
X20
X30
X20
Y35
Y20
-35
Page 13 of 286
Go Back
Full Screen
P1
P2
P3
P4
corresponds
corresponds
corresponds
corresponds
to
to
to
to
X25
X15
Z-10
X20
Z-7.5
Z-7.5
Z-10
;(with
;(with
;(with
;(with
reference
reference
reference
reference
to
to
to
to
When DIAMOF or DIAM90 is active, the path setpointn is programmed as a radius dimension with G91.
1.1.6.
Plane designation
A plane is defined by means of two coordinate axes. The third coordinate axis is perpendicular to this plane and
determines the infeed direction of the tool (e.g. for 2/1/2/ D machining). When programming, it is necessary
to specify the working plane in order that the control can calculate the tool offset values correctly. The plane
is also relevant to certain types of circular programming and polar coordinates.
Contents
Page 14 of 286
Go Back
Full Screen
Milling:
Turning:
The working planes are specified as follows in the NC program with G17, G18 and G19:
Plane
X/Y
Z/X
Y/Z
1.2.
Identifier
G17
G18
G19
In feed direction
Z
Y
X
The various origins and reference positions are defined on the NC machine. They are reference points:
for the machine to approach and,
refer to programming the workpiece dimensions.
Contents
Page 15 of 286
Go Back
M
A
W
B
R
Full Screen
Machine zero
Blocking point. Can coincide with the workpiece zero (turning machines only)
Workpiece zero = Program zero
Start point. Can be defined for each program. Start point of the first tool for machining.
Reference point. Position determined by cam and measuring system. The distance to the
machine zero M must be known, so that the axis position can be set to exactly this value at
this position.
The diagrams show the zero points and reference points for turning machines and drilling/milling machines.
1.3.
1.3.1.
Contents
Page 16 of 286
Go Back
Full Screen
In cases where various different machine coordinate systems are in use (e.g. 5-axis transformation), an
internal transformation function mirrors the machine kinematics on the coordinate system currently selected
for programming.
The individual axis identifiers are explained in the subsection headed Axis types in this section.
Contents
Page 17 of 286
Go Back
Full Screen
The machine coordinate system comprises all the physically existing machine axes. Reference points and
tool and pallet changing points (fixed machine points) are defined in the machine coordinate system. Where
the machine coordinate system is used for programming (this is possible with some of the G functions), the
physical axes of the machine are addressed directly. No allowance is made for workpiece clamping.
Contents
Page 18 of 286
Go Back
Full Screen
The location of the coordinate system relative to the machine depends on the machine type. The axis
directions follow the so-called three-finger rule of the right hand (in accordance with DIN 66217). Standing
in front of the machine, the middle finger of the right hand points away from the infeed direction of the main
spindle. The following then applies:
the thumb points in the +X direction,
the index finger points in the +Y direction,
the middle finger points in the +Z direction.
In practice, this can look quite different on different types of machine. The following are examples of machine
coordinate systems for various machines.
Contents
Page 19 of 286
Go Back
Contents
Full Screen
Page 20 of 286
Go Back
Full Screen
The basic coordinate system is a Cartesian coordinate system, which is mirrored by kinematic transformation
(for example, 5-axis transformation or by using Transmit with peripheral surfaces) onto the machine coordinate
system. If there is no kinematic transformation, the basic coordinate system differs from the machine coordinate
system only in terms of the axes designations. The activation of a transformation can produce deviations in the
Contents
Page 21 of 286
Go Back
Full Screen
parallel orientation of the axes. The coordinate system does not have to be at a right angle. Zero offset, scaling,
etc. are always executed in the basic coordinate system. The coordinates also refer to the basic coordinate
system when specifying the working field limitation.
1.3.4.
Normally, all CNC programmes are made in the workpiece coordinate system preferably. In other words, the
data in the NC program refer to the workpiece coordinate system. The workpiece coordinate system is always
a Cartesian coordinate system and assigned to a specific workpiece.
Contents
Page 22 of 286
Go Back
Full Screen
Frame system
The frame is a self-contained arithmetic rule that transforms one Cartesian coordinate system into another
Cartesian coordinate system. It is a spatial description of the workpiece coordinate system. The following
components are available within a frame:
zero offset,
rotate,
mirror,
scale.
These components can be used individually or in any combination.
Contents
Page 23 of 286
Go Back
Full Screen
Contents
Page 24 of 286
Go Back
Full Screen
Contents
Page 25 of 286
Go Back
Full Screen
The location of the workpiece coordinate system in relation to the basic coordinate system (or machine
coordinate system) is determined by settable frames.
The settable frames are activated in the NC program by means of commands such as G54.
Contents
Page 26 of 286
Go Back
Full Screen
Sometimes it is advisable or necessary to reposition and to rotate, mirror and/or scale the originally selected
workpiece zero within a program.
The programmable frames can be used to reposition (rotate, mirror and/or scale) the current zero point
at a suitable point in the workpiece coordinate system. You will thus obtain the current workpiece coordinate
system.
Several zero offsets are possible in the same program.
Contents
Page 27 of 286
Go Back
2.
Full Screen
2.1.
Word
N10
N20
N30
N40
N50
Word
G0
G2
G91
...
M30
Word
X20
Z37
...
...
...
...
...
...
...
...
...
;Comment
;1st block
;2nd block
; ...
...
;End of program (last block)
Program names
Each program has a different name; the name can be chosen freely during program creation (except for
punchtape format), taking the following conditions into account:
the first two characters must be letters (or a letter with an underscore character),
otherwise: letters or numerals.
Example:
MPF100 or
SHAFT or
SHAFT 2
Contents
Page 28 of 286
Go Back
Full Screen
Only the first 24 characters of a program identifier are displayed on the NC.
Punchtape format
File names:
1. File names can contain the characters 0...9, A...Z, a...z or and may be up to 24 characters in length.
2. File names must have a 3-digit identifier ( xxx).
3. Data in punchtape format can be created externally or modified using an editor. The name of a file
which is stored internally in the NC memory begins with N . A file in punchtape format begins with
%name, % must appear in the first column of the first line.
Example:
% N SHAFT123 MPF
%flange3 MPF
2.2.
Character set The following characters are available for writing NC programs:
Upper case
A, B, C, D, E, F, G, H, I, J, K, L, M, N, (O), P, Q, R, S, T, U, V, W, X, Y, Z
Please note:
Take care to differentiate between the letter O and the numeral 0.
Lower case
a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v, w, x, y, z
Contents
Page 29 of 286
Go Back
Full Screen
Numerals
0, 1, 2, 3, 4, 5, 6, 7, 8, 9
No distinction is made between upper and lower case letters.
Special characters
%
(
)
[
]
:
=
/
*
+
Program start character (used only for writing programs on an external PC)
For bracketing parameters or expressions
For bracketing parameters or expressions
For bracketing addresses or indexes
For bracketing addresses or indexes
Less than
Greater than
Main block, label suffix, chain operator
Assignment, part of equation
Division, block suppression
Multiplication
Addition
Subtraction, minus sign
Double quotation marks, identifier for character string
Single quotation marks, identifier for spec. numerical values: hexadec., binary
System variable identifiers
Underscore, belonging to letters
Reserved
Reserved
Decimal point
Comma, parameter separator
Comment start
Format character, same effect as space character
Block end
?
!
.
,
;
&
LF
Contents
Page 30 of 286
Go Back
Full Screen
Separator
Separator (blank)
Words
NC programs are made up of blocks and each block is made up of words. A word in the NC language
consists of an address character and a digit or sequence of digits representing an arithmetic value. The address
character of the word is usually a letter. The sequence of digits can contain a leading sign and decimal point.
The leading sign always appears between the address letter and the sequence of digits. The positive leading
sign (+) does not have to be specified.
Blocks and block format
An NC program consists of individual blocks. A block generally consists of (several) words. A block should
contain all the data required for performing an operation step and is terminated with the character LF (LINE
FEED = new line).
The characters LF character does not have to be inserted manually, it is generated automatically when
Contents
Page 31 of 286
Go Back
Full Screen
Contents
Definition
Address of block number
Block number
Preparatory function
Positional data
Feed
Speed
Tool
Tool offset number
Miscellaneous function
Auxiliary function
Page 32 of 286
Go Back
Full Screen
Contents
Page 33 of 286
Go Back
Full Screen
The order of the block numbers is arbitrary, however increasing block numbers are recommended.
You can also program NC blocks without block numbers.
Addresses
Addresses are fixed or variable identifiers for axes (X, Y, . . . ) spindle speed (S), feed (F), circle radius (CR),
etc.
Example:
N10 X100
Important addresses
Address
A=DC( . . . )
A=ACP( . . . )
A=ACN( . . . )
ADIS
B=DC( . . . )
B=ACP( . . . )
B=ACN( . . . )
C=DC( . . . )
C=ACP( . . . )
C=ACN( . . . )
CHR= . . .
D ...
F ...
FA[axis]= . . . or
FA[spindle]= . . . or
[SPI(spindle)]=
G ...
H ...
Remarks
variable
fixed
variable
Rotary axis
variable
fixed
fixed
fixed
fixed
fixed
fixed
Contents
Page 34 of 286
Go Back
Full Screen
fixed
fixed
fixed
fixed
fixed
fixed
fixed
Axis
Arithmetic parameter, n can be set via MD (default 0-99)
Axis (SW 5.1 and higher)
Round contour corner
Round contour corner (modal)
Spindle speed
Tool number
Axis
Axis
Axis
Axis
bsolute
ncremental
Axis
variable
fixed
variable
fixed
fixed
fixed
fixed
variable
variable
variable
variable
Contents
Page 35 of 286
Go Back
variable
variable
variable
fixed
fixed
variable
Full Screen
Axis
variable
Aperture angle
Polar angle
Circle radius
Polar radius
Main block
variable
variable
variable
variable
fixed
Contents
Page 36 of 286
Go Back
Full Screen
Extended addresses
Extended address notation enables a larger number of axes and spindles to be organized in a system. An
extended address is composed of a numeric extension or a variable identifier enclosed in square brackets and an
arithmetic expression assigned with an = sign.
Example:
X7
X4=20
CR=7.3
S1=470
M3=5
The extended address notation is only permitted for the following direct addresses:
X, Y, Z, . . .
I, J, K
S
SPOS, SPOSA
M
H
T
F
Axis addresses
Interpolation parameters
Spindle speed
Spindle position
Miscellaneous functions
Auxiliary functions
Tool number
Feed
The number (index) in extended address notation can be substituted by a variable for M, H and S addresses
and SPOS and SPOSA. The variable identifier is enclosed in square brackets.
Example:
S[SPINU]=47
0
;Speed for the spindle whose number is stored in the variable SPINU
Contents
Page 37 of 286
Go Back
Full Screen
;Clockwise rotation for the spindle whose number is stored in the variable SPINU
;Selection of the tool for the spindle whose number is stored in the variable SPINU
Fixed addresses
The following addresses are set permanently:
Address
D
F
G
H
L
M
N
P
R
S
T
:
Contents
Page 38 of 286
Go Back
Full Screen
Example:
N10 POS[X]=100
When programming with the axis extension, the axis to be traversed is enclosed in square brackets.
Settable addresses
Addresses can be defined either as an address letter (with numerical extension if necessary) or as freely
selected identifiers.
Variable addresses must be unique within the control, i.e. the same identifier name may not be used for
different address types.
A distinction is made between the following address types:
axis values and end points,
interpolation parameters,
feeds,
approximate positioning criteria,
measurements,
axis and spindle response.
...
Contents
Page 39 of 286
Go Back
Full Screen
Operators/mathematical functions
+
*
/
DIV
Addition
Subtraction
Multiplication
Division, Notice: (Type INT)/(Type INT)=(Type REAL); e.g. 3/4 = 0.75
Division, for variable type INT and REAL
Notice: (Type INT)DIV(Type INT)=(Type INT); e.g. 3 DIV 4 = 0
Modulo division (only type INT) produces remainder of INT division, e.g. 3 MOD
4=3
Chain operator (for FRAME variables)
Sine
Cosine
Tangent
MOD
:
Sin()
COS()
TAN()
Contents
Page 40 of 286
Go Back
Full Screen
Arcsine
Arccosine
Arctangent2
Square root
Absolute number
2nd power (square)
runcate to integer
Round to integer
Natural logarithm
Exponential function
Equal to
Not equal to
Greater than
Less than
Greater than or equal to
Less than or equal to
Concatenation of strings (not for 810D)
AND
OR
Negation
Exclusive OR
In arithmetic expressions, the execution order of all the operators can be specified by parentheses, in order
to override the normal priority rules.
Value assignments
Values can be assigned to the addresses. The method of value assignment depends on the type of address
Contents
Page 41 of 286
Go Back
Full Screen
identifier. An = sign must be inserted between the address identifier and the value if:
the address identifier consists of more than one letter or
the value consists of more than one constant.
The =-sign can be omitted if the address identifier is a single letter and the value consists of only one
constant. Leading signs are allowed and separators are permitted after the address letter.
Examples:
X10
X1=10
FGROUP(X1, Y2)
AXDATA[X1]
AX[X1]=10
X=10*(5+SIN(37.5))
A numeric extension must always be followed by one of the special characters =, (, [)], , or an
operator in order to distinguish an address name with numeric extension from an address letter with a value.
Identifiers
Identifiers can also be used to describe words (in compliance with DIN 66025). The identifiers have the same
meaning as the words within an NC block. Identifiers must be unique. Identical identifiers must not be used
for different objects. Identifiers can stand for:
variables,
system variables,
user variables,
subprograms,
Contents
Page 42 of 286
Go Back
Full Screen
vocabulary words,
DIN addresses with several letters,
jump labels.
Structure
The identifiers are composed of up to 32 characters. The following characters may be used:
letters,
underscores,
numerals.
The first two characters must be letters or underscores, separators must not be programmed between the
individual characters (see the following pages).
Example:
CMIRROR, CDON
Only a limited number of characters can be displayed on the screen. With the standard display setting, the
limits are as follows:
Program names:
Axis identifiers:
Variable identifiers:
24 characters
3 characters
32 characters
Contents
Page 43 of 286
Go Back
Full Screen
Contents
Page 44 of 286
Go Back
Full Screen
Definition
Integers with leading sign
Real numbers (fractions with decimal point,
LONG REAL according to IEEE)
Boolean values: TRUE (1) and FALSE (0)
1 ASCII character specified by the code
Character string, number of characters in [],
maximum of 200 characters
Axis names (axis addresses) only
Geometrical parameters for translation, rotation, scale and mirror
BOOL
CHAR
STRING
AXIS
FRAME
Value range
(231 - 1)
(10-300 10+300)
1, 0
0 255
Sequence of values with 0 255
Any axis identifiers in the channel
Identical elementary types can be combined in arrays. Up to two-dimensional arrays are possible.
Constants
Integer constants:
Integer with or without leading sign, e.g. for assigning a value to an address.
Example:
X100
X-100
Real constants:
Real number, e.g. with decimal point, with or without leading sign, e.g. for assigning a value to an address.
Contents
Page 45 of 286
Go Back
Full Screen
Example:
X10.25
X-10.25
X0.25
X.25
X=-.1EX-3
;Assignment
;Assignment
;Assignment
;Assignment
;Assignment
of
of
of
of
of
the
the
the
the
the
value
value
value
value
value
+10.25 to address X
-10.25 to address X
+0.25 to address X
+0.25 to address X without leading 0
-0.1*10-3 to address X
If, in an address which permits decimal point input, more decimal places are specified than actually provided
for the address, then they are rounded to fit the number of places provided.
X0 cannot be replaced with X.
Example:
Do not replace G01 X0 with G01 X!
Hexadecimal constants
Constants can also be interpreted in hexadecimal format. The letters A to F stand for the digits 10 to
15. Hexadecimal constants are enclosed in single quotation marks and start with the letter H, followed by
the value in hexadecimal notation. Separators are allowed between the letters and digits.
Example for machine data:
$MC TOOL MANAGEMENT MASK=H3C7F
The maximum number of characters is limited by the value range of the integer data type.
Binary constants
Constants can also be interpreted in binary format. In this case, only the digits 0 and 1 are used.
Binary constants are enclosed in single quotation marks and start with the letter B, followed by the binary
value. Separators are allowed between the digits.
Contents
Page 46 of 286
Go Back
Full Screen
The maximum number of characters is limited by the value range of the integer data type.
Program section
A program section consists of a main block and several subblocks.
Example:
:10 D2 F200 S900 M3
N20 G1 X14 Y35
N30 X20 Y40
N40 Y-10
...
N100 M30
Skipping blocks
Blocks which are not to be executed on every program pass can be skipped (e.g. positioning program). Blocks
which are to be skipped are marked with an oblique / in front of the block number. Several consecutive blocks
can also be skipped. The instructions in the skipped blocks are not executed; the program continues with the
next block which is not skipped.
Contents
Page 47 of 286
Go Back
Full Screen
Example:
N10
/N20
N30
/N40
N70
;is executed
;skipped
;is executed
;skipped
;is executed
SW 5 and later
Up to 8 skip levels can be programmed. Only 1 skip level can be specified per NC block:
/ ...
/0 . . .
/1 N010 . . .
/2 N020 . . .
Contents
;Block
;Block
;Block
;Block
is
is
is
is
skipped
skipped
skipped
skipped
Page 48 of 286
Go Back
Full Screen
;Block is skipped (8th skip level)
Comments
To make NC programs easier to understand for other users and programmers, it is advisable to insert
meaningful comments in the program. Comments are appended to the end of a block and are separated from
the program section of the NC block by a semicolon (;).
Example:
N10 G1 F100 X10 Y20
N10
N20
N50
;
;
;
;
Comments are stored and appear in the current block display when the program is running.
Programming messages
Messages can be programmed to provide the user with information about the current machining situation
during program execution. A message in an NC program is generated when the message text is typed after vocabulary word MSG in round parentheses () and quotation marks. A message can be cleared by
programming MSG ().
Example:
N10 MSG (Roughing the contour)
N20 X . . . Y . . .
N ...
N90 MSG ()
Contents
Page 49 of 286
;Activate message
Go Back
Full Screen
A message text can be up to 124 characters long and is displayed in two lines (2*62 characters). Contents
of variables can also be displayed in message texts.
Example:
N10 R12=$AA IW [X]
N20 MSG (check position of X axis<<R12<<)
N ...
N90 MSG ()
N20 MSG (check position of X axis<<$AA IW[X]<<)
Setting alarms
You can also set alarms in addition to messages in an NC program. Alarms are displayed in a separate
field on the screen display. An alarm is associated with a reaction on the control which depends on the alarm
category. Alarms are programmed by writing the vocabulary word SETAL followed by the alarm number
enclosed in brackets. The valid range for alarm numbers lies between 60,000 and 69,999, whereby 60,000 to
64,999 are reserved for SIEMENS cycles and 65,000 to 69,999 are available to the user.
Alarms are always programmed in a separate block.
Example:
N100 SETAL (65000)
Contents
Page 50 of 286
Go Back
3.
Full Screen
POSITIONAL DATA
3.1.
Programming:
Absolute dimensioning
Incremental dimensioning
G90
X=AC() Y=AC() Z=AC()
G91 or
X=IC() Y=IC() Z=IC()
Function
The G90/91 commands and the non-modal dimensions AC/IC are used to define the system for describing
the approach to setpoints.
Contents
Page 51 of 286
Go Back
Full Screen
Sequence
Contents
Page 52 of 286
Go Back
Full Screen
Additional notes
The commands G90 and G91 generally apply to all axes programmed in ubsequent NC blocks. Both
commands are modal. On conventional turning machines it is standard practice to interpret incremental NC
blocks in the transverse axis as radius values, while diameter dimensions are valid for absolute coordinates. This
conversion for G90/G91 is performed using the commands DIAMON, DIAMOF or DIAM90.
Programming example
The traverse paths are entered in absolute coordinates with reference to the workpiece zero. The center
point coordinates I and J for circular interpolation are specified blockwise in absolute coordinates, since the arc
center is programmed - independent of G90/G91 - in incremental coordinates as standard.
Contents
Page 53 of 286
Go Back
Full Screen
N10
N20
N30
or
N30
N40
N50
G1 Z-5 F500
G2 X20 Y35 I=AC(45) J=AC(35)
Contents
Page 54 of 286
Go Back
N5
N10
N20
N30
or
N30
N40
N50
3.1.1.
Full Screen
T1 D1 S2000 M3
G0 G90 X11 Z1
G1 Z-15 F0.2
G3 X11 Z-27 I=AC(-5) K=AC(-21)
Programming:
Incremental dimension data input G91 or
X=IC() Y=IC() Z=IC()
Contents
Page 55 of 286
Go Back
Full Screen
Function:
For applications such as scratching, it is necessary only to traverse the path programmed in the incremental
coordinates. The active zero offset or tool offset is not traversed. This can be set separately via SDs
FRAME OFFSET INCR PROG (zero point) and TOOL OFFSET INCR PROG (tool offset).
Programming example:
G54 contains an offset of 25 in X
SD 42440 FRAME OFFSET INCR PROG = 0 (no retraction of the active zero offset)
N10
N20
N30
Contents
Page 56 of 286
Go Back
Full Screen
Programming:
A=DC() B=DC() C=DC()
or
A=ACP() B=ACP() C=ACP()
or
A=ACN() B=ACN() C=ACN()
Explanation of the parameters:
ABC
DC
ACP
ACN
Function:
With the above parameters you can define the desired approach strategy for positioning rotary axes.
Contents
Page 57 of 286
Go Back
Full Screen
Sequence:
Contents
Page 58 of 286
Go Back
Full Screen
360 in a block. You will find more information on the previous pages.
The positive direction of rotation (clockwise or counterclockwise) is set in the machine data.
Additional notes:
All of the commands are modal. You can also use DC, ACP and ACN for spindle positioning from zero
speed.
Example:
Example: SPOS=DC(45)
Programming example:
Machining on a rotary table: the tool is stationary, the table rotates through 270 in clockwise direction to
produce a circular groove.
N10
N20
SPOS=0
G90 G0 X-20 Y0 Z2 T1
Contents
Page 59 of 286
Go Back
G1 Z-5 F500
C=ACP(270)
N50
G0 Z2 M30
3.3.
Full Screen
Reduce feed
The table rotates through 270 in clockwise direction,
the tool mills a circular groove
Lift, end of program
Programming:
Call
G70 or G71
G700 or G710 SW5 and later
Function:
Depending on the dimensions in the production drawing, you can program workpiece geometries alternately
in metric measures and inches.
In SW 5 and higher, the functionality of G70/G71 has been extended with G700/G710. In addition to
the geometrical parameters, the technological parameters, such as feed F, are interpreted during part program
Contents
Page 60 of 286
Go Back
Full Screen
Contents
Page 61 of 286
Go Back
Full Screen
All length-related NC data, machine data and setting data for G700/G710 are always read and written in
the programmed context of G700/G710.
Synchronized actions
If positioning tasks are performed in synchronized actions and no G70/G71/G700/G710 command is programmed in the synchronized action itself, the G70/G71/G700/G710 context active at the time of execution
determines which system of units is used.
Programming example
Change between metric and imperial input with basic setting metric (G70/G71).
N10
N20
N30
N40
N50
X1.18 Y3.54
Contents
Page 62 of 286
Go Back
3.4.
Full Screen
G71 X 20 Y30
G0 Z2 M30
Enter positions in mm
Retract in rapid traverse, end of program
Programming:
Call
G54 or G55 or G56 or G57 or G505 G599
Deactivate
G53 or G500 or SUPA or G153
Explanation of the commands
G53
G54 to G57
G153
G500
SUPA
G505 . . . G599
Contents
Page 63 of 286
Go Back
Full Screen
Function
The settable zero offset relates the workpiece zero on all axes to the origin of the basic coordinate system.
It is therefore possible to call up cross-program zero points for different fixtures with a G command.
Milling:
For turning, e.g. the offset value for tightening the chuck is entered in G54.
Contents
Page 64 of 286
Go Back
Full Screen
Turning:
Contents
Page 65 of 286
Go Back
Full Screen
Sequence:
Setting the offset values
On the operator panel or universal interface, enter the following values in the internal control zero offset
table:
coordinates for the offset,
angle for rotated clamping and
scale factors if necessary.
Contents
Page 66 of 286
Go Back
Full Screen
In the NC program, the zero offset is moved from the machine coordinate system to the workpiece coordinate
system by executing commands G54 to G57. In the next NC block with a programmed movement, all of the
positional parameters and thus the tool movements refer to the workpiece zero which is now valid.
The four available zero offsets can be used, e.g. for multiple machining operations, to describe four workpiece
clamping positions simultaneously and execute them in the program.
Further settable zero offsets, G505 to G599
Command numbers G505 to G599 are available for this purpose. This enables you to create up to 100
settable zero offsets in total, in addition to the four default zero offsets G54 to G57, by using the machine data.
They are stored in the zero point memory.
Deactivating a zero offset
Command G500 activates the first settable zero offset including basic offset, i.e. when zero frame is selected
as the default, the current settable zero offset is deactivated. G53 suppresses the programmable and settable
Contents
Page 67 of 286
Go Back
Full Screen
offset non-modally. G153 has the same effect as G53 and also suppresses the total basic frame. SUPA has the
same effect as G153 and also suppresses the DRF offset, overlaid motions and external ZOs. You will find more
information on programmable zero offsets in Chapter 6 (frames).
Additional notes
The basic setting at program start, e.g. G54 or G500, can be set with machine data.
Programming example
In this example, three workpieces, arranged on a pallet according to the zero offset values G54 to G56, are
machined successively. The machining sequence is programmed in subprogram L47.
N10
N20
N30
N40
N50
N60
Contents
Approach
Call the first zero offset, spindle clockwise
Run program, in this case as a subprogram
Call the second zero offset Z via obstacle
Run program as subprogram
Call third zero offset
Page 68 of 286
Go Back
3.5.
Full Screen
L47
G53 X200 Y300 M30
Programming:
Call
G17 or G18 or G19
Explanation of the commands
G17
G18
G19
Infeed direction Z
Infeed direction Y
Infeed direction X
The axis assignment for G17, G18, G19 specified above is based on the supposition that X is assigned to the
1st geometry axis, Y to the second and Z to the third in the machine data.
Function
The specification of the working plane, in which the contour is to be machined also defines the following
functions:
the plane for tool radius compensation,
the infeed direction for tool length compensation depending on the tool type,
the plane for circular interpolation.
Contents
Page 69 of 286
Go Back
Full Screen
Milling:
Sequence
It is advisable to define the working plane at the beginning of the program. The working plane must be
specified when the tool path compensation G41/G42 (see Section Tool offsets) is called so that the control
can correct the tool length and radius. In the initial setting, G17 (X/Y plane) is defined for milling and G18
(Z/X plane) is defined for turning.
Contents
Page 70 of 286
Go Back
Full Screen
Turning:
Machining on inclined planes
Contents
Page 71 of 286
Go Back
Full Screen
Rotate the coordinate system with ROT (see Section Coordinate system offset) to position the coordinate
axes on the inclined surface. The working planes rotate accordingly. Tool length compensation in inclined
planes. The tool length compensation generally always refers to the fixed, non-rotated working plane.
Note
The tool length components can be calculated according to the rotated working planes with the functions
for Tool length compensation for orientable tools.
Additional notes
The control provides convenient coordinate transformation functions for the spatial definition of the working
plane.
Programming example
The conventional approach: Define the working plane, call up the tool type and tool offset values, activate
the path compensation, program the traversing movements.
Example for milling tool:
N10
G17 T5 D8
N20
N30
3.6.
Programming:
G25
Contents
Page 72 of 286
Go Back
Full Screen
G25/G26 limits the working area in which the tool can traverse in all channel axes. These commands allow
you to set up protection zones in the working area which are out of bounds for tool movements. In addition to
programming values using G25/G26, you can also parameterize them in setting data. The axial setting data
Contents
Page 73 of 286
Go Back
Full Screen
define the axes for which the working area limitation is valid. The working area limitation for all validated axes
must be programmed with the WALMON command. The WALIMOF command deactivates the working area
limitation.
Sequence:
Reference points on the tool
When tool length compensation is active, the reference point is the tip of the tool, otherwise it is the
toolholder reference point. If the tool is positioned outside the specified area or leaves this area, the program
stops executing.
Contents
Page 74 of 286
Go Back
Full Screen
The coordinates for the individual axes apply in the basic coordinate system!
Activate/deactivate working area limitation
The command WALIMON activates working area limitation for all axes with the values programmed in
G25/G26. WALIMON is the default setting. It therefore only has to be programmed if working area limitation
has been disabled. The command WALIMOF is used to deactivate working area limitation for all of the axes.
Additional notes
G25/G26 can also be used to program limits for spindle speeds at the address S. For further information,
please refer to Section Feed control and spindle motion.
Programming example
A protection zone is defined in the working area of a turning machine. This protects the surrounding
equipment such as turrets, measuring stations, etc. against damage. Default setting: WALIMON
N10
G0 G90 F0.5 T1
Contents
Page 75 of 286
Go Back
N30
N40
N50
N60
N70
N80
N90
N100
N110
Contents
Full Screen
Define the lower limit for the individual coordinate
axes
Define the upper limit
Cutting program
To tool change location
Deactivate working area limitation
Boring
Back
Activate working area limitation
End of program
Page 76 of 286
Go Back
4.
4.1.
Full Screen
Motion commands
In this section you will find a description of all the travel commands you can use to machine workpiece
contours. You can program straight lines and arcs of a circle. A helix can be produced by combining these two
elements. Executed in succession, these contour elements produce the workpiece contour. Before a machining
process is started, you need to position the tool in such a way as to avoid any damage to the tool or workpiece.
Contents
Page 77 of 286
Go Back
Milling:
Full Screen
Turning:
Contents
Page 78 of 286
Go Back
Full Screen
Programming
Define pole:
G110, G111, G112 X . . . Y . . . Z . . .
G110, G111, G112 AP= . . . RP= . . .
Traversing commands with polar coordinates:
G0
G1
G2
G3
AP=
AP=
AP=
AP=
. . . RP=
. . . RP=
. . . RP=
. . . RP=
...
...
...
...
RP=
Contents
Page 79 of 286
Go Back
Full Screen
All the commands relating to pole input must be programmed in a separate NC block
Function
A workpiece is frequently dimensioned with a central point as origin; the dimensions are given in terms of
angles and radii, e.g. in drilling patterns. Polar coordinates can be used to program these dimensions directly
in accordance with the drawing.
Sequence
Traversing commands
The positions specified by polar coordinates can be traversed with G0, G1, G2 and G3.
Working plane
The polar coordinates are valid in the working plane selected with G17 to G19.
Contents
Page 80 of 286
Go Back
Full Screen
Cylindrical coordinates
The 3rd geometry axis, which lies perpendicular to the working plane, can also be specified in Cartesian
coordinates. This enables spatial parameters to be programmed in cylindrical coordinates.
Example:
G17 G0 AP . . . RP . . . Z . . .
Contents
Page 81 of 286
Go Back
Full Screen
The pole can be specified in Cartesian or polar coordinates. G commands G110 to G112 are used to provide a
unique definition of the reference point for dimensions. Absolute or incremental dimensioning (AC/IC) therefore
has no effect on the systematics specified in the G command.
Contents
Page 82 of 286
Go Back
Full Screen
If no pole is specified, the origin of the active workpiece coordinate system applies.
Polar angle AP
Value range 0360. With absolute input, the angle refers to the horizontal axis of the working plane, e.g.
X axis with G17. The positive direction of rotation runs counterclockwise. When incremental coordinates are
entered (AP=IC), the last angle programmed is taken as the reference. The polar angle is stored until a new
pole is defined or the working plane is changed.
Polar radius RP
The polar radius is specified in mm or inches in absolute positive values. RP is stored until a new value is
input.
SW 4.1 and later
If the modally active polar radius is RP = 0, the polar radius is calculated from the distance between
the starting point vector in the polar plane and the active pole vector. The calculated polar radius is stored
modally afterwards. This applies irrespective of the selected pole definition G110, G111, G112. If both points
Contents
Page 83 of 286
Go Back
Full Screen
are programmed identically, then this radius becomes 0 and alarm 14095 is generated.
If a pole angle AP is programmed with RP = 0, if the current block contains a polar angle AP rather than
a polar radius RP and if there is a difference between the current position and pole in workpiece coordinates,
then this difference is applied as the polar radius and stored modally.
If the difference = 0, the pole coordinates are specified again and the modal polar radius remains zero.
The following general rule applies:
You must not program Cartesian coordinates, such as interpolation parameters or axis addresses, for the
selected working plane in NC blocks with polar end position coordinates.
Additional notes
In the NC program you can switch between polar and Cartesian coordinates, block by block.
Programming example
Making a hole pattern: the positions of the holes are specified in polar coordinates. Each hole is machined
with the same production sequence: Predrill, drill to size, ream etc. The machining sequence is stored in a
Contents
Page 84 of 286
Go Back
Full Screen
subprogram.
N10
N20
N30
G17 G54
G111 X43 Y38
G0 RP=30 AP=18 Z5
N40
N50
L10
G91 AP=72
N60
N70
N80
N90
N100
N110
N120
N130
L10
AP=IC(72)
L10
AP=IC(72)
L10
AP=IC(72)
L10
G0 X300 Y200 Z100 M30
4.3.
Programming
G0 X . . . Y . . . Z . . .
G0 AP= . . . RP= . . .
RTLIOF, RTLION (SW 6.1 and later)
Explanation of the parameters
XYZ
Contents
Page 85 of 286
Go Back
Full Screen
Function
You can use the rapid traverse movements to position the tool rapidly, to travel round the workpiece or to
approach tool change locations.
This function is not suitable for workpiece machining!
Sequence
The tool movement programmed with G0 is executed at the highest possible speed (rapid traverse). The
rapid traverse speed is defined separately for each axis in machine data. If the rapid traverse movement is
executed simultaneously on several axes, the rapid traverse speed is determined by the axis which requires the
greatest time for its section of the path.
Contents
Page 86 of 286
Go Back
Full Screen
Additional notes
G0 is modal.
Function
SW 6.1 and later
Traversing path axes as positioning axes with Path axes can travel in one of two different modes to execute
movements in rapid traverse:
linear interpolation: (behavior in earlier SW version) The path axes are interpolated together,
nonlinear interpolation: (SW 6 and later) Each path axis is interpolated as an individual (positioning)
axis independently of the other axes involved in the rapid traverse movement.
Relevant part program commands:
RTLIOF activates nonlinear interpolation,
RTLION activates linear interpolation.
Linear interpolation must always be selected in the following cases:
with a G code combination including G0 which does not permit positioning movements (e.g. G40/41/42),
with a combination of G0 and G64,
when the compressor is active,
when a transformation is active.
With nonlinear interpolation, the setting for the relevant positioning axis BRISKA, SOFTA, DRIVEA
applies with regard to axial jerk.
Contents
Page 87 of 286
Go Back
Full Screen
Since a different contour can be traversed in nonlinear interpolation mode, synchronized actions that refer
to coordinates of the original path are not operative in some cases!
Sequence
Traverse path axes as positioning axes with G0
Example:
G0 X0 Y10
G0 G40 X20 Y20
G0 G95 X100 Z100 m3 s100
Path POS[X]=0 POS[Y]=10 is traversed in path mode. No revolutional feedrate is active if path POS[X]=100
POS[Z]=100 is traversed.
Additional notes
SW 6.2 and later
Settable block change time with G0: It is possible to set a new motion end criterion, i.e. FINEA, COARSEA
or IPOENDA, in single axis interpolation mode for block changes within the braking ramp. All axes can reach
their end points independently of one another through a combination of Block change settable in braking ramp
of single axis interpolation and Traverse path axes as positioning axes with G0 rapid traverse. In this way,
two sequentially programmed X and Z axes are treated like positioning axes in conjunction with G0. The block
change to axis Z can be initiated by axis X as a function of the braking ramp time setting (100-0%). Axis Z
starts to move while axis X is still in motion. Both axes approach their end point independently of one another.
Programming example
G0 is used for approaching starting positions or tool change locations, retracting the tool, etc.
Contents
Page 88 of 286
Go Back
Full Screen
Milling:
N10
N20
N30
N40
N50
N60
G90 S400 M3
G0 X30 Y20 Z2
G1 Z-5 F1000
X80 Y65
G0 Z2
G0 X-20 Y100 Z100 M30
Contents
Page 89 of 286
Go Back
Full Screen
Turning:
N10
N20
N30
N40
N50
N60
N70
N80
N90
G90 S400 M3
G0 X25 Z5
G1 G94 Z0 F1000
G95 Z-7.5 F0.2
X60 Z-35
Z-50
G0 X62
G0 X80 Z20
M30
Retract tool
End of program
Contents
Page 90 of 286
Go Back
Full Screen
Linear interpolation, G1
Programming
G1 X . . . Y . . . Z . . . F . . .
G1 AP= . . . RP= . . . F . . .
Explanation of the parameters
XYZ
AP=
RP=
F
Contents
Page 91 of 286
Go Back
Full Screen
Function
With G1, the tool travels along straight lines that are parallel to the
axis, inclined or in any orientation in space. The straight line interpolation enables machining of 3D surfaces,
grooves, etc.
Sequence
The tool travels at feedrate F along a straight line from the current starting point to the programmed
destination point. The workpiece is machined along this path. You can enter the destination point in Cartesian
or polar coordinates.
Example:
G1 G94 X100 Y20 Z30 A40 F100
The end point on X, Y, Z is approached at a feedrate of 100 mm/min; the rotary axis A is traversed as a
synchronized axis in order that all four movements are completed at the same time.
Additional notes
G1 is modal. The spindle speed S and the direction of spindle rotation M3/M4 must be specified for
Contents
Page 92 of 286
Go Back
Full Screen
machining. FGROUP can be used to define groups of axes to which the path feed F applies.
Programming example
Machining of a groove: the tool travels from the starting point to the end point in the X/Y direction. Infeed
takes place simultaneously in the Z direction.
Milling:
N10
N20
N30
N40
N50
G17 S400 M3
G0 X20 Y20 Z2
G1 Z-2 F40
X80 Y80 Z-15
G0 Z100 M30
Contents
Page 93 of 286
Go Back
Full Screen
Turning:
N10
N20
N30
N40
N50
4.5.
G17 S400 M3
G0 X40 Y-6 Z2
G1 Z-3 F40
X12 Y-20
G0 Z100 M30
Programming
G2/G3
G2/G3
G2/G3
G2/G3
Contents
Page 94 of 286
Go Back
Full Screen
G2/G3 AR= . . . X . . . Y . . . Z . . .
CIP X . . . Y . . . Z . . . I1= . . . J1= . . . K1= . . .
CT X . . . Y . . . Z . . .
Explanation of the commands and parameters
G2
G3
CIP
CT
XYZ
IJK
AP=
RP=
CR=
AR=
I1= J1= K1=
Contents
Page 95 of 286
Go Back
Full Screen
Contents
Page 96 of 286
Go Back
Full Screen
Sequence
Contents
Page 97 of 286
Go Back
Full Screen
If the circle is programmed with a center point but no end point, the result is a full circle. Input in absolute
and incremental dimensions. The defaults G90/G91 absolute or incremental coordinates are valid only for the
circle end point. The center point coordinates I, J, K are normally entered in incremental dimensions with
reference to the circle starting point.
Milling:
Contents
Page 98 of 286
Go Back
Full Screen
You program the absolute center point non-modally with reference to the workpiece zero with: I=AC( . . . ),
J=AC( . . . ), K=AC( . . . )
Example for incremental dimensions:
N10
N20
G0 X67.5 Y80.211
G3 X17.203 Y38.029 I17.5 J30.211 F500
G0 X67.5 Y80.211
G3 X17.203 Y38.029 I=AC(50) J=AC(50)
An interpolation parameter I, J, K with value 0 can be omitted but the second associated parameter must
Contents
Page 99 of 286
Go Back
Full Screen
always be specified.
Turning:
Example for incremental dimensions:
N120
N125
N130
N135
G0
G1
G3
G1
X12 Z0
X40 Z-25 F0.2
X70 Z-75 I-3.335 K-29.25
Z-95
G0
G1
G3
G1
Contents
X12 Z0
X40 Z-25 F0.2
X70 Z-75 I=AC(33.33) K=AC(-54.25)
Z-95
Go Back
Full Screen
Milling:
Example:
N10 G0 X67.5 Y80.211
Contents
Go Back
Full Screen
You dont need to specify the center point with this procedure. Full circles (traversing angle 360) cannot be
programmed with CR=, but must be programmed using the circle end point and interpolation parameters.
Turning:
Example:
N125 G1 X40 Z-25 F0.2
N130 G3 X70 Z-75 CR=30
N135 G1 Z-95
Programming a circle with arc angle and center point or end point
The circular movement is described by:
the arc angle AR = and
Contents
Go Back
Full Screen
Milling:
Example:
N10 G0 X67.5 Y80.211
N20 G3 X17.203 Y38.029 AR=140.134 F500
or
N20 G3 I17.5 J30.211 AR=140.134 F500
Contents
Go Back
Full Screen
Example:
N125
N130
or
N130
or
N130
N135
Contents
Go Back
Full Screen
The following rule applies: The pole lies at the circle center point. The polar radius corresponds to the
circle radius.
Milling:
Example:
N10 G0 X67.5 Y80.211
N20 G111 X50 Y50
N30 G3 RP=34.913 AP=200.052 F500
Contents
Go Back
Full Screen
Turning:
Example:
N125
N130
N135
N140
Programming example
The following program lines contain an example for each circular programming possibility. The necessary
dimensions are shown in the opposite production drawing.
Contents
Go Back
Full Screen
Milling:
N10
N20
N30
or
N30
or
N30
or
N30
or
N30
N40
Contents
Go Back
Full Screen
Turning:
N ...
N120
N125
N130
or
N130
or
N130
or
N130
or
N130
or
N130
...
G0 X12 Z0
G1 X40 Z-25 F0.2
G3 X70 Y-75 I-3.335 K-29.25
G3 I=AC(33.33) K=AC(-54.25)
Contents
Go Back
Full Screen
AR=135.944
or
N130
N135
N140
N ...
Polar coordinates
Polar coordinates
Contents
Go Back
Full Screen
Milling:
Example:
Contents
Go Back
Full Screen
Turning:
Example:
N125
N130
or
N130
N135
Contents
Go Back
Full Screen
Contents
Go Back
Full Screen
Contents
Go Back
Full Screen
Milling:
N10
N20
N30
N40
N50
N60
N70
G0 X0 Y0 Z0 G90 T1 D1
G41 X30 Y30 G1 F1000
CT X50 Y15
X60 Y-5
G1 X70
G0 G40 X80 Y0 Z20
M30
Contents
Go Back
Full Screen
Turning:
N110
N115
N120
N125
4.6.
G1 X23.293 Z0 F10
X40 Z-30 F0.2
CT X58.146 Z-42
G1 X70
Programming
G2/G3
G2/G3
G2/G3
G2/G3
G2/G3
Contents
X Y Z I J K TURN=
X Y Z I J K TURN=
AR= I J K TURN=
AR= X Y Z TURN=
AP RP= TURN=
Go Back
Full Screen
Function
Helical interpolation (Helical interpolation) can be used to manufacture threads and oil grooves, for example.
Sequence
Contents
Go Back
Full Screen
Contents
Go Back
Full Screen
N10
N20
N30
N40
Contents
Go Back
5.
Full Screen
FRAMES
5.1.
General
What is a frame? Frame is the conventional term for a geometrical expression that describes an arithmetic
rule, such as translation or rotation. Frames are used to describe the position of a destination coordinate system
by specifying coordinates or angles starting from the current workpiece coordinate system.
Possible frames:
basic frame (basic offset),
settable frames (G54...G599),
programmable frames.
Machine manufacturer (MH6.1)
Settable frames: See machine manufacturers specifications
Contents
Go Back
Full Screen
Frame components
Milling:
Turning:
A frame can consist of the following arithmetic rules:
Translation, TRANS, ATRANS,
Rotation, ROT, AROT,
Scale, SCALE, ASCALE,
Mirroring, MIRROR, AMIRROR.
The above frame instructions are programmed in separate NC blocks and executed in the programmed order.
5.2.
Frame instructions
Contents
Go Back
Full Screen
Basic Zero System (BZS) and has the same effect as for settable frames.
Settable instructions
Settable instructions are the zero offsets which can be called from any NC program with the commands G54
to G599. The offset values are predefined by the user and stored in the zero offset memory on the control. This
is used to define the Workpiece Coordinate System (WCS).
Programmable instructions
Programmable instructions (TRANS, ROT, ...) are valid in the current NC program and refer to the settable
instructions. The programmable frame is used to define the Workpiece Coordinate System (WCS).
Substituting instructions
Contents
Go Back
Full Screen
Additive instructions
ATRANS, AROT, ASCALE and AMIRROR are additive instructions. The currently set zero point or the
last workpiece zero to be programmed with frame instructions is used as the reference. The above instructions
are added to existing frames.
Note:
Additive instructions are frequently used in subprograms. The basic functions defined in the main program
are not lost after the end of the subprogram if the subprogram has been programmed with the SAVE attribute.
5.3.
5.3.1.
Programming
TRANS X . . . Y . . . Z . . . (programmed in a separate NC block)
Contents
Go Back
Full Screen
Absolute zero offset, with reference to the currently valid workpiece zero set with G54
to G599
as TRANS, but with additive zero offset
Offset value in the direction of the specified geometry axis
Function
Milling:
Turning:
TRANS/ATRANS can be used to program translations for all path and positioning axes in the direction of
the specified axis. This allows you to work with different zero points, for example when performing recurring
machining processes at different workpiece positions.
Contents
Go Back
Full Screen
Sequence
Substituting instruction, TRANS X Y Z
Translation through the offset values programmed in the specified axis directions (path, synchronized axes
and positioning axes). The last specified settable zero offset (G54 to G599) is used as a reference.
Contents
Go Back
Full Screen
The TRANS command cancels all frame components of the previously activated programmable frame.
You can use ATRANS to program a translation which is to be added to existing frames.
Additive instruction, ATRANS X Y Z
Translation through the offset values programmed in the specified axis directions. The currently set or last
programmed zero point is used as the reference. Deactivate programmable zero offset For all axes: TRANS
(without axis parameter)
Programming example
With this workpiece, the illustrated shapes recur several times in the same program. The machining sequence
for this shape is stored in a subprogram. You use the translation to set only those workpiece zeroes and then
call up the subprogram.
Contents
Go Back
Full Screen
Milling:
N10
N20
N30
N40
N50
N60
N70
G1 G54
G0 X0 Y0 Z2
TRANS X10 Y10
L10
TRANS X50 Y10
L10
M30
Contents
Go Back
Full Screen
Turning:
N ...
N10
N15
N20
N25
N30
N35
N ...
5.3.2.
...
TRANS X0 Z150
L20
TRANS X0 Z140 (or ATRANS Z-10)
L20
TRANS X0 Z130 (or ATRANS Z-10)
L20
...
Absolute offset
Subprogram call
Absolute offset
Subprogram call
Absolute offset
Subprogram call
Programming
G58 X . . . Y . . . Z . . . A . . . (programmed in a separate NC block)
G59 X . . . Y . . . Z . . . A . . . (programmed in a separate NC block)
Contents
Go Back
Full Screen
Replaces the absolute translation component of the programmable zero offset for the
specified axis, but the programmed additive offset remains valid, (in relation to the
workpiece zero set with G54 to G599)
Replaces the absolute translation component of the programmable zero offset for the
specified axis, but the programmed absolute offset remains valid
Offset value in the direction of the specified geometry axis
G59
XYZ
Function
G58 and G59 allow translation components of the programmable zero offset (frame) to be replaced for
specific axes.
The translation function comprises the:
absolute component (G58, coarse offset),
additive component (G59, fine offset).
Contents
Go Back
Full Screen
These functions can only be used when the fine offset is configured. If G58 or G59 is used without a
configured fine offset, alarm 18312 channel %1 block %2 frame: Fine offset not configured is output.
Machine manufacturer (MH6.2)
The fine offset must be configured via MD for this function.
Note
MD24000:FRAME ADD COMPONENTS=1, or else an alarm is generated in response to G58, G59.
The absolute translation component is modified by the following commands:
TRANS,
G58,
CTRANS,
CFINE,
$P PFRAME[X,TR].
The additive translation component is modified by the following commands:
ATRANS,
G59,
CTRANS,
CFINE,
$P PFRAME[X,FI].
The table below describes the effect of various program commands on the absolute and additive offsets.
Effect of the additive/absolute offset:
Contents
Go Back
Full Screen
TRANS X10
G58 X10
$P PFRAME[X,TR] = 10
ATRANS X10
G59 X10
$P PFRAME[X,FI] = 10
CTRANS(X,10)
CTRANS()
Fine or additive
offset
Unchanged
Unchanged
Unchanged
Fine (old) + 10
10
10
0
0
CFINE(X,10)
10
Comment
Absolute offset for X
Overwrites absolute offset for X
Progr. offset in X
Additive offset for X
Overwrites additive offset for X
Progr. fine offset in X
offset for X
Deselection of offset(including fine offset component)
Fine offset in X
Programming example
N ...
N50 TRANS X10 Y10 Z10
N60 ATRANS X5 Y5
N70 G58 X20
N80 G59 X10 Y10
N ...
5.4.
Programming
Contents
Go Back
Full Screen
ROT X . . . Y . . . Z . . .
ROT RPL= . . .
AROTX . . . Y . . . Z . . .
AROT RPL= . . .
Absolute rotation with reference to the currently valid workpiece zero set with G54
to G599
Additive rotation with reference to the currently valid set or programmed zero point
Rotation in space: geometry axes around which the rotation takes place
Rotation in the plane: Angle through which the coordinate system is rotated (plane
set with G17-G19)
AROT
XYZ
RPL
Contents
Go Back
Full Screen
Function
ROT/AROT can be used to rotate the workpiece coordinate system around each of the geometry axes X,
Y, Z or through an angle RPL in the selected working plane G17 to G19 (or around the perpendicular infeed
axis). This allows inclined surfaces or several workpiece sides to be machined in one setting.
Contents
Go Back
Full Screen
The coordinate system is rotated through the programmed angle around the specified axes. The center of
rotation is the last specified settable zero offset (G54 to G599).
Contents
Go Back
Full Screen
The ROT command cancels all frame components of the previously activated programmable frame.
A new rotation based on existing frames is programmed with AROT.
Additive instruction, AROT X Y Z
Rotation through the angle values programmed in the axis direction parameters. The center of rotation is
the currently set or last programmed zero point.
Note
For both instructions, please note the order and direction of rotation in which the rotations are performed.
Contents
Go Back
Full Screen
Direction of rotation
The following is defined as the positive direction of rotation: The view in the direction of the positive
coordinate axis and clockwise rotation.
Contents
Go Back
Full Screen
Order of rotation
You can rotate up to three geometry axes simultaneously in one NC block. The order of the RPY notation
(= Roll, Pitch, Yaw) or Euler angle through which the rotations are performed can be defined in machine
parameters.
RPY notation is the default setting. This defines the order of rotation as follows:
1. Rotation around the 3rd geometry axis (Z)
2. Rotation around the 2nd geometry axis (Y)
3. Rotation around the 1st geometry axis (X)
This order applies if the geometry axes are programmed in a single block. It also applies irrespective of the
input sequence. If only two axes are to be rotated, the parameter for the 3rd axis (value zero) can be omitted.
Value range
Rotation around 1st geometry axis: 180 to +180
Contents
Go Back
Full Screen
The working plane defined with G17, G18 or G19 rotates with the spatial rotation.
Example:
Working plane G17 X/Y, the workpiece coordinate system is positioned on the top surface of the workpiece.
Translation and rotation is used to move the coordinate system to one of the side surfaces. Working plane G17
also rotates. This feature can be used to program plane destination positions in X/Y coordinates and the infeed
in the Z direction.
Contents
Go Back
Full Screen
Precondition:
The tool must be positioned perpendicular to the working plane. The positive direction of the infeed axis
points in the direction of the toolholder. Specifying CUT2DF activates the tool radius compensation in the
rotated plane. For more information please refer to Section 2 1/2 D Tool Compensation, CUT2D CUT2DF.
Sequence: Rotation in the plane
The coordinate system is rotated in the plane selected with G17 to G19. Substituting instruction, ROT
RPL Additive instruction, AROT RPL The coordinate system is rotated through the angle programmed with
RPL= in the current plane.
Change of plane
If you program a change of plane (G17 to G19) after a rotation, the angles of rotation programmed for the
axes are retained and continue to apply in the new working plane. It is therefore advisable to deactivate the
rotation before a change of plane. Deactivate rotation For all axes: ROT (without axis parameter)
Contents
Go Back
Full Screen
In both cases, all frame components of the previously programmed frame are reset.
Programming example: Rotation in the plane
With this workpiece, the illustrated shapes recur several times in the same program. Rotations have to be
performed in addition to the translation, because the shapes are not arranged parallel to the axes.
N10
N20
N30
N40
N50
N60
N70
N80
N90
N100
G17 G54
TRANS X20 Y10
L10
TRANS X55 Y35
AROT RPL=45
L10
TRANS X20 Y40
AROT RPL=60
L10
G0 X100 Y100
Contents
Go Back
Full Screen
M30
End of program
N10
N20
N30
N40
N50
N60
N70
N80
G17 G54
TRANS X10 Y10
L10
ATRANS X35
AROT Y30
ATRANS X5
L10
G0 X300 Y100 M30
Contents
Go Back
Full Screen
In this example, identical shapes on two perpendicular workpiece surfaces are machined by using subprograms. The set-up of the infeed direction, working plane and zero point in the new coordinate system on the
righthand workpiece surface matches that of the top surface. The conditions required for subprogram execution
apply as before: working plane G17, coordinate plane X/Y, infeed direction Z.
N10
N20
N30
N40
N50
N60
N70
G17 G54
L10
TRANS X100 Z-100
AROT Y90
AROT Z90
L10
G0 X300 Y100 M30
Contents
Go Back
Full Screen
Programmable frame rotations with solid angles, ROTS, AROTS and CROTS
Programming
ROTS X . . . Y . . .
AROTS X . . . Y . . .
CROTS X . . . Y . . .
When solid angles X and Y are programmed, the new X axis is located in the old Z-X plane (SW 5.3 and
later). When solid angles Z and X are programmed, the new Z axis is located in the old Y-Z plane (SW 5.3
and later). When solid angles Y and Z are programmed, the new X axis is located in the old X-Y plane (SW
5.3 and later).
Explanation of the commands and parameters
ROTS
Frame rotations with solid angles for spatial orientation of a plane absolute, referred
to the currently valid frame with set workpiece zero for G54 to G599.
Frame rotations with solid angles for spatial orientation of a plane additive, referred
to the currently valid frame with set or programmed zero point.
Frame rotations with solid angles for spatial orientation of a plane, referred to the
valid frame in the data management with rotation in the specified axes.
A maximum of two solid angles may be specified
Rotation in the plane: Angle through which the coordinate system is rotated (plane
set with G17-G19)
AROTS
CROTS
XYZ
RPL
Function
Spatial orientations can be defined via frame rotations with solid angles ROTS, AROTS, CROTS. Programming commands ROTS and AROTS behave analogously to ROT and AROT.
Contents
Go Back
Full Screen
Programming
SCALE X . . . Y . . . Z . . . (programmed in a separate NC block)
ASCALE X . . . Y . . . Z . . . (programmed in a separate NC block)
Explanation of the commands and parameters
SCALE
ASCALE
XYZ
Absolute enlargement/reduction with reference to the currently valid coordinate system set with G54 to G599
Additive enlargement/reduction with reference to the currently valid set or programmed coordinate system
Scale factor in the direction of the specified geometry axis
Function
SCALE/ASCALE enables you to program scaling factors in the direction of the axis specified for all path,
synchronous and positioning axes. This enables the size of a shape to be changed. You can thus program similar
geometrical shapes in different sizes.
Contents
Go Back
Full Screen
Sequence
Contents
Go Back
Full Screen
The SCALE command cancels all frame components of the previously activated programmable frame.
Additive instruction, ASCALE X Y Z
You can program scale changes which are to be added to existing frames by using the ASCALE command.
In this case, the last valid scale factor is multiplied by the new one. The currently set or last programmed
coordinate system is used as the reference for the scale change.
Deactivate scaling factor For all axes
SCALE (without axis parameter). All frame components of the previously programmed frame are reset.
Contents
Go Back
Full Screen
Additional notes
If you program an offset with ATRANS after SCALE, the offset values are also scaled.
Please take great care when using different scale factors! Example: Circular interpolations can only be scaled
using identical factors.
You can, however, use different scale factors to program distorted circles, for example.
Contents
Go Back
Full Screen
Programming example
With this workpiece, the two pockets occur twice, but in different sizes and at different angles to each other.
The machining sequence is stored in a subprogram. Use translation and rotation to set each of the workpiece
zeroes, reduce the contour with a scale and then call the subprogram up again.
N10
N20
N30
N40
N50
N60
N70
N80
G17 G54
TRANS X15 Y15
L10
TRANS X40 Y20
AROT RPL=35
ASCALE X0.7 Y0.7
L10
G0 X300 Y100 M30
Contents
Go Back
Full Screen
Programming
MIRROR X0 Y0 Z0 (programmed in a separate NC block)
AMIRROR X0 Y0 Z0 (programmed in a separate NC block)
Explanation of the commands and parameters
MIRROR
AMIRROR
XYZ
Absolute mirror image with reference to the currently valid coordinate system set
with G54 to G599
Additive mirror image with reference to the currently valid set or programmed coordinate system
Geometry axis whose direction is to be changed. The value specified here can be
chosen freely, e.g. X0 Y0 Z0
Function
MIRROR/AMIRROR can be used to mirror workpiece shapes on coordinate axes. All traversing movements
which are programmed after the mirror call, e.g. in the subprogram, are executed in the mirror image.
Contents
Go Back
Full Screen
Sequence
Contents
Go Back
Full Screen
A mirror image which is to be added to an existing transformation is programmed with AMIRROR. The
currently set or last programmed coordinate system is used as the reference.
Deactivate mirroring
For all axes: MIRROR (without axis parameter) All frame components of the previously programmed frame
are reset.
Contents
Go Back
Full Screen
Additional notes
The mirror command causes the control to automatically change the path compensation commands
(G41/G42 or G42/G41) according to the new machining direction.
The same applies to the direction of circle rotation (G2/G3 or G3/G2).
If you program an additive rotation with AROT after MIRROR, you may have to work with reversed directions of rotation (positive/negative or negative/positive). Mirrors on the geometry axes are converted automatically by the control into rotations and, where appropriate, mirrors on the mirror axis specified in the machine
data. This also applies to settable zero offsets.
Machine manufacturer (MH 6.3)
SW 5 and higher
You can set the axis around which mirroring is performed via MD. MD10610 = 0: Mirroring is performed
in relation to the programmed axis (negation of values). MD10610 = 1 or 2 or 3: Depending on the data
setting, mirroring is performed in relation to a specific reference axis (1=X axis; 2=Y axis; 3=Z axis) and
rotations of two other geometry axes.
Contents
Go Back
Full Screen
MD10612 MIRROR TOGGLE = 0 can be used to define that the programmed values are always evaluated.
With a value of 0, as with MIRROR X0, the axis mirroring is deactivated and, with values not equal to
0, the axis is mirrored if it is not yet mirrored.
Programming example
Program the contour shown here once as a subprogram and generate the three other contours with a mirror
operation. The workpiece zero is located at the center of the contours.
Milling:
N10
N20
N30
N40
N50
N60
N70
G17 G54
L10
MIRROR X0
L10
AMIRROR Y0
L10
MIRROR Y0
Contents
Go Back
Full Screen
L10
MIRROR
G0 X300 Y100 M30
TRANS X0 Z140
...
TRANS X0 Z600
AMIRROR Z0
ATRANS Z120
...
Zero offset to W
Machine first side with spindle 1
Zero offset to spindle 2
Mirroring of the Z axis
Zero offset to W1
Machine second side with spindle 2
Turning:
N10
N ...
N30
N40
N50
N ...
Contents
Go Back
6.
6.1.
Full Screen
TOOL OFFSETS
General information
When writing a program, it is not necessary to specify the cutter diameter, the tool point direction of the
turning tool (left/right-handed turning tools) or tool length. You simply program the workpiece dimensions
according to the dimensions in the production drawing. When machining a workpiece, the tool paths are
controlled according to the tool geometry such that the programmed contour can be machined using any tool.
Contents
Go Back
Full Screen
You enter the tool data separately in the tool table on the control. All you need to do is call the required
tool with its offset data in the program. During program execution, the control fetches the offset data from the
tool files and corrects the tool path individually for different tools.
Contents
Go Back
Full Screen
Contents
Go Back
Full Screen
Tool parameters
The following section .List of tool types. describes the individual tool parameters in the display. The relevant
tool parameters must be entered in the input fields with DP . . . . Any unneeded tool parameters must be set
to zero.
Caution: Values that have been entered once in the compensation memory are included in the processing for
each tool numbered.
Tool length compensation
This value compensates for the differences in length between the tools used. The tool length is the distance
between the toolholder reference point and the tip of the tool. This length is measured and entered in the
control together with definable wear values. From this data, the control calculates the traversing movements in
the infeed direction.
Additional notes
The compensation value of the tool length depends on the spatial orientation of the tool. See the section on
Contents
Go Back
Full Screen
The contour and tool path are not identical. The cutter or tool nose radius center must travel on a path
that is equidistant from the contour. To do this, the programmed tool center point path is displaced by an
amount that depends on the radius and the direction of machining and such that the tool nose travels exactly
along the desired contour. The control fetches the required radii during program execution and calculates the
tool path from these values.
6.2.
Contents
Go Back
Full Screen
6.3.
6.3.1.
Roughing tool
Finishing tool
Grooving tool
Parting tool
Threading tool
Programming
Tx or
T=x or
Contents
Go Back
Full Screen
Ty=X
T0
M06
Comment:
Tool change command can be modified according to customer claim, for example: H1 T1 D1.
H1 . . . position of the tool turret
T1 . . . tool number
D1 . . . edge number
This is an example for SPN 12 CNC/Sinumerik 810D at the BUT, FME.
Function
Tool selection takes place when the T word is programmed.
Tool selection without TOOLMAN
Free selection of D No. (flat D No.) relative to cutting edges
Contents
Go Back
Full Screen
...
[8-digit]
1D
2D
3D
...
D32000
Tabular D No.: D1 . . . D8
Contents
Go Back
Full Screen
Explanation
SW 4 and higher
The free selection of the D No. flat D number structure is applied when tool management is implemented
outside the NCK. In this case, the D numbers are created with the corresponding tool compensation blocks
without assignment to tools. T can continue to be programmed in the part program. However, this T has no
reference to the programmed D number.
Example:
Circular magazine with 12 locations and 12 singleedge tools.
Machine manufacturer (MH 8.5)
T can or cannot be programmed in the part program, depending on the setting in MD 18102.
Contents
Go Back
Full Screen
Sequence
Creating a new D number
Creating a new D number with the associated tool compensation blocks is performed exactly as for the
normal D number via tool parameters $TC DP1 to $TC DP25. The T number need not be entered any more.
Machine manufacturer (MH 8.6)
The type of D number management is defined in the machine data. There are two settings available for
programming D numbers in the flat D number structure:
flat D number structure with direct programming,
flat D number structure with indirect programming (SW5 and higher).
6.3.2.
Programming
Tx or T=x
or Ty=X
T0
Explanation of the parameters
Tx or T=x or Ty=x
x
T0
Tool selection with T No. including tool change (active tool), tool offset is active
x stands for T No.: 0-32000
Tool deselection
Number of tools: 600, as of SW 5: 1200
(depending on the machine manufacturers configuration)
Contents
Go Back
Full Screen
Function
A direct tool change takes place when the T word is programmed.
Tool selection without TOOLMAN
Free selection of D No. (flat D No.) relative to cutting edges
Tabulare D No.: D1 . . . D8
Tool selection with tool management
Free selection of D No. (flat D No.) relative to cutting edges
Fixed assignment of D No. to the cutting edges
Machine manufacturer (MH 8.1)
The effect of the T number call is defined in machine data. See machine manufacturers configuration.
6.4.
Tool offset D
Programming
D ...
D0
Explanation of the parameters
Dx
Contents
18 or
112
Go Back
Full Screen
Function
It is possible to assign between 1 and 8 (12) tool noses with different tool compensation blocks to a specific
tool. This allows you to define various cutting edges for one tool, which you can call as required in the NC
program. Different offset values could be used, for example, for the left and right cutting edge of a grooving tool.
When D is called, the tool length compensation for a specific tool nose is activated. When D0 is programmed,
offsets for the tool are ineffective. If no D word is programmed, the default setting from the machine data is
valid for tool change. Tool length compensations take immediate effect if the D number is programmed. A tool
radius offset must also be activated by G41/G42.
Machine manufacturer (MH 8.10)
Default setting by machine manufacturer, e.g.: D1, i.e. without D programming, D1 is activated/selected
when the tool is changed (M06). The tools are activated with T programming (see machine manufacturers
specifications). The compensation is performed with the first programmed traversing of the respective tool
Contents
Go Back
Full Screen
T1 D1
G0 X . . . Z . . .
T4 D2
G0 Z . . . D1
Contents
Go Back
Full Screen
Example:
Contents
Go Back
Full Screen
3. It is followed by the tool change procedure: On completion of tool search strategy Take the first available
tool from group, T10 is loaded because T15 is disabled.
4. On completion of tool search strategy Take the first tool with status active from group, T1 is loaded.
6.5.1.
Programming
The following procedure usually applies:
T = slot or T = identifier
T triggers the tool change
D . . . Tool offset number: 1 . . . 32000 (max., see machine manufacturers specifications) D0: no offset active!
Sequence
The following procedure usually applies:
T = slot,
T triggers the tool change
D = offsets 1 to n (n = 32000)
If the relative D No. structure with internal reference to the associated tools is used, replacement tool
management and monitoring function are possible.
Note:
When calling the tool, the:
tool offset values stored under a D number must be activated,
the appropriate working plane (system setting: G18) must be programmed. This ensures that the length
compensation is assigned to the correct axis.
If the selected magazine location is not occupied in a selected magazine location, the tool command has
the same effect as T0. Selection of the unoccupied magazine location can be used for positioning the empty
location.
Contents
Go Back
Full Screen
Sequence
The following procedure usually applies:
T = Ident or T = No. or T=Duplo no.,
M06 triggers the tool change
D = offset 1 to nth edge no.
(n = 8, SW 5:12 and later)
Selection:
with integrated tool management (inside NC) relative D no. structure with internal reference to the
associated tools (e.g. replacement tool management and monitoring function possible),
without integrated tool management (outside NC) flat D no. structure without internal reference to
associated tools.
.
Machine manufacturer (MH 8.3)
Tool management: See machine manufacturers configuration.
Tool magazine
The T number preselects the tool, e.g. positioning the magazine to the tool change position. The actual
tool change is triggered by M6. The M number for the tool change is set via the machine data. (See also the
section on miscellaneous functions M). Only then do the new tool offsets apply.
Note:
When calling the tool, the:
Contents
Go Back
Full Screen
6.6.
Programming
The following procedure usually applies:
T = slot or T = identifier or T=Duplo no.,
T triggers the tool change
D . . . Tool offset number: 1 . . . 32000 (max., see machine manufacturers specifications)
D0: no offset active!
Direct, absolute programming
Programming is performed with the D number structure. The compensation blocks to be used are called
directly via their D number. Assignment of the D number to a specific tool does not take place in the NC
kernel.
Machine manufacturer (MH 8.7)
Direct programming is defined by MD.
Contents
Go Back
Full Screen
Programming example
$MC TOOL CHANGE MODE=0
...
D92
...
T17
...
D16
...
D32000
...
T29000500
...
1D
6.7.
Function
MD $MM ACTIVATE SEL USER DATA can be used to define that the active tool offset can be activated
immediately if the part program is in stop mode.
Danger
The offset is backed out the next time the part program is started.
6.8.
Programming
G40
Contents
Go Back
Full Screen
G41
G42
OFFN=
Function
When tool radius compensation is active, the control automatically calculates the equidistant tool paths for
Contents
Go Back
Full Screen
different tools. You can generate equidistant paths with OFFN, e.g. for rough-finishing.
Sequence
The control requires the following information in order to calculate the tool paths:
1. Tool number T/edge number D
Where appropriate, a tool offset number D is also required. The distance between the tool path and the
workpiece contour is calculated from the cutter and tool edge radii and the tool point direction parameters.
With flat D number structure it is only necessary to program the D number.
2. Direction of machining G41, G42
From this information, the control detects the direction in which the tool path is to be displaced.
3. Working plane G17 toG19
From this information, the control detects the plane and therefore the axis directions for compensation.
Contents
Go Back
Full Screen
Milling:
The tool radius compensation is performed in the X/Y plane, the tool length compensation is performed in
the Z direction.
Note:
On 2-axis machines, the tool radius compensation is only possible in real planes, in general with G18 (see
tool length compensation table).
Contents
Go Back
Full Screen
Turning:
The wear parameter assigned to the diameter axis on tool selection can be defined as the diameter value
(MD). This assignment is not automatically altered when the plane is subsequently changed. To do this, the
tool must be selected again after the plane has been changed.
Activation/deactivation of tool radius compensation
A travel command must be programmed with G0 or G1 in an NC block with G40, G41 or G42. This travel
command must specify at least one axis in the selected working plane.
If you only specify one axis on activation, the last position on the second axis is added automatically and
traversed with both axes.
Contents
Go Back
Full Screen
Example:
Milling:
N10 G0 X50 T1 D1
N20 G1 G41 Y50 F200
N30 Y100
Only tool length compensation is activated in block N10. X50 is approached without compensation. In
block N20, the radius compensation is activated, point X50/Y50 is approached with compensation.
Contents
Go Back
Full Screen
Example:
Turning:
N20
N30
N40
N50
T1 D1
G0 X100 Z20
G42 X20 Z1
G1 Z-20 F0.2
Only tool length compensation is activated in block N20. X100 Z20 is approached without compensation in
block N30. In block N40, the radius compensation is activated, point X20/Z1 is approached with compensation.
Contents
Go Back
Full Screen
Changing
Contents
Go Back
Full Screen
Milling:
N10 G0 Z100
N20 G17 T1 M6
N30 G0 X0 Y0 Z1 M3 S300 D1
Contents
Go Back
Full Screen
Tool infeed
Approach tool radius compensation, tool operates on
left-hand side of contour
Mill contour
Turning:
% N 1001 MPF
N5 G0 G53 X280 Z380 D0
N10 TRANS X0 Z250
N15 LIMS=4000
N20 G96 S250 M3
N25 G90 T1 D1 M8
Contents
;Program name
;Start point
;Zero offset
;Speed limitation (G96)
;Select constant feed
;Select tool and offset
Go Back
G0 G42 X-1.5 Z1
G1 X0 Z0 F0.25
G3 X16 Z-4 I0 K-10
G1 Z-12
G2 X22 Z-15 CR=3
G1 X24
G3 X30 Z-18 I0 K-3
G1 Z-20
X35 Z-40
Z-57
G2 X41 Z-60 CR=3
G1 X46
X52 Z-63
G0 G40 G97 X100 Z50 M9
N100
N105
N110
N115
N120
N125
N130
N135
T2 D2
G96 S210 M3
G0 G42 X50 Z-60 M8
G1 Z-70 F0.12
G2 X50 Z-80 I6.245 K-5
G0 G40 X100 Z50 M9
G0 G53 X280 Z380 D0 M5
M30
Contents
Full Screen
;Activate tool with tool radius compensation
;Rotate radius 10
;Rotate radius 3
;Rotate radius 3
;Rotate radius 3
Go Back
7.
Full Screen
MISCELLANEOUS FUNCTION
7.1.
7.1.1.
Programming
M... Possible values 0 to 9999 9999, integers (Max. INT value in SW 5 and higher)
Function
M functions initiate, for example, switching operations such as Coolant ON/OFF and other operations
on the machine. Permanent functions have already been assigned to some of the M functions by the control
manufacturer (see following list).
List of predefined M functions
M0*
M1*
M2*
M30*
M17*
M3
M4
M5
M6
M70
M40
M41
M42
M43
M44
Programmed stop
Optional stop
End of main program with return to beginning of program
End of program, same effect as M2
End of subprogram
Spindle clockwise
Spindle counterclockwise
Spindle stop
Tool change (default setting)
Spindle is switched to axis mode
Automatic gear change
Gear step 1
Gear step 2
Gear step 3
Gear step 4
Contents
Go Back
Full Screen
Gear step 5
Extended address notation cannot be used for the functions marked with *.
Machine manufacturer (MH9.2)
All free M function numbers can be assigned by the machine manufacturer, e.g. with switching functions
for controlling clamping fixtures or for activating/ deactivating other machine functions, etc.
Machine manufacturer (MH9.3)
See machine manufacturers specifications.
The commands M0, M1, M2, M17 and M30 are always initiated after the traversing movement.
Predefined M commands
Certain important M functions for program execution are supplied as standard with the control.
Programmed stop, M0
Machining stops in the NC block with M0. You can now, for example, remove swarf, remeasure, etc.
Optional stop, M1
M1 can be set with:
MMC/dialog Program Control,
or the VDI interface.
End of program, M2, M17, M30
A program is terminated with M2, M17 or M30 and reset to the beginning of the program. If the main
program is called from another program (as a subroutine), M2/M30 has the same effect as M17 and vice versa,
i.e. M17 has the same effect in the main program as M2/M30.
Contents
Go Back
Full Screen
The extended address notation with spindle number is used for all spindle functions.
Example:
M2=3 means CW spindle rotation for the second spindle. If no address extension is programmed, the
function applies to the master spindle.
Programming example
N10
N20
S...
X... M3
N180
Contents
Go Back
8.
Full Screen
TURNING CYCLES
8.1.
General information
The following sections describe how turning cycles are programmed. This section is intended to guide you in
selecting cycles and assigning them with parameters. In addition to a detailed description of the function of
the individual cycles and the corresponding parameters, you will also find a programming example at the end
of each section to familiarize you with the use of cycles.
The sections are structured as follows:
programming,
parameters,
function,
sequence of operations,
explanation of parameters,
additional notes,
programming example.
Programming and Parameters explain the use of cycles sufficiently for the experienced user, whereas
beginners can find all the information they need for programming cycles under Function, Sequence of operations, Explanation of parameters, Additional notes and the Programming example.
8.2.
Preconditions
Contents
Go Back
Full Screen
The machining plane must be defined before the cycle is called. In the case of turning, this is usually the
G18 (ZX) plane. The two axes of the turning plane are referred to below as the longitudinal axis (first axis of
this plane) and the plane axis (second axis of this plane). If diameter programming is active, the second axis of
the plane is always taken as facing axis (see Programming Guide).
Spindle handling
The turning cycles are written in such a way that the spindle commands always refer to the active master
spindle of the control. If you want to use a cycle on a machine with several spindles, the active spindle must
first be defined as the master spindle (see Programming Guide).
Contents
Go Back
Full Screen
Contents
Go Back
Full Screen
ZSD[6]=1 The tool offsets are not exchanged in the cycle with active mirroring (for use with orientatable
toolholder)
Contour monitoring with respect to tool clearance angle
Some turning cycles in which travel movements with relief cutting are generated monitor the tool clearance
angle of the active tool for possible contour violation. This angle is entered as a value in the tool offset (under
parameter P24 in the D offset). An angle between 0 and 90 degrees is entered without a sign. When entering
the tool clearance angle, remember that this depends on whether machining is longitudinal or facing. If a tool
is to be used for longitudinal and face machining, two tool offsets must be applied if the tool clearance angles
are different. A check is made in the cycle to determine whether the programmed contour can be machined
with the selected tool.
If machining is not possible with this tool, then:
the cycle is terminated with an error message (while cutting) or
contour machining continues and a message is output (in undercut cycles). The tool nose geometry then
determines the contour.
Contents
Go Back
Full Screen
Note that active scale factors or rotations in the current plane modify the relationships at the angles, and
that this cannot be allowed for in the contour monitoring that takes place within the cycle. If the tool clearance
angle is specified as zero in the tool offset, this monitoring function is deactivated. The precise reactions are
described in the various cycles.
Turning cycles with active adapter transformation
From NCK SW 6.2 onwards, turning cycles can also be executed with an active adapter transformation.
The transformed tool offset data for the tool point direction and clearance angle are always read.
8.3.
Programming
CYCLE93 (SPD, SPL, WIDG, DIAG, STA1, ANG1, ANG2, RCO1, RCO2, RCI1, RCI2, FAL1, FAL2,
IDEP, DTB, VARI, VRT)
Parameters
SPD
real
SPL
WIDG
DIAG
STA1
real
real
real
real
ANG1
real
ANG2
real
RCO1
real
Contents
Go Back
Full Screen
RCO2
RCI1
real
real
RCI2
FAL1
real
real
FAL2
IDEP
DTB
VARI
real
real
real
int
real
Radius/chamfer 2, outside
Radius/chamfer 1, inside: on the starting
point side
Radius/chamfer 2, inside
Final machining allowance on the base of the
groove
Final machining allowance on the flanks
Infeed depth (enter without sign)
Dwell time at base of groove
Type of machining Value range 1 . . . 8 and 11
...8
Variable retraction distance from contour, incremental (enter without sign)
Function
Contents
Go Back
Full Screen
With the grooving cycle you can make symmetrical and asymmetrical grooves for longitudinal and traverse
machining on straight contour elements. You can machine both external and internal grooves.
Sequence of operations
The depth infeed (towards the base of the groove) and infeed across the width (from groove to groove) are
distributed evenly and with the greatest possible value. If the groove is being machined on an inclined surface,
travel from one groove to the next follows the shortest path, i.e. parallel to the cone on which the groove is
being machined. The safety distance to the contour is calculated in the cycle.
1st step
Paraxial roughing to the base of the groove in single infeed steps. After each infeed, the tool is retracted for
chip breaking.
Contents
Go Back
Full Screen
2nd step
The groove is machined perpendicular to the infeed direction in one or more cuts. Each cut is again divided
up according to the infeed depth. From the second cut along the groove width the tool is withdrawn by 1 mm
before it is fully retracted.
Contents
Go Back
Full Screen
3rd step
Cutting of the flanks in one step, if angles are programmed under ANG1 or ANG2. The infeed along the
groove width is performed in several steps if the flank width is larger.
Contents
Go Back
Full Screen
4th step
Cutting of final machining allowance parallel to the contour from the edge to the center of the groove. The
tool radius compensation is automatically selected and deselected by the cycle.
Contents
Go Back
Full Screen
Description of parameters
SPD and SPL (starting point)
You define the starting point of the groove from where the cycle calculates the shape with these coordinates.
The cycle itself determines the starting point to be approached at the beginning. In the case of an external
groove, the longitudinal axis direction is first traversed and in the case of an internal groove, the facing axis
direction is first traversed. Grooves on curved surfaces can be created in a variety of ways. Depending on the
shape and radius of the curve, either a paraxial straight line can be placed on the maximum of the curve or a
tangential oblique line can be placed on one of the edge points of the groove. Radii and chamfers on the groove
edge of a curved surface should only be programmed if the edge point in question is positioned on the straight
line defined for the cycle.
Contents
Go Back
Full Screen
The shape of the groove is defined with the parameters groove width (WIDG) and groove depth (DIAG).
The cycle always starts its calculation from the point programmed with SPD and SPL. If the groove is wider
than the active tool, the groove is machined in several steps. The total width is divided into equal sections
in the cycle. The maximum infeed is 95 percent of the tool width after subtracting the tool nose radii. This
ensures a cut overlap.
If the programmed groove width is less than the actual tool width, the error message 61602 Tool width
incorrectly defined is output, the cycle is not started and machining is aborted. The alarm is also output if
the value zero has been entered for the tool nose width.
Contents
Go Back
Full Screen
STA1 (angle)
The angle of the oblique surface on which the groove is to be machined is programmed with parameter
STA1. The angle can have any value between 0 and 180 degrees and always refers to the longitudinal axis.
Contents
Go Back
Full Screen
Asymmetrical grooves can be described by separate flank angles. The angles can be assigned any value
between 0 and 89.999 degrees.
RCO1, RCO2 and RCI1, RCI2 (radius/chamfer)
The shape of the groove can be modified by entering radii/chamfers for the edge or base of the groove. The
values for the radii must always be positive, the values for the chamfers must always be negative. You can use
the tens setting for the VARI parameter to determine the type of calculation for programmed milling.
With VARI <10 (tens=0) the absolute value of this parameter is regarded as chamfer length (chamfering
with CHF programming).
With VARI >10, it is regarded as path length (chamfering with CHR programming).
Contents
Go Back
Full Screen
You can program separate final machining allowances for the groove base and the flanks. Roughing is
performed to this final machining allowance. Then, the same tool is used to machine a contour-parallel cut
along the final contour.
IDEP (infeed depth)
By programming an infeed depth you can divide the paraxial grooving action into several depth infeeds.
After every infeed, the tool is retracted for chipbreaking by 1 mm or, from SW 6.2 or higher onwards, by the
distance programmed under VRT. Parameter IDEP, anyway, is to be programmed.
DTB (dwell time)
A dwell time at the base of the groove should be chosen that allows at least one spindle revolution. The
dwell time is programmed in seconds.
Contents
Go Back
Full Screen
The units digit of the VARI parameter determines the type of processing for the groove. This parameter
can be assigned any of the values shown in the figure.
The tens value of the VARI determines the type of calculation for the chamfer.
VARI 1 . . . 8: Chamfers are calculated as CHF
Contents
Go Back
Full Screen
Contents
Go Back
Full Screen
From SW 6.2 or higher onward, cycle data ZSD[6] can be set to define how the tool offset is handled in the
cycle.
ZSD[6]=0 TO is exchanged internally in the cycle (without orientatable toolholder)
ZSD[6]=1 TO is not exchanged internally in the cycle (with orientatable toolholder)
Programming example
Grooving
This program machines a groove on an oblique surface (longitudinal, outside). The starting point is at X35
Z60. The cycle uses tool offsets D1 and D2 of tool T1. The grooving tool must be defined correspondingly.
DEF REAL SPD=35, SPL=60, WIDG=30,>>
Contents
Go Back
Full Screen
Next position
End of program
8.4.
Programming
CYCLE94 (SPD, SPL, FORM, VARI)
Parameters
SPD
real
SPL
real
FORM
char
Contents
int
Go Back
Full Screen
Function
With this cycle you can machine undercuts of form E and F in accordance with DIN509 with the usual load
on a finished part diameter of >3mm.
Sequence of operations
Position reached prior to cycle start:
The starting position can be any position from which the undercut can be approached without collision.
The cycle implements the following motion sequence:
approach to the starting point calculated in the cycle with G0,
selection of tool nose radius compensation according to active tool point direction and traversal of undercut
contour at feedrate programmed prior to cycle call,
retraction to the starting point with G0 and deselection of the tool nose radius compensation with G40.
Contents
Go Back
Full Screen
Description of parameters
SPD and SPL (starting point)
The finished part diameter for the undercut is entered in parameter SPD. With parameter SPL you define
the finished part dimensions in the longitudinal axis. If the value programmed for SPD results in a final diameter
that is <3 mm, the cycle is aborted with the alarm 61601 Finished part diameter too small is output.
Contents
Go Back
Full Screen
FORM (definition)
Form E and Form F are defined in DIN509 and determined by this parameter. If the parameter is assigned
a value other than E or F, the cycle is aborted and alarm 61609 Form incorrectly defined is output.
Contents
Go Back
Full Screen
The position of the undercut can be either specified directly or derived from the tool point direction with
parameter VARI.
VARI=0: According to tool point direction
The cycle automatically determines the tool point direction from the active tool offset. The cycle can then
only work with tool point directions 1 to 4. If the cycle recognizes a tool point direction 5 . . . 9, alarm 61608
Wrong tool point direction programmed is output and the cycle is aborted.
VARI=1 . . . 4: Definition of undercut position
The cycle determines the starting point automatically. This lies 2 mm from the final diameter and 10
mm from the final dimension in the longitudinal axis. The position of this starting point in relation to the
programmed coordinate values is determined by the tool point direction of the active tool. The cycle monitors
the clearance angle of the active tool if a value has been assigned to the relevant parameter of the tool offset.
If the cycle ascertains that the undercut form cannot be machined with the selected tool because the clearance
angle is too small, the message Altered undercut form appears on the control, but machining is continued.
When VARI<>0 the following applies:
Contents
Go Back
Full Screen
the actual tool point direction is not checked, i.e. all directions can be used if this is meaningful technologically,
no special consideration is given to functions such as adapter transformation, orientatable toolholder in
the cycle. It is assumed that the user is familiar with the conditions on the machine and has specified the
position correctly,
similarly, mirroring is not specially treated either, the user must be responsible for making the correct
settings.
Further notes
You must activate a tool offset before you call the cycles. Otherwise alarm 61000 No tool offset active is
output and the cycle is aborted.
Programming example
Contents
Go Back
Full Screen
Undercut form E
You can machine an undercut of form E with this program.
N10 T25 D3 S300 M3 G95 F0.3
N20 G0 G90 Z100 X50
N30 CYCLE94 (20, 60, E)
N40 G90 G0 Z100 X50
Approach next position N50 M02
8.5.
Programming
CYCLE95 (NPP, MID, FALZ, FALX, FAL, FF1, FF2, FF3, VARI, DT, DAM, VRT)
Parameters
NPP
MID
FALZ
string
real
real
FALX
real
FAL
real
FF1
FF2
FF3
VARI
real
real
real
int
Contents
Go Back
DT
DAM
Full Screen
real
real
Contents
real
Go Back
Full Screen
Function
With this stock removal cycle you can machine a contour programmed in a subroutine from a blank with
paraxial stock removal. Relief cut elements can be included in the contour. With this cycle, contours can
be machined in the longitudinal and facing directions, inside and outside. The technology is freely selectable
(roughing, finishing, complete machining). During roughing, paraxial cuts are generated from the maximum
programmed infeed depth and when a point of intersection with the contour is reached, the residual corners
are immediately removed cutting parallel to the contour. Roughing is performed to the programmed final
machining allowance. Finishing is performed in the same direction as roughing. The tool radius compensation
is automatically selected and deselected by the cycle.
Sequence of operations
Position reached prior to cycle start:
The starting position can be any position from which the starting point of the contour can be approached
without collision.
Contents
Go Back
Full Screen
paraxial infeed to the actual depth is calculated internally and then approached with G0,
approach roughing point paraxially with G1 and feedrate FF1,
machine parallel to the contour at contour + final machining allowance to the last roughing intersection
point with G1/G2/G3 and FF1,
lift off contour by the amount programmed in VRT in every axis and retraction with G0,
this procedure is repeated until the total depth of the section to the machining step has been reached,
when roughing without relief cut elements, retraction to the cycle starting point is effected axis by axis.
Contents
Go Back
Full Screen
approach the starting point for the next relief cut axis by axis with G0. An additional safety distance is
calculated internally,
infeed parallel to the contour + final machining allowance with G1/G2/G3 and FF2,
approach roughing point paraxially with G1 and feedrate FF1,
machine to the last roughing point. Lift and retract as in the first machining section,
if further relief cut elements are to be machined, repeat the above procedure for each relief cut element.
Finishing:
the calculated cycle starting point is approached in both axes simultaneously with G0 and tool nose radius
compensation is selected,
Contents
Go Back
Full Screen
both axes then continue to move; with G0 up to an amount final machining allowance + tool nose radius +
1 mm safety distance ahead of the contour starting point, and from there with G1 to the contour starting
point,
finish cutting along the contour with G1/G2/G3 and FF3,
retraction to starting point with both axes and G0.
Description of parameters
NPP (name)
Enter the name of the contour subroutine under this parameter. This contour subroutine must not be a
subroutine with a parameter list. Please use the name conventions described in the Programming Guide when
naming the contour subroutine. In SW 5.2 and later, the machining contour can also be a section of the calling
routine or from any other program. The section is identified by start or end labels or by block numbers. In this
case, the program name and labels/block number are identified by an :.
Contents
Go Back
Full Screen
Example:
NPP=CONTOUR 1
NPP=START:END
If the section is defined by block numbers, it must be noted that these block numbers for the section in NPP
must be correspondingly adjusted if the program is modified and subsequently renumbered.
MID (infeed depth)
Under parameter MID you define the maximum possible infeed depth for the roughing operation. The
interpretation of this parameter depends on the cycle setting data for software release 4 and higher ZSD[0].
The cycle automatically calculates the actual infeed depth for roughing. Where contours with relief cut elements
are to be machined, the cycle divides up the roughing operation into single roughing steps. The cycle recalculates
the actual infeed depth for every roughing step. This actual infeed depth always lies between the programmed
infeed depth and half its value. The number of required roughing cuts is derived from the total depth of a
roughing section and the programmed maximum infeed depth. The total depth to be machined is then divided
equally amongst these roughing cuts. This method ensures optimum cutting conditions. The machining steps
shown in the figure above are used for roughing this contour.
Contents
Go Back
Full Screen
Contents
Go Back
Full Screen
machining mode does not consider programmed values. Turning always takes place down to finishing dimension.
FF1, FF2 and FF3 (feedrate)
You can define different feedrates for the different machining steps as is shown in the figure on the right.
Contents
Go Back
Full Screen
Contents
Roughing
(Roughing/finishing/complete)
Go Back
Full Screen
longitudinal
outside
(longitudinal/transverse)
(outside/inside)
Machining
Roughing
Roughing
Roughing
Roughing
Finishing
Finishing
Finishing
Finishing
Complete machining
Complete machining
Complete machining
Complete machining
Selection
long.
transv.
long.
transv.
long.
transv.
long.
transv.
long.
transv.
long.
transv. inside
Selection
outside
outside
inside
inside
outside
outside
inside
inside
outside
outside
inside
Infeed is always performed in the facing axis with longitudinal machining and in the longitudinal axis with
face machining. Outside machining means that infeed is performed in the direction of the negative axis. In
inside machining, infeed is performed in the direction of the positive axis.
When roughing in CYCLE95, you can choose between with rounding or without rounding at the contour
from SW 6.2 or higher. For doing so, the HUNDREDS DIGIT is implemented in parameter VARI.
A plausibility check is performed on parameter VARI. If you select an invalid value, the cycle is aborted and
alarm 61002 Wrong machining type defined is put out.
Contents
Go Back
Full Screen
With these two parameters you can program an interruption in the individual roughing cuts after a defined
path for the purposes of chip breaking. These parameters only apply to roughing. In parameter DAM you
define the maximum path after which chip breaking is to be performed. In DT you can also program a dwell
time to be included at each of the interruption points. If no path has been specified for cut interruption (DAM
= 0), then uninterrupted roughing cuts without dwell times are generated.
VRT (lift)
With SW 4.4. or higher, the amount by which the tool is lifted off the contour in both axes during roughing
operations can be programmed in parameter VRT. If VRT=0 (parameter not programmed), lift off is 1mm.
The retraction distance is always measured in inches or metric depending on the programmed system, i.e.
VRT=1 for inch >>programming produces a tool retract of 1 inch.
Contents
Go Back
Full Screen
Further notes
Contour definition
The contour is programmed in a subroutine whose name is defined as a parameter. The contour subroutine
must contain at least 3 blocks with movements in both axes of the machining plane. The machining plane (G17,
G18, G19) is set in the main program before the cycle is called or applied according to the basic setting of this
G group on the machine. It cannot be altered in the contour subroutine. If the contour subroutine is shorter,
alarms 10933 The contour subroutine contains too few contour blocks and 61606 Error in preprocessing
contour and the cycle is aborted. Relief cut elements can be programmed consecutively.
Blocks without movement in the plane are not subject to any limitations.
All the traversing blocks for the first two axes in the current plane are preprocessed in the cycle as only
these axes are involved in the machining operation. Movements for other axes can be included in the contour
subroutine but their travel paths are suppressed during the cycle run.
The only geometry permitted in the contour are straight line and circular programming with G0, G1,
G2 and G3. Commands for fillets and chamfers can also be programmed. If any other motion commands
are programmed in the contour, it is aborted with alarm 10930 Illegal interpolation type in the machining
contour.
The first block containing a traversing movement in the current machining plane must contain a travel
command G0, G1, G2 or G3, otherwise the cycle is aborted with the alarm 15800 Wrong starting conditions
for CONTPRON. This alarm is also activated when G41/G42 is active. The starting point of the contour is
the first position on the machining plane programmed in the contour subroutine.
The maximum possible number of blocks for the contour containing travel commands for the current plane
depends on the type of contour. In principle, there is no limit to the possible number of relief cuts. If a contour
contains more contour elements than the cycle memory can hold, the cycle is aborted with the alarm 10934
Overflow contour table.
Machining must then be divided into several machining sections each of which is represented by its own
contour subroutine and each cycle called separately.
If the maximum diameter in one contour subroutine is not within the programmed end point or starting
point of the contour, the cycle automatically extends a paraxial straight line to the maximum point of the
contour at the end of the machining operation and this part of the contour is then removed as a relief cut.
Contents
Go Back
Full Screen
Contents
Go Back
Full Screen
Contour monitoring
The cycle performs contour monitoring of the following:
clearance angles of the active tool,
programming of arcs with an aperture angle of >180 degrees.
In the case of relief cut elements, the cycle checks whether machining is possible with the active tool. If
the cycle detects that this machining operation will lead to a contour violation, it is aborted after alarm 61604
Active program violates programmed contour is output.
Contour monitoring is not performed if the clearance angle has been defined as zero in the tool offset.
If the arcs in the offset are too large, alarm 10931 Incorrect machining contour is output.
Starting point
The cycle determines the starting point of the machining operation automatically. The starting point is
positioned on the axis in which infeed is performed at a distance from the contour corresponding to final
machining allowance + lift off distance (parameter VRT). In the other axis, it is positioned at a distance
Contents
Go Back
Full Screen
corresponding to final machining allowance + VRT in front of the contour starting point. The tool noise radius
compensation is selected internally in the cycle when the starting point is approached. The last point before the
cycle is called must therefore be selected such that it can be approached without risk of collision and adequate
space is available for the compensating movement.
Approach strategy of the cycle
The starting point calculated by the cycle is always approached in the two axes simultaneously for roughing
and one axis at a time for finishing. In finishing, the infeed axis is the first to travel.
Programming example 1
Stock removal cycle
The contour illustrated in the figure explaining the assignment parameters must be machined completely
(longitudinal, outside). Axis-specific final machining allowances have been defined. No interruption between
cuts has been programmed. The maximum infeed is 5 mm. The contour is stored in a separate program.
DEF STRING[8] UPNAME
Contents
Go Back
Full Screen
End of subroutine
Contents
Go Back
Full Screen
Programming example 2
Stock removal cycle
The machining contour is defined in the calling program and traversed directly after the finishing cycle call.
N110 G18 DIAMOF G90 G96 F0.8
N120 S500 M3
N130 T11 D1
N140 G0 X70
N150 Z60
N160 CYCLE95 (START:END,2.5,0.8,0.8,0,0.8,0.75,0.6,1)
START:
N180 G1 X10 Z100 F0.6
N190 Z90
N200 Z=AC(70) ANG=150
N210 Z=AC(50) ANG=135
Contents
Go Back
Cycle call
Full Screen
8.6.
Programming
CYCLE96 (DIATH, SPL, FORM, VARI)
Parameters
DIATH
SPL
Real
Real
FORM
Char
Contents
Int
Go Back
Full Screen
Function
This cycle is for machining thread undercuts in accordance with DIN 76 on parts with a metric ISO thread.
Sequence of operations
Position reached prior to cycle start:
The starting position can be any position from which any thread undercut can be approached without
collision.
The cycle implements the following motion sequence:
approach to the starting point calculated in the cycle with G0,
selection of the tool radius compensation for the active tool point direction. Retraction along the undercut
contour at the feedrate programmed before cycle call,
retraction to the starting point with G0 and deselection of tool radius compensation with G40.
Contents
Go Back
Full Screen
Description of parameters
DIATH (nominal diameter)
With this cycle you can machine thread undercuts for metrical ISO threads from M3 to M68. If the value
programmed in DIATH results in a final diameter of <3 mm, the cycle is aborted and alarm 61601 Finished
part diameter too small is output. If the parameter is assigned a value other than that defined by DIN76 Part
1, again the cycle is aborted and the alarm 61001 Thread pitch incorrectly defined is output.
SPL (starting point)
With parameter SPL you define the final dimension in the longitudinal axis.
Contents
Go Back
Full Screen
FORM (definition)
Thread undercuts of forms A and B are defined for external threads, form A for normal thread run-outs,
form B for short thread run-outs. Thread undercuts of forms C and D for used for internal threads, form C for
normal thread runouts, form D for short thread run-outs. If the parameter is assigned a value other than A
. . . D, the cycle is aborted and alarm 61609 Form incorrectly defined is output. The tool radius compensation
is automatically selected by the cycle.
Contents
Go Back
Full Screen
The position of the undercut can be either specified directly or derived from the tool point direction with
parameter VARI.
See VARI with CYCLE94
The cycle automatically determines the starting point that is defined by the tool point direction of the active
tool and the thread diameter. The position of this starting point in relation to the programmed coordinate
values is determined by the tool point position of the active tool. The cycle monitors the clearance angle of
the active tool if forms A and B are being machined. If the cycle detects that the undercut form cannot be
machined with the selected tool, the message Changed undercut form is output by the control but machining
is continued.
Further notes
You must activate a tool offset before the cycle is called. Otherwise error message 61000 No tool offset
active is output and the cycle is aborted.
Contents
Go Back
Full Screen
Programming example
Thread undercut Form A
8.7.
Programming
CYCLE97 (PIT, MPIT, SPL, FPL, DM1, DM2, APP, ROP, TDEP, FAL, IANG, NSP, NRC, NID, VARI,
Contents
Go Back
Full Screen
NUMT, VRT)
Parameters
PIT
MPIT
Real
Real
SPL
FPL
DM1
DM2
APP
ROP
TDEP
FAL
IANG
Real
Real
Real
Real
Real
Real
Real
Real
Real
NSP
Real
NRC
NID
VARI
Int
Int
Int
NUMT
VRT from SW 6.2 or higher
Int
Real
Contents
Go Back
Full Screen
Function
With this cycle you can machine cylindrical and tapered outside and inside threads with constant lead in
longitudinal or face machining. Both single threads and multiple threads can be cut. In multiple thread cutting,
the threads are cut one after the other.
Infeed is automatic. You can select either constant infeed per cut or constant cross-section of cut. A righthand or left-hand thread is determined by the direction of rotation of the spindle programmed before the cycle
call. Feedrate and spindle override both have no effect in thread travel blocks.
A speed-controlled spindle with a position measuring system is required to operate this cycle.
Sequence of operations
Position reached prior to cycle start:
The starting position is any position from which the programmed thread starting point + arc-in section can
be approached without collision.
Contents
Go Back
Full Screen
Contents
Go Back
Full Screen
The thread pitch is a paraxial value and entered without a sign. If metric cylindrical threads are being
machined it is also possible to define the thread pitch in parameter MPIT as a thread size (M3 to M60). These
two parameters should be used as alternatives. If they contain conflicting values, the cycle generates alarm
61001 Thread pitch wrong and is aborted.
DM1 and DM2 (diameter)
This parameter is set to program the thread diameter of the start and end points of the thread. With an
inside thread, this corresponds to the tap hole diameter.
Connection between SPL, FPL, APP and ROP (starting point, end point, arc-in section and arc-out section)
The programmed starting point (SPL) and end point (FPL) are the basis of the thread. However, the
starting point used in the cycle is the starting point brought forward by the arc-in section APP and, in the
same way, the end point is the programmed end point brought back by the arc-out section ROP. The starting
point defined by the cycle always lies 1 mm outside the programmed thread diameter in the facing axis. This
retraction plane is automatically generated by the control.
Connection between TDEP, FAL, NRC and NID (thread depth, final machining allowance, number of cuts)
The programmed final machining allowance has an effect parallel to the axis and is subtracted from the
preset thread depth TDEP and the remainder is divided into roughing cuts. The cycle automatically calculates
the individual actual infeed depths depending on the parameter VARI. The thread depth to be machined is
divided into infeeds with the same cross-section of cut so that the cutting pressure remains constant for all rough
cuts. Infeed is then performed with differing values for the infeed depth. In a second method, the total thread
depth is divided into constant infeed depths. The cross-section of cut gets larger from cut to cut. However, if
the values for the thread depth are small, this method can create better cutting conditions. The final machining
allowance FAL is removed in one cut after roughing. After this, the noncuts programmed under parameter NID
are executed.
Contents
Go Back
Full Screen
With parameter IANG you define the infeed angle. If infeed is to be performed at right angles to the cutting
direction in the thread this parameter must be assigned the value zero. I.e., this parameter can also be omitted
from the parameter list as it is then automatically assigned the default value zero. If infeed is to be performed
along the flank, the absolute value of this parameter must be no more than half the flank angle of the tool.
The sign entered for this parameter defines how this infeed is performed. If a positive value is entered, infeed
is always performed on the same flank, if a negative value is entered, infeed is performed alternately on both
flanks. The infeed type on both flanks alternately can only be used for cylindrical threads. However, if a
negative value is assigned to parameter IANG for a tapered thread, the cycle automatically performs a flank
infeed along one flank.
NSP (starting point offset)
Under this parameter you can program the angular value that defines the point of the first cut for the first
thread turn on the circumference on the turned part. This value is a starting point offset. The parameter can
be assigned any value between 0.0001 and +359.9999 degrees. If no starting point offset has been entered or the
parameter has been omitted from the parameter list, the first thread automatically starts at the zero degrees
Contents
Go Back
Full Screen
mark.
VARI (machining type)
With parameter VARI, you define if machining is to be internal or external and with which technology the
infeed will be machined during roughing. The parameter VARI can be one of the values between 1 and 4 with
the following meaning:
Value
1
2
3
4
Outside/inside
Outside
Inside
Outside
Inside
If another value has been programmed for parameter VARI, the cycle is aborted after alarm 61002 Machining
type incorrectly defined is output.
Contents
Go Back
Full Screen
With parameter NUMT you specify the number of thread starts for a multiple thread. If you require a
single thread, either assign the value zero to the parameter or omit it from the parameter list. The thread starts
are distributed uniformly around the circumference of the turned part, the first thread is defined in parameter
NSP. If a multiple-start thread with a non-uniform distribution of threads around the circumference is to be
machined, the cycle must be called for every thread start and the corresponding starting point offset must be
programmed.
VRT (variable retraction path)
From SW 6. onward, the retraction path can be programmed on the basis of the initial thread diameter in
parameter VRT. When VRT = 0 (parameter not programmed), the retraction path is 1 mm. The retraction
path is always measured in the programmed system of units inch or metric.
Contents
Go Back
Full Screen
Further notes
Difference between a longitudinal thread and a face thread
The cycle automatically calculates whether a longitudinal or face thread is to be machined. This depends
on the angle of the taper on which the thread is to be machined. If the angle at the taper =45 degrees, the
longitudinal axis thread is machined, otherwise it will be the face thread.
Contents
Go Back
Full Screen
Programming example
Thread cutting
With this program you can cut a metric outside thread M42x2 with flank infeed. The infeed is performed
with a constant cross-section of cut. 5 roughing cuts are made to a thread depth of 1.23 mm without final
machining allowance. After machining has been completed, 2 noncuts are performed.
DEF REAL MPIT=42, SPL=0, FPL=-35,
DM1=42, DM2=42, APP=10, ROP=3,
TDEP=1.23, FAL=0, IANG=30, NSP=0
DEF INT NRC=5, NID=2, VARI=3, NUMT=1
N10 G0 G90 Z100 X60
N20 G95 D1 T1 S1000 M4
N30 CYCLE97 ( , MPIT, SPL, FPL, DM1, >>
>>DM2, APP, ROP, TDEP, FAL, IANG,>>
Contents
Go Back
Full Screen
8.8.
Programming
CYCLE98 (PO1, DM1, PO2, DM2, PO3, DM3, PO4, DM4, APP, ROP, TDEP, FAL, IANG, NSP, NRC,
NID, PP1, PP2, PP3, VARI, NUMT, VRT)
Parameters
PO1
real
DM1
PO2
real
real
DM2
PO3
DM3
PO4
real
real
real
real
DM4
APP
ROP
TDEP
FAL
real
real
real
real
real
Contents
Go Back
Full Screen
IANG
real
NSP
NRC
NID
PP1
PP2
PP3
VARI
int
int
real
real
real
int
NUMT
VRT from SW 6.2 or higher
int
real
Contents
Infeed angle
Value range
+ (for flank infeed on flank)
Go Back
Full Screen
Function
With this cycle you can produce several concatenated cylindrical or tapered threads with a constant lead in
longitudinal or face machining, all of which can have different thread leads.
Sequence of operations
Position reached prior to cycle start:
The starting position is any position from which the programmed thread starting point + arc-in section can
be approached without collision.
The cycle implements the following motion sequence:
approach to the starting point determined by the cycle at the beginning of the arc-in section for the first
thread with G0,
infeed to commence roughing according to the infeed type defined under VARI,
thread cutting is repeated according to the number of roughing cuts programmed,
Contents
Go Back
Full Screen
in the next cut with G33 the final machining allowance is cut,
this cut is repeated according to the number of programmed noncuts,
the total motion sequence is repeated for each additional thread.
Description of parameters
PO1 and DM1 (starting point and diameter)
With these parameters you define the original starting point of the thread chain. The starting point calculated by the cycle that is approached at the beginning with G0 is the length of the arc-in section in front of the
programmed starting point (starting point A).
PO2, DM2 and PO3, DM3 (intermediate point and diameter)
With these parameters you define two intermediate points in the thread.
Contents
Go Back
Full Screen
Contents
Go Back
Full Screen
With parameter IANG you define the infeed angle. If infeed is to be performed at right angles to the cutting
direction in the thread this parameter must be assigned the value zero. I.e., this parameter can also be omitted
from the parameter list as it is then automatically assigned the default value zero. If infeed is to be performed
along the flank, the absolute value of this parameter must be no more than half the flank angle of the tool.
The sign entered for this parameter defines how this infeed is performed. If a positive value is entered, infeed
is always performed on the same flank, if a negative value is entered, infeed is performed alternately on both
flanks. The infeed type on both flanks alternately can only be used for cylindrical threads. However, if a
negative value is assigned to parameter IANG for a tapered thread, the cycle automatically performs a flank
infeed along one flank.
NSP (starting point offset)
Under this parameter you can program the angular value that defines the point of the first cut for the first
thread turn on the circumference on the turned part. This value is a starting point offset. The parameter can
be assigned any value between 0.0001 and +359.9999 degrees. If no starting point offset has been entered or the
parameter has been omitted from the parameter list, the first thread automatically starts at the zero degrees
Contents
Go Back
Full Screen
mark.
PP1, PP2 and PP3 (thread pitch)
With these parameters you determine the thread pitch from the three sections of the thread chain. The
pitch value must be entered as a paraxial value without a sign.
VARI (machining type)
With parameter VARI, you define if machining is to be internal or external and with which technology the
infeed will be machined during roughing. The parameter VARI can be one of the values between 1 and 4 with
the following meaning:
Value
1
2
3
4
Outside/inside
Outside
Inside
Outside
Inside
Contents
Go Back
Full Screen
If another value is assigned to parameter VARI, the cycle is aborted and alarm 61002 Machining type
incorrectly programmed is output.
NUMT (number of thread starts)
With parameter NUMT you specify the number of thread starts for a multiple thread. If you require a
single thread, either assign the value zero to the parameter or omit it from the parameter list. The thread starts
are distributed uniformly around the circumference of the turned part, the first thread is defined in parameter
NSP. If a multiple-start thread with a non-uniform distribution of threads around the circumference is to be
machined, the cycle must be called for every thread start and the corresponding starting point offset must be
programmed.
VRT (variable retraction path)
From SW 6. onward, the retraction path can be programmed on the basis of the initial thread diameter in
parameter VRT. When VRT = 0 (parameter not programmed), the retraction path is 1 mm. The retraction
path is always measured in the programmed system of units inch or metric.
Contents
Go Back
Full Screen
Programming example
Thread chain
With this program you can produce a chain of threads starting with a cylindrical thread. Infeed is perpendicular to the thread. Neither a final machining allowance nor a starting point offset have been programmed. 5
roughing cuts and one noncut are performed. The machining type defined is longitudinal, outside, with constant
cross-section of cut.
N10 G95 T5 D1 S1000 M4
N20 G0 X40 Z10
N30 CYCLE98 (0, 30, -30, 30, -60, >>
>>36, -80, 50, 10, 10, 0.92, , , , >>
>>5, 1, 1.5, 2, 2, 3, 1)
N40 G0 X55
N50 Z10
N60 X40
N70 M30
Contents
End of program
Go Back
Full Screen
8.9.
Thread recutting
SW version 5.3 contains thread cutting cycles CYCLE97 and CYCLE98 which allow threads to be recut.
Function
The angular offset of a thread start resulting from tool breakage or remeasurement is taken into account and
compensated for by the Thread recut function. This function can be executed in JOG mode in the Machine
operating area.
The cycles calculate an additional offset angle for each thread, which is applied in addition to the programmed
starting point offset, from the data stored in the thread start during synchronization.
Preconditions
The channel in which the thread recutting program must be executed is already selected; the relevant axes
must already be referenced. The channel is in the Reset state, the spindle is stationary.
Sequence of operations:
select JOG in Machine operating area,
press softkey Finish thread,
open screen form for this function,
Contents
Go Back
Full Screen
Contents
Go Back
Full Screen
The extended stock removal cycle is an option. It requires SW 5.3 in the NCK and MMC.
Programming
CYCLE950 ( NP1, NP2, NP3, NP4, VARI, MID, FALZ, FALX, FF1, FF2, FF3, FF4, VRT,
ANGB, SDIS, NP5, NP6, NP7, NP8, APZ, APZA, APX, APXA, TOL1)
Parameters
NP1
String
NP2
String
NP3
String
NP4
String
VARI
Int
TEN DIGIT:
Values: 1 . . . Programmed infeed direction XValues: 2 . . . Programmed infeed direction X+
Values: 3 . . . Programmed infeed direction ZValues: 4 . . . Programmed infeed direction Z+
HUNDRED DIGIT:
Values: 1 . . . Roughing
Contents
Go Back
MID
FALZ
Real
Real
FALX
Real
FF1
FF2
FF3
FF4
Real
Real
Real
Real
VRT
Real
ANGB
Real
Contents
Full Screen
Values: 2 . . . Finishing
Values: 3 . . . Complete
THOUSAND DIGIT:
Values: 1 . . . With rounding
Values: 2 . . . Without rounding (lift off)
TEN THOUSAND DIGIT:
Values: 1 . . . Machine relief cuts
Values: 2 . . . Do not machine relief cuts
HUNDRED THOUSAND DIGIT:
Values: 1 . . . Programmed machining direction XValues: 2 . . . Programmed machining direction X+
Values: 3 . . . Programmed machining direction ZValues: 4 . . . Programmed machining direction Z+
Infeed depth (enter without sign)
Final machining allowance in the longitudinal
axis (enter without sign)
Final machining allowance in the facing axis
(enter without sign)
Feedrate for longitudinal roughing
Feedrate for face roughing
Feedrate for finishing
Feedrate at contour transition elements (radius, chamfer)
Lift off distance for roughing, incremental (enter without sign)
Lift off angle for roughing
Go Back
Real
NP5
NP6
String
String
NP7
String
NP8
String
APZ
Real
APZA
Int
APX
APXA
Real
Int
TOL1
Real
Full Screen
Safety distance for avoiding obstacles, incremental
Name of contour program for blank contour
Label / block number start of blank contour,
optional (this can be used to define contour
sections)
Label / block number end of blank contour,
optional (this can be used to define contour
sections)
Name of contour program for updated blank
contour
Axial value for defining blank for longitudinal
axis
Absolute or incremental evaluation of parameter APZ 90=absolute, 91=incremental
Axial value for defining blank for facing axis
Absolute or incremental evaluation of parameter APX 90=absolute, 91=incremental
Blank tolerance
Function
With the extended stock removal cycle CYCLE950 you can machine a contour programmed with paraxial or
parallel-contour stock removal. Any blank can be defined and is considered during stock removal. The finished
part contour must be continuous and may contain any number of relief cut elements. You can specify a blank
as a contour or by means of axial values.
Contours can be machined in the longitudinal and facing directions with this cycle. You can freely select a
technology (roughing, finishing, complete machining, machining and infeed directions). It is possible to update
a blank.
For roughing, the programmed infeed depth is observed precisely; the last two roughing steps are divided
equally. Roughing is performed to the programmed final machining allowance.
Contents
Go Back
Full Screen
Contents
Go Back
Full Screen
you can define a blank either by programming a contour, specifying an allowance on the finished-part
Contents
Go Back
Full Screen
contour or entering a blank cylinder (or hollow cylinder in the case of internal machining) from which
stock must be removed,
it is possible to detect residual material that cannot be machined with the current tool. The cycle can
generate an updated blank, which is stored as a program in the part program memory,
you can specify the contours for stock removal:
in a separate program,
in the calling main program or
as section of any given program,
during roughing, it is possible to choose between paraxial and contour-parallel machining,
during roughing, you have the option of machining along the contour so that no corners are left over, or
removing stock immediately at the roughing intersection,
the angle for stock removal at the contour during roughing is programmable,
optionally, relief cuts can be machined or skipped during roughing.
Sequence of operations
Position reached prior to cycle start:
The initial position can be any position from which the blank contour can be approached collision-free. The
cycle calculates collision-free approach movements to the starting point for machining but does not consider the
tool holder data.
Movement for paraxial roughing:
the starting point for roughing is calculated internally in the cycle and approached with G0,
Contents
Go Back
Full Screen
the infeed to the next depth, calculated in accordance with the specifications in parameter MID, is carried
out with G1, and paraxial roughing then performed with G1. The feedrate during roughing is calculated
internally in the cycle according to the path as the feedrate that results from the values specified for
longitudinal and face feed ( FF1 and FF2),
for Rounding along contour, the previous intersection is approached parallel to the contour,
when the previous intersection is reached or for machining Without rounding along contour, the tool is
lifted off at the angle programmed in ANGB and then retracted to the starting point for the next infeed
with G0. If the angle is 45 degrees, the programmed lift off path VRT is also followed precisely; it is not
exceeded for other angles,
this procedure is repeated until the full depth of the machining section has been reached.
Sequence of motions for roughing in parallel with contour:
the starting point for roughing and the individual infeed depths are calculated as for paraxial roughing
and approached with G0 or G1,
roughing is carried out in contour-parallel paths,
lift off and retraction is carried out in the same way as for paraxial roughing.
Description of parameters
NP1, NP2, NP3 (contour programming finished part)
The finished part contour can be programmed optionally in a separate program or in the current main
program that calls the routine. The data are transferred to the cycle via parameters NP1 . Name of the
program or NP2, NP3. ID of program section from ... to using block numbers or labels.
So there are three options for contour programming:
the contour is defined in a separate program in which case only NP1 need be programmed; (see programming example 1),
Contents
Go Back
Full Screen
the contour is defined in the calling program in which case only NP2 and NP3 have to be programmed;
(see programming example 2),
the stock removal contour is part of a program but not part of the program that calls the cycle in which
case all three parameters must be programmed.
When the contour is programmed as a program section, the last contour element (block with label or block
number end of blank contour) must not contain a radius or chamfer. Write the program name in NP1 with
path name and program type.
Example:
NP1=/ N SPF DIR/ N PART1 SPF
NP4 (name of the stock removal program)
The stock removal cycle generates a program for the travel blocks that are required for stock removal between
the blank and the finished part. This program is stored in the same directory as the calling program in the part
program memory if no other path is specified when it is generated. If a path is entered, it is stored accordingly
in the file system. The program is a main program (type MPF) if no other type is specified.
Parameter NP4 defines the name of this program.
Contents
Go Back
Full Screen
Contents
Go Back
Full Screen
1=Longitudinal
2=Face
3=Parallel to the contour
Ten digit:
1=Programmed
2=Programmed
3=Programmed
4=Programmed
Hundred digit:
1=Roughing
2=Finishing
3=Complete
Thousand digit:
1=With rounding
2=Without rounding (lift off)
The selection with or without rounding along the contour determines whether or stock removal starts at the roughing intersection
immediately or whether machining is performed along the contour
up to the previous intersection so that there are no residual corners.
Contents
infeed
infeed
infeed
infeed
direction
direction
direction
direction
XX+
ZZ+
Go Back
Full Screen
1=Programmed
2=Programmed
3=Programmed
4=Programmed
machining
machining
machining
machining
direction
direction
direction
direction
XX+
ZZ+
Example:
VARI=312311 means machining: longitudinal, infeed direction X- (i.e. external), complete; the workpiece
is not rounded along the contour, relief cuts are machined machining direction Z-.
MID (infeed depth for roughing)
The infeed depth for roughing is programmed with the parameter MID. Roughing steps are generated with
this infeed until the remaining depth is less than twice the infeed depth. Then two steps are performed each at
half of the remaining depth. MID is interpreted as a radius or diameter depending on the value of cycle setting
data ZSD[0] if the facing axis is involved in the infeed for roughing.
ZSD[0]=0:
MID is interpreted according to the G group for radius/diameter programming, as a radius with DIAMOF, otherwise as a diameter.
MID is a radius value
MID is a diameter value
ZSD[0]=1:
ZSD[0]=2:
When rough cutting parallel to contour, the infeed depth does not act in relation to the specified infeed axis
but vertically to the contour. This always results in more cuts than in paraxial rough-cutting with the same
value for infeed depth.
FALZ, FALX (machining allowance)
The default for a final machining allowance for roughing is provided by the parameters FALZ (for Z axis)
and FALX (for X axis). Roughing always takes place down to theses final machining allowances. If no machining allowances are programmed, stock removal is performed up to the end contour during roughing. If final
machining allowances are programmed, these are applied correspondingly.
Contents
Go Back
Full Screen
Separate feedrates can be specified for roughing and finishing, as shown in the figure opposite. Separate
feedrates apply for longitudinal ( FF1) and face ( FF2) during roughing. If inclined or circular path sections are
traversed when machining the contour, the appropriate feedrate is calculated automatically inside the cycle. The
feedrates programmed at the contour are active during finishing. If none are programmed there, the finishing
feedrate in FF3 and the feedrates at radii and chamfers in FF4 apply to these contour transition elements.
VRT (lift off ) and ANGB (lift angle)
The parameter VRT can be used to program the amount of lift off during roughing in both axes. If VRT=0
(parameter not programmed), lift off is 1 mm. It is also possible to program the angle at which the axis is
Contents
Go Back
Full Screen
retracted from the contour in parameter ANGB. If nothing is programmed, the angle is 45.
SDIS (safety distance)
Parameter SDIS determines the amount of clearance for obstructions. This clearance is active for retraction
from a relief cut and approach to the next relief cut, for example. If no value is programmed, the clearance is
1 mm.
NP5, NP6, NP7 (contour programming blank)
If a blank is programmed as a contour, it can be programmed as a program name using parameter NP5 or
as a program section with parameters NP6 and NP7. Otherwise, programming is carried out as for finished
parts (see NP1, NP2, NP3).
NP8 (name of contour program for updated blank contour)
Cycle CYCLE950 can detect residual material that cannot be removed with the active tool. To continue
this machining with a different tool, it is possible to generate an updated blank contour automatically. This is
stored as a program in the part program memory. You can specify the program name in parameter NP8 with
or without path details (see sample program 3). An updated blank contour is always generated when a travel
program is generated.
Contents
Go Back
Full Screen
Contents
Go Back
Full Screen
You can also define a blank by entering the dimensions of a blank cylinder (or hollow cylinder) or as an
allowance on the finished-part contour in parameters APZ and APX. You can enter the cylinder dimensions as
either absolute or incremental values, although an allowance on the finished-part contour is always interpreted
incrementally. Absolute or incremental values are selected via parameters APZA and APXA ( APZA, APXA:
90 - absolute 91 - incremental).
TOL1 (blank tolerance)
Since a blank does not always correspond exactly to the blank definition when it is cast or forged for example,
it makes sense not to travel to the blank contour with G0 for roughing and for the infeed but to activate G1
shortly beforehand to compensate for any tolerances. Parameter TOL1 defines the distance from the blank at
which G1 becomes active. Traversing is started with G1 at this incremental amount before the blank. If the
parameter is not programmed, it has the value 1 mm.
Further notes
Contour definition
Unlike CYCLE95, one block that contains a link to the current plane is sufficient for contour programming.
For further details of contour definition, see CYCLE95.
Contents
Go Back
Full Screen
A blank contour must either be a closed contour (starting point=end point) which encompasses the finishedpart contour either partially or fully, or a contour section between the starting and end points of the finished-part
contour. The programmed direction is irrelevant.
Blank contours always must be described in a way that they are not partly identical with the finished-part
contours, i.e. the machined materials are not combined.
Contents
Go Back
Full Screen
Contents
Go Back
Full Screen
Blank updating
The extended stock removal cycle CYCLE950 detects residual material during roughing and is able to
generate an updated blank contour outside the machining process, which can be used in a further machining
step.
To do this, the cycle internally considers the angle at the tool point. The relief cut angle of the tool must
be entered in the tool offset data (parameter 24). The cycle defines the main cutting edge angle automatically
according to the tool point position. For tool point positions 1 to 4, the blank update is calculated with a main
cutting edge angle of 90. For tool point positions 5 to 9, the main cutting angle is assumed to be identical to
the relief cut angle. If CYCLE950 is called more than once, each time with blank update, in the same program,
different names for the generated blank contours must be assigned; it is not permissible to use the program
name (parameter NP8) more than once.
Extended stock removal cannot be performed in m:n configurations.
Contents
Go Back
Full Screen
Programming example 1
From a preshaped blank, the contour saved in program PART1.MPF is to be machined. The type of
machining for the stock removal process is:
only roughing,
longitudinal,
outside,
with rounding (so that no corners are left over),
relief cuts are to be machined.
The blank contour is specified in program BLANK1.MPF. A turning steel with tool point position 3 and a
radius of 0.8 mm is used.
Machining program:
Contents
Go Back
Full Screen
% N EXAMPLE 1 MPF
;$PATH=/ N WKS DIR/ N STOCK REMOVAL NEW W PD
; Example 1: Stock removal with blank
; Sca, 01.04.99
;
; Tool offset data
N10 TC DP1[3,1]=500 $TC DP2[3,1]=3 $TC DP6[3,1]=0.8 $TC DP24[3,1]=60
N15 G18 G0 G90 DIAMON
N20 T3 D1
N25 X300
N30 Z150
N35 G96 S500 M3 F2
N45 CYCLE950(Part1,,,Machine Part1,
311111,1.25,1,1,0.8,0.7,0.6,0.3,0.5,45,2, Blank1,,,,,,,,1)
N45 G0 X300
N50 Z150
N60 M2
% N PART1 MPF
;$PATH=/ N WKS DIR/ N STOCK REMOVAL NEW W PD
; Finished part contour Example 1
;
N100 G18 DIAMON F1000
N110 G1 X0 Z90
N120 X20 RND=4
N130 X30 Z80
N140 Z72
N150 X34
Contents
Go Back
Full Screen
Z58
X28 Z55 F300
Z50 F1000
X40
X60 Z46
Z30
X76 CHF=3
Z0
M17
Blank contour:
% N BLANK1 MPF ;$PATH=/ N WKS DIR/ N STOCK REMOVAL NEW W PD
; Blank contour Example 1
;
N100 G18 DIAMON F1000
N110 G0 X0 Z93
N120 G1 X37
N130 Z55
N140 X66
N150 Z35
N160 X80
N170 Z0
N180 X0
N190 Z93 *
N200 M17
* End point=Starting point, Blank contour must be closed
After machining, a new program called
MACHINING PART1.MPF is present in the workpiece
Contents
Go Back
Full Screen
A simple inside contour is to be machined on the same part as in sample program 1. A center bore is made
first using a diameter-10 drill. Then, the inside contour is roughed parallel to the contour, since the hole roughly
corresponds to the end contour. This is done by defining a blank contour again for inside machining. The stock
removal contour is located in the same program as the cycle call in the blocks N400 to N420, the blank contour
in blocks N430 to N490.
Machining program:
% N EXAMPLE 2 MPF
;$PATH=/ N WKS DIR/
N STOCK REMOVAL NEW W PD
; Example 1: inside stock removal, parallel to contour
Contents
Go Back
Full Screen
; Sca, 01.04.99
;
; Tool offset data for turning tool, inside
N100 $TC DP1[2,1]=500 $TC DP2[2,1]=6
$TC DP6[2,1]=0.5 $TC DP24[2,1]=60
N105 $TC DP1[1,1]=200 $TC DP3[1,1]=100
$TC DP6[1,1]=5
N110 G18 G0 G90 DIAMON
N120 X300
N130 Z150
N140 T1 D1
N150 X0
N160 Z100
N170 F500 S400 M3
N175 G1 Z75
N180 Z76
N190 Z60
N200 Z61
N210 Z45
N220 G0 Z100
N230 X300
N240 Z150
N250 T2 D1
Contents
Go Back
Full Screen
G1 Z52
X0 Z45
G0 X10 Z9
X16
Z40
X0
Z47
X10 Z59
Z90
END:M2
Programming example 3
The same part as in sample program 1 should now be machined in two steps.
In the first machining step (N45), roughing is carried out using a tool with tool point position 9 and a large
radius with deep infeed depth and no blank specified. The result to be generated is an updated blank with the
name blank3.MPF.
The type of machining for this step is:
only roughing,
longitudinal,
outside,
with rounding,
relief cuts are not be machined.
In the second machining step (N70), the residual material on this blank is machined with a different tool
and then finished.
The type of machining for this step is:
Contents
Go Back
Full Screen
Contents
Go Back
Full Screen
N50 G0 X300
N55 Z150
N60 T4 D1
Explanation
Alarm source CYCLE950
Contents
Go Back
Full Screen
Alarm number
61701
Alarm text
Explanation, remedy
61702
61703
61704
61705
61706
61707
61708
61709
61720
61721
61722
61723
61724
61725
61726
61727
61728
Contents
Go Back
Full Screen
61729
61730
61731
61732
61733
61734
61735
61736
61737
61738
61739
61740
61741
61742
Out of memory
Collision during approach, offset not possible
Contents
Go Back
9.
Full Screen
APPENDIX
9.1.
9.1.1.
Describe the surfaces on the workpiece in terms according to the standard ISO 4287-1 and main characteristics of the roughness (Ra, Rz). On the base of data label calculate the relationship Ra = f (Rz ) for a
reaming technology.
Describe the selected cutting tools (turning knife, screw drill, milling cutter) and their parts in terms
according to the standard ISO 3002/1.
Describe the cutting geometry of the selected cutting tool (recommended turning knife for outer turning)
in terms according to the standard ISO 3002/2.
According to the standard ISO 3002/3 describe the cutting conditions, cross-section of the chip for turning,
milling and drilling operations.
According to the standard ISO 3002/3 describe the cutting conditions, cross-section of the chip for turning,
milling and drilling operations.
ISO coding of tool holders and inserts.
According to the standard ISO 3002/4 describe the forces acting on a cutting tool when machining, their
relation to the cross section of the chip and cutting conditions.
9.1.2.
Calculate the cutting speed of a wheel that has diameter 120 mm when rotating at 602 rev/min.
Calculate the feed speed vf when turning a wheel of diameter 120 mm with cutting speed vc = 120 m/min
and feed is 0.25 mm/rev. Calculate the resultant cutting speed ve and resultant cutting angle .
Contents
Go Back
Full Screen
A metal disc has inner and outer radii for its machined surface of 25 mm and 58 mm. The disc is turned
at a constant cutting speed 130 m/min, starting from its inner edge and moving outward. What are the
angular speeds (number of rotations per minute) at the (a) inner radius and (b) outer radius? Is the
angular acceleration constant? The cutting tool makes spiraled lines 0.2 mm apart; what is the total
length of the tool pass? What is the machining time? Rework the problem assuming that the number of
rotations rather the cutting speed is held constant.
Overhanging part of a tube (200 / 100 mm) is going to be machined by facing from the outside diameter
to the inside diameter at a NC machine. Recommended cutting speed for the selected indexable insert
belongs to the interval 200-300 m/min, feed speed 0.25 mm/rev. Calculate the diameters for increasing
speed of spindle to meet the cutting speed limitations and find the time of facing regarding that one gear
change takes about 1.6 seconds. Run-in and run-out distances let be 2 mm.
9.1.3.
Physical Phenomena
A constant horizontal force of 500 N and vertical feed force 100 N force are applied to a cutting tool as
shown in Fig.1. What are the magnitude and direction of the total cutting force ? Draw a sketch of the
problem.
Calculate (a) the cutting force exerted on the single tip turning tool, and (b) the average cutting power Pc
required to turning of steel when Fc = 1980 ap f 0.78 , ap = 2.5 mm, f = 0.25 mm/rev, vc = 140 m/min.
Further more, for the length of cylindrical workpiece 180 mm calculate average temperature of chips after
machining, regarding that density of steel is 7,800 kg/m3 , specific heat 0.461 kJkg1 K1 , and a ratio of
heat conducted by the chips is 80 %.
The simplest theory of tool life relation is so called T -vc relation proposed by Taylor in 1907. For the
given experimental data derive the Taylors constants using linear regression statistical method and draw
the Taylors relation in cartesian coordinates and in logarithmic scale. How does machinability of material
influence the relation ?
vc [m/min]
T [min]
Contents
162
25
150
45
141
69
125
128
110
220
Go Back
100
280
Full Screen
CNC Programming
Basics of CNC programming - SINUMERIK 810D. Basic composition of CNC programme. Make a general
CNC work schedule and sequence of cutting operations and working instructions. Find optimal allowances
for machining operations relating dimensions and tolerances from the drawing.
Contents
Go Back
Full Screen
Basic descriptions of lathe SPN 12 CNC and its facilities. Study rules for workpiece orientation, clamping
and allowed loading.
Learn how to handle the main menu of SINUMERIK 810 - controlling panels, split screen layouts, horizontal and vertical soft keys, pop-up menus. Learn how to work with workpiece files, tool files, edit menu,
graphical simulation, protection of programmes, setting data, dowloading and copying of files.
On the base of translations, rotations and transformations of coordinate systems make CNC programme for
the machined part. Main programs and sub-programmes. Methods of programme generation. Graphical
simulation of a programme.
Workshop - CNC machining. Tool management. Data operations. Miscellaneous and drive instructions.
Machine control keys (spindle rotations, tool release, manual operation, manual operations with tools,
clamping of workpiece). Cooling.
Draw in the x and z axes of a workpiece coordinate system. In all of our turning problems it made sense
to choose the z axis horizontal a x axis vertical. Choose them so that z axis axis is identical with the axes
of symmetry. Resolve into components the coordinates that do not lie along one of the axes. Solve the
appropriate dimensional chains if needed.
Given different cutting tools, you are asked to assign tool compensations for T1 (outer cranked left hand
knife), T2 (light turning knife), T3 (parting off tool), T4 (threading ) and make the setting data sheet.
When 100 workpieces have been machined by T1, the diameter of the machined cylinder has increased
from 100.000 mm to 100.012 mm. Make decision how to correct the situation (adjustment of setting data).
Learn the CNC machining cycle sand machining of complex curves and surfaces. Import of data from
CAD/CAM. Learn how to write macro and self-made cycles. Study diagnostics and inspection of machine
and drive units.
Suggest ways in which a very complicated shape of workpiece could be machined and measured experimentally (calipers, micrometers, indicators with magnetic stands, dial gauges, external dial snap gauges,
adjustable snap gauges, plug gauges, plain ring gauges, screw plug and ring gauges), supposing single-part
Contents
Go Back
Full Screen
CNC production, lot CNC production and mass production. Modify the solutions of problem by time
analysis.
Draw a sketch of metric thread and describe all parameters of the surfaces. Assume that the bolt is made
from hardened steel. Use CYCLE97 to the sequence of operations.
You have been assigned to make a CNC programme for machining of the workpiece according to the
sketch. Assume lot production of 1,000 pieces per two months. Write down operating instructions of the
process of manufacture, in successive order, including the checks of quality and measurement.
9.2.
Example
Technology of the shaft production with the semiautomatic lathe SPN 12 CNC and CNC controlling
system SINUMERIK 810 D
9.3.
Vocabulary
Broaching
Contour band sawing.Power hacksaws. Circular saw
Drilling. Boring
Grinding and polishing
Machining of metals
Milling
Planing
Reaming. Countersinking. Counterboring
Shaping
Some other machining processes
Turning
Mathematical symbols
Symbols of physical quantities
Contents
Go Back
10.
Full Screen
REFERENCES
[1] ELMAN, J., MICHALICEK, V. Anglicko-cesky technicky slovnik. 1.vyd. Praha: Sobotales, 1998. 1328 s.
ISBN 80-85920-50-6.
[2] ELMAN, J., MICHALICEK, V. Cesko-anglicky technicky slovnik. 1.vyd. Praha: Sobotales, 2002. 1520 s.
ISBN 80-85920-85-9.
[3] HORNBY, A. S. Oxford Advanced Learners Dictionary of Current English. 6th ed. Oxfor New York:
Oxford University Press, 2000. 1539 p. ISBN 0-19-431585-1.
[4] JANATA, P. Anglictina ve strojirenstvi. 1.vyd. Praha: Nakladatelstvi technicke literatury, 1981. 536 s.
[5] SANDVIK COROMANT Die and Mould Making. 1th ed. Sweden: Sandviken, 2000. 208 p.
[6] SIEMENS Programming Guide Fundamentals. http://www.siemens.com.br/upfiles/1034.pdf
[7] SIEMENS Users Guide Measuring Cycles. http://www.siemens.com.br/upfiles/1040.pdf
Contents
Go Back