CAM - Programming Guide - 840D - PG
CAM - Programming Guide - 840D - PG
sinumerik
SINUMERIK 840D/840Di/810D
Fundamentals
Fundamental 1
Geometrical Principles
Fundamental 2
Principles of NC
Programming
SINUMERIK 840D/840Di/810D
Positional Data 3
Fundamentals
Programming Motion 4
Commands
Programming Guide
Path Action 5
Frames 6
Tool Offsets 8
Miscellaneous 9
Functions
Valid for
Tables 12
Appendix A
03.04 Edition
SINUMERIK® Documentation
Printing history
Brief details of this edition and previous editions are listed below.
The status of each edition is shown by the code in the "Remarks" column.
Trademarks
SIMATIC, SIMATIC HMI, SIMATIC NET, SIROTEC, SINUMERIK and SIMODRIVE are Siemens
trademarks. Other names in this publication might be trademarks whose use by a third party for his own purposes
may violate the rights of the registered holder.
Further information is available on the Internet under: Other functions not described in this documentation might be executable in the
http://www.siemens.com/motioncontrol control. This does not, however, represent an obligation to supply such functions with
a new control or when servicing.
This document has been created using WinWord V 9.0 We have checked that the contents of this document correspond to the hardware
and Designer V 7.0. and software described. Nonetheless, differences might exist and therefore we
The reproduction, transmission or use of this document or its contents is not cannot guarantee that they are completely identical. The information given in this
permitted without express written authority. Offenders will be liable for damages. publication is reviewed at regular intervals and any corrections that might be
All rights, including rights created by patent grant or registration of a utility model necessary are made in the subsequent printings. We welcome suggestions for
or design, are reserved. improvement.
© Siemens AG, 1995-2004. All rights reserved Subject to change without prior notice
Preface
Organization of documentation
SINUMERIK documentation is organized on three
different levels:
• General Documentation
• User Documentation
• Manufacturer/Service Documentation
Target group
This Manual is intended for machine-tool users. It
provides detailed information that the user requires to
program the 840D/840Di/810D control system.
Standard scope
This Programming Guide describes the functionality
afforded by standard functions. Differences and
additions implemented by the machine-tool
manufacturer are documented by the machine-tool
manufacturer.
Applicability
This Programming Guide applies to the following
controls:
SINUMERIK 840D powerline 7
SINUMERIK 840DE powerline (export version) 7
SINUMERIK 840Di 3
SINUMERIK 840DiE (export version) 3
Hotline If you have any queries, please contact the following hotline:
A&D Technical Support Tel.: +49 (0) 180 5050 – 222
Fax: +49 (0) 180 5050 – 223
Email: adsupport@siemens.com
Export version
The following functions are not available in the export
version:
Function 810DE 840DE
Five axis machining package − −
Handling transformation package (five axes) − −
Multi-axis interpolation (> four axes) − −
Helical interpolation 2D+6 − −
Synchronized actions, stage 2 − O1)
Measurements, stage 2 − O1)
Adaptive control − O1)
Continuous dressing − O1)
Utilization of compile cycles (OEM) − −
Sag compensation, multi-dimensional − O1)
− Function not available
1) restricted functionality
Fundamentals
This Programming Guide "Fundamentals" is intended for
use by skilled machine operators with the appropriate
expertise in drilling, milling and turning operations.
Simple programming examples are used to explain the
commands and statements which are also defined
according to DIN 66025.
Advanced
The Programming Guide "Advanced" is intended for
use by technicians with in-depth, comprehensive
programming knowledge. By virtue of a special
programming language, the SINUMERIK
840D/840Di/810D control enables the user to program
complex workpiece programs (e.g. for sculptured
surfaces, channel coordination, ...) and greatly
facilitates the programming of complicated operations.
The commands and statements described in this
Guide are not specific to one particular technology.
They can be applied for a variety of technologies, such
as:
• Grinding
• Cyclical machines (packaging, woodworking)
• Laser power controls
Structure of descriptions
All cycles and programming options have been
described according to the same internal structure as far
as this is meaningful and practicable. The various levels
of information have been organized such that you can
selectively access the information you need for the task
in hand.
1. A quick overview
If you look up a rarely used command or the meaning
of a parameter, you can see at a glance how the
function is programmed and find helpful explanations
of the commands and parameters.
Note:
Due to lack of space, it is not possible to specify all
modes of display offered by the programming
language for individual commands and parameters.
For this reason, the method of programming shown is
the one most commonly used in workshops.
2. Detailed explanations
You will find detailed answers to the following
questions in the theory section:
Explanation of symbols
Operating sequence
Explanation
Function
Parameter
Programming example
Programming
Additional notes
Principle
Additional equipment
Personnel
Behavior
Servicing
Note
Any application which does not comply with the rules for
proper usage described above.
Notes
This symbol appears in this documentation whenever it
is necessary to draw your attention to an important item
of information.
Warnings
The following warnings with varying degrees of severity
appear in this document.
Danger
Indicates an imminently hazardous situation which, if not
avoided, will result in death or serious injury or in
substantial property damage.
Warning
Indicates a potentially hazardous situation which, if not
avoided, could result in death or serious injury or in
substantial property damage.
Caution
Used with the safety alert symbol indicates a potentially
hazardous situation which, if not avoided, may result in
minor or moderate injury or in property damage.
Caution
Used without safety alert symbol indicates a potentially
hazardous situation which, if not avoided, may result in
property damage.
Notice
Used without the safety alert symbol indicates a
potential situation which, if not avoided, may result in an
undesirable result or state.
Contents
3.3 Absolute dimensions for rotary axes, DC, ACP, ACN ..............................................3-89
3.5 Zero offset (frame), G54 to G57, G505 to G599, G53, G500/SUPA ........................3-94
4.2 Traversing commands with polar coord., G110, G111, G112, AP, RP ..................4-110
4.3 Rapid traverse movement, G0, RTLION, RTLIOF (SW 6.1 and higher) ................4-114
4.13 Stop with thread cutting, LFOF, LFON, LFTXT, LFWP, LFPOS.............................4-158
5.2 Continuous-path mode, G64, G641, G642, G643, G644 ....................................... 5-180
Frames 6-199
6.1 General ................................................................................................................... 6-200
6.5 Programmable frame rot. with solid angles, ROTS, AROTS, CROTS ................... 6-218
6.8 Frame generation acc. to tool orientation, TOFRAME, TOROT, PAROT .............. 6-226
7.4 Positioning spindles (position-controlled axis operation): SPOS, M19, SPOSA .... 7-246
7.7 Feedrate for positioning axes/spindles: FA, FPR, FPRAON, FPRAOF ................. 7-255
7.11 Feedrate optimization for curved path sections, CFTCP, CFC, CFIN ....................7-265
7.13 Constant cutting rate, G96, G961, G97, G971, LIMS .............................................7-270
8.9 Approach and retract from contour, NORM, KONT, KONTC, KONTT ...................8-309
8.14 Tool length compens. for orient. tools TCARR, TCOABS, TCOFR ........................8-335
8.17 Tool offset – special treatment (SW 5 and higher) ................................................. 8-344
8.17.1 Mirror tool lengths ................................................................................................... 8-345
8.17.2 Sign evaluation wear............................................................................................... 8-345
8.17.3 Define coordinate system for wear values, TOWSTD, TOWMCS/WCS ................ 8-346
8.17.4 Tool length and plane change ................................................................................ 8-349
8.18 Tools with a relevant tool point direction (SW 5 and higher) .................................. 8-352
11.4 Program section repetition (SW 4.3 and higher) .................................................. 11-380
Tables 12-389
12.1 List of statements.................................................................................................. 12-390
Appendix A-443
A Abbreviations ..........................................................................................................A-444
B Terms ......................................................................................................................A-454
D Index.........................................................................................................................I-489
Turning:
Y+
X+
Z-
90°
W 90° 90°
X-
Z+
Y-
100
Y0 and Z0.
50
Example: X- X+
For the sake of simplicity, we will only use one plane
75
115
of the coordinate system in this example, i.e. the X/Y
70
plane. Points P1 to P4 then have the following P4
P3 105
coordinates:
P4
Example:
P3 P2
Points P1 to P4 are defined by the following
coordinates:
Ø 60
P1
Ø 40
Ø 25
P1 corresponds to X25 Z-7.5
P2 corresponds to X40 Z-15
7.5 Z
P3 corresponds to X40 Z-25
15
P4 corresponds to X60 Z-35 25
35
Example:
Points P1 and P2 are defined by the following
X+ X+
coordinates:
13
20
P1 P1
P1
13 23
20 27
P1
coordinates:
P3
45
60
75° 0
The polar coordinate method is useful only if a 10 30°
30
X
Example: 15
The points P1 and P2 can then be described – with
reference to the pole – as follows:
P1 corresponds to radius =100 plus angle =30°
P2 corresponds to radius =60 plus angle =75°
60
The positional parameters for points P1 to P3 in
P3
absolute dimensions referring to the zero point are
35
the following:
20
P1 corresponds to X20 Y35 X
P2 corresponds to X50 Y60 20
50
P3 corresponds to X70 Y20
70
Ø 60
Ø 40
Ø 25
7.5 Z
15
25
35
means:
P2
The incremental dimensions describe the distance
the tool is to travel.
20
P1
Example for milling:
15
The positional data for points P1 to P3 in incremental P3
dimensions are:
20
Turning:
Y
X
7
G1
G1
9
G1
8
Zw
Zm Za Yw
Ym Ya
W Wa Xa
M
Xm
Xw
Y+
M X+
W
Z+
+Z
+Z
-B
-Y
-Y +X
+X
C+
Y+
C- X+
+Z
B+
Z+
B- +A
-A
+X +Y
The basic coordinate system is a Cartesian Basic coordinate system Workpiece coordinate system
for face end for turning plane
coordinate system, which is mirrored by kinematic
X X
transformation (for example, 5-axis transformation or
by using Transmit with peripheral surfaces) onto the
machine coordinate system.
Y W Z
Z
Zero offsets, scaling, etc. are always executed in the
basic coordinate system.
XWCS
WCS
Programmable FRAME
XSZS
SZS
G54...G599 settable FRAMES
XBZS
BZS
Base offset (base frame)
Z0
The following components are available within a
Y0
frame: X1
et
fs
of
ro
X2
Ze
• Zero offset
• Rotation
• Mirroring X0
• Scaling
Z Z
M W W1 M1
Z X
Y
XW
XM=XB
1.4 Axes
Identifiers: X, Y, Z
Standard identifiers:
X1, Y1, Z1, A1, B1, C1, U1, V1
Identifiers: X, Y, Z, A, B, C, U, V
Additional notes
Positioning axes become synchronized axes if they
are traversed without the special POS/POSA
identifier.
Preconditions:
• The participating NCUs, NCU1 and NCU2, must
be connected by means of high-speed
communication via the link module.
References:
/PHD/, Configuring Manual NCU 571-573.2,
Link Module
• The axis must be configured appropriately by
machine data.
• The link axis option must be installed.
Channel 1 Channel 1
A1 B1
Channel 2
A2 B2
A3
Functionality
The position control is implemented on the NCU on
which the axis is physically connected to the drive. This
NCU also contains the associated axis VDI interface.
The position setpoints for link axes are generated on
another NCU and communicated via the NCU link.
The link communication must provide the means of
interaction between the interpolators and the position
controller or PLC interface. The setpoints calculated by
the interpolators must be transported to the position
control loop on the home NCU and, vice versa, the
actual values must be returned from there back to the
interpolators.
- Coupled motion
- Tangential follow-up
- Synchronous spindle
Preconditions:
• The dependent NCUs, i.e. NCU1 to NCUn (n
equals max. of 8), must be interconnected via the
link module for high-speed communication.
References:
/PHD/, Configuring Manual NCU 571-573.2,
Link Module
• The axis must be configured appropriately by
machine data.
• The link axis option must be installed.
NCU 1 A1 setpoints
NCU 2 ... NCU n
Influenced by
Interpolator Interpolator
following axis/axes
A1 real values
Servo Servo
611 D 611 D
B2
Restrictions:
• A master axis which is leading link axis cannot be
a link axis, i.e. it cannot be operated by other
NCUs as their home NCU.
• A master axis which is leading link axis cannot be
a container axis, i.e. it cannot be addressed
alternately by different NCUs.
• A leading link axis cannot be the programmed
leading axis in a gantry grouping.
• Couplings with leading link axes cannot be
cascaded.
• Axis replacement can only be implemented within
the home NCU of the leading link axis.
Programming:
Master NCU:
Only the NCU which is physically assigned to the
master value axis can program travel motions for this
axis. The travel program must not contain any special
functions or operations.
System variables:
The following system variables can be used in
conjunction with the channel axis identifier of the
leading link axis:
$AA_LEAD_SP ; Simulated master value – position
SAA_LEAD_SV; Simulated master value – velocity
If these system variables are updated by the home
NCU of the master axis, the new values are also
transferred to any other NCUs which wish to control
slave axes as a function of this master axis.
References: /FB/ B3, Multiple Operator Panels and
NCUs
Description of the
workpiece geometry
using geometry axes
(e.g. X, Y, Z)
Path calculations
The path calculation determines the distance to be
traversed in a block, taking into account all offsets
and compensations.
In general: T
Distance =
TO
Absolute
position
(TO) Z
M W
Set-
ZO point TO
Absolute position
Movement
Actual value 1
Actual value 2
Notes
Program name
Example: _MPF100 or
SHAFT or
SHAFT_2
Only the first 24 characters of a program identifier are
displayed on the NC.
Examples:
%_N_SHAFT123_MPF = parts program SHAFT123
or
%flange3_MPF = parts program flange3
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
Numerals
0, 1, 2, 3, 4, 5, 6, 7, 8, 9
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 special numerical values: hexadecimal,
binary
$ System variable identifiers
_ Underscore, belonging to letters
? Reserved
! Reserved
. Decimal point
, Comma, parameter separator
; Comment start
& Format character, same effect as space character
LF Block end
Tab character Separator
Space Separator (blank)
character
Words
In the same way as our language, NC programs are
made up of blocks and each block is made up of Word Word Word
words.
Address
Address
Address
Digits
Digits
Digits
character and a digit or sequence of digits
representing an arithmetic value.
The address character of the word is usually a letter. G01 X-50 S2000
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
Block
digits. The positive leading sign (+) does not have to
be specified.
Block length
A block may contain
• SW 3.x and earlier a maximum of 242 characters
• SW 4 and higher a maximum of 512
characters (including the comment and
end-of-block character "LF").
Example:
N10 G… X… Y… Z… F… S… T… D… M… H…
Address Meaning
N Address of block number
10 Block number
G Preparatory function
X,Y,Z Preparatory information
F Feed
S Speed
T Tool
D Tooloffset number
M Miscellaneous function
H Auxiliary function
Main block/subblock
There are two types of blocks:
Block number
Main blocks are identified by a main block number. A
main block number comprises the character ":" and a
positive whole number (block number). The block
number always appears at the start of a block.
Addresses
Addresses are fixed or adjustable identifiers for axes
(X, Y, ...) SpindleSpeed (S), Feed (F), Circleradius
(CR) etc.
Example:
N10 X100
Important addresses
"fixed"
These address names are available for a specific
function.
Modal/non-modal addresses
Modal addresses remain valid with the programmed
value (in all subsequent blocks) until a new value is
programmed at the same address.
Non-modal addresses only apply in the block in
which they were programmed.
Example:
N10 G01 F500 X10
N20 X10 ;Feed remains operative
until a new feed value
is entered.
Example: FA[U]=400;
Axis-specific feed for U axis
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 with an "="
sign.
Example:
X7 ;No "=" required, 7 is a value, but the "=" character can also be used here
X4=20 ;Axis X4 ("=" required)
CR=7.3 ;2 letters ("=" required)
S1=470 ;Speed for 1st spindle 470rpm
M3=5 ;Spindle stop for 3rd spindle
The extended address notation is only permitted for the following direct addresses:
X, Y, Z Axis addresses
I, J, K Interpolation parameters
S Spindle speed
SPOS, Spindle position
SPOSA
M Miscellaneous functions
H Auxiliary functions
T Tool number
F Feedrate
Example:
S[SPINU]=4 ;Speed for the spindle whose number is stored in the variable SPINU
70
M[SPINU]=3 ;Clockwise rotation for the spindle whose number is stored in the variable SPINU
T[SPINU]=7 ;Selection of the tool for the spindle whose number is stored in the variable
SPINU
Fixed addresses
The following addresses are set permanently:
Variable addresses
Addresses can be defined either as an address letter
(with numerical extension if necessary) or as freely
selected identifiers.
Example:
X1, Y30, U2, I25, E25, E1=90, …
Address identifier:
The address notation can be expanded by adding
further letters.
Example:
CR e.g. for circle radius
XPOS
Operators/mathematical functions
+ Addition
- Subtraction
* Multiplication
/ Division
Notice: (Type INT)/(Type INT)=(Type REAL); e.g. 3/4 = 0.75
DIV Division, for variable types INT and REAL
Notice: (Type INT)DIV(Type INT)=(Type INT); e.g. 3 DIV 4 = 0
MOD Modulo division (only type INT) produces remainder of INT division, e.g. 3 MOD 4=3
: Chain operator (for FRAME variables)
Sin() Sine
COS() Cosine
TAN() Tangent
ASIN() Arcsine
ACOS() Arccosine
ATAN2() Arctangent2
SQRT() Square root
ABS() Absolute number
POT() 2nd power (square)
TRUNC() Truncate to integer
ROUND() Round to integer
LN() Natural logarithm
EXP() Exponential function
== Equal to
<> Not equal to
> Greater than
< Less than
>= Greater than or equal to
<= Less than or equal to
AND AND
OR OR
NOT Negation
XOR Exclusive OR
Value assignments
Values can be assigned to the addresses. The method
of value assignment depends on the type of address
identifier.
Examples:
X10 ;Value assignment (10) to address X, "=" not required
X1=10 ;Value assignment (10) to address (X) with numeric extension (1), "="
required
FGROUP(X1, Y2) ;Axis names from passed parameters
AXDATA[X1] ;Axis name as an index when accessing axis data
AX[X1]=10 ;Indirect axis programming
X=10*(5+SIN(37.5) ;Value assignment by means of a numeric expression, "=" required
)
Identifiers
Structure
The identifiers are composed of up to 32 characters.
The following characters may be used:
• Letters
• Underscore symbols
• Numerals
Variable identifiers
Array identifiers
Data types
Constants
Integer constants:
Integer with or without leading sign, e.g. for assigning
a value to an address
Examples:
X100 ;Assignment of the value +100 to address X
X-100 ;Assignment of the value –100 to address X
Real constants:
Real number, e.g. with decimal point, with or without
leading sign, e.g. for assigning a value to an address
Example:
X10.25 ;Assignment of the value +10.25 to address X
X-10.25 ;Assignment of the value –10.25 to address X
X0.25 ;Assignment of the value +0.25 to address X
X.25 ;Assignment of the value +0.25 to address X without leading "0"
X=-.1EX-3 ;Assignment of the value –0.1*10-3 to address X
Hexadecimal constants
Constants can also be interpreted in hexadecimal
format. The letters "A" to "F" stand for the digits 10
to 15.
Binary constants
Constants can also be interpreted in binary format. In
this case, only the digits "0" and "1" are used.
Program section
A program section consists of a main block and
several subblocks.
Examples:
:10 D2 F200 S900 M3
N20 G1 X14 Y35
N30 X20 Y40
N40 Y-10
...
N100 M30
Skipping blocks
N10 ...
Blocks which are not to be executed on every
Program execution
/N20 ...
program pass can be skipped (e.g. program dry run).
N30 ...
Blocks which are to be skipped are marked with an
/N40 ...
oblique "/" in front of the block number. Several
/N50 ...
consecutive blocks can also be skipped. The
/N60 ...
instructions in the skipped blocks are not executed;
N70 ...
the program continues with the next block which is
N80 ...
not skipped.
N90 ...
N100 ...
N110 ...
N120
Examples:
N10 … ;is executed
/N20 … ;skipped
N30 … ;is executed
/N40 … ;skipped
N70 … ;is executed
SW 5 and higher
Up to eight skip levels can be programmed. Only one
skip level can be specified per NC block:
/ ... ;Block is skipped (1st skip level)
/0 ... ;Block is skipped (1st skip level)
/1 N010 ... ;Block is skipped (2nd skip level)
/2 N020 ... ;Block is skipped (3rd skip level)
...
/7 N100 ... ;Block is skipped (8th skip level)
SW 6.3 and higher
Up to 10 skip levels can be programmed. Only one
skip level can be specified per NC block:
/8 N080... ;Block is skipped (9th skip level)
/9 N090... ;Block is skipped (10th skip level)
Machine manufacturer (MH2.2)
The number of skip levels that can be used depends
on a display MD.
Block skipping of levels /0 to /9 is activated by an
operator action (see /BA/ Operator's Guide, program
control menu in Machine operating area) or by the
programmable controller.
Comments
To make NC programs easier to understand for other
users and programmers, it is advisable to insert
meaningful comments in the program.
Programming messages
Example:
N10 MSG ("Roughing the contour") ;Activate message
N20 X… Y…
N …
N90 MSG () ;Clear message from N10
Examples:
N10 R12=$AA_IW [X] ;Current position of the X axis in R12
N20 MSG (″check position of X axis″<<R12<<″″)
N …
N90 MSG () ;Clear message from N20
or
N20 MSG (″check position of X axis″<<$AA_IW[X]<<″″)
Setting alarms
Example:
N100 SETAL (65000) ;Set alarm no. 65000
Example:
SETAL(<alarmnumber> , <string>)
Variable user texts can be defined in these para-
meters. Predefined parameters with the following
meaning are also provided:
%1 = channel number
%2 = block number, label
%3 = text index for cycle alarms
%4 = additional alarm parameter
Programming example
Programming example
%_N_RAISED_BOSS_MPF
N005 MSG ("Traverse axes to tool change location")
N010 START01:SUPA G0 G70 Z0 D0
N015 SUPA X0 Y0
;********************Tool change********************
N020 MSG ("Tool change active")
N025 T1 M6 ; d = 3 inch face cutter
N030 MSG () ; clears the message from block N020
N035 MSG ("Face milling Z=0 workpiece surface")
N040 G0 G54 X-2 Y.6 S800 M3 M8
N045 Z1 D1
N050 G1 Z0 F50
N055 X8 F25
N060 G0 Y3.5
N065 G1 X-2
N070 SUPA G0 Z0 D0 M5 M9
;********************Tool change********************
N075 T2 M6 ; d = 3 inch facing tool
MSG ("Side machining")
N080 G0 X-1 Y.25 S1200 M3 M8
N085 Z1 D1
N090 G1 Z-.5 F50
N095 G42 X.5 F30
N100 X5.5 RNDM=-.375 ; Modal rounding Radius=0.375
N105 Y3.625
N110 X.5
N115 Y.25
N120 X=IC(.375) RNDM=0 ; Needed for edge rounding
N125 G40 G0 Y-1 M5 M9 ; Rapid traverse to initial setting
N130 Z1
N135 X-1 Y0
N140 Z-.25
;********************Continue to use 1-inch mill****************
MSG ("Side Cut Top Boss")
N145 G01 G41 X1 Y2
N150 G2 X1.5476 Y3.375 CR=2
N155 G3 X4.4524 CR=3
N160 G2 Y.625 CR=2
N165 G3 X1.5476 CR=3
N170 G2 X1 Y2 CR=2
N175 G0 G40 X0
N180 SUPA G0 Z0 D0 M5 M9 ; Z approaches tool change position
N185 SUPA X0 Y0 ; X and Y to tool change position
;********************Tool change********************
N190 T3 M6 ; 27/64 drill
MSG ("Drill 3 holes")
N195 G0 X1.75 Y2 S1500 M3 M8 ; approach first drill hole
N200 Z1 D1
N205 MCALL CYCLE81 (1,0,.1,-.5,)
N207 X1.75 ; drill first hole
N210 X3 ; drill second hole
N215 X4.25 ; drill third hole
N220 MCALL
N221 SUPA Z0 D0 M5 M9 ; Delete modal call. Z axis traverses to machine zero
N225 SUPA X0 Y0
MSG ()
N230 M30 ; End of program
6.0
5.0
1/2-13
1.4524
X 1.0 DP
4.0 1.375
1.25
2.0
3.5 2.5
2.0 R
0.75 0.75
0.25
Dimensions in inches
0.25
0.25
Side view
Dimensions in inches
Programming example
45°
X
R8
R3
R3
R3
Ø 50
R10
Ø 35
Ø 30
Ø 16
Z
4
12
15
18
20
40
57
60
62
70
80
Notes
Positional Data
3.3 Absolute dimensions for rotary axes, DC, ACP, ACN .............................................. 3-89
3.5 Zero offset (frame), G54 to G57, G505 to G599, G53, G500/SUPA ........................ 3-94
Incremental dimensioning
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.
Sequence
Y
Absolute dimensioning, G90
The dimensions refer to the origin of the active
coordinate system. You program the point to which
the tool is to travel, e.g. in the workpiece coordinate
G91
35
system.
G90
85
20
Incremental dimensioning,
The dimensions refer to the last point approached.
30
Additional notes
X
The commands G90 and G91 generally
apply to all axes programmed in subsequent NC
blocks.
Both commands are modal.
G91
G90
On conventional turning machines it is standard
practice to interpret incremental NC blocks in the
Ø 25
transverse axis as radius values, while diameter
dimensions are valid for absolute coordinates. This Z
G91 7.5
conversion for G90/G91 is performed using the
commands DIAMON, DIAMOF or DIAM90. G90
Programming example Z X
The traverse paths are entered in absolute
5
X
20 25
2.5
Ø 11
Z
15
21
27
Programming
Incremental dimensioning G91 or
X=IC(…) Y=IC(…) Z=IC(…)
• without traversing through the active tool offset
SD 42442 TOOL_OFFSET_INCR_PROG = 0
• without traversing through the active zero offset
SD 42440 FRAME_OFFSET_INCR_PROG = 0
SD 42440 FRAME_OFFSET_INCR_PROG
= 0 The active zero offset is not traversed.
SD 42442 TOOL_OFFSET_INCR_PROG
= 0 The active tool offset is not traversed.
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 SD
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)
Function
With the above parameters you can define the
desired approach strategy for positioning rotary axes.
Sequence
DC Maximum
Absolute dimensioning with DC traversing range
ACP ACN
Absolute dimensioning with ACP
The rotary axis travels to the positions programmed
in absolute coordinates in the positive direction of
axis rotation (counterclockwise).
Additional notes
All of the commands are modal.
You can also use DC, ACP and ACN for spindle
positioning from zero speed.
Example:
SPOS=DC(45)
Programming example
Z X
Machining on a rotary table: The tool is stationary, the
table rotates through 270° in clockwise direction to
5
X
270°
Function
Depending on the dimensions in the production
drawing, you can program workpiece geometries
alternately in metric measures and inches.
Sequence
G70 or G71
You can instruct the control to convert the following
geometrical dimensions (with necessary deviations)
into the system of units not set and then enter them
directly (see examples):
• Positional data X, Y, Z, …
• Intermediate point coordinates I1, J1, K1
interpolation parameters I, J, K and circle radius
CR in circle programming
• Thread lead
• Programmable zero offset (TRANS)
• Polar radius RP
G700 or G710
In SW 5 and higher, the controller interprets all
feedrates used with G700/G710 in the programmed
system of units, unlike G70/G71.
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 Y
Change between metric and imperial input with basic G70
3.54"
3.22" G71
30 X
20
1.18"
2.75"
90
3.5 Zero offset (frame), G54 to G57, G505 to G599, G53, G500/SUPA
Programming
Call
G54 or G55 or G56 or G57 or G505 … G599
Deactivate
G53 or G500 or SUPA or G153
Function Milling:
system. Y
It is therefore possible to call up cross-program zero
points for different fixtures with a G command.
G54
X
X
For turning, e.g. the offset value for tightening the Turning:
chuck is entered in G54.
M W
G54
Sequence Y
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 Y
M
Y
pallet according to the zero offset values G54 to G56,
are machined successively.
X
The machining sequence is programmed in
Y Y
subprogram L47.
X X
6
G5
G55
54
X
G
M
TRANS X10 M0
Function Milling:
Infeed
contour is to be machined also defines the following
functions:
In
fee
d d
In fee
Sequence Turning:
Note
The tool length components can be calculated
according to the rotated working planes with the
functions for "Tool length compensation for orientable
tools". For more information on this calculation type,
please refer to Section "Tool Offsets".
The offset plane is selected with CUT2D, CUT2DF.
For more information see Section "Tool Offsets".
Additional notes
The control provides convenient coordinate
transformation functions for the spatial definition of
the working plane.
For further information, please refer to Section
"Coordinate system offset".
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 G17 call the working plane, in this case X/Y T, D tool call.
The length compensation is performed in the Z direction.
N20 G1 G41 X10 Y30 Z-5 F500 The radius compensation is performed in the X/Y plane.
N30 G2 X22.5 Y40 I50 J40 Circular interpolation / tool radius compensation in the X/Y
plane.
G25, X Y Z Lower working area limitation, value assignment in the channel axes*
G26, X Y Z Upper working area limitation, value assignment in the channel axes*
WALIMON, Activate working area limitation
WALIMOF, Deactivate working area limitation
* Value assignments in the basic coordinate system
Function
X
G25/G26 limits the working area in which the tool can
Protection zone
traverse in all channel axes.
Working area
The axial setting data define the axes for which the
working area limitation is valid.
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.
G2
5Y
6X
Basic G2
The coordinates for the individual axes apply in the coordinate
system X
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.
Additional notes
Additional notes
G25/G26 can also be used to program limits for
spindle speeds at the address S.
For further information, please refer to Chapter 7
"Feed control and spindle motion".
80
against damage.
Default setting: WALIMON Working area
M W Z
B
80
X-
300
30
Function
When the machine has been powered up (where
incremental position measurement systems are
used), all of the axis slides must approach their
reference point.
Only then can traversing movements be
programmed.
Sequence
The speed at which the axis slide travels is defined in
the machine data and cannot be programmed.
Programming example
When the measurement system is changed, the
reference point is approached and the workpiece
zero is initialized.
Notes
4.2 Traversing commands with polar coord., G110, G111, G112, AP, RP .................. 4-110
4.3 Rapid traverse movement, G0, RTLION, RTLIOF (SW 6.1 and higher) ............... 4-114
4.13 Stop with thread cutting, LFOF, LFON, LFTXT, LFWP, LFPOS ............................ 4-158
Turning:
X
5
4
3
2
1
4.2 Traversing commands with polar coord., G110, G111, G112, AP, RP
Programming
Define pole:
G110, G111, G112 X… Y… Z…
G110, G111, G112 AP=… RP=…
All the commands relating to pole input must be programmed in a separate NC block
Function Y
162° 18°
Polar coordinates can be used to program these
dimensions directly in accordance with the drawing.
n
234° 306° X
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.
Cylinder 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
Z
cylindrical coordinates.
Example: G17 G0 AP… RP… Z…
RP
AP
30°
If no pole is specified, the origin of the active Pole 1
workpiece coordinate system applies.
G111(Y) X
Polar angle AP
Value range 0…±360°.
Y
When absolute dimensions are specified, the angular
reference is based on the horizontal axis of the
0)
working plane, e.g. X axis with G17. The positive
=I 0
(2
AP P=5
C
direction of rotation is counter-clockwise.
A
0
When incremental coordinates are entered =3
AP
(AP=IC…), the last angle programmed is taken as the
reference. 20°
The polar angle is stored until a new pole is defined
30°
or the working plane is changed.
X
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.
Additional notes
In the NC program you can switch between polar and
Cartesian coordinates, block by block.
Programming example Y
72°
38
72°
X
43
Programming
G0 X… Y… Z …
G0 AP=… RP=…
RTLIOF, RTLION (SW 6.1 and higher)
Function
You can use the rapid traverse movements to
position the tool rapidly, to travel round the workpiece
or to approach tool change locations.
Sequence
Z
The tool movement programmed with G0 is executed
at the highest possible speed (rapid traverse). The
rapid traverse speed is defined separately for each
Y
axis in machine data.
id t
rap
If the rapid traverse movement is executed f the vemen
ho o
Pat erse m
simultaneously on several axes, the rapid traverse trav
speed is determined by the axis which requires the Path
section (Z)
most time for its section of the path.
Path section (Y)
Path section (X)
Additional notes
G0 is modal.
Function
SW 6.1 and higher
Traversing path axes as positioning axes
with G0
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.
• Non-linear interpolation: (SW 6 and higher)
Each path axis is interpolated as an individual
(positioning) axis independently of the other axes
involved in the rapid traverse movement.
Sequence
Traversing path axes as positioning axes with G0
Example:
G0 X0 Y10
G0 G40 X20 Y20
G0 G95 X100 Z100 m3 s100
Additional notes
SW 6.2 and higher
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.
You will find more information in Chapter 7.
N6
0
N2
0
65
20
X
30
80
N80
0
N2
Ø 60
Ø 25
7.5 Z
35
50
Programming
G1 X… Y… Z … F…
G1 AP=… RP=… F…
Function
With G1, the tool travels along straight lines that are
parallel to the axis, inclined or in any orientation in
space. Linear interpolation permits 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
Additional notes
G1 is modal. The spindle speed S and the direction of
spindle rotation M3/M4 must be specified for
machining.
FGROUP can be used to define groups of axes to
which the path feed F applies.
You will find more information in Chapter 5.
80
20
Z
20 X 2
80
15
X+ X+
6
20
Y+ Y- Z+
6 3
20
X- X-
Programming
G2/G3 X… Y… Z… I… J… K…
G2/G3 AP=… RP=…
G2/G3 X… Y… Z… CR=…
G2/G3 AR=… I… J… K…
G2/G3 AR=… X… Y… Z…
CIP X… Y… Z… I1=… J1=… K1=…
CT X… Y… Z…
Function
Circular interpolation permits machining of full circles
or arcs.
Sequence
Z
Specification of working plane
The control needs the working plane parameter (G17
to G19) in order to calculate the direction of rotation for
the circle – G2 is clockwise/G3 is counterclockwise. It
Y
is advisable to specify the working plane generally. X
Exception: G3 G2
You can also machine circles outside the selected
working plane (not with arc angle and helix G2 G3
parameters). In this case, the axis addresses that you G3 G2
specify as an end point determine the circle plane.
Additional notes
Y
G2/G3 are modal.
X
7
You can use FGROUP to specify which axes are to G1
be traversed with a programmed feedrate.
You will find more information in Chapter 5. G1
9
The control provides a range of different ways to
G1
program circular movements. This allows you to 8
implement almost any type of drawing dimension
directly.
Z
For detailed descriptions please refer to the following
pages.
Circle starting
You program the absolute center point non-modally Y point
30.211
J
J = AC(...)
N20 G3 X17.203 Y38.029 I–17.5 J–30.211
50.000
Circle end point
38.029
F500
.
50.000
Example for absolute dimensions: X
N10 G0 X67.5 Y80.211 17.203 17.500
N120 G0 X12 Z0
N125 G1 X40 Z-25 F0.2 Z
N130 G3 X70 Z-75 I=AC(33.33) 25
Ø 40
Ø 70
K=AC(-54.25) 75
N135 G1 Z-95 95
80.511
the leading sign +/– to indicate whether the traversing
angle is to be greater than or less than 180°. A
positive leading sign can be omitted.
38.029
The identifiers have the following meanings:
CR = +...
CR=+…: Angle less than or equal to 180°
X
CR=–…: Angle more than 180°
17.203
67.500
Example:
Example: Turning:
N125 G1 X40 Z-25 F0.2
N130 G3 X70 Z-75 CR=30
N135 G1 Z-95 X
30
Z
25
Ø 40
Ø 70
75
95
30.211
Full circles (traversing angle 360°) cannot be
4°
J
13
0.
programmed with AR=, but must be programmed
14
using the circle end point and interpolation
parameters.
I
Example: 50.000
38.029
Arc angle
N10 G0 X67.5 Y80.211
N20 G3 X17.203 Y38.029 AR=140.134 F500
or X
N20 G3 I–17.5 J–30.211 AR=140.134 F500 17.203 17.500
50.000
Example: Turning:
N125 G1 X40 Z-25 F0.2
N130 G3 X70 Z-75 AR=135.944
or
X
N130 G3 I-3.335 K-29.25 AR=135.944
or
2 . 32 6°
14
N130 G3 I=AC(33.33) K=AC(-54.25)
AR=135.944 30
N135 G1 Z-95
Z
25
Ø 33.33
Ø 40
54.25
95
13
00
The following rule applies:
4.9
2
A P=
=3
RP
The pole lies at the circle center point.
80.511
The polar radius corresponds to the circle radius.
50.000
1
11
Example:
G
N10 G0 X67.5 Y80.211
N20 G111 X50 Y50 X
N30 G3 RP=34.913 AP=200.052 F500 50.000
67.500
Example: Turning:
N125 G1 X40 Z-25 F0.2
N130 G111 X33.33 Z-54.25
N135 G3 RP=30 AP=142.326
X
N140 G1 Z-95
2 . 32 6°
14
30
Z
25
Ø 33.33
Ø 40
54.25
95
50
113.3
269.3° J
70
44.48
I
X
90
115
133
Turning:
2 . 3 26 °
14
5. 9 44°
13
30
Z
25
Ø 33.33
Ø 12
Ø 70
Ø 40
54.25
75
95
N.. ...
N120 G0 X12 Z0
N125 G1 X40 Z-25 F0.2
N130 G3 X70 Y-75 I-3.335 K-29.25 Circle end point, center point in
incremental dimensions
or
N130 G3 X70 Y-75 I=AC(33.33) Circle end point, center point in absolute
K=AC(-54.25) dimensions
or
N130 G3 X70 Z-75 CR=30 Circle end point, circle radius
or
N130 G3 X70 Z-75 AR=135.944 Arc angle, circle end point
or
N130 G3 I-3.335 K-29.25 AR=135.944 Arc angle, center point in incremental
dimensions
or
N130 G3 I=AC(33.33) K=AC(-54.25) Arc angle, center point in absolute
AR=135.944 dimensions
or
N130 G111 X33.33 Z-54.25 Polar coordinates
N135 G3 RP=30 AP=142.326 Polar coordinates
N140 G1 Z-95
N.. ...
J1
X
Z
K1
CIP is modal.
35.35
60
X Z
80
2
130
6
10
Turning:
Ø 93.33
Ø 70
Ø 40
Z
25
54.25
75
95
CT is modal.
Frame change
If a frame change takes place between the block
defining the tangent and the CT block, the tangent is
also subjected to this change.
Limit case
If the extension of the start tangent runs through the
end point, a straight line is produced instead of a
circle (limit case: circle with infinite radius). In this
special case, TURN must either not be programmed
or the value must be TURN=0.
Additional notes
When the values tend towards this limit case, circles
with an unlimited radius are produced and machining
with TURN unequal 0 is generally aborted with an
alarm due to violation of the software limits.
Y with TRC
30
15
X
30
50
60
70
80
N10 G0 X0 Y0 Z0 G90 T1 D1
N20 G41 X30 Y30 G1 F1000 Activate tool radius compensation (TRC)
N30 CT X50 Y15 Program circle with tangential transition
N40 X60 Y-5
N50 G1 X70
N60 G0 G40 X80 Y0 Z20
N70 M30
Turning:
Z
30
Ø 23.293
Ø 58.146
Ø 40
Ø 70
42
Programming
G2/G3 X… Y… Z… I… J… K… TURN=
G2/G3 X… Y… Z… I… J… K… TURN=
G2/G3 AR=… I… J… K… TURN=
G2/G3 AR=… X… Y… Z… TURN=
G2/G3 AP… RP=… TURN=
Function
Helical interpolation (helix interpolation) can be used
to manufacture threads and oil grooves, for example.
Sequence
In helical interpolation, two movements are
superimposed and executed in parallel:
• a horizontal circular movement on which
• a vertical linear movement is superimposed.
The circular movement is performed on the axes
specified by the working plane.
Example: Working plane G17, axes for circular
interpolation X and Y.
The infeed movement is performed on the
perpendicular infeed axis, in this case Z.
Motional sequence
1. Approach starting point
Starting point
2. With TURN= execute the full circles programmed
3. Approach the circle end point, e.g. as a partial
1st full circle
revolution
2nd full circle
4. Execute steps 2 and 3 across the infeed depth.
3rd full circle
The lead with which the helix is to be machined is
calculated from the number of full circles plus the
programmed end point - executed across the infeed
depth.
End point as
partial revolution
Programming the end point for helical interpolation Target point
Please refer to circular interpolation for a detailed
description of the interpolation parameters.
Additional notes
For helical interpolation, it is advisable to specify a
programmed feedrate override (CFC). You will find
more information in Chapter 5.
Programming example
Helical interpolation
Y Y
32.99
20
X
5
Z
20 -5
27.5 -20
Programming
INVCW X... Y... Z... I... J... K... CR=...
INVCCW X... Y... Z... I... J... K... CR=...
INVCW I... J... K... CR=... AR=...
INVCCW I... J... K... CR=... AR=...
Function
The involute of the circle is a curve traced out from
the end point on a "piece of string" unwinding from
the curve. Involute interpolation allows trajectories
along an involute.
When paths perpendicular to the active plane are
also programmed, it is possible to traverse an
involute in space (comparable to helical interpolation
with circles).
Additional notes
For further information about machine data and
supplementary conditions that are relevant with
respect to involute interpolation, please see
References: /FB1/, A2 Subsection 2.12.2
Settings for involute interpolation.
Sequence
Involute interpolation takes place in the plane in Y
Supplementary condition R
X
φ0
φ
Both the start point and the end point must be outside
Base circle
the area of the base circle of the involute (circle with
radius CR around the center point determined by I, J
and K). If this condition is not fulfilled, an alarm is
generated and the program run aborted.
End point
Programming methods
1. Direct programming of the end point with X, Y or X,
Y, Z
Additional notes
There are further options when the angle of rotation is
programmed with AR. Two different involutes can be
implemented (see diagram) by specifying the radius
and center point of the base circle as well as the start
point and direction of rotation (INVCW/INVCCW).
The selected path must be defined unambiguously by
the sign of the angle.
The two involutes defined by the start point and the
base circle are shown in the diagram above. In this
case, end point 1 is approached when AR > 0 is
programmed and end point 2 when AR < 0 is
programmed.
Accuracy
If the programmed end point does not lie exactly on
the involute defined by the start point and base circle,
interpolation takes place between the two involutes
defined by the start or end point (see diagram). The
Start point
R
Programming examples
Counterclockwise involute according to
Example 1
programming method 1 from start to end
point and back again (clockwise involute)
Programming
X2… ANG…
Machine manufacturer
The names for angle (ANG), radius (RND) and chamfer (CHR)
can be set in MD, see /FBFA/ FB ISO Dialects, Chapter 6.
Function
X
The end point is defined through specification of
• the angle ANG and
• one of the two coordinates X2 or Z2. X2, Z2
ANG
X1, Z1
Programming example
N20 X88.8 ANG=110 oder (Z39.5 ANG=110) Straight line with specified angle
N30 ...
Programming
ANG1… or X1… Z1…
X3… Z3 ANG2… X3… Z3…
Machine manufacturer
The names for angle (ANG), radius (RND) and chamfer (CHR)
can be set in MD, see /FBFA/ FB ISO Dialects, Chapter 6.
Function
X
The intersection of the two straight lines can be X3, Z3
X1, Z1
Programming example
Programming
X2… Z2… or ANG1…
X3… Z3… X3… Z3… ANG2…
X4… Z4… X4… Z4…
RND function
X Can also be
radius or chamfer
The intersection of the straight lines can be designed
as a corner, a curve or a chamfer. The end point of X3, Z3 or RND
or CHR
X2, Z2
X4, Z4
ANG1
X1, Z1
Programming example
Function
If the address letter A appears in an NC block, either
none, one or both of the axes in the active plane may
also be programmed.
If none of the axes in the active plane is programmed,
the block is either the first or second block of a
contour consisting of two blocks. If it is the second
block in this type of contour, it indicates that the start
and end points in the active plane are identical. The
contour then comprises at most a motion
perpendicular to the active plane.
If exactly one axis in the active plane is programmed,
then it is either a single straight line whose end point
is uniquely defined by the angle and programmed
Cartesian coordinate, or it is the second block in a
contour definition comprising two blocks. In the latter
case, the missing coordinate is set to match the last
reached (modal) position.
If two axes are programmed in the current plane, it is
the second block of a contour that consists of two
blocks. If the current block was not preceded by a
block with angle programming and no programmed
axes in the current plane, the block in question is not
permissible.
Angle A must only be programmed for linear or spline
interpolation.
Face thread
G33 X… I… SF=…*
Function
The following types of thread can be machined with
G33:
Cylindrical, taper or face threads, single or multiple
threads, right or left-handed threads.
Sequence
Operating principle
The control calculates the required feedrate from the
programmed spindle speed and the thread lead. The
turning tool traverses across the length of the thread ad
Le
in the longitudinal and/or facing direction at this
feedrate. The feedrate F is not considered for G33,
the limitation to maximum axis speed (rapid traverse)
is monitored by the control.
Fe
ed
rat
e
Speed
Cylinder thread
A cylinder thread is described by the thread length X
and thread lead.
Run-out path
The thread length is entered in absolute or
Run-in path
Z
incremental dimensions with one of the Cartesian
coordinates X, Y or Z. The Z direction is preferred on K
turning machines. Allowance must also be made for
the run-in and run-out paths across which the feed is
accelerated or decelerated.
Face thread
X
The face thread is described by
• Thread diameter, preferentially in X direction and
• Thread lead, preferentially with I.
Diameter
Otherwise, the procedure is the same as for
cylindrical threads.
I
Lead
Taper thread
X
The taper thread is described by the end point in the K
longitudinal and facing direction (taper contour) and
the thread lead. <45°
Z
The taper contour is entered in Cartesian coordinates
X, Y, Z in absolute or incremental dimensions - X
preferentially in the X and Z direction for machining
on turning machines. Allowance must also be made
I
for the run-in and run-out paths across which the feed >45°
is accelerated or decelerated.
Example: SF=45 Z
Meaning: Start offset 45°
Value range: 0.0000 to 359.999 degrees
Right-hand/left-hand threads
Right-hand or left-hand threads are set according to
the spindle direction:
M3: Clockwise
M4: Counterclockwise
Thread chains
By programming several G33 blocks consecutively, X
Programming example
X
Machining a taper thread
Ø 110
Ø 50
Z
60
Programming example
X
Machining a double cylindrical thread in offset steps
with starting point offset 180°. Start point 0°
Ø 100
Z
N10 G1 G54 X99 Z10 S500 F100 M3 Zero offset, approach start point, spindle
on
N20 G33 Z-100 K4 Cylindrical thread: end point in Z
N30 G0 X102 Retract to starting position
N40 G0 Z10
N50 G1 X99
N60 G33 Z-100 K4 SF=180 2nd cut: Starting point offset 180°
N70 G0 X110 Retract tool
N80 G0 Z10 End of program
N90 M30
Programming
DITS=value
DITE=value
Function
The commands DITS (Displacement Thread Start)
and DITE (Displacement Thread End) can be used to
define the path ramp for acceleration and
deceleration, in order to modify the feedrate if the tool
run-in and run-out paths are too short:
Additional notes
• DITE acts at the end of the thread as an
approximate distance. This achieves a smooth
change in the axis movement.
• When a block containing command DITS and/or
DITE is loaded to the interpolator, the path
programmed in DITS is transferred to SD 42010:
THREAD_RAMP_DISP[0] and the path
programmed in DITE to SD 42010
THREAD_RAMP_DISP[1].
• The programmed run-in path is handled
according to the current setting (inches, metric).
Programming example
N...
N40 G90 G0 Z100 X10 SOFT M3 S500
N50 G33 Z50 K5 SF=180 DITS=1 DITE=3 ;Start of corner rounding with Z=53
N60 G0 X20
Programming
G34 X… Y… Z… I… J… K… F… Progressive change in thread lead
(tapping with linear pitch increase)
G35 X… Y… Z… I… J… K… F… Degressive change in thread lead
(tapping with linear pitch decrease)
Function
Functions G35/G35 can be employed to produce
self-cutting threads.
Sequence
If you already know the initial and final lead of a
thread, you can calculate the lead change to be
programmed according to the following equation:
|k2e - k2a|
F = [mm/rev2]
2*IG
Programming example
Programming
G331 X… Y… Z… I… J… K… (Tapping)
G332 X… Y… Z… I… J… K… (Tapping retraction)
Function
With G331/G332 you can rigid tap a thread.
Equipment required: Position-controlled spindle with
position measuring system
Sequence
Z
The spindle must be prepared for tapping
withSPOS/SPOSA. You will find more information in
Chapter 7.
X
G331: Tapping
Tapping is described by the drilling depth (end point
of the thread) and the lead.
K
Additional notes
Both functions are modal.
The spindle does not operate in axis mode but as a
position-controlled spindle. You will find more
information on handling of the position-controlled
spindle in Chapter 5.
Programming example
Programming
G63 X… Y… Z…
Function
You can use G63 to tap threads with compensating
chuck.
The chuck compensates for any deviations occurring
in the path.
Sequence
Tapping Z
The following are programmed:
• Drilling depth in Cartesian coordinates
X
• Spindle speed and direction
• Feedrate
Retraction movement
Also programmed with G63, but with the reverse
direction of spindle rotation.
Feedrate
Thumb rule:
Feed F in mm/min = spindle speed S
in rpm x thread lead in mm/rev
Additional notes
G63 is modal.
Programming example
Tapping with compensating chuck:
In this example, an M5 thread is to be drilled. The
lead of an M5 thread is 0.8 (specified in table).
4.13 Stop with thread cutting, LFOF, LFON, LFTXT, LFWP, LFPOS
Programming
LFON
LFOF
; from the path tangent (default)
LFTXT
; from the active working plane
LFWP
; from the POLFMASK axis (SW 5 and
LFPOS
higher)
DILF
; several with SW 6 and higher
POLF[geo axis name | machine axis name]=
; SW 7 and higher
POLFMASK(axis name1, ...)
POLFMLIN
Function
The function produces a nondestructive interruption
with thread cutting (G33). The function cannot be used
with tapping (G33). With mixed use of both G33
functions, the response can be parameterized for NC
Stop/NC Reset via the machine data.
Trigger criteria for retraction
• Fast inputs, programmable with SETINT
LIFTFAST (if LIFTFAST option is enabled)
• NC Stop/NC Reset
If fast retraction is enabled with LFON, it is active for
every retraction movement.
Retraction path (DILF)
The retraction path can be defined in the machine data
or by programming. After NC Reset, the value in
MD 21200: LIFTFAST_DIST is still active.
Additional notes
Default settings for NC reset and/or NC start in
MD 20150: GCODE_RESET_VALUES
Programming examples
Example 1
N55 M3 S500 G90 G18 Active machining plane
...
N65 MSG ("Thread cutting")
MM_THREAD:
N67 $AC_LIFTFAST=0 Reset before beginning of thread
N68 G0 Z5
N68 X10
N70 G33 Z30 K5 LFON DILF=10 LFWP ALF=3 Enable fast retraction for thread cutting
Retraction path =10 mm, retraction plane Z/X (due to G18)
Retraction direction -X (with ALF=3; retraction direction +X)
N71 G33 Z55 X15 K5
N72 G1 Deactivate thread cutting
N69 IF $AC_LIFTFAST GOTOB MM_THREAD If thread cutting was interrupted
N90 MSG("")
...
N70 M30
Example 2
N55 M3 S500 G90 G0 X0 Z0
...
N87 MSG ("Tapping")
N88 LFOF Deactivate fast retraction before tapping.
N89 CYCLE... Thread drilling cycle with G33
N90 MSG("")
...
N99 M30
Programming
G75 FP= X1=0 Y1=0 Z1=0 U1=0 …
Function
Sequence
The fixed point approach is described by a fixed point
and axes which are to be traversed to the fixed point
FP.
Programming example
The tool change location is a fixed point which is
defined in the machine data.
This point can be approached in any NC program
with G75.
N10 G75 FP=2 X1=0 Y1=0 Z1=0 Retract from fixed point 2 on X, Y and Z,
e.g. for tool change
N20 G75 X1=0 Approach fixed point X1
N30 M30 End of program
Additional notes
SW 5.3 and higher:
G75 "Approach fixed point" applies all offset values
(DRF, external ZO and overlaid motion). The fixed
point corresponds to the actual value in the MCS.
Changes to the DRF and external zero offset while
the G75 block is being preprocessed and executed in
the main run are not applied. You should prevent this
problem by programming STOPPRE in front of the
G75 block.
Programming
FXS[axis]=…
FXST[axis]=…
FXSW[axis]=…
Explanation
Function
Actual position after
Using the "Travel to fixed stop" function (FXS = Fixed "Travel to fixed stop"
Stop), it is possible to produce defined forces for
clamping workpieces such as those required for
tailstocks, quills and grippers. The function can also Starting position
SW 5 and higher
The limit stop alarm can be suppressed from the
parts program where necessary. This is done by
masking the alarm in a machine data and then
activating the MD by means of NEWCONF.
The "Travel to fixed stop" commands can be called
from synchronized actions/technology cycles. They
can be activated without initiation of a motion, the
torque is limited instantaneously. As soon as the axis
is moved via a setpoint, the limit stop monitor is
activated.
Torque rise ramp, SW5
A rate of rise ramp for the new torque limit can be
defined in MD to prevent any abrupt changes to the
torque limit setting (e.g. insertion of a quill).
Link and container axes, SW 5
Travel to fixed stop may also be used on
- link axes and
- container axes.
The status of the assigned machine axis is
unaffected by container switches.
Sequence
The commands are modal. Addresses FXST and
FXSW are optional: If no parameter is specified, the
last programmed value or the value set in the relevant
machine data applies.
Example:
X250 Y100 F100 FXS[X1]=1 FXST[X1]=12.3 FXSW[X1]=2
Meaning:
Axis X1 travels with feed F100 (parameter optional) to
destination position X=250 mm. The clamping torque is
12.3% of the maximum drive torque. Monitoring is
performed in a 2mm wide window.
Example:
X200 Y400 G01 G94 F2000 FXS[X1] = 0
Meaning:
Axis X1 is retracted from the fixed stop to position
X= 200 mm.
All other parameters are optional.
Example: FXST[X1]=34.57
FXST[X1]=34.57 FXSW[X1]=5
FXSW[X1]=5
Additional notes
Combinability
"Measure and delete distance-to-go" ("MEAS"
command) and "Travel to fixed stop" cannot be
programmed in the same block.
Exception:
One function acts on a path axis and the other on a
positioning axis or both act on positioning axes.
Contour monitoring
Contour monitoring is not performed while "Travel to
fixed stop" is active.
Positioning axes
With "Travel to fixed stop" with POSA axes, the block
change takes place independently of the fixed stop
movement.
Restrictions
Travel to fixed stop cannot be programmed
• for vertical axes,
(function can be used with SW 2.2. and higher on
840D with 611D)
• gantry axes,
• for concurrent positioning axes which are
controlled exclusively by the PLC (FXS must be
selected from the NC program).
• If the torque limit is reduced too far, the axis will
not be able to follow the specified setpoint; the
position controller then goes to the limit and the
contour deviation increases. In this operating
state, an increase in the torque limit may result in
sudden, jerky movements.
To ensure that the axis can follow the setpoint,
check the contour deviation to make sure it is not
greater than the deviation with an unlimited
torque.
Coordinate system
Transverse axis
The two mutually perpendicular geometry axes are
usually designated as follows:
• Longitudinal axis = Z axis (abscissa)
• Transverse axis = X axis (ordinate)
D1
D2
dimension as compared to other axes).
Zero points X X
Machine Workpiece
Programming
DIAMON
DIAMOF
DIAM90 (SW 4.4 and higher)
Explanation
Function
The free choice of diameter or radius dimensions
allows you to program the dimensions straight from
the engineering drawing without conversion. DIAMON X DIAMOF X
After activating DIAMON/DIAM90, diameter
dimensions are defined for the specified transverse
axis.
R15
R10
W W
Diameter values apply to the following data:
Z Z
D20
D30
Additional notes
In SW 4.4 and higher, the command DIAM90 sets
diameter programming for G90 and radius programming
for G91.
Programming example
Programming
CHF=…
CHR=…
RND=…
RNDM=…
FRC=…
FRCM=…
Function
You can insert the following elements at a contour
corner:
• Chamfer or
• Rounding
If you wish to round several contour corners
sequentially by the same method, use command
RNDM "Modal rounding".
You can program the feedrate for the chamfer/rounding
with FRC (non-modal) or FRCM (modal).
If FRC/FRCM is not programmed, then the normal path
feedrate F is applicable.
Sequence
Chamfer, CHF/CHR
CHR
For the chamfer insert another linear part, the
chamfer, between the linear and the circle contours in CH
F
any combination. The chamfer is inserted after the G1
block in which it is programmed. The chamfer is α
always in the plane activated with G17 to G19.
Chamfer
G
1
Example: N30 G1 X… Z… F… CHR=2
N40 G1 X… Z…
X Bisector
or
N30 G1 X… Z… F… CHF=2(cos α ·2)
N40 G1 X… Z… Z
e.g. G18:
Rounding, RND
A circle contour element can be inserted with Rounding
G1
tangential link between the linear and the circle
contours in any combination.
The rounding is always in the plane activated with
G17 to G19. RND=...
The figure to the right shows the rounding between
G
1
two straight lines.
X
Z
e.g. G18:
N30 G1 X… Z… F… RND=2
N40 G3 X… Z… I… K… G3
RND=...
Z
e.g. G18:
No chamfer/rounding is inserted, if
• no straight or circle is available in the plane,
• a movement is taking place outside the plane,
• a plane change is taking place, or
• the number of blocks - which is specified in the
machine data - not containing information for
traversing (e.g. only command output), is
exceeded.
Examples
N110 S1000 M3
N120 X50 G95 F3 FRC=1
...
M02
Path Action
5.1 Exact stop, G60, G9, G601, G602, G603 ............................................................... 5-178
5.2 Continuous-path mode, G64, G641, G642, G643, G644 ....................................... 5-180
Function
The exact positioning stop functions are used to
machine sharp outside corners or to finish inside corners
to size.
Sequence
Exact stop, G60, G9
G9 generates the exact stop in the current block. G60
generates the exact stop in the current block and all
subsequent blocks.
G60 is deactivated by the continuous-path mode
function G64 or G641.Positioning window.
G601, /G602
Block step enable
The movement is decelerated and stopped briefly at
G601
the corner point. With the exact stop criteria G601 and
G602, you determine how accurately the corner point G602
is approached and when the change to the next block
takes place.
Command outputs
In all three cases the following applies:
The auxiliary functions programmed in the NC block
are enabled after the end of the movement.
Programmed path
Traversed
path
with F1
Traversed
path
with F2
F1 < F2
Example:
N10 G601
…
N50 G1 G60 X… Y…
Programming
G64
G641 ADIS=…
G641 ADISPOS=…
G642 ADIS=…
G642 ADISPOS=…
G643 ADIS=…
G643 ADISPOS=…
G644
Function
In continuous-path mode, the contour is machined with
a constant path velocity.
Sequence
Continuous-path mode, G64
C
on
st
In continuous-path mode, the tool travels across
an
t
ve
tangential contour transitions with as constant a path
lo
ci
ty
velocity as possible (no deceleration at block
boundaries). Look Ahead deceleration takes place
before corners (G09) and blocks with exact stop (Look
Ahead, see following pages).
Additional notes
Rounding cannot be used as a substitute for smoothing
(RND). The user should not make any assumptions with
respect to the appearance of the contour within the
rounding area. The type of rounding can depend on
dynamic conditions, e.g. on the tool path velocity.
Rounding on the contour is therefore only practical with
small ADIS values.
RND must be used if a defined contour is to be followed
at the corner in all circumstances.
ADISPOS is used between G0 blocks. This enables the
axis movement to be smoothed substantially and the
traversing time to be reduced during positioning.
If ADIS/ADISPOS is not programmed, a value of zero
applies and the traversing behavior therefore
corresponds to G64. The rounding clearance is
automatically reduced (by up to 36%) for short
traversing distances.
Setting data:
SD 42465: SMOOTH_CONTUR_TOL
This setting data defines the maximum rounding
tolerance for the contour.
SD 42466: SMOOTH_ORI_TOL
This setting data defines the maximum rounding
tolerance for the tool orientation (angular
displacement).
This data is operative only if an orientation
transformation is also active.
Large differences in the settings for the contour
tolerance and tool orientation tolerance will
only have an effect in conjunction with G643.
No rounding block/
no rounding motion
No corner rounding is performed in the following three
situations:
1. The axis stops between the two blocks. This occurs
when ...
• The following block contains an auxiliary function
output before the movement.
• The following block does not contain a path
movement.
• An axis is traversed for the first time as a path axis
for the following block when it was previously a
positioning axis.
• An axis is traversed for the first time as a
positioning axis for the following block when it was
previously a path axis.
• The previous block traverses geo axes and the
following block does not (this is no longer the case
in SW 4 and higher).
• Prior to thread cutting: The following block has
G33 as a preparatory function and the previous
block does not.
• A changeover between BRISK and SOFT occurs.
• Axes involved in the transformation are not
completely assigned to the path motion (e.g. for
oscillation, positioning axes).
Positioning axes
Positioning axes always traverse according to the
exact stop principle, positioning window fine (as for
G601). If an NC block has to wait for positioning axes,
continuous-path mode is interrupted on the path axes.
Command outputs
Auxiliary functions which are enabled after the end of
the movement or before the next movement interrupt
continuous-path mode.
tangential transitions.
e.g. G64 with insufficient
Look Ahead is particularly suitable for the machining of Look Ahead
movement sequences comprising short traverse paths
G60, G603
with high path feedrates.
The number of NC blocks included in the Look Ahead
X
calculation can be defined in machine data. N1 N2 N3 N4 N5 N6 N7 N8 N9
Setting MD 20490
IGNORE_OVL_FACTOR_FOR_ADIS results in block
transitions being smoothed irrespective of the
programmed overload factor.
Programming example
With this workpiece, the two outside corners at the Y Exact stop
Y
70
50
40
10
10 X Z
60
80 7
100
Function
BRISK, BRISKA
The axis slides travel with maximum acceleration until
the feedrate is reached. BRISK enables time-optimized
machining, but with jumps in the acceleration curve.
Setpoint
SOFT, SOFTA
The axis slides travel with constant acceleration until BRISK SOFT
Path veloctity
Additional notes
A change between BRISK and SOFT causes a stop at
the block transition. The acceleration response for the
path axes can be defined in machine data.
Function
DRIVE, DRIVEA
The axis slides traverse at the maximum acceleration Setpoint
Path velocity
acceleration
data until the feedrate speed is reached.
This function allows the acceleration characteristic to
be optimally adapted to a specific motor characteristic,
for example, for stepper motor applications.
Time
Programming
Function
Additional notes
X
Con tou r curve
N1, G 1 N5, G 2
N 6, G 1
N2, G 3 N4, G 3
N7, G 0
N3, G 1
t
N1 N2 N3 N4 N5 N6 N7
t
N1 N2 N3 N4 N5 N6 N7
V Path
G 64 BRISK
t
N1 N2 N3 N4 N5 N6 N7
V Pat h
G 64 SOF T
Rapid
traverse
F
t
N1 N2 N3 N4 N5 N6 N7
Function
Feedforward control reduces the speed-dependent
overtravel when contouring towards zero.
Traversing with feedforward control permits higher path
accuracy and thus improved machining results.
Additional notes
The type of feedforward control and the path axes to which feedforward is to be applied are
determined via machine data.
Function
In machining operations without feedforward control
(FFWON), errors may occur on curved contours as the
result of speed-related differences between setpoint
and actual positions.
The programmable contour accuracy function
CPRECON makes it possible to store a maximum per-
missible contour error in the NC program which must
never be smoothed. The magnitude of the contour error
is specified with setting data $SC_CONTPREC.
On the basis of this data and the servo gain factor
(speed / following error ratio) of the path axes con-
cerned, the control calculates the maximum path speed
at which the contour error produced by the overtravel
does not exceed the minimum value stored in the set-
ting data.
The Look Ahead function allows the entire path to be
traversed with the programmed contour accuracy.
Example:
N10 X0 Y0 G0
N20 CPRECON ;Activate contour accuracy
N30 F10000 G1 G64 X100 ;Machine contour at 10 m/min in
continuous-path mode
N40 G3 Y20 J10 ;Automatic feed limitation in circle block
N50 X0 ;Feed without limitation to 10 m/min
Additional notes
A minimum velocity can be defined in the setting data
$SC_MINFEED; the feed must not be less than this
value.
Programming
G4 F…
G4 S…
(programmed in a separate NC block)
Function
You can use G4 to interrupt workpiece machining
between two NC blocks for the programmed length of
time, e.g. for relief cutting.
Sequence
Example:
N10 G1 F200 Z-5 S300 M3
;Feed F; spindle speed S
N20 G4 F3 ;Dwell time 3s
N30 X40 Y10
N40 G4 S30 ;Dwell for 30 revolutions of
spindle corresponds to S=300
rev/min and 100% speed
override: t=0.1min
N40 X... ;Feed and spindle speed remain
operative
The words with F... and S... are used for time
specifications only in the block with G4.
Any previously programmed feed F and spindle
speed S remain valid.
Function
The control generates an internal preprocessor stop on
access to machine status data ($A...).
If a command which implicitly causes a preprocessing
stop is read in a following block, this block is not
executed until all other blocks which are already
preprocessed and stored have been executed. The
preceding block is halted in exact stop (as with G9).
Example:
N40 POSA[X]=100
N50 IF $AA_IM[X]==R100 GOTOF LABEL1 ; Access to machine status data ($A), the
N60 G0 Y100 control generates an internal preprocessor
N70 WAITP(X) stop
N80 LABEL1:
Frames
6.5 Programmable frame rot. with solid angles, ROTS, AROTS, CROTS ................... 6-218
6.8 Frame generation acc. to tool orient., TOFRAME, TOROT, PAROT ..................... 6-226
6.1 General
What is a frame?
Z1=Z2
Frame is the conventional term for a geometrical Rotation Y1
expression that describes an arithmetic rule, such as around Z axis
Y2
translation or rotation.
et
fs
YM
system.
of
X1
ro
Ze
X2
Possible frames
• Basic frame (basic offset)
• Settable frames (G54...G599) XM
• Programmable frames
References: /PG/, Programming Guide Advanced
Y Y
Turning:
X X
Z Z
X X
Z
Z
Settable instructions
Settable instructions are the zero offsets which can be
TRANS
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.
TRANS
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
TRANS, ROT, SCALE and MIRROR are substituting
instructions.
This means that each of these instructions cancels all
other previously programmed frame instructions.
References
/PGA/ Programming Guide Advanced, Section
"Subroutines, Macros"
Programming
TRANS X… Y… Z… (programmed in a separate NC block)
ATRANS X… Y… Z… (programmed in a separate NC block)
Function Milling:
TRANS
X
54
G
XM
Turning:
M W
TRANS
G54
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.
TRANS
TRANS
X
The machining sequence for this shape is stored in a
subprogram.
Y Y
50
54
X
G
M
10
50
Turning:
M W
130
140
150
N.. ...
N10 TRANS X0 Z150 Absolute offset
N15 L20 Subprogram call
N20 TRANS X0 Z140 (or ATRANS Z-10) Absolute offset
N25 L20 Subprogram call
N30 TRANS X0 Z140 (or ATRANS Z-10) Absolute offset
N35 L20 Subprogram call
N.. ...
6.3.2 G58, G59. Additive programmable zero offsets (SW 5 and higher)
Programming
G58 X… Y… Z… A… (programmed in a separate NC block)
G59 X… Y… Z… A… (programmed in a separate NC block)
Function
G58 and G59 allow translation components of the Z
l
G58 ute Tran
G
slat i
If G58 or G59 is used without a configured fine offset, TRA on
NS
alarm "18312 channel %1 block %2 frame: Fine offset additive Tra.
G59
not configured" is output. XM ATRANS
Programming example
N...
N50 TRANS X10 Y10 Z10 ; absolute translation component X10 Y10 Z10
N60 ATRANS X5 Y5 ; additive translation component X5 Y5
= total offset X15 Y15 Z10
N70 G58 X20 ; absolute translation component X20 + addit. X5 Y5
= total offset X25 Y15 Z10
N80 G59 X10 Y10 ; additive translation component X10 Y10 + absolute X20
Y 10
= total offset X30 Y20 Z10
N...
Programming
ROT X… Y… Z…
ROT RPL=…
AROTX… Y… Z…
AROT RPL=…
ROT, Absolute rotation with reference to the currently valid workpiece zero set with
G54 to G599
AROT, Additive rotation with reference to the currently valid set or programmed zero
point
X Y Z Rotation in space: geometry axes around which the rotation takes place
RPL, Rotation in the plane: Angle through which the coordinate system is rotated
(plane set with G17-G19)
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 wor-
king plane G17 to G19 (or around the perpendicular
infeed axis).
AR
TO
Note
For both instructions, please note the order and direction
of rotation in which the rotations are performed (see next
page)!
Direction of rotation
Z
The following is defined as the positive direction of
rotation:
The view in the direction of the positive coordinate axis + Y
- -
and clockwise rotation.
Order of rotation -
MD 10600: FRAME_ANGLE_INPUT_MODE = 0
• 1: RPY notation
1
• 2: Euler angles
References
/FB1/ Function Description of the Basic Machine,
Chapter "Frames"
direction.
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".
Change of planes
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)
8
r7
40
7
35
12
30
10
X
20
55
Programming example: Z
3D rotation
30°
In this example, paraxial and inclined workpiece
5
surfaces are to be machined in one setting. X
Precondition: The tool must be aligned perpendicular
to the inclined surface in the rotated Z direction. Y
8
r7
12
20
30
10
X
10
45
Programming example:
Multi-face machining Z
100
X
Z
-1 0 0 Y
Y Y
AROT Y90
X Z
X
Y
AROT Z90
Z Z
6.5 Programmable frame rot. with solid angles, ROTS, AROTS, CROTS
Programming
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.
AROTS, Frame rotations with solid angles for spatial orientation of a plane additive,
referred to the currently valid frame with set or programmed zero point.
CROTS, 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.
X Y Z A maximum of two solid angles may be specified.
RPL Rotation in the plane: Angle through which the coordinate system is rotated
(plane set with G17-G19).
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.
Programming
SCALE X… Y… Z… (programmed in a separate NC block)
ASCALE X… Y… Z… (programmed in a separate NC block)
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.
Sequence
Substituting instruction, SCALE X Y Z Z
You can specify an individual scale factor for each axis,
by which the shape is to be reduced or enlarged. The Y
E
AL
the new one.
C
AS
The currently set or last programmed coordinate sys-
tem is used as the reference for the scale change.
AROT
Deactivate scaling factor
TRANS
For all axes:
SCALE (without axis parameter)
Additional notes
If you program an offset with ATRANS after SCALE,
the offset values are also scaled.
Programming example
Y
With this workpiece, the two pockets occur twice, but in
different sizes and at different angles to each other.
20
15
X
15
40
Programming
MIRROR X0 Y0 Z0 (programmed in a separate NC block)
AMIRROR X0 Y0 Z0 (programmed in a separate NC block)
MIRROR, Absolute mirror image with reference to the currently valid coordinate system set with
G54 to G599
AMIRROR, Additive mirror image with reference to the currently valid set or programmed
coordinate system
X Y Z 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.
Sequence
Substituting instruction, MIRROR X Y Z
The mirror is programmed by means of an axial
change of direction in the selected working plane.
MIRROR X
Y
Example: Working plane G17 X/Y
The mirror (on the Y axis) requires a change of direc-
tion on X and is subsequently programmed with
MIRROR X0. X
MIRROR Y
The contour is then mirrored on the opposite side of
the mirror axis Y.
Deactivate mirroring
TRANS
For all axes:
MIRROR (without axis parameter)
Additional notes
The mirror command causes the control to automa- Y
tically change the path compensation commands
(G41/G42 or G42/G41) according to the new
machining direction.
G03 G02
2 1
The workpiece zero is located at the center of the
X X
contours.
X X
3 4
Y Y
Turning:
Spindle 1 Spindle 2
X X
Z Z
M W W1 M1
140 120
600
Programming
Explanation
Example:
N100 G0 G53 X100 Z100 D0
N120 TOFRAME
N140 G91 Z20 ; Frame TOFRAME is included; all programmed geometry axis
N160 X50 ; movements refer to TOFRAME
...
Additional notes
After tool orientation has been programmed with
TOFRAME, all the programmed geometry axis
movements refer to the frame generated by this
programming.
Programming
CORROF(axis,string[axis,string]) or
CORROF(axis,string) or
CORROF(axis) or CORROF()
Sequence
SW 6 and higher CORROF
A preprocessing stop is initiated and the position
component of the deselected overlaid motion (DRF
offset or position offset) is transferred to the position in
the basic coordinate system. Since no axis is traversed,
the value of $AA_IM[axis] does not change. Owing to the
deselected overlaid motion, only the value of system
variable $AA_IW[axis] is altered.
After the position offset, e.g. for one axis, has been
deselected by $AA_OFF, the system variable
$AA_OFF_VAL of this axis is zero.
Additional notes
CORROF is possible only from the parts program, not
via synchronized actions.
Programming examples
• $AA_OFF deselection
7.1 Feed G93, G94, G95 or F..., FGROUP, FGREF .................................................... 7-234
7.4 Positioning spindles (position-controlled axis operation): SPOS, M19, SPOSA .... 7-246
7.7 Feedrate for positioning axes/spindles: FA, FPR, FPRAON, FPRAOF.................. 7-255
7.11 Feedrate optimization for curved path sections, CFTCP, CFC, CFIN .................... 7-265
7.12 Spindle speed S, direction of spindle rotation M3, M4, M5 .................................... 7-267
7.13 Constant cutting rate, G96, G961, G97, G971, LIMS ............................................. 7-270
7.15 Constant workpiece speed for centerless grinding, CLGON, CLGOF.................... 7-275
7.18 Non-modal feedrate: FB=... (SW 5.3 and higher) ................................................... 7-280
Programming
G93, or G94 or G95
F
FGROUP(X, Y, Z, A, B, ...)
FL[axis]=...
FGREF[axis name]=reference radius (SW 5 and
higher)
Function
Y
You can use the above commands to set the feedrates
in the NC program for all axes participating in the
machining sequence.
Movement on X
Note:
The inverse-time feedrate rpm G93 is not implemented
for 802D and up to SW 3.1 for 810D CCU1.
Sequence
Units of measurement for feed F
You can use the following G commands to define the
units of measurement for the feed input. All of the
commands are modal. Input is in mm or inches,
according to the default setting in the machine data.
Feed parameters are not affected by G70/G71.
Feedrate G93 Y
Unit rpm. The inverse-time feedrate specifies the time
required to execute the motion commands in a block.
Example:
N10 G93 G01 X100 F2 means: the programmed path
is traversed in 0.5 min.
Feedrate G94
mm/min or inches/min and deg/min
Feedrate G95
mm/rev or inches/rev with reference to the speed of the
master spindle – generally the cutting spindle or the
main spindle on the turning machine.
Change FGROUP
1. By reprogramming another FGROUP instruction.
Example: FGROUP(X, Y, Z)
F: Tangential velocity
F': Angular velocity
π: Circle constant
D: Diameter
Special situations:
With the following programming:
N100 FGROUP(X,Y,Z,A)
N110 G1 G91 A10 F100
N120 G1 G91 A10 X0.0001 F100
the F value programmed in N110 is evaluated as a rotary
axis feedrate in deg/min, while the feedrate weighting in
N120 is either 100inch/min or 100mm/min depending on
the currently active inch/metric setting.
Example:
There are two orientation axes for a standard 5-axis
transformation, and the effective factor is thus the root of
the product of the two axial factors:
Programming example
Y Y
Helical interpolation. Path axes X and Y traverse with
the programmed feedrate, the infeed axis Z is a syn-
chronized axis.
20
10 X 15 Z
25
Programming
POS[axis]=…
POSA[axis]=...
POSP[axis]=(…,…,…)
FA[axis]=...
WAITP(axis)=… (programmed in a separate NC block)
WAITMC(label)=…
POS [axis]= Position the axis; the next NC block is not enabled until the position has
been reached
POSA [axis]= Position the axis; the next NC block is enabled, even if the position has
not been reached
POSP [axis]=(,,) Approach end position in sections. The first value indicates the end
position; the second the length of the section. Approaching the end
position is defined in the third value with 0 or 1
FA [axis]= Feedrate for the positioning axis, up to 5 per NC block
WAITP (axis) Wait for the axis to finish traversing; WAITP must be programmed in a
separate NC block
WAITMC (label) During the braking ramp, WAIITMC loads the next NC block immediately
when the WAIT marker is received.
Axis Channel axes or geometry axes
Mark, , An axis is only decelerated if the marker has not yet been reached or if an
different search criteria prevents the block change.
Function
Positioning axes are traversed independently of the path
axes at a separate, axis-specific feedrate. There are no
interpolation commands.
Sequence
With the POS/POSA/POSP commands, the positioning
axes are traversed and the sequence of motions
coordinated at the same time.
Example:
N40 POSA[X]=100
N50 IF $AA_IM[X]==R100 GOTOF LABEL1 ; On accessing status data of the machine ($A...),
the control generates an internal preprocessing
stop, processing is halted until all previously
prepared and stored blocks have been executed
in full.
N60 G0 Y100
N70 WAITP(X)
N80 LABEL1:
N..
Programming example
Axis U: Pallet store, transporting the pallet to the working
area
Programming
SPCON or SPCON(n)
SPCOF or SPCOF(n)
Function
In certain cases, it is practical to operate the spindle in
position control mode.
For example, a higher quality can be achieved for thread
cutting operations with G33 and a large pitch.
Note:
The command requires up to three interpolation cycles.
Sequence
The speed is specified with S... M3, M4 and M5 apply to
the directions of rotation and spindle stop. SPCON has
modal action and remains valid until SPCOF.
Additional notes
With synchronized spindle setpoint value linkage, the
master spindle must be operated in position control
mode.
Programming
SPOS=… or SPOS[n]=…
M19 or M[n]=19
SPOSA=… or SPOSA[n]=…
M70 or Mn=70
FINEA=… or FINEA[n]=…
COARSEA=… or COARSEA[n]=…
IPOENDA=… or IPOENDA[n]=…
IPOBRKA=… or IPOBRKA(axis[,REAL]) (programmed in a separate NC block)
WAITS or WAITS(n,m) (programmed in a separate NC block)
SPOS= Position master spindle (SPOS) or spindle number n (SPOS[n]); the next NC
SPOS[n]= block is not enabled until the position has been reached
M19 Position master spindle (M19) or spindle number n (M[n]=19); the next NC block
M[n]=19 is not enabled until the position has been reached. (SW 5.3 and higher)
SPOSA= Position master spindle with SPOSA or spindle number n (SPOSA[n]). The next
SPOSA[n]= NC block is enabled, even if the position has not been reached
M70 Switch over master spindle (M70) or spindle number n (Mn=70) to axis
Mn=70 operation. No defined position is approached. The NC block is enabled after the
switchover has been performed.
FINEA= End of motion when "Exact stop fine" is reached (SW 5.1 and higher)
FINEA[Sn]=
COARSEA= End of motion when "Exact stop coarse" is reached (SW 5.1 and higher)
COARSEA[Sn]=
IPOENDA= End of motion when "IPO stop" is reached (SW 5.1 and higher)
IPOENDA[Sn]=
IPOBRKA= End of motion criterion from moment of application of braking ramp at 100%
IPOBRKA(axis down to end of braking ramp at 0% and identical to IPOENDA (SW 6 and higher)
[,real])= IPOBKRA must be programmed in round parenthesis "()".
WAITS Wait to reach the:
spindle position, spindle stop after M5, spindle speed after M3/M4
WAITS(n,m) WAITS applies to the master spindle, WAITS( ..., ...) for the specified spindle
numbers
n Integers from 1 ... n
m Integers from 1 ... m
Sn nth Spindle number, 0 to max. spindle number
Axis Channel identifier
Percentage specification 100-0% referred to the braking ramp for block changes.
Real If no % is specified, the current value of the setting data is applied.
Function
Angle position
SPOS, M19 and SPOSA can be used to position
spindles at specific angles, e.g. for tool-changing
operations. The spindle can also be operated as a
path axis, synchronized axis or positioning axis at the
address defined in the machine data. When the axis
identifier is specified, the spindle is in axis mode. M70
switches the spindle directly to axis mode.
Example:
N10 M3 S500
...
N90 SPOS[2]=0 or Position control on, spindle 2 positioned to 0,
axis mode can be used in the next block.
M2=70 Spindle 2 is switched to axis mode.
N100 X50 C180 Spindle 2 (C axis) is traversed with linear
interpolation synchronous to X.
N110 Z20 SPOS[2]=90 Spindle 2 is positioned to 90 degrees.
Sequence
Precondition
The spindle must be capable of operation in position
control mode.
Position with SPOSA=, SPOSA[n]=
The block step enable or program execution is not
affected by SPOSA. The spindle positioning can be
performed during execution of subsequent blocks.
The program moves onto the next block if all the
functions (except for spindle) programmed in the
current block have reached their block end criterion.
The spindle positioning operation may be programmed
over several blocks (see WAITS).
Example:
Position spindle 2 at 250° in negative direction of
rotation.
N10 SPOSA[2]=ACN(250) The spindle decelerates if necessary and accelerates in the
opposite direction to the positioning movement (SW 4 and higher).
Value range
Absolute dimensions AC: 0…359.9999 degrees
Incremental dimensions IC: 0…±99 999.999 degrees
Deactivate
SPOS, M19 and SPOSA cause a temporary changeover
to position-control mode until the next M3 or M4 or M5 or
M41 bis M45. If the position control was activated with
SPCON prior to SPOS, then this remains active until
SPCOF is issued.
Programming example
Cross holes are to be drilled in this turned part.
The running drive spindle (master spindle) is stopped
at zero degrees and then successively turned through
90°, stopped and so on. X X
....
N110 S2=1000 M2=3 ; switch on cross drilling attachment
N120 SPOSA=DC(0) ; position main spindle directly at 0°, the program will advance to the next
block immediately
N125 G0 X34 Z-35 ; switch on the drill while the spindle is being positioned
N130 WAITS ; wait until the main spindle reaches its position
N135 G1 G94 X10 F250 ; feedrate in mm/min (G96 is suitable only for the multi-edge turning tool and
synchronous spindle, but not for power tools on the cross slide)
N140 G0 X34
N145 SPOS=IC(90) ; the spindle is positioned through 90° with read halt in a positive direction
N150 G1 X10
N155 G0 X34
N160 SPOS=AC(180) ; the spindle is positioned at 180° with respect to the spindle zero point
N165 G1 X10
N170 G0 X34
N175 SPOS=IC(90) ; the spindle turns in a positive direction through 90° from the absolute 180°
position, ending up in the absolute 270° position
N180 G1 X10
N185 G0 X50
...
Programming example
Y
References
/PGA/ Programming Guide Advanced, Section
"Transformations"
Programming
TRACYL(d) or TRACYL(d,t)
TRAFOOF
Explanation of the
commands
TRACYL (d) Activates the first declared TRACYL function.
TRACYL(d,n) Activates the nth declared TRACYL function. N can be up to 2,
TRACYL(d,1) is the same as TRACYL(d).
d Value for the current diameter of the cylinder to be machined.
TRAFOOF Transformation off
Function
Cylinder surface transformation TRACYL
The TRACYL cylinder surface transformation function
X
can be used to:
Machine
• longitudinal grooves on cylindrical bodies,
• transverse grooves on cylindrical bodies,
Y
• grooves with any path on cylindrical bodies.
References
/PGA/ Programming Guide Advanced, Section
"Transformations"
Programming
FA[axis]=…
FA[SPI(spindle)]=… or FA[S…]=…
FPR (rotary axis) or FPR(SPI(spindle)) or FPR(S…)
FPRAON (axis, rotary axis) or
FPRAON(axis,SPI(spindle)) or FPRAON(axis,S…) or
FPRAON(SPI(spindle),rotary axis) or FPRAON(S…,rotary axis) or
FPRAON(SPI(spindle),SPI(spindle)) or FPRAON(S…,S…) or
FPRAOF(axis,SPI(spindle),…) or FPRAOF(axis,S…,…)
Function
Positioning axes, such as workpiece transport systems,
tool turrets and end supports, are traversed
independently of the path and synchronized axes. A
separate feed is therefore defined for each positioning
axis.
Example: FA[A1]=500
Sequence
Feed FA[…]
The programmed feed is modal. The feed is always G94.
When G70/G71 is active, the unit of measurement is
metric/inches according to the default setting in the
machine data. G700/G710 can be used to modify the
unit of measurement in the program.
Value range
0,001…999 999.999 mm/min, degree/min
0.001…39 999.9999 inch/min
Feed FPR(…)
As an extension of the G95 command (revolutional
feedrate referring to the master spindle), FPR allows the
revolutional feedrate to be derived from any chosen
spindle or rotary axis.
G95 FPR(...) is valid for path and synchronized axes.
Example:
Path axes X, Y must be traversed at the revolutional
feedrate derived from rotary axis A:
N40 FPR(A)
N50 G95 X50 Y50 F500
Examples:
The revolutional feedrate for master spindle 1 must be
derived from spindle 2.
N30 FPRAON(S1,S2)
N40 SPOS=150
N50 FPRAOF(S1)
N30 FPRAON(X)
N40 POS[X]=50 FA[X]=500
N50 FPRAOF(S1)
Programming
OVR=…
OVRA[axis]=…
OVRA[SPI(spindle)]=… or OVRA[S…]=…
Function
You can use the programmable feedrate override to
change the velocity/speed of path axes, positioning axes
and spindles via a command in the NC program.
Example:
N10 OVR=25 OVRA[A1]=70 ; Path feed 25%,
Positioning feedrate for A1 70%.
N20 OVRA[SPI(1)]=35 ; Speed for spindle 1 35%.
or
N20 OVRA[S1]=35
Sequence
The programmed feed change refers to or is combined
with the feed override set on the machine control panel.
Example:
Set feed override 80%
Programmed feed override OVR=50
The programmed path feed F1000 is changed to F400
(1000 * 0.8 * 0.5).
Value range
1..200%, integers; with path and rapid traverse override,
the maximum velocities set in the machine data are not
exceeded.
Programming
FD=…
FDA[axis]=0 or FDA[axis]=…
Function
With these functions, you can use the handwheel to Z
Sequence
Preconditions
A handwheel must be assigned to the axes to be
traversed for the handwheel override function. Please
see the Operator's Guide for the procedure. The number
of handwheel pulses per graduated position is defined in
machine data.
Non-modal operation
The handwheel override function is non-modal. The
function is deactivated in the next NC block and the NC
program continues to be executed.
Traversing range
The traversing range is limited by the starting position
and the end point programmed with the positioning
command.
Feedrate override
The feed override acts only on the programmed feed,
not on the travel movement generated with the
handwheel (except if feed override = 0).
Note
With velocity override of path axes, you always
control the path velocity with the handwheel of the 1st
geometry axis.
Traversing range
The traversing range is limited by the starting position
and the programmed end point.
ACC Change in acceleration in percent for the specified path axis or change in speed for
the specified spindle.
SPI Converts the spindle number into an axis identifier; the transfer parameter must
contain a valid spindle number.
The spindle identifiers SPI(...) and S... are identical in terms of function.
Axis Channel axis name of path axis, e.g. with X, Y...
Function
In critical program sections, it may be necessary to limit
the acceleration to below the maximum values, e.g. to
prevent mechanical vibrations from occurring.
Sequence
You can use the programmable acceleration override to
change the acceleration for each path axis or spindle
via a command in the NC program. The limit is effective
for all types of interpolation. The values defined in the
machine data determine the 100% acceleration.
Additional notes
Please note that the maximum permissible values of the
machine manufacturer can be exceeded with a higher
acceleration rate.
7.11 Feedrate optimization for curved path sections, CFTCP, CFC, CFIN
Programming
CFTCP
CFC
CFIN
Function
The programmed feedrate initially refers to the cutter
center path when the G41/G42 override is activated for
the cutter radius (cf. Chapter 6).
Example: you are milling a small external radius with a Tool path
large tool. The distance that the outer side of the cutter
has to cover is much larger than the distance along the
contour. You therefore work with a very small feed on
the contour.
Sequence
Constant feedrate on center-point path,
deactivate feedrate override, CFTCP
The control keeps the feedrate constant, feed overrides
are deactivated.
nt
ta
creased for outside radii; the cutter center applies.
ns
co
reduced
increased
Programming example Y
X
10
20 20
55 30
Programming
M3 or M4 or M5
M1=3 or M1=4 or M1=5
S
Sn=…
SETMS(n) or SETMS
M1=3 M1=4 M1=5 Spindle rotation clockwise/counterclockwise, spindle stop for spindle 1.
Other spindles are defined according to M2=... M3=...
M3: Direction of spindle rotation clockwise for master spindle
M4 Direction of spindle rotation counterclockwise for master spindle
M5 Spindle stop for master spindle
Sn=… Spindle speed in rpm for spindle n
S… Spindle speed in rpm for the master spindle
SETMS(n) Set spindle specified in n as master spindle
SETMS Reset to the master spindle defined in machine data
Function
The above functions are used to
• switch on the spindle,
• specify the required direction of spindle rotation, and
• define the counterspindle or an actuated tool as the
master spindle, e.g. on turning machines
Sequence
Preset M commands, M3, M4, M5
In a block with axis commands, the above mentioned
functions are activated before the axis movements
commence (basic settings on the control).
Spindle speed S
The spindle speed specified with S… or S0=… applies
to the master spindle. You specify the corresponding
number for additional spindles: =…, S2=…
Programmable switchover of
master spindle, SETMS(n)
You can define any spindle as the master spindle with a
command in the NC program.
Example:
N10 SETMS(2) ; SETMS must be programmed in a separate block
Spindle 2 is now the master spindle.
Deactivate
By issuing SETMS without spindle parameter you can
switchback to the master spindle defined in the machine
data.
Programming example
S1 is the master spindle, S2 is the second
S2
workspindle.
The part is to be machined from two sides. To do this,
it is necessary to divide the operations into steps. After
parting, the synchronous device S2) takes up the
workpiece for machining on the parted side. To do this,
this spindle S2 is defined as the master spindle to
which G95 then applies.
Programming
G96 S…
G961
G97
G971
LIMS=…
Function
Reducing spindle
When G96/G961 is active, the spindle speed – speed
depending on the respective workpiece diameter – is
automatically modified in order that the cutting rate S
in m/min or ft/min remains constant at the tool edge.
This helps you to obtain even turning patterns and thus
better surface quality and less wear and tear on the
tool.
Command LIMS specifies a maximum speed limitation
for the master spindle. The limit speed programmed Constant
cutting rate
with G26 or defined via setting data cannot be ex-
ceeded when LIMS is used which also generates an
Spindle speed
alarm if the speed is exceeded. increased
Sequence
Deactivate constant cutting rate
Activation, G96/G961
A constant cutting rate in m/min or ft/min must be
entered when G96/G961 is first selected in the parts
program and can be entered again if the commands are
reselected.
Adjust feed F
When G96 is active, G95 feed is automatically activated
in mm/rev.
LIMS
Rapid traverse
With rapid traverse G0, there is no change in speed.
Exception: If the contour is approached in rapid tra-
verse and the next NC block contains a G1, G2, G3 ...
path command, the speed is adjusted in the G0
approach block for the next path command.
Additional notes
• The G96 function can also be deactivated with G94
or G95.
In this case, the last programmed speed S is used for
further machining operations.
• In SW 4.2 and higher, G97 can also be
programmed without preceding it by G96. The
function then has the same effect as G95; LIMS can
also be programmed.
• With SW 5.3 and higher, the constant cutting rate
can be deactivated with G961 and G971.
Programming
GWPSON(T No.)
GWPSOF(T No.)
S…
S1…
Function
With the function "Constant grinding wheel peripheral
speed" (=GWPS) you can set the grinding wheel speed
such that, taking account of the current radius, the
grinding wheel peripheral speed remains constant.
Additional notes
To be able to activate the "Constant peripheral speed"
function, the tool-specific grinding data $TC_TPG1,
$TC_TPG8 and $TC_TPG9 must be set accordingly.
When the GWPS function is active, even online offset
values (= wear parameters; cf. Sect. 6 PUTFTOC,
PUTFTOCF) are taken into account with regard to
speed variations!
Programming example
A constant grinding wheel peripheral speed is to be
used for grinding tools T1 and T5.
T1 is the active tool.
Programming
Programming
CLGON(Soll)
CLGOF
CLGON (set) Activate "Constant workpiece speed for centerless grinding" function;
specify speed setpoint (set) for workpiece in rpm
CLGOF Deactivate function
Function
When the "Constant workpiece speed for centerless n1= const
grinding" function is active, the speed of the machined
part is kept constant. The speed of the regulating Workpiece
wheel reduces as the diameter of the machined part rWorkpiece
Grinding
decreases. Regulating wheel
A wheel
n2 Work
Preconditions for CLGON blade
The axes of the regulating and grinding wheels and the
work blade must be in a position that enables grinding Q1
of the workpiece from the initial to the finishing
Y
dimension. Q2
X
CLGON acts only if the spindle of the regulating wheel
is running in speed mode. An actual position sensor is
not required.
The G functions G94, G95, G96/G961 and G97/G971,
which have no effect on the spindle of the regulating
wheel, can be active concurrently with CLGON.
Additional notes
The following are stored in the channel-specific machine
data ($MC_TRACLG…):
• The spindle numbers of the regulating and grinding
wheels
• Geometrical parameters (axis numbers, direction
vector of the work blade, etc.)
• Response on reset and end of program
n2 Work
Offset data for CLGON blade
The radii of the grinding and regulating wheels are
taken from the current offset data for T1, D1 (grinding Q1
Y
wheel) and T2, D1 (regulating wheel). Changes to the
Q2
online tool offset (PUTFTOCF, FTOCON, FTOCOF) X
are taken into account.
Gear stages
The gear stages must be selected in such a manner that
the regulating wheel can cover the entire speed range
required.
Monitoring
Speed monitoring defined with G25 and G26 is active.
The range of the work blade, in which the calculated
tangent of the workpiece lies, is monitored. It is defined
in machine data.
Programming
G25 S… S1=… S2=…
G26 S… S1=… S2=…
Function
You can use a command in the NC program to change
the minimum and maximum spindle speeds defined in
the machine data and setting data.
Sequence
It is possible to program spindle speed limitations for all
spindles on the channel.
Example:
N10 G26 S1400 S2=350 S3=600
Programming
Several path movements in one block
F2=... to F7=...
ST=...
SR=...
FMA[2,x]=...to FMA[7,x]=... Several axial movements in one block
STA=...
SRA=...
F2==... In addition to the path feed, you can program up to 6 further feedrates in the
to F7==... block; non modal
ST=... Dwell time (for grinding technology: sparking out time); non modal
SR=... Return path; non modal
FMA[2,x]=... to In addition to the path feed, you can program up to 6 further feedrates per
FMA[7,x]=... axis in the block; non modal
STA=... Axis-spec. dwell time (for grinding technology: sparking out time); non modal
SRA=... Axis-spec. return path; non modal
Function
The function "Several feedrates in one block" can be
used independent of external analog and/or digital inputs
to activate
• 6 different feedrates of an NC block,
• 1 dwell time and
• 1 return path
in synchronism with the movement.
The HW inputs signals are combined in one input byte,
see description in:
/FB/ A2, Various Interface Signals.
Sequence
Programming the path motion
The path feedrate is programmed under the address A,
which remains valid provided that no input signal is
present. The numerical extension is indicated by the bit
number of the input, whose change activates the
feedrate:
e.g.
F7=1000 ; 7 corresponds to input bit 7
F2=20 ; 2 corresponds to input bit 2
ST=1 ; dwell time (s) input bit 1
SR=0.5 ; Return path (mm) input bit 0
Additional notes
• The axial feedrate/path feedrate (F value)
corresponds to 100% feedrate. The function
"Several feedrates in one block" can be used to
implement feedrates which are less than or equal to
the axial feedrate/path feedrate.
• If feedrates, swell time or return path are
programmed for an axis on account of an external
input, this axis must in this block must not be
programmed as POSA axis (positioning axis over
multiple blocks).
• If input bit 1 is activated for the dwell time or bit 0 for
the return path, the distance to go for the path axes or
the relevant single axes is deleted and the dwell time
or return started.
• The unit for the return path is relative to the currently
valid unit of measurement (mm or inch).
• Look-ahead is also active for several feedrates in one
block. In this way, you can use the look-ahead
function to restrict the current feedrate.
Programming
FB==... Instead of the modal feedrate active in the previous block, you can program
a separate feedrate for this block; in the block that follows, the previously
active modal feedrate applies.
Function
You can use the function "Blockwise feedrate" to define
a separate feedrate for a single block.
Sequence
The address FB is used to define the feedrate only for
the current block. After this block, the previously active
modal feedrate is active.
Additional notes
• The programmed value of FB=<value> must be
greater than zero.
• If no traversing motion is programmed in the block
(e.g. computation block), the FB has no effect.
• If no explicit feedrate is programmed for
chamfer/rounding, the value of FB also applies for a
chamfer/rounding contour element in this block.
• Feedrate interpolations FLIN, FCUB, etc. are also
possible without restriction.
• Simultaneous programming of FB and FD
(handwheel traversing with handwheel override) or F
(modal path feed) is not possible.
Programming
Notes
Tool Offsets
8.9 Approach and retract from contour, NORM, KONT, KONTC, KONTT ................... 8-309
8.14 Tool length compens. for orient. tools TCARR, TCOABS, TCOFR........................ 8-335
8.15 Grinding-specific tool monitoring in part program TMON, TMOF ........................... 8-338
8.17 Tool offset – special treatment (SW 5 and higher) ................................................. 8-344
8.17.1 Mirror tool lengths ................................................................................................... 8-345
8.17.2 Sign evaluation wear............................................................................................... 8-345
8.17.3 Define coordinate system for wear values, TOWSTD, TOWMCS/WCS ................ 8-346
8.17.4 Tool length and plane change................................................................................. 8-349
8.18 Tools with a relevant tool point direction (SW 5 and higher) .................................. 8-352
Length
wear). The control computes the components to a
certain dimension (e.g. overall length 1, total
radius). The respective overall dimension becomes
effective when the offset memory is activated.
These values are calculated in the axes according
to the tool type and the current plane G17, G18,
G19.
Radius
• Tool type
The type determines which geometry data are
needed and how they are calculated (drill or milling
tool or turning tool). F
L1
tool parameters must be entered in the input fields with
"DP...". Any unneeded tool parameters must be set to P
R S
"zero".
L2
Caution
Values that have been entered once in the offset
memory are included in the processing for each tool
numbered.
Additional notes
The compensation value of the tool length depends on
the spatial orientation of the tool. See also section "Tool
orientation and tool length compensation" for more
information.
Base dim.
Length 1
151 Saw DP3 Length 1 - Geometry
F'
Base dimension
Length 3
155 Bevel cutter DP6 Radius - Geometry
(without corner rounding) DP21 Length 1 - Base F´- Toolholder reference point
DP22 Length 2 - Base F - Toolholder reference point
156 Bevel cutter DP23 Length 3 - Base
Effect
160 Drill and thread milling cutter
G17: Length 1 in Z Z
Length 2 in Y
Length 3 in X Y
Radius in Y/Z X
Wear values G18: Length 1 in Y Y
as required Length 2 in X
Length 3 in Z
X
Set remaining Radius in X/Y Z
values to 0 G19: Length 1 in X X
Length 2 in Z
Length 3 in Y Z
Radius in Z/X Y
Length 1
Geometry
413 Facing wheel with monitoring
Length 1
Length 1 in X
Base
G18: Radius
Length 2 in Z
without base dimension for Radius in Z/X F
grinding wheel peripheral speed G19: Length 1 in Z
Length 2 in Y Base Length 2
GWPS Radius in Y/Z Geometry
490 Dresser Length 2
Length 1 (X)
520 Plunge cutter
530 Parting tool
540 Threading tool R = Radius of the tool nose
550 Button tool / shaping tool (tool radius)
S = Position of the tool nose center
580 Probe with Length 2 (Z)
tool point direction parameter
Tool tip P
(tool nose 1 = Dn)
Z
The tool parameter DP2 specifies the length of the tool nose.
Position value 1 to 9 possible.
X
6 7 8 9
P=S
Note:
The data Length 1, Length 2 refer to the
point P for tool nose position 1-8;
but S for position 9 (S=P)
Entries in Effect
tool parameters Wear values
as required Length 1 in Y
DP1 5xy G17:
Length 2 in X
DP2 1...9
Length 1 in X
DP3 Length 1 Set remaining G18: Length 2 in Z
DP4 Length 2 values to 0.
Length 1 in Z
G19:
DP6 Radius Length 2 in Y
• Chain rule
The tool length offsets "Geometry", "Wear" and "Base dimension" can be chained for the left and
right wheel correction in each case, i.e. if the length offsets for the left tool edge are altered, the
values for the right edge are automatically entered and vice versa. Please refer to Description of
Functions /FB II/, W4 "Grinding".
Diameter d
DP7 Groove width-Geometry
DP8 Excess. dim.- Geometry
Base dim.
Length 1
Wear values
as required Effect
Additional notes G17: Half diameter (L1) in X Plane selection
Set remaining Excess dim. in (L2) Y 1st-2nd axis (X-Y)
The parameters for the tool types are values to 0
Saw blade in (R) X/Y
Programming
Tx or
T=x or
Ty=X
T0
M06
Explanation of the parameters
Function
Tool selection takes place when the T word is
programmed.
1. Tool selection without TOOLMAN
• Free selection of D No. (flat D No.) relative to
cutting edges
T... [8-digit]
D1 D2 D3 ••• D32000
Explanation
SW 4 and higher
The free selection of the D No. "flat D number struc- T1 D1
ture" is applied when tool management is implemented T2 D2
T3 D3
outside the NC. In this case, the D numbers are crea-
T4 D4
ted with the corresponding tool compensation blocks
without assignment to tools.
T can continue to be programmed in the parts program.
However, this T has no reference to the programmed D
number.
Example:
Circular magazine with 12 locations and 12 single-edge
tools.
Machine manufacturer (MH 8.5)
T can or cannot be programmed in the parts program,
depending on the setting in MD 18102.
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.
Programming
Tx or T=x
or Ty=X
T0
Explanation of the parameters
Tx or T=x or Ty=x Tool selection with T No. including tool change (active tool), tool offset is
active
x x stands for T No.: 0-32000
T0 Tool deselection
Number of tools: 600, as of SW 5: 1200
(depending on the machine manufacturer's configuration)
Function
A direct tool change takes place when the T word is
programmed.
1. Tool selection without TOOLMAN
• Free selection of D No. (flat D No.) relative to
cutting edges
• Tabulated D No.: D1 D8
2. 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
Function
It is possible to assign between 1 and 8 (12) tool noses
with different tool compensation blocks to a specific N10 T2
tool. This allows you to define various cutting edges for N20 G0 X35 Z-20
N30 G1 D1 X10
one tool, which you can call as required in the NC
N40...D6 Z-5
program. Different offset values could be used, for
example, for the left and right cutting edge of a X
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 10
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 byG41/G42.
Z
-20 -5
Programming example
(turning: tool change with T command)
N10 T1 D1 Tool T1 is replaced and activated with
associated D1
N11 G0 X... Z... The length offsets are traversed
N50 T4 D2 Load tool T4, D2 from T4 is active
...
N70 G0 Z... D1 Other cutting edge D1 is activated for tool T4
Example
A magazine has locations 1 to 20:
Location 1 occupred by drilling tool, duplo no.=1, T15, 20
disabled 1
Location 2 is not occupied 2
3
Location 3 is occupied by drilling tool, duplo no.=2, T10, 5 4
enabled
Location 4 is occupied by drilling tool, duplo no.=3, T1,
active
Locations 5 to 20 are not occupied
1. Programming of T1 or T=1:
Magazine location with number 1 of the magazine
connected to the toolholder is selected.
2. Identifier "Drill" of tool in location is determined.
The selection procedure is completed.
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.
Programming
The following procedure usually applies:
T = location or T = identifier
T triggers the tool change
D... Tool offset number: 1...32000 (max., see machine manufacturer's specifications)
D0: no offsets active!
Sequence
The following procedure usually applies:
T = location,
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 in a tool magazine is
not occupied, the tool command has the same effect as
T0. Selecting the empty magazine location can be used
to position the empty location.
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 higher)
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
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
• tool offset values stored under a D number must be
activated.
• The appropriate working plane (system setting:
G17) must be programmed. This ensures that the
length compensation is assigned to the correct
axis.
If the selected magazine location in a tool magazine is
not occupied, the tool command has the same effect as
T0. Selecting the empty magazine location can be used
to position the empty location.
Programming
The following procedure usually applies:
T = location or T = identifier or T=Duplo no.,
T triggers the tool change
D... Tool offset number: 1...32000 (max., see machine manufacturer's specifications)
D0: no offsets active!
Programming example
Sequence
The following procedure usually applies:
T= identifier or T= identifier or
T= duplo no.,
M06 triggers the tool change
D = offset 1 to nth edge no.
(n ≤ 8 or. 12, as of SW 5)
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
Function
It is possible to assign between 1 and 8 (12) tool noses
with different tool compensation blocks to a specific 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.
Function
MD $MM_ACTIVATE_SEL_USER_DATA can be used
to define that the active tool offset can be activated
immediately if the parts program is in "stop" mode.
Danger
The offset is applied the next time the parts program is
started.
Programming
G40
G41
G42
OFFN=
Function
Equidistant path
Sequence
The control requires the following information in order G41
to calculate the tool paths:
G42 G41
Note:
A negative offset value is the same as a change of offset
side (G41, G42).
Ra
s
diu
diu
Note:
Ra
s
th Le
On 2-axis machines, the tool radius compensation is ng ng
Le th
+Y
only possible in "real" planes, in general with G18
(see tool length compensation table).
Radius
Length 2
s
diu
Ra
Le
ng
th
N2
50
The two axes must be active as GEOAX in the
0
channel. This can be achieved by programming them
with GEOAX. N10
X
50
Example:
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.
Turning:
Example:
X
N20 T1 D1
N30 G0 X100 Z20
N40 G42 X20 Z1
20
N50 G1 Z-20 F0.2
Only tool length compensation is activated in block
N20. X100 Z20 is approached without compensation
Ø 100
in block N30.
In block N40, the radius compensation is activated,
point X20/Z1 is approached with compensation.
Ø 20
20 1
TRUE:
In the same situation as described above, the
intersection positioned on the first partial contour closer
to the block start is selected.
Programmed path
With linear movements, the tool travels along an in-
clined path between the starting point and end point;
with circular interpolation spiral movements are
produced.
In compensation mode
Compensation mode may only be interrupted by a
certain number of consecutive blocks or M commands
which do not contain any travel commands or positional
parameters in the compensation plane: Standard 3.
70
50
40
20
20 X Z
40
80 7
Turning:
45°
X
R8
R3
R3
R3 Ø
R10 Ø
Ø 50
Ø 30 35
16 Z
4
12
15
18
20
40
57
60
62
70
80
8.9 Approach and retract from contour, NORM, KONT, KONTC, KONTT
Programming
NORM
KONT
KONT
KONTC
KONTC
KONTT
KONTT
NORM The tool travels directly in a straight line and is positioned perpendicular to the
contour point
KONT The tool traverses the contour point according to the programmed corner behavior
G450 or G451
KONTC Tool reaches/leaves contour point with continuous curvature.
With continuous curvature also includes along continuous tangent. See below.
With continuous curvature means at constant acceleration.
KONT Tool reaches/leaves contour point along continuous tangent.
Along continuous tangent does not generally mean at constant acceleration.
Function
You can use these functions to adapt the approach and
retraction paths, for example, according to the desired
contour or shape of the blanks.
Sequence
Direct approach to perpendicular position,
G41, G42, NORM
The tool travels in a straight line directly to the contour
R
G42
Selection of the approach point
When NORM is active, the tool travels directly to the
compensated starting position irrespective of the Compensated Compensated
tool path tool path
approach angle programmed for the travel movement
(see diagram).
R
ad
iu
s
Tangente
Choosing the retraction point
41
G
When NORM is active, the tool travels directly to the G41
G450 G451
Starting point
Approach path
Tool radius
Explanation
Function
Programming example
Programming
Programming
G450 DISC=…
G451
G450 Transition circle: the tool travels around workpiece corners on a circular path
with tool radius
DISC= Flexible programming of the approach and retraction instruction. In steps
of 1 from DISC=0 circle to DISC=100 intersection
G451 Intersection, the tool backs off from the workpiece corner
Function
G450/G451 defines the following:
0.6 DISC=100
values the tool is lifted off the contour at the corners. DISC=
50
0.4
With angles of 120° and more, the contour is traversed 40
30
0.2 20
evenly (see adjacent table). 0
10
30 60 90 120 150 180
Contour angle (degrees)
Programming example
In this example, a transition radius is inserted for all Y
Y
60
30
10
X Z
10
50
5
Programming
G140 to G143, G147, G148
G247, G248, G347, G348G340, G341
DISR=..., DISCL=...FAD=...
Function G1
Sequence
P0
P 3 during approach and
The approach and retraction motion consists of a retraction with straight
maximum of 4 sub-movements: Tool line (G147)
Tool center point path
Example:
$TC_DP1[1,1]=120 ;Milling tool T1/D1
$TC_DP6[1,1]=7 ;Tool with 7mm Machining up to this point
with GO, after that G1 F1000
radius Y
N10 G90 G0 X0 Y0 Z30 D1 T1 Z=3 Z=0
Z=30
N20 X10
N30 G41 G147 DISCL=3 DISR=13 Z=0 F1000 0 10 20 30 40 50
X
N40 G1 X40 Y-10 P4 Contour
N50 G1 X50 -10
... DISR=13
...
N30/N40 can be replaced by:
1.
N30 G41 G147 DISCL=3 DISR=13 X40 Y-10
Z0 F1000
or
2.
N30 G41 G147 DISCL=3 DISR=13 F1000
N40 G1 X40 Y-10 Z0
Example:
$TC_DP1[1,1]=120 ;Milling tool T1/D1
$TC_DP6[1,1]=7 ;Tool with 7mm radius
Y
P4 P3 P2 P1 P0
No speed
programmed
Only F
programmed
Only FAD
programmed
F and FAD
programmed
Rapid traverse if GO is active,
otherwise with the old or new F word
Speed of the previous block
(old F word)
Retraction speed programmed with FAD
New modal speed programmed
with F
Programming example
y tool center point path
x
• Contour offset OFFN=5 (N10)
20 30 40 50 60 80
P0ret
P0app
• Current tool radius=10; thus the effective offset P4app P4ret
contour
radius for TRC=15, the radius of the SAR
contour=25, so that the radius of the tool center point
path is then DISR=10
• The end point of the circle is obtained from N30,
since only the Z position is programmed in N20
• Infeed motion
- from Z20 to Z7 (DISCL=AC(7)) in rapid traverse
- then to Z0 with FAD=200
- approach circle in X-Y plane and following blocks
with F1500 (for this speed to be active in the
following blocks, the active G0 in N30 must be
overwritten with G1; otherwise, the contour would
be machined further with G0.)
• Smooth retraction (block N60 active)
• Retraction motion with quadrant (G248) and helix
(G340)
• FAD not programmed, since irrelevant for G340
• Z=2 in the start point; Z=8 in the end point, since
DISCL=6
• When DISR=5, the radius of SAR contour=20; that of
the tool center point path=5
• Retraction motions from Z8 to Z20 and the motion
parallel to X-Y plane to X70 Y0.
$TC_DP1[1,1]=120 Tool definition T1/D1
$TC_DP6[1,1]=10 Radius
N10 G0 X0 Y0 Z20 G64 D1 T1 OFFN = 5 (P0app)
N20 G41 G247 G341 Z0 DISCL = AC(7) Approach (P3app)
DISR = 10 F1500 FAD=200
N30 G1 X30 Y-10 (P4app)
N40 X40 Z2
N50 X50 (P4ret)
N60 G248 G340 X70 Y0 Z20 DISCL = 6 Retraction (P3ret)
DISR = 5 G40 F10000
N70 X80 Y0 (P0ret)
N80 M 30
8.11.1 Approach and retraction, G460 and extensions (SW 5 and higher) G461, G462
Programming
G460
G461
G462
Explanation
Function
In certain special geometrical situations, extended
approach and retraction strategies, compared with the
previous implementation, are required in order to
activate or deactivate tool radius compensation (see
figure below).
Example:
G42 D1 T1 ; tool radius 20mm N30 Y
Tool radius
... X
N10 X0
10 Programmed
N20 Y10 N10 contour
N20
N30 G40 X50 Y50 10 20 50 100
The curve used for the retraction block is not a real offset
curve, but a straight line from the offset point at the end
of block N20 to the programmed end point of N30. The
intersection is approached if one is found. In this case,
the shaded area in the figure is not machined, although
this would be possible with the tool used.
G461
If no intersection is possible between the last TRC Auxiliary curve
N30 Y
block and a preceding block, the offset curve of this
XX
block is extended with a circle whose center point lies Center point path with
tool radius compensation
at the end point of the uncorrected block and whose
radius is equal to the tool radius. 10
Programmed
N20 N10 contour
The control attempts to cut this circle with one of the
0 10 20 50 100
preceding blocks.
Retraction behavior with G461
(see example at the end of this section)
If CDOF is active (see section Collision monitoring,
CDON, CDOF), the search is aborted when an
intersection is found, i.e. the system does not check
whether further intersections with previous blocks exist.
If CDON is active, the search continues for further
intersections after the first intersection is found.
An intersection point which is found in this way is the
new end point of a preceding block and the start point
of the deactivation block. The inserted circle is used
exclusively to calculate the intersection and does not
produce a traversing movement.
G462
If no intersection is possible between the last TRC Auxiliary curve
N30 Y
block and a preceding block, a straight line is inserted,
X
on retraction with G462 (initial setting), at the end point Center point path
(compensated path)
of the last block with tool radius compensation (the
block is extended by its end tangent). 10 Programmed
contour
The search for the intersection is then identical to the
N20 N10
0 10 20 50 100
procedure for G461.
Retraction behavior with G462
(see example at the end of this section)
With G462, the corner generated by N10 and N20 in
the example program is not machined to the full extent
actually possible with the tool used. However, this
behavior may be necessary if the part contour (as
distinct from the programmed contour), to the left of
N20 in the example, is not permitted to be violated
even with y values greater than 10 mm.
If KONT is active (travel round contour at start or end
point), the behavior differs according to whether the
end point is in front of or behind the contour.
Additional notes
The approach behavior is symmetrical to the retraction
behavior.
The approach/retraction behavior is determined by the
state of the G command in the approach/retraction block.
The approach behavior can therefore be set indepen-
dently of the retraction behavior.
Programming example
G461 for approach
N10 $TC_DP1[1,1]=120 ; Tool type mill
N20 $TC_DP6[1,1]=10 ; Radius
N30 X0 Y0 F10000 T1 D1
N40 Y20
N50 G42 X50 Y5 G461
N60 Y0 F600
N70 X30
N80 X20 Y-5
N90 X0 Y0 G40
N100 M30
Programming
CDON
CDOF
CDOF2
Explanation of the commands
Function
When CDON (Collision Detection ON) and tool radius
compensation are active, the control monitors the tool
paths with Look Ahead contour calculation. This Look
Ahead function allows possible collisions to be
detected in advance and permits the control to actively
avoid them.
Sequence
The following are some examples of critical machining
situations which can be detected by the control and
compensated for by modifying the tool paths.
Bottleneck detection
An alarm is output.
Tool path
The tool travels round the workpiece corner on a
transition circle and then continues to follow the
programmed contour exactly.
Programmed contour
Tool path
In such cases, the contours are machined only to the
extent possible without damaging the contour.
Programmed
contour
Function
When CDOF2 is active, no
• offset value and no
• offset direction
is calculated for blocks or block parts in which the
differential angle between path direction and tool
orientation is less than a defined limit angle. The offset
direction is determined from two appropriate, adjacent
blocks. If the
• first block after a tool radius compensation
block and
• last block before a tool radius compensation
block
cannot be compensated, an alarm is generated.
Example:
The NC program defines the center-point path of a
Compensation movement with missing intersection
standard tool. The contour for a tool currently in use
results in an undersize which is shown on an
unrealistically large scale solely to illustrate the
geometric conditions. The following description is
based on the simple assumption that the control can Parts
contour
only "see" three blocks. N10 P1
Corrected
Since an intersection exists only between the offset Offset value setpoint path
undersize
standard
Programming
CUT2D
CUT2DF
Explanation
Function
With CUT2D or CUT2DF you define how the tool radius
compensation is to act or to be interpreted when
machining in inclined planes.
Sequence
Tool length compensation
Tool length compensation is generally calculated
according to the non-rotated working plane fixed in
space.
8.14 Tool length compens. for orient. tools TCARR, TCOABS, TCOFR
Programming
TCARR=[m]
TCOABS
TCOFR
TCOFRZ, TCOFRY, TCOFRX
Explanation
Function Z
Z«
path commands.
With SW 6.1 and higher, it is possible for an orient- V
U
able toolholder of an active frame to determine the Y
Z
direction of the tool when a tool is selected with X
X
TCOFRZ, TCOFRY and TCOFRX. X«
Sequence
Request tool holder TCARR
With TCARR the toolholder number m is requested with
its geometry data (offset memory).
With m=0, the active toolholder is deselected.
Additional notes
The geometry data of the toolholder only become active
after a tool is called. The selected tool remains active
after a toolholder change has taken place.
Additional notes
The tool orientation must be manually adapted to the
active frame.
Additional notes
It is not possible for the control to check whether the
rotation angles calculated by means of the frame
orientation are settable on the machine.
Programming
TMON (T No.)
TMOF (T No.)
Function
The command TMON is used to activate geometry and
speed monitoring for grinding tools (types 400-499) in
the NC parts program. Monitoring remains active until it
is deactivated in the parts program with TMOF.
Additional notes
You can only activate tool monitoring if the tool-specific
grinding data $TC_TPG1 to $TC_TPG9 (see Program-
ming Guide Advanced) are set.
According to the machine data settings, tool monitoring
for the grinding tools (types 400-499) can be automa-
tically activated when the tool selection is activated.
Only one monitoring routine can be active at any one
time for each spindle.
Geometry monitoring
The current wheel radius and the current width are
monitored.
The set speed is monitored against the speed limitation
cyclically with allowance for the spindle override.
The speed limit is the smaller value resulting from a
comparison of the maximum speed with the speed
calculated from the maximum wheel peripheral speed
and the current wheel radius.
Programming
DL=x additive offset selection, x = 1 to 6
Explanation
• Up to 6 additive offsets can be activated per
D number
(saved under the respective DL numbers).
• You can distinguish between setup and wear values.
• DL=1 is activated when a D number is called.
Function
Location 2 Location 1
Setup value: X
Programming example
Programming
$TC_SCPxy[t,d] Wear values:
$TC_ECPxy[t,d] Setup values
$TC_SCPxy Wear values are assigned to the corresponding geometry parameters via xy, where x
is the number of the wear value and y is the reference to the geometry parameter.
$TC_ECPxy Setup values are assigned to the corresponding geometry parameters via xy, where x
is the number of the setup value and y is the reference to the geometry parameter.
t T number of the tool
d D number of the tool edge
Function
System variables $TC_DP3 - $TC_DP11 describe the
tool geometry. In addition to the parameters for the
physical wear ($TC_DP12 - $TC_DP20), up to six wear
values ($TC_SCP1y - $TC_SCP6y) and up to six setup
values ($TC_ECP1y - $TC_ECP6y) can be assigned to
each geometry parameter.
Example:
Parameters: $TC_DP3 (Length 1,
for turning tools)
Wear values: $TC_SCP13 - $TC_SCP63
Setup values: $TC_ECP13 - $TC_ECP63
$TC_SCP43 [t, d] = 1.0
The wear value of length 1 is set to the value 1.0 for the
tool edge (D number d) of the tool (t).
Note
The defined wear and setup values are added to the
geometry parameters and the other offset parameters
(D numbers).
Programming
status = DELDL[t,d]
DELDL [t,d] All additive offsets of the tool edge with D number d of tool t are deleted.
DELDL[t] All additive offsets of all tool edges of tool t are deleted.
DELDL All additive offsets of the tool edges of all tools of the TO- unit are deleted (for the
channel in which the command is programmed).
status 0: Offsets have been successfully deleted.
–1: Offsets have not been deleted (if the parameter settings specify exactly one
tool edge), or not deleted completely (if the parameter settings identify several
tool edges).
Function
DELDL is used to delete the additive offsets for the tool
edge of a tool (in order to release memory). Both the
defined wear values and the setup values are deleted.
Additional notes
The wear and setup values of active tools cannot be
deleted (similar to deletion of D offsets or tool data).
Function
Setting data SD 42900 - SD 42940 can be used to
control the evaluation of the sign for tool length and
wear.
The same applies to the behavior of the wear
components when mirroring geometry axes or changing
the machining plane.
See also:
• /PGA/, Programming Guide Advanced, Chapter 8
• Description of Functions, Basic Machine (Part 1), Tool Compensation (W1)
SD 42900 MIRROR_TOOL_LENGTH
Setting data not equal to zero: X X
D13
The tool length components ($TC_DP3, $TC_DP4
and $TC_DP5) and the components of the tool base
dimensions ($TC_DP21, $TC_DP22 and $TC_DP23),
whose associated axes are mirrored, are also
mirrored – through sign inversion. Z Z
The wear values are not mirrored. If these are also to
M W W1 M1
be mirrored, setting data
$SC_MIRROR_TOOL_WEAR must be enabled.
WCS 1 WCS 2
D13 with SL3 D13 with SL4
SD 42910 MIRROR_TOOL_WEAR
Setting data not equal to zero:
The wear values of the tool length components, whose
associated axes are mirrored, are also mirrored by sign
inversion.
SD 42920 WEAR_SIGN_CUTPOS
Setting data not equal to zero:
In the case of tools with a relevant tool point direction
(turning and grinding tools – tool types 400–599), the
sign evaluation of the wear components depends on
the tool point direction in the machining plane. This
setting data has no effect on tool types which do not
have a relevant tool point direction.
In the following table, the dimensions whose sign is
inverted by SD 42920 (not equal to 0) are marked with
an X:
Additional notes
The sign settings of SD 42920 and 42910 are
independent. For example, if the sign of a dimensional
parameter is changed by both setting data, the resulting
sign is unchanged.
SD 42930 WEAR_SIGN
Setting data not equal to zero:
Inverts the sign of all wear dimensions. It acts both on
the tool length and on other quantities such as tool
radius, rounding radius, etc.
If a positive wear dimension is entered, the tool
becomes "shorter" and "thinner".
Example: See following section "Activation of modified
setting data".
Programming
TOWSTD Initial setting value for offsets in tool length
Wear value
TOWMCS in MCS
TOWWCS in WCS
TOWBCS in BCS
TOWTCS at toolholder reference point (orientating toolholder)
TOWKCS of tool head (kinematic transformation)
Function
Assignment of coordinate system
Depending on the kinematics of the machine or the
availability of an orientable toolholder, the wear values
measured in one of these coordinate systems are
converted or transformed to a suitable coordinate
system.
Linear transformation
The tool length can be defined meaningfully in the MCS
only if the MCS is generated by linear transformation
from the BCS.
Non-linear transformation
If, for example, a non-linear transformation is active with
TRANSMIT, the BCS is automatically applied when the
MCS is specified as the chosen coordinate system.
Sequence
Inclusion of wear values in calculation
Additional notes
Evaluation of individual wear components (assignment
to geometry axes, sign evaluation) is influenced by the
• active plane
• adapter transformation and
• following setting data:
SD 42910: MIRROW_TOOL_WEAR
SD 42920: WEAR_SIGN_CUTPOS
SD 42930: WEAR_SIGN
SD 42940: TOOL_LENGTH_CONST
SD 42950: TOOL_LENGTH_TYPE
References
For further information about tool offsets, please see:
/FB/, Description of Functions, Basic Machine (Part 1), Tool Compensation (W1)
SD 42940 TOOL_LENGTH_CONST
Setting data not equal to zero:
The assignment between the tool length components
(length, wear and tool base dimension) and the
geometry axes is not modified when the machining plane
is changed (G17-19).
*) Each value not equal to 0 which is not equal to one of the six
listed values is evaluated as value 18.
*) Each value not equal to 0 which is not equal to one of the six
listed values is evaluated as value 17.
Additional notes
For representation in tables, it is assumed that
geometry axes 1 to 3 are named X, Y, Z. The axis
order and not the axis identifier determines the
assignment between an offset and an axis.
Additional notes
When orientable toolholders are used, it is frequently
practical to define all tools for a non-mirrored basic
system, even those which are only used for mirrored
machining. When machining with mirrored axes, the
toolholder is then rotated such that the actual position of
the tool is described correctly. All tool length
components then automatically act in the correct
direction, dispensing with the need for control of
individual component evaluation via setting data,
depending on the mirroring status of individual axes.
8.18 Tools with a relevant tool point direction (SW 5 and higher)
Function
Up to SW 4.x
In the case of tools with a relevant tool point direction
(turning and grinding tools – tool types 400–599; see
subsection above "Sign evaluation wear"), a change
from G40 to G41/G42 or vice-versa is treated as a tool
change. If a transformation is active (e.g. TRANSMIT),
this leads to a preprocessor stop (decoding stop) and
hence possibly to deviations from the intended part
contour.
Additional notes
The subject is irrelevant with respect to face milling as
only defined tool types without relevant tool point
direction are permitted for this operation anyway.
(Tools of a type that is not expressly permitted are
treated like a ball end mill with the specified radius. A
tool point direction parameter is ignored).
Notes
Miscellaneous Functions
Function
The auxiliary function output sends information to the
PLC indicating when the NC program needs the PLC to
perform specific switching operations on the machine
tool. The auxiliary functions are output, together with
their parameters, to the PLC interface. The values and
signals must be processed by the PLC user program.
Function outputs
The following functions can be downloaded to the
programmable controller:
• Select tool T
• Tool offset D, DL (SW 5.2 and higher)
• Feed F / FA
• Spindle speed S
• H functions
• M functions
Programming
Letter[address extension]=Value
Explanation
The letters which can be used for auxiliary functions DL in SW 5.2 and higher
are:
M, S, H, T, D, DL, F.
In the following table you will find information about
the meaning and value ranges for the address
extension and the value in auxiliary function outputs.
The maximum number of auxiliary functions of the
same type per block is also specified.
T Spindle no. 1-12 0-32000 INT Tool selection Tool names are not passed to the 1
(with active (or tool names PLC interface.
tool manage- with active tool
ment) management)
D 0-9 INT Tool offset D0 deselection, 1
selection D1 default
DL Location- 1-6 ±3.4028 ex 38 REAL See tool fine Refers to previously selected 1
dependent offset selection D number
offset /FBW/
F Path feedrate 0 0,001- REAL Path feedrates 6
999 999,999
(FA) Axis No. 1-31 0,001- Axis feedrates
999 999,999
Number of functions outputs per NC block The highest number for a type specified in
Up to 10 function outputs can be programmed in one the table must not be exceeded.
NC block.
Auxiliary functions can also be output from the action
component of synchronized actions. See /FBSY/.
Grouping
The above-mentioned functions can be grouped
together. Group assignment is predefined for some
M commands. The acknowledgment behavior can be
defined by the grouping.
Acknowledgments
High-speed function outputs, QU
Functions which have not been programmed as
high-speed outputs can be defined as high-speed
outputs for individual outputs with the keyword QU.
Program execution continues without waiting for the
acknowledgment of the miscellaneous function (the
program waits for the transport acknowledgment).
Programming
M=QU(…)
H=QU(…)
Examples:
;High-speed output for H735
N10 H=QU(735)
9.1.1 M functions
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).
M3 Spindle clockwise
M4 Spindle counterclockwise
M5 Spindle stop
M6 Tool change (default setting)
M70 Spindle is switched to axis mode
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.
Programmed stop 1
Optional stop, M1
M1 can be set with
• MMC/dialog "Program Control" or
• the VDI interface.
Program execution on the NC is stopped at each of the
programmed blocks.
Programmed stop 2
An auxiliary function associated with M1 with
halt in program execution (NCK SW 6.4 and
higher, HMI SW 6.3)
Programmed halt 2 can be set via HMI/dialog "Program
control" and permits technological processes to be
interrupted at any time when the part has finished
machining. It therefore allows the operator to intervene
in the production process in order, for example, to
remove chips.
Programming example
N10 S...
N20 X... M3 M function in the block with axis movement,
spindle accelerates before the X axis
movement
N180 M789 M1767 M100 M102 M376 Max. of 5 M functions in the block
9.1.2 H functions
Programming
N10 G0 X20 Y50 H3=–11.3
Function
H functions are used to transfer information to the PLC
(programmable logic controller), in order to activate
specific switching operations. H functions are REAL
values.
Sequence
Number of functions per NC block
Up to three H functions can be programmed in one NC
block.
Programming
Rn=...
Explanation
R Arithmetic parameter
n Number of the arithmetic parameter, n= 0 to max. See machine data or
machine manufacturer for max.; default setting: max = 0-99
Function
The arithmetic parameters are used, for example, if an
NC program is not only to be valid for values assigned
once, or if you need to calculate values. The required
values can be set or calculated by the control during
program execution. Another possibility consists of
setting the arithmetic parameter values by operator
inputs. If values have been assigned to the arithmetic
parameters, they can be assigned to other
variable-setting NC addresses in the program.
Value assignments
You can assign values in the following range to the
arithmetic parameters:
Example:
R0=3.5678 R1=-37.3 R2=2 R3=-7
R4=-45678.1234
Example:
± (10-300 ... 10+300)
The value of the exponent is written after the EX
characters; maximum total number of characters: 10
(including leading signs and decimal point)
Value range of EX: -300 to +300
Example:
R0=-0.1EX-5 ;Meaning: R0 = -0.000 001
R1=1.874EX8 ;Meaning: R1 = 187 400 000
Note:
• There can be several assignments in one block incl.
assignments of expressions.
• Value assignment must be in a separate block.
Programming example:
Assignment of axis values
Programming
GOTOB <jump destination>
GOTOF <jump destination>
GOTO/GOTOC <jump destination variable>
Explanation
Function
By default, main programs, subprograms, cycles and
interrupt routines execute the blocks in the sequence in
which they were programmed.
Program jumps can be used to modify this sequence.
Sequence
Jump destinations with user-defined names can be
programmed in a routine. The command GOTOF or
GOTOB can be used to branch to a jump destination
from any other point within the same program. The
program then resumes execution at the instruction
immediately following the jump destination.
Destination backward
1. Jump with label
Label_1: ;Destination
....
GOTOB Label_1
Jump forward
2. Jump with block number
GOTOF N100
....
N100 ;Destination
Indirect jumps
3. Jump to block number
N5 R10=100
N10 GOTOF "N"<<R10 ;Jump to the block
whose number is in R10
N90
N100 ;Destination
N110
4. Jump to labels
DEF STRING[20] DEST
DEST = "Label2" ;Jump with
GOTOF DEST variable destination
Label1: T="Drill1"
....
Label2: T="Drill2" ;Destination
Additional notes
The unconditional jump must be programmed in a
separate block.
Programming examples
N10
N20 GOTOF LABEL_0 ;Jump forward to LABEL_0
N30 …
N40 Label_1: R1=R2+R3 ;Destination LABEL_1
N50
N60 LABEL_0: ;Destination LABEL_0
N70 …
N80 GOTOB LABEL_1 ;Jump backward to LABEL_1
N90 …
Programming
IF Expression GOTOB <destination>
IF Expression GOTOF <destination>
IF Expression GOTO/GOTOC <destination>
== Equal to
<> Not equal to
> Greater than
< Less than
>= Greater than or equal to
<= Less than or equal to
Function
Jump conditions can be formulated using IF instructions.
The jump to the programmed jump destination is only
performed if the jump condition is fulfilled.
Sequence
The jump condition can be programmed with any
comparison or logic operation (result: TRUE or FALSE).
The program jump is executed if the result of the
operation is TRUE.
Programming example
N40 R1=30 R2=60 R3=10 R4=11 R5=50 R6=20 Assignment of initial values
N41 MA1: G0 X=R2*COS(R1)+R5 -> Calculation and assignment to axis address
-> Y=R2*SIN(R1)+R6
N42 R1=R1+R3 R4=R4-1 Specification of variable
N43 IF R4>0 GOTOB MA1 Jump instruction with label
N44 M30 End of program
What is a subprogram?
Main program
In principle, a subprogram has the same structure as a
parts program. It consists of NC blocks with traversing
and switching commands.
Use of subprograms
Subprogram
Recurring machining sequences are programmed once
in a subprogram. Examples include certain contour
shapes, which occur repeatedly, and machining cycles.
Structure of a subprogram
Explanation
Additional notes
Subprogram name
Example:
N10 POCKET1
It is also possible to use the address word L... in
subprograms. The value can have 7 decimal places
(integers only).
Note: With address L, leading zeros are
meaningful for differentiation.
Example:
N10 L123
N20 L0123
N30 L00123
Nesting depth
main
Subprograms can also be called from a subprogram, progr.
not only from a main program.
sub-
In total, up to 12 program levels are available for this progr.
type of nested call, including the main program level. program levels
sub- max.11
progr.
This means:
Up to 11 nested subprogram calls can be issued from sub-
progr.
the main program.
backward jump
backward jump
backward jump
Note:
If you are working with SIEMENS machining and
measuring cycles, then three levels are required. If a
cycle is to be called from a subprogram, this call cannot
be issued from beyond level 9.
Subprogram call
You call the subprogram in the main program either with
address L and the subprogram number or by specifying
the subprogram name.
Example:
...
N120 L100 Subprogram call "L100.SPF":
N10 MSG (DIN subroutine")
N20 G1 G91...
...
N60 M17 ;End of subprogram
N40 G0 X50 Y50 G90 Position tool at the next machining position
Additional notes
Example:
N10 MYINISUB1 ;Subprogram call
without parameter
Program repetition, P
Main program
If a subprogram is to be executed several times in
succession, the desired number of program repetitions
can be entered at address P in the block with the
Subprogram
subprogram call. N40 FRAME P3
1 2 3
Example:
N40 FRAME P3
Value range
P: 1…9999
Function
As compared with subprogram technology, program
section repetition allows the repetition of existing
program sections in any combination within a program.
The block or program sections to be repeated are
identified by labels.
Explanation
LABEL: Jump destination; the name of the jump destination is followed by a colon
REPEAT Repeat (repeat several lines)
REPEATB Repeat block (repeat one line only)
Programming
Repeat block
LABEL: xxx
yyy
REPEATB LABEL P=n
zzz
Programming example
Repetition of positions
N10 POSITION1: X10 Y20
N20 POSITION2: CYCLE(0,,9,8) Position cycle
N30 ...
N40 REPEATB POSITION1 P=5 Execute block N10 five times
N50 REPEATB POSITION2 Execute block N20 once
N60 ...
N70 M30
Programming
Repeat area starting at label
LABEL: xxx
yyy
REPEAT LABEL P=n
zzz
Programming example
5 squares with increasing width are to be produced.
N5 R10=15
N10 Begin: R10=R10+1 Width
N20 Z=10-R10
N30 G1 X=R10 F200
N40 Y=R10
N50 X=-R10
N60 Y=-R10
N70 Z=10+R10
N80 REPEAT BEGIN P=4 Execute area from N10 to N70 four times
N90 Z10
N100 M30
Programming
Repeat area between two labels
START_LABEL: xxx
ooo
END_LABEL: yyy
ppp
REPEAT START_LABEL END_LABEL P=n
zzz
Programming example
Repeat program section from BEGIN to END
N5 R10=15
N10 Begin: R10=R10+1 Width
N20 Z=10-R10
N30 G1 X=R10 F200
N40 Y=R10
N50 X=-R10
N60 Y=-R10
N70 END:Z=10
N80 Z10
N90 CYCLE(10,20,30)
N100 REPEAT BEGIN END P=3 Execute area from N10 to N70 three times
N110 Z10
N120 M30
Programming
Repeat an area between a
label and the end label
LABEL: xxx
ooo
ENDLABEL: yyy
REPEAT LABEL P=n
zzz
Programming example
Preconditions
• Program section repetitions can be nested. Each call
uses a subprogram level.
• If M17 or RET is programmed during processing of a
program section repetition, the repetition is aborted.
The program is resumed at the block following the
REPEAT line.
• In the actual program display, the program section
repetition is displayed as a separate subprogram
level.
• If the level is canceled during the program section
repetition, the program resumes at the point after the
program section repetition call.
Example:
N5 R10=15
N10 BEGIN: R10=R10+1 Width
N20 Z=10-R10
N30 G1 X=R10 F200
N40 Y=R10 Level cancellation
N50 X=-R10
N60 Y=-R10
N70 END: Z10
N80 Z10
N90 CYCLE(10,20,30)
N100 REPEAT BEGIN END P=3 Resume program processing
N120 Z10
N130 M30
Example:
N10 G1 F300 Z-10
N20 BEGIN1:
N30 X10
N40 Y10
N50 GOTOF BEGIN2
N60 ENDLABEL:
N70 BEGIN2:
N80 X20
N90 Y30
N100 ENDLABEL: Z10
N110 X0 Y0 Z0
N120 Z-10
N130 REPEAT BEGIN1 P=2
N140 Z10
N150 X0 Y0
N160 M30
Activation
Program section repetition is activated by programming.
Programming example
Milling: Machine drill position with different technologies
N10 CENTER DRILL() Load center drill
N20 POS_1: Drill positions 1
N30 X1 Y1
N40 X2
N50 Y2
N60 X3 Y3
N70 ENDLABEL:
N80 POS_2: Drill positions 2
N90 X10 Y5
N100 X9 Y-5
N110 X3 Y3
N120 ENDLABEL:
N130 DRILL() Change drill and drilling cycle
N140 THREAD(6) Load tap M6 and threading cycle
N150 REPEAT POS_1 Repeat program section once from POS_1
up to ENDLABEL
N160 DRILL() Change drill and drilling cycle
N170 THREAD(8) Load tap M8 and threading cycle
N180 REPEAT POS_2 Repeat program section once from POS_2
up to ENDLABEL
N190 M30
Notes
Tables
Legend:
1
Default setting at beginning of program (factory settings of the control, if nothing else programmed).
2
The groups are numbered according to the table headed "List of G functions/preparatory functions" in Section 12.3.
3
Absolute end points: modal; incremental end points: non-modal; otherwise modal/non-modal depending on
syntax of G function.
4
As arc centers, IPO parameters act incrementally. They can be programmed in absolute mode with AC. With other meanings
(e.g. pitch), the address modification is ignored.
5
The vocabulary word is not valid for SINUMERIK FM-NC/810D.
6
The vocabulary word is not valid for SINUMERIK FM-NC/810D/NCU571.
7
The vocabulary word is not valid for SINUMERIK 810D.
8
The OEM can add two extra interpolation types. The names can be changed by the OEM.
9
The vocabulary word is only valid for SINUMERIK FM-NC.
10
Extended address notation cannot be used for these functions.
FGREF Reference radius with rotary axes or path reference factors Reference variable m
for orientation axes (vector interpolation) effective value
FGROUP Definition of axis/axes with path feed F is valid for all axes FGROUP
specified in (axis1, [axis2], ...)
FGROUP
FIFOCTRL Preprocessing memory control m 4
FL Speed limit for synchronized axes Real, w/o The unit set with FL[axis]=... m
(feed limit) signs G93, G94, G95 is
applicable (max.
rapid traverse)
6
FLIN Feed linear variable (feed linear) Acts on feed with m 37
G93 and G94
FMA Feed multiple axial Real, w/o m
signs
1,6
FNORM Feed normal to DIN 66025 m 37
FORI1 Feed for rotating orientation vector on large circle m
FORI2 Feed for rotation superimposed on rotated orientation m
vector
FP Fixed point: number of fixed point to be Integer, w/o G75 FP=1 s
approached signs
FPR Identification for rotary axis 0.001 ... FPR (rotary axis)
999999.999
FPRAOF Deactivate revolutional feedrate
FPRAON Activate revolutional feedrate
FRC Feed for radius and chamfer s
FRCM Feed for radius and chamfer, modal m
1,6
FTOCOF Online fine tool offset OFF m 33
6
FTOCON Online fine tool offset ON m 33
FXS Travel to fixed stop ON Integer, w/o 1 = select, m
signs 0 = deselect
FXST Torque limit for travel to fixed stop % parameter optional m
(fixed stop torque)
FXSW Monitoring window for travel to fixed stop mm, inches parameter optional
(fixed stop window) or degrees
G functions
G G function (preparatory function) Only G...
The G functions are divided into G groups. predefined,
integer
Only one G function from one group can be
written in one block. values
A G function can either be modal (until
canceled by another function from the same
group), or non-modal (only effective for the
block it is written in).
G0 Linear interpolation with rapid traverse (rapid traverse Motion commands G0 X... Z... m 1
motion)
1
G1 Linear interpolation with feedrate (linear interpolation) G1 X... Z... F... m 1
G2 Circular interpolation clockwise G2 X... Z... I... K... F... m 1
; center and end
point
G2 X... Z... CR=... F...
; radius and end pt.
G2 AR=... I... K... F...
; arc angle and
center point
G2 AR=... X... Z... F...
; arc angle
and end point
G3 Circular interpolation counterclockwise G3 ... ; otherwise as for m 1
G2
G4 Predefined dwell time Special motion G4 F... ; dwell time in s or s 2
G4 S... ; dwell time in
spindle revolut.
; separate block
G5 Oblique plunge-cut grinding Oblique s 2
plunge-cutting
G7 Compensatory motion during oblique plunge-cut grinding Start position s 2
G9 Exact stop - deceleration s 11
1
G17 Selection of working plane X/Y Infeed direction Z m 6
G18 Selection of working plane Z/X Infeed direction Y m 6
G19 Selection of working plane Y/Z Infeed direction X m 6
G25 Lower working area limitation Value assignments G25 X.. Y.. Z..; separate s 3
in block
G26 Upper working area limitation Channel axes G26 X.. Y.. Z..; sep. block s 3
G33 Thread interpolation with constant pitch 0.001, ..., Motion command G33 Z... K... SF=... m 1
2000.00 ; Cylinder thread
mm/rev G33 X... I... SF=...
; face thread
G33 Z... X... K... SF=...
; taper thread
(in Z axis path
greater than in X
axis)
G33 Z... X... I... SF=...
; taper thread
(path in X axis
greater than in
Z axis)
2
G34 Linear degressive speed change [mm/rev ] Motion command G34 X.. Y.. Z.. I.. J.. K.. F.. m 1
2
G35 Linear progressive speed change [mm/rev ] Motion command G35 X.. Y.. Z.. I.. J.. K.. F.. m 1
1
G40 Tool radius compensation OFF m 7
G41 Tool radius compensation to left of contour m 7
G42 Tool radius compensation to right of contour m 7
G53 Suppression of current zero offset (non-modal) incl. programmed s 9
offsets
1
G450 Transition circle Corner behavior m 18
with tool radius
G451 Intersection of equidistant paths compensation m 18
1
G460 Collision monitoring for approach and retraction block ON m 48
G461 Extend border block with arc if no intersection in m 48
TRC block
G462 Extend border block with line if m 48
1
G500 Deactivate all settable frames if G500 does not contain a m 8
value
G505 5. ... 99. Settable zero offset m 8
.... G599
1
G601 Block change on exact stop fine Only effective with m 12
G602 Block change on exact stop coarse active G60 or m 12
G603 Block change at IPO - end of block G9 with m 12
programmable
G641 Exact stop - continuous-path mode G641 AIDS=... m 10
transition
G642 Corner rounding with axial precision m 10
rounding
G643 Block-internal corner rounding m 10
G644 Corner rounding with specified axis dynamics m 10
G621 Corner deceleration at all corners Only in conjunction G621 AIDS=... m 57
with continuous-
path mode
G700 Dimension in inches and inch/min m 13
(lengths + velocities + system variable)
1
G710 Metric dimension in mm and mm/min m 13
(lengths + velocities + system variable)
1
G810 , ..., G group reserved for the OEM 31
G819
1
G820 , ..., G group reserved for the OEM 32
G829
G931 Feedrate specified by travel time Travel time m 15
G942 Freeze linear feedrate and constant cutting rate or spindle m 15
speed
G952 Freeze revolutional feedrate and constant cutting rate or m 15
spindle speed
G961 Constant cutting speed (as for G94) ON Feed type G961 S... LIMS=... F... m 15
G962 Linear or revolutional feedrate and constant cutting rate m 15
G971 Constant cutting speed (as for G94) OFF Feed type m 15
G972 Freeze linear or revolutional feedrate and constant spindle m 15
speed
GOTOF Jump forwards (towards the end of the program)
GOTOB Jump backwards (towards the start of the program)
GWPSOF Deselect constant grinding wheel peripheral GWPSOF(T No.) s
speed (GWPS)
GWPSON Select constant grinding wheel peripheral GWPSON(T No.) s
speed (GWPS)
H... Auxiliary function output to PLC Real/INT Can be set by MD H100 or H2=100
Program: (machine
REAL: manufacturer)
±3,4028ex38
INT:
-2147483648
+214748364
8
Display:
±999 999
999,9999
4
I Interpolation parameters Real s
I1 Intermediate point coordinate Real s
IC Incremental dimensioning 0, ..., X=IC(10) s
±99999.999
°
INCW Travel on a circle involute in CW direction Real End point: INCW/INCCW X... Y... Z... m 1
with interpolation of involute by G17/G18/G19 Center point: INCW/INCCW I... J... K...
Radius with CR > 0: INCW/INCCW CR=... AR...
INCCW Travel on a circle involute in CCW direction Real m 1
with interpolation of involute by G17/G18/G19 Angle of rotation in Direct programming:
degrees between INCW/INCCW I... J... K...
start and end CR=... AR=...
vectors
ISD Insertion depth Real m
4
J Interpolation parameters Real s
J1 Intermediate point coordinate Real s
5
JERKLIMA Reduction or excessive rise in maximum axial 1, ..., 200 Validity range is 1 JERKLIMA[X]= ...[%] m
jerk (jerk axial) to 200%
4
K Interpolation parameters Real s
K1 Intermediate point coordinate Real s
KONT Travel round contour on tool offset m 17
KONTC Approach/retract with continuous curvature polynomial m 17
KONTT Approach/retract with continuous tangent polynomial m 17
L Subprogram number Integer, up L10 s
to 7 places
5
LEAD Lead angle Real m
1
LFOF Interruption of thread cutting OFF m 41
LFON Interruption of thread cutting ON m 41
LFPOS Axial retraction to a position m 46
1
LFTXT Tangential tool direction on retraction m 46
LFWP Non-tangential tool direction on retraction m 46
LIMS Speed limitation with G96/G961 and G97 0.001 ... m
99 999.999
M... Switching operations INT Up to 5 unassigned
Display: M functions can be
0, ..., assigned by the
999 999 999 machine
manufacturer
Program:
0;...;
2147483647
10
M0 Programmed stop
10
M1 Optional stop
10
M2 End of main program with return to beginning of program
ORIAXES Linear interpolation of machine axes or orientation axes Final orientation: Parameter settings as m 51
Vector specification follows:
ORICONCW Interpolation on a circular peripheral surface in CW m 51
A3, B3, C3 or
direction Direction vectors
Euler/RPY angle normalized
ORICONCC Interpolation on a circular peripheral surface in CCW A2, B2, C2 m 51
A6=0 B6=0 C6=1
W direction Additional inputs: Arc angle is specified as
ORICONIO Interpolation on a circular peripheral surface with Rotational vectors m 51
traversing angle with
intermediate orientation setting A6, B6, C6 NUT=...
ORICONTO Interpolation on a circular peripheral surface in tangential Arc angle of taper in NUT=+... with ≤ 180 deg. m 51
transition degrees 0 < SLOT NUT= -... with ≥ 180 deg.
<180 degrees
ORICURVE Interpolation of orientation with specification of motion of Intermediate orientation m 51
two contact points of tool Intermediate normalized A7=0 B7=0
vectors: A7, B7, C7 C7=1
ORIPLANE Interpolation in a plane (corresponds to ORIVECT) m 51
large-radius circular interpolation 2. 2nd contact point
of tool: XH, YH, ZH,
ORIPATH Tool orientation trajectory referred to path Transformation m 51
package handling,
see /FB/, TE4
ORIROTA Angle of rotation in relation to absolute direction of rotation m 54
ORIROTR Angle of rotation relative to plane between start and end m 54
orientations
ORIROTT Angle of rotation relative to change in orientation vector m 54
ORIRPY Orientation angle via RPY angle m 50
5
ORIS Orientation modification Real Referring to the m
(orientation smoothing factor) path
ORIVECT Large-radius circular interpolation (identical to ORIPLANE) m 51
ORIVIRT1 Orientation angle via virtual orientation axes (definition 1) m 50
ORIVIRT2 Orientation angle via virtual orientation axes (definition 1) m 50
6
ORIMKS Tool orientation in the machine coordinate system m 25
1,6
ORIWKS Tool orientation in the workpiece coordinate system m 25
OS Oscillation on/off Integer, w/o
signs
6
OSC Continuous tool orientation smoothing m 34
OSCILL Axis assignment for oscillation - Axis: 1-3 infeed m
activate oscillation axes
OSCTRL Oscillation control options Integer, w/o m
signs
OSE Oscillating: End point m
OSNSC Oscillating: Number of spark-out cycles m
number spark out cycles)
1,6
OSOF Tool orientation smoothing OFF m 34
OSP1 Oscillating: Left reversal point Real m
(oscillating: position 1)
OSP2 Oscillating: Right reversal point Real m
(oscillating: position 2)
6
OSS Tool orientation smoothing at end of block m 34
6
OSSE Tool orientation smoothing at start and end of block m 34
OST1 Oscillating: Stop at left reversal point Real m
OST2 Oscillating: Stop at right reversal point Real m
OVR Speed override 1, ..., 200% m
OVRA Axial speed override 1, ..., 200% m
Legend:
1
Default setting at beginning of program (factory settings of the control, if nothing else programmed).
2
The group numbering corresponds to the table "Overview of statements" in Section 11.3.
3
Absolute end points: modal; incremental end points: non-modal; otherwise modal/non-modal depending on
syntax of G function.
4
As arc centers, IPO parameters act incrementally. They can be programmed in absolute mode with AC. With other meanings
(e.g. pitch), the address modification is ignored.
5
The vocabulary word is not valid for SINUMERIK FM-NC/810D.
6
The vocabulary word is not valid for SINUMERIK FM-NC/810D/NCU571.
7
The vocabulary word is not valid for SINUMERIK 810D.
8
The OEM can add two extra interpolation types. The names can be changed by the OEM.
9
The vocabulary word is only valid for SINUMERIK FM-NC.
10
Extended address notation cannot be used for these functions.
Address Address type Modal/ G70/ G700/ G90/ IC AC DC, CIC, Qu Data type
identifier non- G71 G710 G91 ACN, CAC,
modal ACP CDC,
CACN,
CACP
L Subprogram s Integer without
number sign
P Subprogram s Integer without
pass number sign
N Block number s Integer without
sign
G G function See list Integer without
of G sign
functions
F Feed, dwell time m, s x x Real without sign
OVR Override m Real without sign
S Spindle, dwell m, s x Real without sign
time
SPOS Spindle position m x x x Real
SPOSA Spindle position m x x x Real
across block
boundaries
T Tool number m x Integer without
sign
D Offset number m x Integer without
sign
M, H, Auxiliary s x M: Integer
functions without sign
H: Real
Address Address type Modal/ G70/ G700/ G90/ IC AC DC, CIC, Qu Data type
identifier non- G71 G7100 G91 ACN, CAC,
modal ACP CDC,
CACN,
CACP
AX: Axis Variable axis *) x x x x x x Real
identifier
IP: Variable s x x x x x Real
Interpolation interpolation
Parameter parameter
POS: Positioning axis m x x x x x x x Real
Positioning axis
POSA: Positioning axis m x x x x x x x Real
Positioning axis across block
above end of boundaries
block
POSP: Positioning axis m x x x x x x Real: end
Positioning axis in parts position/
in parts (oscillation) Real: partial
length
Integer: option
PO: Polynomial Polynomial s x x Real without sign
1)
coefficient 1 - 8 times
FA: Feed axial Axial feed m x x Real without sign
FL: Feed limit Axial feed limit m x Real without sign
OVRA: Override Axial override m Real without sign
2)
ACC : Axial m Real without sign
Acceleration acceleration
axial
FMA: Feed Synchronized m x Real without sign
multiple axial feed axial
STA: Sparking out m Real without sign
Sparking-out time axial
time axial
SRA: Sparking Retraction path m x x Real without sign
out retract on external input
axial
OS: Oscillation on/off m Integer without
Oscillating on/off sign
OST1: Stopping time at m Real
Oscillating left reversal point
time 1 (oscillation)
OST2: Stopping time at m Real
Oscillating right reversal
time 2 point (oscillation)
OSP1: Left reversal m x x x x x x Real
Oscillating point (oscillation)
position 1
OSP2: Right reversal m x x x x x x Real
Oscillating point (oscillation)
position 2
OSE: Oscillating Oscillation end m x x x x x x Real
end position position
OSNSC: Oscillating: m Integer without
Oscillating: number of spark sign
number spark out cycles
out cycles
Address Address type Modal/ G70/ G700/ G90/ IC AC DC, CIC, Qu Data type
identifier non- G71 G7100 G91 ACN, CAC,
modal ACP CDC,
CACN,
CACP
OSCTRL: Oscillation m Integer without
Oscillating control options sign: set options,
control integer without
sign: reset
options
OSCILL: Axis assignment m Axis: 1 - 3 infeed
Oscillating for oscillation, axes
activate
oscillation
FDA: Axis feedrate for s x Real without sign
Feed DRF axial handwheel
override
FGREF Reference m x x Real without sign
radius
POLF LIFTFAST m x x Real without sign
position
FXS: Activate travel to m Integer without
Fixed stop fixed stop sign
FXST: Torque limit for m Real
Fixed stop travel to fixed
torque stop
FXSW: Monitoring m Real
Fixed stop window for travel
window to fixed stop
In these addresses, an axis or an expression of axis type is specified in square brackets. The data type in the above column shows the type of value assigned.
*) Absolute end points: modal, incremental end points: non-modal, otherwise modal/non-modal depending on syntax of G function.
Address Address type Modal/ G70/ G700/ G90/ IC AC DC, CIC, Qu Max. Data type
identifier non- G71 G710 G91 ACN, CAC, no.
modal ACP CDC,
CACN,
CACP
Axis values and end points
X, Y, Z, A, B, C Axis *) x x x x x x 8 Real
AP: Angle polar Polar angle m/s* x x x 1 Real
RP: Polar radius Polar radius m/s* x x x x x 1 Real without sign
Tool orientation
1)
A2, B2, C2 Euler angles s 3 Real
1)
A3, B3, C3 Direction vector s 3 Real
component
A4, B4, C4 for Normal vector m 3 Real
block beginning component
1)
Address Address type Modal/ G70/ G700/ G90/ IC AC DC, CIC, Qu Max. Data type
identifier non- G71 G710 G91 ACN, CAC, no.
modal ACP CDC,
CACN,
CACP
ALF: Angle for lift fast m 1 Integer without
Angle lift fast sign
DILF: Distance for lift m x x 1 Real
Distance lift fast fast
FP Fixed point: s 1 Integer without
Number of fixed sign
point to be
approached
RNDM: Modal rounding m x x 1 Real without sign
Round modal
RND: Non-modal s x x 1 Real without sign
Round rounding
CHF: Chamfer Chamfer s x x 1 Real without sign
non-modal
CHR: Chamfer Chamfer in s x x 1 Real without sign
original direction
of motion
ANG: Angle Contour angle s 1 Real
ISD: Insertion depth m x x 1 Real
Insertion depth
DISC: Transition circle m x x 1 Real without sign
Distance overshoot in tool
– radius
compensation
OFFN Offset contour - m x x 1 Real
normal
DITS Thread run-in m x x 1 Real
path
DITE Thread run-out m x x 1 Real
path
Nibbling/punching
SPN: Number of path s 1 INT
Stroke/Punch sections per
2)
Number block
SPP: Stroke Length of a path m 1 Real
2)
/Punch Path section
Grinding
ST: Sparking out Sparking-out s 1 Real without sign
time time
SR: Sparking out Retraction path s x x 1 Real without sign
retract path
Approximate positioning criteria
ADIS Appr. distance m x x 1 Real without sign
ADISPOS Appr. distance m x x 1 Real without sign
for rapid traverse
Measurement
MEAS: Measure Measure with s 1 Integer without
touch-trigger sign
probe
MEAW: Measure with s 1 Integer without
Measure without touch-trigger sign
deleting probe without
distance-to-go deleting
distance-to-go
Axis, spindle behavior
Address Address type Modal/ G70/ G700/ G90/ IC AC DC, CIC, Qu Max. Data type
identifier non- G71 G710 G91 ACN, CAC, no.
modal ACP CDC,
CACN,
CACP
LIMS: Spindle speed m 1 Real without sign
Limit spindle limitation
speed
Feeds
FAD Speed of the s x 1 Real without sign
slow infeed
motion
FD: Path feed for s x 1 Real without sign
Feed DRF handwheel
override
FORI1 Feed for rotating m 1 Real without sign
orientation
vector on large
circle
FORI2 Feed for rotation m 1 Real without sign
superimposed
on rotated
orientation
vector
FRC Feed for radius s x Real without sign
and chamfer
FRCM Feed for radius m x Real without sign
and chamfer,
modal
OEM addresses
OMA1: OEM – OEM address 1 m x x x 1 Real
2)
address 1
OMA2: OEM – OEM address 2 m x x x 1 Real
2)
address 2
OMA3: OEM – OEM address 3 m x x x 1 Real
2)
address 3
OMA4: OEM – OEM address 4 m x x x 1 Real
2)
address 4
OMA5: OEM – OEM address 5 m x x x 1 Real
2)
address 5
*) Absolute end points: modal, incremental end points: non-modal, otherwise modal/non-modal depending on syntax of G function.
**) As circle center points, IPO parameters act incrementally. They can be programmed in absolute mode with AC. The address modification is ignored when the parameters have
other meanings (e.g. thread pitch).
Group 4: FIFO
G500 1. Deactivate all settable G54-G57 frames if G500 does not contain a value m Def.
G54 2. 1. settable zero offset ng m
G55 3. 2. settable zero offset ng m
G56 4. 3. settable zero offset ng m
G57 5. 4. settable zero offset ng m
G505 6. 5. settable zero offset ng m
G5xx n+1 nth settable zero offset m
G599 100. 99. settable zero offset ng m
G450 1. Transition circle (tool travels round workpiece corners on a circular path) m Def.
G451 2. Intersection of equidistant paths (tool backs off from the workpiece corner) m
CUT2D 1. Cutter – compensation – type 2-dimensional 2 1/2D tool offset determined by G17 m De-
– G19 fault
CUT2DF 2. Cutter – compensation – type 2-dimensional frame – relative: 2 1/2D tool offset m
determined by frame
The tool offset is effective in relation to the current frame (inclined plane)
CUT3DC # 3. Cutter – compensation – type 3dimensional circumference: 3D tool compensation m
circumference milling
CUT3DF # 4. Cutter – compensation – type 3dimensional face: 3D tool offset with inconstant m
tool orientation
CUT3DFS # 5. Cutter – compensation – type 3dimensional face: 3D tool offset face milling with m
constant tool orientation independent of active frame
CUT3DFF # 6. Cutter – compensation – type 3dimensional face frame: 3D tool offset face milling m
with constant tool orientation dependent on active frame
CUT3DCC # 7. Cutter – compensation – type 3dimensional circumference: with limit surfaces m
CUT3DCCD # 8. Cutter – compensation – type 3dimensional circumference: with limit surfaces with m
differential tool
ORIWKS # 1. Tool – orientation in workpiece coordinate system: Tool orientation in workpiece m Def.
coordinate system (WCS)
ORIMKS # 2. Tool – orientation in machine coordinate system: Tool orientation in machine m
coordinate system (MCS)
# The vocabulary word is not valid for SINUMERIK 810D/NCU571.
ORIC # 1. Orientation change continuously: Orientation changes at outside corners are m De-
superimposed on the circle block to be inserted fault
ORID # 2. Orientation change discontinuously: Orientation changes are performed before m
the circle block
# The vocabulary word is not valid for SINUMERIK 810D/NCU571.
DIAMOF 1. Diametral programming off: Diameter programming OFF; radius programming for m Def.
G90/G91
DIAMON 2. Diametral Diameter programming ON for G90/G91 m
DIAM90 3. Diametral programming G90: Radius programming for G90; radius programming m
for G91
DIAMCYCOF 4. Diametral programming off: Radius programming for G90/G91: ON. m
The G-code of this group that was last active remains active for display
Two G groups are reserved for the OEM. This enables the OEM to program functions that can be customized.
# The vocabulary word is not valid for SINUMERIK 810D/NCU571.
FTOCOF # 1. Fine – tool – offset – compensation OFF: Online fine tool offset OFF m Def.
FTOCON # 2. Fine – tool – offset – compensation ON: Online fine tool offset ON X m
RTLION 1. Rapid traverse (G0) with linear interpolation On: G0 with linear interpolation m Def.
RTLIOF 2. Rapid traverse (G0) with linear interpolation Off: G0 without linear interpolation m
(single-axis interpolation)
TOWSTD 1. Tool wear default initial setting value for offsets in tool length m Def.
TOWMCS 2. Tool WearCoard MCS:Wear values in machine coordinate system (MCS) m
TOWWCS 3. Tool WearCoard WCS:Wear values in workpiece coordinate system (WCS) m
TOWBCS 4. Tool WearCoard BCS:Wear values in basic coordinate system (MCS) m
TOWTCS 5. Tool WearCoard TCS:Wear values in the tool coordinate system (tool carrier ref. m
point T at the tool holder)
TOWKCS 6. Wear values in the coordinate system of the tool head for kinetic transformation m
(differs from MCS by tool rotation)
1. Coordinate system
2. Axis groups
Parameters Explanation
1 to 8
FGROUP Channel axis Variable F value reference: defines the axes to which the path feed refers.
identifier Maximum number of axes: 8
The default setting for the F value reference is activated with FGROUP ( ) without parameters.
CLGON # REAL: Centerless grinding ON
Max. speed of
regulating wheel
CLGOF # Centerless grinding OFF
Parameters Parameters Explanation
1 to 8 2 to 9
SPLINEPATH INT: spline group AXIS: Definition of the spline group
(must be 1) Geometry or Maximum number of axes: 8
special axis
identifier
BRISKA AXIS Switch on brisk axis acceleration for the programmed axes
SOFTA AXIS Activate smooth (jerk-limited) axis acceleration for programmed axes
DRIVEA ### AXIS Activate knee-shaped acceleration characteristic for programmed axes
JERKA AXIS The acceleration behavior set in machine data $MA_AX_JERK_ENABLE is
active for the programmed axes.
# The vocabulary word is not valid for SINUMERIK FM-NC/810D/NCU571.
## The vocabulary word is not valid for SINUMERIK 810D.
### The vocabulary word is only valid for SINUMERIK FM-NC.
3. Coupled motion
6. Revolutional feedrate
7. Transformations
For each transformation type, there is one command for one transformation per channel. If there are several transformations of the same transformation type per channel, the
transformation can be selected with the corresponding command and parameters. It is possible to deselect the transformation by a transformation change or an explicit deselection.
8. Spindle
9. Grinding
STOPRE Stop processing: Stop preprocessing until all prepared blocks are executed in main run.
14. Interrupts
CANCEL INT: number of Aborts the modal motion-synchronous action with the specified ID
synchronized
action
17. Communication
The SPI function can also be used to program a spindle instead of an axis: GET(SPI(1))
#) The vocabulary word is not valid for SINUMERIK FM-NC/NCU571.
Parameter 1 Explanation
CHANDATA INT: Set channel number for channel data access (only permitted in initialization block); the subsequent
Channel accesses refer to the channel set with CHANDATA.
number
20. Messages
22. Alarms
23. Compensations
For synchronous spindles, the axis parameters are programmed with SPI(1) or S1.
*) Only special system variables may be used as result variables. These are described in the Programming Guide Advanced in the section on "Writing main run variables".
**) Only special system variables may be used as result variables. These variables are described in the Programming Guide Advanced in the list of system variables.
Predefined functions are invoked by means of a function call. Function calls return a value. They can be included as an operand in an expression.
1. Coordinate system
2. Geometry functions
INTERSEC BOOL: VAR REAL [11]: VAR REAL [11]: VAR REAL [2]: Intersection: Calculation of inter-
Error status First contour Second contour Result vector: section
element element Intersection The intersection between two contour
coordinate, elements is calculated. The
abscissa and intersection coordinates are return
ordinate values. The error status indicates
whether an intersection was found.
3. Axis functions
4. Tool management
Result Parameter 1 Parameter 2 Explanation
NEWT # INT: T number STRING [32]: INT: Duplo number Create new tool (prepare tool data). The duplo
Tool name number can be omitted.
GETT # INT: T number STRING [32]: INT: Duplo number Get T number for tool identifier
Tool name
4. Tool management
Result Parameter 1 Parameter 2 Explanation
GETACTT # INT: Status INT: STRING [32]: Get active tool from a group of tools with the same
T number Tool name name.
TOOLENV INT: Status STRING: Save a tool environment in the SRAM with a
Name specified name.
DELTOOLENV INT: Status STRING: Delete a tool environment in the SRAM with a
specified name All tool environments if no name is
Name
specified.
GETTENV INT: Status STRING: INT: Read:
Name Number[0] T number,
Number[1] D number,
Number[2] DL number
from a tool environment with a specified name
#) The vocabulary word is not valid for SINUMERIK FM-NC.
Result 1. Par. 2. Par. 3. Par. 4. Par. 5. Par. 6. Par. 7. Par. 8. Par. 9. Par.
SETTCOR INT: REAL: STRING: INT: INT: INT: STRING: INT: INT: INT:
Status Corr. Com- To corr. Type of Index of Name of int. T number D number DL number
vector ponent(s) com- write geo axis tool
[0-3] ponent(s) operation environ.
Explanation Change tool components taking into account all supplementary conditions which apply to evaluation of individual
components. Details: see Description of Functions W1
5. Arithmetics
5. Arithmetics
6. String functions
Data types
Type Remarks Value range
31
INT Integers with sign ± (2 –1)
–300 +300
REAL Real numbers (fractions with decimal point, LONG REAL ± (10 ... 10 )
to IEEE)
BOOL Boolean value TRUE, FALSE or 1, 0 1, 0
CHAR 1 character in ASCII code 0 ... 255
STRING Character string, number of characters in [...] (max. of 200 Sequence of values with 0 ... 255
characters)
AXIS Axis names (axis addresses) only Any axis identifiers in the channel
FRAME Geometrical parameters for translation, rotation, scale, —
mirror
Notes
Appendix
A Abbreviations ..........................................................................................................A-444
B Terms ......................................................................................................................A-454
C References..............................................................................................................A-477
A Abbreviations
AS Automation System
BA Mode of operation
BP Basic Program
C1 .. C4 Channel 1 to channel 4
COM Communication
CP Communication Processor
CR Carriage Return
DC Direct Control: The rotary axis is moved along the shortest path to the
absolute position within one revolution.
DIR Directory
DW Data Word
EIA Code Special punchtape code, number of punched holes per character
always odd
ENC Encoder
FB Function Block
FM Function Module
HD Hard Disk
HW Hardware
I Input
I/O Input/Output
IM Interface Module
IPO Interpolator
IS Interface Signal
ISO Code Special punchtape code, number of punched holes per character
always even
KÜ Transmission Ratio
LF Line Feed
MB Megabyte
MC Measuring Circuit
MD Machine Data
MS- Microsoft
NC Numerical Control
O Output
OI Operator Interface
OP Operator Panel
OPT Options
PC Personal Computer
PG Programming Device
POS Positioning
PP Production Planning
SD Setting Date
SEA Setting Data Active: Identification (file type) for setting data
SK Softkey
SM Stepper Motor
SR Subroutine
SW Software
T Tool
TC Tool Change
TO Tool Offset
TOA Tool Offset Active: Identification (file type) for tool offsets
WO Work Offset
ZOA Zero Offset Active (WOA): Identification (file type) for zero offset data
µC Microcontroller
B Terms
A
A spline The A spline runs tangentially through the programmed interpolation
points (3rd degree polynomial).
Acceleration with jerk In order to obtain the optimum acceleration gradient for the machine
limitation while providing effective protection for the mechanical components,
the machining program offers a choice between instantaneous
acceleration and continuous (smooth) acceleration.
Access rights The CNC program blocks and data are protected by a 7-level system
of access restrictions:
• Three password levels for system manufacturers, machine
manufacturers and users and
• Four keyswitch settings which can be evaluated via the PLC.
Alarms All -> messages and alarms are displayed in plain text on the operator
panel. Alarm text also includes the date, time and corresponding
symbol for the reset criterion.
Alarms and messages are displayed separately.
1. Alarms and messages in the parts program
Alarms and messages can be displayed directly from the parts
program in plaintext.
2. Alarms and messages from PLC
Alarms and messages relating to the machine can be dis-
played from the PLC program in plaintext. No additional function
block packages are required for this purpose.
Analog input/output Analog input/output modules are signal transducers for analog
module process signals.
Analog input modules convert analog measured values into digital
values that can be processed in the CPU.
Analog output modules convert digital values into manipulated
variables.
Approach fixed machine Approach motion towards one of the predefined -> fixed machine
point points.
Auxiliary functions Auxiliary functions can be used to pass -> parameters to the -> PLC in
-> parts programs, triggering reactions there which are defined by the
machine manufacturer.
Axes CNC axes are classified according to their functional scope as:
• Axes: Interpolative path axes
• Positioning axes: Non-interpolative infeed and positioning axes
with axis-specific feedrates; axes can move across block limits.
Positioning axes need not be involved in workpiece machining as
such and include tool feeders, tool magazines, etc.
Axis identifier In compliance with DIN 66217, axes are identified as X, Y and Z for a
right-handed rectangular -> coordinate system.
-> Rotary axes rotating around X, Y, Z are assigned the identifiers A,
B, C. Additional axes, which are parallel to those specified, can be
identified with other letters.
B
B spline The programmed positions for the B spline are not interpolation
points, but merely "check points". The curve generated does not pass
directly through these check points, but only in their vicinity (1st, 2nd
or 3rd degree polynomial).
Backup battery The backup battery provides non-volatile storage for the -> user
program in the -> CPU and ensures that defined data areas and flags,
timers and counters are retentive.
Backup memory The backup memory guarantees the backup of memory areas of the
-> CPU without backup battery. A programmable number of timers,
counters, flags and data bytes can be backed up.
Basic coordinate system Cartesian coordinate system, is mapped onto machine coordinate
system by means of transformation.
In the -> parts program, the programmer uses the axis names of the
basic coordinate system. The basic coordinate system exists in
parallel to the -> machine coordinate system when no ->
transformation is active. The difference between the systems relates
only to the axis identifiers.
Block All files required for programming and program execution are known
as blocks.
Block search The block search function allows selection of any point in the parts
program at which machining must start or be continued. The function
is provided for the purpose of testing parts programs or continuing
machining after an interruption.
Bus connector A bus connector is an S7-300 accessory that is supplied with the ->
I/O modules. The bus connector extends the -> S7-300 bus from the
-> CPU or an I/O module to the next adjacent I/O module.
C
C axis Axis about which the tool spindle describes a controlled rotational and
positioning movement.
C spline The C spline is the best known and the most widely used spline. The
spline passes through each of the interpolation points at a tangent
and along the axis of curvature. 3rd-degree polynomials are used.
Channel A channel is characterized by the fact that it can process a -> parts
program independent of other channels. A channel exclusively
controls the axes and spindles assigned to it. Parts program
sequences of different channels can be coordinated through ->
synchronization.
Channel structure The channel structure makes it possible to process the -> programs of
individual channels simultaneously and asynchronously.
Circular interpolation The -> tool is required to travel in a circle between defined points on
the contour at a specified feed while machining the workpiece.
CNC -> NC
CNC high-level language The high-level language offers: -> user variables, -> predefined user
variables, -> system variables, -> indirect programming, -> arithmetic
and angular functions, -> relational and logic operations, -> program
jumps and branches, -> program coordination (SINUMERIK 840D),
-> macros.
CNC programming The CNC programming language is based on DIN 66025 with high-
language level language expansions. The -> CNC programming language and
-> high-level language expansions support the definition of macros
(sequenced statements).
Compensation axis Axis having a setpoint or actual value modified by the compensation
value.
Compensation value Difference between the axis position measured by the position sensor
and the desired, programmed axis position.
Contour monitoring The following error is monitored within a definable tolerance band as a
measure of contour accuracy. Overloading of the drive, for example,
may result in an unacceptably large following error. In such cases, an
alarm is output and the axes stopped.
Coordinate system See -> machine coordinate system, -> workpiece coordinate system
Cycles support The available cycles are listed in menu "Cycle support" in the
"Program" operating area. Once the desired machining cycle has
been selected, the parameters required for assigning values are
displayed in plaintext.
D
Data block 1. Data unit of the -> PLC which can be accessed by -> HIGHSTEP
programs.
2. Data unit of the -> NC: Data blocks contain data definitions for
global user data. These data can be initialized directly when they
are defined.
Data transfer program PCIN is a routine for transmitting and receiving CNC user data, e.g.
PCIN parts programs, tool offsets, etc. via the serial interface. The PCIN
program can run under MS-DOS on standard industrial PCs.
Data word A data unit, two bytes in size, within a -> data block.
Deletion of distance-to- Command in parts program which stops machining and clears the
go remaining path distance to go.
Digital input/output Digital modules are signal transducers for binary process signals.
module
Dimensions in metric Position and lead/pitch values can be programmed in inches in the
and inch systems machining program. The control is set to a basic system regardless of
the programmable unit of measure (G70/G71).
Drift compensation When the CNC axes are in the constant motion phase, automatic drift
compensation is implemented in the analog speed control.
E
Editor The editor makes it possible to create, modify, extend, join and insert
programs/texts/program blocks.
Electronic handwheel Electronic handwheels can be used to traverse the selected axes
simultaneously in manual mode. The handwheel clicks are analyzed
by the increment analyzer.
Exact stop When an exact stop is programmed, a position specified in the block
is approached accurately and, where appropriate, very slowly. In
order to reduce the approach time, -> exact stop limits are defined for
rapid traverse and feed.
Exact stop limit When all path axes reach their exact stop limits, the control responds
as if it had reached its destination point precisely. The -> parts
program continues execution at the next block.
F
Fast retraction from When an interrupt is received, it is possible to initiate a motion via the
contour CNC machining program which allows the tool to be retracted quickly
from the workpiece contour currently being machined. The retraction
angle and the distance retracted can also be parameterized. An
interrupt routine can be executed after the rapid retraction.
(SINUMERIK FM-NC, 840D).
Feedforward control, Contour inaccuracies resulting from following errors can be almost
dynamic completely eliminated by the dynamic, acceleration-dependent
feedforward control function. Feedforward control ensures an
excellent degree of machining accuracy even at high tool path
velocities.
Feedforward control can only be selected or deselected for all axes
together via the parts program.
Feedrate override The current feedrate setting entered via the control panel or by the
PLC is overlaid on the programmed feedrate (0–200%). The feedrate
can also be corrected by a programmable percentage factor (1–
200%) in the machining program.
Finished-part contour Contour of the finished workpiece. See also -> blank.
Fixed machine point A point defined uniquely by the machine tool, such as the reference
point.
Fixed-point approach Machine tools can execute defined approaches to fixed points such as
tool-change points, loading points, pallet-change points, etc. The
coordinates of these points are stored on the control. Where possible,
the control moves these axes in -> rapid traverse.
G
General reset The following memories of the -> CPU are erased by a general reset
operation:
Geometry axis Geometry axes are used to describe a 2- or 3-dimensional area in the
workpiece coordinate system.
Global main Each global main run/subroutine can be stored only once under its
run/subroutine name in the directory; the same program name in different directories
with different contents is not possible as a global program.
H
Helical interpolation The helical interpolation function is ideal for machining internal and
external threads using form milling cutters and for milling lubrication
grooves. The helix comprises two movements:
1. Circular movement in one plane
2. Linear movement perpendicular to this plane.
HIGHSTEP Combination of the programming features for the -> PLC in the
S7-300/400 range.
I
I/O module I/O modules create the link between the CPU and the process. I/O
modules are:
• ->Digital input/output modules
• ->Analog input/output modules
• ->Simulator modules
Initialization block Initialization blocks are special -> program blocks. They contain
values which must be assigned before the program is executed.
Initialization blocks are used primarily for initializing predefined data or
global user data.
Initialization file An initialization file can be created for each -> workpiece. In it, the
various variable value instructions which apply exclusively to one
workpiece can be stored.
Intermediate blocks Movements with selected tool offset (G41/G42) can be interrupted by
a limited number of intermediate blocks (blocks without axis motions
in the offset plane). When such blocks are used, the tool offset can
still be calculated correctly. The permissible number of intermediate
blocks read in advance by the control can be set via system
parameters.
Interpolator Logical unit of the -> NCK which determines intermediate values for
the movements to be traversed on the individual axes on the basis of
destination positions specified in the parts program.
Interrupt routine Interrupt routines are special -> subroutines which can be started by
events (external signals) in the machining process. The parts program
block being processed is aborted and the axis position at the instant
of interruption is stored automatically.
J
Jog Control system operating mode (setup): The machine can be set up in
Jog mode. Individual axes and spindles can be jogged by means of
direction keys. Other functions in Jog mode are -> reference point
approach, -> Repos and -> Preset -> (set actual value).
K
Keyswitch 1. S7-300: The keyswitch is the mode selector switch on the
-> CPU. The keyswitch is operated by means of a removable key.
2. 840D/FM-NC: The keyswitch on the -> machine control panel has
4 positions which are assigned functions by the operating system
of the control. There are also three keys of different colors
belonging to the keyswitch that can be removed in the specified
positions.
KÜ Transmission Ratio
L
Languages The user interface texts, system messages and alarms are available
in five system languages (floppy disk):
English, French, German, Italian and Spanish.
The user can select two of the listed languages at a time in the
control.
Linear axis The linear axis is an axis which, in contrast to a rotary axis, describes
a straight line.
Linear interpolation The tool travels along a straight line to the destination point while
machining the workpiece.
Load memory On the CPU 314 of the -> PLC, the load memory is identical with the
-> working memory.
Look Ahead The Look Ahead function is a means of optimizing the machining
velocity by looking ahead over a parameterizable number of
traversing blocks.
Look Ahead for contour The control detects and reports the following types of collision:
violations 1. Path is shorter than tool radius.
2. Width of inside corner is less than the tool diameter.
M
Machine Control operating area
Machine control panel An operator panel on a machine tool with operating elements such as
keys, rotary switches, etc. and simple indicators such as LEDs. It is
used for direct control of the machine tool via the PLC.
Machine coordinate System of coordinates based on the axes of the machine tool.
system
Machine zero A fixed point on the machine tool which can be referenced by all
(derived) measurement systems.
Macros A set of instructions grouped under one identifier. In the program, the
identifier represents the set of grouped instructions.
Main block A block prefixed by ":" containing all the parameters required to start
execution of a -> parts program.
Main program -> Parts program identified by a number or name in which other main
programs, subroutines or -> cycles may be called.
MDA Control system operating mode: Manual Data Automatic. In the MDA
mode, individual program blocks or block sequences with no
reference to a main program or subroutine can be input and executed
immediately afterwards through actuation of the NC Start key.
Measuring circuits • SINUMERIK FM-NC: The requisite control circuits for axes and
spindles are integrated in the control module as standard. A
maximum total of 4 axes and spindles can be implemented, with
no more than 2 spindles.
• SINUMERIK 840D: The signals from the sensors are analyzed in
the SIMODRIVE 611D drive modules. The maximum configuration
is a total of 8 axes and spindles, with up to 5 spindles being
permissible.
Messages All messages programmed in the parts program and -> alarms
detected by the system are displayed in plain text with date and time
and the corresponding symbol for the delete criterion on the operator
panel. Alarms and messages are displayed separately.
Metric system Standardized system of units for lengths in millimeters (mm), meters
(m), etc.
Mode An operating concept on a SINUMERIK control. The modes -> Jog, ->
MDA, -> Automatic are defined.
Mode group All axes/spindles are assigned to one and only one channel at any
given time. Each channel is assigned to a mode group
The same -> mode is always assigned to the channels of a mode
group.
Multipoint interface The multipoint interface (MPI) is a 9-pin sub-D port. A parameterizable
number of devices can be connected to an MPI for the purpose of
communicating with one another:
• Programming devices
• MMI (HMI) systems
• Other automation systems
The "Multipoint Interface MPI" parameter block of the CPU contains
the -> parameters which define the properties of the multipoint
interface.
N
NC Numerical Control It incorporates all the components of the machine
tool control system: -> NCK, -> PLC, -> MMC, -> COM.
Note: CNC (computerized numerical control) would be a more
appropriate description for the SINUMERIK 840D control or FM-NC :
computerized numerical control.
Node number The node number is the "contact address" of a -> CPU or the ->
programming device or another intelligent I/O module if these devices
are exchanging data with one another via a -> network. The node
number is assigned to the CPU or the programming device
by the S7 tool -> "S7 Configuration".
NURBS Motion control and path interpolation are implemented internally in the
control on the basis of NURBS (Non-Uniform Rational B Splines). A
standard procedure is thus available (SINUMERIK 840D) as an
internal control function for all modes of interpolation.
O
Oblique-plane machining Drilling and milling operations on workpiece surfaces which are
oblique to the coordinate planes of the machine are supported by the
"Oblique surface machining" function.
Offset memory Data area in the control in which tool offset data are stored.
Operator interface The operator interface (OI) is the human-machine interface of a CNC.
It takes the form of a screen and has eight horizontal and eight
vertical softkeys.
Oriented spindle stop Stops the workpiece spindle at a specified orientation angle, e.g. to
perform an additional machining operation at a specific position.
Oriented tool retraction RETTOOL: If machining is interrupted (e.g. when a tool breaks), a
program command can be used to retract the tool in a user-specified
orientation by a defined distance.
P
Parameters 1. S7-300: The S7-300 uses two types of parameter:
- Parameter of a STEP7 statement
A parameter of a STEP7 statement is the address of the
operand to be processed or a constant.
- Parameter of a -> parameter block
A parameter of a parameter block determines the behavior
of a module.
2. 840D/FM-NC:
- Control operating area
- Computation parameter, can be set any number of times or
queried by the programmer for any purpose in the parts
program.
Parts program The parts program management function can be organized according
management to -> workpieces. The size of the user memory determines the number
of programs and data to be managed. Each file (programs and data)
can be given a name consisting of a maximum of 16 alphanumeric
characters.
Path axis Path axes are all the machining axes in the -> channel which are
controlled by the -> interpolator such that they start, accelerate, stop
and reach their end positions simultaneously.
Path feed The path feed acts on -> path axes. It represents the geometrical sum
of the feeds on the participating -> geometry axes.
Path velocity The maximum programmable path velocity depends on the input
resolution. With a resolution of 0.1mm, for example, the maximum
programmable path velocity is 1000 m/min.
PG Programming Device
• SINUMERIK 840D:
The PLC user program, the user data and the basic PLC program
are stored together in the PLC user memory. The PLC user
memory can be expanded to up to 96 KB.
PLC programming The PLC is programmed with the STEP7 software. The STEP 7
programming software is based on the standard WINDOWS operating
system and incorporates the functionality of STEP5 programming with
innovative expansions and developments.
Polar coordinates A coordinate system which defines the position of a point on a plane
in terms of its distance from the origin and the angle formed by the
radius vector with a defined axis.
Positioning axis An axis which performs an auxiliary movement on a machine tool (e.g.
tool magazine, pallet transport). Positioning axes are axes that do not
interpolate with the -> path axes.
Power ON The action of switching the control off and then on again.
Preset The control zero point can be redefined in the machine coordinate
system by means of the Preset function. Preset does not cause the
axes to move; instead, a new position value is entered for the current
axis positions.
Program block Program blocks contain the main programs and subroutines of the ->
parts programs.
Programmable frames Programmable -> frames can be used to define new coordinate
system starting points dynamically while the parts program is running.
A distinction is made between absolute definition using a new frame
and additive definition with reference to an existing starting point.
Programmable logic Programmable logic controllers (PLC) are electronic controllers whose
controller functions are stored as a program in the control unit. The design and
wiring of the unit are not, therefore, dependent on the control
functions. Programmable logic controllers have the same structure as
a computer, i.e. they consist of a CPU with memory, input/output
modules and an internal bus system. The I/Os and programming
language are selected according to the requirements of the control
technology involved.
Programmable working Limitation of the movement area of the tool to within defined,
area limitation programmable limits.
Programming key Characters and character sequences which have a defined meaning
in the programming language for -> parts programs (see
Programming Guide).
Protection zone Three-dimensional area within a -> working area which the tool tip is
not permitted to enter.
Q
Quadrant error Contour errors on quadrant transitions caused by frictional fluctuations
compensation on guideways can be largely eliminated by means of quadrant error
compensation. A circularity test is performed to parameterize the
quadrant error compensation function.
R
R parameter Calculation parameter. The programmer can assign or request the
values of the R parameter in the -> parts program as required (R
variable).
Rail This rail is used to mount the modules of the S7-300 system.
Rapid traverse The highest traversing speed of an axis used, for example, to bring
the tool from an idle position to the -> workpiece contour or retract it
from the workpiece contour.
Reference point Point on the machine tool with which the measuring system of the
-> machine axes is referenced.
Remanence Data areas in data blocks, such as timers, counters and flags are
remanent if their contents are not lost in the case of a restart or Power
Off.
Rigid tapping This function is used to tap holes without the use of a compensating
chuck. The spindle is controlled as an interpolative rotary axis and drill
axis, with the result that threads are tapped precisely to the final
drilling depth, for example, in blind tapped holes (precondition:
Spindle axis mode).
Rotary axis Rotary axes cause the tool or workpiece to rotate to a specified angle
position.
Rotary axis, The range of motion of a rotary axis can be set to smaller than 360
continuously turning degrees or defined as continuous in both directions, depending on the
application. Continuously turning rotary axes are used, for example,
for eccentric machining, grinding and winding.
Rounding axis Rounding axes cause the workpiece or tool to rotate to an angle
position described on a graduated grid. When the grid position has
been reached, the axis is "in position".
S
S7 Configuration S7 Configuration is a tool for parameterizing modules. S7
Configuration is used to set a variety of
-> parameter blocks of the -> CPU and the I/O modules on the
-> programming device. These parameters are uploaded to the CPU.
S7-300 bus The S7-300 bus is a serial data bus which supplies modules with the
appropriate voltage and via which they exchange data with one
another. The connection between the modules is made by means of
-> bus connectors.
Safety functions The control includes continuously active monitoring functions which
detect faults in the -> CNC, the programmable controller (-> PLC) and
the machine so early that damage to the workpiece, tool or machine
rarely occurs. In the event of a fault, the machining operation is
interrupted and the drives stopped. The cause of the malfunction is
logged and an alarm issued. At the same time, the PLC is notified that
a CNC alarm is pending.
Serial RS-232 interface For data input / output, one serial RS-232 interface is available on the
MMC module MMC100, and two serial RS-232 interfaces on the MMC
modules MMC101 and MMC102. Machining programs and
manufacturer and user data can be imported and exported via these
interfaces.
Setting data Data which provide the control with information about properties of the
machine tool in a way defined by the system software.
Softkey A key whose name appears on an area of the screen. The choice of
softkeys displayed is adapted dynamically to the operating situation.
The freely assignable function keys (softkeys) are assigned to
functions defined in the software.
Software limit switches Software limit switches define the limits of the travel range of an axis
and prevent the slide contacting the hardware limit switches. Two
pairs of values can be assigned per axis and activated separately via
the -> PLC.
Spline interpolation Using the spline interpolation function, the control is able to generate
a smooth curve from just a small number of specified interpolation
points along a setpoint contour.
Standard cycles Standard cycles are used to program machining operations which
repeat frequently:
• For drilling/milling
• For turning (SINUMERIK FM-NC)
The available cycles are listed in menu "Cycle support" in the
"Program" operating area. Once the desired machining cycle has
been selected, the parameters required for assigning values are
displayed in plaintext.
Subblock Block prefixed by "N" containing information for a machining step such
as a position parameter.
Synchronized axes Synchronized axes require the same amount of time to traverse their
path as -> geometry axes for their path.
System memory The system memory is a memory in the CPU, where the following
data is stored:
• Data required by the operating system
• The folllowing operands: Timers, counters, flags
System variable A variable which exists although it has not been programmed by the
-> parts program programmer. It is defined by the data type and the
variable name, which is prefixed with $. See also -> User-defined
variable.
T
Teach In Teach In is a means of creating or correcting parts programs. The
individual program blocks can be input via the keyboard and executed
immediately.
Positions approached via the direction keys or handwheel can also be
stored.
Additional information such as G functions, feedrates or M functions
can be entered in the same block.
Tool Software tool for the entry and editing of -> parameters of a parameter
block. Tools include:
• -> S7 Configuration
• S7 TOP
• S7 Info
Tool A tool employed to shape the workpiece, for example, a turning tool,
milling cutter, drill, laser beam, etc.
Tool nose radius A contour is programmed on the assumption that a pointed tool will be
compensation used. Since this is not always the case in practice, the curvature
radius of the tool being used is specified so that the control can make
allowance for it. The curvature center point is guided equidistantly to
the contour at an offset corresponding to the curvature radius.
Tool radius In order to program a desired -> workpiece contour directly, the
compensation control must traverse a path equidistant to the programmed contour,
taking into account the radius of the tool used (G41/G42).
Traversing range The maximum permissible travel range for linear axes is ± 9 decades.
The absolute value depends on the selected input and position control
resolution and the unit of measurement (inch or metric).
U
User memory All programs and data such as parts programs, subroutines,
comments, tool offsets, zero offsets/frames and channel and program
user data can be stored in the common CNC user memory.
User program User programs for S7-300 automation systems are created using the
STEP 7 programming language. The user program has a modular
structure and is comprised of individual blocks.
The basic block types are:
Code blocks: Contain the STEP 7 commands.
Data blocks: Contain constants and variables for the STEP 7
program.
User-defined variable Users can define variables in the -> parts program or data block
(global user data) for their own use. A definition contains a data type
specification and the variable name. See also -> system variable.
V
Variable definition A variable is defined through the specification of a data type and a
variable name. The variable name can be used to address the value
of the variable.
Vocabulary words Words with a specific notation which have a defined meaning in the
programming language for -> parts programs.
W
Work offset -> Zero offset
Working memory The working storage is a Random Access Memory in the -> CPU
which the processor accesses as it executes the application
program.
Working space Three-dimensional zone into which the tool tip can be moved on
account of the physical design of the machine tool.
See also -> protection zone.
Workpiece coordinate The origin of the workpiece coordinate system is the -> workpiece
system zero. In machining operations programmed in the workpiece
coordinate system, the dimensions and directions refer to this
system.
Workpiece zero The workpiece zero forms the starting point for the ->
workpiece coordinate system. It is defined by distances to the
machine zero.
Z
Zero offset Specification of a new reference point for a coordinate system through
reference to an existing zero and a -> frame.
-> Work offset
1. Settable
SINUMERIK FM-NC: Four independent zero offsets can be
selected for each CNC axis.
SINUMERIK 840D: A parameterizable number of settable zero
offsets is available for each CNC axis. Each of the zero offsets can
be selected by G functions and selection is exclusive.
2. External
All offsets which define the position of the workpiece zero can be
overlaid with an external zero offset
- defined by handwheel (DRF offset) or
- defined by the PLC.
3. Programmable
Zero offsets can be programmed for all path and positioning axes
by means of the TRANS instruction.
C References
General Documentation
/ST7/ SIMATIC
Products for Totally Integrated Automation und Micro Automation
Catalog ST 70
Order No.: E86060-K4670-A111-A8-7600
/Z/ MOTION-CONNECT
Cable, Connectors & System Components for SIMATIC, SINUMERIK,
MASTERDRIVES and SIMOTION
Catalog NC Z
Order No.: E86060-K4490-A001-B1-7600
Electronic Documentation
User Documentation
Manufacturer/Service Documentation
a) Lists
/LIS/ SINUMERIK 840D/840Di/810D (03.04 Edition)
SIMODRIVE 611D
Lists
Order No.: 6FC5297-7AB70-0BP0
b) Hardware
/ASAL/ SIMODRIVE (10.03 Edition)
Planning Guide General Information for Asynchronous Motors
Order No.: 6SN1197-0AC62-0BP0
Please enter the ID No.: 15257461 in the "Search" field (top right) and
click on "go".
c) Software
/FB1/ SINUMERIK 840D/840Di/810D (03.04 Edition)
Description of Functions Basic Machine (Part 1)
(the various sections are listed below)
Order No.: 6FC5297-7AC20-0BP0
A2 Various Interface Signals
A3 Axis Monitoring, Protection Zones
B1 Continuous Path Mode, Exact Stop and Look Ahead
B2 Acceleration
D1 Diagnostic Tools
D2 Interactive Programming
F1 Travel to Fixed Stop
G2 Velocities, Setpoint/Actual-Value Systems, Closed-Loop Control
H2 Output of Auxiliary Functions to PLC
K1 Mode Group, Channel, Program Operation Mode
K2 Axes, Coordinate Systems, Frames, Actual-Value System for
Workpiece, External Zero Offset
K4 Communication
N2 EMERGENCY STOP
P1 Transverse Axes
P3 Basic PLC Program
R1 Reference Point Approach
S1 Spindles
V1 Feeds
W1 Tool Offset
d) Installation
and Start-up
Z
Z 2-56, 2-59, 3-85, 3-88, 3-91, 3-98, 3-100
Z1 4-141
Z2 4-141
Z3 4-141
Z4 4-142
SIEMENS AG
Corrections
For publication:
A&D MC BMS
P.O. Box 3180
SINUMERIK 840D/840Di/810D
D-91050 Erlangen, Germany
Fundamentals
Phone: +49 (0) 180 5050 – 222 [Hotline]
Fax: +49 (0) 9131 98 – 2176 [Documentation]
User Documentation
Email: motioncontrol.docu@erlf.siemens.de
Programming Guide
From
Order No.: 6FC5298-7AB00-0BP0
Name:
03.04 Edition
Phone: /
Fax: /
SINUMERIK
SIROTEC
SINUMERIK SINUMERIK SIMODRIVE SINUMERIK SINUMERIK SINUMERIK SINUMERIK
840D/810D 840D/840Di/ Accessories 840D/810D/ 840D/840Di/ 840D/840Di/ 840D/840Di/
810D/ FM-NC 810D 810D 810D
Program. Guide Operator’s Guide System Overview Configuring Operator Description of Description of
– Short Guide – ManualTurn (HW) *) Components Functions Functions
– Fundamentals *) – Short Guide ManualTurn – 810D (HW) *) – ManualTurn Synchronized
– Advanced *) – ShopMill – 840D – ShopMill Actions
– Cycles – Short Guide ShopMill – ShopTurn
– Measuring Cycles – ShopTurn
– ISO Turning/Milling – Short Guide ShopTurn
Manufacturer/Service Documentation
SINUMERIK
SIMODRIVE SINUMERIK SINUMERIK SINUMERIK SINUMERIK SINUMERIK
611D 840D/840Di/ 840D/840Di/ 840D/810D 840D/810D 840D/810D
840D/810D 810D 810D
Manufacturer/Service Documentation
MOTION
SINUMERIK SINUMERIK SINUMERIK SINUMERIK SINUMERIK CONTROL
SIMODRIVE SINUMERIK SIMODRIVE SIMODRIVE SIMODRIVE SIMODRIVE SYSTEMS
840D 840D/840Di 840D 840D
810D 611D 611D
611D