PDF Programming Manual Fundamentals Siemens
PDF Programming Manual Fundamentals Siemens
Fundamental Geometrical
1
______________
Principles
Fundamental Principles of
2
SINUMERIK 840D sl ______________
NC Programming
3
______________
Creating an NC program
Fundamentals 4
______________
Tool change
5
Programming Manual ______________
Tool offsets
6
______________
Spindle motion
7
______________
Feed control
8
______________
Geometry settings
9
______________
Motion commands
10
______________
Tool radius compensation
11
______________
Path Action
Coordinate transformations
12
______________
(frames)
13
______________
Auxiliary function outputs
14
Valid for ______________
Supplementary commands
DANGER
indicates that death or severe personal injury will result if proper precautions are not taken.
WARNING
indicates that death or severe personal injury may result if proper precautions are not taken.
CAUTION
with a safety alert symbol, indicates that minor personal injury can result if proper precautions are not taken.
CAUTION
without a safety alert symbol, indicates that property damage can result if proper precautions are not taken.
NOTICE
indicates that an unintended result or situation can occur if the corresponding information is not taken into
account.
If more than one degree of danger is present, the warning notice representing the highest degree of danger will
be used. A notice warning of injury to persons with a safety alert symbol may also include a warning relating to
property damage.
Qualified Personnel
The device/system may only be set up and used in conjunction with this documentation. Commissioning and
operation of a device/system may only be performed by qualified personnel. Within the context of the safety notes
in this documentation qualified persons are defined as persons who are authorized to commission, ground and
label devices, systems and circuits in accordance with established safety practices and standards.
Prescribed Usage
Note the following:
WARNING
This device may only be used for the applications described in the catalog or the technical description and only
in connection with devices or components from other manufacturers which have been approved or
recommended by Siemens. Correct, reliable operation of the product requires proper transport, storage,
positioning and assembly as well as careful operation and maintenance.
Trademarks
All names identified by ® are registered trademarks of the Siemens AG. The remaining trademarks in this
publication may be trademarks whose use by third parties for their own purposes could violate the rights of the
owner.
Disclaimer of Liability
We have reviewed the contents of this publication to ensure consistency with the hardware and software
described. Since variance cannot be precluded entirely, we cannot guarantee full consistency. However, the
information in this publication is reviewed regularly and any necessary corrections are included in subsequent
editions.
SINUMERIK® Documentation
The SINUMERIK documentation is organized in three parts:
● General Documentation
● User Documentation
● Manufacturer/service documentation
An overview of publications (updated monthly) indicating the language versions available
can be found on the Internet at:
http://www.siemens.com/motioncontrol
Select the menu items "Support" → "Technical Documentation" → "Overview of Publications".
The Internet version of DOConCD (DOConWEB) is available at:
http://www.automation.siemens.com/doconweb
Information about training courses and FAQs (Frequently Asked Questions) can be found at
the following website:
http://www.siemens.com/motioncontrol under "Support".
Target group
This publication is intended for:
● Programmers
● Project engineers
Benefits
With the programming manual, the target group can develop, write, test, and debug
programs and software user interfaces.
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 3
Preface
Standard scope
This Programming Guide describes the functionality afforded by standard functions.
Extensions or changes made by the machine tool manufacturer are documented by the
machine tool manufacturer.
Other functions not described in this documentation might be executable in the control. This
does not, however, represent an obligation to supply such functions with a new control or
when servicing.
Further, for the sake of simplicity, this documentation does not contain all detailed
information about all types of the product and cannot cover every conceivable case of
installation, operation or maintenance.
Technical Support
If you have any technical questions, please contact our hotline:
Europe/Africa
Phone +49 180 5050 222
Fax +49 180 5050 223
Internet http://www.siemens.com/automation/support-request
America
Phone +1 423 262 2522
Fax +1 423 262 2200
E-Mail [email protected]
Asia/Pacific
Phone +86 1064 719 990
Fax +86 1064 747 474
E-mail mailto:[email protected]
Note
Country telephone numbers for technical support are provided under the following Internet
address:
Enter http://www.siemens.com/automation/service&support
Fundamentals
4 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Preface
Export version
The following functions are not available in the export version:
Function 840DE sl
Helical interpolation 2D+6 −
(Basic version, no options)
Milling machining package −
Five axis machining package −
Handling transformation package −
Multi-axis interpolation (> 4 interpolating axes) −
OA NCK compile cycles −
Clearance control 1D/3D in position-control cycle 1) −
Synchronized actions 1) #
(Basic version, no options)
Master-value coupling and curve-table interpolation #
Sag compensation, multi-dimensional #
Synchronized actions, stage 2 1) −
Electronic gear 1) −
Electronic transfer −
# Restricted functionality
- Function not available
1) In the case of the SINUMERIK 840DE sl export version, the restricted functions are limited to
"max. 4 interpolating axes“
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 5
Preface
Fundamentals
6 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Table of contents
Preface ...................................................................................................................................................... 3
1 Fundamental Geometrical Principles ....................................................................................................... 13
1.1 Workpiece positions.....................................................................................................................13
1.1.1 Workpiece coordinate systems ....................................................................................................13
1.1.2 Cartesian coordinates ..................................................................................................................15
1.1.3 Polar coordinates .........................................................................................................................18
1.1.4 Absolute dimensions....................................................................................................................19
1.1.5 Incremental dimension.................................................................................................................20
1.2 Working planes ............................................................................................................................23
1.3 Zeros and reference points ..........................................................................................................25
1.4 Coordinate systems .....................................................................................................................27
1.4.1 Machine coordinate system (MCS)..............................................................................................27
1.4.2 Basic coordinate system (BCS) ...................................................................................................31
1.4.3 Basic zero system (BZS) .............................................................................................................33
1.4.4 Settable zero system (SZS) .........................................................................................................34
1.4.5 Workpiece coordinate system (WCS)..........................................................................................35
1.4.6 What is the relationship between the various coordinate systems? ............................................36
2 Fundamental Principles of NC Programming ........................................................................................... 37
2.1 Name of an NC program..............................................................................................................37
2.2 Structure and contents of an NC program ...................................................................................39
2.2.1 Blocks and block components .....................................................................................................39
2.2.2 Block rules....................................................................................................................................42
2.2.3 Value assignments.......................................................................................................................44
2.2.4 Comments....................................................................................................................................45
2.2.5 Skipping blocks ............................................................................................................................46
3 Creating an NC program.......................................................................................................................... 49
3.1 Basic procedure ...........................................................................................................................49
3.2 Available characters.....................................................................................................................51
3.3 Program header ...........................................................................................................................53
3.4 Program examples.......................................................................................................................55
3.4.1 Example 1: First programming steps ...........................................................................................55
3.4.2 Example 2: NC program for turning .............................................................................................56
3.4.3 Example 3: NC program for milling ..............................................................................................58
4 Tool change............................................................................................................................................. 61
4.1 Tool change without tool management........................................................................................62
4.1.1 Tool change with T command......................................................................................................62
4.1.2 Tool change with M06..................................................................................................................63
4.2 Tool change with tool management (option)................................................................................65
4.2.1 Tool change with T command with active tool management (option)..........................................66
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 7
Table of contents
4.2.2 Tool change with M06 with active tool management (option)..................................................... 68
4.3 Behavior with faulty T programming ........................................................................................... 70
5 Tool offsets .............................................................................................................................................. 71
5.1 Tool length compensation ........................................................................................................... 72
5.2 Tool radius compensation ........................................................................................................... 73
5.3 Tool compensation memory........................................................................................................ 74
5.4 Tool types.................................................................................................................................... 76
5.4.1 Milling tools ................................................................................................................................. 77
5.4.2 Drills ............................................................................................................................................ 79
5.4.3 Grinding tools .............................................................................................................................. 80
5.4.4 Turning tools ............................................................................................................................... 81
5.4.5 Special tools................................................................................................................................ 83
5.4.6 Chaining rule ............................................................................................................................... 84
5.5 Tool offset call (D) ....................................................................................................................... 84
5.6 Change in the tool offset data ..................................................................................................... 87
5.7 Programmable tool offset (TOFFL, TOFF, TOFFR).................................................................... 88
6 Spindle motion ......................................................................................................................................... 95
6.1 Spindle speed (S), direction of spindle rotation (M3, M4, M5).................................................... 95
6.2 Constant cutting rate (G96/G961/G962, G97/G971/G972, G973, LIMS, SCC) ....................... 100
6.3 Constant grinding wheel peripheral speed (GWPSON, GWPSOF).......................................... 107
6.4 Programmable spindle speed limitation (G25, G26)................................................................. 109
7 Feed control........................................................................................................................................... 111
7.1 Feedrate (G93, G94, G95 or F..., FGROUP, FGREF).............................................................. 111
7.2 Traversing positioning axes (POS, POSA, POSP, FA, WAITP, WAITMC) .............................. 120
7.3 Position-controlled spindle operation (SPCON, SPCOF) ......................................................... 124
7.4 Positioning spindles (SPOS, M19 and SPOSA, WAITS).......................................................... 125
7.5 Feedrate for positioning axes/spindles (FA, FPR, FPRAON, FPRAOF) .................................. 134
7.6 Percentage feedrate override (OVR, OVRRAP, OVRA)........................................................... 138
7.7 Feedrate with handwheel override (FD, FDA) .......................................................................... 140
7.8 Percentage acceleration correction (ACC) (option) .................................................................. 144
7.9 Feedrate optimization for curved path sections (CFTCP, CFC, CFIN)..................................... 146
7.10 Several feedrate values in one block (F, ST, SR, FMA, STA, SRA)......................................... 149
7.11 Non-modal feedrate (FB) .......................................................................................................... 152
8 Geometry settings.................................................................................................................................. 155
8.1 Settable zero offset (G54 to G57, G505 to G599, G53, G500, SUPA, G153).......................... 155
8.2 Selection of working plane (G17 to G19) .................................................................................. 161
8.3 Dimensions ............................................................................................................................... 165
8.3.1 Absolute dimensions (G90, AC)................................................................................................ 165
Fundamentals
8 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Table of contents
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 9
Table of contents
Fundamentals
10 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Table of contents
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 11
Table of contents
Fundamentals
12 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Fundamental Geometrical Principles 1
1.1 Workpiece positions
=
<
;
r
: r r
<
;
=
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 13
Fundamental Geometrical Principles
1.1 Workpiece positions
<
;
=
r
: r r
;
=
<
The workpiece zero (W) is the origin of the workpiece coordinate system.
Sometimes it is advisable or even necessary to work with negative position specifications.
For this reason, positions that are to the left of the zero point are assigned a negative sign ("-
").
Fundamentals
14 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Fundamental Geometrical Principles
1.1 Workpiece positions
<
3
3
; ;
3
3
<
Position Coordinates
P1 X100 Y50
P2 X-50 Y100
P3 X-105 Y-115
P4 X70 Y-75
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 15
Fundamental Geometrical Principles
1.1 Workpiece positions
3
3 3
3
=
Position Coordinates
P1 X25 Z-7.5
P2 X40 Z-15
P3 X40 Z-25
P4 X60 Z-35
Fundamentals
16 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Fundamental Geometrical Principles
1.1 Workpiece positions
< <
3
3
3
3
3 3
; =
Position Coordinates
P1 X10 Y45 Z-5
P2 X30 Y60 Z-20
P3 X45 Y20 Z-15
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 17
Fundamental Geometrical Principles
1.1 Workpiece positions
Example
<
3
3
r r
3ROH
;
Points P1 and P2 can then be described – with reference to the pole – as follows:
Fundamentals
18 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Fundamental Geometrical Principles
1.1 Workpiece positions
Example: Turning
3
3 3
3
=
In absolute dimensions, the following position specifications result for points P1 to P4:
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 19
Fundamental Geometrical Principles
1.1 Workpiece positions
Example: Milling
<
3
3
3
;
In absolute dimensions, the following position specifications result for points P1 to P3:
Fundamentals
20 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Fundamental Geometrical Principles
1.1 Workpiece positions
Example of turning
The position specifications for points P2 to P4 in incremental dimensions are as follows:
3
3 3
3
=
In incremental dimensions, the following position specifications result for points P2 to P4:
Note
With DIAMOF or DIAM90 active, the set distance in incremental dimensions (G91) is
programmed as a radius dimension.
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 21
Fundamental Geometrical Principles
1.1 Workpiece positions
Example of milling
The position specifications for points P1 to P3 in incremental dimensions are:
<
3
3
3
In incremental dimensions, the following position specifications result for points P1 to P3:
Fundamentals
22 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Fundamental Geometrical Principles
1.2 Working planes
<
;
*
*
*
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 23
Fundamental Geometrical Principles
1.2 Working planes
=
<
*
*
*
Fundamentals
24 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Fundamental Geometrical Principles
1.3 Zeros and reference points
Zero points
M Machine zero
The machine zero defines the machine coordinate system (MCS). All other reference
points refer to the machine zero.
W Workpiece zero = program zero
The workpiece zero defines the workpiece coordinate system in relation to the
machine zero.
A Blocking point
Can be the same as the workpiece zero (only for lathes).
Reference points
R Reference point
Position defined by output cam and measuring system. The distance to the machine
zero M must be known so that the axis position at this point can be set exactly to this
value.
B Starting point
Can be defined by the program. The first machining tool starts here.
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 25
Fundamental Geometrical Principles
1.3 Zeros and reference points
5
%
0 $ : =
<
: :
0 ;
Fundamentals
26 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Fundamental Geometrical Principles
1.4 Coordinate systems
=P <P
;P
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 27
Fundamental Geometrical Principles
1.4 Coordinate systems
If programming is performed directly in the machine coordinate system (possible with some
G functions), the physical axes of the machine respond directly. Any workpiece clamping that
is present is not taken into account.
Note
If there are various machine coordinate systems (e.g. 5-axis transformation), then an internal
transformation is used to map the machine kinematics on the coordinate system in which the
programming is performed.
Three-finger rule
The orientation of the coordinate system relative to the machine depends on the machine
type. The axis directions follow the so-called "three-finger rule" of the right hand (according
to DIN 66217).
Seen from in front of the machine, the middle finger of the right hand points in the opposite
direction to the infeed of the main spindle. Therefore:
● the thumb points in the +X direction
● the index finger points in the +Y direction
● the middle finger points in the +Z direction
=
<
;
Fundamentals
28 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Fundamental Geometrical Principles
1.4 Coordinate systems
Rotary motions around the coordinate axes X, Y and Z are designated A, B and C. If the
rotary motion is in a clockwise direction when looking in the positive direction of the
coordinate axis, the direction of rotation is positive:
;<= <
$[HVSHUSHQGLFXODUWR
RQHDQRWKHU
%
$%&
5RWDU\D[HVURWDWLQJ
DURXQG;<=
r
&
;
$
=
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 29
Fundamental Geometrical Principles
1.4 Coordinate systems
=
<
%
<
= ;
;
<
;
& &
=
%
=
%
&
&
; <
Fundamentals
30 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Fundamental Geometrical Principles
1.4 Coordinate systems
<
;
0&6 %&6
= 0DFKLQH]HUR
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 31
Fundamental Geometrical Principles
1.4 Coordinate systems
<%&6
.LQHPDWLFBWUDQV
IRUPDWLRQ
<0&6
; %&6
%DVLFFRRUGLQDWHV\VWHP%&6
= %&6
; 0&6
0DFKLQHFRRUGLQDWHV\VWHP0&6
= 0&6
Machine kinematics
The workpiece is always programmed in a two or three dimensional, right-angled coordinate
system (WCS). However, such workpieces are being programmed ever more frequently on
machine tools with rotary axes or linear axes not perpendicular to one another. Kinematic
transformation is used to represent coordinates programmed in the workpiece coordinate
system (rectangular) in real machine movements.
References
Function Manual, Extended Functions; Kinematic Transformation (M1)
Function Manual, Special Functions; 3-Axis to 5-Axis Transformation (F2)
Fundamentals
32 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Fundamental Geometrical Principles
1.4 Coordinate systems
<
%DVLFRIIVHW
<
;
%DVLF]HURV\VWHP%=6
=
;
%DVLFFRRUGLQDWHV\VWHP%&6
=
Basic offset
The basic offset describes the coordinate transformation between BCS and BZS. It can be
used, for example, to define the palette window zero.
The basic offset comprises:
● Zero offset external
● DRF offset
● Overlaid movement
● Chained system frames
● Chained basic frames
References
Function Manual, Basic Functions; Axes, Coordinate Systems, Frames (K2)
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 33
Fundamental Geometrical Principles
1.4 Coordinate systems
<
**
<
;
6HWWDEOH]HURV\VWHP6=6
=
;
%DVLF]HURV\VWHP%=6
=
If no coordinate transformations (frames) are active, then the "settable zero system" is the
workpiece coordinate system (WCS).
Fundamentals
34 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Fundamental Geometrical Principles
1.4 Coordinate systems
Note
Coordinate transformations (frames) always refer to the "settable zero system".
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 35
Fundamental Geometrical Principles
1.4 Coordinate systems
] 3URJUDPPDEOH]HURRIIVHW
]
6HWWDEOH]HURRIIVHW
]
]
\ \
6=6 :RUNSLHFH
:&6 [
\ \
[
*
] ]
\ \
*
%=6
0&6
%&6 :&6 [
6=6 3DOOHW
[
[
%DVLFRIIVHW
[
:RUNSLHFH
6HWWDEOH]HURRIIVHW
3URJUDPPDEOH]HURRIIVHW
① A kinematic transformation is not active, i.e. the machine coordinate system and the basic
coordinate system coincide.
② The basic zero system (BZS) with the pallet zero result from the basic offset.
③ The "settable zero system" (SZS) for Workpiece 1 or Workpiece 2 is specified by the settable
zero offset G54 or G55.
④ The workpiece coordinate system (WCS) results from programmable zero offset.
Fundamentals
36 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Fundamental Principles of NC Programming 2
Note
DIN 66025 is the guideline for NC programming.
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 37
Fundamental Principles of NC Programming
2.1 Name of an NC program
Note
The name of a file stored internally in the NC memory starts with "_N_".
References
For further information on transferring, creating and storing part programs, please refer to the
Operating Manual for your user interface.
Fundamentals
38 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Fundamental Principles of NC Programming
2.2 Structure and contents of an NC program
Blocks
An NC program consists of a sequence of NC blocks. Each block contains the data for the
execution of a step in the workpiece machining.
Block components
NC blocks consist of the following components:
● Commands (statements) according to DIN 66025
● Elements of the NC high-level language
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 39
Fundamental Principles of NC Programming
2.2 Structure and contents of an NC program
Digit sequence
The digit sequence is the value assigned to the address character. The sequence of digits
can contain a sign and decimal point. The sign always appears between the address letter
and the sequence of digits. Positive signs (+) and leading zeroes (0) do not have to be
specified. 'LJLWVHTXHQFH
'LJLWVHTXHQFH
'LJLWVHTXHQFH
$GGUHVV
$GGUHVV
$GGUHVV
%ORFN
Fundamentals
40 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Fundamental Principles of NC Programming
2.2 Structure and contents of an NC program
NOTICE
An identifier must be unique and cannot be used for different objects.
● Relational operators
● Logic operators
● Arithmetic functions
● Control structures
References:
Programming Manual, Job Planning; Section: Flexible NC programming
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 41
Fundamental Principles of NC Programming
2.2 Structure and contents of an NC program
Effectiveness of commands
Commands are either modal or non-modal:
● Modal
Modal commands retain their validity with the programmed value (in all following blocks)
until:
– A new value is programmed under the same command
– A command is programmed that revokes the effect of the previously valid command
● Non-modal
Non-modal commands only apply for the block in which they were programmed.
End of program
The last block in the execution sequence contains a special word for the end of program: M2,
M17 or M30.
Start of block
NC blocks can be identified at the start of the block by block numbers. These consist of the
character "N" and a positive integer, e.g.
N40 ...
The order of the block numbers is arbitrary, however, block numbers in rising order are
recommended.
Note
Block numbers must be unique within a program in order to achieve an unambiguous result
when searching.
Fundamentals
42 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Fundamental Principles of NC Programming
2.2 Structure and contents of an NC program
End of block
A block ends with character "LF" (LINE FEED = new line).
Note
"LF" does not have to be written. It is generated automatically by the line change.
Block length
A block can contain a maximum of 512 characters (including the comment and end-of-block
character "LF").
Note
Three blocks of up to 66 characters each are normally displayed in the current block display
on the screen. Comments are also displayed. Messages are displayed in a separate
message window.
Address Meaning
N Address of block number
G Preparatory function
X,Y,Z Positional data
F Feed
S Spindle speed
T Tool
D Tool offset number
M Additional function
H Auxiliary function
Note
Certain addresses can be used repeatedly within a block, e.g.
G…, M…, H…
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 43
Fundamental Principles of NC Programming
2.2 Structure and contents of an NC program
Examples:
Note
A numeric extension must always be followed by one of the special characters "=", "(", "[",
")", "]", ",", or an operator, in order to distinguish an address with numeric extension from an
address letter with a value.
Fundamentals
44 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Fundamental Principles of NC Programming
2.2 Structure and contents of an NC program
2.2.4 Comments
To make an NC program easier to understand, comments can be added to the NC blocks.
A comment is at the end of a block and is separated from the program section of the NC
block by a semicolon (";").
Example 1:
Example 2:
Note
Comments are stored and appear in the current block display when the program is running.
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 45
Fundamental Principles of NC Programming
2.2 Structure and contents of an NC program
Programming
Blocks, which are to be skipped are marked with an oblique "/" in front of the block number.
Several consecutive blocks can also be skipped. The statements in the skipped blocks are
not executed; the program continues with the next block, which is not skipped.
1
3URJUDPH[HFXWLRQ
1
1
1
1
1
1
1
1
1
1
1
Example:
Fundamentals
46 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Fundamental Principles of NC Programming
2.2 Structure and contents of an NC program
Skip levels
Blocks can be assigned to skip levels (max. 10), which can be activated via the user
interface.
Programming is performed by assigning a forward slash, followed by the number of the skip
level. Only one skip level can be specified for each block.
Example:
Note
The number of skip levels that can be used depends on a display machine data item.
Note
System and user variables can also be used in conditional jumps in order to control program
execution.
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 47
Fundamental Principles of NC Programming
2.2 Structure and contents of an NC program
Fundamentals
48 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Creating an NC program 3
3.1 Basic procedure
The programming of the individual operation steps in the NC language generally represents
only a small proportion of the work in the development of an NC program.
Programming of the actual instructions should be preceded by the planning and preparation
of the operation steps. The more accurately you plan in advance how the NC program is to
be structured and organized, the faster and easier it will be to produce a complete program,
which is clear and free of errors. Clearly structured programs are especially advantageous
when changes have to be made later.
As every part is not identical, it does not make sense to create every program in the same
way. However, the following procedure has shown itself to be suitable in the most cases.
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 49
Creating an NC program
3.1 Basic procedure
Procedure
1. Prepare the workpiece drawing
– Define the workpiece zero
– Draw the coordinate system
– Calculate any missing coordinates
2. Define the machining sequence
– Which tools are used when and for the machining of which contours?
– In which order will the individual elements of the workpiece be machined?
– Which individual elements are repeated (possibly also rotated) and should be stored in
a subroutine?
– Are there contour sections in other part programs or subroutines that could be used
for the current workpiece?
– Where are zero offsets, rotating, mirroring and scaling useful or necessary (frame
concept)?
3. Create a machining plan
Define all machining operations step-by-step, e.g.
– Rapid traverse movements for positioning
– Tool change
– Define the machining plane
– Retraction for checking
– Switch spindle, coolant on/off
– Call up tool data
– Feed
– Path correction
– Approaching the contour
– Retraction from the contour
– etc.
4. Compile machining steps in the programming language
– Write each individual step as an NC block (or NC blocks).
5. Combine the individual steps into a program
Fundamentals
50 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Creating an NC program
3.2 Available characters
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 51
Creating an NC program
3.2 Available characters
NOTICE
Take care to differentiate between the letter "O" and the digit "0".
Note
No distinction is made between upper and lower-case characters (exception: tool call).
Note
Non-printable special characters are treated like blanks.
Fundamentals
52 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Creating an NC program
3.3 Program header
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 53
Creating an NC program
3.3 Program header
If tool orientation / coordinate transformation is being used, any transformations still active
should be deleted at the start of the program:
Fundamentals
54 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Creating an NC program
3.4 Program examples
Procedure
1. Create a new part program (name)
2. Edit the part program
3. Select the part program
4. Activate single block
5. Start the part program
References:
Operating Manual for the existing user interface
Note
In order that the program can run on the machine, the machine data must have been set
appropriately (→ machine manufacturer!).
Note
Alarms can occur during program verification. These alarms have to be reset first.
Program example 1
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 55
Creating an NC program
3.4 Program examples
Note
In order that the program can run on the machine, the machine data must have been set
appropriately (→ machine manufacturer!).
r
;
5
5
5
5 5
=
Fundamentals
56 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Creating an NC program
3.4 Program examples
Program example 2
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 57
Creating an NC program
3.4 Program examples
Note
In order that the program can run on the machine, the machine data must have been set
appropriately (→ machine manufacturer!).
ෘ ෘ
Fundamentals
58 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Creating an NC program
3.4 Program examples
[r
5
r
5
Program example 3
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 59
Creating an NC program
3.4 Program examples
Fundamentals
60 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Tool change 4
Tool change method
In chain, rotary-plate and box magazines, a tool change normally takes place in two stages:
1. The tool is sought in the magazine with the T command.
2. The tool is then loaded into the spindle with the M command.
In circular magazines on turning machines, the T command carries out the entire tool
change, that is, locates and inserts the tool.
Note
The tool change method is set via a machine data (→ machine manufacturer).
Conditions
Together with the tool change:
● The tool offset values stored under a D number have to be activated.
● The appropriate working plane has to be programmed (basic setting: G18). This ensures
that the tool length compensation is assigned to the correct axis.
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 61
Tool change
4.1 Tool change without tool management
Function
There is a direct tool change when the T command is programmed.
Application
For turning machines with circular magazine.
Syntax
Tool selection:
T<number>
T=<number>
T<n>=<number>
Tool deselection:
T0
T0=<number>
Meaning
T Command for tool selection including tool change and activation of the
tool offset
<n> Spindle number as address extension
Note:
The possibility of programming a spindle number as address extension
depends on the configuration of the machine;
→ see machine manufacturer's specifications)
<number> Number of the tool
Range of values: 0 - 32000
T0 Command for deselection of the active tool
Fundamentals
62 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Tool change
4.1 Tool change without tool management
Example
Function
The tool is selected when the T command is programmed. The tool only becomes active with
M06 (including tool offset).
Application
For milling machines with chain, rotary-plate or box magazines.
Syntax
Tool selection:
T<number>
T=<number>
T<n>=<number>
Tool change:
M06
Tool deselection:
T0
T0=<number>
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 63
Tool change
4.1 Tool change without tool management
Meaning
Example
Fundamentals
64 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Tool change
4.2 Tool change with tool management (option)
Tool management
The optional "Tool management" function ensures that at any given time the correct tool is in
the correct location and that the data assigned to the tool are up to date. It also allows fast
tool changes and avoids both scrap by monitoring the tool service life and machine
downtimes by using spare tools.
Tool name
On a machine tool with active tool management, the tools must be assigned a name and
number for clear identification (e.g. "Drill", "3").
The tool call can then be via the tool name, e.g.
T="Drill"
NOTICE
The tool name may not contain any special characters.
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 65
Tool change
4.2 Tool change with tool management (option)
4.2.1 Tool change with T command with active tool management (option)
Function
There is a direct tool change when the T command is programmed.
Application
For turning machines with circular magazine.
Syntax
Tool selection:
T=<location>
T=<name>
T<n>=<location>
T<n>=<name>
Tool deselection:
T0
Meaning
Fundamentals
66 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Tool change
4.2 Tool change with tool management (option)
Note
If the selected magazine location is not occupied in a tool magazine, the command acts as
for T0. The selection of the next occupied magazine location can be used to position the
empty location.
Example
A circular magazine has locations 1 to 20 with the following tool assignment:
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 67
Tool change
4.2 Tool change with tool management (option)
Note
If the "Select the first available tool from the group" search method is employed, the
sequence must first be defined within the tool group being loaded. In this case group T10
is loaded, as T15 is blocked.
When the strategy "Take the first tool with "active" status from the group" is applied, T1 is
loaded.
4.2.2 Tool change with M06 with active tool management (option)
Function
The tool is selected when the T command is programmed. The tool only becomes active with
M06 (including tool offset).
Application
For milling machines with chain, rotary-plate or box magazines.
Fundamentals
68 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Tool change
4.2 Tool change with tool management (option)
Syntax
Tool selection:
T=<location>
T=<name>
T<n>=<location>
T<n>=<name>
Tool change:
M06
Tool deselection:
T0
Meaning
Note
If the selected magazine location is not occupied in a tool magazine, the command acts as
for T0. The selection of the next occupied magazine location can be used to position the
empty location.
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 69
Tool change
4.3 Behavior with faulty T programming
Example
MD22562 TOOL_CHANGE_ERROR_MODE
Bit Value Meaning
7 0 Basic setting!
With the T programming, a check is made immediately as to whether the NCK
recognizes the T number. If not, an alarm is triggered.
1 The programmed T number will only be checked following D selection. If the NCK
does not recognize the tool number, an alarm is issued during D selection.
This response is desirable if, for example, tool programming is also intended to
achieve positioning and the tool data is not necessarily available (circular magazine).
Fundamentals
70 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Tool offsets
Workpiece dimensions are programmed directly (e.g. according to the production drawing).
5
Therefore, tool data such as milling tool diameter, cutting edge position of the turning tool
(counterclockwise/clockwise turning tool) and tool length does not have to be taken into
consideration when creating the program.
3URJUDPPHGFRQWRXU
&RUUHFWHGWRROSDWK
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 71
Tool offsets
5.1 Tool length compensation
F F F F
This length is measured and entered in the tool compensation memory of the control
together with definable wear values. From this data, the control calculates the traversing
movements in the infeed direction.
Note
The compensation value of the tool length depends on the spatial orientation of the tool (see
"Tool length compensation for orientable toolholders".
Fundamentals
72 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Tool offsets
5.2 Tool radius compensation
(TXLGLVWDQW
(TXLGLVWDQW
NOTICE
The tool radius compensation is applied corresponding to the presetting CUT2D or
CUT2DF (see Section "2D tool offset (CUT2D, CUT2DF) (Page 331)".
References
The various options for the tool radius compensation are described in detail in Section "Tool
radius compensations".
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 73
Tool offsets
5.3 Tool compensation memory
NOTICE
Values that have been entered once in the compensation memory are included in the
processing at each tool call.
Tool type
The tool type (drill, milling or turning tool) determines which geometry data is necessary and
how this is taken into account.
3 WRROWLS
5 UDGLXV
6 FXWWLQJHGJH
FHQWHUSRLQW
/
56
3
/
Fundamentals
74 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Tool offsets
5.3 Tool compensation memory
)
/HQJWK
5DGLXV
The tool geometry variables consist of several components (geometry, 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 compensation memory is
activated.
How these values are calculated in the axes is determined by the tool type and the current
plane (G17/G18/G19).
References
Function Manual, Basic Functions; Tool Offsets (W1); Section "Tool edge"
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 75
Tool offsets
5.4 Tool types
Fundamentals
76 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Tool offsets
5.4 Tool types
Tool parameters
The following figures provide an overview of which tool parameters (DP...) for milling tools
are entered in the compensation memory:
(QWULHVLQ
WRROSDUDPHWHUV )
)
'3 [\
'3 *HRPHWU\OHQJWK
/HQJWK /HQJWK$GDSWHU
'3 *HRPHWU\UDGLXV
/HQJWK7RWDO
'3 $GDSWHUOHQJWK
)5HIHUHQFHSRLQWDGDSWHUZLWKWRRO
LQVHUWHG WRROKROGHUUHIHUHQFHSRLQW
:HDUYDOXHV (IIHFW
DVUHTXLUHG
/HQJWKLQ=
*
5DGLXVLQ;<
)v7RROKROGHU
/HQJWKLQ< UHIHUHQFHSRLQW
6HWUHPDLQLQJ *
5DGLXVLQ=;
YDOXHVWR /HQJWKLQ;
*
5DGLXVLQ<=
$IL[HGDVVLJQPHQWLVSRVVLEOHIRU***
HJOHQJWK ;OHQJWK =OHQJWK <VHH)%:7RROFRPSHQV
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 77
Tool offsets
5.4 Tool types
(QWULHVLQ 7RROEDVH
GLPHQVLRQ )
WRROSDUDPHWHUV
OHQJWK
7RROEDVH
'3 [\
GLPHQVLRQ
OHQJWK
7RROEDVH
'3 *HRPHWU\OHQJWK GLPHQVLRQ
)
OHQJWK
'3 *HRPHWU\UDGLXV
(IIHFW
* /HQJWKLQ= =
/HQJWKLQ<
/HQJWKLQ; <
5DGLXV75&LQ;< ;
:HDUYDOXHVDFFWR * /HQJWKLQ< <
UHTXLUHPHQWV /HQJWKLQ;
/HQJWKLQ=
;
5DGLXV75&LQ=; =
6HWUHPDLQLQJ
YDOXHVWR * /HQJWKLQ; ;
/HQJWKLQ=
/HQJWKLQ< =
5DGLXV75&LQ<= <
$IL[HGDVVLJQPHQWLVSRVVLEOHIRU***
HJOHQJWK ;OHQJWK <OHQJWK =VHH)%:7RROFRPSHQVDWLRQ
Note
Brief description of the tool parameters can be found on the user interface.
For further information, see:
References:
Function Manual, Basic Functions; Tool Offset (W1)
Fundamentals
78 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Tool offsets
5.4 Tool types
5.4.2 Drills
The following tool types are available in the "Drills" group:
Tool parameters
The following figure provides an overview of which tool parameters (DP...) for drills are
entered in the compensation memory:
(QWULHVLQ
WRROSDUDPHWHUV
)
'3 [\
'3 /HQJWK
/HQJWK
:HDUYDOXHV
DVUHTXLUHG
(IIHFW
* /HQJWKPP= )7RROKROGHU
6HWUHPDLQLQJ UHIHUHQFHSRLQW
* /HQJWKLQ<
YDOXHVWR
* /HQJWKPP;
Note
Brief description of the tool parameters can be found on the user interface.
For further information, see:
References:
Function Manual, Basic Functions; Tool Offset (W1)
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 79
Tool offsets
5.4 Tool types
Tool parameters
The following figure provides an overview of which tool parameters (DP...) for grinding tools
are entered in the compensation memory:
(QWULHVLQ
WRROSDUDPHWHUV 73* 6SLQGOHQXPEHU
'3 73* &KDLQLQJUXOH
'3 3RVLWLRQ
73* 0LQLPXPZKHHOUDGLXV
'3 /HQJWK 73* 0LQLPXPZKHHOZLGWK
'3 /HQJWK 73* &XUUHQWZKHHOZLGWK
'3 5DGLXV 73* 0D[LPXPVSHHG
73* 0D[SHULSKHUDOVSHHG
7RROQRVHSRVLWLRQ 73* $QJOHRIWKHLQFOLQHGZKHHO
:HDUYDOXHV 73* 3DUDPHWHUQRIRUUDGLXVFDOFXODWLRQ
DVUHTXLUHG )7RROKROGHUUHIHUHQFHSRLQW
6HWUHPDLQLQJ
YDOXHVWR
(IIHFW wÁ
* /HQJWKLQ<
/HQJWKLQ; )
5DGLXVLQ;<
*HRPHWU\
OHQJWK
OHQJWK
%DVH
* /HQJWKLQ;
/HQJWKLQ= 5DGLXV
5DGLXVLQ=; )
* /HQJWKLQ=
/HQJWKLQ< %DVHOHQJWK
5DGLXVLQ<= *HRPHWU\
OHQJWK
Fundamentals
80 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Tool offsets
5.4 Tool types
Note
Brief description of the tool parameters can be found on the user interface.
For further information, see:
References:
Function Manual, Basic Functions; Tool Offset (W1)
Tool parameters
The following figures provide an overview of which tool parameters (DP...) for turning tools
are entered in the compensation memory:
7XUQLQJWRRO
HJ*=;SODQH
)7RROKROGHUUHIHUHQFHSRLQW
;
)
5 6
3
/HQJWK;
5UDGLXVRIWRROQRVH
WRROUDGLXV
6SRVLWLRQRIWRROQRVHFHQWHU
/HQJWK=
7RROWLS3
WRROHGJH 'Q
=
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 81
Tool offsets
5.4 Tool types
7KHWRROSDUDPHWHU'3VSHFLILHVWKHOHQJWKRIWKHWRROQRVH
3RVLWLRQYDOXHWRSRVVLEOH
; 7RROQRVHSRVLWLRQ'3
3
=
;
3 6
=
1RWH
3DUDPHWHUVOHQJWKOHQJWKUHIHUWRWKH
SRLQWZLWKWRROQRVHSRVLWLRQEXWWR6
6 3ZLWK
(QWULHVLQ (IIHFW
WRROSDUDPHWHUV :HDUYDOXHV
DVUHTXLUHG /HQJWKLQ<
'3 [\ */HQJWKLQ;
'3
/HQJWKLQ;
'3 /HQJWK 6HWUHPDLQLQJ * /HQJWKLQ=
'3 /HQJWK YDOXHVWR
/HQJWKLQ=
*
'3 5DGLXV /HQJWKLQ<
Note
Brief description of the tool parameters can be found on the user interface.
For further information, see:
References:
Function Manual, Basic Functions; Tool Offset (W1)
Fundamentals
82 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Tool offsets
5.4 Tool types
Tool parameters
The following figure provides an overview of which tool parameters (DP...) for "Slotting saw"
tool type are entered in the compensation memory:
6ORWZLGWKE
(QWULHVLQ
WRROSDUDPHWHUV 7RROEDVHGLPHQVLRQ
/HQJWK
'3%DVHOHQJWK
'3%DVHOHQJWK ([FHVVGLP
N
'LDPHWHUG
'3*HRPHWU\GLDPHWHU
7RROEDVHGLPHQVLRQ
'3*HRPHWU\]HURZLGWK
'3*HRPHWU\RYHUVKRRW
/HQJWK
:HDUYDOXHV
(IIHFW
DVUHTXLUHG
*+DOIGLDPHWHU/LQ;3ODQHVHOHFWLRQ
([FHVVGLPLQ/<VWQGD[LV;<
6HWUHPDLQLQJ
6DZEODGHLQ5;<
YDOXHVWR
*+DOIGLDPHWHU/LQ<3ODQHVHOHFWLRQ
([FHVVGLPLQ/;VWQGD[LV;=
6DZEODGHLQ5=;
*+DOIGLDPHWHU/LQ=3ODQHVHOHFWLRQ
([FHVVGLPLQ/=VWQGD[LV<=
6DZEODGHLQ5<=
Note
Brief description of the tool parameters can be found on the user interface.
For further information, see:
References:
Function Manual, Basic Functions; Tool Offset (W1)
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 83
Tool offsets
5.5 Tool offset call (D)
References
Function Manual, Extended Functions; Grinding (W4)
Function
Cutting edges 1 to 8 (with active TOOLMAN 12) of a tool can be assigned different tool offset
data records (e.g. different offset values for the left and right cutting edge of a grooving tool).
Activation of the offset data (including the data for the tool length compensation) of a special
cutting edge is performed by calling the D number. When D0 is programmed, offsets for the
tool have no effect.
A tool radius compensation must also be activated via G41/G42.
Note
Tool length offsets take immediate effect when the D number is programmed. If no D number
is programmed, the default setting defined via the machine data is active for a tool change
(→ see machine manufacturer's specifications).
Fundamentals
84 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Tool offsets
5.5 Tool offset call (D)
Syntax
Activation of a tool offset data record:
D<number>
Activate the tool radius compensation:
G41 ...
G42 ...
Deactivation of the tool offsets:
D0
G40
Meaning
D Command for the activation of an offset data record for the active tool
The tool length compensation is applied with the first programmed traverse
of the associated length compensation axis.
Notice:
A tool length compensation can also take effect without D programming,
when the automatic activation of a tool edge has been configured for the
tool change (→ see machine manufacturer's specifications).
<number> The tool offset data record to be activated is specified via the <number>
parameter.
The type of D programming depends on the configuration of the machine
(see paragraph "Type of D programming").
Range of values: 0 - 32000
D0 Command for the deactivation of the offset data record for the active tool
G41 Command for the activation of the tool radius compensation with
machining direction left of the contour
G42 Command for the activation of the tool radius compensation with
machining direction right of the contour
G40 Command for the deactivation of the tool radius compensation
Note
The tool radius compensation is described in detail in the section "Tool radius compensation"
section.
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 85
Tool offsets
5.5 Tool offset call (D)
Type of D programming
The type of D programming is defined via machine data.
This can be done as follows:
● D number = cutting edge number
D numbers ranging from 1 to max. 12 are available for every tool T<number> or
T="Name" (with TOOLMAN). These D numbers are assigned directly to the tool cutting
edges. A compensation data record ($TC_DPx[t,d]) belongs to each D number (= cutting
edge number).
● Free selection of D numbers
The D numbers can be freely assigned to the cutting edge numbers of a tool. The upper
limit for the D numbers that can be used is limited by a machine data.
● Absolute D number without reference to the T number
Independence between D number and T number can be selected in systems without tool
management. The reference of T number, cutting edge and offset by the D number is
defined by the user. The range of D numbers is between 1 and 32000.
References:
Function Manual, Basic Functions; Tool Offset (W1)
Function Manual, Tool Management; Section: "Variants of D-number assignments"
Examples
Example 1: Tool change with T command (turning)
Fundamentals
86 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Tool offsets
5.6 Change in the tool offset data
Example 2: Different offset values for the left and right cutting edge of a grooving tool
N10 T2
N20 G0 X35 Z-20
N30 G1 D1 X10
N40... D6 Z-5
10
Z
-20 -5
Effectiveness
A change in the tool offset data takes effect the next time the T or D number is programmed.
Set tool offset data to be active immediately
The following machine data can be used to specify that entered tool offset data takes effect
immediately:
MD9440 $MM_ACTIVATE_SEL_USER
DANGER
If MD9440 is set, tool offsets resulting from changes in tool offset data during the part
program stop, are applied when the part program is continued.
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 87
Tool offsets
5.7 Programmable tool offset (TOFFL, TOFF, TOFFR)
Function
The user can use the commands TOFFL/TOFF and TOFFR to modify the effective tool length
or the effective tool radius in the NC program, without changing the tool offset data stored in
the compensation memory.
These programmed offsets are deleted again at the end of the program.
Tool length offset
Depending on the type of programming, programmed tool length offsets are assigned either
to the tool length components L1, L2 and L3 (TOFFL) stored in the compensation memory or
to the geometry axes (TOFF). The programmed offsets are treated accordingly for a plane
change (G17/G18/G19 ↔ G17/G18/G19):
● If the offset values are assigned to the tool length components, the directions in which the
programmed offsets apply, are replaced accordingly.
● If the offset values are assigned to the geometry axes, a plane change does not effect the
assignment in relation to the coordinate axes.
Tool radius offset
The command TOFFR is available for the programming of a tool radius offset.
Syntax
Tool length offset:
TOFFL=<value>
TOFFL[1]=<value>
TOFFL[2]=<value>
TOFFL[3]=<value>
TOFF[<geometry axis>]=<value>
Tool radius offset:
TOFFR=<value>
Fundamentals
88 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Tool offsets
5.7 Programmable tool offset (TOFFL, TOFF, TOFFR)
Meaning
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 89
Tool offsets
5.7 Programmable tool offset (TOFFL, TOFF, TOFFR)
Note
The TOFFR command has almost the same effect as the OFFN command (see "Tool radius
compensation (Page 285)"). There is only a difference with active peripheral curve
transformation (TRACYL) and active slot side compensation. In this case, the tool radius is
affected by OFFN with a negative sign, but by TOFFR with a positive sign.
OFFN and TOFFR can be effective simultaneously. They then generally have an additive
effect (except for slot side compensation).
Fundamentals
90 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Tool offsets
5.7 Programmable tool offset (TOFFL, TOFF, TOFFR)
Supplementary conditions
● Evaluation of setting data
The following setting data is evaluated when assigning the programmed offset values to
the tool length components:
SD42940 $SC_TOOL_LENGTH_CONST (change of tool length components on change
of planes).
SD42950 $SC_TOOL_LENGTH_TYPE (assignment of the tool length compensation
independent of tool type)
If this setting data has valid values not equal to 0, then these take preference over the
contents of G code group 6 (plane selection G17 - G19) or the tool type ($TC_DP1[<T
no.>, <D no.>]) contained in the tool data, i.e. this setting data influences the evaluation
of the offsets in the same way as the tool length components L1 to L3.
● Tool change
All offset values are retained during a tool change (cutting edge change), e.g. they are
also effective for the new tool (new cutting edge).
Examples
Example 1: Positive tool length offset
The active tool is a drill with length L1 = 100 mm.
The active plane is G17, i.e. the drill points in the Z direction.
The effective drill length is to be increased by 1 mm. The following variants are available for
the programming of this tool length offset:
TOFFL=1
or
TOFFL[1]=1
or
TOFF[Z]=1
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 91
Tool offsets
5.7 Programmable tool offset (TOFFL, TOFF, TOFFR)
In this example, the offset of 1 mm in the Z axis is retained when changing to G18 in block
N60; the effective tool length in the Y axis is the unchanged tool length of 100 mm.
However, in block N100, the offset is effective in the Y axis when changing to G18 as it was
assigned to tool length L1 in the programming and this length component is effective in the Y
axis with G18.
Fundamentals
92 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Tool offsets
5.7 Programmable tool offset (TOFFL, TOFF, TOFFR)
Further information
Applications
The "Programmable tool offset" function is especially interesting for ball mills and milling
tools with corner radii as these are often calculated in the CAM system to the ball center
instead of the ball tip. However, generally the tool tip is measured when measuring the tool
and stored as tool length in the compensation memory.
System variables for reading the current offset values
The currently effective offsets can be read with the following system variables:
Note
The system variables $AC_TOFFL, $AC_TOFF and AC_TOFFR trigger an automatic
preprocessing stop when reading from the preprocessing context (NC program).
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 93
Tool offsets
5.7 Programmable tool offset (TOFFL, TOFF, TOFFR)
Fundamentals
94 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Spindle motion 6
6.1 Spindle speed (S), direction of spindle rotation (M3, M4, M5)
Function
The functions described are used to
● switch the spindle on
● specify the required direction of spindle rotation, and
● define the counterspindle or an actuated tool as the master spindle, e.g. on turning
machines.
The following programming commands are valid for the master spindle: G95, G96/G961,
G97/G971, G33, G331 (see also Chapter "Main spindle, master spindle").
Machine manufacturer
Definition as master spindle is also possible via machine data (default).
Syntax
M3 or M1=3
M4 or M1=4
M5 or M1=5
s…
Sn=…
SETMS(n) or SETMS
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 95
Spindle motion
6.1 Spindle speed (S), direction of spindle rotation (M3, M4, M5)
Meaning
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
S… Spindle speed in rpm for the master spindle
Sn…= Spindle speed in rpm for spindle n
SETMS(n) Set spindle specified in n as master spindle
SETMS Reset to the master spindle defined in machine data
Spindle speed S
The speed specified with S… or S0=… applies to the master spindle. You specify the
corresponding number for additional spindles: =…, S2=…
Note
Three S values can be programmed per NC block.
Fundamentals
96 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Spindle motion
6.1 Spindle speed (S), direction of spindle rotation (M3, M4, M5)
6
6
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 97
Spindle motion
6.1 Spindle speed (S), direction of spindle rotation (M3, M4, M5)
Note
Machine data can be used to set when axis movements should be executed; either once the
spindle has powered up to the setpoint speed, or immediately after the programmed
switching operations have been traversed.
Fundamentals
98 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Spindle motion
6.1 Spindle speed (S), direction of spindle rotation (M3, M4, M5)
Deactivate SETMS
By issuing SETMS without spindle parameter you can switchback to the master spindle
defined in the machine data.
Note
The speed specified with S and M3, M4, M5 now apply.
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 99
Spindle motion
6.2 Constant cutting rate (G96/G961/G962, G97/G971/G972, G973, LIMS, SCC)
Function
When G96/G961 is active, the spindle speed – depending on the respective workpiece
diameter – is modified in order that the cutting rate S in m/min or ft/min remains constant at
the tool edge.
5HGXFHGVSLQGOHVSHHG
&RQVWDQW
FXWWLQJUDWH
,QFUHDVHGVSLQGOHVSHHG
This increases the uniformity and thus the surface quality of turned parts, and also protects
the tool.
The constant cutting rate, activated with G96/G961/G962 can be cancelled again with
G97/G971/G972 with the active feed type (G94 linear feed or G95 revolutional feedrate).
Using G973, a constant cutting rate (G96) is de-selected without speed limiting being
activated as is the case for G97.
If any of the G96/G961/G962 functions are active, SCC[axis] can be used to assign any
geometry axis as a reference axis. If the reference axis changes, which will in turn affect the
TCP (tool-center-point) reference position for the constant cutting rate, the resulting spindle
speed will be attained via the set braking or acceleration ramp.
The command LIMS specifies a maximum spindle speed limitation for the master spindle.
Fundamentals
100 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Spindle motion
6.2 Constant cutting rate (G96/G961/G962, G97/G971/G972, G973, LIMS, SCC)
Syntax
Activate
G96 or G96 S…
Deactivate
G97
G973 without activating spindle speed limiting
Activate/deactivate
G961 or G971 with feed type as for G94
G962 or G972 with feed type, either as for G94 or as for G95
Speed limitation of the master spindle in a block
LIMS=value or LIMS[1]=value up to LIMS[4]=value in one block
LIMS can be expanded for machines with selectable master spindles by adding four
limitations in the part program for each of these master spindles. The speed limitation
programmed with G26 or specified via setting data cannot be exceeded with LIMS and
activates an alarm if not observed.
Assignment of the specified axis as a reference axis
SCC[AX] can be programmed together with G96/G961/G962 or in isolation.
Note
The reference axis for G96/G961/G962 must be a geometry axis assigned to the channel at
the time when SCC[AX] is programmed. SCC[AX] can also be programmed when any of the
G96/G961/G962 functions are active.
Meaning
G96 Activate constant cutting rate with feedrate type as with G95
(revolutional feedrate in relation to a master spindle).
G961= Activate constant cutting rate with feedrate type as with G94
(linear feedrate in relation to a linear/rotary axis).
G962= Activate constant cutting rate with feedrate type as with G94
or G95.
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 101
Spindle motion
6.2 Constant cutting rate (G96/G961/G962, G97/G971/G972, G973, LIMS, SCC)
Fundamentals
102 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Spindle motion
6.2 Constant cutting rate (G96/G961/G962, G97/G971/G972, G973, LIMS, SCC)
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 103
Spindle motion
6.2 Constant cutting rate (G96/G961/G962, G97/G971/G972, G973, LIMS, SCC)
Adjust feedrate F
When G96 is active, G95 feedrate is automatically activated in mm/rev.
CAUTION
If G95 was not already active, you must specify a new feedrate F when you call G96 (e.g.
convert F value from mm/min to mm/rev).
/,06
Note
On loading the block into the main run, all programmed values are transferred into the
setting data.
Fundamentals
104 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Spindle motion
6.2 Constant cutting rate (G96/G961/G962, G97/G971/G972, G973, LIMS, SCC)
Note
The transverse axis must be defined in machine data.
Rapid traverse G0
With rapid traverse G0, there is no change in speed. Exception: if the contour is approached
in rapid traverse 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.
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 105
Spindle motion
6.2 Constant cutting rate (G96/G961/G962, G97/G971/G972, G973, LIMS, SCC)
References
/FB1/Function Manual Basic Functions; Transverse Axes (P1) and Feedrates (V1).
Fundamentals
106 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Spindle motion
6.3 Constant grinding wheel peripheral speed (GWPSON, GWPSOF)
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.
Syntax
GWPSON(T No.)
GWPSOF(T No.)
S...
S1…
Meaning
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 107
Spindle motion
6.3 Constant grinding wheel peripheral speed (GWPSON, GWPSOF)
Tool-specific parameters
In order to activate the function "Constant peripheral speed", 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. "Grinding-specific tool monitoring
in the parts program TMON, TMOF" or PUTFTOC, PUTFTOCF) must be taken into account
when changing speed.
Fundamentals
108 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Spindle motion
6.4 Programmable spindle speed limitation (G25, G26)
Function
You can change the min. and max. spindle speeds specified in the machine and setting data
in the NC program using commands. Programmed spindle speed limitations are possible for
all spindles of the channel.
Syntax
G25 S… S1=… S2=…
G26 S… S1=… S2=…
A maximum of three spindle speed limitations can be programmed for each block.
Meaning
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 109
Spindle motion
6.4 Programmable spindle speed limitation (G25, G26)
CAUTION
A spindle speed limitation programmed with G25 or G26 overwrites the speed limits in the
setting data and therefore remains stored even after the end of the program.
Examples
Fundamentals
110 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Feed control 7
7.1 Feedrate (G93, G94, G95 or F..., FGROUP, FGREF)
Function
You can set the feedrates for all the axes involved in the machining process in the NC
program with the commands G93, G94, G95, F, FGROUP, FL and FGREF.
<
0RYHPHQWRQ< )
;
0RYHPHQWRQ;
The path feedrate is generally composed of the individual speed components of all geometry
axes participating in the movement and refers to the center point of the cutter or the tip of the
turning tool.
The following feedrate types can be programmed:
● Path feedrate of the geometry axes involved in the motion with the G commands G93,
G94, G95
● Feedrate F for path axes
● Feedrate F for synchronized axes
● Feedrate F applies to all axes specified under FGROUP
● Feedrate for synchronized/path axes with limit speed FL
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 111
Feed control
7.1 Feedrate (G93, G94, G95 or F..., FGROUP, FGREF)
Syntax
G93 or G94 or G95
F…
FGROUP (X, Y, Z, A, B, …)
FL[axis]=…
FGREF[axis name]=<reference radius>
Meaning
Fundamentals
112 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Feed control
7.1 Feedrate (G93, G94, G95 or F..., FGROUP, FGREF)
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 113
Feed control
7.1 Feedrate (G93, G94, G95 or F..., FGROUP, FGREF)
Program code
N10 G0 X0 Y0
N20 FGROUP(X)
N30 G1 X1000 Y1000 G94 F1000 FL[Y]=500
N40 Z-50
One FL value can be programmed per axis. The axis identifiers of the basic coordinate
system should be used (channel axes, geometry axes).
< <
; =
Fundamentals
114 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Feed control
7.1 Feedrate (G93, G94, G95 or F..., FGROUP, FGREF)
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 115
Feed control
7.1 Feedrate (G93, G94, G95 or F..., FGROUP, FGREF)
Change FGROUP
1. By reprogramming another FGROUP statement.
Example: FGROUP(X, Y, Z)
2. With FGROUP () without axis parameter
Afterwards, the initial setting in the machine data applies – the geometry axes again traverse
in the path axis grouping.
Note
You must program channel axis names with FGROUP.
CAUTION
The FGREF evaluation also works if only rotary axes are programmed in the block. The
normal F value interpretation as degree/min applies in this case only if the radius reference
corresponds to the FGREF default, when
G71/G710: FGREF[A]=57.296
G70/G700: FGREF[A]=57.296/25.4
Fundamentals
116 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Feed control
7.1 Feedrate (G93, G94, G95 or F..., FGROUP, FGREF)
Note
With G700/G710, feedrate values F are interpreted as geometrical parameters in the
measuring system set by G function (G700: [inch/min]; G710: [mm/min]).
Feedrate G93
Unit 1/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.
<
*;)
;
PLQ
Note
If the path lengths vary greatly from block to block, a new F value should be specified in
each block with G93. When machining with rotary axes, the feedrate can also be specified in
degrees/min.
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 117
Feed control
7.1 Feedrate (G93, G94, G95 or F..., FGROUP, FGREF)
F'
Fundamentals
118 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Feed control
7.1 Feedrate (G93, G94, G95 or F..., FGROUP, FGREF)
Note
This default setting is independent of the active basic system MD 10240:
SCALING_SYSTEM_IS_METRIC and of the currently active inch/metric G code.
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 119
Feed control
7.2 Traversing positioning axes (POS, POSA, POSP, FA, WAITP, WAITMC)
Note
With the effective factor for orientation axes FGREF, it is therefore possible to define a
reference point on the tool, to which the programmed path feedrate refers.
Function
Positioning axes are traversed independently of the path axes at a separate, axis-specific
feedrate. There are no interpolation commands. With the POS/POSA/POSP commands, the
positioning axes are traversed and the sequence of motions coordinated at the same time.
The following are typical examples of positioning axes: pallet feed equipment, gauging
stations or similar.
WAITP enables you to identify a position in the NC program where the program is to wait
until an axis programmed with POSA in a previous NC block has reached its end position.
With WAITMO, the next NC block is loaded immediately when the wait marker is received.
Fundamentals
120 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Feed control
7.2 Traversing positioning axes (POS, POSA, POSP, FA, WAITP, WAITMC)
Syntax
POS[axis]=...
POSA [axis]=…
POSP [axis]=(…,…,…)
FA [axis]=...
WAITP (axis)=… (programming must be written in a separate NC block)
WAITMC(marker)=…
Meaning
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 Approach end position in sections. The first value indicates the end
[axis]=(,,)
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 five per NC block
WAITP(axis) Waiting for end of travel of axis. With WAITP, an axis can be made
available for traversing as a reciprocating axis or as a concurrent
positioning axis (by PLC)
WAITMC(marker) During the braking ramp, WAIITMC loads the next NC block
immediately when the WAIT marker is received
Axis Channel axes or geometry axes
Marker, An axis is only decelerated if the marker has not yet been reached or if
a different search criterion prevents the block change.
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 121
Feed control
7.2 Traversing positioning axes (POS, POSA, POSP, FA, WAITP, WAITMC)
Fundamentals
122 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Feed control
7.2 Traversing positioning axes (POS, POSA, POSP, FA, WAITP, WAITMC)
CAUTION
Internal preprocessing stop
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).
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 123
Feed control
7.3 Position-controlled spindle operation (SPCON, SPCOF)
Function
In some cases, position-controlled operation of the spindle may be advisable, e.g. in
conjunction with large-pitch thread cutting with G33, higher quality can be achieved.
Note
The command requires max. three interpolation cycles.
Syntax
SPCON or SPCON(n) Activate position control
SPCOF or SPCOF(n) Deactivate position control, switch to speed control
SPCON(n, m, 0) Activate position control for multiple spindles in a block
SPCOF(n, m, 0) Deactivate position control for multiple spindles in a block
Meaning
SPCON Switch master spindle or spindle with number n from speed control to
SPCON(n)
position control
SPCOF Switch master spindle or spindle with number n back from position
SPCOF(n)
control to speed control
SPCON Several spindles with number n can be switched back from speed control
SPCON
(n, m, 0) to position control in one block
SPCOF Several spindles with number n can be switched back from position
SPCOF(n, m,
0) control to speed control in one block
n Integers from 1 ... n of spindle number
m
Integers from 1 ... m of master spindle
Fundamentals
124 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Feed control
7.4 Positioning spindles (SPOS, M19 and SPOSA, WAITS)
Note
SPCON is modal and is retained until SPCOF.
The speed is specified with S…. M3, M4 and M5 apply in respect of the directions of rotation
and spindle stop.
With synchronized spindle setpoint value linkage, the master spindle must be operated in
position-control mode.
Function
With SPOS, M19 and SPOSA, you can position spindles at specific angular positions, e.g.
during tool change. In order to synchronize spindle movements, WAITS can be used to wait
until the spindle position is reached.
$QJOHSRVLWLRQ
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.
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 125
Feed control
7.4 Positioning spindles (SPOS, M19 and SPOSA, WAITS)
Switching off
SPOS, M19 and SPOSA effect a temporary switchover to position-controlled operation until
the next M3 or M4 or M5 or M41 to M45. If the position control was activated with SPCON
prior to SPOS, then this remains active until SPCOF is issued.
Syntax
SPOS=… or SPOS[n]=…
M19 or M[n]=19
SPOSA=… or SPOSA[n]=…
M70 or Mn=7
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)
Meaning
Fundamentals
126 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Feed control
7.4 Positioning spindles (SPOS, M19 and SPOSA, WAITS)
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 127
Feed control
7.4 Positioning spindles (SPOS, M19 and SPOSA, WAITS)
Programming Comment
N10 SPOSA[2]=ACN(250) ; The spindle decelerates if necessary and accelerates in
the opposite direction to the positioning
movement
$&
r
r
'&
Fundamentals
128 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Feed control
7.4 Positioning spindles (SPOS, M19 and SPOSA, WAITS)
Programming Comment
...
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.
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 129
Feed control
7.4 Positioning spindles (SPOS, M19 and SPOSA, WAITS)
; ;
Programming Comment
.... ;
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)
N140G0 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 ;
... ;
Fundamentals
130 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Feed control
7.4 Positioning spindles (SPOS, M19 and SPOSA, WAITS)
Requirements
The spindle must be capable of operation in position-control mode.
NOTICE
If a command, which implicitly causes a preprocessing stop, is read in a following block,
execution of this block is delayed until all positioning spindles are stationary.
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 131
Feed control
7.4 Positioning spindles (SPOS, M19 and SPOSA, WAITS)
End of positioning
Programmable by means of the following commands: FINEA [Sn], COARSEA [Sn],
IPOENDA [Sn].
Settable block change time
For single axis interpolation mode, a new end of motion can be set in addition to the existing
end of motion criteria based on FINEA, COARSEA, IPOENDA.The new criterion can be set
within the braking ramp (100-0%) using IPOBRKA.
The program advances to the next block if the end of motion criteria for all spindles or axes
programmed in the current block plus the block change criterion for path interpolation are
fulfilled. Example:
N10 POS[X]=100
N20 IPOBRKA(X,100)
N30 POS[X]=200
N40 POS[X]=250
N50 POS[X]=0
N60 X10 F100
N70 M30
Block changes if the X axis has reached position 100 and exact stop fine. Activate block
change criterion IPOBRKA braking ramp. Block change commences as soon as the X axis
starts to decelerate. The X axis does not brake at position 200, but moves on to position 250;
as soon as the X axis starts to brake, the block changes. The X axis brakes and returns to
position 0, the block is changed at position 0 and exact stop fine.
Fundamentals
132 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Feed control
7.4 Positioning spindles (SPOS, M19 and SPOSA, WAITS)
Note
If the spindle has not yet been synchronized with synchronization marks, the positive
direction of rotation is taken from the machine data (state on delivery).
'LUHFWLRQRIURWDWLRQ 'LUHFWLRQRIURWDWLRQ
'& $&
'& $&
3URJUDPPHG 3URJUDPPHG
DQJOH
DQJOH
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 133
Feed control
7.5 Feedrate for positioning axes/spindles (FA, FPR, FPRAON, FPRAOF)
Function
Positioning axes, such as workpiece transport systems, tool turrets and end supports, are
traversed independently of the path and synchronized axes. A separate feedrate is therefore
defined for each positioning axis. Example: FA[A1]=500.
FPRAON can be used to axially activate the revolutional feedrate for positioning axes and
spindles, and FPRAOF can be used to deactivate the respective axis again.
Syntax
FA [axis]=...
FA[SPI(spindle)]=… or FA[S…]=…
FPR (rotary axis ) or FPR(SPI(spindle)) or FPR(S…)
FPRAON (axis, rotary axis)
FPRAON(axis,SPI(spindle)) or FPRAON(axis,S…)
FPRAON(SPI(spindle),rotary axis) or FPRAON(S…,rotary axis)
FPRAON(SPI(spindle),SPI(spindle)) or FPRAON(S…,S…)
FPRAOF(axis,SPI(spindle),…) or FPRAOF(axis,S…,…)
Meaning
Fundamentals
134 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Feed control
7.5 Feedrate for positioning axes/spindles (FA, FPR, FPRAON, FPRAOF)
FPRAON Activate revolutional feedrate for positioning axes and spindles axially.
The first command identifies the positioning axis/spindle that is to be
traversed at a revolutional feedrate. The second command identifies the
rotary axis/spindle from which the feedrate must be derived.
FPRAOF Deactivate revolutional feedrate. Specification of axis or spindle that is to
stop traversing at a revolutional feedrate.
SPI Converts the spindle number into an axis identifier; the transfer
parameter must contain a valid spindle number. SPI is used for the
indirect definition of a spindle number.
Axis Positioning axes or geometry axes
Value range …999 999.999 mm/min, degree/min
…39 999.9999 inch/min
Note
The programmed feedrate FA[...] is modal.
Up to five feedrates for positioning axes or spindles can be programmed in each NC block.
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 135
Feed control
7.5 Feedrate for positioning axes/spindles (FA, FPR, FPRAON, FPRAOF)
Feedrate FA[…]
The feedrate 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.
NOTICE
If no FA is programmed, the value defined in the machine data applies.
Feedrate 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.
If the rotary axis/spindle specified in the FPR command is operating on position control, then
the setpoint linkage is active. Otherwise the actual-value linkage is effective.
Fundamentals
136 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Feed control
7.5 Feedrate for positioning axes/spindles (FA, FPR, FPRAON, FPRAOF)
The revolutional feedrate for positioning axis X must be derived from the master spindle. The
positioning axis is traversing at 500 mm/revolution of the master spindle.
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 137
Feed control
7.6 Percentage feedrate override (OVR, OVRRAP, OVRA)
Function
You can use the programmable feedrate override to change the velocity of path axes,
positioning axes, and spindles via a command in the NC program.
Syntax
OVR=<value>
OVRRAP=<value>
OVRA[<axis>]=<value>
OVRA[SPI(<spindle number>)]=<value>
OVRA[S…]=<value>
Meaning
Fundamentals
138 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Feed control
7.6 Percentage feedrate override (OVR, OVRRAP, OVRA)
Examples
Example 1:
Set feedrate override: 80%
Example 2:
Example 3:
Example 4:
or
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 139
Feed control
7.7 Feedrate with handwheel override (FD, FDA)
Function
With these functions, you can use the handwheel to traverse path and positioning axes
(position parameter) or change the axis velocities (speed override) during program
execution. The handwheel override is frequently used for grinding operations.
NOTICE
Only speed override can be used for path axes. The path feedrate F and the handwheel
override FD may not be programmed in the same NC block.
Syntax
FD=…
FDA[axis]=0 or FDA[axis]=…
FDA[axis]=…
Meaning
The handwheel override function is non-modal. The function is deactivated in the following
NC block and the NC program processed further.
Fundamentals
140 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Feed control
7.7 Feedrate with handwheel override (FD, FDA)
Example
Path definition: The grinding wheel oscillating in the Z direction is traversed to the workpiece
in the X direction with the handwheel.
The operator can continue to feed manually until the sparks are flying uniformly. With
activation of "Delete distance-to-go", the transition is made to the next NC block and
machining continued in NC mode.
Requirements
A handwheel must be assigned to the axes to be traversed for the handwheel override
function. For the precise approach see HMI Operator's Guide. The number of handwheel
pulses per graduated position is defined in machine data.
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 141
Feed control
7.7 Feedrate with handwheel override (FD, FDA)
Feed override
The feed override acts only on the programmed feed, not on the travel movement generated
by the handwheel (except if feed override = 0).
Example:
N10 G1 X… Y… F500…
N50 X… Y… FD=700
The feedrate is accelerated to 700 mm/min in block N50. The path velocity can be increased
or reduced according to the direction of rotation on the handwheel.
Note
It is not possible to traverse in the opposite direction.
Fundamentals
142 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Feed control
7.7 Feedrate with handwheel override (FD, FDA)
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.
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 143
Feed control
7.8 Percentage acceleration correction (ACC) (option)
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.
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.
Syntax
ACC[axis]=…
Switching off
ACC[axis]=100 program start, reset
ACC[SPI(spindle)]=… or ACC(S…)
Fundamentals
144 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Feed control
7.8 Percentage acceleration correction (ACC) (option)
Syntax
ACC Acceleration change in percent for the specified path axis or speed
change for the specified spindle.
Value range: 1…200%, integers
SPI Converts spindle number into 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 the path axis, e.g. with X
Note
Note that with a greater acceleration, the values permitted by the manufacturer may be
exceeded.
Example
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 145
Feed control
7.9 Feedrate optimization for curved path sections (CFTCP, CFC, CFIN)
In synchronized actions
The following thus applies: the value written to the synchronized action is only considered in
the system variables $AA_ACC as written to the synchronized action if ACC was not
changed in the meantime by a parts program.
The defined acceleration can also be changed via synchronized actions. See /FBSY/,
Synchronized Actions.
Example: N100 EVERY $A_IN[1] DO POS[X]=50 FA[X]=2000 ACC[X]=140
The current acceleration value can be called with the system variables $AA_ACC[<axis>].
Machine data can be used to determine whether the ACC value last set should apply on
RESET/parts program end or whether it should be set to 100%.
7.9 Feedrate optimization for curved path sections (CFTCP, CFC, CFIN)
Function
With activated correction mode G41/G42, the programmed feedrate for the milling tool radius
first refers to the milling tool center path (refer to "Frames" section).
When you mill a circle – the same applies to polynomial and spline interpolation – the extent
of the change in feedrate at the cutter edge is such that it can have a considerable effect on
the quality of the machined part.
Example: You are milling a small outside radius with a large tool. The path that the outside of
the milling tool must travel is considerably longer than the path along the contour.
Fundamentals
146 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Feed control
7.9 Feedrate optimization for curved path sections (CFTCP, CFC, CFIN)
&RQWRXU
7RROSDWK
Because of this, you are machining at the contour with a very small feedrate. To prevent
such effects, you should control the feedrate accordingly for curved contours.
Syntax
CFTCP Constant feedrate at the milling tool center path, deactivate feedrate override
CFC Constant feedrate only at the contour
CFIN Constant feedrate only at the inside radii, there is no increase for outside radii
Meaning
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 147
Feed control
7.9 Feedrate optimization for curved path sections (CFTCP, CFC, CFIN)
Milling example
In this example, the contour is first produced with CFC-corrected feedrate. During finishing,
the cutting base is also machined with CFIN. This prevents the cutting base being damaged
at the outside radii by a feedrate that is too high.
<
;
Fundamentals
148 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Feed control
7.10 Several feedrate values in one block (F, ST, SR, FMA, STA, SRA)
FRQVWDQW
DQW
VW
Q
FR
UHGXFHG
LQFUHDVHG
The feedrate is reduced for inside radii and increased for outside radii. This ensures a
constant speed at the tool edge and thus at the contour.
7.10 Several feedrate values in one block (F, ST, SR, FMA, STA, SRA)
Function
The "Several feedrates in one block" function can be used independent of external analog
and/or digital inputs to activate
● Different feedrates of an NC block,
● Dwell time, and
● Retraction
in synchronism with the movement.
The HW input signals are combined in one input byte.
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 149
Feed control
7.10 Several feedrate values in one block (F, ST, SR, FMA, STA, SRA)
Syntax
F2= to F7= Multiple path motions in one block
ST=
SR=
FMA[2,x]= to FMA[7,x]=Multiple axial motions in one block
STA=
SRA=
Meaning
F2=... to In addition to the path feed, you can program up to six further
F7=...==
feedrates in the block; non-modal
ST=... Dwell time (for grinding technology: sparking-out time); non modal
SR=... Return path; non modal. The unit for the retraction path refers to the
current valid unit of measurement (mm or inch).
FMA[2,x]=... to In addition to the path feed, you can program up to six further
FMA[7,x]=...
feedrates per axis in the block; non modal
STA=... Axial dwell time (for grinding technology: sparking-out time); non-modal
SRA=... Axial return path; non-modal
Note
If feedrates, dwell time or return path are programmed for an axis on account of an external
input, this axis must not be programmed as POSA axis (positioning axis over multiple blocks)
in this block.
Look Ahead is also active for multiple feedrates in one block. In this way, the current
feedrate is restricted by the Look Ahead value.
Fundamentals
150 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Feed control
7.10 Several feedrate values in one block (F, ST, SR, FMA, STA, SRA)
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.
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 151
Feed control
7.11 Non-modal feedrate (FB)
Function
You can use the function "Non-modal feedrate" to define a separate feedrate for a single
block.
Only the feedrate value for the current block is specified at address FB. After this block, the
previous modal feedrate is active again.
Syntax
FB=<value> Feed motion only in one block
Meaning
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.
<VALUE> The programmed value of FB=<value> must be greater than zero.
Fundamentals
152 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Feed control
7.11 Non-modal feedrate (FB)
Feed value
Only the feedrate value for the current block is specified at address FB. After this block, the
previous modal feedrate is active again.
The feedrate is interpreted according to the active feedrate type:
● G94: feedrate in mm/min or degrees/min
● G95: feedrate in mm/rev or inch/rev
● G96: Constant cutting rate
References: /FB1/Function Manual Basic Functions; Feedrates (V1)
Note
If no traversing motion is programmed in the block (e.g. computation block), the FB has no
effect.
If no explicit feed for chamfering/rounding is programmed, then the value of FB also applies
for any contour element chamfering/rounding in this block.
Feedrate interpolations FLIN, FCUB, etc., are also possible without restriction.
Simultaneous programming of FB and FD (handwheel travel with feed overlay) or F (modal
path feedrate) is not possible.
Example
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 153
Feed control
7.11 Non-modal feedrate (FB)
Fundamentals
154 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Geometry settings 8
8.1 Settable zero offset (G54 to G57, G505 to G599, G53, G500, SUPA,
G153)
Function
The workpiece zero in relation to the zero point of the basic coordinate system is set up by
the settable zero offset (G54 to G57 and G505 to G599) in all axes.
In this way it is possible to call zero points program-wide per G command (e.g. for different
devices).
Milling:
= <
=
<
*
;
;
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 155
Geometry settings
8.1 Settable zero offset (G54 to G57, G505 to G599, G53, G500, SUPA, G153)
Turning:
0 :
*
Note
During turning, for example, the offset value for returning of the chuck is entered in G54.
Syntax
Activating settable zero offset:
G54
...
G57
G505
...
G599
Deactivating settable zero offset:
G500
G53
G153
SUPA
Fundamentals
156 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Geometry settings
8.1 Settable zero offset (G54 to G57, G505 to G599, G53, G500, SUPA, G153)
Meaning
G54 ... G57 Call of the 1st to 4th settable zero offset (ZO)
G505 ... G599 Call of the 5th to 99th settable zero offset
G500 Deactivation of the current settable zero offset
G500=zero frame Deactivation of the settable zero
(default setting; contains no offset until the next call, activation of
offset, rotation, mirroring or the entire basic frame
scaling) ($P_ACTBFRAME).
G500 not equal to 0 Activation of the first settable zero
offset ($P_UIFR[0]) and activation of
the entire basic frame
($P_ACTBFRAME) or possibly a
modified basic frame is activated.
G53 G53 suppresses the settable zero offset and the programmable
zero offset block-by-block.
G153 G153 has the same effect as G53 and also suppresses the entire
basic frame.
SUPA SUPA has the same effect as G153 and also suppresses:
• Handwheel offsets (DRF)
• Overlaid movements
• External zero offset
• PRESET offset
References:
See Section "Coordinate transformations (frames)" for the programmable zero offset.
Note
The basic setting at the start of the program, e.g. G54 or G500, can be set via machine data.
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 157
Geometry settings
8.1 Settable zero offset (G54 to G57, G505 to G599, G53, G500, SUPA, G153)
Example
Three workpieces that are arranged on a pallet in accordance with the zero offset values
G54 to G56 are to be machined in succession. The machining sequence is programmed in
subroutine L47.
<
0
<
< <
; ;
*
*
;
0
*
75$16;0
Fundamentals
158 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Geometry settings
8.1 Settable zero offset (G54 to G57, G505 to G599, G53, G500, SUPA, G153)
Further information
Setting offset values
On the operator panel or universal interface, enter the following values in the internal control
zero offset table:
● Coordinates for the offset
● Angle for rotated clamping
● Scaling factors (if required)
<
6FDOLQJ
<
;
5RWD
WH
W
2IIVH
;
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 159
Geometry settings
8.1 Settable zero offset (G54 to G57, G505 to G599, G53, G500, SUPA, G153)
<
<
< ;
; <
In the next NC block with a programmed movement, all of the positional parameters and thus
the tool movements refer to the workpiece zero, which is now valid.
Note
With the four available zero offsets, it is possible (e.g. for multiple machining) to
simultaneously describe four workpiece clampings and call them in the program.
Fundamentals
160 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Geometry settings
8.2 Selection of working plane (G17 to G19)
Function
The specification of the working plane, in which the desired contour is to be machined also
defines the following functions:
● The plane for tool radius compensation
● The infeed direction for tool length compensation depending on the tool type
● The plane for circular interpolation
=
,QIHHG
* <
;
*
*
,Q
IH
HG
HHG
,QI
Syntax
G17
G18
G19
Meaning
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 161
Geometry settings
8.2 Selection of working plane (G17 to G19)
Note
In the default setting, G17 (X/Y plane) is defined for milling and G18 (Z/X plane) is defined for
turning.
When calling the tool path correction G41/G42 (see Section "Tool radius compensation"), the
working plane must be defined so that the control can correct the tool length and radius.
Example: Milling
The "conventional" approach with milling tool:
1. Define working plane (G17 default setting for milling).
2. Select tool type (T) and tool offset values (D).
3. Switch on path correction (G41).
4. Program traversing movements.
Further information
General
It is recommended that the working plane G17 to G19 be selected at the start of the program.
In the default setting, the Z/X plane is preset for turning G18.
Fundamentals
162 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Geometry settings
8.2 Selection of working plane (G17 to G19)
Turning:
<
;
*
*
*
The control requires the specification of the working plane for the calculation of the direction
of rotation (see circular interpolation G2/G3).
Machining on inclined planes
Rotate the coordinate system with ROT (see Section "Coordinate system offset") to position
the coordinate axes on the inclined surface. The working planes rotate accordingly.
Tool length compensation on inclined planes
As a general rule, the tool length compensation always refers to the fixed, non-rotated
working plane.
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 163
Geometry settings
8.2 Selection of working plane (G17 to G19)
Milling:
Note
The tool length components can be calculated according to the rotated working planes with
the functions for "Tool length compensation for orientable tools".
The offset plane is selected with CUT2D, CUT2DF. For further information on this and for the
description of the available calculation methods, refer to Section "Tool offsets"
The control provides convenient coordinate transformation functions for the spatial definition
of the working plane.
For further information, see Section "Coordinate system offset".
Fundamentals
164 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Geometry settings
8.3 Dimensions
8.3 Dimensions
The basis of most NC programs is a workpiece drawing with specific dimensions.
These dimensions can be:
● In absolute dimensions or in incremental dimensions
● In millimeters or inches
● In radius or diameter (for turning)
Specific programming commands are available for the various dimension options so that the
data from a dimension drawing can be transferred directly (without conversion) to the NC
program.
Function
With absolute dimensions, the position specifications always refer to the zero point of the
currently valid coordinate system, i.e. the absolute position is programmed, on which the tool
is to traverse.
Modal absolute dimensions
Modal absolute dimensions are activated with the G90 command. Generally it applies to all
axes programmed in subsequent NC blocks.
Non-modal absolute dimensions
With preset incremental dimensions (G91), the AC command can be used to set non-modal
absolute dimensions for individual axes.
Note
Non-modal absolute dimensions (AC) are also possible for spindle positioning (SPOS, SPOSA)
and interpolation parameters (I, J, K).
Syntax
G90
<axis>=AC(<value>)
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 165
Geometry settings
8.3 Dimensions
Meaning
Examples
Example 1: Milling
= ;
<
;
Note
For information on the input of the circle center point coordinates I and J, see Section
"Circular interpolation".
Fundamentals
166 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Geometry settings
8.3 Dimensions
Example 2: Turning
=
Note
For information on the input of the circle center point coordinates I and J, see Section
"Circular interpolation".
See also
Absolute and incremental dimensions for turning and milling (G90/G91) (Page 172)
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 167
Geometry settings
8.3 Dimensions
Function
With incremental dimensions, the position specification refers to the last point approached,
i.e. the programming in incremental dimensions describes by how much the tool is to be
traversed.
Modal incremental dimensions
Modal incremental dimensions are activated with the G91 command. Generally it applies to
all axes programmed in subsequent NC blocks.
Non-modal incremental dimensions
With preset absolute dimensions (G90), the IC command can be used to set non-modal
incremental dimensions for individual axes.
Note
Non-modal incremental dimensions (IC) are also possible for spindle positioning (SPOS,
SPOSA) and interpolation parameters (I, J, K).
Syntax
G91
<axis>=IC(<value>)
Meaning
Fundamentals
168 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Geometry settings
8.3 Dimensions
G91 extension
For certain applications, such as scratching, it is necessary that only the programmed
distance is traversed in incremental dimensions. The active zero offset or tool length
compensation is not traversed.
This behavior can be set separately for the active zero offset and tool length compensation
via the following setting data:
SD42440 $SC_FRAME_OFFSET_INCR_PROG (zero offsets in frames)
SD42442 $SC_TOOL_OFFSET_INCR_PROG (tool length compensations)
Value Meaning
0 With incremental programming (incremental dimensions) of an axis, the zero offset or the
tool length compensation is not traversed.
1 With incremental programming (incremental dimensions) of an axis, the zero offset or the
tool length compensation is traversed.
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 169
Geometry settings
8.3 Dimensions
Examples
Example 1: Milling
= ;
<
;
Note
For information on the input of the circle center point coordinates I and J, see Section
"Circular interpolation".
Fundamentals
170 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Geometry settings
8.3 Dimensions
Example 2: Turning
=
Note
For information on the input of the circle center point coordinates I and J, see Section
"Circular interpolation".
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 171
Geometry settings
8.3 Dimensions
See also
Absolute and incremental dimensions for turning and milling (G90/G91) (Page 172)
8.3.3 Absolute and incremental dimensions for turning and milling (G90/G91)
The two following figures illustrate the programming with absolute dimensions (G90) or
incremental dimensions (G91) using turning and milling technology examples.
Milling:
<
*
*
;
*
*
Fundamentals
172 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Geometry settings
8.3 Dimensions
Turning:
*
*
=
*
*
Note
On conventional turning machines, it is usual to consider incremental traversing blocks in the
transverse axis as radius values, while diameter specifications apply for the reference
dimensions. This conversion for G90 is performed using the commands DIAMON, DIAMOF or
DIAM90.
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 173
Geometry settings
8.3 Dimensions
Function
The non-modal and G90/G91-independent commands DC, ACP and ACN are available for the
positioning of rotary axes in absolute dimensions.
DC, ACP and ACN differ in the basic approach strategy:
'& 0D[LPXP
WUDYHUVLQJUDQJH
$&3 $&1
Syntax
<rotary axis>=DC(<value>)
<rotary axis>=ACP(<value>)
<rotary axis>=ACN(<value>)
Fundamentals
174 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Geometry settings
8.3 Dimensions
Meaning
Note
The positive direction of rotation (clockwise or counterclockwise) is set in the machine data.
Note
The traversing range between 0° and 360° must be set in the machine data (modulo
behavior) for positioning with direction specification (ACP, ACN). G91 or IC must be
programmed to traverse modulo rotary axes more than 360° in a block.
Note
The commands DC, ACP and ACN can also be used for spindle positioning (SPOS, SPOSA)
from standstill.
Example: SPOS=DC(45)
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 175
Geometry settings
8.3 Dimensions
= ;
<
;
r
References
Function Manual, Extended Functions; Rotary Axes (R2)
Fundamentals
176 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Geometry settings
8.3 Dimensions
Function
Depending on the entries in the production drawings, workpiece-related geometric
dimensions can be programmed either in millimeters (metric) or in inches.
Syntax
G70
G71
G700
G710
Meaning
Note
The programmed feedrate value is modal and therefore does not change automatically for
the following G70/G71/G700/G710 changeovers.
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 177
Geometry settings
8.3 Dimensions
<
*
* *
*
;
Fundamentals
178 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Geometry settings
8.3 Dimensions
Further information
G70 or G71
You can instruct the control to convert the following geometrical dimensions (with necessary
deviations) into the measuring system not set and enter them directly:
● Position data (X, Y, Z, …)
● Circular-path programming:
– Interpolation point coordinates (I1, J1, K1)
– Interpolation parameters (I, J, K)
– Circle radius (CR)
● Pitch (G34, G35)
● Programmable zero offset (TRANS)
● Polar radius (RP)
All other parameters such as feedrates, tool offsets or settable zero offsets are interpreted in
the default dimension system (MD10240 $MN_SCALING_SYSTEM_IS_METRIC) when
using G70/G71.
The display of system variables and machine data is also independent of the G70/G71
context.
G700 or G710
For G700/G710, all length-related NC data, machine and setting data is always read and
written in the programmed context of G700/G710.
Feedrate
If the feedrate in the G70/G71/G700/G710 context is to be activated, a new F value must be
programmed explicitly.
Synchronized actions
If positioning tasks are solved in synchronized actions and G70/G71/G700/G710 has not
been programmed in the synchronized action, then the G70/G71/G700/G710 context active
at the time of execution decides which dimension system is used.
References
● Function Manual, Basic Functions; Speeds, Setpoint/Actual-Value System, Closed-Loop
Control (G2), Section "Metric/inch dimension system"
● Programming Manual, Job Planning; Section "Motion-synchronous actions"
● Function Manual, Synchronized Actions
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 179
Geometry settings
8.3 Dimensions
Function
When turning, the dimensions for the transverse axis can be specified in the diameter or in
the radius. The channel-specific diameter or radius programming is activated via the modal
commands DIAMON, DIAM90 and DIAMOF so that the data from a technical drawing can be
transferred directly (without conversion) to the NC program.
',$021 ; ',$02) ;
5
5
: :
= =
'
'
Note
The channel-specific diameter/radius programming refers to the geometry axis defined as
transverse axis via MD20100 $MC_DIAMETER_AX_DEF (→ see machine manufacturer's
specifications).
Only one transverse axis per channel can be defined via MD20100.
Syntax
DIAMON
DIAM90
DIAMOF
Fundamentals
180 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Geometry settings
8.3 Dimensions
Meaning
Note
With DIAMON or DIAM90, the transverse-axis actual values will always be displayed as a
diameter. This also applies to reading of actual values in the workpiece coordinate system
with MEAS, MEAW, $P_EP[x] and $AA_IW[x].
Example
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 181
Geometry settings
8.3 Dimensions
Further information
Diameter values (DIAMON/DIAM90)
The diameter values apply for the following data:
● Actual value display of the transverse axis in the workpiece coordinate system
● JOG mode: Increments for incremental dimensions and handwheel travel
● Programming of end positions:
Interpolation parameters I, J, K for G2/G3, if these have been programmed absolutely
with AC.
If I, J, K are programmed incrementally (IC), the radius is always calculated.
● Reading actual values in the workpiece coordinate system for:
MEAS, MEAW, $P_EP[X], $AA_IW[X]
References
Programming Manual, Job Planning; Section "Special travel commands and motion-
synchronous actions"
Function
In addition to channel-specific diameter programming, the axis-specific diameter
programming function enables the modal or non-modal dimensions and display in the
diameter for one or more axes.
Note
The axis-specific diameter programming is only possible for axes that are permitted as
further transverse axes for the axis-specific diameter programming via
MD30460 $MA_BASE_FUNCTION_MASK (→ see machine manufacturer's specifications).
Fundamentals
182 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Geometry settings
8.3 Dimensions
Syntax
Modal axis-specific diameter programming for several transverse axes in the channel:
DIAMONA[<axis>]
DIAM90A[<axis>]
DIAMOFA[<axis>]
Acceptance of the channel-specific diameter/radius programming:
DIAMCHANA[<axis>]
DIAMCHAN
Non-modal axis-specific diameter/radius programming:
<axis>=DAC(<value>)
<axis>=DIC(<value>)
<axis>=RAC(<value>)
<axis>=RIC(<value>)
Meaning
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 183
Geometry settings
8.3 Dimensions
<axis> Axis identifier of the axis for which the axis-specific diameter
programming is to be activated
Permitted axis identifiers are as follows:
• Geometry/channel axis name
or
• Machine axis name
Range of values: The axis specified must be a known axis in the
channel.
Other conditions:
• The axis must be permitted for the axis-specific
diameter programming via
MD30460 $MA_BASE_FUNCTION_MASK.
• Rotary axes are not permitted to serve as
transverse axes.
Fundamentals
184 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Geometry settings
8.3 Dimensions
RAC The RAC command sets the following dimensions to non-modal for the
specified axis:
Radius in absolute dimensions
RIC The RIC command sets the following dimensions to non-modal for the
specified axis:
Radius in incremental dimensions
Note
With DIAMONA[<axis>] or DIAM90A[<axis>], the transverse-axis actual values are
always displayed as a diameter. This also applies to reading of actual values in the
workpiece coordinate system with MEAS, MEAW, $P_EP[x] and $AA_IW[x].
Note
During the replacement of an additional transverse axis because of a GET request, the status
of the diameter/radius programming in the other channel is accepted with
RELEASE[<axis>].
Examples
Example 1: Modal axis-specific diameter/radius programming
X is the transverse axis in the channel, axis-specific diameter programming is permitted for
Y.
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 185
Geometry settings
8.3 Dimensions
Fundamentals
186 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Geometry settings
8.3 Dimensions
Further information
Diameter values (DIAMONA/DIAM90A)
The diameter values apply for the following data:
● Actual value display of the transverse axis in the workpiece coordinate system
● JOG mode: Increments for incremental dimensions and handwheel travel
● Programming of end positions:
Interpolation parameters I, J, K for G2/G3, if these have been programmed absolutely
with AC.
If I, J, K are programmed incrementally (IC), the radius is always calculated.
● Reading actual values in the workpiece coordinate system for:
MEAS, MEAW, $P_EP[X], $AA_IW[X]
References:
Programming Manual, Job Planning; Section: "Special travel commands and motion-
synchronous actions"
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 187
Geometry settings
8.4 Position of workpiece for turning
Axis identifiers
The two geometry axes perpendicular to one another are usually called:
Workpiece zero
Whereas the machine zero is permanently defined, the workpiece zero can be freely
selected on the longitudinal axis. Generally the workpiece zero is on the front or rear side of
the workpiece.
Both the machine and the workpiece zero are on the turning center. The settable offset on
the X axis is therefore zero.
; 0DFKLQH ;
:RUNSLHFH
:RUNSLHFH 0 :
]HUR
IURQW =
:RUNSLHFH
**RU75$16
; ; :RUNSLHFH
0DFKLQH
:RUNSLHFH 0
]HUR
UHDU =
:RUNSLHFH
**
RU75$16
M Machine zero
W Workpiece zero
Z Longitudinal axis
X Transverse axis
G54 to G599 Call for the position of the workpiece zero
or TRANS
Fundamentals
188 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Geometry settings
8.4 Position of workpiece for turning
Transverse axis
Generally the dimensions for the transverse axis are diameter specifications (double path
dimension compared to other axes):
;
7UDQVYHUVHD[LV
0 :
=
'
'
/RQJLWXGLQDOD[LV
The geometry axis that is to serve as transverse axis is defined in the machine data
(→ machine manufacturer).
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 189
Geometry settings
8.4 Position of workpiece for turning
Fundamentals
190 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Motion commands 9
Contour elements
The programmed workpiece contour can be made up of the following contour elements:
● Straight lines
● Circular arcs
● Helical curves (through overlaying of straight lines and circular arcs)
Travel commands
The following travel commands are available for the creation of these contour elements:
● Rapid traverse motion (G0)
● Linear interpolation (G1)
● Circular interpolation clockwise (G2)
● Circular interpolation counterclockwise (G3)
The travel commands are modal.
Target positions
A motion block contains the target positions for the axes to be traversed (path axes,
synchronized axes, positioning axes).
The target positions can be programmed in Cartesian coordinates or in polar coordinates.
CAUTION
The axis address may only be programmed once per block.
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 191
Motion commands
8.4 Position of workpiece for turning
Workpiece contour
The motion blocks produce the workpiece contour when performed in succession:
;
NOTICE
Before machining, the workpiece must be positioned in such a way that the tool or
workpiece cannot be damaged.
Fundamentals
192 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Motion commands
9.1 Travel commands with Cartesian coordinates (G0, G1, G2, G3, X..., Y..., Z...)
9.1 Travel commands with Cartesian coordinates (G0, G1, G2, G3, X...,
Y..., Z...)
Function
The position specified in the NC block with Cartesian coordinates can be approached with
rapid traverse motion G0, linear interpolation G1 or circular interpolation G2 /G3.
Syntax
G0 X... Y... Z...
G1 X... Y... Z...
G2 X... Y... Z... ...
G3 X... Y... Z... ...
Meaning
Note
In addition to the coordinates of the target position X..., Y..., Z..., the circular
interpolation G2 / G3 also requires further data (e.g. the circle center point coordinates; see
"Circular interpolation types (Page 210)").
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 193
Motion commands
9.1 Travel commands with Cartesian coordinates (G0, G1, G2, G3, X..., Y..., Z...)
Example
; ;
< < =
; ;
Fundamentals
194 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Motion commands
9.2 Travel commands with polar coordinates
Function
The point from which the dimensioning starts is called the pole.
The pole can be specified in Cartesian or polar coordinates.
The reference point for the pole coordinates is clearly defined with the G110 to G112
commands. Absolute or incremental dimension inputs therefore have no effect.
Syntax
G110 X… Y… Z…
G110 AP=… RP=…
G111 X… Y… Z…
G111 AP=… RP=…
G112 X… Y… Z…
G112 AP=… RP=…
Meaning
G110 ... With the command G110, the following pole coordinates refer to the last
position reached.
G111 ... With the command G111, the following pole coordinates refer to the zero
point of the current workpiece coordinate system.
G112 ... With the command G112, the following pole coordinates refer to the last
valid pole.
Note:
The commands G110...G112 must be programmed in a separate NC
block.
X… Y… Z… Specification of the pole in Cartesian coordinates
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 195
Motion commands
9.2 Travel commands with polar coordinates
Note
It is possible to switch block-by-block in the NC program between polar and Cartesian
dimensions. It is possible to return directly to the Cartesian system by using Cartesian
coordinate identifiers (X..., Y..., Z...). The defined pole is moreover retained up to program
end.
Supplementary conditions
● If no pole has been specified, the zero point of the current workpiece coordinate system
applies.
Fundamentals
196 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Motion commands
9.2 Travel commands with polar coordinates
Example
<
*;
3ROH
r
*<
r
3ROH
*< ;
*; *;
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 197
Motion commands
9.2 Travel commands with polar coordinates
9.2.2 Travel commands with polar coordinates (G0, G1, G2, G3, AP, RP)
Function
Travel commands with polar coordinates are useful when the dimensions of a workpiece or
part of the workpiece are measured from a central point and the dimensions are specified in
angles and radii (e.g. for drilling patterns).
<
r
r r
Q
r r ;
Syntax
G0 AP=… RP=…
G1 AP=… RP=…
G2 AP=… RP=… ...
G3 AP=… RP=… ...
Meaning
Fundamentals
198 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Motion commands
9.2 Travel commands with polar coordinates
AP Polar angle
Angle between the polar radius and the horizontal axis of the working plane (e.g.
X axis for G17). The positive direction of rotation runs counter-clockwise.
Range of values: ± 0…360°
The angle can be specified either incremental or absolute:
AP=AC(...) Absolute dimension input
AP=IC(...) Incremental dimension input
With incremental dimension input, the last programmed angle
applies as reference.
The polar angle remains stored until a new pole is defined or the working plane is
changed.
RP Polar radius
The specification is always in absolute positive values in [mm] or [inch].
The polar radius remains stored until a new value is entered.
Note
The polar coordinates refer to the pole specified with G110 ... G112 and apply in the working
plane selected with G17 to G19.
Note
The 3rd geometry axis, which lies perpendicular to the working plane, can also be specified
in Cartesian coordinates.
53
$3
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 199
Motion commands
9.2 Travel commands with polar coordinates
Supplementary conditions
● No Cartesian coordinates such as interpolation parameters, axis addresses, etc. may be
programmed for the selected working plane in NC blocks with polar end point
coordinates.
● If a pole has not been defined with G110 ... G112, then the zero point of the current
workpiece coordinate system is automatically considered as the pole:
<
,&
$3
$3
$3
r
r
● Polar radius RP = 0
The polar radius is calculated from the distance between the starting point vector in the
pole plane and the active pole vector. The calculated polar radius is then saved as modal.
This applies irrespective of the selected pole definition (G110 ... G112). If both points
have been programmed identically, this radius = 0 and alarm 14095 is generated.
● Only polar angle AP has been programmed
If no polar radius RP has been programmed in the current block, but a polar angle AP,
then when there is a difference between the current position and pole in the workpiece
coordinates, this difference is used as polar radius and saved as modal. If the difference
= 0, then the pole coordinates are specified again and the modal polar radius remains at
zero.
Fundamentals
200 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Motion commands
9.2 Travel commands with polar coordinates
<
r r
r
r
r
;
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 201
Motion commands
9.3 Rapid traverse movement (G0, RTLION, RTLIOF)
See also
Circular interpolation types (G2/G3, ...) (Page 210)
Function
You can use the rapid traverse movements to position the tool rapidly, to travel around the
workpiece or to approach tool change locations.
Non-linear interpolation is activated with the part program command RTLIOF, linear
interpolation is activated with the part program command RTLION.
Note
This function is not suitable for workpiece machining!
Syntax
G0 X… Y… Z…
G0 AP=…
G0 RP=…
RTLIOF
RTLION
Meaning
Note
G0 cannot be replaced by G.
Fundamentals
202 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Motion commands
9.3 Rapid traverse movement (G0, RTLION, RTLIOF)
Examples
Example 1: Milling
<
1
1
;
Starting positions or tool change points, tool retraction, etc. are approached with G0:
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 203
Motion commands
9.3 Rapid traverse movement (G0, RTLION, RTLIOF)
Example 2: Turning
1
1
. =
Fundamentals
204 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Motion commands
9.3 Rapid traverse movement (G0, RTLION, RTLIOF)
Further information
Rapid traverse velocity
The tool movement programmed with G0 is executed at the highest possible speed (rapid
traverse). The rapid traverse speed is defined separately for each axis in machine data. If
the rapid traverse movement is executed simultaneously on several axes, the rapid traverse
speed is determined by the axis, which requires the most time for its section of the path.
=
<
YHUVH
WUD
SLG
IUD
D WKR HQW
3
YHP
PR
3DWK
FRPSRQHQW=
3DWKFRPSRQHQW<
3DWKFRPSRQHQW;
;
NOTICE
Since a different contour can be traversed in nonlinear interpolation mode, synchronized
actions that refer to coordinates of the original path are not operative in some cases!
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 205
Motion commands
9.3 Rapid traverse movement (G0, RTLION, RTLIOF)
Program code
G0 X0 Y10
G0 G40 X20 Y20
G0 G95 X100 Z100 M3 S100
Path POS[X]=0 POS[Y]=10 is traversed in path mode. No revolutional feedrate is active if
path POS[X]=100 POS[Z]=100 is traversed.
Settable block change time with G0
For single axis interpolations, a new movement end criterion
FINEA
or
COARSEA
or
IPOENDA
can already be set for block change inside the braking ramp.
Consecutive axes are handled in G0 like positioning axes.
With the combination of
● "Block change settable in the braking ramp of the single axis interpolation" and
● "Traversing path axes in rapid traverse movement as positioning axes with G0"
all axes can travel to their end point independently of one another. 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.
For further information, please refer to "Feed control and spindle motion".
Fundamentals
206 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Motion commands
9.4 Linear interpolation (G1)
Function
With G1 the tool travels on paraxial, inclined or straight lines arbitrarily positioned in space.
Linear interpolation permits machining of 3D surfaces, grooves, etc.
Milling:
Syntax
G1 X… Y… Z … F…
G1 AP=… RP=… F…
Meaning
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 207
Motion commands
9.4 Linear interpolation (G1)
F Feedrate in mm/min. The tool travels at feedrate F along a straight line from
the current starting point to the programmed destination point. You can enter
the destination point in Cartesian or polar coordinates. The workpiece is
machined along this path.
Example: G1 G94 X100 Y20 Z30 A40 F100
The end point on X, Y, Z is approached at a feedrate of 100 mm/min; the
rotary axis A is traversed as a synchronized axis, ensuring that all four
movements are completed at the same time.
Note
G1 is modal.
Spindle speed S and spindle direction M3/M4 must be specified for the machining.
Axis groups, for which path feedrate F applies, can be defined with FGROUP. You will find
more information in the "Path behavior" section.
Example: Milling
Machining of a groove: The tool travels from the starting point to the end point in the X/Y
direction. Infeed takes place simultaneously in the Z direction.
< <
=
;
Fundamentals
208 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Motion commands
9.4 Linear interpolation (G1)
Example: Turning
; ;
< < =
; ;
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 209
Motion commands
9.5 Circular interpolation
Syntax
G2/G3 X… Y… Z…
I=AC(…) J=AC(…) K=AC(…) Absolute center point and end point
with reference to the workpiece zero
G2/G3 X… Y… Z… I… J… K… Center point in incremental
dimensions with reference to the
circle starting point
G2/G3 X… Y… Z… CR=… Circle radius CR= and circle end
position in Cartesian coordinates
X..., Y..., Z...
G2/G3 X… Y… Z… AR=… Opening angle AR= end point in
Cartesian coordinates X..., Y..., Z...
G2/G3 I… J… K… AR=… Opening angle AR= center point at
addresses I..., J..., K...
G2/G3 AP=… RP=… Polar coordinates with the polar
angle AP= and the polar radius RP=
CIP X… Y… Z… I1=AC(…) J1=AC(…) The intermediate point at addresses
K1=(AC…)
I1=, J1=, K1=
CT X… Y… Z… Circle through starting and end point
and tangent direction at starting
point
Fundamentals
210 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Motion commands
9.5 Circular interpolation
Meaning
Example: Milling
The following program lines contain an example for each circular-path programming
possibility. The necessary dimensions are shown in the production drawing on the right.
<
r -
,
;
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 211
Motion commands
9.5 Circular interpolation
Fundamentals
212 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Motion commands
9.5 Circular interpolation
Example: Turning
r
r
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 213
Motion commands
9.5 Circular interpolation
9.5.2 Circular interpolation with center point and end point (G2/G3, X... Y... Z..., I... J...
K...)
Function
Circular interpolation enables machining of full circles or arcs.
Syntax
G2/G3 X… Y… Z… I… J… K…
G2/G3 X… Y… Z… I=AC(…) J=AC(…) K=(AC…)
Meaning
Fundamentals
214 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Motion commands
9.5 Circular interpolation
Note
G2 and G3 are modal.
The default settings G90/G91 absolute and incremental dimensions are only valid for the
circle end point.
Per default, the center point coordinates I, J, K are entered in incremental dimensions in
relation to the circle starting point.
You can program the absolute center point dimensions in relation to the workpiece zero
block-by-block with: I=AC(…), J=AC(…), K=AC(…). One interpolation parameter I, J, K with
value 0 can be omitted, but the associated second parameter must always be specified.
Examples: Milling
&LUFOH
VWDUWLQJSRLQW
<
-
- $&
,
&LUFOH W
HQGSRLQW
;
, $&
Incremental dimension
N10 G0 X67.5 Y80.211
N20 G3 X17.203 Y38.029 I–.5 J–.211 F500
Absolute dimensions
N10 G0 X67.5 Y80.211
N20 G3 X17.203 Y38.029 I=AC(50) J=AC(50)
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 215
Motion commands
9.5 Circular interpolation
Examples: Turning
;
=
Incremental dimensions
N120 G0 X12 Z0
N125 G1 X40 Z-25 F0.2
N130 G3 X70 Z-75 I-3.335 K-29.25
N135 G1 Z-95
Absolute dimensions
N120 G0 X12 Z0
N125 G1 X40 Z-25 F0.2
N130 G3 X70 Z-75 I=AC(33.33) K=AC(-54.25)
N135 G1 Z-95
<
;
*
*
*
Fundamentals
216 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Motion commands
9.5 Circular interpolation
The control needs the working plane parameter (G17 to G19) in order to calculate the
direction of rotation for the circle – G2 is clockwise or G3 is counterclockwise.
<
;
* *
* *
* *
Programmed feedrate
You can use FGROUP to specify, which axes are to be traversed with a programmed
feedrate. For more information please refer to the Path behavior section.
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 217
Motion commands
9.5 Circular interpolation
9.5.3 Circular interpolation with radius and end point (G2/G3, X... Y... Z.../ I... J... K...,
CR)
Note
There is no practical limitation on the maximum size of the programmable radius.
Syntax
G2/G3 X… Y… Z… CR=
G2/G3 I… J… K… CR=
Meaning
Note
You don't need to specify the center point with this procedure. Full circles (traversing angle
360°) are not programmed with CR=, but via the circle end position and interpolation
parameters.
Fundamentals
218 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Motion commands
9.5 Circular interpolation
Example: Milling
Circular-path programming with radius and end point
N10 G0 X67.5 Y80.511
N20 G3 X17.203 Y38.029 CR=34.913 F500
&5
&5
;
Example: Turning
Circular-path programming with radius and end point
N125 G1 X40 Z-25 F0.2
N130 G3 X70 Z-75 CR=30
N135 G1 Z-95
;
=
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 219
Motion commands
9.5 Circular interpolation
9.5.4 Circular interpolation with opening angle and center point (G2/G3, X... Y... Z.../ I...
J... K..., AR)
Syntax
G2/G3 X… Y… Z… AR=
G2/G3 I… J… K… AR=
Meaning
Note
Full circles (traversing angle 360°) cannot be programmed with AR=, but must be
programmed using the circle end position and interpolation parameters. The center point
coordinates I, J, K are normally entered in incremental dimensions with reference to the
circle starting point.
You can program the absolute center point dimensions in relation to the workpiece zero
block-by-block with: I=AC(…), J=AC(…), K=AC(…). One interpolation parameter I, J, K with
value 0 can be omitted, but the associated second parameter must always be specified.
Fundamentals
220 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Motion commands
9.5 Circular interpolation
Milling example
&LUFOHVWDUWLQJ
SRLQW
<
r
-
,
$SHUWXUHDQJOH
;
Programming a circle with opening angle and center point or end point
N10 G0 X67.5 Y80.211
N20 G3 X17.203 Y38.029 AR=140.134 F500
N20 G3 I–17.5 J–30.211 AR=140.134 F500
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 221
Motion commands
9.5 Circular interpolation
Example of turning
2 .3 2 6 °
14
30
Ø 33.33
25
Ø 40
54.25
95
Programming a circle with opening angle and center point or end point
N125 G1 X40 Z-25 F0.2
N130 G3 X70 Z-75 AR=135.944
N130 G3 I-3.335 K-29.25 AR=135.944
N130 G3 I=AC(33.33) K=AC(-54.25) AR=135.944
N135 G1 Z-95
Fundamentals
222 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Motion commands
9.5 Circular interpolation
Syntax
G2/G3 AP= RP=
Meaning
Milling example
<
r
$3
53
*
;
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 223
Motion commands
9.5 Circular interpolation
Example of turning
2 .3 2 6 °
14
30
Z
Ø 33.33
25
Ø 40
54.25
95
Fundamentals
224 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Motion commands
9.5 Circular interpolation
9.5.6 Circular interpolation with intermediate point and end point (CIP, X... Y... Z..., I1...
J1... K1...)
You can use CIP to program arcs. These arcs can also be inclined in space. In this case,
you describe the intermediate and end points with three coordinates.
The circular movement is described by:
● The intermediate point at addresses I1=, J1=, K1= and
● The end point in Cartesian coordinates X, Y, Z.
< <
,
,QWHUPHGLDWHSRLQW
-
;
=
.
The traversing direction is determined by the order of the starting point, intermediate point
and end point.
Syntax
CIP X… Y… Z… I1=AC(…) J1=AC(…) K1=(AC…)
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 225
Motion commands
9.5 Circular interpolation
Meaning
Note
CIP is modal.
Milling example
< <
; =
Fundamentals
226 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Motion commands
9.5 Circular interpolation
Example of turning
;
=
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 227
Motion commands
9.5 Circular interpolation
9.5.7 Circular interpolation with tangential transition (CT, X... Y... Z...)
Function
The Tangential transition function is an expansion of the circle programming.
The circle is defined by:
● The start and end point and
● The tangent direction at the start point.
The G code CT produces an arc that lies at a tangent to the contour element programmed
previously.
$UF6(DWDWDQJHQWWRWKH
VWUDLJKWOLQH
6
(
$UFVWKDWOLHDWDWDQJHQWGHSHQG
RQWKHSUHYLRXVFRQWRXUHOHPHQW
&7
/ 6
&7
/ &7
/
(
Syntax
CT X… Y… Z…
Fundamentals
228 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Motion commands
9.5 Circular interpolation
Meaning
Note
CT is modal.
As a rule, the circle is clearly defined by the tangent direction as well as the starting point
and end point.
Milling example
< ZLWK75&
;
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 229
Motion commands
9.5 Circular interpolation
Example of turning
=
Fundamentals
230 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Motion commands
9.5 Circular interpolation
Description
In the case of splines, the tangential direction is defined by the straight line through the last
two points. This direction is generally not the same as the direction at the end point of the
spline with A and C splines with active ENAT or EAUTO.
The transition of B splines is always tangential, the tangent direction is defined as for A or C
splines and active ETAN.
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.
Note
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.
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 231
Motion commands
9.6 Helical interpolation (G2/G3, TURN)
Function "
The helical interpolation enables, for example, the production of threads or oil grooves.
With helical interpolation, two motions are superimposed and executed in parallel:
● A plane circular motion on which
● A vertical linear motion is superimposed.
Syntax
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=
Meaning
Fundamentals
232 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Motion commands
9.6 Helical interpolation (G2/G3, TURN)
Note
G2 and G3 are modal.
The circular motion is performed in those axes that are defined by the specification of the
working plane.
Example
< <
;
=
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 233
Motion commands
9.6 Helical interpolation (G2/G3, TURN)
Sequence of motions
1. Approach starting point
2. With TURN= execute the full circles programmed
3. Approach circle end position, e.g., as part rotation
4. Execute steps 2 and 3 across the infeed depth.
The pitch, with which the helix is to be machined is calculated from the number of full circles
plus the programmed circle end position (executed across the infeed depth).
6WDUWSRLQW
VWIXOOFLUFOH
QGIXOOFLUFOH
UGIXOOFLUFOH
(QGSRLQWDV
SDUWLDOURWDWLRQ
7DUJHWSRLQW
Programmed feedrate
For helical interpolation, it is advisable to specify a programmed feedrate override (CFC).
You can use FGROUP to specify, which axes are to be traversed with a programmed
feedrate. For more information please refer to the Path behavior section.
Fundamentals
234 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Motion commands
9.7 Involute interpolation (INVCW, INVCCW)
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. It is executed in the plane in which
the basic circle is defined and runs from the programmed starting point to the programmed
end point.
<
&LUFOHFHQWHUSRLQW;<
%DVLFFLUFOH
(QGSRLQW
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 235
Motion commands
9.7 Involute interpolation (INVCW, INVCCW)
Syntax
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=...
Meaning
Fundamentals
236 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Motion commands
9.7 Involute interpolation (INVCW, INVCCW)
NOTICE
With the indirect programming of the end point through specification of an opening angle
AR, the sign of the angle must be taken into account, as a sign change would result in
another involute and therefore another path.
This is demonstrated in the following example:
(QGSRLQWV
$5
6WDUWLQJSRLQW
The specifications of the radius and center point of the basic circle as well as the starting
point and direction of rotation (INVCW/INVCCW) are the same for involutes 1 and 2. The only
difference is in the sign of the opening angle:
• With AR > 0, the path is on involute 1 and end point 1 is approached.
• With AR < 0, the path is on involute 2 and end point 2 is approached.
Supplementary conditions
● Both the starting point and the end point must be outside the area of the basic circle of
the involute (circle with radius CR around the center point specified by I, J, K). If this
condition is not satisfied, an alarm is generated and the program processing is aborted.
● The two options for the programming of the end point (directly via Cartesian coordinates
or indirectly via the specification of an opening angle) are mutually exclusive.
Consequently, only one of the two programming options may be used in a block.
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 237
Motion commands
9.7 Involute interpolation (INVCW, INVCCW)
● If the programmed end point does not lie exactly on the involute defined by the starting
point and basic circle, interpolation takes place between the two involutes defined by the
starting and end points (see following figure).
6WDUWLQJSRLQW
5DGLXV
The maximum deviation of the end point is determined by a machine data (→ machine
manufacturer). If the deviation of the programmed end point in the radial direction is
greater than that by the MD, then an alarm is generated and the program processing
aborted.
Fundamentals
238 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Motion commands
9.7 Involute interpolation (INVCW, INVCCW)
Examples
Example 1: Counterclockwise involute from the starting point to the programmed end point
and back again as clockwise involute
< 1(QGSRLQW
; <
1
1
&5
16WDUWLQJSRLQW ;
; <
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 239
Motion commands
9.7 Involute interpolation (INVCW, INVCCW)
Example 2: Counterclockwise involute with indirect programming of the end point through
specification of an opening angle
<
&5
6WDUWLQJSRLQW ;
; <
$5
References
For more information about machine data and supplementary conditions that are relevant to
involute interpolation, see:
Function Manual, Basic Functions; Various NC/PLC interface signals and functions (A2),
Section: "Settings for involute interpolation"
Fundamentals
240 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Motion commands
9.8 Contour definitions
Function
The contour definition programming is used for the quick input of simple contours.
Programmable are contour definitions with one, two, three or more points with the transition
elements chamfer or rounding, through specification of Cartesian coordinates and/or angles.
Arbitrary further NC addresses can be used, e.g. address letters for further axes (single axes
or axis perpendicular to the machining plane), auxiliary function specifications, G codes,
velocities, etc. in the blocks that describe contour definitions.
Note
Contour calculator
The contour definitions can be programmed easily with the aid of the contour calculator. This
is a user interface tool that enables the programming and graphic display of simple and
complex workpiece contours. The contours programmed via the contour calculator are
transferred to the part program.
References:
Operating Manual
Assigning parameters
The identifiers for angle, radius and chamfer are defined via machine data:
MD10652 $MN_CONTOUR_DEF_ANGLE_NAME (name of the angle for contour definitions)
MD10654 $MN_RADIUS_NAME (name of the radius for contour definitions)
MD10656 $MN_CHAMFER_NAME (name of the chamfer for contour definitions)
Note
See machine manufacturer's specifications.
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 241
Motion commands
9.8 Contour definitions
Note
In the following description it is assumed that
• G18 is active (⇒ active working plane is the Z/X plane).
(However, the programming of contour definitions is also possible without restrictions for
G17 or G19.)
• The following identifiers have been defined for angle, radius and chamfer:
– ANG (angle)
– RND (radius)
– CHR (chamfer)
Function
The end point of the straight line is defined by the following specifications:
● Angle ANG
● One Cartesian end point coordinate (X2 or Z2)
;=
$1*
;=
Fundamentals
242 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Motion commands
9.8 Contour definitions
Syntax
X… ANG=…
Z… ANG=…
Meaning
Example
or
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 243
Motion commands
9.8 Contour definitions
Note
In the following description it is assumed that
• G18 is active (⇒ active working plane is the Z/X plane).
(However, the programming of contour definitions is also possible without restrictions for
G17 or G19.)
• The following identifiers have been defined for angle, radius and chamfer:
– ANG (angle)
– RND (radius)
– CHR (chamfer)
Function
The end point of the first straight line can be programmed by specifying the Cartesian
coordinates or by specifying the angle of the two straight lines. The end point of the second
straight line must always be programmed with Cartesian coordinates. The intersection of the
two straight lines can be designed as a corner, curve or chamfer.
;
;=
$1*
&DQDOVREHUDGLXV
RUFKDPIHU
;=
$1*
;=
Fundamentals
244 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Motion commands
9.8 Contour definitions
Syntax
1. Programming of the end point of the first straight line by specifying the angle
● Corner as transition between the straight lines:
ANG=…
X… Z… ANG=…
ANG=… RND=...
X… Z… ANG=…
ANG=… CHR=...
X… Z… ANG=…
2. Programming of the end point of the first straight line by specifying the coordinates
X… Z…
X… Z…
X… Z… RND=...
X… Z…
X… Z… CHR=...
X… Z…
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 245
Motion commands
9.8 Contour definitions
Meaning
5RXQGLQJ
51'
&+5
&KDPIHU
$QJOHELVHFWRU
Note
For further information on the programming of a chamfer or rounding, see "Chamfer,
rounding (CHF, CHR, RND, RNDM, FRC, FRCM) (Page 278)".
Fundamentals
246 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Motion commands
9.8 Contour definitions
Example
Note
In the following description it is assumed that
• G18 is active (⇒ active working plane is the Z/X plane).
(However, the programming of contour definitions is also possible without restrictions for
G17 or G19.)
• The following identifiers have been defined for angle, radius and chamfer:
– ANG (angle)
– RND (radius)
– CHR (chamfer)
Function
The end point of the first straight line can be programmed by specifying the Cartesian
coordinates or by specifying the angle of the two straight lines. The end point of the second
and third straight lines must always be programmed with Cartesian coordinates. The
intersection of the straight lines can be designed as a corner, a curve, or a chamfer.
Note
The programming described here for a three point contour definition can be expanded
arbitrarily for contour definitions with more than three points.
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 247
Motion commands
9.8 Contour definitions
;
&DQDOVREHUDGLXV
RUFKDPIHU
;=
$1*
;=
;=
$1*
;=
Fundamentals
248 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Motion commands
9.8 Contour definitions
Syntax
1. Programming of the end point of the first straight line by specifying the angle
● Corner as transition between the straight lines:
ANG=…
X… Z… ANG=…
X… Z…
ANG=… RND=...
X… Z… ANG=… RND=...
X… Z…
ANG=… CHR=...
X… Z… ANG=… CHR=...
X… Z…
2. Programming of the end point of the first straight line by specifying the coordinates
X… Z…
X… Z…
X… Z…
X… Z… RND=...
X… Z… RND=...
X… Z…
X… Z… CHR=...
X… Z… CHR=...
X… Z…
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 249
Motion commands
9.8 Contour definitions
Meaning
5RXQGLQJ
51'
&+5
&KDPIHU
$QJOHELVHFWRU
Note
For further information on the programming of a chamfer or rounding, see "Chamfer,
rounding (CHF, CHR, RND, RNDM, FRC, FRCM)".
Fundamentals
250 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Motion commands
9.8 Contour definitions
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.
Number of programmed axes
● If no axis of the active plane has been programmed, then this is either the first or second
block of a contour definition consisting of two blocks.
If it is the second block of such a contour definition, then this means that the starting point
and end point in the active plane are identical. The contour definition is then at best a
motion perpendicular to the active plane.
● If exactly one axis of the active plane has been programmed, then this is either a single
straight line whose end point can be clearly defined via the angle and programmed
Cartesian coordinate or the second block of a contour definition consisting of two blocks.
In the second case, the missing coordinate is set to the same as the last (modal) position
reached.
● If two axes of the active plane have been programmed, then this is the second block of a
contour definition consisting of two blocks. If the current block has not been preceded by
a block with angle programming without programmed axes of the active plane, then this
block is not permitted.
Angle A may only be programmed for linear or spline interpolation.
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 251
Motion commands
9.9 Thread cutting with constant lead (G33)
Function
Threads with constant lead can be machined with G33:
● Cylinder thread
● Face thread
● Tapered thread
Note
Technical requirement for thread cutting with G33 is a variable-speed spindle with
position measuring system.
Fundamentals
252 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Motion commands
9.9 Thread cutting with constant lead (G33)
Multiple thread
Multiple thread (thread with offset cuts) can be machined by specifying a starting point offset.
The programming is performed in the G33 block at address SF.
;
6WDUWSRLQW
RIIVHWLQr
6WDUWDQJOH
IRUWKUHDG
VHWWLQJGDWD
Note
If no starting point offset is specified, the "starting angle for thread" defined in the setting
data is used.
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 253
Motion commands
9.9 Thread cutting with constant lead (G33)
Thread chain
A thread chain can be machined with several G33 blocks programmed in succession:
;
U
ZL GVH
WK W
*
QGVHW VWVHW
ZLWK* ZLWK*
=
Note
With continuous-path mode G64, the blocks are linked by the look-ahead velocity control in
such a way that there are no velocity jumps.
Fundamentals
254 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Motion commands
9.9 Thread cutting with constant lead (G33)
Syntax
Cylinder thread:
G33 Z… K…
G33 Z… K… SF=…
Face thread:
G33 X… I…
G33 X… I… SF=…
Tapered thread:
G33 X… Z… K…
G33 X… Z… K… SF=…
G33 X… Z… I…
G33 X… Z… I… SF=…
Meaning
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 255
Motion commands
9.9 Thread cutting with constant lead (G33)
Examples
Example 1: Double cylinder thread with 180° starting point offset
;
6WDUWSRLQWr
=
6WDUWSRLQWr
Fundamentals
256 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Motion commands
9.9 Thread cutting with constant lead (G33)
=
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 257
Motion commands
9.9 Thread cutting with constant lead (G33)
Description
Feedrate for thread cutting with G33
From the programmed spindle speed and the thread lead, the control calculates the required
feedrate with which the turning tool is traversed over the thread length in the longitudinal
and/or transverse direction. The feedrate F is not taken into account for G33, the limitation to
maximum axis velocity (rapid traverse) is monitored by the control.
DG
/H
)H
HG
6SLQGOHVSHHG
Cylinder thread
The cylinder thread is described by:
1. Thread length
2. Thread lead
The thread length is entered with one of the Cartesian coordinates X, Y or Z in absolute or
incremental dimensions (for turning machines preferably in the Z direction). Allowance must
also be made for the run-in and run-out paths, across which the feed is accelerated or
decelerated.
Fundamentals
258 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Motion commands
9.9 Thread cutting with constant lead (G33)
The thread lead is entered at the addresses I, J, K (for turning machines preferably with K).
;
5XQRXWSDWK
5XQLQSDWK
=
.
=
Face thread
The face thread is described by:
1. Thread diameter (preferably in the X direction)
2. Thread lead (preferably with I)
;
'LDPHWHU
,
/HDG
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 259
Motion commands
9.9 Thread cutting with constant lead (G33)
Tapered thread
The tapered thread is described by:
1. End point in the longitudinal and transverse direction (taper contour)
2. Thread lead
The taper contour is entered in Cartesian coordinates X, Y, Z in absolute or incremental
dimensions - preferentially in the X and Z direction for machining on turning machines.
Allowance must also be made for the run-in and run-out paths, across which the feed is
accelerated or decelerated.
The specification of the lead depends on the taper angle (angle between the longitudinal axis
and the outside of the taper):
;
.
r
!r ,
Fundamentals
260 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Motion commands
9.9 Thread cutting with constant lead (G33)
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:
● Run-in path too short
Because of the shoulder at the thread run-in, there is not much room for the tool starting
ramp - this must then be specified shorter via DITS.
● Run-out path too short
Because of the shoulder at the thread run-out, there is not much room for the tool
deceleration ramp, which results in a danger of collision between the workpiece and the
cutting edge.
The tool deceleration ramp can be specified shorter via DITE, but a collision can still
occur.
Solution: Program a shorter thread, reduce the spindle speed.
;
=
5XQLQUXQRXWSDWK
GHSHQGLQJRQGLUHFWLRQRI
PDFKLQLQJ
Syntax
DITS=value
DITE=value
Meaning
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 261
Motion commands
9.9 Thread cutting with constant lead (G33)
Note
Only paths, and not positions, are programmed with DITS and DITE.
Machine manufacturer
The DITS and DITE commands are related to the setting data SD 42010:
THREAD_RAMP_DISP[0,1], in which the programmed paths are written. If no run-
in/deceleration path is programmed before or in the first thread block, the value is
determined by the setting in SD 42010, see:
References: /FB1/Function Manual Basic Functions; Feedrates (V1)
Example
Fundamentals
262 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Motion commands
9.9 Thread cutting with constant lead (G33)
Description
If the run-in and/or run-out path is very short, the acceleration of the thread axis is higher
than the configured value. This causes an acceleration overload on the axis.
Alarm 22280 ("Programmed run-in path too short") is then issued for the thread run-in (with
the appropriate configuration in MD11411 $MN_ENABLE_ALARM_MASK). The alarm is
purely for information and has no effect on part program execution.
MD10710 $MN_PROG_SD_RESET_SAVE_TAB can be used to specify that the value
written by the part program is written to the corresponding setting data during RESET. The
values are therefore retained after power off/on.
Note
DITE acts at the end of the thread as an approximate distance. This achieves a smooth
change in the axis movement.
When a block with the DITS and/or DITE command is loaded to the interpolator, the path
programmed under DITS is taken into the SD42010 $SC_THREAD_RAMP_DISP[0] and the
path programmed under DITE is taken into the SD42010 $SC_THREAD_RAMP_DISP[1].
The programmed run-in path is handled according to the current setting (inches, metric).
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 263
Motion commands
9.10 Thread cutting with increasing or decreasing lead (G34, G35)
Function
With the commands G34 and G35, the G33 functionality has been extended with the option
of programming a change in the thread lead at address F. With G34, this results in a linear
increase and with G35 to a linear decrease of the thread lead. The commands G34 and G35
can therefore be used for the machining of self-tapping threads.
Syntax
Cylinder thread with increasing lead:
G34 Z… K… F...
Cylinder thread with decreasing lead:
G35 Z… K… F...
Face thread with increasing lead:
G34 X… I… F...
Face thread with decreasing lead:
G35 X… I… F...
Taper thread with increasing lead:
G34 X… Z… K… F...
G34 X… Z… I… F...
Taper thread with decreasing lead:
G35 X… Z… K… F...
G35 X… Z… I… F...
Meaning
Fundamentals
264 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Motion commands
9.10 Thread cutting with increasing or decreasing lead (G34, G35)
NHND
) >PPUHY@
,*
Example
References
Function Manual, Basic Functions; Feedrates (V1), Section "Linear increasing/decreasing
thread lead change with G34 and G35"
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 265
Motion commands
9.11 Tapping without compensating chuck (G331, G332)
Function
With G331/G332 you can tap a thread without compensating chuck.
The spindle prepared for tapping can make the following movements in position-controlled
operation with distance measuring system:
● G331: Tapping with thread lead in tapping direction up to end point
● G332: Retraction movement with the same lead as G331
Right-hand/left-hand threads
Right-hand or left-hand threads are defined in axis mode by the sign qualifying the lead:
● Positive lead, clockwise (same as M3)
● Negative lead, counterclockwise (same as M4)
The desired speed is also programmed at address S.
Syntax
G331 X… Y… Z… I… J… K…
G332 X… Y… Z… I… J… K…
Fundamentals
266 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Motion commands
9.11 Tapping without compensating chuck (G331, G332)
Meaning
G331 Tapping. Tapping is described by the drilling depth (end point of the
thread) and the lead.
G332 Tapping retraction. This movement is described with the same lead as the
G331 movement. The reversal in the direction of the spindle is performed
automatically.
X Y Z Drilling depth (end point) in a Cartesian coordinate Drilling in
X direction, thread lead I
Y direction, thread lead J
Z direction, thread lead K
I Thread lead in X direction
J Thread lead in Y direction
K Thread lead in Z direction
Value range of lead:
±0.001 to 2000.00 mm/rev
Note
Both functions G331/G332 are modal.
After G332 (retraction), the next thread can be tapped with G331.
Note
Machine manufacturer
A second gear-stage data record can be preset for two additional configurable switching
thresholds (maximum speed and minimum speed) via axis-specific machine data (this record
can differ from the first gear-stage data record and the speed switching thresholds in the two
records are regarded as completely separate). Please see the machine manufacturer’s
specifications for further details.
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 267
Motion commands
9.11 Tapping without compensating chuck (G331, G332)
Note
If gear stage 2 is selected at a spindle speed of 800 rpm, then the switching thresholds for
the maximum and minimum speed must be configured in the relevant machine data, see
examples below.
Using the second gear-stage data record for specifying two switching thresholds
The switching thresholds of the second gear-stage data record for the maximum and
minimum speed are evaluated modally for G331/G332 and when programming an S value
for the active master spindle. Automatic M40 gear-stage change must be active.
The gear stage as determined in the manner described above is compared with the active
gear stage. If they are found to be different, a gear-stage change is performed.
Fundamentals
268 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Motion commands
9.11 Tapping without compensating chuck (G331, G332)
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 269
Motion commands
9.12 Tapping with compensating chuck (G63)
Function
With G63 you can tap a compensating chuck. The following are programmed:
● Drilling depth in Cartesian coordinates
● Spindle speed and spindle direction
● Feedrate
The chuck compensates for any deviations occurring in the path.
Retraction movement
Programming also with G63, but with spindle rotation in the opposite direction.
Syntax
G63 X… Y… Z…
Meaning
Note
G63 is non-modal.
After a block with programmed G63, the last programmed interpolation command G0, G1,
G2… is active again.
Fundamentals
270 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Motion commands
9.12 Tapping with compensating chuck (G63)
Feedrate
Note
The programmed feed must match the ratio of the speed to the thread lead of the tap.
Thumb rule:
Feedrate F in mm/min = spindle speed S in rpm x thread lead in mm/rev
Not only the feedrate, but also the spindle speed override switch are set to 100% with G63.
Examples
Example 1:
Example 2:
In this example, an M5 thread is to be drilled. The lead of an M5 thread is 0.8 (according to
the table).
With a selected speed of 200 rpm, the feedrate F is 160 mm/min.
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 271
Motion commands
9.13 Stop during thread cutting
9.13.1 Retraction for thread cutting (LFOF, LFON, LIFTFAST, DILF, ALF)
Syntax
LFON
LFOF
LIFTFAST= (if enabled as option)
DILF=
ALF=
Meaning
Note
LFON or LFOF can always be programmed, but the evaluation is performed exclusively
during tapping (G33).
Fundamentals
272 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Motion commands
9.13 Stop during thread cutting
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 273
Motion commands
9.13 Stop during thread cutting
9.13.2 Lift during retraction (LFTXT, LFWP, LFPOS, POLF, POLFMASK, POLFMLIN)
Function
Starting form the retraction, you can specifically program the lift movement through to the lift
position with the commands LFTXT, LFWP, LFPOS, POLF.
The following are programmed:
● Retraction direction from the path tangent or the active working plane
● Retraction direction to the programmed position
● Absolute retraction position
In this case, the axis relation of the programmed path or the linear retracting movement is
not always guaranteed for a certain period of time. Depending on the dynamic response of
all the axes involved, the linear relation cannot always be established before the lift position
is reached. Axes can be enabled for independent retraction to axis position and to axis
position with linear relation.
Fundamentals
274 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Motion commands
9.13 Stop during thread cutting
Syntax
LFTXT
LFWP
LFPOS
POLF[geometry axis name | machine axis name]=
POLFMASK(Axis name1, Axis name2,...)
POLFMLIN
Meaning
LFTXT Retraction direction when lifting from the path tangent, standard
LFWP Retraction direction from the active working plane G17, G18, G19
LFPOS Retraction direction to the position programmed with POLF
POLF Absolute retraction position of axis, also incremental with IC (value).
POLF is modal
POLFMASK Release of axes for independent retraction to absolute position
POLFMLIN Release of axes for retraction to absolute position in linear relation.
See also /FB3/Function Manual Special Functions; Coupled Axes and
ESR (M3)
X, Y, Z Geometry axes for POLF are interpreted as position in the workpiece
coordinate system (WCS)
X1, Y1, Z1 Machine axes for POLF are interpreted as position in the machine
coordinate system (MCS)
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 275
Motion commands
9.13 Stop during thread cutting
Example
Here, the path interpolation of X is suppressed in the event of a stop and a motion
interpolated to position POLF[X] at maximum velocity instead. The motion of the other axes
is still determined by the programmed contour or the thread lead and the spindle speed.
Description
The retraction direction in connection with ALF is controlled using the following keywords:
● LFTXT
The plane in which the fast retraction is executed is calculated from the path tangent and
the tool direction (default setting).
● LFWP
The plane in which the fast retraction is executed is the active working plane.
● LFPOS
Retraction of the axis declared with POLFMASK to the absolute axis position
programmed with POLF. See also NC-controlled retraction in /FB3/Function Manual
Special Functions; Coupled Axes and ESR (M3).
ALF has no influence on the retraction direction on several axes or on several axes in
linear relation.
Fundamentals
276 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Motion commands
9.13 Stop during thread cutting
The direction is programmed as before in discrete steps of 45 degrees with ALF in the plane
of the retraction motion. With LFTXT, the retraction is defined in the tool direction for ALF=1.
With LFWP the direction in the working plane is derived from the following assignment:
● G17: X/Y plane
ALF=1 Retraction in X direction
ALF=3 Retraction in Y direction
● G18: Z/X plane
ALF=1 Retraction in Z direction
ALF=3 Retraction in X direction
● G19: Y/Z plane
ALF=1 Retraction in Y direction
ALF=3 Retraction in Z direction
Retraction velocity
Retraction with maximum axis velocity.
Can be configured via machine data.
The maximum permissible acceleration/jerk values are used for traversing; they are
configured via the machine data.
Note
POLF with POLFMASK/POLFMLIN are not restricted to thread cutting applications. See
/FB3/Function Manual Special Functions; Coupled Axes and ESR (M3).
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 277
Motion commands
9.14 Chamfer, rounding (CHF, CHR, RND, RNDM, FRC, FRCM)
Function
You can insert the following elements in a contour corner:
● Chamfer or
● Rounding
If you wish to round several contour corners sequentially by the same method, use RNDM
"Modal rounding". With this address, you can insert a rounding between linear and circle
contours after every motion block. For example, for the deburring of sharp workpiece edges.
You can program the feedrate for the chamfer/rounding with FRC (non-modal) or FRCM
(modal).
If FRC/FRCM is not programmed, the normal path feedrate F is applied.
Syntax
CHF=…
CHR=…
RND=…
RNDM=…
FRC=…
FRCM=…
Meaning
Fundamentals
278 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Motion commands
9.14 Chamfer, rounding (CHF, CHR, RND, RNDM, FRC, FRCM)
&+5
&+
)
*
˞
&KDPIHU
*
; %LVHFWRU
=
HJ*
The chamfer is inserted after the block in which it is programmed. The chamfer is always in
the plane activated with G17 to G19.
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 279
Motion commands
9.14 Chamfer, rounding (CHF, CHR, RND, RNDM, FRC, FRCM)
5RXQGLQJ
*
51'
*
;
=
HJ*
The rounding is always in the plane activated with G17 to G19. The above figure shows the
rounding between to straight lines.
This figure shows the rounding between a straight line and a circle.
N30 G1 X… Z… F… RND=2
N40 G3 X… Z… I… K…
5RXQGLQJ
*
*
51'
;
=
HJ*
Fundamentals
280 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Motion commands
9.14 Chamfer, rounding (CHF, CHR, RND, RNDM, FRC, FRCM)
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 281
Motion commands
9.14 Chamfer, rounding (CHF, CHR, RND, RNDM, FRC, FRCM)
Fundamentals
282 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Motion commands
9.14 Chamfer, rounding (CHF, CHR, RND, RNDM, FRC, FRCM)
Description
Note
Chamfer/rounding
If the programmed values for chamfer (CHF/CHR) or rounding (RND/RNDM) are too large
for the associated contour elements, then the chamfer or rounding are automatically reduced
to a suitable value.
No chamfer/rounding is inserted, if
No straight or circle contour 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.
Note
FRC/FRCM
FRC/FRCM has no effect if a chamfer is being machined with G0; the command can be
programmed according to the F value without error message.
The reference to the blocks, in which chamfer and rounding are programmed and to the
technology is set in machine data.
FRC is operative only if a chamfer/rounding is programmed in the same block or if RNDM
has been activated.
FRC overwrites the F or FRCM value in the current block.
The feedrate programmed under FRC must be greater than zero.
FRCM=0 activates the feed programmed in F for the chamfer/rounding.
If FRCM is programmed, the FRCM value must be reprogrammed, analogous to F, on
changeover G94<->95, etc. If only a new F value is programmed, and if FRCM > 0 before
the feed type changes, error message 10860 (no feed programmed) will be activated.
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 283
Motion commands
9.14 Chamfer, rounding (CHF, CHR, RND, RNDM, FRC, FRCM)
Fundamentals
284 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Tool radius compensation 10
10.1 Tool radius compensation (G40, G41, G42, OFFN)
Function
When tool radius compensation is active, the control automatically calculates the equidistant
tool paths for different tools.
(TXLGLVWDQW
(TXLGLVWDQW
You can generate equidistant paths with OFFN, e.g. for rough finishing.
Syntax
G40
G41
G42
OFFN=
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 285
Tool radius compensation
10.1 Tool radius compensation (G40, G41, G42, OFFN)
Meaning
Example 1 milling
<
&RPSHQVDWLRQ
RQ;
&RPSHQVDWLRQ
1
RQ<
1
;
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.
Fundamentals
286 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Tool radius compensation
10.1 Tool radius compensation (G40, G41, G42, OFFN)
Example 2 milling
The "conventional" approach:
Call tool, load tool, activate working plane and tool radius compensation.
<
<
; =
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 287
Tool radius compensation
10.1 Tool radius compensation (G40, G41, G42, OFFN)
Example 1: Turning
20
Ø 100
Ø 20
20 1
N20 T1 D1
N30 G0 X100 Z20
N40 G42 X20 Z1
N50 G1 Z-20 F0.2
Only tool length compensation is activated in block N20. X100 Z20 is approached without
compensation in block N30.
In block N40, the radius compensation is activated, point X20/Z1 is approached with
compensation.
Fundamentals
288 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Tool radius compensation
10.1 Tool radius compensation (G40, G41, G42, OFFN)
Example 2: Turning
r
;
5
5
5
5 5
=
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 289
Tool radius compensation
10.1 Tool radius compensation (G40, G41, G42, OFFN)
Description
The control requires the following information in order to calculate the tool paths:
● Tool no. T/edge no. D
● Direction of machining G41, G42
● Working plane G17 to G19
Fundamentals
290 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Tool radius compensation
10.1 Tool radius compensation (G40, G41, G42, OFFN)
G41
G42 G41
G42
G41
Note
A negative offset value is the same as a change of offset side (G41, G42).
You can generate equidistant paths with OFFN, e.g., for rough-finishing.
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 291
Tool radius compensation
10.1 Tool radius compensation (G40, G41, G42, OFFN)
5DGLXV
;
=
V
GLX
5D
G
5D
LXV
/H
JWK QJ
HQ WK
/ <
Note
On 2-axis machines, the tool radius compensation is only possible in "real" planes, in
general with G18 (see tool length compensation table).
Fundamentals
292 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Tool radius compensation
10.1 Tool radius compensation (G40, G41, G42, OFFN)
<
/HQJWK
;
/HQJWK
5DGLXV
/HQJWK
V
LX
DG
5
/H
QJ
WK
=
Using NORM and KONT you can determine the tool path for activation/deactivation of
compensation mode (see chapter "Contour approach and retraction", NORM, KONT, G450,
G451).
CAUTION
Activation/deactivation of tool radius compensation
A travel command must be programmed with G0 or G1 in an NC block with G40, G41 or
G42. This travel command must specify at least one axis in the selected working plane.
If you only specify one axis on activation, the last position on the second axis is added
automatically and traversed with both axes.
The two axes must be active as GEOAX in the channel. This can be achieved by
programming them with GEOAX.
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 293
Tool radius compensation
10.1 Tool radius compensation (G40, G41, G42, OFFN)
Intersection
Select intersection with SD 42496: CUTCOM_CLSD_CONT
FALSE:
If two intersections appear on the inside when offsetting an (virtually) closed contour, which
consists of two circle blocks following on from one another, or from one circle block and one
linear block, the intersection positioned closest to the end of block on the first partial contour
is selected, in accordance with standard procedure.
A contour is deemed to be (virtually) closed if the distance between the starting point of the
first block and the end point of the second block is less than 10% of the effective
compensation radius, but not more than 1000 path increments (equals 1 mm with three
decimal places).
TRUE:
In the same situation as described above, the intersection positioned on the first partial
contour closer to the block start is selected.
G41
G42
Fundamentals
294 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Tool radius compensation
10.1 Tool radius compensation (G40, G41, G42, OFFN)
CAUTION
The radius change or compensation movement is performed across the entire block and
only reaches the new equidistance at the programmed end point.
1&EORFNZLWKPRGLILHGUDGLXVFRUUHFWLRQ
7UDYHUVHSDWK
SDWK
3URJUDPPHG
With linear movements, the tool travels along an inclined path between the starting point and
end point; with circular interpolation spiral movements are produced.
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 295
Tool radius compensation
10.1 Tool radius compensation (G40, G41, G42, OFFN)
CAUTION
The modified values only take effect the next time T or D is programmed. The change only
applies with effect from the next block.
Note
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.
Machine manufacturer
The number of consecutive blocks or M commands can be set in machine data 20250 (see
machine manufacturer).
Note
A block with a path distance of zero also counts as an interruption!
Fundamentals
296 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Tool radius compensation
10.2 Contour approach and retraction (NORM, KONT, KONTC, KONTT)
Function
With this function, you can match the approach and retract paths, for example, to the
required contour profile or blank forms.
Only G1 blocks are permissible as original approach and retract blocks for the two functions
KONTC and KONTT. The control replaces these with polynomials for the appropriate
approach/retract path.
Syntax
NORM
KONT
KONTC
KONTT
Meaning
NORM Tool travels directly on a straight line and is perpendicular to the contour
point.
KONT The tool travels around the contour point according to the programmed
corner behavior G450 or G451.
KONTC Tool reaches/leaves contour point with constant curvature.
With constant curvature includes with constant tangent. See below. With
constant curvature means with constant acceleration.
KONTT Tool reaches/leaves contour point with constant tangent.
Generally, with constant tangent is not with constant acceleration.
KONTC
The contour point is approached/exited with constant curvature. There is no jump in
acceleration at the contour point. The path from the start point to the contour point is
interpolated as a polynomial.
KONTT
The contour point is approached/exited with constant tangent. A jump in the acceleration can
occur at the contour point. The path from the start point to the contour point is interpolated as
a polynomial.
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 297
Tool radius compensation
10.2 Contour approach and retraction (NORM, KONT, KONTC, KONTT)
Fundamentals
298 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Tool radius compensation
10.2 Contour approach and retraction (NORM, KONT, KONTC, KONTT)
3D representation: To simultaneously adapt the curvature to the circular path of the full
circle, traversing is performed from Z60 to the plane of the circle Z0.
7DQJHQW
*
*
&RUUHFWHG &RUUHFWHG
WRROSDWK WRROSDWK
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 299
Tool radius compensation
10.2 Contour approach and retraction (NORM, KONT, KONTC, KONTT)
5
DG
LX
V
7DQJHQW
*
*
WARNING
The following applies to approach and retraction movements:
You should make allowance for the modified angles of travel when programming in order to
avoid collisions.
Fundamentals
300 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Tool radius compensation
10.2 Contour approach and retraction (NORM, KONT, KONTC, KONTT)
%HKLQGFRQWRXU
3DWKWDQJHQW
,QIURQWRIFRQWRXU 6WDUWSRLQW
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 301
Tool radius compensation
10.2 Contour approach and retraction (NORM, KONT, KONTC, KONTT)
G450 G451
G450 G451
$SSURDFKSRLQW
6WDUWSRLQW
$SSURDFKSDWK
7RROUDGLXV
Fundamentals
302 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Tool radius compensation
10.2 Contour approach and retraction (NORM, KONT, KONTC, KONTT)
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 303
Tool radius compensation
10.2 Contour approach and retraction (NORM, KONT, KONTC, KONTT)
This diagram shows the differences in approach/retract behavior between KONTT and
KONTC. A circle with a radius of 20 mm about the center point at X0 Y-40 is compensated
with a tool with an external radius of 20 mm. The tool center point therefore moves along a
circular path with radius 40 mm. The end point of the approach blocks is at X40 Y30. The
transition between the circular block and the retraction block is at the zero point. Due to the
extended continuity of curvature associated with KONTC, the retraction block first executes a
movement with a negative Y component. This will often be undesired. This response does
not occur with the KONTT retraction block. However, with this block, an acceleration step
change occurs at the block transition.
If the KONTT or KONTC block is the approach block rather than the retraction block, the
contour is exactly the same, but machined in the opposite direction.
Fundamentals
304 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Tool radius compensation
10.3 Compensation at the outside corners (G450, G451, DISC)
Function
The following is specified with G450/G451:
Firstly the approach path with active KONT and the approach point behind the contour (see
Section "Approaching and leaving contour").
Secondly the corrected tool path when traveling around outside corners.
Syntax
G450 DISC=…
G451
Meaning
G450 Transition circle, the tool travels around workpiece corners on a circular
path with tool radius
DISC= Flexible programming of the approach and retract command. In steps of 1
from DISC=0 circle to DISC=100 intersection
G451 Intersection, tool backs off from the workpiece corner
DISC=… only applies with call of G450, but can be programmed in a previous block without
G450. Both commands are modal.
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 305
Tool radius compensation
10.3 Compensation at the outside corners (G450, G451, DISC)
Example
In this example, a transition radius is programmed for all outside corners (progr. in block
N30). This prevents the tool stopping and backing off at the change of direction.
< <
; =
Fundamentals
306 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Tool radius compensation
10.3 Compensation at the outside corners (G450, G451, DISC)
G450
P*
The transition circle belongs to the next travel command with respect to the data.
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 307
Tool radius compensation
10.3 Compensation at the outside corners (G450, G451, DISC)
',6&
',6&
65
',6& ',6&
&RQWRXUDQJOHGHJUHHV
57RROUDGLXV67UDYHUVHRYHUVKRRW
651RUPDOL]HGRYHUVKRRW
LQUHODWLRQWRWRROUDGLXV
Fundamentals
308 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Tool radius compensation
10.3 Compensation at the outside corners (G450, G451, DISC)
*
Note
Superfluous non-cutting tool paths can result from liftoff movements at acute contour angles.
A parameter can be used in the machine data to define automatic switchover to transition
circle in such cases.
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 309
Tool radius compensation
10.4 Smooth approach and retraction
10.4.1 Approach and retraction (G140 to G143, G147, G148, G247, G248, G347, G348,
G340, G341, DISR, DISCL, FAD)
Function
The SAR (Smooth Approach and Retraction) function is used to achieve a tangential
approach to the start point of a contour, regardless of the position of the start point.
*
*
3URJUFRQWRXU
',65
*
This function is used preferably in conjunction with the tool radius compensation, but this is
not mandatory.
The approach and retraction movement consists of a maximum of four sub-movements:
● Start point of the movement P0
● Intermediate points P1, P2 and P3
● End point P4
Points P0, P3 and P4 are always defined. Intermediate points P1 and P2 can be omitted,
according to the parameters defined and the geometrical conditions.
Fundamentals
310 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Tool radius compensation
10.4 Smooth approach and retraction
Syntax
G140
G141 to G143
G147, G148
G247, G248
G347, G348
G340, G341
DISR=..., DISCL=..., FAD=...
Meaning
G140 Approach and retraction direction dependent on the current compensation side
(basic setting)
G141 Approach from the left or retraction to the left
G142 Approach from the right or retraction to the right
G143 Approach and retraction direction dependent on the relative position of the start
or end point to the tangent direction
G147 Approach with a straight line
G148 Retraction with a straight line
G247 Approach with a quadrant
G248 Retraction with a quadrant
G347 Approach with a semicircle
G348 Retraction with a semicircle
G340 Approach and retraction in space (basic setting)
G341 Approach and retraction in the plane
DISR Approach and retraction with straight lines (G147/G148)
Distance of the milling tool edge to the starting point of the contour
Approach and retraction along circles (G247, G347/G248, G348)
Radius of the tool center path
Notice: For REPOS with a semicircle, DISR is the circle diameter
DISCL DISCL=... distance of the end point of the
fast feed movement to the machining plane
DISCL=AC(...) specification of the absolute position of the end point of the
fast feed movement
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 311
Tool radius compensation
10.4 Smooth approach and retraction
Example
7RROFHQWHUSDWK
\
7RRO
3UHW
3DSS [
3UHW
3DSS 3UHW
&RQWRXU
Fundamentals
312 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Tool radius compensation
10.4 Smooth approach and retraction
● Infeed movement
– From Z20 to Z7 (DISCL=AC(7)) with rapid traverse.
– Then to Z0 with FAD=200.
– Approach circle in X-Y-plane and following blocks with F1500 (for this velocity to take
effect 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 activated)
● Retraction with quadrant (G248) and helix (G340)
● FAD not programmed, since irrelevant for G340
● Z=2 in the starting point; Z=8 in the end point, since DISCL=6
● When DISR=5, the radius of the SAR contour=20, the radius of the tool center point
path=5
Retraction movements from Z8 to Z20 and the movement parallel to the X-Y plane to X70
Y0.
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 313
Tool radius compensation
10.4 Smooth approach and retraction
3
7RRO 3IRUDSSURDFKUHWXUQZLWK
DVWUDLJKWOLQH*
7RROFHQWHUSDWK
3 &RQWRXU
',65
3
3IRUDSSURDFKUHWXUQZLWK
TXDGUDQW*
',65 7RROFHQWHUSDWK
7RRO
3 &RQWRXU
3
3IRUDSSURDFKUHWXUQZLWK
VHPLFLUFOH*
',65
7RROFHQWHUSDWK
7RRO
3 &RQWRXU
$SSURDFKDQGUHWUDFWLRQVKRZQZLWKLQWHUPHGLDWH
SRLQW3ZLWKVLPXOWDQHRXVDFWLYDWLRQRIWRROUDGLXV
FRPSHQVDWLRQ
Fundamentals
314 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Tool radius compensation
10.4 Smooth approach and retraction
Description
The G codes are only significant when the approach contour is a quadrant or a semicircle.
Motion steps between start point and end point (G340 and G341).
The approach characteristic from P0 to P4 is shown in the adjacent figure.
,QIHHGPRYHPHQW
6WUDLJKWOLQHFLUFOH 6WUDLJKW
RUKHOL[ RUFLUFOH
3
3 3
',6&/ 3 ',6&/ 3 3
$SSURDFKPRYHPHQWGHSHQGLQJRQ**
In cases which include the position of the active plane G17 to G19 (circular plane, helical
axis, infeed motion perpendicular to the active plane), any active rotating FRAME is taken
into account.
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 315
Tool radius compensation
10.4 Smooth approach and retraction
Length of the approach straight line or radius for approach circles (DISR) (see figure when
selecting approach/retraction contour)
● Approach/retract with straight line
DISR specifies the distance of the cutter edge from the starting point of the contour, i.e.
the length of the straight line when TRC is active is the sum of the tool radius and the
programmed value of DISR. The tool radius is only taken into account if it is positive.
The resultant line length must be positive, i.e. negative values for DISR are allowed
provided that the absolute value of DISR is less than the tool radius.
● Approach/retraction with circles
DISR indicates the radius of the tool center point path. If TRC is activated, a circle is
produced with a radius that results in the tool center point path with the programmed
radius.
Distance of the point from the machining plane (DISCL) (see figure when selecting
approach/retraction contour)
If the position of point P2 is to be specified by an absolute reference on the axis
perpendicular to the circle plane, the value must be programmed in the form DISCL=AC(...).
The following applies for DISCL=0:
● With G340: The whole of the approach motion now only consists of two blocks (P1, P2
and P3 are combined). The approach contour is formed by P1 to P4.
● With G341: The whole approach contour consists of three blocks (P2 and P3 are
combined). If P0 and P4 are on the same plane, only two blocks result (infeed movement
from P1 to P3 is omitted).
● The point defined by DISCL is monitored to ensure that it is located between P1 and P3,
i.e. the sign must be identical for the component perpendicular to the machining plane in
all motions that possess such a component.
● On detection of a direction reversal, a tolerance defined by the machine data
SAR_CLEARANCE_TOLERANCE is permitted.
Fundamentals
316 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Tool radius compensation
10.4 Smooth approach and retraction
2.
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 317
Tool radius compensation
10.4 Smooth approach and retraction
0DFKLQLQJXSWRWKLV
SRLQWZLWK*
FRQWLQXLQJZLWK*
)
<
= =
=
;
3 &RQWRXU
',65
Fundamentals
318 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Tool radius compensation
10.4 Smooth approach and retraction
)ROORZLQJEORFN
ZLWKRXWFRPSHQVDWLRQ
3
7RROFHQWHUSDWK 3
7RRO
36$5EORFN
**
&RQWRXUSUHFHGLQJEORFN
5HWUDFWLRQZLWK6$5DQGVLPXOWDQHRXV
GHDFWLYDWLRQRI75&
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 319
Tool radius compensation
10.4 Smooth approach and retraction
Example:
<
;
= *
3 3 *
3 )
3
3 ) ) ;
During retraction, the rolls of the modally active feedrate from the previous block and the
programmed feedrate value in the SAR block are changed around, i.e. the actual retraction
contour is traversed with the old feedrate value and a new speed programmed with the F
word applies from P2 up to P0.
Fundamentals
320 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Tool radius compensation
10.4 Smooth approach and retraction
9HORFLWLHVLQWKH6$5VXEEORFNV
RQUHWUDFWLRQZLWK*
9HORFLWLHVLQWKH6$5VXEEORFNV
RQUHWUDFWLRQZLWK*
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 321
Tool radius compensation
10.4 Smooth approach and retraction
5DSLGWUDYHUVHLI*LVDFWLYH
RWKHUZLVHZLWKROGQHZ)ZRUG
9HORFLW\RIWKHSUHYLRXVEORFN
ROG)ZRUG
5HWUDFWLRQVSHHGSURJUDPPHGZLWK)$'
1HZPRGDOYHORFLW\SURJUDPPHGZLWK)
9HORFLWLHVLQWKH6$5VXEEORFNV
RQUHWUDFWLRQ
Reading positions
Points P3 and P4 can be read in the WCS as a system variable during approach.
● $P_APR: reading P
● 3 (initial point)
● $P_AEP: reading P
● 4 (contour starting point)
● $P_APDV: read whether $P_APR and $P_AEP contain valid data
Fundamentals
322 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Tool radius compensation
10.4 Smooth approach and retraction
10.4.2 Approach and retraction with enhanced retraction strategies (G460, G461, G462)
Function
In certain special geometrical situations, special extended approach and retraction
strategies, compared with the previous implementation with activated collision detection for
the approach and retraction block, are required in order to activate or deactivate tool radius
compensation. A collision detection can result, for example, in a section of the contour not
being completely machined, see following figure.
1 <
7RROUDGLXV
;
&HQWHUSRLQWSDWKZLWK
WRROUDGLXVFRPSHQVDWLRQ
3URJUDPPHG
1 1 FRQWRXU
Syntax
G460
G461
G462
Meaning
G460 As previously (activation of the collision detection for the approach and retraction
block)
G461 Insertion of a circle in the TRC block, if it is not possible to have an intersection
whose center point is in the end point of the uncorrected block, and whose radius is
the same as the tool radius.
Up to the intersection, machining is performed with an auxiliary circle around the
contour end point (i.e. up to the end of the contour).
G462 Insertion of a circle in the TRC block, if it is not possible to have an intersection; the
block is extended by its end tangent (default setting).
Machining is performed up to the extension of the last contour element (i.e. until
shortly before the end of the contour).
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 323
Tool radius compensation
10.4 Smooth approach and retraction
Note
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 independently of the
retraction behavior.
Fundamentals
324 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Tool radius compensation
10.4 Smooth approach and retraction
G461
If no intersection is possible between the last TRC block and a preceding block, the offset
curve of this block is extended with a circle whose center point lies at the end point of the
uncorrected block and whose radius is equal to the tool radius.
The control attempts to cut this circle with one of the preceding blocks.
1 <
$X[LOLDU\FXUYH
;
&HQWHUSRLQWSDWKZLWK
WRROUDGLXVFRPSHQVDWLRQ
3URJUDPPHG
1 1 FRQWRXU
Note
If no intersection is found, alarm 10751 (collision danger) is output.
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 325
Tool radius compensation
10.4 Smooth approach and retraction
G462
If no intersection is possible between the last TRC block and a preceding block, a straight
line is inserted, on retraction with G462 (initial setting), at the end point of the last block with
tool radius compensation (the block is extended by its end tangent).
The search for the intersection is then identical to the procedure for G461.
1 <
$X[LOLDU\FXUYH
;
&HQWHUSRLQWSDWKZLWK
WRROUDGLXVFRPSHQVD
WLRQ
3URJUDPPHG
1 1 FRQWRXU
Fundamentals
326 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Tool radius compensation
10.4 Smooth approach and retraction
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 327
Tool radius compensation
10.5 Collision monitoring (CDON, CDOF, CDOF2)
Function
With the collision detection and active tool radius compensation, the tool paths are monitored
through look-ahead contour calculation. This Look Ahead function allows possible collisions
to be detected in advance and permits the control to actively avoid them.
Syntax
CDON
CDOF
CDOF2
Meaning
Fundamentals
328 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Tool radius compensation
10.5 Collision monitoring (CDON, CDOF, CDOF2)
Note
The number of NC blocks that are included in the collision detection, can be set via machine
data.
3DUWFRQWRXU
1 3
&RUUHFWHGVHWSDWK
1RUPDOVL]H
8QGHUVL]H
2IIVHWRQWKH RIIVHWFXUYH
VWDUWLQJSRLQWRI1 &RPSHQVD
WLRQPRWLRQ
3
1 1 1 3URJUDPPHGRULJLQDO
SDWKVWDQGDUGWRRO
2IIVHWRQWKHHQGSRLQWRI1
Since an intersection exists only between the offset curves of the two blocks N10 and N40,
the two blocks N20 and N30 would have to be omitted. In the example, the control does not
know in block N40 if N10 has to be completely processed. Only a single block can therefore
be omitted.
With active CDOF2, the compensation motion shown in the figure is executed and not
stopped. In this situation, an active CDOF or CDON would result in an alarm.
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 329
Tool radius compensation
10.5 Collision monitoring (CDON, CDOF, CDOF2)
Further information
Program test
To avoid program stops, the tool with the largest radius from the range of used tools should
always be used during the program test.
Examples of compensation motions for critical machining situations
The following examples show critical machining situations that are detected by the control
and compensated through modified tool paths. In all examples, a tool with too large a radius
has been used for the machining of the contour.
Example 1: Bottleneck detection
7RROSDWK
3URJUDPPHGFRQWRXU
As the tool radius selected for the machining of this inside contour is too large, the
"bottleneck" is bypassed.
An alarm is output.
Example 2: Contour path shorter than tool radius
7RROSDWK
3URJUDPPHGFRQWRXU
The tool bypasses the workpiece corner on a transition circle, then continues on the
programmed path.
Fundamentals
330 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Tool radius compensation
10.6 2D tool compensation (CUT2D, CUT2DF)
7RROSDWK
3URJUDPPHG
FRQWRXU
In such cases, the contours are machined only as much as is possible without causing a
contour violation.
References
Function Manual, Basic Functions; Tool Offsets (W1); Section "Collision detection and
bottleneck detection"
Function
With CUT2D or CUT2DF you define how the tool radius compensation is to act or to be
interpreted when machining in inclined planes.
Tool length compensation
The tool length compensation generally always refers to the fixed, non-rotated working
plane.
2D tool radius compensation with contour tools
The tool radius compensation for contour tools is used for automatic cutting-edge selection
in the case of non-axially symmetrical tools that can be used for piece-by-piece machining of
individual contour segments.
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 331
Tool radius compensation
10.6 2D tool compensation (CUT2D, CUT2DF)
Syntax
CUT2D
CUT2DF
2D tool radius compensation for contour tools is activated if either of the two machining
directions G41 or G42 is programmed with CUT2D or CUT2DF.
Note
If tool radius compensation is not activated, a contour tool will behave like a standard tool
with only the first cutting edge.
Meaning
CUT2D is used when the orientation of the tool cannot be changed and the workpiece is
rotated for machining on inclined surfaces.
CUT2D is generally the standard setting and does not, therefore, have to be specified
explicitly.
Cutting-edge selection with contour tools
Up to a maximum of 12 cutting edges can be assigned to each contour tool in any order.
Machine manufacturer
The valid tool types for non-axially symmetrical tools and the maximum number of cutting
edges (Dn = D1 to D12) are defined by the machine manufacturer via machine data. Please
contact the machine manufacturer if not all of the 12 cutting edges are available.
References:/FB1/Function Manual Basic Functions; Tool Offset (W1)
Fundamentals
332 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Tool radius compensation
10.6 2D tool compensation (CUT2D, CUT2DF)
= =
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 333
Tool radius compensation
10.6 2D tool compensation (CUT2D, CUT2DF)
= =
If a frame containing a rotation is programmed, the compensation plane is also rotated with
CUT2DF. The tool radius compensation is calculated in the rotated machining plane.
Note
The tool length compensation continues to be active relative to the non-rotated working
plane.
Fundamentals
334 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Tool radius compensation
10.7 Keep tool radius compensation constant (CUTCONON, CUTCONOF)
Function
The "Keep tool radius compensation constant" function is used to suppress tool radius
compensation for a number of blocks, whereby a difference between the programmed and
the actual tool center path traveled set up by tool radius compensation in the previous blocks
is retained as the compensation. It can be an advantage to use this method when several
traversing blocks are required during line milling in the reversal points, but the contours
produced by the tool radius compensation (follow strategies) are not wanted. It can be used
independently of the type of tool radius compensation (21/2D, 3D face milling, 3D
circumferential milling).
Syntax
CUTCONON
CUTCONOF
Meaning
Example
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 335
Tool radius compensation
10.7 Keep tool radius compensation constant (CUTCONON, CUTCONOF)
<
&RQWRXUZLWKRXW75&
1
1
1
&RQWRXUZLWK75& 1
1
1
1 1 ;
Further information
Tool radius compensation is normally active before the compensation suppression and is still
active when the compensation suppression is deactivated again. In the last traversing block
before CUTCONON, the offset point in the block end point is approached. All following blocks
in which offset suppression is active are traversed without offset. However, they are offset by
the vector from the end point of the last offset block to its offset point. These blocks can have
any type of interpolation (linear, circular, polynomial).
The deactivation block of the compensation suppression, i.e. the block that contains
CUTCONOF, is compensated normally. It starts in the offset point of the starting point. One
linear block is inserted between the end point of the previous block, i.e. the last programmed
traversing block with active CUTCONON, and this point.
Fundamentals
336 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Tool radius compensation
10.8 Tools with a relevant cutting edge position
Circular blocks, for which the circle plane is perpendicular to the compensation plane
(vertical circles), are treated as though they had CUTCONON programmed. This implicit
activation of the offset suppression is automatically canceled in the first traversing block that
contains a traversing motion in the offset plane and is not such a circle. Vertical circle in this
sense can only occur during circumferential milling.
Function
In the case of tools with a relevant tool point direction (turning and grinding tools – tool types
400–599; see chapter "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
preprocessing stop (decoding stop) and hence possibly to deviations from the intended part
contour.
This original functionality changes with regard to:
1. Preprocessing stop on TRANSMIT
2. Calculation of intersection points at approach and retraction with KONT
3. Tool change with active tool radius compensation
4. Tool radius compensation with variable tool orientation at transformation
Description
This original functionality was changed as follows:
● A change from G40 to G41/G42 and vice-versa is no longer treated as a tool change.
Therefore, a preprocessing stop no longer occurs with TRANSMIT.
● The straight line between the tool edge center points at the block start and block end is
used to calculate intersection points with the approach and retraction block. The
difference between the tool edge reference point and the tool edge center point is
superimposed on this movement.
On approach and retraction with KONT (tool circumnavigates the contour point, see
above subsection "Contour approach and retraction"), superimposition takes place in the
linear part block of the approach or retraction motion. The geometric conditions are
therefore identical for tools with and without a relevant tool point direction. Differences
from the previous behavior occur only in relatively rare situations where the approach or
retraction block does not intersect with an adjacent motion block, see diagram below.
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 337
Tool radius compensation
10.8 Tools with a relevant cutting edge position
/DVWSRVLWLRQRIFXWWLQJHGJHFHQWHUSRLQW
RQWKHFRQWRXU6:DQGKLJKHU
&XWWLQJHGJHFHQWHUSRLQW
3URJUDPPHGUHWUDFWLRQEORFN
7RROHQGSRVLWLRQ
7RROHGJHUHIHUHQFHSRLQW
%ORFNZLWKRXW &HQWHUSRLQWSDWK
LQWHUVHFWLRQZLWK
SUHYLRXVEORFN
/DVWSRVLWLRQRIFXWWLQJHGJHFHQWHUSRLQW
7RROHGJHUHIHUHQFHSRLQW
● In circle blocks and in motion blocks containing rational polynomials with a denominator
degree > 4, it is not permitted to change a tool with active tool radius compensation in
cases where the distance between the tool edge center point and the tool edge reference
point changes. With other types of interpolation, it is now possible to change when a
transformation is active (e.g., TRANSMIT).
● For tool radius compensation with variable tool orientation, the transformation from the
tool edge reference point to the tool edge center point can no longer be performed by
means of a simple zero offset. Tools with a relevant tool point direction are therefore not
permitted for 3D peripheral milling (an alarm is output).
Note
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. (A tool with a type,
which has not been explicitly approved, is treated as a ball end mill with the specified
radius. A tool point direction parameter is ignored).
Fundamentals
338 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Path Action 11
11.1 Exact stop (G60, G9, G601, G602, G603)
Function
In exact stop traversing mode, all path axes and special axes involved in the traversing
motion that are not traversed modally, are decelerated at the end of each block until they
come to a standstill.
Exact stop is used when sharp outside corners have to be machined or inside corners
finished to exact dimensions.
The exact stop specifies how exactly the corner point has to be approached and when the
transition is made to the next block:
● "Exact stop fine"
The block change is performed as soon as the axis-specific tolerance limits for "Exact
stop fine" are reached for all axes involved in the traversing motion.
● "Exact stop coarse"
The block change is performed as soon as the axis-specific tolerance limits for "Exact
stop coarse" are reached for all axes involved in the traversing motion.
● "Interpolator end"
The block change is performed as soon as the control has calculated a set velocity of
zero for all axes involved in the traversing motion. The actual position or the following
error of the axes involved are not taken into account
Note
The tolerance limits for "Exact stop fine" and "Exact stop coarse" can be set for each axis
via the machine data.
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 339
Path Action
11.1 Exact stop (G60, G9, G601, G602, G603)
Syntax
G60 ...
G9 ...
G601 ...
G602 ...
G603 ...
Meaning
Example
Fundamentals
340 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Path Action
11.1 Exact stop (G60, G9, G601, G602, G603)
Further information
G60, G9
G9 generates the exact stop in the current block, G60 in the current block and in all following
blocks.
Continuous-path-mode commands G64 or G641 are used to deactivate G60.
G601, G602
%ORFNDGYDQFH
ZLWK* ZLWK*
3URJUDPPHG
SDWK
Note
Recommendation: Only set the limits for the exact stop criteria as tight as necessary. The
tighter the limits, the longer it takes to position and approach the target position.
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 341
Path Action
11.1 Exact stop (G60, G9, G601, G602, G603)
G603
The block change is initiated when the control has calculated a set velocity of zero for the
axes involved. At this point, the actual value lags behind by a proportionate factor depending
on the dynamic response of the axes and the path velocity. The workpiece corners can now
be rounded.
%ORFNFKDQJH
3URJUDPPHGSDWK
7UDYHUVHG
SDWK
ZLWK)
7UDYHUVHG
SDWK
ZLWK)
))
References
Function Manual, Basic Functions, Continuouspath Mode, Exact Stop, Look Ahead (B1)
Fundamentals
342 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Path Action
11.2 Continuous-path mode (G64, G641, G642, G643, G644, ADIS, ADISPOS)
Function
In continuous-path mode, the contour is machined with a constant path velocity. The uniform
velocity also establishes better cutting conditions, improves the surface quality and reduces
the machining time.
Note
Continuous-path mode is interrupted by blocks which implicitly trigger a preprocessing stop,
e.g. access to particular status data of the machine ($A...). The corresponding situation
applies for the auxiliary function outputs.
NOTICE
In continuous-path mode, the programmed contour transitions are not approached exactly.
If a rounding movement initiated by G641, G642, G643, G644 is interrupted, the corner
point of the original contour will be used for subsequent repositioning (REPOS), rather than
the interruption point.
Sharp corners can be produced with G60 or G9.
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 343
Path Action
11.2 Continuous-path mode (G64, G641, G642, G643, G644, ADIS, ADISPOS)
Syntax
G64
G641 ADIS=…
G641 ADISPOS=…
G642 ADIS=…
G642 ADISPOS=…
G643 ADIS=…
G643 ADISPOS=…
G644
Meaning
Note
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 without exception.
Fundamentals
344 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Path Action
11.2 Continuous-path mode (G64, G641, G642, G643, G644, ADIS, ADISPOS)
Note
During continuous-path mode, a message from the part program can also be output as
executable block. To do this, the MSG command must be programmed with the second call
parameter and the parameter value "1":
MSG("Text",1)
If MSG is programmed without the second parameter, the message is output with the next
executable block.
Example
<
< ([DFWVWRS
ILQH
; =
The two outside corners on the groove are to be approached exactly. Otherwise machining
should be performed in continuous-path mode.
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 345
Path Action
11.2 Continuous-path mode (G64, G641, G642, G643, G644, ADIS, ADISPOS)
N70 X80
N80 Y70
N90 G641 ADIS=0.5 X100 Y40 ; Contour transitions are smoothed.
N100 X80 Y 10
N110 X10
N120 G40 G0 X-20 ; Deactivate path compensation.
N130 Z10 M30 ; Retract tool, end of program.
Note
An example of corner rounding with G643 can be found in:
References:
Programming Manual, Job Planning; Section "Special travel commands" > "Settable path
reference (SPATH, UPATH)"
Fundamentals
346 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Path Action
11.2 Continuous-path mode (G64, G641, G642, G643, G644, ADIS, ADISPOS)
& HOR
RQ F
Y
VW LW\
DQ
W
Note
The overload factor can be set in the MD32310. The extent of smoothing of the contour
transitions depends on the feedrate and the overload factor. With G641, you can specify the
desired rounding area explicitly.
Smoothing cannot and should not replace the functions for defined smoothing (RND, RNDM,
ASPLINE, BSPLINE, CSPLINE).
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 347
Path Action
11.2 Continuous-path mode (G64, G641, G642, G643, G644, ADIS, ADISPOS)
PD[PP 3URJUDPPHG
FRQWRXUHQG
$',6$',6326
PD[PP
Fundamentals
348 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Path Action
11.2 Continuous-path mode (G64, G641, G642, G643, G644, ADIS, ADISPOS)
Setting data
SD42465 $SC_SMOOTH_CONTUR_TOL
This setting data is used to define the maximum tolerance for the contour when rounding.
SD42466 $SC_SMOOTH_ORI_TOL
This setting data is used to define the maximum tolerance for the contour when rounding for
the tool orientation (angle deviation).
This data is only effective if an orientation transformation is active. Very different
specifications for the contour tolerance and the tolerance of the tool orientation can only
have effect with G643.
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 349
Path Action
11.2 Continuous-path mode (G64, G641, G642, G643, G644, ADIS, ADISPOS)
Value Meaning
0 Specifying the maximum axial deviation using MD33100 $MA_COMPRESS_POS_TOL
1 Specify the maximum rounding travel by programming ADIS=... or ADISPOS=...
2 Specify the maximum possible frequencies for each axis in the rounding area using
MD32440 $MA_LOOKAH_FREQUENCY. The rounding area is defined such that no
frequencies in excess of the specified maximum can occur while the rounding motion is in
progress.
3 When rounding with G644, neither the tolerance nor the rounding distance are monitored.
Each axis traverses around a corner with the maximum possible dynamic response.
With SOFT, both the maximum acceleration and the maximum jerk of each axis is
maintained.
With the BRISK command, the jerk is not limited; instead, each axis travels at the maximum
possible acceleration.
Reference:
/FB1/ Function Manual Basic Functions; Continuous Path Mode, Exact Stop and Look Ahead
(B1)
Fundamentals
350 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Path Action
11.2 Continuous-path mode (G64, G641, G642, G643, G644, ADIS, ADISPOS)
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 351
Path Action
11.2 Continuous-path mode (G64, G641, G642, G643, G644, ADIS, ADISPOS)
Fundamentals
352 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Path Action
11.2 Continuous-path mode (G64, G641, G642, G643, G644, ADIS, ADISPOS)
9HORFLW\SDWWHUQ
ZLWK**
Y
*ZLWK/RRN$KHDG
3URJUDPPHG
IHHG
HJ*ZLWKLQVXIILFLHQW
/RRN$KHDG
**
Note
Look Ahead across more than one block is an option.
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 353
Path Action
11.2 Continuous-path mode (G64, G641, G642, G643, G644, ADIS, ADISPOS)
Fundamentals
354 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Coordinate transformations (frames) 12
12.1 Frame system
The frame is a self-contained arithmetic rule that transforms one Cartesian coordinate
system into another Cartesian coordinate system.
= =
5RWDWLRQ <
DURXQGWKH=D[LV
<
=
<
;
HW
IIV
R
UR
;
=H
;
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 355
Coordinate transformations (frames)
12.1 Frame system
; ;
= =
0 : : 0
=HURRIIVHW =HURRIIVHW
<
=
= ;
<
... or generate a coordinate system that is related to the workpiece. The workpiece
coordinate system can be offset and/or rotated with programmable frames.
Fundamentals
356 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Coordinate transformations (frames)
12.2 Frame instructions
=
<
= <
;
;
Depending on the machine kinematics, the conventions for working plane and tool offsets
must be taken into account for the machining in inclined working planes
Function
For the possible frames the position of one of the target coordinate systems is defined:
● Basic frame (basic offset)
● Settable frames (G54...G599)
● Programmable frames
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 357
Coordinate transformations (frames)
12.2 Frame instructions
In addition to these frames, you can program replacing and additive statements or generate
frames as well as frame rotations for tool orientation. Certain set frames or superposed
movements and transformations can also be deselected.
Basic frame (basic offset)
The basic frame describes the coordinate transformation from the Basic Coordinate System
(BCS) to the Basic Zero System (BZS) and has the same effect as for settable frames.
Settable statements
Settable statements are the zero offsets, which can be called from any NC program with the
commands G54 to G599. The offset values are predefined by the user and stored in the zero
offset memory on the control. This is used to define the Workpiece Coordinate System
(WCS).
Programmable instructions
Programmable instructions (TRANS, ROT, etc.) 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).
Programming
TRANS X… Y… Z… or ATRANS X… Y… Z… or
G58 X… Y… Z… A… or G59 X… Y… Z… A… or
ROT X… Y… Z… or ROT RPL=… or AROTX… Y… Z… or AROT RPL=… or
ROTS X... Y... or AROTS X... Y... or CROTS X... Y... or
SCALE X… Y… Z… or ASCALE X… Y… Z… or
MIRROR X0 Y0 Z0 or AMIRROR X0 Y0 Z0 or
TOFRAME or TOFRAMEZ or TOFRAMEY or TOFRAMEX or
TOROTOF or TOROT or TOROTZ or TOROTY or TOROTX or
PAROT or PAROTOF or
CORROF(axis,string[axis,string]) or CORROF(axis,string) or
CORROF(axis) or CORROF()
CAUTION
The above frame instructions are programmed in separate NC blocks and executed in the
programmed order.
Fundamentals
358 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Coordinate transformations (frames)
12.2 Frame instructions
< <
; ;
75$16$75$16 527
$527
< <
;
;
6&$/($6&$/( 0,5525$0,5525
Note
This means that each of these instructions cancels all other previously programmed frame
instructions.
The last called settable zero offset G54 to G599 is used as the reference.
Additive instructions
ATRANS, AROT, ASCALE and AMIRROR are additive instructions. The currently set zero
point or the last workpiece zero to be programmed with frame instructions is used as the
reference. The above instructions are added to existing frames.
Note
Additive statements are frequently used in subroutines. The basic functions defined in the
main program are not lost after the end of the subroutine if the subroutine has been
programmed with the SAVE attribute.
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 359
Coordinate transformations (frames)
12.3 Programmable zero offset
$75$16
75$16
References:
/PGA/ Programming Manual, Job Planning; Section "Subroutines, Macros"
Function
TRANS/ATRANS can be used to program translations for all path and positioning axes in the
direction of the specified axis. This allows you to work with different zero points, for example
when performing recurring machining processes at different workpiece positions.
Fundamentals
360 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Coordinate transformations (frames)
12.3 Programmable zero offset
Milling:
=0
<0
<
75$16
;
*
;0
Turning:
0 :
75$16
*
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 361
Coordinate transformations (frames)
12.3 Programmable zero offset
Syntax
TRANS X… Y… Z… (substituting instruction programmed in a separate NC block)
ATRANS X… Y… Z… (additive instruction programmed in a separate NC block)
Meaning
TRANS Absolute zero offset, with reference to the currently valid workpiece zero set
with G54 to G599
ATRANS as TRANS, but with additive zero offset
X Y Z Offset value in the direction of the specified geometry axis
Example of milling
With this workpiece, the illustrated shapes recur several times in the same program.
The machining sequence for this shape is stored in a subroutine.
You use the translation to set only those workpiece zeroes and then call up the subroutine.
< <
0
< <
; ;
;
0
*
Fundamentals
362 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Coordinate transformations (frames)
12.3 Programmable zero offset
Example of turning
0 :
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 363
Coordinate transformations (frames)
12.3 Programmable zero offset
Note
The TRANS command cancels all frame components of the previously activated
programmable frame.
75$16
75$16
Note
You can use ATRANS to program a translation, which is to be added to existing frames.
Fundamentals
364 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Coordinate transformations (frames)
12.3 Programmable zero offset
$75$16
75$16
Note
Previously programmed frames are canceled. The settable zero offset remains programmed.
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 365
Coordinate transformations (frames)
12.3 Programmable zero offset
Function
G58 and G59 allow translation components of the programmable zero offset (frame) to be
replaced for specific axes. The translation function comprises:
● Absolute component (G58, coarse offset)
● Additive component (G59, fine offset)
Machine manufacturer
These functions can only be used when the fine offset is configured via machine data
MD24000 $MC_FRAME_ADD_COMPONENTS=1. If G58 or G59 is used without a
configured fine offset, alarm "18312 channel %1 block %2 frame: Fine offset not configured"
is output.
=
=0
<0
7UDQVODWLRQ
<
;
DEVR
OX
* WHWUDQVOD
*
75$ WLRQ
16
DGGLWLYHWUD
*
;0 $75$16
Syntax
G58 X… Y… Z… A… (substituting statement programmed in separate NC block)
G59 X… Y… Z… A… (substituting statement programmed in separate NC block)
Fundamentals
366 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Coordinate transformations (frames)
12.3 Programmable zero offset
Meaning
G58 Replaces the absolute translation component of the programmable zero offset for
the specified axis, but the programmed additive offset remains valid, (in relation
to the workpiece zero set with G54 to G599)
G59 Replaces the absolute translation component of the programmable zero offset for
the specified axis, but the programmed absolute offset remains valid
X Y Z Offset value in the direction of the specified geometry axis
Example
Description
The absolute translation component is modified by the following commands:
● TRANS
● G58
● CTRANS
● CFINE
● $P_PFRAME[X,TR]
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 367
Coordinate transformations (frames)
12.3 Programmable zero offset
Fundamentals
368 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Coordinate transformations (frames)
12.4 Programmable rotation (ROT, AROT, RPL)
Function
ROT/AROT can be used to rotate the workpiece coordinate system around each of the
geometry axes X, Y, Z or through an angle RPL in the selected working plane G17 to G19
(or around the perpendicular infeed axis). This allows inclined surfaces or several workpiece
sides to be machined in one setting.
Syntax
ROT X… Y… Z… Replacing statement for rotation in space
ROT RPL=… Replacing statement for rotation in the plane
AROTX… Y… Z… Additive statement for rotation in space
AROT RPL=… Additive statement for rotation in the plane
All statements must be programmed in a separate NC block.
Meaning
ROT, Absolute rotation in relation to the currently valid workpiece zero set with G54 to
G599
RPL, Rotation in the plane: Angle through which the coordinate system is rotated
(plane set with G17-G19). The sequence in which the rotation is to be performed
can be specified via the machine data. The default setting is the RPY notation (=
Roll, Pitch, Yaw) with Z, Y, X
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 369
Coordinate transformations (frames)
12.4 Programmable rotation (ROT, AROT, RPL)
AROT, Additive rotation in relation to the currently valid set or programmed zero point
X Y Z Rotation in space: Geometry axes around which the rotation is performed
<
r
r
5
;
With this workpiece, the shapes shown recur in a program. In addition to the zero offset,
rotations have to be performed, as the shapes are not arranged paraxially.
Fundamentals
370 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Coordinate transformations (frames)
12.4 Programmable rotation (ROT, AROT, RPL)
r
<
U
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 371
Coordinate transformations (frames)
12.4 Programmable rotation (ROT, AROT, RPL)
<
*
;
=
<
<
*
;
=
;
=
<
Program code Comment
N10 G17 G54 ; Working plane X/Y, workpiece zero
N20 L10 ; Subroutine call
N30 TRANS X100 Z-100 ; Absolute offset ;
Y Y
AROT Y90
X Z
X
Y
AROT Z90
Z Z
Fundamentals
372 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Coordinate transformations (frames)
12.4 Programmable rotation (ROT, AROT, RPL)
Note
See "Rotation in space" for more information.
527
< <
*
*
;
*
*
*
=
= ;
=
*
Plane change
WARNING
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.
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 373
Coordinate transformations (frames)
12.4 Programmable rotation (ROT, AROT, RPL)
Deactivate rotation
For all axes: ROT (without axis parameter)
CAUTION
In both cases, all frame components of the previously programmed frame are reset.
CAUTION
The ROT command cancels all frame components of the previously activated
programmable frame.
<
Note
A new rotation based on existing frames is programmed with AROT.
Fundamentals
374 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Coordinate transformations (frames)
12.4 Programmable rotation (ROT, AROT, RPL)
<
527
$5
27
Note
For both statements, please note the order and direction of rotation, in which the rotations
are performed (see next page)!
Direction of rotation
The following is defined as the positive direction of rotation: The view in the direction of the
positive coordinate axis and clockwise rotation.
<
;
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 375
Coordinate transformations (frames)
12.4 Programmable rotation (ROT, AROT, RPL)
Order of rotation
You can rotate up to three geometry axes simultaneously in one NC block.
The order of the RPY notation or Euler angle, through which the rotations are performed can
be defined in machine data.
MD 10600: FRAME_ANGLE_INPUT_MODE =
● RPY notation (RPY notation is the default setting)
● Euler angles
After that, the sequence Z, Y, X of the rotation is defined as follows:
Rotation around the 3rd geometry axis (Z)
Rotation around the 2nd geometry axis (Y)
Rotation around the 1st geometry axis (X)
Y
0
2
X
This order applies if the geometry axes are programmed in a single block. It also applies
irrespective of the input sequence. If only two axes are to be rotated, the parameter for the
3rd axis (value zero) can be omitted.
Fundamentals
376 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Coordinate transformations (frames)
12.4 Programmable rotation (ROT, AROT, RPL)
CAUTION
To ensure the angles written are read back unambiguously, it is necessary to observe the
defined value ranges.
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 377
Coordinate transformations (frames)
12.4 Programmable rotation (ROT, AROT, RPL)
Note
If you want to define the order of the rotations individually, program the desired rotation
successively for each axis with AROT.
References:
/FB1/Function Manual Basic Functions; Axes, Coordinate Systems, Frames (K2)
<
*
; <
=
*
Requirement:
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 "2D
Tool Compensation, CUT2D CUT2DF".
Fundamentals
378 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Coordinate transformations (frames)
12.5 Programmable frame rotations with solid angles (ROTS, AROTS, CROTS)
Function
You can specify orientations in space via frame rotations with solid angles ROTS, AROTS,
CROTS. The programming commands ROTS and AROTS have the same effect as ROT and
AROT.
Syntax
When programming the solid angles X and Y, the new X axis lies in the old ZX plane.
ROTS X... Y...
AROTS X... Y...
CROTS X... Y...
When programming the solid angles Z and X, the new Z axis lies in the old YZ plane.
ROTS Z... X...
AROTS Z... X...
CROTS Z... X...
When programming the solid angles Y and Z, the new Y axis lies in the old XY plane.
ROTS Y... Z...
AROTS Y... Z...
CROTS Y... Z...
Meaning
ROTS Frame rotations with solid angles for absolute orientation of a plane in space in
relation to the current valid frame with set workpiece zero for G54 to G599.
AROTS Frame rotations with solid angles for additive orientation of a plane in space in
relation to the current valid frame with set or programmed zero point.
CROTS Frame rotations with solid angles for orientation of a plane in space in relation 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)
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 379
Coordinate transformations (frames)
12.6 Programmable scale factor (SCALE, ASCALE)
Function
With SCALE/ASCALE, you can program scaling factors for all path axes, synchronized axes
and positioning axes in the direction of each specified axis. In this way, the size of a shape
can be changed. You can therefore, for example, take geometrically similar shapes or
different shrinkage allowances into account in the programming.
Deactivate scaling factor
For all axes: SCALE (without axis specification). All frame components of the previously
programmed frame are reset.
Syntax
SCALE X… Y… Z… (Programming of the replacing statement in a separate NC block)
ASCALE X… Y… Z… (Programming of the additive statement in a separate NC block)
Meaning
SCALE Scale up/down absolute in relation to the currently valid coordinate system set
with G54 to G599
ASCALE Scale up/down additive in relation to the currently valid set or programmed
coordinate system
X Y Z Scaling factor in the direction of the specified geometry axis
Milling example
The pocket occurs twice on this workpiece, but with different sizes and rotated in relation to
one another. The machining sequence is stored in the subroutine.
You set the required workpiece zeroes with the zero offset and rotation, scale down the
contour with scaling and then call the subroutine again.
Fundamentals
380 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Coordinate transformations (frames)
12.6 Programmable scale factor (SCALE, ASCALE)
<
r
;
NOTICE
The SCALE command cancels all frame components of the previously activated
programmable frame.
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 381
Coordinate transformations (frames)
12.6 Programmable scale factor (SCALE, ASCALE)
<
AROT
TRANS
Fundamentals
382 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Coordinate transformations (frames)
12.6 Programmable scale factor (SCALE, ASCALE)
Note
If you program an offset with ATRANS after SCALE, the offset values are also scaled.
CAUTION
Please take great care when using different scale factors! Example: Circular interpolations
can only be scaled using identical factors. You can, however, use different scale factors to
program distorted circles, for example.
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 383
Coordinate transformations (frames)
12.7 Programmable mirroring (MIRROR, AMIRROR)
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 subroutine,
are executed in the mirror image.
Syntax
MIRROR X0 Y0 Z0 (substituting instruction programmed in a separate NC block)
AMIRROR X0 Y0 Z0 (additive instruction programmed in a separate NC block)
Meaning
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.
Fundamentals
384 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Coordinate transformations (frames)
12.7 Programmable mirroring (MIRROR, AMIRROR)
< <
; ;
; ;
< <
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 385
Coordinate transformations (frames)
12.7 Programmable mirroring (MIRROR, AMIRROR)
6SLQGOH 6SLQGOH
; ;
= =
0 : : 0
Fundamentals
386 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Coordinate transformations (frames)
12.7 Programmable mirroring (MIRROR, AMIRROR)
0,5525;
<
;
0,5525<
The mirror image refers to the coordinate axes set with G54 to G57.
CAUTION
The MIRROR command cancels all previously set programmable frames.
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 387
Coordinate transformations (frames)
12.7 Programmable mirroring (MIRROR, AMIRROR)
75$16
$0,5525
Deactivate mirroring
For all axes: MIRROR (without axis parameter)
All frame components of the previously programmed frame are reset.
Note
The mirror command causes the control to automatically change the path compensation
commands (G41/G42 or G42/G41) according to the new machining direction.
Fundamentals
388 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Coordinate transformations (frames)
12.7 Programmable mirroring (MIRROR, AMIRROR)
<
* *
* * ;
0,5525;
Note
If you program an additive rotation with AROT after MIRROR, you may have to work with
reversed directions of rotation (positive/negative or negative/positive). Mirrors on the
geometry axes are converted automatically by the control into rotations and, where
appropriate, mirrors on the mirror axis specified in the machine data. This also applies to
settable zero offsets.
Machine manufacturer
● You can set the axis, around which mirroring is performed, via machine data MD.
MD 10610 = 0: Mirroring is performed in relation to the programmed axis (negation of
values).
MD 10610 = 1 or 2 or 3: Depending on the data setting, mirroring is performed in relation
to a specific reference axis (1=X axis; 2=Y axis; 3=Z axis) and rotations of two other
geometry axes.
● MD10612 MIRROR_TOGGLE = 0 can be used to define that the programmed values are
always evaluated. A value of 0, i.e., MIRROR X0, deactivates the mirroring of the axis,
and values not equal to 0 cause the axis to be mirrored if it is not already mirrored.
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 389
Coordinate transformations (frames)
12.8 Frame generation according to tool orientation (TOFRAME, TOROT, PAROT)
Function
TOFRAME generates a rectangular frame whose Z axis coincides with the current tool
orientation. You can use this function to retract the tool after a tool breakage in a 5-axis
program without collision, simply by retracting the Z axis. The resulting frame describing the
orientation is written in the system variable for the programmable frame $P_PFRAME.
Only the rotation component is overwritten with TOROT in the programmed frame. All other
components remain unchanged.
PAROT aligns the workpiece on the workpiece coordinate system (WCS).
Machine manufacturer
The position of the two axes X and Y can be defined in MD21110:
X_AXES_IN_OLD_X_Z_PLANE where X is rotated around Z into the existing X-Z plane.
7RROUHWUDFWLRQ
DORQJ=D[LV
=
%DVH
=
<
=
*HQHUDWHG
IUDPH
;
%DVH ;
;
0RGLILHGLQ0';
LVDJDLQ
ORFDWHGLQWKHSUHYLRXV;=SODQH
Fundamentals
390 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Coordinate transformations (frames)
12.8 Frame generation according to tool orientation (TOFRAME, TOROT, PAROT)
Syntax
Meaning
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 391
Coordinate transformations (frames)
12.8 Frame generation according to tool orientation (TOFRAME, TOROT, PAROT)
Example of TOFRAME
Fundamentals
392 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Coordinate transformations (frames)
12.8 Frame generation according to tool orientation (TOFRAME, TOROT, PAROT)
Note
After tool orientation has been programmed with TOFRAME, all the programmed geometry
axis movements refer to the frame generated by this programming.
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 393
Coordinate transformations (frames)
12.8 Frame generation according to tool orientation (TOFRAME, TOROT, PAROT)
Note
Separate system frame for TOFRAME or TOROT
The frames resulting from TOFRAME or TOROT can be written in a separate system frame
$P_TOOLFRAME.
This can be done by setting bit 3 in machine data MD 28082: MM_SYSTEM_FRAME_MASK.
The programmable frame remains unchanged. Differences occur when the programmable
frame is processed further elsewhere.
Note
NC command TOROT ensures consistent programming with active orientable tool carriers
for each kinematic type. Just as in the situation for rotatable toolholders, PAROT can be
used to activate a rotation of the work table. This defines a frame, which changes the
position of the workpiece coordinate system in such a way that no compensatory movement
is performed on the machine. Language command PAROT is not rejected if no orientable
toolholder is active.
References: For further explanations about machines with orientable toolholder, see:
/PGA/Programming Manual Advanced; "Tool Orientation"
/FB1/Function Manual Basic Functions; Tool Offset (W1),
"Orientable Toolholders"
Fundamentals
394 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Coordinate transformations (frames)
12.9 Deselect frame (G53, G153, SUPA, G500)
Function
When executing certain processes, such as approaching the tool change location or initial
setting, various frame components must be defined and suppressed at different times. Set
frames can either be deactivated modally or suppressed non-modally.
The programmable frames are cleared by specifying the TRANS, ROT, SCALE, MIRROR
component without an axis.
Deactivate coordinate transformation
A distinction must be made here between non-modal suppression and modal deactivation.
Syntax
G53
G153
SUPA
G500
Meaning
Non-modal suppression:
Modal deactivation:
G500 Deactivation of all settable frames if G500 does not contain a value
Deleting FRAMES:
TRANS, ROT, SCALE; Programming without specifying the axis → clearing the
MIRROR
programmable frames
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 395
Coordinate transformations (frames)
12.10 Deselect DRF (handwheel) offsets, overlaid motions (DRFOF, CORROF)
Function
For DRF handwheel offsets, all active axes of the channel can be deactivated with DRFOF. If,
for example, a certain axis with an overlaid movement or a position offset is to interpolate,
then either the DRF offsets or the position offset can be deselected for this axis with the
CORROF statement. The axis is not traversed.
Syntax
DRFOF
CORROF(axis,string[axis,string])
CORROF(axis,string)
CORROF(axis)
CORROF()
Meaning
Modal deactivation:
Fundamentals
396 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Coordinate transformations (frames)
12.10 Deselect DRF (handwheel) offsets, overlaid motions (DRFOF, CORROF)
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 397
Coordinate transformations (frames)
12.10 Deselect DRF (handwheel) offsets, overlaid motions (DRFOF, CORROF)
Description
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.
Setting bit 2 of MD 36750: AA_OFF_MODE to "1" when $AA_OFF is changed enables
interpolation of the position offset as an overlaid motion in JOG mode.
Note
CORROF is possible only from the parts program, not via synchronized actions.
Alarm 21660 is output if a synchronized action is active when the position offset is
deselected via parts program command CORROF(axis,"AA_OFF"). $AA_OFF is deselected
simultaneously and not set again. If the synchronized action becomes active later in the
block after CORROF, $AA_OFF remains set and a position offset is interpolated.
If a CORROF command has been programmed for an axis and this axis is active in a
different channel, then an axis replacement sends the axis to the other channel with machine
data 30552: AUTO_GET_TYPE = 0. This causes the DRF offset and any other position
offset to be deselected.
Fundamentals
398 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Auxiliary function outputs 13
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.
Auxiliary functions
The following auxiliary functions can be transferred to the PLC:
For each function group or single function, machine data is used to define whether the output
is triggered before, with or after the traversing motion.
The PLC can be programmed to acknowledge auxiliary function outputs in various ways.
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 399
Auxiliary function outputs
12.10 Deselect DRF (handwheel) offsets, overlaid motions (DRFOF, CORROF)
Properties
Important properties of the auxiliary function are shown in the following overview table:
Fundamentals
400 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Auxiliary function outputs
12.10 Deselect DRF (handwheel) offsets, overlaid motions (DRFOF, CORROF)
Further information
Number of function outputs per NC block
Up to 10 function outputs can be programmed in one NC block. Auxiliary functions can also
be output from the action component of synchronized actions.
References:
Function Manual, Synchronized Actions
Grouping
The functions described can be grouped together. Group assignment is predefined for some
M commands. The acknowledgment behavior can be defined by the grouping.
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). This helps avoid unnecessary hold points and interruptions
to traversing movements.
Note
The appropriate machine data must be set for the "High-speed function outputs" function
(→ machine manufacturer).
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 401
Auxiliary function outputs
12.10 Deselect DRF (handwheel) offsets, overlaid motions (DRFOF, CORROF)
CAUTION
Function outputs in continuous-path mode
Function outputs before the traversing movements interrupt the continuous-path mode
(G64/G641) and generate an exact stop for the previous block.
Function outputs after the traversing movements interrupt the continuous-path mode
(G64/G641) and generate an exact stop for the current block.
Important: A wait for an outstanding acknowledgment signal from the PLC can also
interrupt the continuous-path mode, e.g. for M command sequences in blocks with
extremely short path lengths.
Fundamentals
402 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Auxiliary function outputs
13.1 M functions
13.1 M functions
Function
The M functions initiate switching operations, such as "Coolant ON/OFF" and other functions
on the machine.
Syntax
M<value>
M[<address extension>] = <value>
Meaning
Predefined M functions
Certain important M functions for program execution are supplied as standard with the
control:
M function Meaning
M0* Programmed stop
M1* Optional stop
M2* End of main program with return to beginning of program
M30* End of program (as M2)
M17* End of subroutine
M3 Spindle clockwise
M4 Spindle counterclockwise
M5 Spindle stop
M6 Tool change (default setting)
M70 Spindle is switched to axis mode
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 403
Auxiliary function outputs
13.1 M functions
M function Meaning
M40 Automatic gear change
M41 Gear stage 1
M42 Gear stage 2
M43 Gear stage 3
M44 Gear stage 4
M45 Gear stage 5
NOTICE
Extended address notation cannot be used for the functions marked with *.
The commands M0, M1, M2, M17 and M30 are always issued after the traversing movement.
NOTICE
The functions assigned to the free M function numbers are machine-specific. A certain M
function can therefore have a different functionality on another machine.
Refer to the machine manufacturer's specifications for the M functions available on a
machine and their functions.
Fundamentals
404 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Auxiliary function outputs
13.1 M functions
Examples
Example 1: Maximum number of M functions in a block
M7 has been programmed as high-speed output so that the continuous-path mode (G64) is
not interrupted.
Note
Only use this function in special cases as, for example, the chronological alignment is
changed in combination with other function outputs.
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 405
Auxiliary function outputs
13.1 M functions
If an address extension has not been programmed, the function applies for the master
spindle.
Fundamentals
406 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Supplementary commands 14
14.1 Messages (MSG)
Function
Messages can be programmed to provide the user with information about the current
machining situation during program execution.
Syntax
MSG("<message text>")
MSG ()
Meaning
Examples
Example 1: Activating/deleting messages
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 407
Supplementary commands
14.2 Working area limitation
Function
G25/G26 limits the working area (working field, working space) in which the tool can traverse.
The areas outside the working area limitations defined with G25/G26 are inhibited for any
tool motion.
;
3URWHFWHG]RQH
:RUNLQJDUHD
=
0 :
Fundamentals
408 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Supplementary commands
14.2 Working area limitation
The coordinates for the individual axes apply in the basic coordinate system:
=
<
*
* =
<
*
<
;
*
*
=
*
< ;
%DVLF *
FRRUGLQDWH
FRQWURO ;
The working area limitation for all validated axes must be programmed with the WALIMON
command. The WALIMOF command deactivates the working area limitation. WALIMON is the
default setting. Therefore, it only has to be programmed if the working area limitation has
been disabled beforehand.
Programming
G25 X…Y…Z… Programming in a separate NC block
G26 X…Y…Z… Programming in a separate NC block
WALIMON
WALIMOF
Meaning
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 409
Supplementary commands
14.2 Working area limitation
In addition to programming values using G25/G26, values can also be entered using axis-
specific setting data:
SD43420 $SA_WORKAREA_LIMIT_PLUS (Working area limitation plus)
SD43430 $SA_WORKAREA_LIMIT_MINUS (Working area limitation minus)
Activating and de-activating the working area limitation, parameterized using SD43420 and
SD43430, are carried-out for a specific direction using the axis-specific setting data that
becomes immediately effective:
SD43400 $SA_WORKAREA_PLUS_ENABLE (Working area limitation active in the positive
direction)
SD43410 $SA_WORKAREA_MINUS_ENABLE (Working area limitation active in the
negative direction)
Using the direction-specific activation/de-activation, it is possible to limit the working range
for an axis in just one direction.
Note
The programmed working area limitation, programmed with G25/G26, has priority and
overwrites the values entered in SD43420 and SD43430.
Note
G25/G26 can also be used to program limits for spindle speeds at the address S. For further
information, please refer to "Feed control and spindle motion".
Fundamentals
410 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Supplementary commands
14.2 Working area limitation
Example of turning
Using the working area limitation G25/26, the working area of a lathe is limited so that the
surrounding devices and equipment - such as revolver, measuring station, etc. - are
protected against damage.
Default setting: WALIMON
3URWHFWHG]RQH
;%
;
:RUNLQJDUHD
0 : =%
;
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 411
Supplementary commands
14.2 Working area limitation
Description
Reference point at the tool
When tool length compensation is active, the tip of the tool is monitored as reference point,
otherwise it is the toolholder reference point.
Consideration of the tool radius must be activated separately. This is done using channel-
specific machine data:
MD21020 $MC_WORKAREA_WITH_TOOL_RADIUS
If the tool reference point lies outside the working area defined by the working area limitation
or if this area is left, the program sequence is stopped.
Note
If transformations are active, then tool data are taken into consideration (tool length and tool
radius) can deviate from the described behavior.
References:
/FB1/Function Manual, Basic Functions; Axis Monitoring, Protection Zones (A3),
Chapter: "Monitoring the working area limitation"
Note
The CALCPOSI subroutine is described in the Job Planning Programming Manual Using this
subroutine before any traversing motion is made, it can be checked as to whether the
predicted path is moved through taking into account the working area limits and/or the
protection zones.
Fundamentals
412 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Supplementary commands
14.2 Working area limitation
Function
In addition to the working area limitation with WALIMON (refer to "Working area limitation in
BCS") there is an additional working area limitation that is activated using the G commands
WALCS1 - WALCS10. Contrary to the working area limitation with WALIMON, the working area
here is not in the basic coordinate system, but is limited coordinate system-specific in the
workpiece coordinate system (WCS) or in the settable zero system (SZS).
Using the G commands WALCS1 - WALCS10, a data set (working area limitation group) is
selected under the up to ten channel-specific data sets for the coordinate system-specific
working area limitations. A data set contains the limit values for all axes in the channel. The
limitations are defined by channel-specific system variables.
Application
The working area limitation with WALCS1 - WALCS10 ("Working area limitation in the
WCS/SZS") is mainly used for working area limitations for conventional lathes. They allow
the programmer to use the defined "end stops" - when moving the axis "manually" to define
a working area limitation referred to the workpiece.
Syntax
The "working area limitation in the "WCS/SZS" is activated by selecting a working area
limitation group. G commands are used to make the selection:
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 413
Supplementary commands
14.2 Working area limitation
Meaning
The working area limitations of the individual axes are set and the reference frame (WCS or
SZS), in which the working area limits are to be effective, activated with WALCS1 - WALCS10,
by writing to channel-specific system variables:
Example
Three axes are defined in the channel: X, Y and Z
A working area limitation group No. 2 is to be defined and then activated in which the axes
are to be limited in the WCS acc. to the following specifications:
● X axis in the plus direction: 10 mm
● X axis in the minus direction: No limitation
● Y axis in the plus direction: 34 mm
● Y axis in the minus direction: -25 mm
● Z axis in the plus direction: No limitation
● Z axis in the minus direction: -600 mm
Fundamentals
414 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Supplementary commands
14.2 Working area limitation
Description
Effectivity
The working area limitation with WALCS1 - WALCS10 acts independently of the working area
limitation with WALIMON. If both functions are active, that limit becomes effective which the
axis motion first reaches.
Reference point at the tool
Taking into account the tool data (tool length and tool radius) and therefore the reference
point at the tool when monitoring the working area limitation corresponds to the behavior for
the working area limitation with WALIMON.
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 415
Supplementary commands
14.3 Reference point approach (G74)
Function
When the machine has been powered up (where incremental position measuring systems
are used), all of the axis slides must approach their reference mark. Only then can traversing
movements be programmed.
The reference point can be approached in the NC program with G74.
Syntax
G74 X1=0 Y1=0 Z1=0 A1=0 … Programmed in a separate NC block
Meaning
Note
A transformation must not be programmed for an axis which is to approach the reference
point with G74.
Example
When the measurement system is changed, the reference point is approached and the
workpiece zero point is initialized.
Fundamentals
416 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Supplementary commands
14.4 Approaching a fixed point (G75)
Function
You can approach fixed points (e.g. tool change points, loading points, pallet change points,
etc.) with G75.
The fixed points are positions in the machine coordinate system that are stored in the
machine data. A maximum of four fixed points can be defined for each axis.
The fixed points can be approached from every NC program irrespective of the current tool
or workpiece positions.
Syntax
G75 FP=<n> X1=0 Y1=0 Z1=0 U1=0 ...
Meaning
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 417
Supplementary commands
14.4 Approaching a fixed point (G75)
Supplementary conditions
● The following requirements must be satisfied to approach fixed points with G75:
– The axes to be traversed must be referenced.
– A kinematic transformation may not be active.
– The axis to be traversed may not be a following axis of an active coupling.
● Offset values active
Active offset values (DRF, external zero offset, synchronized action offset $AA_OFF,
online tool offset) are also traversed. The fixed point corresponds to the actual value in
the MCS.
Changes to the DRF external zero offset are not traversed while the G75 block is in the
preprocessing and main run. The user should prevent this with STOPRE before the G75
block.
● Frames active
All active frames are ignored. Traversing is performed in the machine coordinate system.
● Spindle functions in the G75 block
If the spindle is excluded from fixed-point approach, then additional spindle functions (e.g.
positioning with SPOS/SPOSA) can be programmed in the G75.
Example
References
Function Manual, Extended Functions; Section "Manual and handwheel travel (H1)"
Fundamentals
418 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Supplementary commands
14.5 Travel to fixed stop (FXS, FXST, FXSW)
Function
The "Travel to fixed stop" function can be used to establish defined forces for clamping
workpieces, such as those required for tailstocks, quills and grippers. The function can also
be used for the approach of mechanical reference points.
$FWXDOSRVLWLRQDIWHU
7UDYHOWRIL[HGVWRS
)L[HGVWRS
PRQLWRULQJZLQGRZ
3URJUDPPHG
HQGSRVLWLRQ 6WDUWSRVLWLRQ
Syntax
FXS[<axis>]=…
FXST[<axis>]=…
FXSW[<axis>]=…
FXS[<axis>]=… FXST[<axis>]=…
FXS[<axis>]=… FXST[<axis>]=… FXSW[<axis>]=…
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 419
Supplementary commands
14.5 Travel to fixed stop (FXS, FXST, FXSW)
Meaning
FXS Command for activation and deactivation of the "Travel to fixed stop"
function
FXS[<axis>]=1 Activate function
FXS=[<axis>]=0 Deactivate function
FXST Optional command for setting the clamping torque
Specified as % of the maximum drive torque
FXSW Optional command for setting the window width for the fixed stop
monitoring
Specified in mm, inches or degrees
<axis> Machine axis name
Machine axes (X1, Y1, Z1, etc.) are programmed
Note
The commands FXS, FXST and FXSW are modal.
The programming of FXST and FXSW is optional: If no parameter is specified, the last
programmed value or the value set in the relevant machine data applies.
Fundamentals
420 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Supplementary commands
14.5 Travel to fixed stop (FXS, FXST, FXSW)
Example:
CAUTION
It is not permissible to program a new position for an axis if the "Travel to fixed stop"
function has already been activated for an axis/spindle.
Spindles must be switched to position-controlled mode before the function is selected.
CAUTION
The traversing movement to the retraction position must move away from the fixed stop,
otherwise damage to the stop or to the machine may result.
The block change takes place when the retraction position has been reached. If no
retraction position is specified, the block change takes place immediately the torque limit
has been deactivated.
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 421
Supplementary commands
14.5 Travel to fixed stop (FXS, FXST, FXSW)
CAUTION
The window must be selected such that only a breakaway from the fixed stop causes the
fixed stop monitoring to respond.
Further information
Rise ramp
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).
Alarm suppression
The fixed stop alarm can be suppressed for applications by the part program by masking the
alarm in a machine data item and activating the new MD setting with NEW_CONF.
Activating
The commands for travel to fixed stop can be called from synchronized actions or 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.
Fundamentals
422 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Supplementary commands
14.5 Travel to fixed stop (FXS, FXST, FXSW)
Program code
N10 IDS=1 WHENEVER (($R1=1) AND ($AA_FXS[Y]==0)) DO $R1=0 FXS[Y]=1 FXST[Y]=10
The normal part program must ensure that $R1 is set at the desired point in time.
Deactivation from synchronized actions
Example:
If an anticipated event ($R3) has occurred and the status "Limit stop contacted" (system
variable $AA_FXS) is reached, then FXS must be deselected.
Program code
IDS=4 WHENEVER (($R3==1) AND ($AA_FXS[Y]==1)) DO FXS[Y]=0 FA[Y]=1000 POS[Y]=0
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 423
Supplementary commands
14.5 Travel to fixed stop (FXS, FXST, FXSW)
Supplementary conditions
● Measurement with deletion of distance-to-go
"Measure with deletion of distance-to-go" (MEAS command) and "Travel to fixed stop"
cannot be programmed at the same time in one 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
For "Travel to fixed stop" with positioning axes, the block change is performed
irrespective of the fixed stop movement.
● Link and container axes
Travel to fixed stop is also permitted for link and container axes.
The status of the assigned machine axis is maintained beyond the container rotation.
This also applies for modal torque limiting with FOCON.
References:
– Function Manual, Extended Functions; Several Control Panels on Multiple NCUs,
Distributed Systems (B3)
– Programming Manual, Job Planning; Subject: "Travel to fixed stop (FXS and
FOCON/FOCOF)"
● Travel to fixed stop is not possible:
– With gantry axes
– For concurrent positioning axes that are controlled exclusively from 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.
Fundamentals
424 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Supplementary commands
14.6 Acceleration behavior
Function
The following part program commands are available for programming the current
acceleration mode:
● BRISK, BRISKA
The single axes or the path axes traverse with maximum acceleration until the
programmed feedrate is reached (acceleration without jerk limitation).
● SOFT, SOFTA
The single axes or the path axes traverse with constant acceleration until the
programmed feedrate is reached (acceleration with jerk limitation).
● DRIVE, DRIVEA
The single axes or the path axes traverse with maximum acceleration up to a
programmed velocity limit (MD setting!). The acceleration rate is then reduced (MD
setting) until the programmed feedrate is reached.
6HWSRLQW
3DWKYHORFLW\
%5,6. 62)7
WLPH SURWHFWLQJWKH
RSWLPL]HG PHFKDQLFDO
V\VWHP
7LPH
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 425
Supplementary commands
14.6 Acceleration behavior
6HWSRLQW
/LPLWRI
FRQVWDQW
3DWKYHORFLW\
DFFHOHUDWLRQ
7LPH
Syntax
BRISK
BRISKA(<axis1>,<axis2>,…)
SOFT
SOFTA(<axis1>,<axis2>,…)
DRIVE
DRIVEA(<axis1>,<axis2>,…)
Meaning
Fundamentals
426 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Supplementary commands
14.6 Acceleration behavior
Examples
Example 1: SOFT and BRISKA
Program code
N10 G1 X… Y… F900 SOFT
N20 BRISKA(AX5,AX6)
...
Program code
N05 DRIVE
N10 G1 X… Y… F1000
N20 DRIVEA (AX4, AX6)
...
Supplementary conditions
● If the acceleration mode is changed in a part program during machining (BRISK ↔ SOFT),
then there is a block change with exact stop at the end of the block during the transition
even with continuous-path mode.
References
Function Manual, Basic Functions; Acceleration (B2)
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 427
Supplementary commands
14.6 Acceleration behavior
Function
The axis couplings described in the Programming Guide, Advanced: Tangential correction,
coupled-motion axes, master value coupling, and electronic gear have the property of
moving following axes/spindles as a function of one or more leading axes/spindles.
The commands for correction of limitation for the dynamic response of the following axis can
be issued from the part program or from synchronized actions. The commands for correction
of limitations of the following axis can already be given while axis coupling is active.
Syntax
VELOLIMA[AX4]=75 75% of the maximum axial velocity stored in the machine data
ACCLIMA[AX4]=50 50% of the maximum axial acceleration stored in the machine
data
JERKLIMA[AX4]=50 50% of the maximum jerk on path motion stored in the machine
data
Meaning
Note
JERLIMA[ax] is not available for all types of connection. Details about the function are
described in:
References:
/FB3/Function Manual Special Functions; Coupled Axes and ESR (M3)
/FB2/Function Manual Extended Functions; Synchronous Spindle (S3)
Fundamentals
428 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Supplementary commands
14.6 Acceleration behavior
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 429
Supplementary commands
14.6 Acceleration behavior
Function
Using the "Technology" G group, the appropriate dynamic response can be activated for five
varying technological machining steps.
Machine manufacturer
Dynamic values and G codes can be configured and are, therefore, dependent on machine
data settings.
References: /FB3/, B1, "Continuous-path mode"
Syntax
DYNNORM
DYNPOS
DYNROUGH
DYNSEMIFIN
DYNFINISH
Meaning
$MA...[n, Machine data with field element, which affects dynamic response
X]
[<n>, <X>] Field element with field device n and axis address X
n = 0 to 4 Range of values corresponds to Technology G group.
Fundamentals
430 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Supplementary commands
14.6 Acceleration behavior
Note
The dynamic values are already active in the block, in which the associated G code is
programmed. Machining is not stopped.
Example
Dynamic values by technology group G code
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 431
Supplementary commands
14.7 Traversing with feedforward control, FFWON, FFWOF
Function
The feedforward control reduces the velocity-dependent overtravel when contouring towards
zero. Traversing with feedforward control permits higher path accuracy and thus improved
machining results.
Syntax
FFWON
FFWOF
Meaning
Note
The type of feedforward control and which path axes are to be traversed with feedforward
control is specified via machine data.
Default: Velocity-dependent feedforward control
Option: Acceleration-dependent feedforward control
Example
Program code
N10 FFWON
N20 G1 X… Y… F900 SOFT
Fundamentals
432 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Supplementary commands
14.8 Contour accuracy, CPRECON, CPRECOF
Function
In machining operations without feedforward control (FFWON), errors may occur on curved
contours as a result of velocity-related differences between setpoint and actual positions.
The programmable contour accuracy function CPRECON makes it possible to store a
maximum permissible contour violation in the NC program which must never be overshot.
The magnitude of the contour violation is specified with setting data $SC_CONTPREC.
The Look Ahead function allows the entire path to be traversed with the programmed contour
accuracy.
Syntax
CPRECON
CPRECOF
Meaning
Note
A minimum velocity can be defined via the setting data item $SC_MINFEED, which is not
undershot, and the same value can also be written directly out from the part program via the
system variable $SC_CONTPREC.
On the basis of the value of the contour violation $SC_CONTPREC and the servo gain factor
(velocity/following error ratio) of the geometry axes concerned, the control calculates the
maximum path velocity at which the contour violation produced by the overtravel does not
exceed the minimum value stored in the setting data.
Example
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 433
Supplementary commands
14.9 Dwell time, delay (G4, WRTPR)
Function
With G4, you can interrupt the workpiece machining between two NC blocks for the
programmed time. For example, for relief cutting.
The WRTPR command does not generate an executable block in continuous-path mode and
therefore delays the machining job without interrupting continuous-path mode.
Syntax
G4 F…
G4 S…
Write string-type statement with next block in main run:
WRTPR(string, parameter) if parameter = 0 or not specified.
Programming in a separate NC block.
Fundamentals
434 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Supplementary commands
14.9 Dwell time, delay (G4, WRTPR)
Meaning
Note
Only in the block with G4 are the words with F... and S... used for time specifications.
Any previously programmed feedrate F and spindle speed S remain valid.
Example
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 435
Supplementary commands
14.10 Internal preprocessing stop
Function
The control generates an internal preprocessing 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 have already been preprocessed
and stored, have been executed. The previous block is stopped in exact stop (as G9).
Programming
Machine status data ($A...) is generated internally by the control.
Parameters
Status data of the machine ($A...).
Example
Machining is to be stopped in the N50 block.
Fundamentals
436 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Other information 15
15.1 Axes
A distinction is made between the following types of axes when programming:
● Machine axes
● Channel axes
● Geometry axes
● Special axes
● Path axes
● Synchronized axes
● Positioning axes
● Command axes (motion-synchronous actions)
● PLC axes
● Link axes
● Lead link axes
*HRPHWU\D[HV 3RVLWLRQLQJD[HV
0DFKLQHD[HV
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 437
Other information
15.1 Axes
*HRPHWU\D[HV 6SHFLDOD[HV
&KDQQHOD[HV
6\QFKU
D[HV
.LQHPDWLFWUDQVIRUPDWLRQ
0DFKLQHD[HV
Fundamentals
438 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Other information
15.1 Axes
Axis identifier
For turning machines:
Geometry axes X and Z are used, and sometimes Y.
5HYROYHUVZLYHO
D[LV
7RROV
6SHFLDOVSLQGOH
;
=
6SHFLDOD[LV
7DLO
*HRPHWU\ VWRFN
0DLQVSLQGOH D[HV
PDVWHUVSLQGOH
&D[LV
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 439
Other information
15.1 Axes
Axis identifier
In a turning machine with revolver magazine, for example,
Turret position U, tailstock V
Application examples
Typical special axes are tool revolver axes, swivel table axes, swivel head axes, and loader
axes.
Spindle identifier
Identifiers: S or S0
Fundamentals
440 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Other information
15.1 Axes
Axis identifier
The axis identifiers can be set in the machine data.
Standard identifiers:
X1, Y1, Z1, A1, B1, C1, U1, V1
There are also standard axis identifiers that can always be used:
AX1, AX2, ..., AXn
Axis identifier
Identifiers: X, Y, Z, A, B, C, U, V
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 441
Other information
15.1 Axes
Programming
A distinction is made between positioning axes with synchronization at the block end or over
several blocks.
Parameters
POS axes:
Block change occurs at the end of the block when all the path and positioning axes
programmed in this block have reached their programmed end point.
POSA axes:
The movement of these positioning axes can extend over several blocks.
POSP axes:
The movement of these positioning axes for approaching the end position takes place in
sections.
Note
Positioning axes become synchronized axes if they are traversed without the special
POS/POSA identifier.
Continuous-path mode (G64) for path axes is only possible if the positioning axes (POS)
reach their final position before the path axes.
Path axes that are programmed with POS/POSA are removed from the path axis grouping
for the duration of this block.
You will find further information on POS, POSA, and POSP in the section on "Traversing
positioning axes, POS, POSA, POSP".
Fundamentals
442 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Other information
15.1 Axes
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 443
Other information
15.1 Axes
&KDQQHO &KDQQHO
$ %
&KDQQHO
$ %
$
/LQNPRGXOH /LQNPRGXOH
/LQNFRPPXQLFDWLRQ
The axis container concept is used for the dynamic modification of the assignment to an
NCU. Axis substitution with GET and RELEASE from the parts program is not available for
link axes.
Prerequisite
The participating NCUs, NCU1 and NCU2, must be connected by means of high-speed
communication via the link module.
References:
/PHD/Configuring Manual NCU; NCU 571-573.2 Link Module
The axis must be configured appropriately by machine data.
The link axis option must be installed.
Fundamentals
444 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Other information
15.1 Axes
Description
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.
For further information about link axes, please refer to
References: /FB2/Function Manual Extended Functions; Multiple Operator Panels and NCUs
(B3)
Axis container
An axis container is a circular buffer data structure, in which local axes and/or link axes are
assigned to channels. The entries in the circular buffer can be shifted cyclically.
In addition to the direct reference to local axes or link axes, the link axis configuration in the
logical machine axis image also allows references to axis containers. This type of reference
consists of:
● a container number and
● a slot (circular buffer location within the container)
The entry in a circular buffer location contains:
● a local axis or
● a link axis
Axis container entries contain local machine axes or link axes from the perspective of an
individual NCU. The entries in the logical machine axis image
MN_AXCONF_LOGIC_MACHAX_TAB of an individual NCU are fixed.
The axis container function is described in
References: /FB2/Function Manual Extended Functions; Multiple Operator Panels and NCUs
(B3)
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 445
Other information
15.1 Axes
$FWXDOYDOXHV
6HUYR 6HUYR
IURP$
'
'
1&8OLQNPRGXOH %
$
%
An axial position controller alarm is sent to all other NCUs, which are connected to the
affected axis via a leading link axis.
NCUs that are dependent on the leading link axis can utilize the following coupling
relationships with it:
● Master value (setpoint, actual master value, simulated master value)
● Coupled motion
● Tangential correction
● Electronic gear (ELG)
● Synchronous spindle
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.
Fundamentals
446 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Other information
15.1 Axes
Prerequisites
● 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; NCU 571-573.2 Link Module
● The axis must be configured appropriately by machine data.
● The link axis option must be installed.
● The same interpolation cycle must be configured for all NCUs connected to the leading
link axis.
Restrictions
● A master axis, which is leading link axis cannot be a link axis, i.e., it cannot be operated
by NCUs other than its 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.
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: /FB2/Function Manual Extended Functions; Multiple Operator Panels and NCUs
(B3)
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 447
Other information
15.2 Coordinate systems and workpiece machining
Relationship between the travel commands from workpiece coordinates and the resulting machine
movements
Axis movement programmed in the workpiece coordinate system
$[LVPRYHPHQWSURJUDPPHGLQWKHZRUNSLHFHFRRUGLQDWHV\VWHP
'HVFULSWLRQRIWKHZRUNSLHFH
JHRPHWU\YLDJHRPHWU\D[HV
HJ;<=
)UDPHFDOFXODWLRQ
5HPDLQLQJWUDYHUVLQJ
2IIVHW75$16 'HVFULSWLRQRIWRRO
5RWDWLRQ527 LQVWUXFWLRQV
RULHQWDWLRQE\PHDQVRI
6FDOLQJ6&$/( RULHQWDWLRQYHFWRU(XOHUDQJOH YLDVRFDOOHGVSHFLDOD[HV
HJ&89
&RQWRXULQ&DUWHVLDQ
FRRUGLQDWHV\VWHP
RIWKHFKDQQHO%&6 )UDPHFDOFXODWLRQ
7RROUDGLXVFRPSHQVDWLRQ 2IIVHW
0RYHPHQWRIWRRO]HUR 6FDOLQJ
LQ%&6
5RWDU\D[HVIRU
7RROOHQJWKFRPSHQVDWLRQ D[LVWUDQVIRUPDWLRQ
.LQHPDWLFWUDQVIRUPDWLRQLIDFWLYH
0RYHPHQWRIPDFKLQHD[HVRIFKDQQHODEF
Path calculation
The path calculation determines the distance to be traversed in a block, taking into account
all offsets and compensations.
In general:
Distance = setpoint - actual value + zero offset (ZO) + tool offset (TO)
Fundamentals
448 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Other information
15.2 Coordinate systems and workpiece machining
;
7
YDOXH :.
$EVROXWH
SRVLWLRQ
SRLQW
6HW
=
0 :
6HW
SRLQW
=2 YDOXH :.
$EVROXWHSRVLWLRQ
If a new zero offset and a new tool offset are programmed in a new program block, the
following applies:
● With absolute dimensioning:
Distance = (absolute dimension P2 - absolute dimension P1) + (ZO P2 - ZO P1) + (TO P2
- TO P1).
● With incremental dimensioning:
Distance = incremental dimension + (ZO P2 - ZO P1) + (TO P2 - TO P1).
$FWXDOYDOXH
$FWXDOYDOXH
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 449
Other information
15.3 Addresses
15.3 Addresses
Fundamentals
450 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Other information
15.3 Addresses
Note
Settable addresses
Settable addresses must be unique within the control, i.e. the same address name may not
be used for different address types.
A distinction is made between the following address types:
• Axis values and end points
• Interpolation parameters
• Feedrates
• Corner rounding criteria
• Measurement
• Axis, spindle behavior
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 451
Other information
15.3 Addresses
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:
Fundamentals
452 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Other information
15.3 Addresses
Address Meaning
X, Y, Z, … Axis addresses
I, J, K Interpolation parameters
S Spindle speed
SPOS, SPOSA Spindle position
M Special functions
H Auxiliary functions
T Tool number
F Feedrate
Examples:
The numeric extension can be replaced by a variable for addresses M, H, S and for SPOS
and SPOSA. The variable identifier is enclosed in square brackets.
Examples:
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 453
Other information
15.4 Identifiers
15.4 Identifiers
The commands according to DIN 66025 are supplemented with so-called identifiers by the
NC high-level language.
Identifiers can stand for:
● System variables
● User-defined variables
● Subroutines
● Keywords
● Jump markers
● Macros
Note
Identifiers must be unique. It is not permissible to use the same identifier for different
objects.
Note
Reserved keywords must not be used as identifiers.
Fundamentals
454 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Other information
15.4 Identifiers
Tip
Users should select identifiers, which either begin with "U" (User) or contain underscores,
as these identifiers are not used by the system, compile cycles or SIEMENS cycles.
Variable identifiers
In variables used by the system, the first letter is replaced by the "$" character.
Examples:
Note
The "$" character may not be used for user-defined variables.
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 455
Other information
15.5 Constants
15.5 Constants
Integer constants
An integer constant is an integer value with or without sign, e.g. a value assignment to an
address.
Examples:
Note
If, in an address, which permits decimal point input, more decimal places are specified than
actually provided for the address, then they are rounded to fit the number of places provided.
Hexadecimal constants
Constants can also be interpreted in hexadecimal format. The letters "A" to "F" stand for the
digits 10 to 15.
Hexadecimal constants are enclosed in single quotation marks and start with the letter "H",
followed by the value in hexadecimal notation. Separators are allowed between the letters
and digits.
Example:
Note
The maximum number of characters is limited by the value range of the integer data type.
Fundamentals
456 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Other information
15.5 Constants
Binary constants
Constants can also be interpreted in binary format. In this case, only the digits "0" and "1"
are used.
Binary constants are enclosed in single quotation marks and start with the letter "B", followed
by the binary value. Separators are allowed between the digits.
Example:
Note
The maximum number of characters is limited by the value range of the integer data type.
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 457
Other information
15.5 Constants
Fundamentals
458 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Tables 16
16.1 Statements
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 in section "List of G functions / preparatory functions".
3 Absolute end points: modal (m);
incremental end points: non-modal (n);
otherwise: modal/non-modal depending on syntax of G function
4 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 lead).
5 The OEM can add two extra interpolation types. The names can be changed by the OEM.
6 Extended address notation cannot be used for these functions.
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 459
Tables
16.1 Statements
Fundamentals
460 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Tables
16.1 Statements
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 461
Tables
16.1 Statements
Fundamentals
462 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Tables
16.1 Statements
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 463
Tables
16.1 Statements
Fundamentals
464 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Tables
16.1 Statements
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 465
Tables
16.1 Statements
Fundamentals
466 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Tables
16.1 Statements
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 467
Tables
16.1 Statements
Fundamentals
468 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Tables
16.1 Statements
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 469
Tables
16.1 Statements
DELETE Delete the specified file. The file name can Can delete all
be specified with path and file identifier files
DELT Delete tool Duplo number
can be omitted
Fundamentals
470 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Tables
16.1 Statements
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 471
Tables
16.1 Statements
Fundamentals
472 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Tables
16.1 Statements
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 473
Tables
16.1 Statements
Fundamentals
474 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Tables
16.1 Statements
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 475
Tables
16.1 Statements
Fundamentals
476 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Tables
16.1 Statements
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 477
Tables
16.1 Statements
Fundamentals
478 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Tables
16.1 Statements
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 479
Tables
16.1 Statements
Fundamentals
480 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Tables
16.1 Statements
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 481
Tables
16.1 Statements
Fundamentals
482 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Tables
16.1 Statements
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 483
Tables
16.1 Statements
Fundamentals
484 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Tables
16.1 Statements
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 485
Tables
16.1 Statements
Fundamentals
486 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Tables
16.1 Statements
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 487
Tables
16.1 Statements
Fundamentals
488 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Tables
16.1 Statements
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 489
Tables
16.1 Statements
Fundamentals
490 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Tables
16.1 Statements
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 491
Tables
16.1 Statements
Fundamentals
492 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Tables
16.1 Statements
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 493
Tables
16.1 Statements
Fundamentals
494 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Tables
16.1 Statements
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 495
Tables
16.1 Statements
Fundamentals
496 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Tables
16.1 Statements
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 497
Tables
16.1 Statements
Fundamentals
498 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Tables
16.1 Statements
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 499
Tables
16.1 Statements
Fundamentals
500 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Tables
16.1 Statements
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 501
Tables
16.1 Statements
Fundamentals
502 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Tables
16.1 Statements
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 503
Tables
16.1 Statements
Fundamentals
504 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Tables
16.1 Statements
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 505
Tables
16.1 Statements
Fundamentals
506 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Tables
16.1 Statements
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 507
Tables
16.1 Statements
Fundamentals
508 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Tables
16.1 Statements
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 in section "List of G functions/preparatory functions".
3 Absolute end points: modal (m)
Incremental end points: non-modal (n)
Otherwise: modal/non-modal depending on syntax of G function
4 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 lead).
5 The OEM can add two extra interpolation types. The names can be changed by the OEM.
6 Extended address notation cannot be used for these functions.
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 509
Tables
16.2 Addresses
16.2 Addresses
List of addresses
The list of addresses consists of
● Address letters
● Fixed addresses
● Fixed addresses with axis expansion
● Settable addresses
Address letters
Available address letters
Fundamentals
510 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Tables
16.2 Addresses
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 Subroutine no. n Integer without
sign
P Number of n Integer without
subroutine sign
passes
N Block number n Integer without
sign
G G function See Integer without
list of sign
G
functio
ns
F Feed, dwell m, n x x Real without
time sign
OVR Override m Real without
sign
S Spindle, dwell m, n x Real without
time sign
SPOS Spindle m x x x Real
position
SPOSA Spindle m x x x Real
position
beyond block
limits
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 511
Tables
16.2 Addresses
Axis 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
AX: Axis Variable axis *) x x x x x x Real
identifier
IP: Variable n x x x x x Real
Interpolatio interpolation
n parameter parameter
POS: Positioning m x x x x x x x Real
Positioning axis
axis
POSA: Positioning m x x x x x x x Real
Positioning axis across
axis above block
end of block boundaries
POSP: Positioning m x x x x x x Real: End
Positioning axis in parts position / Real:
axis in parts (oscillation) Partial length
Integer: Option
PO: Polynomial n x x Real without
Polynomial coefficient sign
1 - 8 times
FA: Feed Axial feedrate m x x Real without
axial sign
FL: Feed Axial feed m x Real without
limit limit sign
Fundamentals
512 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Tables
16.2 Addresses
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 513
Tables
16.2 Addresses
Fundamentals
514 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Tables
16.2 Addresses
Settable addresses
Axis identifier Address Modal/ G70/ G700/ G90/ IC AC DC, CIC, Qu Max. Data type
type non- G71 G710 G91 ACN, CAC, numb
modal ACP CDC, er
CACN,
CACP
Axis values and end points
X, Y, Z, A, B, Axis *) x x x x x x 8 Real
C
AP: Angle Polar angle m/n* x x x 1 Real
polar
RP: Polar Polar radius m/n* x x x x x 1 Real without
radius sign
Tool orientation
A2, B2, C2 1) Euler angle n 3 Real
or RPY
angle
A3, B3, C3 Direction n 3 Real
vector
component
A4, B4, C4 for Normal n 3 Real
start of block vector
component
A5, B5, C5 for Normal n 3 Real
end of block vector
component
A6, B6, C6 Direction n 3 Real
standardized vector
vector component
A7, B7, C7 Intermediat n 3 Real
standardized e
vector orientation
component
LEAD: Lead angle m 1 Real
Lead angle
THETA: Third Angle of n x x x 1 Real
degree of rotation,
freedom tool rotation
orientation around the
tool
direction
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 515
Tables
16.2 Addresses
Fundamentals
516 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Tables
16.2 Addresses
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 517
Tables
16.2 Addresses
Fundamentals
518 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Tables
16.2 Addresses
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 519
Tables
16.3 G functions / preparatory functions
Fundamentals
520 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Tables
16.3 G functions / preparatory functions
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 521
Tables
16.3 G functions / preparatory functions
G110 12. Pole programming relative to the last programmed setpoint position X n
G111 13. Polar programming relative to origin of current workpiece coordinate X n
system
G112 14. Pole programming relative to the last valid pole X n
G58 15. Programmable offset, absolute axial substitution X n
G59 16. Programmable offset, additive axial substitution X n
ROTS 17. Rotation with solid angles X n
AROTS 18. Additive rotation with solid angles X n
Group 4: FIFO
Name No. Meaning X m/n SAG MM
STARTFIFO 1. Start FIFO m Def.
Execute and simultaneously fill preprocessing memory
STOPFIFO 2. STOP FIFO, m
Stop machining; fill preprocessing memory until STARTFIFO is detected,
FIFO full or end of program
FIFOCTRL 3. FIFO CTRL, m
Preprocessing memory control
Fundamentals
522 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Tables
16.3 G functions / preparatory functions
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 523
Tables
16.3 G functions / preparatory functions
Fundamentals
524 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Tables
16.3 G functions / preparatory functions
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 525
Tables
16.3 G functions / preparatory functions
Fundamentals
526 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Tables
16.3 G functions / preparatory functions
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 527
Tables
16.3 G functions / preparatory functions
Fundamentals
528 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Tables
16.3 G functions / preparatory functions
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 529
Tables
16.3 G functions / preparatory functions
Fundamentals
530 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Tables
16.3 G functions / preparatory functions
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 531
Tables
16.3 G functions / preparatory functions
Fundamentals
532 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Tables
16.3 G functions / preparatory functions
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 533
Tables
16.3 G functions / preparatory functions
Fundamentals
534 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Tables
16.3 G functions / preparatory functions
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 535
Tables
16.3 G functions / preparatory functions
Fundamentals
536 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Tables
16.4 Predefined subroutine calls
1. Coordinate system
Keyword / 1st parameter 2nd parameter 3rd-15th 4th-16th Explanation
subroutine parameter parameter
identifier
PRESETON AXIS*: REAL: 3rd-15th 4th-16th Sets the actual value for programmed
Axis identifier Preset offset parameter as parameter as axes.
Machine axis G700/G7100 1 ... 2 ... One axis identifier is programmed at a
context time, with its respective value in the
next parameter.
PRESETON can be used to program
preset offsets for up to 8 axes.
DRFOF Deletes the DRF offset for all axes
assigned to the channel.
*) As a general rule, geometry or special axis identifiers can also be used instead of the
machine axis identifier, as long as the reference is unambiguous.
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 537
Tables
16.4 Predefined subroutine calls
2. Axis groupings
Keyword / 1st-8th Explanation
subroutine parameter
identifier
FGROUP Channel axis Variable F value reference: defines the axes to which the path feed refers.
identifiers Maximum axis number: 8
The default setting for the F value reference is activated with FGROUP ( ) without
parameters.
1st-8th 2nd-9th Explanation
parameter parameter
SPLINEPATH INT: Spline AXIS: Definition of the spline group
group (must be Geometry or Maximum number of axes: 8
1) special axis
identifier
BRISKA AXIS Switch on brisk axis acceleration for the programmed axes
SOFTA AXIS Switch on jerk limited axis acceleration for programmed axes
JERKA AXIS The acceleration behavior set in machine data
$MA_AX_JERK_ENABLE is active for the programmed axes.
3. Coupled motion
Keyword / 1st parameter 2nd 3rd 4th 5th 6th Explanation
subroutine param. param. param. param. param.
identifier
TANG AXIS: Axis AXIS: AXIS: REAL: CHAR: CHAR Preparatory statement for the
name Leading Leading Coupling Option: Optimizat definition of a tangential
following axis axis 1 axis 2 factor "B": ion: follow-up: The tangent for the
follow-up "S" follow-up is determined by
in basic default"P the two master axes
coordinat " specified. The coupling factor
e system autom. specifies the relationship
"W": with between a change in the
follow-up rounding angle of tangent and the
in work- travel, following axis. It is usually 1.
piece angle Optimization: See PGA
coord. tolerance
system
Fundamentals
538 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Tables
16.4 Predefined subroutine calls
6. Revolutional feedrate
Keyword / 1st parameter 2nd parameter Explanation
subroutine
identifier
FPRAON AXIS: Axis, for which AXIS: Axis/spindle, from Feedrate per revolution axial ON: Axial
revolutional feedrate is which revolutional feedrate revolutional feedrate ON.
activated is derived.
If no axis has been
programmed, the
revolutional feedrate is
derived from the master
spindle.
FPRAOF AXIS: Axis for which Feedrate per revolution axial OFF: Axial
revolutional feedrate is revolutional feedrate OFF.
deactivated The revolutional feedrate can be deactivated for
several axes at once. You can program as
many axes as are permitted in a block.
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 539
Tables
16.4 Predefined subroutine calls
7. Transformations
Keyword / 1st parameter 2nd parameter Explanation
subroutine
identifier
TRACYL REAL: Working INT: Number Cylinder: Peripheral surface transformation
diameter of the Several transformations can be set per channel. The transformation
transformation number specifies which transformation is to be activated. If the
second parameter is omitted, the transformation group defined in
the MD is activated.
TRANSMIT INT: Number of Transmit: Polar transformation
the Several transformations can be set per channel. The transformation
transformation number specifies which transformation is to be activated. If the
parameter is omitted, the transformation group defined in the MD is
activated.
TRAANG REAL: Angle INT: Number Transformation inclined axis:
of the Several transformations can be set per channel. The transformation
transformation number specifies which transformation is to be activated. If the
second parameter is omitted, the transformation group defined in
the MD is activated.
If no angle programmed:
TRAANG ( ,2) or TRAANG, the last angle applies modally.
TRAORI INT: Number of Transformation oriented: 4, 5-axis transformation
the Several transformations can be set per channel. The transformation
transformation number specifies which transformation is to be activated.
TRACON INT: Number of REAL: Further Transformation concentrated: Cascaded transformation; the
the parameters, meaning of the parameters depends on the type of cascading.
transformation MD-dependent
TRAFOOF Deactivate transformation
Fundamentals
540 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Tables
16.4 Predefined subroutine calls
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. Spindles
Keyword / 1st parameter 2nd parameter Explanation
subroutine and others
identifier
SPCON INT: Spindle INT: Spindle Spindle position control ON: Switch to position-controlled spindle
number number operation.
SPCOF INT: Spindle INT: Spindle Spindle position control OFF: Switch to speed-controlled spindle
number number operation.
SETMS INT: Spindle Set master spindle: Declaration of spindle as master spindle for
number current channel.
With SETMS( ), the machine-data default applies automatically
without any need for parameterization.
9. Grinding
Keyword / 1st parameter Explanation
subroutine
identifier
GWPSON INT: Spindle Grinding wheel peripheral speed ON: Constant grinding wheel peripheral speed ON.
number If the spindle number is not programmed, then grinding wheel peripheral speed is
selected for the spindle of the active tool.
GWPSOF INT: Spindle Grinding wheel peripheral speed OFF. Constant grinding wheel peripheral speed
number OFF.
If the spindle number is not programmed, grinding wheel peripheral speed is
deselected for the spindle of the active tool.
TMON INT: Spindle Tool monitoring ON:
number If no T number is programmed, monitoring is activated for the active tool.
TMOF INT: T number Tool monitoring OFF:
If no T number is programmed, monitoring is deactivated for the active tool.
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 541
Tables
16.4 Predefined subroutine calls
Fundamentals
542 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Tables
16.4 Predefined subroutine calls
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 543
Tables
16.4 Predefined subroutine calls
CPROT INT: Number of INT: Option REAL: Offset of REAL: Offset of REAL: Offset of Channel-
the protection 0: Protection protection zone protection zone protection zone specific
zone zone OFF in 1st geometry in 2nd geometry in 3rd geometry protection
axis axis axis zone
1: Preactivate
ON/OFF
protection zone
2: Protection
zone ON
3: Preactivate
protection zone
with conditional
stop, only with
protection zones
active
NPROT INT: Number of INT: Option REAL: Offset of REAL: Offset of REAL: Offset of Machine-
the protection 0: Protection protection zone protection zone protection zone specific
zone zone OFF in 1st geometry in 2nd geometry in 3rd geometry protection
axis axis axis zone
1: Preactivate
ON/OFF
protection zone
2: Protection
zone ON
3: Preactivate
protection zone
with conditional
stop, only with
protection zones
active
EXECUTE VAR INT: Error EXECUTE: Activate program execution. This switches back to normal program
status execution from reference point editing mode or after setting up a protection zone.
Fundamentals
544 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Tables
16.4 Predefined subroutine calls
14. Interrupts
Keyword / 1st parameter Explanation
subroutine
identifier
ENABLE INT: Number of Activate interrupt: Activates the interrupt routine assigned to the hardware input with
the interrupt the specified number. An interrupt is enabled after the SETINT statement.
input
DISABLE INT: Number of Deactivate interrupt: Deactivates the interrupt routine assigned to the hardware input
the interrupt with the specified number. Fast retraction is not executed. The assignment between
input the hardware input and the interrupt routine made with SETINT remains valid and can
be reactivated with ENABLE.
CLRINT INT: Number of Select interrupt: Cancel the assignment of interrupt routines and attributes to an
the interrupt interrupt input. The interrupt routine is deactivated and no reaction occurs when the
input interrupt is generated.
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 545
Tables
16.4 Predefined subroutine calls
17. Communication
Keyword / 1st 2nd parameter Explanation
subroutine parameter
identifier
MMC STRING: CHAR: MMC command: Command ON
Command Acknowledgement mode** MMC command interpreter for the configuration of
"N": Without acknowledgment windows via NC program
"S": Synchronous acknowledgment see /IAM/ Commissioning CNC;
"A": Asynchronous acknowledgment Expanding base software and HMI
Embedded/Advanced in BE1 user interface
** Acknowledgement mode:
Commands are acknowledged on request from the executing component (channel, NC,
etc.).
Without acknowledgement: Program execution is continued when the command has been
transmitted. The sender is not informed if the command cannot be executed successfully.
Fundamentals
546 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Tables
16.4 Predefined subroutine calls
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 547
Tables
16.4 Predefined subroutine calls
PUTFTOC # REAL: INT: INT: INT: Spindle Put fine tool correction: Fine
Offset value Parameter Channel number tool compensation
number number or
STRING:
Channel
name
$MC_CHAN
_NAME
PUTFTOCF INT: VAR REAL: INT: INT: INT: Put fine tool correction function
# No. of Reference Parameter Channel Spindl dependent:
function value *) number numbers e Change online tool
The number 1 - 10 numbe compensation according to a
used here or STRING: r function defined with FCTDEF
must be Channel (max. 3rd degree polynomial).
specified in name
FCTDEF. $MC_CHAN
_NAME
The SPI function can also be used to program a spindle instead of an axis: GET(SPI(1))
#) The keyword is not valid for NCU571.
** Acknowledgement mode:
Commands are acknowledged on request from the executing component (channel, NC,
etc.).
Without acknowledgement: Program execution is continued when the command has been
transmitted. The executing component is not informed if the command cannot be executed
successfully. Acknowledgment mode "N" or "n".
Synchronous acknowledgement: The program execution is paused until the receiving
component acknowledges the command. If the acknowledgement is positive, the next
command is executed.
If the acknowledgement is negative an error is output.
Acknowledgement "S", "s" or to be omitted.
For some commands, the acknowledgement response is predefined, for others it is
programmable.
The acknowledgement response for program-coordination commands is always
synchronous.
If the acknowledgement mode is not specified, synchronous acknowledgement is the default
response.
Fundamentals
548 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Tables
16.4 Predefined subroutine calls
20. Messages
Keyword / 1st 2nd Explanation
subroutine parameter parameter
identifier
MSG STRING: INT: Message modal: The message is active until the next message is queued.
STRING: Continuous- If the 2nd parameter = 1 is programmed, e.g. MSG(Text, 1), the message will
signal path-mode even be output as an executable block in continuous-path mode.
call
parameter
22. Alarms
Keyword / 1st 2nd Explanation
subroutine parameter parameter
identifier
SETAL INT: Alarm STRING: Set alarm: Sets alarm. A character string with up to four parameters can be
number Character specified in addition to the alarm number.
(cycle string The following predefined parameters are available:
alarms) %1 = channel number
%2 = block number, label
%3 = text index for cycle alarms
%4 = additional alarm parameters
23. Compensation
Keyword / 1st parameter- Explanation
subroutine 4th parameter
identifier
QECLRNON AXIS: Axis number Quadrant error compensation learning ON: Quadrant error
compensation learning ON
QECLRNOF Quadrant error compensation learning OFF: Quadrant error
compensation learning OFF
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 549
Tables
16.4 Predefined subroutine calls
Fundamentals
550 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Tables
16.4 Predefined subroutine calls
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 551
Tables
16.4 Predefined subroutine calls
COUPOF AXIS: AXIS: REAL: REAL: Block change is not enabled until Deselection
Followin Leadin POSFS POSLS both programmed positions have of
g axis or g axis been crossed. Range of synchronous
following or POSFS, POSLS: 0 ... 359.999 operation
spindle leading degrees. after the two
(FS) spindle deactivation
(LS) positions.
POSFS and
POSLS have
been
crossed.
COUPOFS AXIS: AXIS: Block change performed as quickly Deactivation
Followin Leadin as possible with immediate block of couple
g axis or g axis change. with
following or following-
spindle leading spindle stop.
(FS) spindle
(LS)
COUPOFS AXIS: AXIS: REAL: After the programmed deactivation Only
Followin Leadin POSFS position that refers to the machine deactivated
g axis or g axis coordinate system has been after
following or crossed, the block change is not programmed
spindle leading enabled until the deactivation following-
(FS) spindle positions POSFS have been axis
(LS) crossed. deactivation
Value range 0 ... 359.999 degrees. position has
been
crossed.
COUPON AXIS: AXIS: The block change is enabled Fastest
Followin Leadin immediately. possible
g axis or g axis activation of
following or synchronous
spindle leading operation
(FS) spindle with any
(LS) angular
reference
between the
leading and
following
spindles.
Fundamentals
552 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Tables
16.4 Predefined subroutine calls
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 553
Tables
16.4 Predefined subroutine calls
Fundamentals
554 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Tables
16.5 Predefined subroutine calls in motion-synchronous actions
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 555
Tables
16.6 Predefined functions
Predefined functions
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
Keyword/ Result 1st parameter 2nd parameter Explanation
function
identifier
CTRANS FRAME AXIS REAL: Offset 3rd-15th 4th-16th Translation: Zero offset
parameter parameter for multiple axes.
as 1 ... as 2 ... One axis identifier is
programmed at a time,
with its respective value
in the next parameter.
CTRANS can be used to
program offset for up to
8 axes.
CROT FRAME AXIS REAL: 3rd/5th 4th/6th Rotation: Rotation of the
Rotation parameter parameter current coordinate
as 1 ... as 2 ... system.
Maximum number of
parameters: 6 (one axis
identifier and one value
per geometry axis)
CSCALE FRAME AXIS REAL: Scale 3rd-15th 4th-16th Scale: Scale factor for
factor parameter parameter multiple axes.
as 1 ... as 2 ... Maximum number of
parameters is 2*
maximum number of
axes (axis identifier and
value).
One axis identifier is
programmed at a time,
with its respective value
in the next parameter.
CSCALE can be used to
program scale factors
for up to 8 axes.
Fundamentals
556 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Tables
16.6 Predefined functions
2. Geometry functions
Keyword/ Result 1st parameter 2nd parameter 3rd parameter Explanation
function
identifier
CALCDAT BOOL: VAR REAL [,2]: INT: Number of VAR REAL [3]: CALCDAT: Calculate circle data
Error status Table with input input points for Result: Calculates radius and center
points (abscissa calculation Abscissa, point of a circle from 3 or 4 points
and ordinate for (3 or 4) ordinate and (according to parameter 1), which
points 1, 2, 3, radius of must lie on a circle. The points
etc.) calculated must be different.
circle center
point
Names Result 1st parameter 2nd parameter 3rd parameter 4th parameter 5th 6th
parameter parameter
CALCPOSI INT: REAL: REAL: REAL: REAL: BOOL: bin
Status Starting Increment: Minimum Return value 0: encoded
0 OK position in Path definition clearances of possible incr. Evaluation to be
WCS [0] Abscissa limits to be path if path G code monitored
-1 DLIMIT
[0] Abscissa observed from parameter group 13 1 SW limits
neg. [1] Ordinate
[1] Ordinate [0] Abscissa 3 cannot be (inch/metr.) 2 working
-2 Trans. [2] Applicate
[1] Ordinate fully traversed area
n.def. [2] Applicate referred to 1:
without
1 SW limit [2] Applicate Reference 4 active
starting violating limit
[3] Lin. to basic protection
2 Working position
machine control zone
area
Axis system, 8 preactive
3 Prot. zone
[4] Rot. Axis independen protection
See PGA for t of active zone
more G codes
group 13
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 557
Tables
16.6 Predefined functions
Explanation: CALCPOSI is for checking whether, starting from a defined starting point, the geometry
CALCPOSI axes can traverse a defined path without violating the axis limits (software limits), working
area limitations, or protection zones. If the defined path cannot be traversed without
violating limits, the maximum permissible value is returned.
INTERSEC BOOL: VAR REAL [11]: VAR REAL [11]: VAR REAL [2]: Intersection: Calculation of
Error status First contour Second contour Result vector: intersection
element element Intersection The intersection between two
coordinate, contour elements is calculated.
abscissa and The intersection coordinates
ordinate are return values. The error
status indicates whether an
intersection was found.
3. Axis functions
Result 1st parameter 2nd parameter Explanation
AXNAME AXIS: STRING [ ]: AXNAME: Get axis identifier
Axis identifier Input string Converts the input string to an axis identifier. An
alarm is generated if the input string does not
contain a valid axis identifier.
AXTOSPI INT: AXIS: AXTOSPI: Convert axis to spindle
Spindle Axis identifier Converts an axis identifier into a spindle number.
number An alarm is set if the transfer parameter does not
contain a valid axis identifier.
SPI AXIS: INT: SPI: Convert spindle to axis
Axis identifier Spindle number Converts a spindle number to an axis identifier. An
alarm is generated if the passed parameter does
not contain a valid spindle number.
ISAXIS BOOL INT: Check whether the geometry axis 1 to 3 specified
TRUE: Number of the as parameter exists in accordance with
Axis exists: geometry axis $MC_AXCONF_GEOAX_ASSIGN_TAB.
Otherwise: (1 to 3)
FALSE
AXSTRING STRING AXIS Convert axis identifier into string.
Fundamentals
558 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Tables
16.6 Predefined functions
4. Tool management
Result 1st parameter 2nd parameter Explanation
NEWT INT: STRING [32]: INT: Duplo Create new tool (prepare tool data). The duplo
T number Tool name number number can be omitted.
GETT50 INT: STRING [32]: INT: Duplo Get T number for tool identifier.
T number Tool name number
GETACTT INT: INT: STRING[32]: Get active tool from a group of tools with the same
Status T number Tool name name.
TOOLENV INT: STRING: Save a tool environment in SRAM with the
Status Name specified name.
DELTOOLENV INT: STRING: Delete a tool environment in SRAM with the
Status Name specified name. All tool environments if no name
specified.
GETTENV INT: STRING: INT: Reading:
Status Name Number = [0] T number,
Number = [1] D number,
Number = [2] DL number
from a tool environment with the specified name
Result 1st par. 2nd par. 3rd par. 4th par. 5th par. 6th par. Explanation
GETTCOR INT: REAL: STRING: STRING: INT: INT: INT: Read tool lengths and tool
Status Length Compon Tool Int. T D DL length components from tool
[11] ents: environm number number number environment or current
Coordi- ent/ environment
nate "" Details: See /FB1/ Function
system Manual Basic Functions; (W1)
Result 1st par. 2nd par. 3rd par. 4th par. 5th par. 6th par. 7th par. 8th par. 9th par.
SETTCOR INT: REAL: STRING: INT: INT: INT: STRING: INT: INT: INT:
Status Offset Compo- Compon Type of Index of Name of Int. T D DL
vector nent(s) ent(s) to write geo. axis tool number number number
[0-3] be offset operation environm
ent
Explanation Changing tool components whilst observing all marginal conditions that are included in the evaluation of the
individual components. Details: See Function Manual Basic Functions; (W1)
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 559
Tables
16.6 Predefined functions
5. Arithmetic
Result 1st parameter 2nd parameter Explanation
SIN REAL REAL Sine
ASIN REAL REAL Arcsine
COS REAL REAL Cosine
ACOS REAL REAL Arccosine
TAN REAL REAL Tangent
ATAN2 REAL REAL REAL Arctangent 2
SQRT REAL REAL Square root
ABS REAL REAL Generate absolute value
POT REAL REAL Square
TRUNC REAL REAL Truncate decimal places
ROUND REAL REAL Round decimal places
LN REAL REAL Natural logarithm
EXP REAL REAL Exponential function ex
MINVAL REAL REAL REAL Determines the smaller value of two variables
MAXVAL REAL REAL REAL Determines the larger value of two variables
Result 1st parameter 2nd parameter 3rd parameter Explanation
BOUND REAL: Check REAL: REAL: REAL: Check Checks whether the variable
status Minimum Maximum variable value lies within the defined
min/max value range
Explanation The arithmetic functions can also be programmed in synchronized actions. Arithmetic functions are
calculated and evaluated in the main run. Synchronized action parameter $AC_PARAM[n] can also be
used for calculations and as buffer memory.
Fundamentals
560 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Tables
16.6 Predefined functions
6. String functions
Result 1st parameter 2nd parameter Explanation
to
3rd parameter
ISNUMBER BOOL STRING Check whether the input string can be converted to
a number.
Result is TRUE if conversion is possible.
ISVAR BOOL STRING Check whether the transfer parameter contains a
variable known in the NC. (Machine data, setting
data, system variable, general variables such as
GUDs)
Result is TRUE if all the following checks produce
positive results according to the (STRING) transfer
parameter:
– The identifier exists
– It is a 1- or 2-dimensional
array
– An array index is allowed.
For axial variables, the axis names are accepted as
an index but not checked.
NUMBER REAL STRING Convert the input string into a number.
TOUPPER STRING STRING Convert all alphabetic characters in the input string
to upper case.
TOLOWER STRING STRING Convert all alphabetic characters in the input string
to lower case.
STRLEN INT STRING The result is the length of the input string up to the
end of the string (0).
INDEX INT STRING CHAR Find the character (2nd parameter) in the input
string (1st parameter). The reply gives the place, at
which the character was first found. The search is
from left to right.
The 1st character in the string has the index 0.
RINDEX INT STRING CHAR Find the character (2nd parameter) in the input
string (1st parameter). The reply gives the place, at
which the character was first found. The search is
from right to left.
The 1st character in the string has the index 0.
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 561
Tables
16.6 Predefined functions
MINDEX INT STRING STRING Find one of the characters specified in the 2nd
parameter in the input string (1st parameter). The
place where one of the characters was first found is
output. The search is from left to right. The first
character in the string has the index 0.
SUBSTR STRING STRING INT Returns the substring of the input string (1st
parameter), defined by the start character (2nd
parameter) and number of characters (3rd
parameter).
Example:
SUBSTR("ACKNOWLEDGEMENT:10 to 99", 10, 2)
returns substring "10".
Fundamentals
562 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Tables
16.7 Arithmetic operators / arithmetic functions
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 563
Tables
16.8 Relational operators
Data types
Type Comment Value range
INT Integers with sign -2147483646 ... +2147483647
REAL Real numbers (fractions with decimal point, LONG ±(2,2*10-308 … 1,8*10+308)
REAL to IEEE)
BOOL Truth values TRUE (1) and FALSE (0) 1, 0
CHAR ASCII characters Corresponding to code 0 ... 255
STRING Character string, number of characters in [...] Maximum of 200 characters (no special characters)
AXIS Axis names (axis addresses) only All axis addresses in the channel
FRAME Geometrical parameters for translation, rotation,
scaling, and mirroring
Fundamentals
564 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Appendix A
A.1 List of abbreviations
A Output
AS Automation system
ASCII American Standard Code for Information Interchange
ASIC Application Specific Integrated Circuit: User switching circuit
ASUB Asynchronous subroutine
AV Job planning
STL Statement list
BA Operating mode
Mode group Mode group
BB Ready to run
HMI Human Machine Interface
BCD Binary Coded Decimals: Decimal numbers encoded In binary code
HHU Handheld unit
BIN Binary files (Binary Files)
BIOS Basic Input Output System
BCS Basic Coordinate System
UI User interface
BOT Boot files: Boot files for SIMODRIVE 611 digital
OP Operator Panel
OPI Operator Panel Interface
CAD Computer-Aided Design
CAM Computer-Aided Manufacturing
CNC Computerized Numerical Control: Computerized numerical control
COM Communication
CP Communications Processor
CPU Central Processing Unit: Central processing unit
CR Carriage Return
CRT Cathode Ray Tube picture tube
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 565
Appendix
A.1 List of abbreviations
Fundamentals
566 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Appendix
A.1 List of abbreviations
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 567
Appendix
A.1 List of abbreviations
K1 .. K4 Channel 1 to channel 4
C Bus Communication bus
COR Coordinate rotation
LAD Ladder diagram (PLC programming method)
Kv Servo gain factor
KUE Speed ratio
LCD Liquid Crystal Display: Liquid crystal display
LED Light-Emitting Diode: Light emitting diode
LF Line Feed
PMS Position measuring system
LR Position controller
LUD Local User Data
MB Megabyte
MD Machine data
MDI Manual Data Automatic: Manual input
MC Measuring circuit
MCS Machine coordinate system
MLFB Machine-readable product designation
MPF Main Program File: NC part program (main program)
MPI Multiport Interface Multiport Interface
MS Microsoft (software manufacturer)
MCP Machine control panel
NC Numerical Control: Numerical Control
NCK Numerical Control Kernel: NC kernel with block preparation, traversing range, etc.
NCU Numerical Control Unit: Hardware unit of the NCK
NRK Name for the operating system of the NCK
IS Interface signal
NURBS Non-Uniform Rational B-Spline
ZO Zero offset
OB Organization block in the PLC
OEM Original Equipment Manufacturer
OP Operator Panel: Operating setup
OPI Operator Panel Interface: Interface for connection to the operator panel
OPT Options: Options
OSI Open Systems Interconnection: Standard for computer communications
Fundamentals
568 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Appendix
A.1 List of abbreviations
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 569
Appendix
A.1 List of abbreviations
Fundamentals
570 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Appendix
A.2 Feedback on the documentation
This document will be continuously improved with regard to its quality and ease of use.
Please help us with this task by sending your comments and suggestions for improvement
via e-mail or fax to:
E-mail: mailto:[email protected]
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 571
Appendix
A.2 Feedback on the documentation
7R )URP
6,(0(16$*
1DPH
$ '0&06
3RVWIDFK $GGUHVVRI\RXU&RPSDQ\'HSW
6WUHHW
(5/$1*(1*(50$1<
=LSFRGH &LW\
3KRQH
6XJJHVWLRQVDQGRUFRUUHFWLRQV
Fundamentals
572 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Appendix
A.3 Documentation overview
%URFKXUH
&DWDORJ1&
&DWDORJ
'&RQYHUWHUFKDVVLVXQLWV
8VHUGRFXPHQWDWLRQ
0DQXIDFWXUHU6HUYLFH'RFXPHQWDWLRQ
0DQXIDFWXUHU6HUYLFH'RFXPHQWDWLRQ
(OHFWURQLFGRFXPHQWDWLRQ
6,180(5,.
6,1$0,&6
0RWRUV
'2&21&'
'2&21:(%
5HFRPPHQGHGPLQLPXPVFRSHRIGRFXPHQWDWLRQ
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 573
Appendix
A.3 Documentation overview
'RFXPHQWDWLRQ2YHUYLHZ6,180(5,.''L'
*HQHUDOGRFXPHQWDWLRQ
6,180(5,. 6,180(5,.
'
'L
'
%URFKXUH &DWDORJ1&
8VHUGRFXPHQWDWLRQ
0DQXIDFWXUHUVHUYLFHGRFXPHQWDWLRQ
0DQXIDFWXUHUVHUYLFHGRFXPHQWDWLRQ
(OHFWURQLFGRFXPHQWDWLRQ
6,180(5,.
6,02'5,9(
0RWRUV
'2&21&'
5HFRPPHQGHGPLQLPXPVFRSHRIGRFXPHQWDWLRQ
'2&21:(%
Fundamentals
574 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Glossary
Absolute dimensions
A destination for an axis movement is defined by a dimension that refers to the origin of the
currently active coordinate system. See → Chain measure
Address
An address is the identifier for a certain operand or operand range, e.g. input, output, etc.
Alarms
All → messages and alarms are displayed on the operator panel in plain text with date and
time and the corresponding symbol for the cancel criterion. Alarms and messages are
displayed separately.
1. Alarms and messages in the part program:
Alarms and messages can be displayed in plain text directly from the part program.
2. Alarms and messages from PLC
Alarms and messages for the machine can be displayed in plain text from the PLC
program. No additional function block packages are required for this purpose.
Archive
Reading out of files and/or directories on an external memory device.
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 575
Glossary
Asynchronous subroutine
Part program that can be started asynchronously to (independently of) the current program
status using an interrupt signal (e.g. "Rapid NC input" signal).
Automatic
Operating mode of the control (block sequence operation according to DIN): Operating mode
for NC systems in which a → subprogram is selected and executed continuously.
Auxiliary functions
Auxiliary functions enable part programs to transfer → parameters to the → PLC, which then
trigger reactions defined by the machine manufacturer.
Axes
In accordance with their functional scope, the CNC axes are subdivided into:
● Axes: interpolating path axes
● Auxiliary axes: non-interpolating feed and positioning axes with an axis-specific feed rate.
Auxiliary axes are not involved in actual machining, e.g. tool feeder, tool magazine.
Axis address
See → Axis identifier
Axis identifier
Axes are identifed using X, Y, and Z as defined in DIN 66217 for a right-handed, right-angled
→ coordinate system.
Rotary axes rotating around X, Y, and Z are identified using A, B, and C. Additional axes
situated parallel to the specified axes can be designated using other letters.
Axis name
See → Axis identifier
Fundamentals
576 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Glossary
Backlash compensation
Compensation for a mechanical machine backlash, e.g. backlash on reversal for ball screws.
Backlash compensation can be entered separately for each axis.
Backup battery
The backup battery ensures that the → user program in the → CPU is stored so that it is safe
from power failure and so that specified data areas and bit memory, timers and counters are
stored retentively.
Base axis
Axis whose setpoint or actual value position forms the basis of the calculation of a
compensation value.
Baud rate
Rate of data transfer (Bit/s).
Blank
Workpiece as it is before it is machined.
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 577
Glossary
Block search
For debugging purposes or following a program abort, the "Block search" function can be
used to select any location in the part program at which the program is to be started or
resumed.
Booting
Loading the system program after power on.
C axis
Axis around which the tool spindle describes a controlled rotational and positioning
movement.
Channel
A channel is characterized by the fact that it can process a → part program independently of
other channels. A channel exclusively controls the axes and spindles assigned to it. Part
program runs of different channels can be coordinated through → synchronization.
Chip
"Block" is the term given to any files required for creating and processing programs.
Circular interpolation
The → tool moves on a circle between specified points on the contour at a given feed rate,
and the workpiece is thereby machined.
CNC
See → NC
COM
Component of the NC for the implementation and coordination of communication.
Fundamentals
578 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Glossary
Compensation axis
Axis with a setpoint or actual value modified by the compensation value
Compensation memory
Data range in the control, in which the tool offset data are stored.
Compensation table
Table containing interpolation points. It provides the compensation values of the
compensation axis for selected positions on the basic axis.
Compensation value
Difference between the axis position measured by the encoder and the desired, programmed
axis position.
Connecting cables
Connecting cables are pre-assembled or user-assembled 2-wire cables with a connector at
each end. This connecting cable connects the → CPU to a → programming device or to other
CPUs by means of a → multi-point interface (MPI).
Continuous-path mode
The objective of continuous-path mode is to avoid substantial deceleration of the → path
axes at the part program block boundaries and to change to the next block at as close to the
same path velocity as possible.
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 579
Glossary
Contour
Contour of the → workpiece
Contour monitoring
The following error is monitored within a definable tolerance band as a measure of contour
accuracy. An unacceptably high following error can cause the drive to become overloaded,
for example. In such cases, an alarm is output and the axes are stopped.
Coordinate system
See → Machine coordinate system, → Workpiece coordinate system
CPU
Central processing unit, see → Memory-programmable control
C-Spline
The C-Spline is the most well-known and widely used spline. The transitions at the
interpolation points are continuous, both tangentially and in terms of curvature. 3rd order
polynomials are used.
Cycles
Protected subroutines for execution of repetitive machining operations on the → workpiece.
Fundamentals
580 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Glossary
Data Block
1. Data unit of the → PLC that → HIGHSTEP programs can access.
2. Data unit of the → NC: Data modules contain data definitions for global user data. These
data can be initialized directly when they are defined.
Data word
Two-byte data unit within a → data block.
Diagnose
1. Operating area of the control.
2. The control has both a self-diagnostics program as well as test functions for servicing
purposes: status, alarm, and service displays
DRF
Differential Resolver Function: NC function which generates an incremental zero offset in
Automatic mode in conjunction with an electronic handwheel.
Drive
The drive is the unit of the CNC that performs the speed and torque control based on the
settings of the NC.
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 581
Glossary
Editor
The editor makes it possible to create, edit, extend, join, and import programs/texts/program
blocks.
Exact stop
When an exact stop statement is programmed, the position specified in a block is
approached exactly and, if necessary, very slowly. To reduce the approach time, exact stop
limits are defined for rapid traverse and → feed.
Feed override
The programmed velocity is overriden by the current velocity setting made via the → machine
control panel or from the → PLC (0 to 200%). The feedrate can also be corrected by a
programmable percentage factor (1-200%) in the machining program.
Fundamentals
582 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Glossary
Finished-part contour
Contour of the finished workpiece. See → Raw part.
Fixed-point approach
Machine tools can approach fixed points such as a tool change point, loading point, pallet
change point, etc. in a defined way. The coordinates of these points are stored in the control.
The control moves the relevant axes in → rapid traverse, whenever possible.
Frame
A frame is an arithmetic rule that transforms one Cartesian coordinate system into another
Cartesian coordinate system. A frame contains the following components: → zero offset,
→ rotation, → scaling, → mirroring.
Geometry
Description of a → workpiece in the → workpiece coordinate system.
Geometry axis
Geometry axes are used to describe a 2- or 3-dimensional area in the workpiece coordinate
system.
Ground
Ground is taken as the total of all linked inactive parts of a device which will not become live
with a dangerous contact voltage even in the event of a malfunction.
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 583
Glossary
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:
● Circular movement in one plane
● A linear movement perpendicular to this plane
HIGHSTEP
Summary of programming options for → PLCs of the AS300/AS400 system.
Identifier
In accordance with DIN 66025, words are supplemented using identifiers (names) for
variables (arithmetic variables, system variables, user variables), subroutines, key words,
and words with multiple address letters. These supplements have the same meaning as the
words with respect to block format. Identifiers must be unique. It is not permissible to use the
same identifier for different objects.
Fundamentals
584 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Glossary
Increment
Travel path length specification based on number of increments. The number of increments
can be stored as → setting data or be selected by means of a suitably labeled key (i.e. 10,
100, 1000, 10000).
Incremental dimension
Also incremental dimension: A destination for axis traversal is defined by a distance to be
covered and a direction referenced to a point already reached. See → Absolute dimension.
Intermediate blocks
Motions with selected → tool offset (G41/G42) may be interrupted by a limited number of
intermediate blocks (blocks without axis motions in the offset plane), whereby the tool offset
can still be correctly compensated for. The permissible number of intermediate blocks which
the control reads ahead can be set in system parameters.
Interpolator
Logic unit of the → NCK that defines intermediate values for the motions to be carried out in
individual axes based on information on the end positions specified in the part program.
Interpolatory compensation
Interpolatory compensation is a tool that enables manufacturing-related leadscrew error and
measuring system error compensations.
Interrupt routine
Interrupt routines are special → subroutines that can be started by events (external signals)
in the machining process. A part program block which is currently being worked through is
interrupted and the position of the axes at the point of interruption is automatically saved.
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 585
Glossary
Inverse-time feedrate
With SINUMERIK 840D, the time required for the path of a block to be traversed can be
programmed for the axis motion instead of the feed velocity (G93).
JOG
Control operating mode (setup mode): In JOG mode, the machine can be set up. Individual
axes and spindles can be traversed in JOG mode by means of the direction keys. Additional
functions in JOG mode include: → Reference point approach, → Repos, and → Preset (set
actual value).
Key switch
The key switch on the → machine control panel has four positions that are assigned functions
by the operating system of the control. The key switch has three different colored keys that
can be removed in the specified positions.
Keywords
Words with specified notation that have a defined meaning in the programming language for
→ part programs.
KV
Servo gain factor, a control variable in a control loop.
Leading axis
The leading axis is the → gantry axis that exists from the point of view of the operator and
programmer and, thus, can be influenced like a standard NC axis.
Fundamentals
586 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Glossary
Limit speed
Maximum/minimum (spindle) speed: The maximum speed of a spindle can be limited by
specifying machine data, the → PLC or → setting data.
Linear axis
In contrast to a rotary axis, a linear axis describes a straight line.
Linear interpolation
The tool travels along a straight line to the destination point while machining the workpiece.
Load memory
The load memory is the same as → RAM for the CPU 314 of the → PLC.
Look Ahead
The Look Ahead function is used to achieve an optimal machining speed by looking ahead
over an assignable number of traversing blocks.
Machine axes
Physically existent axes on the machine tool.
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 587
Glossary
Machine zero
Fixed point of the machine tool to which all (derived) measuring systems can be traced back.
Machining channel
A channel structure can be used to shorten idle times by means of parallel motion
sequences, e.g. moving a loading gantry simultaneously with machining. Here, a CNC
channel must be regarded as a separate CNC control system with decoding, block
preparation and interpolation.
Macro techniques
Grouping of a set of statements under a single identifier. The identifier represents the set of
consolidated statements in the program.
Main block
A block prefixed by ":" introductory block, containing all the parameters required to start
execution of a -> part program.
Main program
The → part program designated by a number or an identifer in which additional main
programs, subroutines, or → cycles can be called.
MDA
Control 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.
Messages
All messages programmed in the part program and → alarms detected by the system are
displayed on the operator panel in plain text with date and time and the corresponding
symbol for the cancel criterion. Alarms and messages are displayed separately.
Fundamentals
588 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Glossary
Mirroring
Mirroring reverses the signs of the coordinate values of a contour, with respect to an axis. It
is possible to mirror with respect to more than one axis at a time.
Mode group
Axes and spindles that are technologically related can be combined into one mode group.
Axes/spindles of a BAG can be controlled by one or more → channels. The same → mode
type is always assigned to the channels of the mode group.
Mode of operation
An operating concept on a SINUMERIK control. The following modes are defined: → Jog,
→ MDA, → Automatic.
NC
Numerical Control: Numerical control (NC) includes all components of machine tool control:
→ NCK, → PLC, HMI, → COM.
Note
A more correct term for SINUMERIK 840D controls would be: Computerized Numerical
Control
NCK
Numerical Control Kernel: Component of NC that executes the → part programs and
basically coordinates the motion operations for the machine tool.
NRK
Numeric robotic kernel (operating system of → NCK)
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 589
Glossary
NURBS
The motion control and path interpolation that occurs within the control is performed based
on NURBS (Non Uniform Rational B-Splines). As a result, a uniform process is available
within the control for all interpolations for SINUMERIK 840D.
OEM
The scope for implementing individual solutions (OEM applications) for the SINUMERIK
840D has been provided for machine manufacturers, who wish to create their own operator
interface or integrate process-oriented functions in the control.
Operator Interface
The user interface (UI) is the display medium for a CNC in the form of a screen. It features
horizontal and vertical softkeys.
Overall reset
In the event of an overall reset, the following memories of the → CPU are deleted:
● → Work memory
● Read/write area of → load memory
● → System memory
● → Backup memory
Fundamentals
590 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Glossary
Override
Manual or programmable control feature, which enables the user to override programmed
feedrates or speeds in order to adapt them to a specific workpiece or material.
Path axis
Path axes include all machining axes of the → channel that are controlled by the
→ interpolator in such a way that they start, accelerate, stop, and reach their end point
simultaneously.
Path feedrate
Path feed affects → path axes. It represents the geometric sum of the feed rates of the
→ geometry axes involved.
Path velocity
The maximum programmable path velocity depends on the input resolution. For example,
with a resolution of 0.1 mm the maximum programmable path velocity is 1000 m/min.
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 591
Glossary
Peripheral module
I/O modules represent the link between the CPU and the process.
I/O modules are:
● → Digital input/output modules
● → Analog input/output modules
● → Simulator modules
PLC
Programmable Logic Control: → Programmable logic controller. Component of → NC:
Programmable controller for processing the control logic of the machine tool.
PLC Programming
The PLC is programmed using the STEP 7 software. The STEP 7 programming software is
based on the WINDOWS standard operating system and contains the STEP 5 programming
functions with innovative enhancements.
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.
Fundamentals
592 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Glossary
Polynomial interpolation
Polynomial interpolation enables a wide variety of curve characteristics to be generated,
such as straight line, parabolic, exponential functions (SINUMERIK 840D).
Positioning axis
Axis that performs an auxiliary movement on a machine tool (e.g. tool magazine, pallet
transport). Positioning axes are axes that do not interpolate with → path axes.
Pre-coincidence
Block change occurs already when the path distance approaches an amount equal to a
specifiable delta of the end position.
Program block
Program blocks contain the main program and subroutines of → part programs.
Programmable frames
Programmable → frames enable dynamic definition of new coordinate system output points
while the part program is being executed. A distinction is made between absolute definition
using a new frame and additive definition with reference to an existing starting point.
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 593
Glossary
Programming key
Character and character strings that have a defined meaning in the programming language
for → part programs.
Protection zone
Three-dimensional zone within the → working area into which the tool tip must not pass.
R parameters
Arithmetic parameter that can be set or queried by the programmer of the → part program for
any purpose in the program.
Rapid traverse
The highest traverse rate of an axis. For example, rapid traverse is used when the tool
approaches the → workpiece contour from a resting position or when the tool is retracted
from the workpiece contour. The rapid traverse velocity is set on a machine-specific basis
using a machine data element.
Reference point
Machine tool position that the measuring system of the → machine axes references.
Rotary axis
Rotary axes apply a workpiece or tool rotation to a defined angular position.
Rotation
Component of a → frame that defines a rotation of the coordinate system around a particular
angle.
Fundamentals
594 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Glossary
Rounding axis
Rounding axes rotate a workpiece or tool to an angular position corresponding to an
indexing grid. When a grid index is reached, the rounding axis is "in position".
Safety Functions
The control is equipped with permanently active montoring functions that detect faults in the
→ CNC, the → PLC, and the machine in a timely manner so that damage to the workpiece,
tool, or machine is largely prevented. In the event of a fault, the machining operation is
interrupted and the drives stopped. The cause of the malfunction is logged and output as an
alarm. At the same time, the PLC is notified that a CNC alarm has been triggered.
Scaling
Component of a → frame that implements axis-specific scale modifications.
Selecting
Series of statements to the NC that act in concert to produce a particular → workpiece.
Likewise, this term applies to execution of a particular machining operation on a given → raw
part.
Setting data
Data, which communicates the properties of the machine tool to the NC, as defined by the
system software.
Softkey
A key, whose name appears on an area of the screen. The choice of soft keys displayed is
dynamically adapted to the operating situation. The freely assignable function keys (soft
keys) are assigned defined functions in the software.
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 595
Glossary
Spline interpolation
With spline interpolation, the controller can generate a smooth curve characteristic from only
a few specified interpolation points of a set contour.
SRT
Transformation ratio
Standard cycles
Standard cycles are provided for machining operations, which are frequently repeated:
● Cycles for drilling/milling applications
● for turning technology
The available cycles are listed in the "Cycle support" menu in the "Program" operating area.
Once the desired machining cycle has been selected, the parameters required for assigning
values are displayed in plain text.
Subblock
Block preceded by "N" containing information for a sequence, e.g. positional data.
Subroutine
Sequence of statements of a → part program that can be called repeatedly with different
defining parameters. The subroutine is called from a main program. Every subroutine can be
protected against unauthorized read-out and display. → Cycles are a form of subroutines.
Supply System
A network is the connection of multiple S7-300 and other end devices, e.g. a programming
device via a → connecting cable. A data exchange takes place over the network between the
connected devices.
Fundamentals
596 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Glossary
Synchronization
Statements in → part programs for coordination of sequences in different → channels at
certain machining points.
Synchronized Actions
1. Auxiliary function output
During workpiece machining, technological functions (→ auxiliary functions) can be output
from the CNC program to the PLC. For example, these auxiliary functions are used to
control additional equipment for the machine tool, such as quills, grabbers, clamping
chucks, etc.
2. Fast auxiliary function output
For time-critical switching functions, the acknowledgement times for the → auxiliary
functions can be minimized and unnecessary hold points in the machining process can
be avoided.
Synchronized axes
Synchronized axes take the same time to traverse their path as the geometry axes take for
their path.
Synchronized axis
A synchronized axis is the → gantry axis whose set position is continuously derived from the
motion of the → leading axis and is, thus, moved synchronously with the leading axis. From
the point of view of the programmer and operator, the synchronized axis "does not exist".
System memory
The system memory is a memory in the CPU in which the following data is stored:
● Data required by the operating system
● The operands times, counters, markers
System variables
A variable that exists without any input from the programmer of a → part program. It is
defined by a data type and the variable name preceded by the character $. See → User-
defined variable.
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 597
Glossary
Text editor
See → Editor
TOA area
The TOA area includes all tool and magazine data. By default, this area coincides with the
→ channel area with regard to the reach of the data. However, machine data can be used to
specify that multiple channels share one → TOA unit so that common tool management data
is then available to these channels.
TOA unit
Each → TOA area can have more than one TOA unit. The number of possible TOA units is
limited by the maximum number of active → channels. A TOA unit includes exactly one tool
data block and one magazine data block. In addition, a TOA unit can also contain a
toolholder data block (optional).
Tool
Active part on the machine tool that implements machining (e.g. turning tool, milling tool, drill,
LASER beam, etc.).
Tool offset
Consideration of the tool dimensions in calculating the path.
Fundamentals
598 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Glossary
Transformation
Additive or absolute zero offset of an axis.
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).
User memory
All programs and data, such as part programs, subroutines, comments, tool offsets, and zero
offsets/frames, as well as channel and program user data, can be stored in the shared CNC
user memory.
User Program
User programs for the S7-300 automation systems are created using the programming
language STEP 7. The user program has a modular layout and consists of individual blocks.
The basic block types are:
● Code blocks
These blocks contain the STEP 7 commands.
● Data blocks
These blocks contain constants and variables for the STEP 7 program.
User-defined variable
Users can declare their own variables for any purpose in the → part program or data block
(global user data). A definition contains a data type specification and the variable name. See
→ System variable.
Variable definition
A variable definition includes the specification of a data type and a variable name. The
variable names can be used to access the value of the variables.
Velocity control
In order to achieve an acceptable traverse rate in the case of very slight motions per block,
an anticipatory evaluation over several blocks (→ Look Ahead) can be specified.
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 599
Glossary
WinSCP
WinSCP is a freely available open source program for Windows for the transfer of files.
Working area
Three-dimensional zone into which the tool tip can be moved on account of the physical
design of the machine tool. See → Protection zone.
Working memory
RAM is a work memory in the → CPU that the processor accesses when processing the
application program.
Workpiece
Part to be made/machined by the machine tool.
Workpiece contour
Set contour of the → workpiece to be created or machined.
Workpiece zero
The workpiece zero is the starting point for the → workpiece coordinate system. It is defined
in terms of distances to the → machine zero.
Fundamentals
600 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Glossary
Zero offset
Specifies a new reference point for a coordinate system through reference to an existing
zero point and a → frame.
1. Settable
SINUMERIK 840D: A configurable number of settable zero offsets are available for each
CNC axis. The offsets - which are selected by means of G functions - take effect
alternately.
2. External
In addition to all the offsets which define the position of the workpiece zero, an external
zero offset can be overridden by means of the handwheel (DRF offset) or from the PLC.
3. Programmable
Zero offsets can be programmed for all path and positioning axes using the TRANS
statement.
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 601
Glossary
Fundamentals
602 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Index
ANG1, 244
ANG2, 244, 247
$ Angle
Contour angle, 242, 244, 247
$AA_ACC, 146
AP, 198, 223
$AA_OFF, 398
AP, 202
$AC_TOFF, 93
AP, 207
$AC_TOFFL, 93
AP, 210
$AC_TOFFR, 93
AP, 232
$AC_WORKAREA_CS_LIMIT_MINUS, 414
Approach and retract paths, 297
$AC_WORKAREA_CS_LIMIT_PLUS, 414
Approach and retraction velocities, 319
$AC_WORKAREA_CS_MINUS_ENABLE, 414
Approach point/angle, 299
$AC_WORKAREA_CS_PLUS_ENABLE, 414
Approaching a fixed point, 417
$P_GWPS, 109
AR, 210, 220, 232, 235
$P_TOFF, 93
Arithmetic function, 563
$P_TOFFL, 93
Arithmetic operator, 563
$P_TOFFR, 93
AROT, 357, 369
$TC_TPG1/...8/...9, 108
AROTS, 379
ASCALE, 357, 380
ATRANS, 357, 360, 366
A
Auxiliary function output
A=..., 174 High-speed, 401
Absolute dimensions, 19 In continuous-path mode, 402
AC, 127, 165, 220 Auxiliary function outputs, 399
ACC, 144 Axial DRF deselection, 397
Acceleration Axis types
Mode, 425 Channel axes, 441
ACCLIMA, 428 Machine axes, 441
ACN, 127, 174 Main spindle, 440
ACP, 127, 174 Path axes, 441
Address, 39 Positioning axes, 442
Extended address, 453 Special axes, 440
modally effective, 452 Synchronized axes, 443
non-modal, 452
Value assignment, 44
with axial extension, 452 B
Address letters, 510
B=..., 174
Addresses, 450
Basic coordinate system (BCS), 31
Fixed addresses, 511
Basic offset, 33
ADIS, 343
Basic zero system, 33
ADISPOS, 343
Binary constants, 457
ALF, 272, 277
Blank form, 297
AMIRROR, 357
Block, 39
AMIRROR, 384
Components, 39
ANG, 242, 247, 461
End, 43
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 603
Index
Fundamentals
604 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Index
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 605
Index
Fundamentals
606 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Index
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 607
Index
M Non-modal, 42
Non-modal feedrate, 279
M functions, 403
NORM, 297, 299, 303
M..., 403
M0, 403
M1, 95, 403
O
M17, 403
M19, 126 OFFN, 285
M2, 403 Offset
M3, 95, 125, 403 Tool length, 88
M30, 403 Tool radius, 88
M4, 95, 125, 403 Operator
M40, 403 Logic operator, 564
M41, 125, 403 Relational, 564
M42, 403 Optional stop, 406
M43, 403 ORIPATH, 491
M44, 403 ORIPATHS, 492
M45, 125, 403 Overview
M5, 95, 125, 403 Types of feedrate, 111
M6, 63, 403 OVR, 138
M7, 405 OVRA, 138
M70, 126 OVRRAP, 138
Machine axes, 441
Machine coordinate system, 27
Machine zero, 25 P
Main axes, 439
PAROT, 390
Main spindle, 440
PAROTOF, 390
Master spindle, 440
Path action, depending on DISC values, 308
MCS, 27
Path axes
MD10652, 241
traverse with handwheel override, 141
MD10654, 241
Path axes, 441
Messages, 407
Path tangent, 301
Milling tools, 77
PLC axes, 443, 446
MIRROR, 357
PM, 312
MIRROR, 384
Polar angle, 18, 199
Modal, 42
Polar coordinates, 18, 198
Modal feedrate, 279
Polar radius, 18, 199
Modal rounding, 278
Pole, 195
Monitoring
POLF, 274
Fixed stop, 420
POLFMASK, 274
MSG, 343, 407
POLFMLIN, 274
Multiple feedrate values in one block, 149
POS, 120
POSA, 120
Position-controlled spindle operation, 124
N
Position-controlled spindles, position
Names, 37 Position a spindle from standstill, 133
NC high-level language, 41 Position spindle from rotation, 125
NC program Positioning axes, 442
Creating, 50 traverse, 120
NC programming POSP, 120
Character set, 51 PR, 312
Non-cutting tool path, 309 Preprocessing stop, 123
Non-linear interpolation, 205 Internal, 436
Fundamentals
608 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Index
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 609
Index
Start point offset, 253 CUT2D, CUT2DF with contour tools, 332
Starting point, 25, 191 Cutting-edge selection with contour tools, 332
Statement, 39 Tool Offset
Statements Offset, 88
List, 459, 509 Tool offsets
Stop Compensation at outside corners, 305
At the end of the cycle, 406 Smooth approach and retraction (SAR), 310
Optional, 406 Tool radius compensation, 285
Programmed, 406 Change of the direction of compensation, 294
Straight lines Changing the offset number D, 295
Interpolation, 207 Corner behavior, 307
SUPA, 155, 395 Corner behavior, intersection, 309
Synchronized axes, 443 Corner behavior, selectable transitions, 307
SZS, 34 Corner behavior, transition circle, 307
CUT2D, 333
CUT2DF, 334
T Toolholder reference point, 25
Tools with a relevant tool point direction, 337
T..., 63
TOROT, 390
T=..., 62
TOROTOF, 390
T0, 62, 63
TOROTX, 390
Tapered thread, 260
TOROTY, 390
Tapping
TOROTZ, 390
with compensating chuck, 270
TRAFOOF, 416
Without compensating chuck, 266
TRANS, 357, 360, 366
Target point, 191
Transition
Technology G group, 430
circle, 307
Thread
ellipsis/parabola/hyperbola, 308
Multiple, 253
Radius, 306
Thread chain, 254
Transition circle, 330
Thread cutting, 252, 264, 272
Transition current/next block, 302
Thread lead, 264
Transverse axis, 180, 189
Three-finger rule, 28
Travel command, 191
TOFF, 88
Traverse path axes as positioning axes with G0, 205
TOFFL, 88
TURN, 232
TOFFR, 88
Turning functions
TOFRAME, 390
Chamfer, rounding, 279
TOFRAMEX, 390
Turning tools, 81
TOFRAMEY, 390
TOFRAMEZ, 390
Tool
V
Compensation memory, 74
Cutting edge, 84 Value assignment, 44
Group, 76 Variable identifiers, 455
Length compensation, 72 VELOLIMA, 428
Radius compensation, 73
Tip, 74
Type, 76 W
Type number, 76
WAITMC, 120
Tool change point, 300
WAITP, 120
Tool edge reference point, 337
WAITS, 127, 132
Tool offset
WALCS0, 413
CUT2D, CUT2DF, 331
WALCS1-10, 413
Fundamentals
610 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0
Index
WALIMOF, 408
WALIMON, 408
WCS, 35
Working area limitation
in BCS, 408
in WCS/SZS, 413
Reference points on the tool, 412
working area limitation, 409
Working plane, 23, 161
Workpiece
Contour, 192
Workpiece coordinate system, 35
Align on workpiece, 391
Workpiece zero, 25
X
X..., 193
X2, 242
X3, 244
Y
Y..., 193
Z
Z..., 193
Z1, 244, 247
Z2, 242, 244, 247
Z3, 247
Z4, 247
Zero frame, 157
Zero offset
Offset values, 159
Settable, 34
variable, 155
Zero points, 25
For turning, 188
Zero system
Settable, 34
Fundamentals
Programming Manual, 01/2008, 6FC5398-1BP10-3BA0 611
Index
Fundamentals
612 Programming Manual, 01/2008, 6FC5398-1BP10-3BA0