Sei sulla pagina 1di 321

CNC-Simulator Turning

with Driven Tools and Counter Spindle

Programmer's Guide

Version 6.07

Mathematisch Technische Software - Entwicklung GmbH


Kaiserin-Augusta-Allee 101 D • 10553 Berlin • ( +49 / 30 / 34 99 600
Programmer's Guide
CNC Simulator for Turning
Version6.7

© MTS Mathematisch Technische Software-Entwicklung GmbH


Kaiserin-Augusta-Allee 101 • D-10553 Berlin
( + 49 / 30 / 34 99 600 • Fax +49 / 30 / 34 99 60 25
eMail: mts@mts-cnc.com • WWW: http://www:mts-cnc.com
Berlin, May 1995ofp, June 1998 akss, ofp, July 1998 BM;

All rights reserved, including photomechanical reproduction and storage on electronic media.

DIN (Deutsche Industrie Norm), is the German Standard Specification as defined by the "Deutsches Institut für Normung e. V."
MS-DOS is a trademark of Microsoft Corporation
PAL is short for "Prüfungs- Aufgaben und Lehrmittelentwicklungsstelle" (Institute for the Development of Examination Standards and
Training Aids), a division of the "IHK Mittlerer Neckar" (Chamber of Industry and Commerce of the Middle-Neckar Region)
Contents

Table of Contents

0 Introduction.....................................................................................................................9
0.1 CNC Simulator Turning with Driven Tools and Counter Spindle ...........................................................10
0.2 Changes and Supplements to the Version 5.x ......................................................................................11

1 Basic Geometry ............................................................................................................13


1.1 The Coordinate System .........................................................................................................................13
1.2 Reference Points ...................................................................................................................................15
1.3 Absolute Dimensioning, Incremental Dimensioning ..............................................................................17
1.4 Tool Geometry.......................................................................................................................................19
1.4.1 Compensation Value Storage .......................................................................................................21
1.4.2 Tool Nose Compensation TNC .....................................................................................................23

2 Introduction into NC Programming.............................................................................25


2.1 Structure of an NC Block (Format) ........................................................................................................25
2.2 Modal Commands and Non-modal Commands ....................................................................................26
2.3 Application and Representation of Addresses.......................................................................................27

3 Miscellaneous Functions (M-Functions) .................................................................... 28


3.1 Activate/Deactivate Spindle ...................................................................................................................28
3.2 Coolant ..................................................................................................................................................28
3.3 Programmed Halt ..................................................................................................................................28
3.4 Program End .........................................................................................................................................29
3.5 Lock / Unlock Centre Sleeve .................................................................................................................29
3.6 Feedrate ................................................................................................................................................29
3.7 Spindle Speed .......................................................................................................................................29
3.8 Tool Change ..........................................................................................................................................30

4 Programming Commands in Compliance with DIN 66025 ........................................31


4.1 Rapid Traverse G00 ..............................................................................................................................33
4.2 Linear Interpolation in Slow Feed Motion G01.......................................................................................35
4.3 Clockwise Circular Interpolation G02 ....................................................................................................36
4.4 Circular Interpolation Counter-Clockwise G03 ......................................................................................37
4.5 Dwell G04 ..............................................................................................................................................38
4.6 polygonal machining G08 ......................................................................................................................38
4.7 In-Position Programming (Deceleration) G09 .......................................................................................39
4.8 Inch Data Input G20 ..............................................................................................................................40
4.9 Metric Data Input (mm) G21..................................................................................................................41

© MTS GmbH 1998 3


Contents

4.10 Invocation of a Subprogram G22........................................................................................................ 43


4.11 Repeated Program Parts G23 ............................................................................................................ 44
4.12 Unconditional Jump G24..................................................................................................................... 45
4.13 Move to the Reference Point G25....................................................................................................... 46
4.14 Move to the Tool-Changing Position G26 ........................................................................................... 47
4.15 Positioning the Tailstock G28 ............................................................................................................. 48
4.16 Thread Cutting G33 (Chasing Cycle).................................................................................................. 50
4.17 Tool Nose Compensation G41 / G42.................................................................................................. 52
4.18 Cancel Tool Nose Compensation G40 ............................................................................................... 52
4.19 In Rapid Travel Movement to the Target Position G48....................................................................... 53
4.20 Description of a Final Contour G51..................................................................................................... 55
4.21 Define Workpiece Zero - Absolute: G54 - G56 and G58.................................................................... 57
4.22 Incremental Zero Shift G59................................................................................................................. 59
4.23 Cancel Incremental Zero Shift G53 .................................................................................................... 60
4.24 Activate Absolute Dimensions G90..................................................................................................... 61
4.25 Activate Incremental Dimensions G91................................................................................................ 62
4.26 Spindle Speed Limitation G92 ............................................................................................................ 63
4.27 Feedrate (Millimeters per Minute) G94 ............................................................................................... 64
4.28 Feedrate (Millimeters per Revolution) G95......................................................................................... 65
4.29 Constant Cutting Speed G96 .............................................................................................................. 66
4.30 Cancel Constant Cutting Speed G97.................................................................................................. 66

5 Cycles ............................................................................................................................67
5.1 Complete Table of Available Cycles ..................................................................................................... 67
5.2 Threading Cycle G31 ............................................................................................................................ 69
5.3 Travel Range Limitation G36 for Multipass Cycles ............................................................................... 72
5.4 Finishing Allowance G57 ...................................................................................................................... 73
5.5 Straight Roughing Cycle / Rectangular Contour G75 ........................................................................... 77
5.6 Cross Roughing Cycle / Rectangular Contour G76 .............................................................................. 79
5.7 Clearance Cutting Cycle: G78 .............................................................................................................. 81
5.8 Thread Undercut G78 in Compliance with DIN 76................................................................................ 85
5.9 Recessing Cycle with chamfers, roundings and bevelled sides G79 ................................................... 87
5.10 Straight Roughing Cycle for any Contour G81 .................................................................................... 88
5.11 Cross Roughing Cycle with any Contour G82..................................................................................... 98
5.12 Processing Cycle (Last Specified Cycle) G80 .................................................................................. 107
5.13 Contouring Cycle/Multipass Cycle G83............................................................................................. 111
5.14 Travel Range Limitation for Multipass Cycles G36 ........................................................................... 113
5.15 Deep Drilling Cycle G84.................................................................................................................... 115
5.16 Clearance Cutting Cycle G85 ........................................................................................................... 117
5.17 Thread Undercut in Compliance with DIN 76 ................................................................................... 121
5.18 Recessing Cycle for rectangular recesses G86................................................................................ 123

4 Programmer's Guide for CNC Turning, Version 6.07


Contents

5.19 Recessing Cycle for any Contour G87 ..............................................................................................124


5.20 Radius/Chamfer Cycle G88...............................................................................................................131
5.21 Straight/Plane Roughing Cycle (conical contour) G89 ......................................................................135

6 Segment Contour Programming ...............................................................................142


6.1 G-Functions for Contour String Programming.....................................................................................142
6.2 Additional Addresses ...........................................................................................................................146
6.2.1 Circle Centres Absolute...............................................................................................................147
6.2.2 Tangential Transitions .................................................................................................................148
6.2.3 Selection of Solutions ..................................................................................................................151
6.3 Rounding between Two Entities ..........................................................................................................157
6.3.1 Chamfer between Two Lines.......................................................................................................159
6.4 Two-Point String: Straight Line G71 ....................................................................................................160
6.5 Two-Point String: Arc G72/G73 ..........................................................................................................162
6.6 Three-Point String: Line - Line G71G71 .............................................................................................166
6.7 Three-Point String: Arc - Line G72G71 or G73G71 ............................................................................170
6.8 Three-Point String: Line - Arc G71G72 or G71G73 ...........................................................................176
6.9 Three-Point String: Arc - Arc G72G72 or G72G73 or G73G72 or G73G73 ........................................183
6.10 Four-Point String:with Tangential Transitions....................................................................................188
6.11 Open Contour Strings........................................................................................................................194
6.12 Tangential Connection.......................................................................................................................201

7 Parameters ..................................................................................................................205

8 Programming with Special Characters..................................................................... 207


8.1 Comments ...........................................................................................................................................207
8.2 Skipping of NC blocks .........................................................................................................................207
8.3 Temporary Free Format ......................................................................................................................209
8.4 Arithmetic Operations ..........................................................................................................................209
8.5 Example of Programming with Parameters and Arithmetic Operations ..............................................213

9 Setup Form..................................................................................................................215
9.1 Preface ................................................................................................................................................215
9.2 Syntax of the Setup Form....................................................................................................................217
9.3 Setup Data: Beginning/End Indicator...................................................................................................218
9.4 Setup Data: Configuration Files...........................................................................................................218
9.5 Setup Data: Blank................................................................................................................................219
9.6 Setup Data: Prefabricated Part............................................................................................................221
9.7 Setup Data: Clamping Devices............................................................................................................222
9.8 Setup Data: Clamping Mode ...............................................................................................................223
9.9 Setup Data: Tailstock/Sleeve ..............................................................................................................224
9.10 Setup Data: Chucking Depth .............................................................................................................224

© MTS GmbH 1998 5


Contents

9.11 Setup Data: Counter Spindle ............................................................................................................ 225


9.12 Setup Data: Current Tool .................................................................................................................. 226
9.13 Setup Data: Tools in the Turret......................................................................................................... 226
9.14 Setup Data: Driven Tools.................................................................................................................. 227
9.15 Setup Data: Compensation Values................................................................................................... 230

10 NC Program Analysis ...............................................................................................231

11 3D-View .....................................................................................................................233

12 CNC-Turning with the Counter Spindle .................................................................. 235


12.1 Preface.............................................................................................................................................. 235
12.2 Configuration..................................................................................................................................... 237
12.3 Programming the Counter Spindle ................................................................................................... 238
12.3.1 Machining Transfer to the Main Spindle G29 ........................................................................... 238
12.3.2 Work Part Transfer G30 ........................................................................................................... 239
12.3.3 Incremental Shift of the Counter Spindle Reference Point (when Programming Travel
Movements) G59 ................................................................................................................................. 240
12.3.4 Travel Movement of the Counter Spindle in Rapid Speed Movement G00.............................. 241
12.3.5 Travel Movement of the Counter Spindle with Infeed F in mm/min G01.................................. 242
12.3.6 Counter Spindle to the Counter Spindle Reference Point G27................................................. 243
12.3.7 Switching on Machining on the Counter Spindle G28............................................................... 244
12.3.8 Bar feed for work parts in the main spindle G05 ...................................................................... 246

13 CNC Turning with Driven Tools...............................................................................247


13.1 Preface.............................................................................................................................................. 247
13.2 Configuration..................................................................................................................................... 251
13.3 Turning Plane G14............................................................................................................................ 252
13.4 Standard Plane G15 ......................................................................................................................... 253
13.5 Free-definable Plane G16................................................................................................................. 254
13.6 Programming the Selection of the Free-definable Plane G16 .......................................................... 259
13.7 Machining Cycles in the Free-definable Plane G16 .......................................................................... 262
13.7.1 Face Milling Cycle G60 ............................................................................................................. 262
13.7.2 Drilling Cycle G61 ..................................................................................................................... 264
13.7.3 Thread Tapping G62................................................................................................................. 265
13.7.4 Reaming/Boring G63 ................................................................................................................ 266
13.7.5 Square Pocket/Groove G64...................................................................................................... 267
13.7.6 Circular Pocket G65.................................................................................................................. 268
13.7.7 Tapping G66 ............................................................................................................................. 269
13.8 Multiple Cycles in the Free-definable Plane G16 .............................................................................. 270
13.8.1 Cycle on a Circle G67 ............................................................................................................... 270
13.8.2 Cycle on a Radius G68 ............................................................................................................. 271
13.8.3 Cycle at a Point G69 ................................................................................................................. 272
13.9 Front Face G17................................................................................................................................. 273
13.9.1 Rapid Speed Movement in Polar Coordinates G10.................................................................. 274
13.9.2 Linear Interpolation in Polar Coordinates G11.......................................................................... 275
13.9.3 Circle Interpolation in Polar Coordinates Clockwise G12 ......................................................... 276
13.9.4 Circle Interpolation in Polar Coordinates Counterclockwise G13 ............................................. 277
13.10 Machining Cycles in the Front Face G17 ........................................................................................ 278
6 Programmer's Guide for CNC Turning, Version 6.07
Contents

13.10.1 Drilling Cycle G61 ....................................................................................................................278


13.10.2 Thread Cutting G62.................................................................................................................279
13.10.3 Reaming/Boring G63 ...............................................................................................................280
13.10.4 Square Pocket/Groove G64 ....................................................................................................281
13.10.5 Circular Pocket G65 ................................................................................................................282
13.10.6 Tapping G66............................................................................................................................283
13.11 Multiple Cycles in the Front Face G17.............................................................................................284
13.11.1 Cycle on a Circle G67..............................................................................................................284
13.11.2 Cycle on a Radius G68............................................................................................................285
13.11.3 Cycle at a Point G69................................................................................................................286
13.12 Shell Surface - G18 .........................................................................................................................287
13.12.1 Rapid Speed Movement in Cylinder Coordinates G10 ............................................................289
13.12.2 Interpolation of Straight Lines in Cylinder Coordinates G11....................................................290
13.12.3 Circle Interpolation in Cylinder Coordinates Clockwise G12 ...................................................291
13.12.4 Circle Interpolation in Polar Coordinates Counterclockwise G13 ............................................292
13.13 Machining Cycles in the Shell Surface G18.....................................................................................293
13.13.1 Drilling cycle G61.....................................................................................................................293
13.13.2 Thread Cutting G62.................................................................................................................294
13.13.3 Reaming/Boring G63 ...............................................................................................................295
13.13.4 Square Pocket/Groove G64 ....................................................................................................296
13.13.5 Circular Pocket G65 ................................................................................................................297
13.13.6 Tapping G66............................................................................................................................298
13.14 Multiple Cycles in the Shell Surface G18.........................................................................................299
13.14.1 Cycle on a Circle G67..............................................................................................................299
13.14.2 Cycle on a Radius G68............................................................................................................300
13.14.3 Cycle at a Point G69................................................................................................................301
13.15 Chord Surface G19..........................................................................................................................302
13.16 Machining Cycles in the Chord Surface G19...................................................................................304
13.16.1 Plane Milling Cycle G60...........................................................................................................304
13.16.2 Drilling Cycle G61 ....................................................................................................................306
13.16.3 Thread Cutting G62.................................................................................................................307
13.16.4 Reaming/Boring G63 ...............................................................................................................308
13.16.5 Square Pocket/Groove G64 ....................................................................................................309
13.16.6 Circular Pocket G65 ................................................................................................................310
13.16.7 Tapping G66............................................................................................................................311
13.17 Multiple Cycles in the Chord Face ...................................................................................................312
13.17.1 Cycle on a Circle G67..............................................................................................................312
13.17.2 Cycle on a Radius G68............................................................................................................313
13.17.3 Cycle at a Point G69................................................................................................................314

Appendix : Table of Programmable Addresses ..........................................................315

Index ...........................................................................................................................................................318

© MTS GmbH 1998 7


Introduction

0 Introduction
Dear user of the MTS CNC Simulator Turning 6,
To make CNC Software for training and production means for us to follow
carefully the development of CNC machines and controls all the time.

With the target to give you an up-to-date product for the CNC programming of
machining processes with five controllable NC axes, driven tools and counter
spindle the MTS CNC Simulator is being constantly further developed and
updated.

These further developments are released as a new software version with


corresponding modifications of operating and programming manuals.

MTS Mathematisch Technische Software-Entwicklung GmbH

Regarding this edition This Programmer's Guide explains all available NC commands of the MTS
Programming Code. In addition to the DIN 66025 commands, the programming of
machining cycles and segment contour programming are explained. The MTS
Programming Code is non-proprietary, i.e. not any specific to any one
manufacturer's CNC control system.

The Programmer's Guide is structured as follows:

This Programmer's Guide explains all available NC commands of the MTS


Programming Code. In addition to the DIN 66025 commands, the programming of
machining cycles, segment contour programming, the programming of the counter
spindle and driven tools are explained.

The MTS Programming Code is non-proprietary, i.e. not any specific to any one
manufacturer's CNC control system.

The Programmer's Guide is structured as follows:

Part One presents and explains the basic techniques of NC programming.

Part Two, which is far more extensive, explains all commands which are part of the
MTS programming code. For reasons of clarity these have been arranged in three
main sections:

- DIN Commands
- Machining Cycles
- Segment Contour Programming (Contour Strings)
- Counter Spindle
- Driven Tools

This structure is intended to provide an easy introduction to NC programming even


for the unskilled user. The expert programmer may use the clearly structured listing
of commands as a quick-reference manual when confronted with complicated
tasks.

The general idea of the Programmer's Guide is to provide the user with
explanations and support as he becomes familiar with manual programming. All
mandatory and optional parameters are explained using NC Blocks and graphically
represented.

© MTS GmbH 1998 9


Introduction

0.1 CNC Simulator Turning with Driven Tools and Counter Spindle
Complete Machining The re-developed version 6 of the CNC system turning expands the performance
of the MTS CNC Simulator. In addition to improved programming of rotation
symmetrical machining it is possible to create and simulate easily NC programs for
complete machining with driven tools and a counter spindle. Both of the new
modules are optionally available to the new basic version of CNC Turning 6.

5 Controllable NC For the realization of complex machining tasks 5 controllable NC axes and driven
Axis: tools are available. It is possible to position the C axis exactly and to interpolate it,
X, Z, C, Y, B for instance, to generate geometries by overlaying tool movements. The turret can
additionally be moved in the Y axis and rotated in the B axis.

Counter Spindle To support rear side machining a special free-configurable counter spindle has
been realized on a track of its own for the work part take-over. Counter spindle and
turret can be configured alternatively. For machining on counter spindle a
complete programming code including the application of driven tools is available.

2D- and 3D-Repre- The dynamic simulation of machining with driven tools is carried out in the CNC
sentation in Simulator Turning in multiple windows technique enabling both 2D as well as 3D
Multiple Windows representations of the machining process. Hereby the contour of the work part
Technique being machined is being constantly updated.

Screen Layout in
CNC Simulator 6
Turning during
Machining with
Driven Tools

When machining with driven tools the following four windows are represented on
the screen:

1 2 1 Longitudinal section as a full section on X, Z plane based on


the current C axis (so-called C cut). The view can be shifted
and zoomed as desired. The window 2 is always represented
3 4
in the same scale as the window 1.
2 Section cut as a full section on X, Y plane. The Z coordinate of
the section can be selected in window 1.
3 Free-definable view of a work part or of the whole work space
of the CNC turning machine corresponding to window 1.
4 3D machining view. Distance and viewing angle in relation to
the work space can be changed as desired.
10 Programmer's Guide for CNC Turning, Version 6.07
Introduction

3D-Collision During machining processes with driven tools collision monitoring is carried out in
Monitoring 3D window. It considers the clamping device, the non-cutting parts of the tool
(shaft, take-over, turret) as well as the cutting part of the tool during rapid speed
movement of the tool.

NC Data Analysis The CNC Simulator Turning 6 offers as an effective function the possibility to
acquire production-relevant technology information during the simulation of an NC
program.

In the programming analysis of rotation-symmetrical machining the work phases


are represented as machining paths for each tool and the corresponding
technology data is acquired. After the analysis the following data referring to the
work phases is available as a table: machining diameter area, RPM, cutting speed,
feed-in, path, feed-in rate, rapid transfer speed, tool change time, cut volume, cut
mass. The analyzed data can be stored in the current NC program where it is
correspondingly available for further evaluation.

0.2 Changes and Supplements to the Version 5.x


Change of Due to the application of the address letter C for the programming of the C axis it
Address Letter was necessary to change the address letters.

Old: New:

C ð R Address letter for programming of


(Chamfer, Radius) chamfers and radii

R ð P Address letter for programming of


(Parameter identification letter) parameters

P ð O Address letter for programming of block


(Block number, alternative) numbers and choice of alternatives

C Positionable turning axis

Y Additional feed axis for the turret

B Additional swivel rotation axis for the turret


(depending on machine configuration and
of the current machining plane)

Exception: During contour programming of


G72/G73 B remains circle radius.

Summary of some When uniforming MTS syntax some of the commands were put together:
G-commands The previous cycles G87 (radius) and G88 (chamfer) were put together to G88.
This cycle can generate both radii and chamfers.

The previous cycles G65 (straight roughing cycle, conical contour) and G66 (plane
roughing cycle, conical contour) are replaced by the cycle G89.

Some new G To extend the performance of MTS syntax for the NC programming of rotation-
commands as symmetrical machining additional addresses were included in some G commands.
syntax extension
The parameters of the cycles G81 (straight roughing cycle of any contour) and G82
(plane roughing cycle of any contour) were extended. The parameters E, A, O and
Q have been added.

© MTS GmbH 1998 11


1. Basic Geometry

Examples P : X= 20, Y= 30

P : X=-20, Y= 15

P : X= 40, Y=-25

Diagram 1.1 : Cartesian Coordinate System

Angles of holes on a divided circle Determination of a point by the length L and


the angle A
Diagram 1.2 Diagram 1.3

Two-dimensional coordinate system for NC


programming for turning

Diagram 1.4

12 Programmer's Guide for CNC Turning, Version 6.07


1.1 Coordinate System

1 Basic Geometry
In this chapter we outline the basic mathematical and technical knowledge, as
required for NC programming.

1.1 The Coordinate System


An important part of an NC program is the description of tool motions (distances)
and their target points. To ensure correct execution of such commands, the
appropriate geometric dimensions must be precisely defined, so as to effect the
corresponding tool movement on the machine tool. It follows that a reference
system must be determined, within which the position of each desired point can be
specified. This is called a coordinate system.

Origin of the The coordinate system is composed of two axes at a right angle; each axis is
Coordinate System scaled, so that numeral values can be marked off on it. The intersection point of the
two axes is the origin (or zero point) of the coordinate system. As a rule the
horizontal axis is designated as the X axis, the vertical axis as the Y axis.

The coordinate system used for turning is different in that the horizontal axis is
designated as Z and the vertical axis is designated as X.

A plane coordinate system of this type is called a cartesian coordinate system.

Coordinates A coordinate system serves to definitely locate each point, by specifying its
coordinates (in numeral values) on the X and Y axes.

Example: The coordinates of point P1 are:


(see Diagram 1.1)
X = 20 and Y = 30,

i.e. the location of the point is defined by marking off (from the origin) the value 20
in the positive direction X and the value 30 in the positive direction Y.

Accordingly the coordinates of points P2 and P3 are as follows:

P2: X=-20, Y=15 P3: X=40, Y=-25

Polar In addition to the cartesian system, polar coordinates are used, e.g. in cases where
Coordinate System a large number of angle dimensions must be programmed.

Example:Pattern of drilled holes on a circle (see Diagram 1.2)

Polar coordinates are used to define the points on a plane by specifying:

the length L and the angle A

Coordinate System A two-dimensional coordinate system is used for turning. The Z-coordinate is
for CNC Turning marked off on the horizontal axis, the diameter X is set on the vertical (half) axis
(see Diagram 1.4).

© MTS GmbH 1998 13


1. Basic Geometry

Diagram 1.5 : Position and graphic symbols denoting the reference points of a CNC lathe

Diagram 1.6 : The dimensioning is dependent on the location of the workpiece zero.

Postaxial machining
Preaxial machining
Diagram 1.7 : The coordinate system is dependent on the tool position

14 Programmer's Guide for CNC Turning, Version 6.07


1.2 Reference Points

1.2 Reference Points


To ensure that the control system of the machine will read the specified coordinates
correctly and effect the corresponding movements of the tool slide, the machine
tool has its own "coordinate system", which is called a "reference system". The
following reference points are part of this system (see Diagram 1.5):

Machine Zero The origin of the reference system is called the machine zero (or datum). It is
defined by the manufacturer and cannot be modified.

Reference Point A point within the travel range of the turret reference point is determined as the
reference point to which the coordinate systems of the slide axes relate. With
lathes using an incremental system of coordinates, the tool must be moved to the
reference point after each startup of the machine. When absolute measuring
systems are employed, it is not necessary to move it to the reference point. The
appropriate type of machine can be determined in the configuration program (cf.
Configuration Manual).

Tool Reference Point All tool slide movements executed by the control system, according to the specified
coordinates, will relate to the tool reference point, which is situated on the front
face of the tool mounting. To compute the target position of the tool tip, the control
system needs to be informed of the tool compensation value, denoting the
distance between the tool reference point and the tool nose. From these differential
values the system will compute the distances to the target point. (cf. Section 1.4:
Tool Geometry - Compensation Values).

Workpiece Zero The workpiece zero, as related to the machine zero, can be determined at will. It is
advisable, however, to define the workpiece zero as identical to the origin (zero
point of the coordinate system) of the workpiece design drawing - in this way the
dimensions can be read in directly from the drawing.

F
If the workpiece zero is located on the right front face of the workpiece
(see Diagram 1.6), the Z coordinates must be programmed with a negative
sign.

Tool Position Note: the coordinate system is also dependent on the position of the tool slide,
which may be either "in front of" or behind" the centre line as viewed from a position
in front of the machine tool (i.e. to the right or the left of the rotational axis of the
workpiece, as seen from the drive / clamped side), depending on the make of the
lathe (see Diagram 1.7). In this manual the corresponding differentiation of tools
and their position are be denoted by the terms "preaxial / postaxial".

© MTS GmbH 1998 15


1. Basic Geometry

Absolute Dimensioning :

All specified dimensions are related to the


same point, which is the dimensioning
reference point

Incremental Dimensioning:

Starting from the origin of the coordinate


system, the distance between the current
point and the preceding point is measured.

Diagram 1.8

Tool motions according


to the absolute
dimensioning system:

The tool moves to Z 50.

Tool motions according to the


incremental
dimensioning system:

The tool moves by the value 30 in the


negative direction Z.

Diagram 1.9

16 Programmer's Guide for CNC Turning, Version 6.07


1.3 Absolute / Incremental Dimensioning

1.3 Absolute Dimensioning, Incremental Dimensioning

(Relative Dimensioning)
The following dimensioning systems are commonly used with design drawings
(see Diagram 1.8):

Absolute Dimensioning In the absolute system all dimensions relate to the origin (zero point) of the
(Fixed Zero System) coordinate system, which is also called the dimensioning reference point.

Incremental Contrary to the absolute system, the incremental dimensioning system is based on
Dimensioning the specification of the distance between a current point and its preceding point on
an axis. Because in this system a sequence of additive dimensions is produced, it
is called incremental.

Depending on the type of dimensioning used in the drawing, the tool motions of an
NC program can be programmed either in the absolute or in the incremental
system of coordinates. (see Diagram 1.9).

© MTS GmbH 1998 17


1. Basic Geometry

Cross turning and roughing tool Finishing tool


Diagram 1.10

Diagram 1.11

The angular position of the reversible tip is The angular position of the reversible tip is less
greater than the infeed angle than the infeed angle

Diagram 1.12

18 Programmer's Guide for CNC Turning, Version 6.07


1.4 Tool Geometry

1.4 Tool Geometry


The applications of a turning tool are determined by its geometry: the tool nose
angles of a corner tool for cross turning or roughing, for instance, should be smaller
than those of a finishing tool (see. Diagram 1.10). Important parameters of the tool
geometry are (see Diagram 1.11) :

- Tool nose angles


- Angle of the reversible tip
- Length / Width of the tool nose
- Tool nose radius

Further important parameters are (with internal tools):

- length and diameter of the shank


- minimum diameter

and (with twist drills):

- diameter
- maximum drilling depth

Angular Position of The angular position of the reversible tip is of critical importance especially with the
the Reversible Tip generation of falling contours, because it determines the maximum possible angle
at which the tool feeds down towards the interior of the workpiece (infeed angle). If
the angle is less than the angle of the contour to be cut, the contour will be gouged
or the tool holder will collide with the workpiece contour. (see Diagram 1.12).

F
The maximum angle at which the tool feeds down into the workpiece should be
determined to be, as a rule, 2-3° smaller than the adjustable angular position of the
reversible tip.

Minimum Diameter The minimum diameter of a drilled hole allowing the insertion of a tool (e.g. internal
recessing tool) without touching the surface of the workpiece.

© MTS GmbH 1998 19


1. Basic Geometry

The tool compensation value in Z is determined The tool compensation values in X and Z are
by the distance on the Z-axis between the determined by the distances between the tool nose
cutting point and the tool reference point. and the tool reference point in the direction of the X
and Z axes.
Diagram 1.13 : Tool compensation

Example: Radius 0,4 Example: Radius 0,4


X=-0,400 X=-0,231
Y=-0,400 Y=-0,400
Diagram 1.14 : The compensation vector determines the position of the tool nose

Diagram 1.15 : A comparison of tooling quadrants and TNC vectors (CNC lathe for tooling
behind centre)

20 Programmer's Guide for CNC Turning, Version 6.07


1.4.1 Compensation Value Storage

1.4.1 Compensation Value Storage


In computing the tool motions the control system relates all programmed
coordinates to the tool reference point which is situated at the stop face of the tool
mounting. Given the various tool geometries, the distance between the tool nose
and the reference point will of course vary from tool to tool.

It follows that the distance between the theoretical cutting point of the tool nose
and the tool reference point must be determined for every tool, so that the actual
tool path can be computed. Each of these differential values is stored as a tool
compensation value in a corresponding compensation value storage.

When a programmed tool change is to be executed in the course of an NC


program, the system will read in the applicable compensation value storage, to
account for the tool geometry in computing the tool path. Tool nose geometry data
are the following:

- distance in X from the tool reference point


- distance in Z from the tool reference point
- radius of the tool nose
- tooling quadrant or compensation vector

Compensation The control system must be informed of the distances in the directions X and Z
Values between the theoretical cutting point of the tool nose and the tool reference point for
each tool to be used (see Diagram 1.13). These differential values are stored in
corresponding compensation value storages. In computing the feed motion of a
selected tool, the control system accounts for the applicable compensation values,
to the effect that the tool nose (i.e. the theoretical cutting point) feeds precisely to
the programmed target position.

Tool Nose In computing the cutter path, the control system assumes a theoretical cutting
Compensation point. The actual cutting edge of the tool nose however is rounded, with a radius
Vector ranging from some tenths of a millimeter to a circular tip.

With each tool the theoretical cutting point of the tool nose must be defined by
the tool nose compensation vector (TNC vector) to make sure that the control
system can compute the path of the actual cutting point in the execution of a cycle.

The TNC vector defines the theoretical position of the tool nose (in the directions X
and Z) relative to its centre (see Diagram 1.14). The tool management predefines a
TNC vector for every tool available in the Simulator system.

Quadrants Alternatively the TNC vector can be determined by eight tooling quadrants (as
shown in Diagram 1.15 ). This is common practice and applicable to standard
cases. cannot, however, be applied in all cases.

© MTS GmbH 1998 21


1. Basic Geometry

P Theoretical tool nose


(cutting point)
M Tool nose Centre

The actual cutting point of the reversible tip


is dependent on the direction of cut.

Diagram 1.16 :

If tool nose compensation is not selected,


the actual machining will deviate from the
programmed contour on the rising and
falling segments of a contour, due to the
radius of the tip of the tool.

Diagram 1.17 :

--- Offset Path


M Tool Nose Centre

If the tool nose compensation (TNC) is


selected the system computes the motion
of the tool nose centre on an offset path
equidistant to the contour, i.e. the actual
cutting point will move exactly along the
programmed contour of the workpiece.

Diagram 1.18 :

22 Programmer's Guide for CNC Turning, Version 6.07


1.4.2 Tool Nose Compensation (TNC)

1.4.2 Tool Nose Compensation TNC


The actual cutting point of the reversible tip will change in the course of machining,
according to the direction of motion of the tool. (see Diagram 1.16).

In computing the tool motion the control system assumes the movement of the
theoretical cutting point of the tool nose along the programmed contour. Every time
the tool executes a programmed movement not parallel to either the X- or Z-axis,
however, deviations from the desired contour and the corresponding dimensions
will occur, due to the radius of the tip of the tool employed (see Diagram 1.17).

When tool nose compensation is activated, the control system will compute the
path of the centre of the tool nose, equidistant to the contour, accounting for
the radius. Taking account of either the tooling quadrant or the TNC vector, the
theoretical cutting point is shifted to the centre of the tool nose radius, which will
then be computed to move on the path accordingly offset from the programmed
contour (see Diagram 1.18).

© MTS GmbH 1998 23


2. Introduction into NC Programming

N Block Number
G G- Command

ÃÄ Coordinates of the Target Position

F Feed

S Speed

T Tool Number/Turret Position

M Switches and Machine Functions (Spindle, Coolant ...)

Diagram 2.1 : Sequence of Words within an NC Block

24 Programmer's Guide for CNC Turning, Version 6.07


2.1 NC Block Format

2 Introduction into NC Programming


A distinct program structure is essential for the generation of NC programs. Most
importantly, the process of detecting eventual program errors will be much
facilitated by a clear structure - especially if this task is carried out by a different
programmer.

2.1 Structure of an NC Block (Format)


Unlike the conventional lathe, a modern machine tool will be equipped with a
numerical control system. The machining of a workpiece can be executed
automatically, provided that each operational step has been described in a
"language" (code) which can be read by the control system. The collection of coded
descriptions referring to a workpiece is called an NC program.

Blocks Each NC program comprises a number of so-called blocks, which contain the
commands to be executed.
These blocks are consecutively numbered; each block number consisting of the
letter "N" plus a (e.g. three-digit) numeral. Block numbers appear at the beginning
of each program line.

Words As a rule an NC block is comprised of several words. Each word consists of an


Address, Value address (letter) and a value or code (numerals).

Example N110 G01 X+60 M03


| | | |
Block No. Word Word Word

A numeral may either denote a code (e.g. G01: Linear Feed Motion ) or a value
(e.g. X+60 : Approaching the Target Coordinate X=60).

Word Word Word

G 01 X 60 F 0.07
| | | | | |
Address Code Address Value Address Value

© MTS GmbH 1998 25


2. Introduction into NC Programming

2.2 Modal Commands and Non-modal Commands


Modal commands are self-retentive, i.e. they will take effect in consecutive NC
blocks, until they are deleted or overwritten by a command at the same address.
Non-modal commands instead are "block-oriented", they will be active only in the
block in which they are programmed.

Examples of modal commands are: spindle speed, feedrate, sense of rotation, tool
selection etc. Once entered, these commands will remain active also with the
subsequently programmed blocks.

Example: N115 F0.07 S1800 M03


N120 G01 Z-60
N125 X+70
N130 Z-85

Explanation: Block No.


(see Diagram 2.2)
N115 A feedrate of 0,07 mm/rev and a spindle speed of 1800 r.p.m., with clockwise
spindle rotation, is programmed.
This technology data is automatically retained to take effect through NC
blocks N120 to N130.

N120 The tool moves on a straight line (G01) from its current position to the target
position Z=-60.

N125 Because G01 is a modal command, the tool moves once again on a (vertical)
straight line upwards to X=70.

N130 The tool moves horizontal to Z=-85

Diagram 2.2 : Tool motions effected by modal commands (G01) for roughing

26 Programmer's Guide for CNC Turning, Version 6.07


2.3 Application and Representation of Addresses

2.3 Application and Representation of Addresses


As a rule, an NC command contains several addresses. These addresses must be
discriminated as mandatory addresses (which must be programmed) and optional
addresses (which may be programmed). In addition to this there are certain
addresses which must always be programmed together (combined addresses) as
well as others which cannot be programmed together (alternative addresses).

To distinguish between the mandatory and optional addresses, as well as the


combined and alternative addresses, in this guide the following mode of
representation is applied:

Addresses that must be programmed with a specific NC command ("mandatory


addresses") appear in a separate NC block, without any additional program
information.

Example G96 S...


When the G96 command (constant cutting speed) is programmed, the address S,
followed by the desired value, is a mandatory entry to this block.

Addresses which are not mandatory but may instead be programmed with a
specific command ("Optional Addresses") appear in brackets in the applicable
program line .

Example G78 X... Z... L... O... [D...] [I...]


In this example of an NC block, the addresses X, Z, L and O must be programmed.
Only the programming of the addresses D and I is optional.

When one of the given addresses must or may be programmed, they appear
together, separated by a slash.

Example G75 X... Z... S.../D...


In this case one of the addresses S and D must be programmed, i.e. either S or D.

Addresses that must always be programmed together (combined addresses) are


written together, without any separating sign.

Example G82 K... [X... Z...] [R... V...] [H... W...] [L...] [E...] [A...] [O...] [Q...]
If X is programmed, Z must be programmed as well. If R is programmed, V must
be programmed as well just so if H is programmed, W must be programmed as
well (and vice versa).

© MTS GmbH 1998 27


3. Miscellaneous Functions

3 Miscellaneous Functions (M-Functions)


With each NC block a number of additional functions (commonly referred to as
miscellaneous functions or M-Functions) can be programmed. These are often
machine functions and switches, e.g. to specify the feedrate, the spindle speed and
the tool change.

3.1 Activate/Deactivate Spindle

M03 Activate Spindle - Right-Hand Rotation (Clockwise)

M04 Activate Spindle - Left-Hand Rotation (Counter-Clockwise)

M05 De-Activate Spindle

M04: Spindle rotation counter-clockwise

The sense of rotation is determined as


seen from the drive, i.e. in the line of
view of the positive Z-axis.

3.2 Coolant

M07 Activate pump - Coolant 1

M08 Activate pump - Coolant 2

M09 De-activate coolant pump

3.3 Programmed Halt

M00 After the execution of a block which contains the command M00, the
program execution will be halted, to allow gauging of the workpiece.

28 Programmer's Guide for CNC Turning, Version 6.07


3.4 Program End

3.4 Program End

M30 This command serves to terminate the program. The spindle rotation
and the coolant pump will be deactivated and the automatic program
run is terminated. All incremental or rotary zero shifts (G59) are
undone (with older types of NC lathes the punched tape will be
rewound).

M02 The system quits the automatic mode after execution of that NC block
in which M02 has been programmed ( with older types of NC lathes
the punched tape will not be rewound).

M99 This command terminates a subprogram. The control system will


return to the main program and continue the program run from the
command in the respective program line which is subsequent to the
subprogram invocation.

3.5 Lock / Unlock Centre Sleeve

M20 If the tailstock has been selected, the M20 command serves to lock
the centre sleeve.

M21 The M21 command unlocks the sleeve.

3.6 Feedrate

F... The feedrate is programmed in millimeters per revolution (mm/rev) .

Example: F000.200

Here the programmed feedrate is 0,2 millimeters per revolution.

F
Alternatively the feedrate may be programmed in millimeters per minute (see G94
and G95).

3.7 Spindle Speed

S... The spindle speed is programmed in revolutions per minute (RPM) .

Example: S1800

Here the programmed spindle speed is 1800 revolutions per minute.

© MTS GmbH 1998 29


3. Miscellaneous Functions

3.8 Tool Change

T... A tool change is programmed by a four-digit number at the address T.


The first two digits designate the tool position in the turret, the last two
digits indicate the tool compensation storage.
Example: T0808

Programming of this number effects the insertion of the correct tool at


the turret position 8 as well as the concurrent loading of tool
compensation storage No. 8.

In the CNC Simulator there is a maximum of 16 turret positions


available, as well as 99 compensation value storage registers. This
provides the opportunity, for example, to assign the compensation
value storage No. 36 to the tool in the turret position No. 12, if this
seems applicable. The corresponding NC command would then be:
T1236

F
If you decide to program an NC block containing one or several M - functions
together with a G-command, please take care to observe the proper sequence of
command execution, as listed in the following table:

To be executed prior To be executed after


to the G-command: the G-command

M03/M04Activate spindle M00 Programmed halt

M07/M08Activate coolant M02 Program end without backspacing

M20/M21Lock/Unlock Sleeve M05 De-activate spindle

F Feedrate M09 De-activate coolant

S Speed M30 Program end and backspacing

T Tool change M99 Subprogram end

An NC block may contain a maximum of three M-commands.

30 Programmer's Guide for CNC Turning, Version 6.07


Rapid Traverse G00

4 Programming Commands in Compliance with DIN 66025


Table of available DIN commands:

G00 Rapid Traverse

G01 Linear Interpolation in Slow Feed Motion

G02 Circular Interpolation Clockwise

G03 Circular Interpolation Counter-clockwise

G04 Dwell

G09 In-Position Programming (Deceleration)

G20 Unit of Measurement: (Inch)

G21 Unit of Measurement: (mm)

G22 Subprogram Invocation

G23 Repeated Program Part (Routine)

G24 Unconditional Jump Instruction

G25 Move to the Reference Point

G26 Move to the Tool Changing Position

G28 Positioning of the Tailstock

G33 Threading

G40 Cancel Tool Nose Compensation

G41/G42 Tool Nose Compensation to the left/right of the Contour

G51 Programmed Contour

G53 Cancel Incremental Zero Shift

G54 - G56, G58 Set Absolute Zero

G59 Incremental Zero Shift

G90 Activate Absolute Dimensioning

G91 Activate Incremental Dimensioning

G92 Speed Limitation

G94 Feedrate (mm/min)

G95 Feedrate (mm/rev)

G96 Constant Cutting Speed

G97 Cancel Constant Cutting Speed

© MTS GmbH 1998 31


G00 Rapid Traverse

Programming
Absolute Dimensions:

N... G90
N...

ò
N...
N115 G00 X+30 Z+5

Diagram G00.1 : Programming absolute dimensions - the tool moves to the point X=30/Z=5.
In this example the X-coordinate is programmed relative to the
diameter.

Programming Incremental
Dimensions:

N... G91
N...

ò
N...
N115 G00 X-12,5 Z-35

Diagram G00.2 : Programming incremental dimensions - the tool moves in the direction X by
the value 12.5 and in the direction Z by the value -35 .
Positioning the tool at X+30 / Z+5 will be possible only if the tool has been
positioned at X+55, Z+40 (start position) in the preceding block.
In this example the X-coordinate is programmed relative to the radius.

32 Programmer's Guide for CNC Turning, Version 6.07


Rapid Traverse G00

4.1 Rapid Traverse G00


Function The tool moves at the maximum possible speed to the target position as
programmed by the X- and Z- coordinates. These coordinates may either be
programmed in the absolute system (G90) or in the incremental system (G91).

NC Block G00 [X...]1) [Z...]1) [F...] [S...] [T...] [M...]

Optional Addresses X X-Coordinate of the Target Point


Z Z-Coordinate of the Target Point

1) Ifa tool movement parallel to an axis is desired, the respective target coordinate
will be identical with that of the current tool position. It does not have to be
programmed separately, as the coordinate address is self-retentive.

If none of the coordinates in X and Z has been programmed, only the rapid traverse
function will be retained.

F Feedrate (mm/rev)
S Speed (RPM)
T Tool Change
M Additional Function

Programming Hints If a tool change, a change of the feedrate and/or a change of spindle speed is
programmed within the same NC block, the tool change will be executed first; the
change of speed is effected at the beginning of the tool movement, while at the
same time the feedrate value is entered to the register.

A maximum of three M-commands may be programmed; their respective order of


execution is described in Section 3 ("Miscellaneous Functions").

F
When absolute dimensioning (G90) is operative, the X-coordinate is
programmed relative to the diameter of the workpiece.

When incremental dimensioning (G91) is operative, the X-coordinate is


programmed relative to the radius of the workpiece.

© MTS GmbH 1998 33


G01 Linear Interpolation in Slow Feed Motion

Example for Programming


Absolute Dimensions:

N... G90
N...

ò
N...
N115 G01 X+140 Z-90

Diagram G01.1 : Programming absolute dimensions - the tool moves to the point X=140, Z=-90.
The X-coordinate is programmed relative to the diameter.

Example for Programming


Incremental Dimensions

N... G91
N...

ò
N...
N115 G01 X+20 Z-60

Diagram G01.2 : Programming incremental dimensions - the tool moves in the direction X by the
value 20 and in the direction Z by the value-60 .

Positioning the tool at X+140, Z-90 will be possible only if the tool has been
positioned at X+100, Z-30 (start position) in the previous block.
The X-coordinate is programmed relative to the radius.

34 Programmer's Guide for CNC Turning, Version 6.07


Linear Interpolation in Slow Feed Motion G01

4.2 Linear Interpolation in Slow Feed Motion G01


Function The tool moves at the programmed feedrate to the target position as determined by
the X- and Z- coordinates. These coordinates may either be programmed in the
absolute system (G90) or in the incremental system (G91).

NC Block G01 [X...]1) [Z...]1) [F...] [S...] [T...] [M...]


Optional Addresses X X-Coordinate of the Target Point
Z Z-Coordinate of the Target Point

1) If a tool movement parallel to an axis is desired, the respective target coordinate


will be identical with that of the current tool position. It does not have to be
programmed separately, as the coordinate address is self-retentive.
If none of the coordinates in X and Z has been programmed, only the slow feed
function will be retained.

F Feedrate (mm/rev)
S Speed (RPM)
T Tool Change
M Additional Function

Programming Hints If a tool change, a change of the feedrate and/or a change of speed has been
programmed within the same NC block, these functions will be executed before the
tool is moved to the target position.

A maximum of three M-commands may be programmed; their respective order of


execution is described in Section 3 ("Miscellaneous Functions").

F
When absolute dimensioning (G90) is operative, the X-coordinate is
programmed relative to the diameter of the workpiece.

When incremental dimensioning (G90) is operative, the X-coordinate is


programmed relative to the radius of the workpiece.

© MTS GmbH 1998 35


G02 Clockwise Circular Interpolation

4.3 Clockwise Circular Interpolation G02


Function The tool will move at the programmed feedrate clockwise on a circular arc to the
target position as defined by the coordinates in X and Z.

NC Block G02 [X...]1) [Z...]1) [I...]2) [K...]2) [F...] [S...] [T...] [M...]
Optional Addresses X X-Coordinate of the target point
When absolute dimensions are programmed (G91), X relates to the
workpiece diameter. When incremental dimensions are programmed
(G91), X relates to the workpiece radius.

Z Z-Coordinate of the target point


1) If a target coordinate is identical to the corresponding coordinate of the current tool
position, it does not have to be programmed, as the coordinate address is self-
retentive.

I Circle Centre Incremental (distance between the starting position and the
circle centre in the direction X, relative to the radius).

K Circle Centre Incremental (distance between the starting position and the
circle centre in the direction Z).

2) When I or K (as described above) are not programmed, the respective centre
coordinate is set to zero.

F Feedrate (mm/rev)
S Spindle Speed (RPM)
T Tool Change
M Additional Function

Programming Example:

N110 G01 X+80 Z-40


N115 G02 X+140 Z-106 I+45 K-20

Programming Hints The coordinates X and Z may either be programmed in the absolute system (G90)
or in the incremental system (G91). The default mode for definition of centre
coordinates I and K is incremental (relative to the starting point). In the
configuration program for the control system for turning the centre dimensioning
can be set to the absolute system (see Configuration Manual).
If a tool change, a change of the feedrate and/or a change of speed has been
programmed within the same NC block, these commands will be executed before
the tool is moved to the target position.

36 Programmer's Guide for CNC Turning, Version 6.07


Counter-Clockwise Circular Interpolation G03

4.4 Circular Interpolation Counter-Clockwise G03


Function The tool will move at the programmed feedrate counter-clockwise on a circular arc
to the target position as defined by the coordinates in X and Z.

NC Block G03 [X...]1) [Z...]1) [I...]2) [K...]2) [F...] [S...] [T...] [M...]
Optional Addresses X X-Coordinate of the target point
When absolute dimensions are programmed (G91), X is related to the
workpiece diameter. When incremental dimensions are programmed
(G91), X is related to the radius of the workpiece.

Z Z-Coordinate of the target point


1) Ifa target coordinate is identical to the corresponding coordinate of the current tool
position, it does not have to be programmed, as the coordinate address is self-
retentive.

I Circle Centre Incremental (distance between the starting position and the
centre of the circle in the direction X, relative to the radius).
K Circle Centre Incremental (distance between the starting position and the
centre of the circle in the direction Z).

2) When I or K (as described above) are not programmed, the respective centre
coordinate is set to zero.

F Feedrate (mm/rev)
S Spindle Speed (RPM)
T Tool Change
M Additional Function

Programming Example:

N110 G01 X+80 Z-50


N115 G03 X+140 Z-80 I-15 K-45

Programming Hints The coordinates X and Z may either be programmed in the absolute system (G90)
or in the incremental system (G91). The default mode for definition of centre
coordinates I and K is incremental (relative to the starting point). In the
configuration program for the control system for turning, the centre dimensioning
can be set to the absolute system (see Configuration Manual).

If a tool change, a change of the feedrate and/or a change of speed has been
programmed within the same NC block, these commands will be executed before
the tool is moved to the target position.

© MTS GmbH 1998 37


G04 Dwell

4.5 Dwell G04


Function The tool movement is halted for the specified dwell time.

NC Block G04 X...


Addresses X Dwell time in seconds

Programming example N120 G04 X2

Programming Hints The dwell time must be specified in seconds, at the address X.
The G04 command must be programmed in a separate NC block.

4.6 polygonal machining G08


Function The function G08 serves to machine an N polygon.

Condition The selected machining plane is the turning plane G14!

NC Block G08 O... V... W... [C...]


Optional Addresses O Number of corners of the N-polygon
V Length of the N-polygon
• V is positive:
the length is from the actual postion incremental in positive Z direction
• V is negative:
the length is from the actual postion incremental in negative Z direction
W Width of the N-polygon
• N is an even number:
the width of each polygon side D corresponds to the distance of two
opposite areas.
• N is an uneven number:
the width of each polygon side D corresponds to the distance of one side
to the opposite area.
C rotary angle of the N-polygon

Programming N50 G08 O006 V-072.000 W+040.00


example

3D view
of an hexagon

38 Programmer's Guide for CNC Turning, Version 6.07


In-Position Programming (Deceleration) G09

4.7 In-Position Programming (Deceleration) G09


Function When G09 is programmed as part of an NC block, the feedrate will be decelerated
to zero as the programmed contour point is approached. After the standstill at
precisely the programmed position, the tool motion is resumed and the the next
contour point, as programmed in the subsequent NC block, is approached.

NC Block G01 [X...]1) [Z...]1) G09 or

[X...]1) [Z...]1) G09


1) Ifa tool movement parallel to an axis is desired, the respective target coordinate is
identical to that of the current tool position. It does not have to be programmed, as
the coordinate address is self-retentive.

Explanation: As NC programs are executed continuously, i.e. without interruption of the feed
motion, position errors such as lags or overshots may occur. To move the tool
precisely to the programmed coordinates, the G09 command must be
programmed.

Programming Example:

N110 G00 X+40 Z-20


N115 G01 X+100 Z-35 G09
N120 G01 X+130 Z-60 G09
N125 G01 X+140 Z-95

Programming Hints The G09 command must be programmed at the end of the NC block.

© MTS GmbH 1998 39


G20 Inch Data Input

4.8 Inch Data Input G20


Function This command switches the unit of measurement from millimeters to inches.

NC Block G20

Explanation When this function has been programmed, all coordinate values must be specified
in inches. Accordingly the units of the following technology data will change:

1. the feedrate is specified in inches per revolution (in/rev) instead of


millimeters per revolution (mm/rev)
2. the cutting speed is specified in feet per minute (f/min) instead of meters per
minute (m/min).

Programming Hints The G20 command must be programmed in a separate NC block.


Switching the unit of measurement only takes effect within the current NC block.
Inches will be the active unit of measurement until the system is switched back (by
G21) to the millimeter unit.

At the end of each program (M30) the control system will automatically return to the
configured unit of measurement.

40 Programmer's Guide for CNC Turning, Version 6.07


Metric Data Input (mm) G21

4.9 Metric Data Input (mm) G21


Function This command serves to switch the unit of measurement from inches to
millimeters.

NC Block G21

Explanation When this function has been programmed, all coordinate values must be specified
in millimeter. Accordingly the units of the following technology data will change:

1. the feedrate is specified in millimeters per revolution (mm/rev) instead of


inches per revolution (in/rev)
2. the cutting speed is specified in meters per minute (m/min) instead of feet
per minute (f/min).

Programming Hints The G21 command must be programmed in a separate NC block.


Switching the unit of measurement only takes effect within the current NC block.
Millimeters will be the active unit of measurement until the system is switched back
(by G21) to the inch unit.

At the end of each program (M30) the control system will automatically return to the
configured unit of measurement.

© MTS GmbH 1998 41


G22 Subprogram Invocation

Programming Example:

N... G22 U1234


N...

ò
N...
N... G22 U5678

Diagram G22.1 : Invocation of various subroutines from a main program

Programming Example:

N... /01 G22 U1234


N...

ò
N...
N... /02 G22 U1234

Diagram G22.2 : Multiple invocation of a subprogram from a main program, wihth the
omission of certain NC blocks (optional block skip).

42 Programmer's Guide for CNC Turning, Version 6.07


Subprogram Invocation G22

4.10 Invocation of a Subprogram G22


Function After a subprogram invoked by the command G22 has been executed by the
control system, the main program will be resumed from the next block.

NC Block [/...] G22 U... [O...] [Q...] [S...]


Addresses U At the address U the name of the subprogram must be programmed.

Optional Addresses O number of the block where the subprogram starts.


Q number of the block where the subprogram ends.
S states the number of repetitions of the subprogram execution
/ The slash code serves to denote those NC blocks which are to be omitted in
the execution of the subprogram (see explanation below).

Explanation The programming of subroutines is recommended for the repeated execution of


certain program parts, e.g. for the "roughing" and then "finishing" of a contour.
When these cycles are executed as subprograms, repeated programming of the
contour becomes unneccessary.
Further subprograms can be invoked from a subprogram; up to eight subprograms
can be nested.

Optional Block Skip The address "/" (slash code) causes the control system to omit ("skip") certain NC
blocks during a subprogram run. A selection of blocks marked to be skipped
constitutes a "level" of block omissions, several of which may be defined for each
subprogram, e.g.: those blocks which have been skipped in the first execution of
the subprogram (level 1) will be executed during the second run of the same
subprogram (level 2). Conversely: The set of blocks executed at the first invocation
of the subprogram will be marked to be skipped in the second run.

Example (see Diagram G22.2 on the previous page):


- During the first execution of the subprogram (/01 U1234) the control system
will skip all NC blocks marked by /01.
- During the second run of the same subprogram (/02 U1234) the control
system will skip all NC blocks marked by /02.

Programming Hints Programming of the addresses O, Q and S is not mandatory:


- if O and Q have not been programmed, the complete subprogram will be
executed.
- if S has not been programmed, only a single subprogram run will be
executed.

At the end of each defined subprogram the command M99 must be programmed,
to cause the control system to return to the main program, or to the subprogram
from which the current subprogram has been invoked. This return condition may be
edited in the configuration program (cf. the Configuration Manual: Subprograms).

© MTS GmbH 1998 43


G23 Repeated Program Parts

4.11 Repeated Program Parts G23


Function The command G23 causes the repetition of a program part.

NC Block G23 O... Q... [S...]

Addresses O Start Block Number:


Number of the main program block at which the repeated part starts.
Q End Block Number:
Number of the main program block at which the repeated part ends.

Optional Addresses S Number of repetitions:


The value programmed at the address S determines the desired number of
repetitions of the program part.

Programming Example:

N190 G23 O160 Q180

Programming Hints Programming the addresses O and Q is mandatory. If the address S is not
programmed, a single repetition of the specified program part will be executed.

Programming a repeated part of a subprogram is not allowed.

Modal commands are not affected by program part repetition.

44 Programmer's Guide for CNC Turning, Version 6.07


Unconditional Jump G24

4.12 Unconditional Jump G24


Function The command G24 instructs the control system to continue the machining from the
NC block programmed at the address O.

NC Block G24 O...

Addresses O Target Block Number:


At this address the number of the main program block must be specified
from which the program execution will be continued.

Programming Example:

N110 G24 O185

Programming Hints Programming a jump instruction as part of a subprogram is invalid.

© MTS GmbH 1998 45


G25 move to the Reference Point

4.13 Move to the Reference Point G25


Function With the command G25 you go to the reference point of the CNC machine in rapid
speed. To define the rapid speed movement and the reference point call G25 and
enter the values. For this purpose the optional addresses O and Q are available.

NC Block G25 [F...] [S...] [M...] [O...] [Q...]


Optional Addresses F Infeed
S Number of spindle rotations
M Switch or machine functions
When programming G25 three M commands can be programmed
simultaneously

F
The addresses O and Q can be programmed several times within the NC
command G25, and each time with different values.

If neither of the addresses O and Q is programmed the turret reference point in


rapid speed movement is moved linear in X and Z (i.e. the shortest way) to the
reference point. Please, consider the present tool position when programming the
command G25 to guarantee a collision-free movement of the turret

O0 going to the reference point with linear interpolation of the


coordinates X and Z (standard)
O1 going to the reference point only in X coordinate (Z remains
unchanged)
O2 going to the reference point in the Z coordinate (X remains
unchanged)
O3 going to the reference point first in the X coordinate and then in the Z
coordinate
O4 going to the reference point first in the Z coordinate and then in the X
coordinate
Q0 going to the reference point with the tool holder reference point
(standard)
Q1 going to the reference point with the tool carrier reference point

Programming Hints For the programming of the command G25 no coordinate entries are needed as
the location of the reference point is specified in the machine configuration and it is
consequently known to the CNC control. Within the MTS CNC simulator the set-up
can be made in the configuration of the CNC machine.

46 Programmer's Guide for CNC Turning, Version 6.07


Move to the Tool-Changing Position G26

4.14 Move to the Tool-Changing Position G26


Function With the command G26 the tool change point can be approached in rapid speed
movement. In G26 the rapid speed movement can be specified in detail. For this
purpose the optional addresses O and Q are used

NC Block G26 [F...] [S...] [M...] [O...] [Q...]

Optional Addresses F Infeed


S Number of spindle rotations
M Switch or machine functions
When programming G26 three M commands can be programmed
simultaneously

F
The addresses O and Q can be programmed several times within the NC
command G26, and each time with different values.

If neither of the addresses O and Q is programmed the turret reference point in


rapid speed movement is moved linear in X and Z (i.e. the shortest way) to the
reference point. Please, consider the present tool position when programming the
command G26 to guarantee a collision-free movement of the turret

O0 going to the tool change point with linear interpolation of the


coordinates X and Z (standard)
O1 going to the tool change point only in X coordinate (Z remains
unchanged)
O2 going to the tool change point in the Z coordinate (X remains
unchanged)
O3 going to the tool change point first in the X coordinate and then in the
Z coordinate
O4 going to the tool change point first in the Z coordinate and then in the
X coordinate
Q0 going to the tool change point with the tool holder reference point
(standard)
Q1 going to the tool change point with the tool carrier reference point

Programming Hints For the programming of the command G26 no coordinate entries are needed as
the location of the reference point is specified in the machine configuration and it is
consequently known to the CNC control. Within the MTS CNC simulator the set-up
can be made in the configuration of the CNC machine.

F
Determination of the coordinates of the tool changing position is part of the
configuration (see the Configuration Manual).

© MTS GmbH 1998 47


G28 positioning the Tailstock

4.15 Positioning the Tailstock G28

Note In the MTS CNC simulator Turning 6 a CNC machine with a counter spindle has
the command G28 that means Machining on the counter spindle.

For a machine without a counter spindle the command G28 means Positioning the
Tailstock

Function The G28 command serves to move the tailstock in the course of an NC program.

NC Block G28 Z...

Addresses Z Z-Coordinate of the target point (absolute)

Programming Example:

N190 G28 Z120

Programming Hints The G28 command must be programmed as a separate NC block.

48 Programmer's Guide for CNC Turning, Version 6.07


Thread Cutting G33

Programming Example:

N110 G00 X+80 Z+10


N115 G33 X+80 Z-80 F2,5

Diagram G33.1 : Cylinder thread

Programming Example:

N110 G00 X+40 Z+10


N115 G33 X+100 Z-70 F3

Diagram G33.2 : Taper thread

© MTS GmbH 1998 49


G33 Thread Cutting

4.16 Thread Cutting G33 (Chasing Cycle)


Function The G33 command serves to program a thread cutting cycle. Feedrate and spindle
speed will be automatically adapted to the programmed lead.

NC Block G33 X... Z... F...

Addresses X X-coordinate of the target point


Z Z-coordinate of the target point
F Lead

Explanation When only G33 is programmed, the thread will be cut in a single pass. If thread
cutting in consecutive steps is desired, each step must be programmed as a
separate NC block. The current tool position at the cycle invocation will be
considered as the starting point. It follows that the tool must have been positioned
at the desired starting point by appropriate programming in the previous block.

Conversely with threading cycle G31 the starting point is computed by the control
system.

Whether a cylinder thread or a taper thread results from the machining is


dependent on the position of the programmed end point in relation to the starting
point.

Programming Hints With cylinder and taper threads <= 45° the lead F is marked off on the Z-axis cross.
With taper threads of > 45° the lead value is entered on the X-axis (see Diagram
G33.2).

Alternatively the lead F may be programmed at addresses I (direction X) and K


(direction Z). The greater of the two values should be entered and the smaller value
will be computed by the system.

Each threading pass must be programmed separately, just as the feed


adjustment, and the retreat and return motions must each be programmed in
a separate NC block.

50 Programmer's Guide for CNC Turning, Version 6.07


Tool Nose Compensation G41 / G42

Programming Example:

N170 G81 X+76 Z+4 I+7


N175 G41
N180 (Contour Description)

N235 G40
N240 G80

Diagram G41 : Tool Nose Compensation to the Left of the Contour

Programming Example:

N170 G83 X+10 Z+3 I+6


N175 G42
N180 (Contour Description)

N235 G40
N240 G80

Diagram G42 : Tool Nose Compensation to the Right of the Contour

© MTS GmbH 1998 51


G41 / G42 Tool Nose Compensation

4.17 Tool Nose Compensation G41 / G42

- to the Left of the Contour G41

- to the Right of the Contour G42


Function In computing the feed motion, the control system assumes the (theoretical) path of
the tool tip along the programmed contour. Depending on the radius of the tool
nose , however, the resulting contour and its dimensions will be different from the
programmed contour whenever the tool motion is not parallel to the X or Z axis (see
Diagrams G41 and G42).

If tool nose compensation (TNC) is selected, the system will compute an offset path
(equidistant) for the tool tip, accounting for the actual radius of the tool nose as well
as for the position of the theoretical tool nose (cutting point) relative to the tip
centre. In this calculation the tooling quadrant or the compensation vector (TNC
vector) of the theoretical cutting point of the tool nose are used. In this way the
desired contour can be programmed directly from the workpiece drawing;
transformatory calculations become unneccessary (cf. Section1.6: Tool Geometry,
ff.).

The qualifications left / right apply to the direction in which the tool travels along the
contour.

NC Block G41 Compensation to the right of the contour (viewed in cutting direction)

G42 Compensation to the left of the contour (viewed in cutting direction)

Programming Hints If tool nose compensation (TNC) has been activated for a program part, the
following must be observed:

- As long as tool nose compensation is selected, no zero shifts (G53 to G56,


G58 and G59) can be effected.
- When TNC is selected only the cycles G78, G85, G87 and G88 can be
invoked.
- No tool changing functions can be programmed.
- Radii of internal corner roundings must be greater than the radius of the tool
nose.
- When TNC is selected, the commands M05 and M09 will be ignored.

4.18 Cancel Tool Nose Compensation G40


Function The G40 command cancels tool nose compensation effected by the commands
G41 and G42 .

NC Block G40
Programming Hints The G40 command must be programmed as a separate NC block.

52 Programmer's Guide for CNC Turning, Version 6.07


Rapid Travel Movement to the Target Position G48

4.19 In Rapid Travel Movement to the Target Position G48

Function With the command G48 it is possible to program travel movements in rapid speed.
Unlike the standard command G00 the programmed target position is approached
in case of G48 not with the cutting edge point but either with the tool carrier
reference point (standard) or with the tool holder reference point (switch Q1). How
the programmed target position is approached can be defined with the optional
address O.

NC command G48 X... Z... [O...] [Q...]

Addresses
F The addresses O and Q can be programmed several times and respectively with
different values within the NC command G48

X, Z Coordinates of the target point of the tool movement

Optional O0 moving to the target position with linear interpolation of the


addresses coordinates X and Z (standard)
O1 moving to the target position in X coordinate only (Z remains
unchanged)
O2 moving to the target position in Z coordinate only (X remains
unchanged)
O3 moving to the target position first in X then in Z coordinate
O4 moving to the target position first in Z then in X coordinate
Q0 moving to the target position with the reference point of the tool
support (standard)
Q1 moving to the target position with the reference point of the work
fixture

© MTS GmbH 1998 53


G51 Description of a Final Contour

Programming Example:

N170 G51 X+0 Z+0 O001 Q001


N175 (Contour Description)

ò
N285 G50

Diagram G51 : Automatic overlay display of the workpiece contour onto the blank.

54 Programmer's Guide for CNC Turning, Version 6.07


Description of a Final Contour G51

4.20 Description of a Final Contour G51


Function In the Simulator, NC program blocks can be generated by "manual" positioning of
the tools, i.e. without entering a command code. This way of creating a program is
part of the so-called Teach-In mode (see the Simulator Operation Manual for a
detailed description). To avoid collisions in the manual mode, the commands G51
and G50 should be used in determining the final contour of the workpiece.

NC Block G51 X... Z... O... Q...

ò
G50

Addresses X X-Coordinate of the first contour point


Z Z-Coordinate of the first contour point
O001 Overlay display of the final contour onto the blank
O000 No overlay display of the final contour
Q001 Collision monitoring operative
During the manual tooling an accoustic alarm indicates any possible
collisions with the programmed final contour; a corresponding error message
appears in the dialogue line.
Q000 No collision monitoring

Explanation The command G51 and the subsequent address values (X and Y to define the
beginning point of the contour, O and Q to select the desired options) must be
entered prior to generation of the contour. The easiest way to determine a contour
is by employing the WOP functions (see below: Segment Contour Programming).
Entering the G50 command terminates the contour generation.

After this, the user must return to the Teach-In mode for manual tooling.

For a more detailed description of the Teach-In mode, please refer to the CNC
Simulator Operation Manual.

Programming Hints To ensure an error-free graphic display of the programmed final contour, the
contour definition must be complete, i.e. the starting point as well as the end point
must be situated on the centre line (rotation axis).

© MTS GmbH 1998 55


G54 - G56 and G58 Define Workpiece Zero Point

Blank:
The reference point is the machine datum

Diagram G54.1

Programming Example:

N10 G54 X+0 Z+200

Diagram G54.2: To generate the contour in this example the workpiece zero point is
positioned on the face end of the workpiece (G54).

Programming Example:

N135 G56 X+87 Z+114

Diagram G54.3 : To execute the recessing cuts in this example the workpiece zero point is
positioned off the rotation axis (G56).

56 Programmer's Guide for CNC Turning, Version 6.07


Define Workpiece Zero Point G54 - G56 and G58

4.21 Define Workpiece Zero - Absolute: G54 - G56 and G58


Function The workpiece zero is set at the position defined by the programmed X and Z
coordinates, related to the machine datum. A total of four different zero points may
be defined and stored.

NC Block G54 [X...] [Z...] or G55 [X...] [Z...] or

G56 [X...] [Z...] or G58 [X...] [Z...]


Addresses X X-Coordinate of the current workpiece zero
Z Z-Coordinate of the current workpiece zero
Explanation As mentioned above, the control system will interpret all specified coordinates as
related to a previously defined zero point, which may be the datum (see Diagram
G54.1) or a workpiece zero determined by touching the part.

Furthermore a specific workpiece zero can be defined at will for each NC program.
To avoid additional computing efforts in the programming, however, it should be
positioned in a way that as many coordinate values as possible can be immediately
read in as specified in the workshop drawing. With turning workpieces, in most
cases the zero point will be situated on the rotational axis (X=0) on the front face of
the part (see Diagram G54.2).

To facilitate the programming of complex contours (see the recessing cuts shown
in Diagram G54.3) it is advisable to define a new zero in compliance with the
coordinate system of the design drawing. Using the commands G54, G55, G56 and
G57 up to four different workpiece zero points can be defined - the respective
coordinates may either be specified in the applicable program line or pre-defined
and stored in the set-up mode, by setting the axes to zero or touching the
workpiece (for details, see the CNC Simulator Manual). Each stored zero point can
be activated by the corresponding address in the NC program (e.g.: G56 - see
Diagram G54.3).

Programming Hints A zero point storage is assigned to each of the four G-commands G54, G56 and
G58. The command G54, for example, will also activate the corresponding G54
zero point storage. If one or two coordinate addresses are programmed together
with G54, the applicable values are entered to the zero point storage prior to
activating the zero. Alternatively these coordinates may be defined in the setup
mode, by touching the workpiece.

Coordinate values of the current zero point always relate to the machine zero, even
when several origins are defined within the same NC program, i.e. a workpiece
zero is always determined in absolute coordinates.

The defined zero points are self-retentive: they will remain operative, even after a
change of program, until they are overwritten. After a restart of the CNC Simulator,
all coordinates are set to zero.

In the CNC Simulator the position of the machine zero can be defined in the
configuration program (see the Configuration Manual for a detailed description).

© MTS GmbH 1998 57


G59 Incremental Zero Shift

Programming Example:
N110 G59 X+40 Z+100

Diagram G59.1 : The origin of the coordinate system is shifted to the absolute coordinates
X=40 / Z=100 .

Programming Example:
N110 G59 X+40 Z+100 I+20 K-30 A+120

Diagram G59.2 : The coordinate system is first shifted to the point X=40 / Z= 100 and then rotated
by 120° about the point defined by the incremental coordinates I=-20K=-30.

58 Programmer's Guide for CNC Turning, Version 6.07


Incremental Zero Shift G59

4.22 Incremental Zero Shift G59


Function The command G59 serves to shift and concurrently rotate the coordinate system.

NC Block G59 X... Z... [I...] [K...] [A...]


Addresses X value by which the intermediate coordinate system is shifted along the X-
axis.
Z value by which the intermediate coordinate system is shifted along the Z-
axis.

Optional Addresses I X-coordinate of the rotation centre, incremental to the currently shifted
intermediate origin
K Z-coordinate of the rotation centre, incremental to the currently shifted
intermediate origin
A Rotation angle, incremental

Explanation In many cases the programming of complex workpiece contours can be much
facilitated by defining a so-called "intermediate reference point" (i.e. a temporary
coordinate system, to which the dimensioning will relate, instead of the original
system). The command G59 serves to shift and/or rotate the coordinate system as
desired.

If only a shift of the coordinate system is intended, the origin of the new system can
be defined by setting up the applicable X and Z-coordinates. In this case it is not
necessary to program the addresses I, K and A (see Diagram G59.1).

If additionally a rotation of the coordinate system about a specific point is desired,


this centre of rotation must be programmed at addresses I and K, as well as the
rotation angle at address A. The values for I and K must be programmed
incrementally, i.e. relative to the shifted (intermediate) coordinate system (see
Diagram G59.2). To rotate the shifted coordinate system about its origin, only angle
A needs to be programmed.

Subsequently programmed coordinate values relate to the shifted and/or rotated


coordinate system. They will be retained until the temporary system is cancelled or
a further shift is effected by the G59 command (cf. the G53 command).

Programming Hints Any shift effected by the command G59 applies to the current origin (which itself
may have been set by a G59 shift).
Remember that the rotation angle increases accordingly when repeated zero shifts
are effected within the same program.

© MTS GmbH 1998 59


G53 Cancel Zero Shift

4.23 Cancel Incremental Zero Shift G53


Function The command G53 serves to cancel an incremental zero shift (cf. G59). The
original coordinate system as previously determined by an absolute zero shift or by
touching of the workpiece is again adapted.

NC Block G53

Programming Hints The command G53 must be programmed as a separate NC block

60 Programmer's Guide for CNC Turning, Version 6.07


Absolute Dimensions G90

4.24 Activate Absolute Dimensions G90


Function When the command G90 is programmed, all subsequently entered coordinate
values relate to the workpiece zero. The target position, to which the tool shall
move, is programmed in absolute coordinates, regardless of the current tool
position.

NC Block G90

Programming Example:

N... G90
N...

ò
N...
N115 G01 X+140 Z-90

Programming Hints When absolute dimensions are specified, the X coordinate is related to the
diameter.

The absolute coordinate system remains operative until it is deactivated by G91


(activating the incremental dimensioning).

© MTS GmbH 1998 61


G91 Incremental Dimensions

4.25 Activate Incremental Dimensions G91


Function When the incremental system (also called the relative system) is activated, the
programmed coordinates of the target position relate to the actual tool position; i.e.
the values (distances) must be specified by which the tool will move along the
respective axis from the current position.

NC Block G91

Programming Example:

N... G91
N...

ò
N...
N115 G01 X+20 Z-60

Programming Hints When incremental dimensions are specified, the X coordinate relates to the
radius.

The incremental coordinate system remains operative until it is deactivated by G90


(activating the absolute dimensioning)

62 Programmer's Guide for CNC Turning, Version 6.07


Spindle Speed Limitation G92

4.26 Spindle Speed Limitation G92


Function When a constant cutting speed (G96) is programmed for cross turning down to a
zero diameter, the spindle will accelerate to its maximum speed. To prevent
possibly serious problems with the workpiece clamping, the programming of a
spindle speed limitation (G92) together with the constant cutting speed is
recommended.

NC Block G92 S...

Addresses S Maximum Spindle Speed (RPM)

Programming Example:

N110 G92 S1500

Programming Hints The spindle speed limitation will only take effect if a constant cutting speed (G96)
has been programmed.

© MTS GmbH 1998 63


G94 Feedrate (Millimeters per Minute)

4.27 Feedrate (Millimeters per Minute) G94


Function The command G94 serves to program the feedrate. The unit of measurement is
"Millimeters per Minute".

NC Blocks G94 F...

Addresses F Feedrate (mm/min)

Programming Example:

N120 G94 F500.000

In this example the feedrate is 500 millimeters per minute.

F
If the unit of measurement has been switched from millimeters to inches (see NC
command G20), the programmed feedrate will be interpreted accordingly in inches
per minute.

64 Programmer's Guide for CNC Turning, Version 6.07


Feedrate (Millimeters per Revolution) G95

4.28 Feedrate (Millimeters per Revolution) G95


Function The command G95 serves to program the feedrate per revolution. The measuring
unit is millimeters.

NC Block G95 F...

Addresses F Feedrate (mm/rev)

Programming Example:

N080 G95 F000.300

In this example the feedrate is 0.3 millimeters per revolution.

F
When the unit of measurement is switched from millimeters to inches (see NC
command G20), the programmed feedrate will be interpreted accordingly in inches
per revolution.

© MTS GmbH 1998 65


G96 Constant Cutting Speed

4.29 Constant Cutting Speed G96


Function The command G96 serves to program a constant cutting speed.

NC Block G96 S... [F...] [T...] [M...]

Addresses S Cutting Speed (m/min)


Optional Addresses F Feedrate (mm/rev)
T Tool Change
M Additional Function

Explanation With turning operations the surface cutting speed is dependent on the programmed
spindle speed as well as on the current X-coordinate of the tool nose. To keep
the cutting speed constant, the result from the multiplication of the speed and the
tool nose coordinate in X must be kept as a constant value in the control system.
When smaller X-coordinate values are specified, the spindle speed will increase
accordingly.

Programming Example:

N125 G96 S210

Programming Hints When the machining requires small X-coordinate values, the command G92 should
be programmed to limit the spindle speed, so as to avoid exceeding the maximum
speed permissible with the clamping device.

If the addresses F, T and M have been defined in a previous block, they need not
be programmed once again in the G 96 block.

The constant cutting speed remains operative until it is deactivated by G97 or is


overwritten by another G96 command.

4.30 Cancel Constant Cutting Speed G97


Function The command G97 serves to cancel the constant cutting speed command G96.

NC Block G97 [S...]


Optional Addresses S Spindle speed in RPM

Programming Hints If no spindle speed S is programmed in the G97 block, the speed computed at the
last activation of the constant cutting speed command G96 will be retained.

The maximum spindle speed, as programmed in G92, will also be retained for
future invocations of the G96 command.

66 Programmer's Guide for CNC Turning, Version 6.07


5. Cycles

5 Cycles

5.1 Complete Table of Available Cycles

Available Cycle Pages


G31 Threading Cycle 69

G36 Travel Range Limitation for Multipass Cycles 72

G57 Finishing Allowance 73

G60 Face Milling Cycle (with Driven Tools) 262 and 304

G61 Drilling Cycle (with Driven Tools) 264, 278, 293 and 306

G62 Thread Tapping (with Driven Tools) 265, 279, 294 and 307

G63 Reaming/Boring (with Driven Tools) 266, 280, 295 and 308

G64 Square Pocket/Groove (with Driven Tools) 267, 281, 296 and 309

G65 Circular Pocket (with Driven Tools) 268, 282, 297 and 310

G66 Tapping (with Driven Tools) 270, 283, 298 and 311

G67 Cycle on a Circle (with Driven Tools) 270, 284, 299 and 312

G68 Cycle on a Radius (with Driven Tools) 271, 285, 300 and 313

G69 Cycle at a Point (with Driven Tools) 272, 286, 301 and 314

G75 Straight Roughing Cycle - Rectangular Contours 77

G76 Cross Roughing Cycle - Rectangular Contours 79

G78 Clearance Cutting Cycle G78 / DIN 509 Type E and F 81


Thread Undercut / DIN 76 85

G79 Recessing Cycle with chamfers, roundings and bevelled sides 85

G80 Processing Cycle (Last Specified Cycle) 107

G81 Straight Roughing Cycle for any Contour 88

G82 Cross Roughing Cycle for any Contour 98

G83 Contouring Cycle/Multipass Cycle 111

G84 Deep Drilling Cycle 115

G85 Clearance Cutting Cycle G85 / DIN 509 Type E and F Thread 117
Undercut / DIN 76

G86 Recessing Cycle for rectangular recesses 123

G87 Recessing Cycle for any Contour 124

G88 Radius/Chamfer Cycle 131

G89 Straight/Plane Roughing Cycle (conical contour) 135

© MTS GmbH 1998 67


G31 Threading Cycle

Programming Example:

N110 G00 X+140 Z+10


N115 G31 X+80 Z-80 A+30 D-2 F3 S6

Diagram G31.1 : Single thread - the Z-coordinate of the starting point is identical with the
Z-coordinate of the theoretical start of the thread.

Programming Example:

N110 G00 X+25 Z+3

N115 G31 X+20 Z-37 D+1.534 F2.5 J+0.3


Diagram G31.2 : Single thread - the tool adjustment in X and Z per cutting pass is
programmed at the addresses J and K.

68 Programmer's Guide for CNC Turning, Version 6.07


Threading Cycle G31

5.2 Threading Cycle G31


Function The G31 cycle serves to program traverse and taper threads with a constant lead at
a maximum angle of 45° to the Z-axis. This cycle may be employed with external as
well as internal machining.

NC Block G31 X... Z... D... F... S.../J... [A...] [Q...] [I.../E...]
or G31 X... Z... D... F... K... A... [Q...] [I.../E...]
Addresses X X-Coordinate of the theoretical end of the thread:
- determines the nominal diameter with external threads
- determines the core diameter with internal threads.

Z Z-Coordinate of the theoretical end point of the thread.

D Depth of the thread relative to the radius.


F Lead in the Z- direction.
S Number of cutting operations.
J Infeed per cutting pass in the direction X (relating to the radius).
K Infeed per cutting pass in the direction Z.
If the address K is programmed, a thread angle greater than zero must also
be programmed.
Optional Addresses A Thread angle to the X-axis determining the infeed. The value entered at A
must be between 0 and 60 degrees.
Q Segmentation of the final feed adjustment. Any positive value may be
entered at Q .
When Q is programmed, the final feed adjustment will be divided into four
steps:1/2, 1/4, 1/8, 1/8 of the previous cutting depth.
I Difference of radii between the theoretical start and end of the thread:
- positive sign for external threads
- negative sign for internal threads
E Thread angle to the Z-axis at the end of the thread. The absolute value
entered at E must not exceed 45 degrees.
Explanation The theoretical start and end of the thread, defining the minor diameter (thread
core), constitute important parameters for the execution of the threading cycle G31
The end of the thread is determined by X- and Z-coordinates, while the theoretical
start is established by the system from the programmed addresses.

- the X-coordinate will be computed according to the values entered at the


addresses I or E . If neither I nor E has been programmed, the X-coordinate
of the start is equal to the X-coordinate of the end (cylinder thread).
- the Z-coordinate of the start of the thread is always equal to the Z-coordinate
of the starting point when the cycle invoked.

© MTS GmbH 1998 69


G31 Threading Cycle

Programming Example:

N110 G00 X+140 Z+10


N115 G31 X+100 Z-75 D+1.34 F3 S4 E+30

Diagram G31.3 : Taper thread - the thread angle can be programmed either by the address
E (angle to the Z-axis) or by the address I (difference between the radii at the
theoretical start and end of the thread).

Programming Example:

N110 G00 X+140 Z+10


N115 G31 X+100 Z-75 A+30 D-2 F3 S4

Diagram G31.4 : Internal thread - the X-coordinate of the starting point must be less than the
X-coordinate of the theoretical start of the thread.

70 Programmer's Guide for CNC Turning, Version 6.07


Threading Cycle G31

Prior to the invocation of cycle G31 the starting point must be approached in the
directions X and Z. The system will then discern internal and external threading by
reading the difference between the starting position and the programmed X-
coordinate:

- If the X-coordinate of the starting point is less than the coordinate of the
theoretical end of the thread, an internal thread cut will be executed
(see Diagram G31.4).
- If the X-value is greater, an external thread cut will be executed
(see Diagram G31.1).
When the address S is not programmed the control system will compute the
number of cuts from the programmed addresses. After each cutting pass the tool
returns to the Z-coordinate of the starting position in rapid motion. After completion
of the cycle the tool returns to the starting position.

Programming Hints As the Z-coordinate of the starting point is equal to the Z-coordinate of the
theoretical start of the thread, the starting point must be determined at a sufficient
distance from the workpiece, to ensure the necessary path velocity (speed x
feedrate) has been reached before the tool engages in the workpiece.

Accordingly, the deceleration rate of the drive must be accounted for when
programming the theoretical end of the thread.

The number of programmed cutting operations must be greater than one.

© MTS GmbH 1998 71


G36 Travel Range Limitation for Multipass Cycles

5.3 Travel Range Limitation G36 for Multipass Cycles


The G36 command serves to limit the travel range of the tool when the multipass
cycle G83 is executed.

For a more detailed explanation, see the description of the contouring cycle G83
below.

72 Programmer's Guide for CNC Turning, Version 6.07


Finishing Allowance G57

5.4 Finishing Allowance G57

Function With command G57 it is possible to program finishing allowance for roughing
cycles. The roughing cycle called below (e.g. G81) then generates a contour which
is shifted by the value of the finishing allowance in X, Z or equidistant.

NC Command G57 [X...] [Z...] [B...]


Addresses X Finishing allowance in X (with reference to the diameter)
When programming finishing allowance in X the following sign rules have to
be considered:
• a positive sign generates a contour shifted into the direction of the
positive X axis
• a negative sign generates a contour shifted into the direction of the
negative X axis
Z Finishing allowance in Z
When programming finishing allowance in Z the following sign rules have to
be considered:
• a positive sign generates a contour shifted into the direction of the
positive Z axis
• a negative sign generates a contour shifted into the direction of the
negative Z axis
B equidistant finishing allowance in X and Z
The programming of an equidistant finishing allowance is always necessary
if the contour path is not monotonous. When programming finishing
allowance in Z the following sign rules have to be considered:
Outside machining:
• a positive sign generates an equidistant in the direction of the positive X
axis
• a negative sign generates an equidistant in the direction of the negative
X axis
Inside machining:
• a positive sign generates an equidistant in the direction of the negative X
axis
• a negative sign generates an equidistant in the direction of the positive X
axis

In general, it is possible to combine freely the finishing allowances X, Z and B in the


NC program.

Programming When starting the computer no finishing allowance is active. If G57 is programmed
hints the finishing allowance remains active within the active NC programs until it is
deactivated or G57 is re-programmed with other values.

© MTS GmbH 1998 73


G57 Finishing Allowance

table of programming NC block No NC block valid finishing allowance


for finishing
allowances ... starting situation ð allowance X = 0
allowance Z = 0
allowance B = 0
N080 G57 X+2 Z+2 ð allowance X = 2
allowance Z = 2
allowance B = 0
N170 G57 X+4 ð allowance X = 4
allowance Z = 2
allowance B = 0
N245 G57 X+0 Z+0 ð allowance X = 0
allowance Z = 0
allowance B = 0
N360 G57 B+1.5 X+1 ð allowance X = 1
allowance Z = 0
allowance B = 1.5

Outside machining
a) finishing
allowance in X
and Z of a
monotonously
ascending
contour

b) equidistant
finishing
allowance of a
non
monotonous
contour

Inside machining
a) finishing
allowance in X
and Z of a
monotonously
descending
contour

b) equidistant
finishing
allowance of a
non
monotonous
contour

74 Programmer's Guide for CNC Turning, Version 6.07


G75 Straight Roughing Cycle - Rectangular Contour

Programming Example:

N145 G00 X+105 Z+3


N150 G75 X+30 Z-55 I+1 K+0.5
D+6 H+25 W+1

Diagram G75.1

Degression of infeed and minimum


cutting depth

Example: R = 0.5 mm
V = 2.5 mm

In this example the programmed cutting


depth is D = 4 mm .
After each cutting pass the infeed is reduced
by the value R (0.5 mm). At address V , 2.5
mm is determined as the minimum value to
which the cutting depth may be reduced. All
remaining passes will be executed at this
value once it has been reached.

Diagram G75.2

Optimizing the remaining cuts

Example: D = 4 mm
L = 50

In this example, with a depth of cut D = 4


mm programmed, the remaining stock to be
removed is 5 mm.
Removing this stock would normally require
two passes. The optimizing function serves
to increase the depth of cut by L = 50 (50%)
to a maximum of 6 mm. In this way one of
the passes is dispensed with.

Diagram G75.3

76 Programmer's Guide for CNC Turning, Version 6.07


Straight Roughing Cycle / Rectangular Contour G75

5.5 Straight Roughing Cycle / Rectangular Contour G75


Function The command G75 serves to program a straight (lengthwise) roughing cycle for
rectangular workpiece contours. This cycle is applicable to internal as well as to
external machining.

NC Block G75 X... Z... S.../D...

[I...] [K...] [H...W...] [R...V...] [L...]


Addresses X, Z Endpoint coordinates
S Number of cutting passes - D may be programmed as an alternative.
D After each pass the tool is adjusted in direction X by the value programmed
at D - S can be programmed as an alternative. When the cycle is executed
the actual depth of cut may be different from the programmed value D,
depending on the optional programming of addresses R, V and L.
(see optional programming of addresses R, V and L)
Optional Addresses I, K Finishing allowances in X (as related to the radius) and Z
H, W Chip-breaking (see Straight Roughing Cycle G65)
Address H determines the distance traveled by the tool along the Z-axis
before the cut is interrupted, while address W determines the distance by
which the tool moves back after the interruption. The addresses W and H
must always be programmed as a combination.
R Degression of cutting depth (see Diagram G75.2)
At R the value by which the infeed D is to be reduced with each pass is
programmed.
If R is programmed D and V must be programmed as well.
V Minimum cutting depth (see Diagram G75.2)
At address V the minimum cutting depth is determined. In this way the cutting
depth D, while reduced by the degression, will not be less than value V.
If V is programmed D and R must be programmed as well.
L Optimizing the remaining cuts (see Diagram G75.3)
At address L an integral percentage (between 1 and 100) of the cutting depth
D is programmed. The control system will compute the depth of cut to
remove the remaining stock, increasing the infeed by a maximum of the
percentage programmed at L, in order to dispense with one cutting pass in
feeding down to the programmed finish.
Explanation When the cycle is invoked, the starting point is determined by the position of the
tool. Accounting for the finishing allowances I and K a right-angled contour will be
turned by removing the stock of material represented by the rectangular square in
Diagram G75.2).The number of passes required can either be programmed at
address S or may be computed by the NC system after the infeed D and after, the
optional addresses R, V and L have been specified.

Programming Hints The feedrate and the cutting speed must have been programmed in a preceding
NC block.
As the first infeed is executed from the initial tool position (the starting point), when
the cycle is invoked the tool must be positioned in direction X either above (outside)
the external diameter of the blank or below (inside) the internal diameter,
depending on whether external or internal machining is required.

© MTS GmbH 1998 77


G76 Cross Roughing Cycle - Rectangular Contour

Programming Example:

N145 G00 X+105 Z+3


N150 G76 X+30 Z-40 I+1 K+0.5
D+4 H+15 W+1

Diagram G76.1

Degression and minimum cutting


depth

Example: R = 1 mm
V = 3 mm

In this example the programmed cutting


depth is D = 6 mm .
After each cutting pass the infeed is
reduced by the value R (1 mm). At
address V , 3 mm is determined as the
minimum value to which the cutting
depth may be reduced, so that all
remaining passes will be executed at
this value once it has been reached.

Diagram G76.2

Optimizing the remaining cuts

Example: D = 4 mm
L = 50

In this example, with a programmed


cutting depth of D = 4 mm, the
remaining stock to be removed
amounts to 5.5 mm.
Removing this stock would normally
require two passes. The optimizing
function serves to increase the depth of
cut by L = 50 (50%) to a maximum of 6
mm. In this way one of the passes is
dispensed with.

Diagram G76.3
78 Programmer's Guide for CNC Turning, Version 6.07
Cross Roughing Cycle / Rectangular Contour G76

5.6 Cross Roughing Cycle / Rectangular Contour G76


Function The command G76 serves to program a cross (square) roughing cycle for
rectangular workpiece contours. The cycle may be used in internal as well as
external machining.

NC Block G76 X... Z... S.../D...

[I...] [K...] [H...W...] [R...V...] [L...]


Addresses X, Z End point coordinates
S Number of cutting passes - D may be programmed as an alternative.
D After each pass the tool is adjusted in direction Z by the value programmed
at D (S may be programmed as an alternative.) During execution the actual
depth of cut may be different from the programmed value D, depending on
the optional programming of addresses R, V and L.
(see optional programming of addresses R, V and L)
Optional Addresses I, K Finishing allowances in X (as related to the radius) and Z
H, W Chip-breaking (see Cross Roughing Cycle G66)
The address H determines the distance travelled by the tool along the X-axis
before the cut is interrupted, the address W determines the distance by
which the tool moves back after the interruption. The addresses W and H
must always be programmed as a combination.
R Degression of cutting depth (see Diagram G76.2)
The value by which the infeed D is reduced with each pass is programmed at
R.
If R is programmed D and V must also be programmed.
V Minimum cutting depth (see Diagram G76.2)
At address V the minimum cutting depth is determined. In this way the cutting
depth D, while reduced by the degression will not be smaller than value V.
If V is programmed D and R must also be programmed.
L Optimizing the remaining cuts (see Diagram G76.3)
At address L an integral percentage (between 1 and 100) of the cutting depth
D is programmed. The control system will compute the depth of cut to
remove the remaining stock, increasing the infeed by a maximum of the
percentage programmed at L, in order to dispense with one cutting pass
when feeding down to the programmed finish.
Explanation When the cycle is invoked, the starting point is determined by the initial position of
the tool. Accounting for the finishing allowances I and K a right-angled contour will
be turned by removing the stock of material represented by the rectangular square
in Diagram G76.2).The number of passes required can either be programmed at
address S or may be computed by the NC system after the infeed D and if desired,
after the optional addresses R, V and L have been specified.

Programming Hints The feedrate and the cutting speed must have been programmed in a preceding
NC block.
As the first infeed is executed from the initial tool position (the starting point), when
the cycle is invoked the tool must be positioned in the direction X, either above
(outside) the external diameter of the blank or below (inside) the internal diameter,
depending on whether external or internal machining is required.

© MTS GmbH 1998 79


G78 Clearance Cutting Cycle

Clearance Cut Type E

Programming Example:

N110 G78 X+40 Z-40 L+01 O306

Diagram G78.1

Clearance Cut Type F

Programming Example:

N170 G78 X+40 Z-40 L+02 O306

Diagram G78.2

80 Programmer's Guide for CNC Turning, Version 6.07


Clearance Cutting Cycle G78

5.7 Clearance Cutting Cycle: G78

(in Compliance with DIN 509 Types E and F)


Function The G78 command serves to program clearance cutting cycles in compliance with
the German standard DIN 509 type E or type F, as well as thread undercuts
according to DIN 76 . The type of cut to be executed is determined by the control
system, depending on which addresses have been programmed.

The only difference in geometry between clearance cuts type E and F is determined
by parameter t2 (see Diagrams G78.1 and G78.2). With specific address
combinations the dimensions of the clearance cut can be programmed as desired
(see table below).

Cross Reference Conversely, a clearance cut programmed as a G85 cycle depends on the
workpiece diameter.

NC Block G78 X... Z... L... O... [D...] [I...]

Addresses X X-Coordinate of the corner point at which the clearance cut is executed.
Z Z-Coordinate of the corner point at which the clearance cut is executed.
L The clearance cut is determined by the DIN parameter L :
L01: clearance cut according to DIN 509 type E
L02: clearance cut according to DIN 509 type F
O At address O the clearance cut geometry is programmed (see table below).
The value f defines the length, r defines the radii, t1 defines the depth and t2
(with type F only) defines the machining allowance of the clearance cut:

f r t1 t2 (with type F only)


O101 0.5 0.1 0.1 0.1
O102 1.0 0.2 0.1 0.1
O204 2.0 0.4 0.2 0.1
O206 2.0 0.6 0.2 0.1
O306 2.5 0.6 0.3 0.2
O410 4.0 1.0 0.4 0.3
O210 2.5 1.0 0.2 0.1
O316 4.0 1.6 0.3 0.2
O425 5.0 2.5 0.4 0.3
O540 7.0 4.0 0.5 0.3

To the desired dimensions of the clearance cut, the applicable threedigit entry
must be made at address O.

© MTS GmbH 1998 81


G78 Clearance Cutting Cycle

Clearance Cut Type F and


Finishing Allowance D

Programming Example:

N110 G78 X+40 Z-40 L+02 O306


D+0.2

Diagram G78.3 : The clearance cut is shifted in the X and Z directions by the value
programmed at D.

At the start of a clearance cutting cycle


the tool must be positioned within the
area included by an angle of 45
degrees to the following contour.

Diagram G78.4 : Tool position at the start of a clearance cutting cycle

If the programmed clearance cut is to


be executed with tool nose
compensation (TNC) in operation, the
minimum angle of the approach line to
the subsequent bevelled contour must
be 180 degrees.

Diagram G78.5: Approach angle with tool nose compensation (TNC) in operation.

82 Programmer's Guide for CNC Turning, Version 6.07


Clearance Cutting Cycle G78

Optional Addresses D Machining allowance


The rounded transitions of the clearance cut are shifted in the directions X
and Z by the value programmed at D (see Diagram G78.3).
I Grinding allowance
The grinding allowance must be accounted for when the starting point is
programmed.

Programming Hints To ensure that the clearance cutting cycle is executed according to the
programmed dimensions it is advisable to ensure that the starting point has been
correctly programmed (see diagrams G78.4 and G78.5). Due to the relatively small
dimensions concerned we also recommend the programming of tool nose
compensation (see G41/G42).

The control system will automatically execute an internal clearance cut,


accounting for the tooling quadrant (see Compensation Values).

© MTS GmbH 1998 83


G78 Thread Undercut

Thread Undercut
in Compliance with DIN
76

Programming Example:

N170 G78 X+40 Z-40 I+2 K+8

Diagram G78.6

84 Programmer's Guide for CNC Turning, Version 6.07


Thread Undercut G78

5.8 Thread Undercut G78 in Compliance with DIN 76


Function If the G78 command and its addresses X, Z, I and K are programmed, a thread
undercut in compliance with DIN 76 will be executed.

NC Block G78 X... Z... I... K...

Addresses X X-coordinate of the corner point at which the clearance cut is executed
Z Z-coordinate of the corner point at which the clearance cut is executed
I Depth of cut relative to the radius
K Length of the clearance cut. Only positive values programmed at K are valid.

Programming Hints Please note that due to the geometry of a clearance cut, the value determining the
length K must be at least 2,34 times the value I determining the depth.

The radius r is computed by the control system, according to the cutting depth I.
The radius will always be at a ratio of 0.6 of the programmed depth.

Cross Reference The G78 cycle with its addresses X, Z, I and K is identical to the thread undercut
G85 with the same addresses.

© MTS GmbH 1998 85


G79 Recessing Cycle with chamfers, roundings and bevelled sides

Programming Example:

N145 G00 X+42 Z-7


N150 G79 X+34 Z-20 A+1 W+1
I+3 K+1.5 D+7 J+2

Diagram G79.1 : Recessing cycle with chamfers at the upper edges of the recess and
roundings at the bottom.

Programming Example:

N145 G00 X+42 Z-7


N150 G79 X+34 Z-20 H+1 R+1 I+3
K+1 D+7 J+2 O130 Q130

Diagram G79.2 : Recessing cycle with bevelled sides

The finishing allowance programmed for the


first cutting pass is too small: the resulting
recess (dashed line) collides with the
programmed final contour (bottom
chamfers).

Diagram G79.3 : Result of a insufficient finishing allowance

86 Programmer's Guide for CNC Turning, Version 6.07


Recessing Cycle with chamfers, roundings and bevelled sides G79

5.9 Recessing Cycle with chamfers, roundings and bevelled sides


G79
Function The G79 cycle determines a recessing cut, including chamfers, roundings and
bevelled sides. Programming of the addresses X and Z is mandantory; further
addresses are optional.

NC Block G79 X... Z... [A.../H...] [R.../W...]

[I...] [K...] [D...] [J...] [O...] [Q...]


Addresses X, Z If D > 0 : coordinates of the left corner point of the recess.
If D < 0 : coordinates of the right corner point of the recess.
If D is not programmed, the width of recess will be determined by the tool
width specified in the current compensation value register.

Optional Addresses A Chamfer at the upper edge of recess, length related to the Z-coordinate.
H Radius of rounding at the upper edge of the recess.
R Chamfer at the bottom edge, length related to the Z-coordinate.
W Radius of rounding at the bottom edge of the recess.
I Finishing allowance in the direction X, as related to the diameter.
K Allowance relative to the Z-coordinate.
D Width of recess:
if D+ is programmed, the recess is executed to the right of the corner
point X,Z.
if D- is programmed, the recess is executed to the left of the corner
point X,Z.
J Distance of the tool clearance plane in X from the workpiece before
invocation of the cycle invocation. The value programmed at J relates to the
diameter.
O Recess side angle to the positive X-axis at the corner point X,Z.
(see Diagram G79.2). The angle, specified in tenths of a degree, must not
exceed 45°. When no bevel is programmed, the address value will be set to
O=0 .
Q Recess side angle to the positive X-axis at the side opposite to the corner
point X,Z. (see Diagram G79.2). The angle, specified in tenths of a degree,
must not exceed 45°. When no bevel is programmed, the address value will
be set to Q=0 .

Explanation Starting from the actual tool position at cycle invocation (starting point), the
rectangular recess (as indicated by the dashed lines in Diagram G79.2) is cut in the
first pass, accounting for the programmed finishing allowances I and K. In the
second pass the recess is cut to the finished size as programmmed at X/Z and D,
including the execution of eventual chamfers, roundings and bevelled sides.

Programming Hints If one of addresses A, H, R, W, O, or Q is programmed, also the finishing


allowances I and K must also be programmed. In so doing the values programmed
at I and K must be at least equal to the specified chamfer length or rounding radius,
to avoid gouging the finished contour (see Diagram G79.3).

© MTS GmbH 1998 87


G81 Straight Roughing Cycle for any Contour

5.10 Straight Roughing Cycle for any Contour G81


The parameters of the cycle G81 have been extended compared to version 5.x.
Additionally optional addresses E, A, O and Q have been included.

Function With the command G81 a cycle to machine straight roughing (parallel to Z axis)
can be programmed with any connecting contour. The cycle can be used for inside
as well as for outside machining.

NC-Command G81 I... [X... Z...] [R... V...] [H... W...] [L...] [E...] [A...] [O...] [Q...]

Addresses I Infeed (referring to the radius)


The infeed I indicates the infeed movement value to be taken after each cut
in direction X.
When processing cycles the infeed can deviate from the programmed value
depending on the optional addresses R, V and L.

Optional X, Z Coordinates of the contour starting point


Addresses If these coordinates are not being programmed the end point of the first
infeed commands after the cycle call (G00, G01, G02, G03, G71, G72, G72)
is considered as the contour starting point.
R Degression of cutting depth
The address R is for programming the infeed value I by which the infeed
movement is to be reduced after each cut. If R is programmed, V has to be
programmed as well.
V Minimum infeed
The address V is for programming the minimum infeed value. If V has been
programmed it means that the Degression of cutting depth R reduces the
infeed value I at maximum up to the value V. If V has been programmed R
has to be programmed as well.
H Chip breaking, infeed interruption in Z direction
H gives the length of the line in direction Z after which the infeed movement
is interrupted for chip breaking. H and W have to be programmed together.
W Chip breaking, return path of the tool in direction Z
W specifies the path the tool returns after chip breaking. H and W have to be
programmed together.
L Final roughing optimizing
The address L is for programming the non-fraction percentage value (1 <= L
=< 100) of the infeed I. The control increases then the last roughing level at
maximum by the percentage programmed under L if this enables to turn the
work part to the next level (Z axis-parallel contour) in one machining run.
E Recessing angle of the tool
If no recessing angle has been programmed the control calculates its value
based on the values of correction value storage of the currently selected tool.
A Withdrawal angle of the tool
If no withdrawal angle has been programmed the control calculates its value
based on the values of the correction value storage of the currently selected
tool.

F Please note:
It is possible that the contour to be machined with the cycle in question is
eventually modified by the programming of the angles E and A. In such a case
there might be a remaining chip left over. Therefore, the system displays the
following warning: “Contour cannot be fully machined with the tool“.

88 Programmer's Guide for CNC Turning, Version 6.07


Straight Roughing Cycle for any Contour G81
O Deactivating path optimizing
O1 As a standard function the cycle G81 optimizes travel paths of the
tool with reference to the actual work part. Thus so-called „empty
moves“ are eliminated. This standard function can be switched off
by entering O1; this means no travel path optimizing is carried out.

Q Deactivating contour strings-up after each roughing level


Q1 When processing the cycle G81 the tool follows the contour path up
to the preceding roughing level as a standard. This function can be
switched off by setting Q1. The tool is then withdrawn from the
roughing level immediately after completing the contour without
contour follow-up.
Programming The starting point of the contour is programmed in the NC block with the cycle
hints call G81 or in the first NC block with path command. In the subsequent NC blocks
the path of the complete contour is being described. Machining takes place on this
contour. The contour description is completed with command G80, and at the
same time the machining of the cycle is started. By setting a limiting window it is
possible to fade out part of the contour for machining.
Immediately after the cycle G81 has been programmed the simulator is able to use
a previously specified nominal contour for executing the cycle G81, as an
alternative to the description of the contour. This is possible with the command
G51. Hereby it is to be noted that in such a case it is absolutely necessary to
program the cycle call G80 with the addresses X and Z for the limiting window
(also see cycle G80).
The cycle G81 then works out exactly those parts of the programmed nominal
contour which are within the limiting window. Hereby it may occur that the
nominal contour is split into several contour sections. The cycle then processes
those contour sections which can be machined with the selected tool.

When declining contour sections or undercuts with a small finishing allowance are
being machined it is necessary to select tool nose compensation. In such a case
G41 or G42 needs to be called with the cycle G81 immediately after the NC block,
i.e. prior to programming the contour. The tool nose compensation is to be
switched off after contour description, prior to the cycle call G81. The cycle G81
uses the work part contour for the definition of the cutting radius compensation by
calculating the mathematical equidistant in distance of the cutting radius of the tool
applied. The equidistant is then used for the definition of the travel paths of the
tool. This procedure corresponds to a free preview when calculating the
cutting radius compensation.
A finishing allowance (in X, Z or equidistant) can be programmed with
command G57.
If the diameter of the current tool for outside machining is larger or for inside
machining smaller than the diameter of the final point of the programmed contour
at the moment the cycle G81 is being called, the contour is extended to the outside
or to the inside respectively up to the diameter of the current tool position.

Programming ...
example N010 G51 X+0 Z+0 O+1
N011 G71 X+35 Z+0
Programming of a N012 ...
nominal contour ...
G51 and a limiting ... description of the nominal contour ...
window G80 for ...
straight roughing N050 G50
with G81 N051 G81 I+4
N052 G80 X+5 Z-80...

© MTS GmbH 1998 89


G81 Straight Roughing Cycle for any Contour

Straight roughing = starting point (current


cycle with any tool position when
contour calling the cycle)
(outside machining) = programmed starting
point of the contour
= contour points
(description of the
contour)

Programming ...
example N145 G00 X+50 Z+5
N150 G81 X+18 Z+3 I+7
Straight roughing N155 G42
cycle N160 ...
for any contour ...
(outside machining) ... description of the contour ...
...
N215 G40
N220 G80
...

Straight roughing = starting point


cycle for any (current tool position
contour when calling the
(inside machining) cycle)
= programmed contour
starting point
= contour points
(description of the
contour)

Programming ...
example N345 G00 X+8 Z+6
N350 G81 X+76 Z+4 I+7
Straight roughing N355 G41
cycle N360 ...
for any contour ...
(inside machining) ... description of the contour ...
...
N415 G40
N420 G80
...

90 Programmer's Guide for CNC Turning, Version 6.07


Straight Roughing Cycle for any Contour G81
Infeed interruption
for chip breaking of
straight roughing
cycle.

H specifies for chip breaking the string after which the infeed is interrupted in each
case. W specifies the string the tool is withdrawn before starting to machine again
the string specified under H.

Final roughing
optimizing
a) Cutting division
without final
cutting
optimizing

b) Cutting division = final roughing


with final optimized roughing
roughing level
optimizing

Programming Infeed I=4 mm


example Final roughing optimizing L=25%
Final roughing Final roughing optimizing for cycle G81 considers for optimizing Z- parallel
optimizing elements of a programmed contour string. Without final roughing optimizing (a) the
cycle is run 5 times for the contour. Using the final roughing optimizing, however,
the infeed is increased by 25 % up to maximum 5 mm, if this possible to machine
in this way the following Z-parallel contour element. In the following example
consequently the cuts 1 and 4 are being optimized (b). Herewith one machining
run less is required.

© MTS GmbH 1998 91


G81 Straight Roughing Cycle for any Contour

Recessing angle E
for outside
machining
a) recessing angle
E is larger than
the angle of the
„descending
contour “

b) recessing angle = programmed contour


E is smaller than
= maximum contour
the angle of the
possible to realize
„descending
contour“ = remaining final
roughing volume

The recessing angle E plays an important role for the programming of the
„descending contour“. Its value depends on the type of the tool holder applied, and
it is stored in the correction value register of the corresponding tool.
When using the command G81, E can be programmed separately as well. In this
case the cycle uses the value E stored under G81 instead of the respective value
stored in the correction value register of the tool.

To be able to generate a descending contour with a tool the recessing angle E has
to be larger than the angle of the „descending contour“ (a).
If the recessing angle E is smaller than the angle of the „descending contour“ the
programmed contour cannot be machined with the selected tool.(b). When
processing the cycle only the contour which at maximum can be machined with the
current tool is realized. Hereby a final roughing volume remains. In such a case the
following warning is displayed: „Contour cannot be fully machined with the tool“.

Recessing angle for


inside machining
a) recessing angle
E is larger than
the angle of the
„falling contour“

92 Programmer's Guide for CNC Turning, Version 6.07


Straight Roughing Cycle for any Contour G81
b) recessing angle = programmed contour
E is smaller than
= maximum contour to
the angle of the
be realized
„descending
contour“ = remaining final
roughing volume

Withdrawal angle
for outside
machining
a) withdrawal angle
A is larger than
the angle of the
„descending
contour with
undercuts“
b) withdrawal angle = programmed contour
A is smaller than
= maximum contour to
the angle of the
be generated
„descending
contour with = remaining final
undercuts“ roughing volume

The withdrawal angle A plays an important role for the programming of the
„ascending contour with undercuts“. It depends on the type of the currently applied
tool holder and is stored in the correction value register of the corresponding tool.
When using the command G81 it is possible to program A separately as well. The
cycle then uses the value A programmed under G81 instead of the value stored in
the correction value register of the tool
To be able to generate an ascending contour with a tool the withdrawal angle A has
to be larger than the angle of the „ascending contour (a)“.
If the descending angle A is smaller than the angle of the „ascending contour with
undercuts“ the programmed contour cannot be machined with the selected tool (b).
Therefore, when processing the cycle only the maximum possible contour is
realized. This means that a final roughing volume remains. In such a case the
following warning is displayed: „Contour cannot be fully machined with the tool“.

© MTS GmbH 1998 93


G81 Straight Roughing Cycle for any Contour

a) withdrawal angle
A is larger than
the angle of the
„descending
contour with
undercuts“

b) withdrawal angle = programmed contour


A is smaller than
= maximum contour
the angle of the
possible to realize
„descending
contour with = remaining final
undercuts“ roughing volume

Programming ...
example N25 G00 X+90 Z+10
N30 G57 +1
Recessing and N35 G81 X+20 Z+2 I+5 E+45 A+45
withdrawal angle N40 G42
for straight N45 G01 Z+0
roughing cycle G81 ...
N90 G40
N95 G80

In the first machining phase of this example the programmed contour is roughed
with a corner turning tool (reversible tips Type S, end tool entering angle 45°) in
depth of 1 mm (see the next figure).

94 Programmer's Guide for CNC Turning, Version 6.07


Straight Roughing Cycle for any Contour G81
Using recessing
and withdrawal
angle for the
programming of a
straight roughing
cycle G81
(roughing of the
contour)

During interactive programming the CNC simulator indicates that the programmed
contour cannot be machined completely with this tool. In the graphic representation
the actually roughed area is highlighted in color.

In the second machining phase the contour is roughed with a further corner turning
tool. Here as well, the CNC simulator highlights in color the area which has actually
been roughed (see the next figure). Like for roughing the cycle optimizes the travel
paths automatically., so that „empty moves“ are avoided.

Using recessing
and withdrawal
angle for
programming a
straight roughing
cycle G81 (finishing
of contour)

© MTS GmbH 1998 95


G81 Straight Roughing Cycle for any Contour

Travel path
optimizing for
straight roughing
cycle G81

a) G81 with travel


path optimizing
(standard)

= premachined contour
= cut-out material section area

If optimizing is activated the cycle calculates the diameter of the outer material
edge in the roughing area and starts the infeed I from this outer edge. The
roughing paths including their dimensions are hereby placed on the material
section area to be roughed and all travel paths outside of this area are optimized.
This travel path optimizing which is activated as a standard function enables to
eliminate the so-called „empty moves“ when using the straight roughing cycle G81.

b) G81 without
travel path
optimizing

= Area of the so-called „empty moves“ created through deactivated travel path optimizing
(optional address O1)
= cut-out material section area
= premachined contour

If travel path optimizing has been deactivated the first infeed I starts from the
current tool position or from the outer edge of limiting window stored under G80.

96 Programmer's Guide for CNC Turning, Version 6.07


Straight Roughing Cycle for any Contour G81
Contour sequences
for straight
roughing cycle G81

a) G81 without
contour
sequences after
each roughing
level

= if contour sequence function (optional address Q1) is deactivated the „corners“ remain
unfinished after each roughing level

b) G81 with
contour
sequences after
each roughing
level (standard)

Due to activated contour sequences after each roughing level as a standard setting
the edges created by straight roughing cycle G81 are avoided.

© MTS GmbH 1998 97


G82 Cross Roughing Cycle with any Contour

5.11 Cross Roughing Cycle with any Contour G82


The parameters of the cycle G82 have been extended compared with the version
5.x. Furthermore, the addresses E, A, O and Q have been added as well.

Function With the command G82 the cycle for roughing in plane direction (parallel to X axis)
is programmed with any connecting contour. G82 can be used for both inside and
outside machining.

NC-Command G82 K... [X... Z...] [R... V...] [H... W...] [L...] [E...] [A...] [O...] [Q...]

Addresses K Infeed
K indicates the infeed value in Z direction after each cut.

When processing the cycle the infeed value can deviate from the
programmed values, because its value depends on the address values C, V
and L..
Optional X, Z Coordinates of the contour starting point
Addresses If these coordinates have not been programmed the end point of the first
travel command (G00, G01, G02, G03, G71, G72, G72) after the cycle call
becomes the contour starting point.
R Degression of cutting depth
The decrease value for the infeed K after each cut is stored under the
address C.
V Minimum infeed
The minimum infeed value is stored under the address V. The programmed
value V specifies the minimum value to which infeed value K is reduced by
the decrease value C. If V has been programmed, C has to be programmed
as well.
H Chip breaking, infeed interruption in X direction
H specifies the length of the string in X direction after which the infeed is
interrupted for chip breaking. H and W have to be programmed together.
W Chip breaking, tool returns in X direction
W specifies the string the tool returns after chip breaking. H and W have to
be programmed together.
L Final roughing optimizing
A non-fraction percentage (1 <= L <= 100) of the infeed K is programmed
under L. This value is used by the control to increase the infeed for the last
roughing level at maximum by the percentage stored under L in case it is
possible in this way to machine the work part in one machining run to the
next machining level (contour path parallel to X axis).
A Recessing angle of the auxiliary cutting edge of the tool
If no recessing angle has been programmed the control calculates its value
based on the entries in the correction value register of the currently selected
tool..
E Withdrawal angle of the main cutting edge of the tool
If no withdrawal angle has been programmed the control calculates its value
based on the entries in the correction value register of the currently selected
tool.

F Please note:
The contour string processed by the cycle is modified by the programming of the
angle E and A. As in such a case eventually a residual roughing remains the
following warning might be displayed: „Contour cannot be fully machined with the
tool“.
98 Programmer's Guide for CNC Turning, Version 6.07
Cross Roughing Cycle with any Contour G82
O Deactivating travel movement optimizing
O1 In general, the cycle G82 optimizes the travel path of the tool with
reference to the work part. This function can be switched off by setting O1.
i. e. no travel path optimizing takes place.
Q Deactivating contour strings after each roughing level
Q1 When processing the cycle G82 the tool follows, as a standard, the
contour string up to the preceding roughing level. This function can be
switched off by setting Q1. The tool is then withdrawn from the roughing level
immediately after completing the contour without following the contour.

Programming The starting point of the contour is programmed in the NC block with the cycle
hints call G82 or in the first NC block of the travel command. The subsequent NC blocks
describe the path of the full contour to be machined. The command G80
completes the contour description and also starts the processing of the cycle. With
G80 it is possible to exclude from machining part of the contour by switching it off
with the limiting window.
Immediately after the cycle G82 has been programmed the simulator is able to use
a previously specified nominal contour for executing the cycle G82, as an
alternative to the description of the contour. This can be done with the command
G51. Hereby it is to be noted that in such a case it is absolutely necessary to
program the cycle call G80 with the addresses X and Z for the limiting window
(also see cycle G80).
The cycle G82 then processes only those parts of the programmed nominal
contour which are within the limiting window. Hereby it might occur that the
nominal contour is split into several contour sections by the limiting window. The
cycle consequently generates only those contour sections which can be machined
with the selected tool.
If machining takes place with tool nose compensation G41 or G42 have to be
called immediately after the NC block with the cycle G82, i. e. prior to the
programming of the contour. The selection of the tool nose compensation is to be
placed after the contour description and prior to the cycle call G80.

Finishing allowance (in X, Z or equidistant) can be programmed with the


command G57.

If the diameter of the current tool position is in case of outside machining larger
or in case of inside machining smaller than the diameter of the end point of the
programmed contour at the moment the cycle G82 is being called, then the end
point will be extended parallel to the axis respectively either to the outside or inside
up to the diameter of the current tool position.

© MTS GmbH 1998 99


G82 Cross Roughing Cycle with any Contour

Straight roughing = starting point (current


cycle with any tool position when
contour calling the cycle)
(outside machining) = programmed contour
starting point
= contour points
(description of the
contour)

Programming ...
example N045 G00 X+75 Z+2
N050 G82 X+72 Z-35 K+5
Straight roughing N055 G41
cycle with any N060 ...
contour (outside ...
machining) ... description of the contour ...
...
N115 G40
N120 G80
...

Plane roughing = starting point (current


cycle with any tool position when
contour calling the cycle)
(inside machining) = programmed contour
starting point
= contour points
(description of the
contour)

Programming ...
example N345 G00 X+10 Z+5
N350 G82 X+15 Z-50 K+7
Plane roughing N355 G42
cycle for any N360 ...
contour (inside ...
machining) ... description of the contour ...
...
N415 G40
N420 G80
...

100 Programmer's Guide for CNC Turning, Version 6.07


Cross Roughing Cycle with any Contour G82
Infeed interruption
for chip breaking in
plane roughing

For chip breaking H specifies the path after which the infeed is interrupted in each
case. W specifies the path the tool returns before starting a new path H as an
infeed.

Final roughing = Residual infeed of


optimizing the last machining
a) cutting division run
without final = programmed contour
roughing
optimizing

b) cutting division = first and last infeed


with final after final roughing
roughing optimizing
optimizing = programmed contour

Recessing angle for = machining direction


machining outside
a) the recessing
angle A is larger
than the angle of
the „descending
contour with
under-cuts“

© MTS GmbH 1998 101


G82 Cross Roughing Cycle with any Contour

b) the recessing = programmed contour


angle A is
= maximum possible
smaller than the
contour which can
angle of the be generated
„descending
contour with = remaining chip rest
undercuts“: a volume
residual chip = machining direction
remains

The recessing angle A is an important entity for the programming of „descending


contours“. It is directly related to the type of the tool holder applied and is stored in
the correction value register of the corresponding tool.
When using the command G82 it is possible to program E separately. In this case
the cycle then uses the value A programmed in G82 instead of the, by 0,5°
corrected, value from the correction value register of the tool.
To be able to create a descending contour with a tool the recessing angle A needs
to be larger than the angle of the „descending contour“ (a).
If the recessing angle A is smaller than the angle of the „descending contour“ the
programmed contour cannot be realized with the selected tool (b). In this case,
when working out the cycle, only the maximum contour possible to be machined
with the selected tool is therefore realized. Hereby a residual cutting volume
remains. In such a case the following warning is displayed: „Contour cannot be fully
machined with the tool“.

Recessing angle for = machining direction


inside machining
a) recessing angle
A is larger than
the angle of the
„descending
contour with
under-cuts“

b) recessing angle = programmed contour


A is smaller than
= maximum contour
the angle of the
possible to realize
„descending
contour with = remaining rest cutting
undercuts“: a volume
residual chip = machining direction
remains

102 Programmer's Guide for CNC Turning, Version 6.07


Cross Roughing Cycle with any Contour G82
Withdrawal angle = machining direction
for outside
machining
a) withdrawal angle
E is larger than
the angle of the
„descending
contour“

b) withdrawal angle = programmed contour


E is smaller than
= maximum contour
the angle of the
possible to realize
„descending
angle with = remaining rest cutting
undercuts“: a volume
residual chip = machining direction
remains

The withdrawal angle E is an important entity for the programming of „ascending


contours with undercuts“. It is directly connected with the type of the tool applied
and it is stored in the correction value register of the corresponding tool.
When using the command G82 it is possible to program E separately. In this case
the cycle then uses the value A programmed in G82 instead of the by 0,5°
corrected value from the correction value register of the tool.
To be able to realize an ascending contour with a tool the withdrawal angle A needs
to be larger than the angle of the „ascending contour“ (a).
If the recessing angle E is smaller than the angle of the „ascending contour with
undercuts “ the programmed contour cannot be realized with the selected tool (b).
In this case, when working out the cycle, only the maximum contour possible to be
machined with the selected tool is therefore realized. Hereby a rest cutting volume
remains. In such a case the following warning is displayed: „Contour cannot be fully
machined with the tool“.

© MTS GmbH 1998 103


G82 Cross Roughing Cycle with any Contour

Withdrawal angle = machining direction


for inside
machining
a) withdrawal angle
E is larger than
the angle of the
„descending
contour“

b) withdrawal angle = programmed contour


E is smaller than
= maximum contour
the angle of the
possible to realize
„descending
contour“: a = remaining rest cutting
residual chip volume
remains = machining direction

Optimizing travel
path in plane
roughing cycle G82
of a premachined
work part

a) G82 with travel


path optimizing
(standard)

= premachined contour
= the maximum contour machinable with the current tool
= cut-out material section area

If travel path optimizing has been activated the cycle calculates the Z coordinate of
the outer material edge in the roughing area and starts the infeed I from this outer
edge. The roughing paths including their dimensions are hereby placed on the
material section area to be roughed and all travel paths outside of this area are
optimized. This travel path optimizing, which is activated as a standard function,
enables to eliminate the so-called „empty moves“ when using the plane roughing
cycle G82.

104 Programmer's Guide for CNC Turning, Version 6.07


Cross Roughing Cycle with any Contour G82
b) G82 without
travel path
optimizing

= Area of so-called „empty moves“ created by deactivated travel path


optimizing (optional address O1)
= premachined contour
= the maximum contour machinable with the current tool
= cut-out material section area

If travel path optimizing has been deactivated the first infeed I starts from the
current tool position or from the outer edge of the limiting window stored under
G80.

Contour sequences
of plane roughing
cycle G82

a) G82 without
contour
sequences after
each roughing
step

= if contour sequence (optional address Q1) is not activated the „corners“


remain unfinished after each roughing step

© MTS GmbH 1998 105


G82 Cross Roughing Cycle with any Contour

b) G82 with
contour
sequences after
each roughing
step (standard)

Due to activated contour sequences after each roughing step as a standard setting
of the plane roughing cycle G82 unfinished „corners“ are avoided.

106 Programmer's Guide for CNC Turning, Version 6.07


Processing Cycle (Last Specified Cycle) G80

5.12 Processing Cycle (Last Specified Cycle) G80


Function The command G80 executes the most recently programmed cycle. When using
G80 it is possible to specify an optional rectangle limiting window for the cycles
G81, G82 and G87.
By placing the limiting window, part of the contour area programmed after the cycle
call G81, G82 or G87 can be faded out. If no contour was programmed between
the cycle call (G81, G82 or G87) in that case the contour to be machined is faded
out in the window from the full work part contour which was programmed with G51.
If no contour was programmed an error message is displayed.
When placing a limiting window the window edge has to be placed in the infeed
direction in front of the material edge or exactly on the material edge. If this is not
the case, the control would try to feed in into the material and would so cause a
collision.

NC-Command G80 [X... Z...] [I... K...]

Optional X, Z Coordinates of the first corner point of the limiting window


Addresses
If X and Z have not been programmed no limiting window can be used.
I, K Coordinates of the second corner point of the limiting window
If I and K have not been programmed the control automatically takes the
current tool position as the second corner point of the limiting window when
programming X and Z.

F Please, note that the coordinate X has to be programmed as a diameter,


the coordinate I, however, as a radius.

Programming a
limiting window for
cycle processing

= starting point
(current tool position when calling the cycle)
= first corner point of the limiting window
= second corner point of the limiting window
= material to be cut off
= contour of the finished part programmed with G51

© MTS GmbH 1998 107


G80 Processing Cycle (Last Specified Cycle)

Programming ...
example N345 G00 X+100 Z+5
N350 G81 I+4
Programming N355 G42
limiting window for N360 ...
cycle processing ...
... contour description ...
...
N415 G40
N420 G80 X+40 Z-75 I+50 K-42
...

The following figures demonstrate the two alternative ways to use the limiting
window. Hereby the full contour was programmed as a nominal contour using the
G51 command. The called straight roughing cycle G81 optimizes the travel paths to
avoid so-called „empty moves“.

Calling straight
roughing cycle G81
with the NC
command G80
Alternative 1:
G80 X+5 Z-75

= starting point (current tool position when calling the cycle) = second corner
point of the limiting window
= first corner point of the limiting window
= limiting window
= material to be cut off
= full contour programmed with G51 (nominal contour)

108 Programmer's Guide for CNC Turning, Version 6.07


Processing Cycle (Last Specified Cycle) G80
Calling straight
roughing cycle G81
with the NC
command G80,
after having
prorogued the work
part already
Alternative 2:
G80 X+40 Z-75 I+50
K-42

= starting point (current tool position when calling the cycle)


= first corner point of the limiting window
= second corner point of the limiting window
= limiting window
= material to be cut off
= full contour programmed with G51 (nominal contour)

© MTS GmbH 1998 109


G83 Contouring Cycle/Multipass Cycle

Programming Example:

N165 G00 X+55 Z+21


N170 G83 X+10 Z+3 I+6
N175 G42
N180 (Contour description)

ò
N235 G40
N240 G80

Diagram G83.1: Contouring Cycle G83

In this example, depending on the position of the Given the same values at I and K but with a
starting point relative to the first contour point, different starting point, the infeed distance I is
programming of infeed K will reduce the number of greater and consequently results in a reduction of
cutting passes required. cutting passes.
Diagram G83.2: If addresses I and K are programmed, the control system will select an
infeed which results in a reduction of cutting passes.

Pattern of recesses at a constant


distance

Programming Example:

N295 G00 X+052.100 Z-043.600


N300 G83 X+052.100 Z-063.600 K+010
N305 G79 X+047 Z-063.600 I+001 K+001 A+001 W+001 O110 Q110
N310 G80
Diagram G83.3 : Recessing cycle G79 as part of the contouring cycle G83

110 Programmer's Guide for CNC Turning, Version 6.07


Contouring Cycle/Multipass Cycle G83

5.13 Contouring Cycle/Multipass Cycle G83


Function Motion commands or further cycles programmed between the G83 command and
the G80 command (which terminates the cycle) will be multiply executed,
depending on the programmed infeed. In this way the G83 command can be
employed to effect a contouring cycle, e.g. in the machining of pre-fabricated blanks
or with internal machining. A sequence of recesses at constant distances can also
be executed.

NC Block G83 X... Z... I... K...


Addresses X X-coordinate of the first point of the contour, related to the diameter
Z Z-coordinate of the first point of the contour
I Infeed in X, as related to the radius
K Infeed in Z
Explanation With contouring the infeed motion starts at the initial tool position (starting position)
and proceeds to the first (starting) point of the contour, as programmed in the G83
NC block. The depth of cut in direction X and Z is programmed at the address I or
K. If both addresses are programmed, the control system will execute that cutting
depth which results in the smallest number of passes - which of the addresses is
selected will depend on the starting position of the tool as related to the
programmed start of the contour (see Diagram G83.2).

Following the G83 command the appropriate motion commands (contour


description) or cycles initiates must be programmed. G80 completes the contour
description and starts the cycle execution.

Example Recessing Cycle (G79): recesses cuts at a constant distance


(see Diagram G83.3):

N295 G00 X+052.100 Z-043.600


N300 G83 X+052.100 Z-063.600 K+010
N305 G79 X+047 Z-063.600 I+001 K+001 A+001 W+001 O110 Q110
N310 G80

After each cutting pass the tool is adjusted in direction Z by K=10 (NC Block N300),
relative to the programmed start of the contour. After each feed adjustment the
recessing cycle G79 is executed, resulting in two recesses at a distance of 10 mm.

Programming Hints If tool nose compensation is to be selected during machining, G42 or G41 must be
invoked immediately after the cycle command G83 and prior to the travel
commands. Tool nose compensation must be canceled (by G40) before the cycle is
terminated (by G80).

F
With multipass cycles it is advisable to program the tool path limitation G36.
Particularly when internal cuts are executed, this range limitation is indispensable.
See next page for an explanation of the G36 command.

© MTS GmbH 1998 111


G36 Travel Range Limitation for Multipass Cycles

Programming Example:

N165 G00 X+55 Z+21


N170 G83 X+10 Z+3 I+6
N175 G42
N180 (Contour Description)

ò
N235 G40
N240 G80

Diagram G36.1: Contouring Cycle G83 without Travel Range Limitation

Programming Example:

N165 G00 X+55 Z+21


N170 G83 X+10 Z+3 I+6
N175 G36
N180 G42
N185 (Contour Description)

ò
N240 G40
N245 G80

Diagram G36.2 Contouring Cycle G83 with Travel Range Limitation

Programming Example:

N110 G83 X+45 Z+21 I+3.2


N115 G36
N120 G36
N125 G41
N130 (Contour Description)

ò
N195 G40
N200 G80
Diagram G36.3 Travel Range Limitation with Internal Machining

112 Programmer's Guide for CNC Turning, Version 6.07


Travel Range Limitation for Multipass Cycles G36

5.14 Travel Range Limitation for Multipass Cycles G36


Function The G36 command can be used to limit the tool path range whenever the
contouring cycle G83 or other multipass cycles are programmed.

NC Block G36

Explanation The contouring cycle G83 effects the execution of multiple cutting passes along the
programmed contour, the number of passes being dependent of the programmed
depth of cut. As shown in Diagram G36.1, part of the tool motion is outside the
workpiece contour. The G36 command limits the range of tool motions, in order to
reduce the machining time (see Diagram G36.2). With relief cuts, however, this
may result in collisions when the tool plunge is too deep.

Travel range limitation is of special importance when internal contouring is


programmed, because travelling along the complete contour would result in a
collision (see Diagram G36.3).

The G36 command limits the travel range to the quadrant opposite the tool tip.

The actual path limitation is dependent on the programmed start of the contour:

- when the tool position is higher than the start of the contour, no tool motions
above the programmed X-coordinate will be executed (Diagram G36.2).
- when the tool position is lower than the start of the contour, no tool motions
below the programmed X-coordinate will be executed (Diagram G36.3).

Programming Hints The G36 command must be programmed after the NC block invocating the G83
cycle.

If a finishing allowance G57 is programmed before the start of the cycle, the
programmed value must be taken into account when determining the starting
position of the tool.

© MTS GmbH 1998 113


G84 Deep Drilling Cycle

Programming Example:

N135 G01 X+0 Z+10


N140 G84 Z-130 A+0.5 B+1 D+15 K+50

Diagram G84.1

114 Programmer's Guide for CNC Turning, Version 6.07


Deep Drilling Cycle G84

5.15 Deep Drilling Cycle G84


Function The G84 command serves to execute the drilling of a hole by a number of repeated
cutting operations.

NC Block
G84 Z... A... B... D... K...

Addresses Z Z-coordinate of the end point.


A Dwell time (sec) after tool retraction for chip-removal
B Dwell time (sec) for chip-breaking
D Degression:
The drilling depth K is reduced after each drilling pass by the value
programmed at D. It may not, however, fall short of D
K Drilling depth of the first pass.

Explanation The G84 command defines a deep drilling cycle.

Example (see Diagram G84.1):


In the given example the total drilling depth, programmed at Z, is Z = 130 mm.
The depth of the first drilling is K = 50 mm. With each of the following passes
the depth K is reduced by the value D = 15 mm (Degression). It may not,
however, fall short of D. For chip-breaking the feed motion is interrupted after
each drilling pass for the specified dwell time B; for chip-removal the tool is
retracted to the clearance plane where it remains for the specified dwell time.
The remaining depth to be drilled is computed by the control system and divided
into two equal final cuts (in the given example 5 mm for each pass).

Programming Hints The applicable feedrate and speed must be programmed in a preceding NC block.

© MTS GmbH 1998 115


G85 Clearance Cutting Cycle

Clearance Cut Type E

Programming Example:

N210 G85 X+40 Z-40

Diagram G85.1

Clearance Cut Type F

Programming Example:

N270 G85 X+40 Z-40 K+0

Diagram G85.2

116 Programmer's Guide for CNC Turning, Version 6.07


Clearance Cutting Cycle G85

5.16 Clearance Cutting Cycle G85

in Compliance with DIN 509 Types E and F


Function The G85 command serves to program clearance cutting cycles in compliance with
the German standard DIN 509 type E or type F, as well as thread undercuts
according to DIN 76 . The type of cut to be executed is determined by the control
system, depending on which addresses have been programmed.

The only difference in geometry between clearance cuts types E and F of is


determined by the parameter t2 (see Diagram G85.1 and G85.2). Dimension values
such as length, depth, rounding radius and machining allowance will be dependent
on the diameter of the workpiece at the programmed corner point
(see the table below).

Cross Reference If a clearance cut is programmed as a G78 cycle, the dimensions of the cut can be
programmed at wiil, as long as they remain within a range of pre-defined
dimensions.

NC Block G85 X... Z... [K...] [D...] [I...]

Addresses X X-Coordinate of the corner point at which the clearance cut is executed.
Z Z-Coordinate of the corner point at which the clearance cut is executed.

Optional Addresses K Parameters of the clearance cut:


If K is not programmed: Clearance cut according to DIN type E
If K = 0 is programmed: Clearance cut according to DIN type F
If K greater than 0 is programmed: Thread undercut / DIN 76 (see DIN)

Explanation The clearance cut is executed at the programmed corner point, with the following
dimensions, depending on the workpiece diameter:

Diameter X f r t1 t2 (type F only)


less than 18 mm 2 0,6 0,35 0,1
18 to 80 mm 2,5 0,6 0,35 0,2
more than 80 mm 4 1 0,45 0,3

f length
r radius
t1 depth
t2 machining allowance (with type F only)

© MTS GmbH 1998 117


G85 Clearance Cutting Cycle

Clearance Cut Type F and


Finishing Allowance D

Programming Example:

N210 G85 X+40 Z-40 D+0.2 K+0

Diagram G85.3 : The clearance cut is shifted in directions X and Z by the value programmed at D.

At the start of a clearance cutting cycle the tool


must be positioned within the area included by
an angle of 45 degrees to the following contour.

Diagram G85.4 : Tool position at the invocation of a clearance cutting cycle

If the programmed clearance cut is to be


executed with tool nose compensation (TNC) in
operation, the minimum angle of the approach
line to the subsequent bevelled contour must be
180 degrees.

Diagram G85.5 : Approach angle with tool nose compensation (TNC) in operation.

118 Programmer's Guide for CNC Turning, Version 6.07


Clearance Cutting Cycle G85

Optional Addresses D Machining allowance


The rounded transitions of the clearance cut are shifted in the directions X
and Z by the value programmed at D (see Diagram G85.3).
I Grinding allowance
The grinding allowance must be accounted for when the starting point is
programmed.

Programming Hints To ensure thath the clearance cutting cycle is executed according to the
programmed dimensions it is advisable to ensure that the starting point has been
correctly programmed (see diagrams G78.4 and G78.5). Due to the relatively small
dimensions concerned we also recommend the programming of the tool nose
compensation (see G41/G42).

© MTS GmbH 1998 119


G85 Thread Undercut

Thread Undercut
in Compliance with DIN 76

Programming Example:

N270 G85 X+40 Z-40 I+2 K+8

Diagram G85.6

120 Programmer's Guide for CNC Turning, Version 6.07


Thread Undercut G85

5.17 Thread Undercut in Compliance with DIN 76


Function If the G85 command and its addresses X, Z, I and K are programmed, a thread
undercut in compliance with DIN 76 will be executed.

NC Block G85 X... Z... I... K...

Addresses X X-coordinate of the corner point at which the clearance cut is executed
Z Z-coordinate of the corner point at which the clearance cut is executed
I Depth of cut relative to the radius
K Length of the clearance cut. Only positive values programmed at K are valid.

Programming Hints Note: due to the geometry of a clearance cut, the value determining the length K
must be at least 2,34 times the value I determining the depth.

The radius r is computed by the control system, according to the cutting depth I.
The radius will always be at a ratio of 0.6 of the programmed depth.

Cross Reference The G85 cycle with its addresses X, Z, I and K is identical to the thread undercut
G78, with the same addresses (see above p.87).

© MTS GmbH 1998 121


G86 Recessing Cycle for rectangular recesses

Programming Example:

N250 G86 X+32 Z-20 K-8

Diagram G86.1 : Recessing Cycle G86 without finishing allowance; the recess is executed to
the left of the programmed corner point (K with a negative sign).

Programming Example:

N195 G86 X+32 Z-20 B+1 I+0.7 K+8

Diagram G86.2 : Recessing Cycle G86 with finishing allowance (dashed line) and radius of the
roundings at the bottom edges. The chamfers at the top edges of the recess
are dependent on the distance between the tool and the programmed corner
point.

122 Programmer's Guide for CNC Turning, Version 6.07


Recessing Cycle for rectangular recesses G86

5.18 Recessing Cycle for rectangular recesses G86


Function The cycle G86 serves to program rectangular recesses (sides parallel to the X-axis)
with chamfers at the top edge and roundings at the bottom edge.

NC Block G86 X... Z... K... [B...] [I...]

Addresses X, Z If K > 0 : coordinates of the left corner point of the recess


If K < 0 : coordinates of the right corner point of the recess.

K Width of recess:
If K+ is programmed, the recess is executed to the right of the corner point
X,Z.
If K- is programmed, the recess is executed to the left of the corner point
X,Z.

If K is not programmed, a recess to the right of the programmed corner


point is executed with the tool width as specified in the compensation value
register.

Optional Addresses B Radius of rounding at the bottom edge of the recess. If B is programmed, a
finishing allowance must also be programmed at I.
I Finishing allowance related to the the diameter.

Explanation Starting from the tool position at cycle invocation (starting point), in the first pass
the rectangular recess (as indicated by the dashed lines in Diagram G86.2) is cut,
taking into account the programmed finishing allowance I.
In the second pass the recess is cut to the finished size as programmmed at X/Z
and K, including eventual roundings.
When a finishing allowance I has been programmed, the tool will feed 1.3 mm
along both the left and right edges at an angle of 45°. If the distance between the
tool and the workpiece is less than 1.3 mm this operation results in chamfering of
the upper edges of the recess.

Programming Hints The absolute value programmed at address K must be greater or equal to the tool
width stored in the compensation register.

Cross Reference The G86 recessing cycle is different from the G79 recessing cycle (see p.89) with
regard to geometry and optionally programmable addresses.

© MTS GmbH 1998 123


G87 Recessing Cycle for any Contour

5.19 Recessing Cycle for any Contour G87


Function With the command G87 a recessing cycle is programmed. With this command any
contour can be roughed or finished. G87 can only be used with a recessing tool or
a copying chisel with a round turnplate as a tool. Both straight and plane
recessing can be made.
If none of the optional switches O or Q is switched on when programming the
recessing cycle G87 the following standard setting is valid for processing the cycle:
Standard settings • G87 is interpreted as a normal recessing cycle for machining straight
for processing the recessing.
cycle G87
• The travel path movements of the tool are optimized with reference to the raw
part to avoid so-called „empty moves“.
• The steps created after each infeed are machined immediately after the infeed.
• G87 generates a bidirectional recessing, beginning from the right to the left.
This means that the recessing chisel changes the machining direction after
each machining step.
• If the recessing contour has several valleys the machining is done step by step.
This means that the control processes the recessing from one recessing level
to the other, simultaneously in all valleys. Sharp valleys within the programmed
recessing contour are machined exactly up to the depth where the width of the
valley is identical with the width of the chisel.

NC command G87 I... [X... Z...] [L...] [H...] [A...] [O...] [Q...]
Addresses I Infeed
The infeed I indicates the recessing chisel infeed value in X direction (with
reference to the radius) after each cut.
If a plane recessing is generated the infeed I indicates the recessing chisel
infeed value in Z direction after each cut.
When finishing a recess (switch O6) I indicates the distance by which the
recessing tool is withdrawn above the local maxima of the recess when
finishing.

Optional X, Z Coordinates of the contour starting point.


Addresses
If these coordinates have not been programmed the point of the first travel
path command after the cycle call becomes the contour starting point.

L Final roughing optimizing


A non-fraction percentage (1 <= L <= 100) of the infeed K is programmed
under L. This value is used by the control to increase the infeed for the last
roughing level at maximum by the percentage stored under L in case it is
possible in this way to machine the work part in one machining run up to the
next machining level (contour path parallel to X axis).
H Offsetting
Under the address H a recessing offset can be programmed. The non-
fraction percentage (1 <= H <= 100) indicates the recessing offset in per cent
of the cutting width of the recessing chisel. If H is not programmed the
system works with a standard offset default of 50 %. Correspondingly there is
overlapping with the value of 100-H in per cent of the cutting width of the tool.
A Dwell time (entry as revolving of the work part)
A indicates the dwell time after each recessing infeed.

124 Programmer's Guide for CNC Turning, Version 6.07


Recessing Cycle for any Contour G87

Changing The standard settings of the recessing cycle G87 can be changed by setting one
machining or more switches O or Q as follows:
settings of the
cycle

F Please note that the address O can be programmed several times and in each
case with different values within the NC command G87.

O0 Travel path optimizing


If the switch is set O0 no travel path optimizing is done for the tool movement
with reference to the raw part. Depending on the starting point of the cycle
„empty moves“ are correspondingly possible.
O1 Roughing
If the switch is set O1 the infeed levels calculated by the recessing cycle are
being roughed with the recessing chisel and not tapped with the programmed
set-off.
O2 Finishing of the contour
If the switch is set O2 the cycle G87 leaves the machined steps after each
infeed without final milling to mill them at the end of the cycle only (finishing
of the contour).
O3 Machining from left to right
If the switch is set O3 the recessing is machined from the left to right.
O4 Machining valley by valley or level by level
If the switch is set O4 the recessing is machined valley by valley. The control
processes each valley (=local recessing minimum) one by one.
Sharp valleys within the programmed recessing contour are machined by the
cycle G87 up to the depth where the width of the valley and the width of the
applied recessing chisel are identical.
O5 Machining direction not bidirectional
If the switch is set O5 the programmed recessing is not machined
bidirectional but in the direction as specified with O3.
O6 Finishing/adjusting
Using the switch O6 finishing of the recess contour is programmed. Prior to
using the switch O6 recessing cycle with a finishing allowance equidistant
has to be called with the command G57 B... . Please note that the contour
description of the recessing has to be repeated when calling prior to G87 O6.
Q1 Plane recessing
If the switch is set to Q1 the control is instructed to interpret the contour as a
plane recess.

© MTS GmbH 1998 125


G87 Recessing Cycle for any Contour

Programming The recessing cycle G87 can only be used with recessing tools or with copying
hints tools with round turntable. If some other tool is selected at the time of the cycle
call the following error message is displayed: „Correction values cannot be
machined“.
The starting point of the contour is programmed in the NC block with the cycle
call G87 or in the first NC block with a travel path command. The complete contour
path to be machined is specified in the subsequent NC blocks. The contour
description is completed and at the same time the machining started with the
command G80. When using G80 It is possible to set a window frame for a part
contour to be machined.
Immediately after the cycle G87 has been programmed the simulator is able to use
a previously specified nominal contour for executing the cycle G87, as an
alternative to the description of the contour. This can be done with the command
G51. Hereby it is to be noted that in such a case it is absolutely necessary to
program the cycle call G80 with the addresses X and Z for the limiting window
(also see cycle G80).
The cycle G87 then processes only those parts of the programmed nominal
contour which are within the limiting window. Hereby it might occur that the
nominal contour is split into several contour sections by the limiting window. The
cycle consequently generates only those contour sections which can be machined
with the selected tool.
If machining is to take place with tool nose radius compensation G41 or G42
has to be called immediately after the NC block with G87 cycle, i.e. prior to the
programming of the contour. Switching off tool nose radius compensation has to
take place after contour description, prior to the cycle call G80.
Finishing allowance (in X, Z or equidistant) can be programmed using the
command G57.
If the diameter of the current tool position is in case of outside machining larger
or in case of inside machining smaller than the diameter of the end point of the
programmed contour at the moment the cycle G87 is being called, then the end
point will be extended parallel to the axis respectively either to the outside or inside
up to the diameter of the current tool position.

Based on the application limits of the axial recessing tools because of the diameter
(from Dmin to Dmax) the following limitations apply to plane recessing:
• One plane recessing cycle G87 is allowed to have only one recessing minimum
(=valley).
• If plane recessing is to include several local recessing minima (=valleys) several
successive recessing cycle calls have to be programmed. In that case different
tools have to be used.
• The lowest straight line to be machined in the recess parallel to the X axis Xmin
to Xmax has to overlap with the range of application diameter of the tool Dmin to
Dmax at minimum by the width of the recessing tool.

126 Programmer's Guide for CNC Turning, Version 6.07


Recessing Cycle for any Contour G87

Plane recessing Recessing 1 with one


with two local local recessing
recessing minima minimum
Recessing 2 with one
local recessing
minimum
Recessing chisel 1 for
machining
recessing 1
Recessing chisel 2 for
machining
recessing 2

The full plane recessing contour as described in the above figure can only be
created with two successive recessing cycles as the contour has more than one
local recessing minimum.

Plane recess: = overlapping area


recess into solid
material (a)

The plane recess described in the above figure can be machined with the selected
recessing tool as the range of application diameter Dmax - Dmin of the tool overlaps
the lowest-located straight line in the recess, parallel to X axis, Xmax - Xmin by more
than the width of the recessing tool

Plane recess: = overlapping area


recess into solid
material (b)

The plane recess described in the above figure can be just and just machined with
the selected recessing tool as the range of application diameter Dmax - Dmin of the
tool is exactly as wide as the lowest-located straight line in the recess to be
machined, Xmax - Xmin, parallel to X axis, by more than the width of the recessing
tool.

© MTS GmbH 1998 127


G87 Recessing Cycle for any Contour

Plane recess: = overlapping area


recess into solid
material (c)

The recess described in the above figure cannot be machined with the selected
recessing tool as the range of application diameter Dmax - Dmin of the tool overlaps
the lowest-located straight line to be machined in the recess, Xmax - Xmin, parallel to
the X axis, by less than the width of the recessing tool.

NC addresses when = programmed contour


programming a
= programmed contour
recessing cycle -
starting point
(straight recessing)
= enlarged detail of the
cutting edge of the
recessing tool
= travel movements of
the recessing tool
(bidirectional
machining from the
right to the left (and
always changing the
machining direction)

Machining is carried out bidirectionally (standard) starting form the right to the left
and always changing the machining direction.

Programming ...
example N045 G00 X+110 Z+5
N050 G57 B+1
Recessing cycle N055 G87 X+100 Z-90 I+5 H+20
(straight recess) N060 ...
...
... Description of the contour...
...
N120 G80
...

128 Programmer's Guide for CNC Turning, Version 6.07


Recessing Cycle for any Contour G87

Roughing (O1) with = programmed contour


recessing cycle G87
= roughing (switch 01)
(straight recess)
of the first infeed
plane

Roughing is carried out bidirectionally (standard), starting from the right to the left or
starting from the left to the right (switch O3) and always changing the machining
direction.
If the optional switch O5 (machining not bidirectional) has been switched on the
recessing cycle machines also roughing in the machining direction only as defined
with O3.

Final finishing of
the contour (02) in
recessing cycle G87
(straight recess)

Machining direction = programmed contour


from the right (03)
= programmed contour
to the left in
starting point
recessing cycle G87
(straight recess) = Travel movements of
the recessing tool

© MTS GmbH 1998 129


G87 Recessing Cycle for any Contour

Machining is carried out bidirectionally (standard), starting form the left to the right
and then always changing the machining direction.
If the optional switch O5 (machining not bidirectional) has been switched on the
recessing cycle machines only from the left to the right without changing the
machining direction.

Partial machining
(04) in recessing
cycle G87 (straight
recess)

Finishing (O6) in
recessing cycle G87
(straight recess)

130 Programmer's Guide for CNC Turning, Version 6.07


Radius/Chamfer Cycle G88

5.20 Radius/Chamfer Cycle G88


The previous cycles G87 (radius) and G88 (chamfer) in the version 5.x were
combined to one cycle G88 in the version 6.

Function With the cycle G88 it is possible to make radiusing or to chamfer in lines parallel to
the axis. Hereby it is possible to go to the transition radius or to the chamfer
together with the tangenting contour elements or separately one by one.

NC command G88 X... Z... R...


Addresses X, Z Coordinates of the Corner Point the Cycle is to be Performed at
The control determines the location of the radius or of the chamfer
according to the current tool quadrants and tool position.
R Choice of Alternatives: Radius or Chamfer
R+... = The cycle machines a radius with a radius R.
R-... = The cycle machines a radius of length R.

Programming hints If the cycle G88 is programmed within a sequence of contour elements the
individual contour elements are being processed starting from the starting point of
the full contour. If the contour element is located prior to the radiusing/the chamfer
parallel to X or Z axis it is not necessary to program it within the contour element
as its path is already defined by the corner point coordinates of the cycle G88.
Within contour programming radiusing or chamfers can also be programmed
with the following general commands:
G01 X... Z... R±... or G71 X... Z... R±...
and the following contour element can also be programmed with them. The
radiusing radius or the length of the chamfer is hereby given as the address R.
If the cycle G88 is programmed separately the starting position (=actual tool
position) is to be considered during cycle invocation: the control calculates the
„direction“ of the radius or chamfer based on the contour to be approached. The
contour which is parallel to the axis and which is located closest to the actual tool
position is interpreted as the contour which is to be approached. The tool has to be
positioned in the approach area (see figures) prior to the invocation of the cycle.
The location of the starting point for the various alternatives of separate
programming of one radiusing or chamfer is being discussed in the following.

The travel movement of the tool takes place, as a rule, starting from the starting
point (= current tool position when calling the cycle) to the starting point of the
radiusing/chamfer (on the current contour to be gone to) to the end point of
radiusing/chamfer.

© MTS GmbH 1998 131


G88 Radius/Chamfer Cycle

Creating radius for = starting point (current


outer corner tool position when
calling the cycle)
= programmed corner
point of the radius
= starting point of the
complete contour
= end point of the
complete contour

Programming ...
example N165 G42
N170 G00 X+50 Z+5
Creating radius for N175 G01 Z-30
outer corner N180 G88 X+110 Z-30 R+10
N185 G01 Z-80
N190 G40
...

The radius at the outer corner and the neighboring contour elements are machined
together.

Creating radius for = starting point (current


inner corner tool position when
calling the cycle)
= programmed corner
point of the radius
= starting point of the
complete contour
= end point of the
complete contour

Programming ...
example N165 G42
N170 G00 X+50 Z+5
Creating radius for N175 G88 X+50 Z-35 R+10
inner corner N180 G01 X+110
N185 G40
...

The radius at the inner corner and the neighboring contour elements are machined
together.

132 Programmer's Guide for CNC Turning, Version 6.07


Radius/Chamfer Cycle G88
Creating chamfer = starting point (current
for outer corner tool position when
calling the cycle)
= programmed corner
point of the chamfer
= starting point of the
complete contour
= end point of the
complete contour

Programming ...
example N165 G42
N170 G00 X+50 Z+5
Creating chamfer N175 G01 Z-30
for outer corner N180 G88 X+110 Z-30 R-10
N185 G01 Z-80
N190 G40
...

The chamfer at the outer corner and the neighboring contour elements are
machined together.

Position of the = starting point (current


starting point when tool position when
going separately to calling the cycle)
the rounding at = programmed corner
outer corner point of the rounding
= starting point of the
rounding
= end point of the
rounding
= approach contour
parallel to X axis
= approach area where
the tool is to be
positioned when calling
the cycle

© MTS GmbH 1998 133


G88 Radius/Chamfer Cycle

Position of the = starting point (current


starting point when tool position when
going separately to calling the cycle)
the rounding at = programmed corner
outer corner point of the rounding
= starting point of the
rounding
= end point of the
rounding
= approach contour
parallel to Z axis
= approach area where
the tool is to be
positioned when calling
the cycle

Position of the = starting point (current


starting point when tool position when
machining calling the cycle)
separately a = programmed end point
chamfer at outer of the chamfer
corner
= starting point of the
chamfer
= end point of the
chamfer
= approach contour
parallel to X axis
= approach area where
the tool is to be
positioned when calling
the cycle

Position of the = starting point (current


starting point when tool position when
machining calling the cycle)
separately a = programmed end point
chamfer at inner of the chamfer
corner
= starting point of the
chamfer
= end point of the
rounding
= approach contour
parallel to Z axis
= approach contour
where the tool is to be
positioned when calling
the cycle

134 Programmer's Guide for CNC Turning, Version 6.07


Straight/Plane Roughing Cycle (conical contour) G89

5.21 Straight/Plane Roughing Cycle (conical contour) G89


The cycles G65 (straight roughing cycle, conical contour) and G66 (plane roughing
cycle, conical contour) in the version 5.x are replaced by a new cycle G89 in the
version 6.
Function Using G89 a straight or a plane roughing cycle with conical outer contour can be
programmed. The generated tool geometry is a cylinder with a tapered sleeve. The
cycle can be used for machining the outer or inner surface.

NC Command G89 X... Z... S.../D... Y.../E.../(A... B...) O... [I...] [K...]
[H... W...] [R... V...] [L...]
Addresses of the
straight roughing
cycle G89 for
outside and inside
machining

Addresses X, Z Coordinates of the rectangle point


This rectangle point, as a corner located opposite to the starting point of the
cycle (current tool position), describes a rectangle on whose sides all the
contour points of the conical contour are located .

F Please, note:
When processing the cycle G89 the control interprets during programming
• in a straight roughing cycle the X coordinate of the starting point
(=current tool position when calling the cycle) as a X coordinate of the
end point of the conical sleeve,
• in a plane roughing cycle the Z coordinate of the starting point (current
tool position when calling the cycle) as the Z coordinate of the end point
of the conical sleeve
This requires that the tool is positioned at the desired X and Z coordinate of
the end point of the conical sleeve prior to calling the cycle.
S Number of cuts to be made
If S is being programmed the control calculates the corresponding infeed.
As an alternative to S, D can be programmed.
D Infeed (referring to the radius)
When processing the cycles the infeed can deviate from the programmed
value as it depends on the optional addresses R, V and L. As an
alternative to D, S can be programmed.
Y X or Z coordinate of the contour point the conical sleeve begins at
Alternatively, either E or A, B can be programmed.
E Inclination angle of the conical sleeve against the negative Z axis
(straight roughing) or against the negative X axis (plane roughing)
When outside machining of the work part is being programmed E has to be
programmed with a positive sign. For the inside machining of the work part
a negative sign is used. Alternatively, either Y or A, B can be programmed.

© MTS GmbH 1998 135


G89 Straight/Plane Roughing Cycle (conical contour)

A, B Cone parameters
The inclination of the cone can also be programmed based on the relation of
the lines A and B. Hereby A represents the line in direction X (referring to
the radius) and B the line in direction Z. Alternatively, Y and E can be
programmed.
O Options: straight or plane roughing
O0 Straight roughing cycle (old: G65)
O1 Plane roughing cycle (old: G66)

Optional I Finishing allowance in X (referring to radius)


Addresses
K Finishing allowance in Z
H Chip breaking, infeed interruption in X and Z direction
H indicates the length of the line after which the infeed is interrupted to
break the chip. H and W have to be programmed together.
W Chip breaking, return path of the tool in X or Z direction
W specifies the path the tool has to return after chip breaking. H and W
have to be programmed together.
R Decrease of infeed D per cut
When entering R both D and V need to have been programmed already.
V Minimum infeed D
When entering V, both D and R need to have been programmed already.
L Optimizing final machining cycle length
A non-fraction percentage value (1 <= L <= 100) is programmed as L for the
infeed D. The control then increases the infeed for the last roughing plane at
maximum by the per cent value stored under L, if the final machining cycle
does not need to be carried out in full length to complete the work part into
its final form.

Programming Unlike the axis-parallel straight or plane roughing cycles G75 and G76 which carry
hints out machining at a straight angle against the cutting surface, the cycle G89 moves
the tool in a specified angle starting from a specified point to the end point of the
programmed contour. In this way conical contours can be roughed
For the starting point of the cone the following programming options are
available:
1. Enter the value for Y, at which the X or Z coordinates of the contour point
the cone begin.
2. Enter the inclination angle E of the cone in relation to the negative Z axis
(straight roughing) or in relation to the negative X axis (plane roughing).
3. Enter the relation of the lines A and B.

The cycle G89 is executed immediately after it has been programmed.

When processing the cycle G89 the control interprets during programming
• in a straight roughing cycle the X coordinate of the starting point (=current
tool position when calling the cycle) as the X coordinate of the cone end point,
• in a plane roughing cycle the Z coordinate of the starting point (=current tool
position when calling the cycle) as the Z coordinate of the cone end point.
This requires that the tool is positioned at the desired X and Z coordinate of the
end point of the conical sleeve prior to calling the cycle.

136 Programmer's Guide for CNC Turning, Version 6.07


Straight/Plane Roughing Cycle (conical contour) G89

Straight roughing = starting point (current


cycle (outside tool position when
machining) calling the cycle)
= programmed
rectangle point
= cone end point (the X
coordinate of this
point is derived from
the X coordinate of
the starting point)
= cone starting point

Programming ...
example N125 G00 X+102 Z+3
N130 G89 X+45 Z-52.5 D+4 Y-32.5 O+0
Straight roughing ...
cycle (outside
machining) When machining outside surfaces the X coordinate of the starting point is the X
coordinate of the cone end point as well. The inclination angle E is programmed
with a positive sign starting clockwise from the negative Z axis.

Straight roughing = starting point (current


cycle (inside tool position when
machining) calling the cycle)
= programmed
rectangle point
= cone end point (the X
coordinate of this
point is calculated
based on the X
coordinate of the
starting point )
= cone starting point

Programming ...
example N100 G00 X+18 Z+3
N105 G89 X+75 Z-52.5 S8 E-54 O+0
Straight roughing ...
cycle (inside
machining) When machining the inside of the work part the X coordinate of the starting point
has to be smaller than or equal to the diameter of the premachined inside contour.
The angle of inclination E is programmed with a negative sign starting
counterclockwise from the negative Z axis.

© MTS GmbH 1998 137


G89 Straight/Plane Roughing Cycle (conical contour)

Plane roughing = starting point (current


cycle (outside tool location when
machining) calling the cycle)
= programmed
rectangle point
= cone end point (the Z
coordinate of this
point is calculated
based on the Z
coordinate of the
starting point)
= cone starting point

Programming ...
example N180 G00 X+15 Z+3
N185 G89 X+30 Z-50 D+6 Y-60 O+1
Plane roughing ...
cycle (outside
machining) The X coordinate of the starting point has to be larger than or equal to the
diameter of the premachined work part outside contour. The angle of inclination E
is programmed with a positive sign starting counterclock-wise from the negative X
axis.

Plane roughing = starting point (current


cycle (inside tool position when
machining) calling the cycle)
= programmed
rectangle point
= cone end point (the Z
coordinate of this
point is calculated
based on the Z
coordinate of the
starting point)
= cone starting point

Programming ...
example N220 G00 X+102 Z+3
N225 G89 X+100 Z-52.5 D+4 Y+62.5 O+1
Plane roughing ...
cycle (inside
machining) The X coordinate of the starting point has to be smaller than the diameter of the
premachined work part inside contour. The angle of inclination E is programmed
with a negative sign starting clockwise from the negative X axis.

138 Programmer's Guide for CNC Turning, Version 6.07


Straight/Plane Roughing Cycle (conical contour) G89
Interrupting infeed
for chip breaking
a) for straight or
plane roughing

a) for plane
roughing

In case of chip breaking H specifies the string after which the infeed movement is
interrupted. W specifies the string the tool moves backwards before starting to
machine the string H again.

Degression of = remaining infeed


cutting depth and (£ 2,5 mm)
minimum infeed for
straight roughing

Programming Infeed D=4 mm


example Decrease R=0,5 mm
Minimum infeed V=2,5 mm
Degression of
cutting depth and In this example the programmed infeed D is reduced by the value R after each
minimum infeed for machining run. The value V specifies that the infeed is to be reduced at maximum
straight roughing up to 2,5 mm and remains valid for the remaining machining runs.

© MTS GmbH 1998 139


G89 Straight/Plane Roughing Cycle (conical contour)

Degression of
cutting depth and
minimum infeed for
plane roughing

Programming Infeed D=4 mm


example Decrease R=0,5 mm
Minimum infeed V=2,5 mm
Degression of
cutting depth and In this example the programmed infeed D is reduced by the value R after each
minimum infeed for machining run. The value V specifies that the infeed is to be reduced at maximum
plane roughing up to 2,5 mm and remains valid for the remaining machining runs.

Final roughing = final optimizing level


optimizing for for roughing
straight roughing

Programming Infeed D=4 mm


example Final optimizing L=25%
Final roughing In case of the programmed infeed D, for the last two cuts a roughing level of 5 mm
optimizing for in total remains.
straight roughing Normally, two additional machining runs would be needed to machine the
remaining 5 mm. Using the final roughing optimizing the infeed is however
increased by 25 % up to 5 mm at maximum. Through this procedure one
machining run less is needed.

140 Programmer's Guide for CNC Turning, Version 6.07


Straight/Plane Roughing Cycle (conical contour) G89
Final roughing = final optimizing level
optimizing for plane for roughing
roughing

Programming Infeed D=4 mm


example Final roughing optimizing L=25%
Final roughing In case of the programmed infeed D, for the last two cuts a roughing level of 5 mm
optimizing for plane in total remains.
roughing Normally, two additional machining runs would be needed to machine the
remaining 5 mm. Using the final roughing optimizing the infeed is however
increased by 50 % up to 5 mm at maximum. Through this procedure one
machining run less is needed.

© MTS GmbH 1998 141


Segment Contour Programming

6 Segment Contour Programming


To meet the requirements of NC machining, the workpiece dimension specification
must contain all coordinates necessary to comply with DIN 66025 for the
programming of the end point of a straight line or a circular arc, or of the centre of a
circle. In fact, workshop drawings of workpieces often lack som of the required
dimensions, and extensive mathematical calculations are often required to
establish the coordinates.

A contour string is defined as an oriented succession of entities (segments),


namely straight lines and circular arcs, describing a contour of the workpiece. In
addition to the starting and end points or centre points, angles, lengths, tangential
transitions, roundings and chamfers, as are necessary for geometric definitions
without auxiliary calculations, may also be entered. When segment contour
programming is selected, transition points or end points of entities will be computed
by the control system, with the effect that coordinates can be entered as specified
in the workshop drawing.

6.1 G-Functions for Contour String Programming


G71 Linear Interpolation (analogous to G01)
G72 Circular Interpolation: Clockwise (analogous to G02)
G73 Circular Interpolation: Counterclockwise (analogous to G03)

F G71, G72 and G73 are non-modal commands, i.e. they take effect only in the
block in which they are programmed. Even if address values remain unchanged,
they must be programmed once again in the subsequent NC block.

To structure the input of geometry, which will be necessary with a complex contour
string consisting of numerous entities, a so-called multi-point string (N-point
string) is defined, namely as follows:

Definition An N-point string is defined as a sequence of N-1 entities with N points, from a
given starting point P0 to the end point PN-1, whose coordinates may either be
entered or computed by the the control system from the data specified for the N-
point string.

Specification of the dimensions of the last entity is required for the computing of the
previous entity and its end point coordinates. Starting out from the given point P0 a
closed N-point string can be computed. It follows that any contour can be computed
as a sequence of linked N-point strings.

Common multi-point strings are the following:

- Two-Point Strings Consisting of one entity


- Three-Point Strings Consisting of two entities
- Four-Point Strings Consisting of three entities

142 Programmer's Guide for CNC Turning, Version 6.07


G-Functions for Contour String Programming

Two-Point Strings (N=2)


Two-Point Strings define a single entity, either a straight line or a circular arc. With
the starting point P0 given, the end point P1 will be computed according to the
dimensions specified.

Diagram 6.1 : Two-Point Strings

Three-Point Strings (N=3)


Three-Point Strings comprise two entities. The following combinations are possible:

1. line - line
2. line - arc
3. arc - line
4. arc - arc

Diagram 6.2 : Three-Point Strings

© MTS GmbH 1998 143


Additional Addresses

Addresses for Contour String Programming

Straight line G71


X/Z Target point coordinates in directions X and Z
A Angle of the line to the positive X-axis
L Length of the line

Diagram 6.3 : As a rule a line is defined by two of the above addresses. However the solution will
not neccessarily be uniquely defined.

Diagram 6.3.1 : Diagram 6.3.2 : Diagram 6.3.3 :


Example: The end coordinate Z and the length L of a line are given. A circle with the centre
P0 and the radius L intersects the vertical line Z at the points P1 and P2
(see Diagram 6.3.1). If the distance between the vertical line Z and P0 is exactly L,
the vertical line touches the circle and there will be a single possible solution
(see Diagram 6.3.2). If the distance between the vertical line Z and P0 is greater
than L, there will be no solution (see Diagram 6.3.3). It follows that the number of
possible solutions is two, one or none.

Circular arc G72 or G73


X/Z Target point coordinates in X and Z
I/K Circle centre coordinates in X and Z
(incremental or absolute)
A Arc starting angle to the positive Z-axis
B Arc radius
E Arc end angle

Diagram 6.4 : Three of the above addresses must be specified to define a circular arc.
Again the number of possible solutions as a rule will be two, one or none.

144 Programmer's Guide for CNC Turning, Version 6.07


Tool Nose Compensation TNC

Programming Hints Programming of the X and Z coordinates is not mandatory. It follows that the
respective values are not global, i.e. even identical values will have to be
programmed once again to define the next entity in a contour string.

To compute a contour segment the control system will refer to the values specified
in the NC block. If these specifications should prove insufficient, the conditions of
transition to the previous or to the next contour entity will be accounted for in the
computing.

Example The chosen example is a three-point string, consisting of two lines.


The following addresses have been defined:

1st. line X-Coordinate of the end point

2nd. line X- and Z-Coordinates of the end point plus


the angle A of the line to the positive Z axis

NC Block: G71 X...


G71 X... Z... A...
Although the first line has not been defined, the system will compute the contour
resulting from both lines:

Diagram 6.5 :
- The starting point P0 of the contour string is defined by the current tool
position.
- The end point of the first line P1 is situated on a parallel X1 to the Z - axis.
- The end point P2 and the position of the second line are determined by the
angle A and the X and Z coordinates.

Diagram 6.6 :
- The contour is uniquely defined, since the second line and the parallel line X1
intersect at point P1.


Diagram 6.5 Diagram 6.6

- If A=0 or A=180 : no solution!

- If X1=X2 : if A=0 or A=180: infinite number of solutions!

If A is unequal to 0 and unequal to 180: no solution!

© MTS GmbH 1998 145


Additional Addresses

6.2 Additional Addresses


In addition to the addresses for geometric dimensioning, as specified above, the
system provides the addresses O and R for further simplification of contour
programming.

The addresses O and R serve to select one of two alternative solutions. They also
allow a chamfer or rounding to be inserted between to consecutive straight lines,
without additional computing efforts. Tangential transitions to a line or to an arc can
be programmed to be automatically computed.

The following table lists the additional addresses available. More detailed
explanations are given in the subsequent sections.

Address Function
O070 Absolute coordinates of the centre of the circle
O000 Tangential transition to the previous segment
O001/O002 Selection of one of two possible solutions
R+ Insertion of a rounding between two segments
O011/O012 Selection of one of two possible solutions with R+
R- Insertion of a chamfer between two linear segments

146 Programmer's Guide for CNC Turning, Version 6.07


Circle Centres Absolute

6.2.1 Circle Centres Absolute


The coordinates of the center of an arc (defined by addresses I and K) may either
be programmed incremental to the starting point of the arc (P0) or relative to the
zero point (absolute) (see Diagram 6.7). Conforming to general standards, the
default configuration of the CNC Simulator is the incremental programming of the
centre of the circle.

If the coordinates of both centres are to be entered in the absolute system, the
word O070 must be entered in that NC block which contains the programmed
coordinates of the circular arc.

With multi point strings the centre of an arc must be programmed using the
absolute system, since the starting point is normally not given, but must be
calculated by the control system. The execption to this rule is when the arc is
the first entry of a contour.

Arc centres incremental Arc centres absolute

NC Block: G72 X.. Z.. I.. K.. NC Block: G72 X.. Z.. I.. K.. O070

Diagram 6.7

Programming Hints When O070 is programmed, both centre coordinates (I and K) must be entered as
absolute values.

O070 is not a self-retaining entry. It must be re-entered once again with each NC
block, even if these are consecutive.

If the circle centres (I and K) of the three-point and four-point strings represented
below are entered in the absolute system, the input applies to the starting point P0
of the N-point string.

If in the configuration the programming of circle centres has been set to the
absolute system, the programming of O070 will not be necessary.

© MTS GmbH 1998 147


Tangential Transitions

6.2.2 Tangential Transitions


It is quite common, especially with turning operations, for adjoining entities of a
workpiece contour not to intersect at two points but instead touch at exactly one
common point. This is called a tangential transition between entities (see Diagram
6.8).

Diagram 6.8

Such tangential transitions are possible between a straight line and a circular arc as
well as between two circular arcs.(see Diagram 6.9).

Diagram 6.9

Explanation When a starting point is given, two addresses are normally required to determine a
straight line, three to determine a circular arc. However if the line or arc is
connected to the previous contour segment by a tangential transition, the number of
addresses to be programmed can be reduced by one by a tangential transition. The
control system will refer to the geometric definition of the tangential transition of two
entities to determine the next entity.

148 Programmer's Guide for CNC Turning, Version 6.07


Tangential Transitions

Example Next to a circular arc with the starting point P0 and the end point P1 (see Diagrams
6.10 and 6.11) a straight line is to be programmed, of which only the end point
coordinate Z is given. The starting point of that line is determined by the end point
P1 of the arc.

- If only the Z-coordinate of the line is given, the end point cannot be
determined, because an infinite number of solutions exist (see Diagram 6.10)

- If however the line is connected tangentially to the arc, its direction is determined
by the tangent angle at point P1. The end point P2 of the line is defined by the
intersection of the tangent with the given Z-coordinate
(see Diagram 6.11).

Diagram 6.10 Diagram 6.11

Programming Hints A tangential transition between two contour entities is programmed by the
NC word O000. O000 must be entered in an NC block, together with the entity
tangentially connected to the preceding entity.

With all contour strings including a tangential transition the programming of


the starting angle A (rise of a line or tangent angle at the starting point P in
the direction of the circle orientation) may be replaced by the instruction
O000 for a tangential transition.

© MTS GmbH 1998 149


Tangential Transitions

Pointed Tangential Transitions


When specific combinations of addresses are programmed for tangential
transitions, a number of different mathematical solutions may result.

Example A straight line with a defined starting point P0 as well as a circular arc (G72) with a
defined centre (I and K) and defined end point coordinates (X and Z) are given. If
there is a tangential transition of the straight line to the arc, two possible solutions
may result from the computing (see. Diagram 6.12).

1st solution: the straight line is connected to the circle at the tangential
point P1-1, in the direction of the circle orientation
(see Diagram 6.13).

2nd solution: the straight line is connected to the circle at the tangential
point P1-2, opposite to the direction of the circle orientation
(see Diagram 6.14).

Diagram 6.12

Diagram 6.13 Diagram 6.14

F
For reasons of clarification the contour resulting from the 2nd solution will be
denoted in the following as "pointed tangential transition".
Version 5 of the Simulator provides the option of programming both solutions
(cf.Section 6.1.3.4 Selection of Solutions - Tangential Transitions).
Roundings may also be inserted between entities in the case of pointed tangential
transitions (see Diagram 6.15).

Diagram 6.15

150 Programmer's Guide for CNC Turning, Version 6.07


Selection of Solutions

6.2.3 Selection of Solutions


Depending on the addresses programmed, there may sometimes be two possible
mathematical solutions for the definition of a contour segment (see Diagram 6.16).
Consequently, the control system must be told which contour to use. The following
criteria serve to distinguish between the alternatives:

Angle Criterion:
- smaller or greater angle

Length Criteria:
- shorter or longer line (line criterion)

- smaller or greater arc (arc criterion)

The word O001 selects the first of the alternatives, O002 the second.

Priority of the Angle Criterion

F If the two solutions have different angles as well as different lengths of line,
the angle criterion must be used in the selection.

Programmed addresses:

Z Z-Coordinate of the end point

I/K Centre coordinates

As only the Z-coordinate of the end point is


given, both P1-1 and P1-2 are possible end
points of the contour.

Diagram 6.16 : Example for application of the arc criterion

Programming Hints If no selection of alternatives (O001 or O002) is programmed, the control system
will automatically select the first alternative (O001).

For clarity, it is recommended to specify O001 anyway, so as to indicate that there


are two possible solutions with a specific combination of addresses.

© MTS GmbH 1998 151


Selection of Solutions

Selection of Solutions - Angle Criterion


In the following a three-point string, consisting of a line and an arc, serves as an
example of the application of angle criterion to select one of the alternative
solutions.

Given addresses:

L Length of the line


I,K Coordinates of the centre of the
arc
X,Z Coordinates of the end of the arc

NC block

G71 L... O001 or O002


G72 X... Z... I... K... O070

Diagram 6.17 : Angle criterion for selection of a solution

Explanation - The end point of the line is situated on a circle with the radius L .
- The position of the arc is determined by its centre (I and K, as absolute
coordinates) and by its (absolute) end point coordinates X and Z.

Under these conditions in the example given, the following solutions may result:

Solutions depending on the length L


No solution if the specified value L is either too small or too great, the end
point of the line will not be situated on the arc => no solution;
results of the computation and an appropriate error message will
appear
Single solution if L equals the shortest distance between the circular arc and the
starting point P0, a tangential point is establisheda => single
solution results
Two solutions the specified length L results in two intersection points P1-1 and
P1-2 => two solutions

Selection by the Angle The alternative solutions are distinguished by the different angles to the positive Z-
Criterion axis (angle criterion):

To select the first solution (smaller angle to the Z-axis) O001 is programmed
Course of the contour:P -> P - -> P

To select the second solution (greater angle to the Z-axis) O002 is programmed
Course of the contour:P -> P - -> P

Programming Hints To select a solution, O001 or O002 must be programmed in the same NC block
together as the applicable line.

152 Programmer's Guide for CNC Turning, Version 6.07


Selection of Solutions

Selection of Solutions - Line Criterion


A three-point string, comprising a line and an arc, serves as an example of the
application of the line criterion in selecting a solution.

Given addresses:

A Angle of the line to the positive Z-


axis
I,K Coordinates of the centre of the
arc
X,Z Coordinates of the end of the arc

NC block
G71 A... O001 or O002
G72 X... Z... I... K... O070

Diagram 6.18 : Line criterion for selection of a solution

Explanation - The end point of the line starting at P0 is situated on a half line at an angle A
to the positive Z-axis.
- The position of the arc is determined by its centre (I and K, as absolute
coordinates) and by its (absolute) end point coordinates X and Z.

Under these conditions in the example given, the following solutions may result:

Solution dependent on the angle A


No solution with the specified angle A neither a tangential point nor an
intersection point will result => no solution - an appropriate error
message will appear
Single solution with the specified angle A exactly one tangential point will result
=> a single solution (tangent to the arc)
Two solutions with the specified angle A the half line will intersect the arc at
both the points P1-1 and P1-2 => two solutions

Selection by the The alternative solutions are distinguished by the different lengths of the line (line
Line Criterion criterion):

To select the first solution (shorter line) O001 is programmed


Course of the contour:P -> P - -> P

To select the second solution (longer line) O002 is programmed


Course of the contour:P -> P - -> P

Programming Hints To select a solution, O001 or O002 must be programmed in an NC block together
with the applicable line.

© MTS GmbH 1998 153


Selection of Solutions

Selection of Solutions - Arc Criterion


A three-point string, comprising a line and an arc, serves as an example of the
application of the arc criterion in selecting an alternative.

Given addresses:

I,K Coordinates of the centre of the


arc
X,Z Coordinates of the end of the arc
L Length of the line

NC block

G72 I... K... (O070) O001 or O002


G71 X... Z... L...

Diagram 6.19 : Selection of solutions by the arc criterion.

Explanation - Position and radius of the arc are defined by the centre coordinates I and K
and by the starting point P0.
- The end point of the contour is determined by the coordinates X and Z.
- The starting point of the line is situated on a circle of the radius L.

Under these conditions in the example given, the following solutions may result:

Solution dependent on the length L


No solution if the value of L is either to small or to great, the starting point will
not be situated on the arc => no solution - an error message will
appear
Single solution from the specified value L results exactly one tangential point
=> single solution
Two solutions from the specified value L result the two intersection points P1-1
and P1-2 => two solutions

Selection by The alternative solutions are distinguished by the different lengths of the arc (arc
the Arc Criterion criterion):

To select the first solution (shorter arc) O001 is programmed


Course of the contour:P -> P - -> P

To select the second solution (longer arc) O002 is programmed


Course of the contour:P -> P - -> P

Programming Hints To select a solution, O001 or O002 must be programmed in an NC block together
with the applicable line.

154 Programmer's Guide for CNC Turning, Version 6.07


Selection of Solutions

Selection of Solutions - Tangential Transitions


Tangent Criterion
Depending on the addresses programmed, different solutions of tangential
transitions between contour segments may result.

Example A given line with a known starting point P0 is to be joined tangentially to a circular
arc (G72) which is determined by its centre (I and K) and its end point coordinates
(X and Z). Two mathematical solutions are possible with this example
(see Diagram 6.20a).

1. the line joins the arc at the point P1-1 in the same direction as the circle
orientation.
2. the line joins the arc at the point P1-2 in the direction opposite to the circle
orientation (pointed tangential transition).

In previous versions of the Simulator only the first solution could be computed by
the control system (see Diagram 6.20b). Version 5 now permits the programming of
both solutions in any given case.

Diagram 6.20a Diagram 6.20b Diagram 6.20c

To inform the control system of the desired course of the contour, address O001
must be programmed to select the first solution (tangent in the direction of the circle
orientation), or address O002 to select the second solution (tangent in the opposite
direction). The selected solution (either O001 or O002) must always be
programmed in a NC block together with the first contour entity whose orientation is
determined by that selection.
Consequently the NC blocks of the example shown above (see Diagram 6.20c)
would have to be programmed as follows:

1st solution O001: G71 O001


G72 X... Z... I... K... O000

2nd solution O002: G71 O002


G72 X... Z... I... K... O000

F When programming in the WOP mode (Workshop Oriented Programming), the


function key <F5> serves to permit the programming of pointed tangents or not (cf.
the WOP User Manual). If the option "pointed tangential transition" is deactivated,
the control system automatically computes the contour solution O001. Separate
programming of a solution will not be necessary.

© MTS GmbH 1998 155


Selection of Solutions

Contrary to the "standard" tangential transitions, the "pointed" transitions can be


rounded (see Diagram 6.20d).

Programming Hints When programming in the WOP mode (Workshop-Oriented Programming), the
option "pointed tangential transitions" must be activated to program a rounding
radius R+.

NC Block:

G71 R+.. O002 O011


G72 X.. Z.. I.. K.. O000

Diagram 6.20d : Rounding of a pointed tangential transition

156 Programmer's Guide for CNC Turning, Version 6.07


Rounding between Two Entities

6.3 Rounding between Two Entities

At the point of transition between two entities a rounding can be inserted, by


programming the address R+. The value entered at R+ determines the radius of the
rounding.

Roundings can be inserted between any combination of contour entities, provided


that the entities intersect or touch at a tangential point. If two possible solutions for
the rounding arc have been computed (see Diagram 6.21), the arc criterion is
applied by specificying either O011 (smaller arc) or O012 (greater arc).

G71 A.. R+.. O011 or O012


G71 X.. Z.. A..

Diagram 6.21 : Example of a rounding between two straight lines

Programming Hints If no selection of alternative solutions (O011 or O012) is programmed, the control
system will compute the execution of the smaller arc O011.

If two solutions for the positioning of the entities already exist, the insertion of a
rounding may result in four different solutions.

Example On the basis of the addresses programmed with a three-point string, consisting of a
line and an arc, two mathematical solutions are possible (see Diagram 6.22 : P1-1
and P1-2).

G71 X.. O001 or O002


G72 X.. Z.. I.. K.. (O070)

Diagram 6.22 : Two solutions of a contour comprising a line and an arc.

© MTS GmbH 1998 157


Rounding between Two Entities

In the example shown above the angle criterion is used to determine the contour:
O001 is programmed to select the line situated at the smaller angle to the
Z-axis, O002 to select the line with the greater angle.

If additionally a rounding radius R+is programmed, each contour solution gives two
possible rounding radii with each contour solution. (see Diagram 6.23):
Analogous to employing the arc criterion, the desired rounding must be
programmed in the NC block determining the contour, by entering either
O011 (smaller arc) or O012 (greater arc).

Alternative roundings possible with the first contour Alternative roundings possible with the second
solution O001 contour solution O002

G71 X.. O001 O011 or O012 G71 X.. O002 O011 or O012
G72 X.. Z.. I.. K.. (O070) G72 X.. Z.. I.. K.. (O070)

Diagram 6.23 : Selection of solutions from a total of four alternatives

If the specified rounding radius results in only one possible rounding arc with each
of the contour solutions, programming of O011 or O012 is not required
(see Diagram 6.24).

G72 I.. K.. R+.. (O070) O011 or O012


G72 X.. Z.. I.. K..

Diagram 6.24 : In this example the specified rounding radius results in only one solution for
each arc.

158 Programmer's Guide for CNC Turning, Version 6.07


Chamfer between Two Lines

6.3.1 Chamfer between Two Lines


At the additional address R a symmetrical chamfer between two consecutive lines
can be programmed. The contour will be computed by the control system according
to the specified width of the chamfer (the value entered at R)
(see Diagram 6.25).

NC Block:

G71 A.. R-..


G71 X.. Z.. A..

Diagram 6.25

© MTS GmbH 1998 159


G71 Two-Point Strings : Straight Lines

6.4 Two-Point String: Straight Line G71


Any two of the addresses below can be used to program a straight line as a two-
point string, provided that the starting point P0 is known:

X X-coordinate of the end point


Z Z-coordinate of the end point
L Length of the line
A Angle of the line to the positive Z-axis

Optional addresses:

X/Z Coordinates of the end point of


the line
L Length of the line
A Angle of the line to the positive
Z-axis

Diagram 6.2.1 : Diagram 6.2.1 : Two-Point String : Straight Line

Number of Solutions Depending on the programmed address values, the computation of the contour
may not always result in a single solution. When, for instance, the length or an
axially parallel angle has been entered, the result may be either two solutions or no
solution (cf. addresses for segment contour programming). If no solution is found, a
corresponding error message will appear.

Programming Hints If two solutions result from the specified length L (cf. the table below), the desired
contour must be determined by using the angle criterion (O001 for the smaller
angle, O002 for the greater angle).

160 Programmer's Guide for CNC Turning, Version 6.7


Two-Point String : Straight Line G71

Table of Available Two-Point Strings:

Straight Line Selction of Solutions


G71 X Z
G71 X L Angle Criterion

G71 X A
G71 Z L Angle Criterion

G71 Z A
G71 L A

Examples of Contour Strings with Alternative Solutions

G71 X.. L.. O001 or O002 G71 Z.. L.. O001 or O002

The angle criterion determines the selection:


O001 is programmed to select P1-1 (smaller angle), O002 is programmed to select P1-2 (greater angle).

© MTS GmbH 1998 161


G72/G73 Two-Point Strings: Circular Arcs

6.5 Two-Point String: Arc G72/G73


Any three of the below addresses can be used to program a circular arc as a two-
point string, provided that the starting point P0 is known:

X X-coordinate of the end point


Z Z-coordinate of the end point
I X-coordinate of the centre of the circle
K Z-coordinate of the centre of the circle
A Angle of the tangent in the direction of the circle orientation at the starting point P0
B Arc radius
E Angle of the tangent in the direction of the circle orientation at the end point P1

Available Addresses:

X/Z Coordinates of the end point of


the arc
I/K Coordinates of the centre of the
arc
A Angle to the Z-axis of the
tangent in the direction of the
circle orientation at the starting
point P0
B Arc radius
E Angle to the positive Z-axis of
the tangent in the direction of
the circle orientation at the end
point P1

Diagram 6.3.1 : Two-Point String: Arc

Number of Solutions Depending on the programmed address values, the computation of the contour
may not always result in a single solution (cf. addresses for segment contour
programming). With some combinations of addresses may result in one, two, or no
solutions. Please see the below table for a listing of cases where two solutions may
occur.

Programming Hints If the circle centre coordinates are programmed in the absolute system, the
address O070 must be programmed in the same NC block.

To avoid repetition, only clockwise-oriented arcs (G72) are included in the graphic
representation of contour strings. All programming examples given are of course
applicable to counter-clockwise arcs (G73) as well.

162 Programmer's Guide for CNC Turning, Version 6.7


Two-Point String: Circular Arc G72/G73

Table of Available Two-Point Strings:

Arc Selection of Solutions


G72/73 X Z I
G72/73 X Y K
G72/73 X Z A
G72/73 X I K Arc Criterion

G72/73 Z I K Arc Criterion

G72/73 X I A Arc Criterion

G72/73 Z K A Arc Criterion

G72/73 Z I A Arc Criterion

G72/73 Z K A Arc Criterion

G72/73 X A B Arc Criterion

G72/73 Z A B Arc Criterion

G72/73 X Z B Arc Criterion

G72/73 X B E Arc Criterion

G72/73 Z B E Arc Criterion

© MTS GmbH 1998 163


G72/G73 Two-Point Strings: Circular Arcs

Examples of Two-Point Strings:


Circular Arc with Alternative Solutions

G72 X.. I.. K.. (O070) O001 or O002 G72 Z.. I.. K..(O070) O001 or O002

The arc criterion is used to select a solution:


O001 is programmed to select P1-1 (shorter arc), O002 is programmed to select P1-2 (longer arc).

G72 X.. I.. A.. (O070) O001 or O002 G72 X.. K.. A.. O001 or O002

The arc criterion is used to select a solution:


O001 is programmed to select P1-1 (shorter arc), O002 is programmed to select P1-2 (longer arc).

G72 Z.. I.. A.. (O070) O001 or O002 G72 Z.. K.. A.. (O070) O001 or O002

The arc criterion is used to select a solution:


O001 is programmed to select P1-1 (shorter arc), O002 is programmed to select P1-2 (longer arc).

164 Programmer's Guide for CNC Turning, Version 6.7


Two-Point String: Circular Arc G72/G73

G72 X.. A.. B.. O001 or O002 G72 Z.. A.. B.. O001 or O002
The arc criterion is used to select a solution:
O001 is programmed to select P1-1 (shorter arc), O002 is programmed to select P1-2 (longer arc).

G72 X.. Z.. B.. O001 or O002

The arc criterion is used to select a solution:


O001 is programmed to select the shorter arc,
O002 is programmed to select the longer arc.

G72 X.. B.. E.. O001 or O002


G72 Z.. B.. E.. O001 or O002
The arc criterion is used to select a solution:
O001 is programmed to select P1-1 (shorter arc), O002 is programmed to select O1-2 (longer arc).

© MTS GmbH 1998 165


G71G71 Three-Point String: Line - Line

6.6 Three-Point String: Line - Line G71G71


Two consecutive straight lines can be programmed as a three-point string, provided
that the starting point P0 is known. According to the definition of a three-point string,
the first line is not determined until its end point is programmed in the subsequent
NC block, describing the second line. A total of four addresses must be
programmed in the NC blocks.

Relevant addresses:

X1/Z1 Coordinates of the end point of the


first line
L1 Length of the first line
A1 Angle of the first line to the
positive Z-axis

X2/Z2 Coordinates of the end point of the


second line
L2 Length of the second line
A2 Angle of the second line to the
positive Z-axis

Diagram 6.4.1 : Three-point string comprising two straight lines

Number of Solutions Depending on the programmed address values, the computation of the contour
may not always result in a single solution (cf. addresses for segment contour
programming). Some combinations of addresses may result in one, two solutions or
no solution. Please see the below table for a listing of cases where the
programming of certain combinations of address values may result in the
computation of two solutions - such cases are denoted "Arc Criterion" in the column
"Selection of Solutions", and explanatory diagrams are provided.

Programming Hints If two solutions result from the programmed address values, and if a selection
(O001 or O002) is not programmed, the control system will assume the first
solution O001.

F If two addresses are programmed in the first NC block, the three-point string
is split into two two-point strings.

166 Programmer's Guide for CNC Turning, Version 6.7


Three-Point String: Line - Line G71G71

Table of Available Three-Point Strings:

Line - Line Selection of Solutions


G71 X
G71 X Z A
G71 X
G71 Z L A
G71 Z
G71 X Z A
G71 X Angle Criterion
G71 X Z L
G71 Z Angle Criterion
G71 X Z L
G71 Z
G71 X L A
G71 L Angle Criterion
G71 X Z L
G71 L Angle Criterion
G71 X Z A
G71 L Angle Criterion
G71 X L A
G71 L Angle Criterion
G71 Z L A
G71 A Line Criterion
G71 X Z L
G71 A
G71 X Z A
G71 A
G71 X L A
G71 A
G71 Z L A
G71 X
G71 X Z L A

© MTS GmbH 1998 167


G71G71 Three-Point String: Line - Line

Examples of Three-Point Strings: G71G71 with Alternative


Solutions

G71 X.. O001 or O002


G71 X.. Z.. L.. G71 Z.. O001 or O002
G71 X.. Z.. L..
The angle criterion is used to select of a solution:
O001 is programmed to select P1-1 (smaller angle), O002 is programmed to select P1-2 (greater angle).

G71 L.. O001 or O002 G71 L.. O001 or O002


G71 X.. Z.. L.. G71 X.. Z.. A..

The angle criterion is used to select of a solution:


O001 is programmed to select P1-1 (smaller angle), O002 is programmed to select P1-2 (greater angle).

168 Programmer's Guide for CNC Turning, Version 6.7


Three-Point String: Line - Line G71G71

G71 L.. O001 or O002 G71 L.. O001 or O002


G71 X.. L.. A.. G71 Z.. L.. A..
The angle criterion is used to select of a solution:
O001 is programmed to select P1-1 (smaller angle), O002 is programmed to select P1-2 (greater angle).

G71 A.. O001 or O002


G71 X.. Z.. L..

The line criterion is used to select of a solution:


O001 is programmed to select P1-1 (shorter line),
O002 is programmed to select P1-2 (longer line).

© MTS GmbH 1998 169


G72G71 or G73G71 Three-Point Strings: Arc - Line

6.7 Three-Point String: Arc - Line G72G71 or G73G71


A circular arc followed by a straight line can be programmed as a three-point string,
provided that the starting point P0 is known. According to the definition of a three-
point string, the arc is not determined until its end point is programmed in the
subsequent NC block, describing the straight line.

Optional Addresses As a first contour entity a circular arc, starting at a known point P0 can be defined
by its centre and radius. One of the four alternative address combinations listed
below must be programmed:

I,K Centre coordinates


A,I Starting angle and centre coordinate in X
A,K Starting angle and centre coordinate in Z
A,B Starting angle and radius

For reasons of clarity, only the centre coordinates (I and K) of arcs are shown in the
diagrams below.

Optional Addresses:

I/K Centre coordinates of the arc


A1 Angle of the tangent in the
direction of the circle orientation at
the starting point P0
B Radius of the arc

X/Z Coordinates of the end point of


the line
L Length of the line
A2 Angle of the line to the positive Z-
axis
O000 Tangential transition between
segments

Diagram 6.5.1 : Three-point string consisting of a line and an arc

To determine a three-point string consisting of a line and an arc, a total of five of


the above addresses must be programmed.

Number of solutions Depending on the programmed address values, the computation of the contour
may not always result in a single solution (cf. addresses for segment contour
programming). Some combinations of addresses may result in one, two or no
solution.

Programming Hints In the case of contour strings with two possible solutions the arc criterion is used to
select the desired contour, by programming, in the first NC block, either O001
(smaller arc) or O002 (greater arc).

If absolute circle centre coordinates are entered, the address O070 must be
programmed in the same NC block.

170 Programmer's Guide for CNC Turning, Version 6.7


Three-Point String: Arc - Line G72G71 or G73G71

Table of Available Three-Point Strings:

Arc - Line Selection of Solutions


G72/G73 I K Arc Criterion

G71 X Z A
G72/G73 I K Arc Criterion

G71 X Z L
G72/G73 I K Arc Criterion

G71 X L A
G72/G73 I K Arc Criterion

G71 Z L A

Tangential Transition to the Line

Programming Hints With the contour strings listed below, the word O000 must be programmed in the
second NC block to define the tangential transition.
When the WOP mode is operative, pointed tangential transitions may only be
programmed if the appropriate option has been selected (function key <F5>).

Arc - Line Selection of Solutions


G72/G73 I K
G71 X Z O000
G72/G73 I K Tangent Criterion

G71 X A O000
G72/G73 I K Arc Criterion

G71 X L O000
G72/G73 I K Tangent Criterion

G71 Z A O000
G72/G73 I K Arc Criterion

G71 Z L O000
G72/G73 I K Tangent Criterion

G71 L A O000
G72/G73 B Arc Criterion

G71 X Z A O000

F Note: a circular arc as a first contour segment may also be programmed by


the addresses A,I, A,K or A,B, instead of with the centre coordinates I,K. This
applies to all examples.

© MTS GmbH 1998 171


G72G71 or G73G71 Three-Point Strings: Arc - Line

Examples of Three-Point Strings:


G72G71 with Alternative Solutions

F To avoid repetition, only clockwise-oriented arcs (G72) are included in the graphic
representation of contour strings. All programming examples given are however
also applicable to counter-clockwise arcs (G73).

G72 I.. K.. (O070) O001 or O002 G72 I.. K.. (O070) O001 or O002
G71 X.. Z.. A.. G71 X.. Z.. L..
The angle criterion is used to select of a solution:
O001 is programmed to select P1-1 (shorter arc), O002 is programmed to select P1-2 (longer arc).

G72 I.. K.. (O070) O001 or O002 G72 I.. K.. (O070) O001 or O002
G71 X.. L.. A.. G71 Z.. L.. A..

The angle criterion is used to select of a solution:


O001 is programmed to select P1-1 (shorter arc), O002 is programmed to select P1-2 (longer arc).

172 Programmer's Guide for CNC Turning, Version 6.7


Three-Point String: Arc - Line G72G71 or G73G71

Examples of a Tangential Transition


with Two Possible Solutions

G72 I.. K.. (O070) O001 or O002 G72 I.. K.. (O070) O001 or O002
G71 X.. L.. O000 G71 Z.. L.. O000

In each case the arc criterion is used to select a solution:


O001 is programmed to select P1-1 (shorter arc), O002 is programmed to select P1-2 (longer arc).

G72 B.. O001 or O002


G71 X.. Z.. A.. O000

The arc criterion is used to select a solution:


O001 is programmed to select P1-1 (shorter arc),
O002 is programmed to select P1-2 (longer arc).

© MTS GmbH 1998 173


G72G71 or G73G71 Three-Point Strings: Arc - Line

Examples of Pointed Tangential Transitions

F Pointed tangential transitions may only be programmed in the WOP mode if this
option has been selected with the function key <F5>.

G72 I.. K.. (O070) O001 G72 I.. K.. (O070) C+.. O002 O011
G71 X.. A.. O000 G71 X.. A.. O000

The tangent criterion is used to select a solution:


O001 (left diagram) is programmed to select the tangent in the direction of the circle orientation (P1-1)
O002 (right diagram) is programmed to select the pointed tangential transition (P1-2)with a rounding

G72 I.. K.. (O070) O001 G72 I.. K.. (O070) R+.. O002 O011
G71 Z.. A.. O000 G71 Z.. A.. O000

The tangent criterion is used to select a solution:


O001 (left diagram) is programmed to select the tangent in the direction of the circle orientation (P1-1)
O002 (right diagram) is programmed to select the pointed tangential transition (P1-2)with a rounding

174 Programmer's Guide for CNC Turning, Version 6.7


Three-Point String: Arc - Line G72G71 or G73G71

G72 I.. K.. (O070) O001


G71 L.. A.. O000 G72 I.. K.. (O070) R+.. O002 O011
G71 L.. A.. O000
The tangent criterion is used to select a solution:
O001 (left diagram) is programmed to select the tangent in the direction of the circle orientation (P1-1)
O002 (right diagram) is programmed to select the pointed tangential transition (P1-2)with a rounding

© MTS GmbH 1998 175


G71G72 or G71G73 Three-Point String: Line - Arc

6.8 Three-Point String: Line - Arc G71G72 or G71G73


A straight line followed by a arc can be programmed as a three-point string,
provided that the starting point P0 is known. According to the definition of a three-
point string, the line is not determined until its end point is programmed in the
subsequent NC block, describing the arc.

Optional Addresses:

X1/Z1 Coordinates of the end point of the


line
L Length of the line
A Angle of the line to the positive Z-
axis
X2/Z2 Coordinates of the end point of the
arc
I/K Coordinates of the centre of the
arc
B Radius of the arc
E Angle to the positive Z-axis of the
oriented tangent at the end point
P2
O000 Tangential transition between
entities

Diagram 6.6.1 : Three-point string consisting of line and arc

Number of solutions Depending on the programmed address values, the computation of the contour
may not always result in a single unequivocal solution (cf. addresses for segment
contour programming). Some combinations of addresses may result in one, two,
three, four or no solutions.

Programming Hints If several solutions are possible the desired contour must be determined by
entering O001 or O002.

F To determine a three-point string consisting of a line and an arc, a total of five of


the above addresses must be programmed. Note: if more than one address is
programmed for the line, this will determine the line as a two-point string,
consequently the three-point string will be split up into two two-point strings.

If absolute coordinates are entered for the centre of the circle, the address O070
must be programmed in the same NC block.

To avoid repetition, only clockwise-oriented arcs (G72) are included in the graphic
representation of contour strings. All programming examples given are however
also applicable to counter-clockwise arcs (G73).

176 Programmer's Guide for CNC Turning, Version 6.7


Three-Point String: Line - Arc G71G72 or G71G73

Table of Available Three-Point Strings


without Tangential Transition:

Line - Arc Selestions of Solutions


G71 X Angle Criterion

G72/G73 X Z I K
G71 Z Angle Criterion

G72/G73 X Z I K
G71 X Angle Criterion
Arc Criterion
G72/G73 X I K B
G71 X Angle Criterion
Arc Criterion
G72/G73 Z I K B
G71 Z Angle Criterion
Arc Criterion
G72/G73 X I K B
G71 Z Angle Criterion
Arc Criterion
G72/G73 Z I K B
G71 L Angle Criterion

G72/G73 X Z I K
G71 L Angle Criterion
Arc Criterion
G72/G73 X I K B
G71 L Angle Criterion
Arc Criterion
G72/G73 Z I K B
G71 A Line Criterion

G72/G73 X Z I K
G71 A Line Criterion
Arc Criterion
G72/G73 X I K B
G71 A Line Criterion
Arc Criterion
G72/G73 Z I K B

Priority of the Angle Criterion

F If the two solutions have different angles as well as different lengths of line,
the angle criterion must always be used in the selection.

© MTS GmbH 1998 177


G71G72 or G71G73 Three-Point String: Line - Arc

With Tangential Transition between Segments


Programming Hints With the contour strings listed below the word O000 is programmed in the second
NC block, to define the tangential transition.
Pointed tangential transitions can only be programmed in the WOP mode if this
option has been selected with the function key <F5>.

Line - Arc Selction of Solutions


G71 A Arc Criterion

G72/G73 X Z B O000
G71 Tangent Criterion

G72/G73 X Z I K O000
G71 Tangent Criterion
Arc Criterion
G72/G73 X I K B O000
G71 Tangent Criterion
Arc Criterion
G72/G73 Z I K B O000
G71 A
G72/G73 X B E O000
G71 A
G72/G73 Z B E O000

Examples of Three-Point Strings: G71G72 with Alternative


Solutions

G71 Z.. O001 or O002


G71 X.. O001 or O002 G72 X.. Z.. I.. K.. (O070)
G72 X.. Z.. I.. K.. (O070)

In each case the angle criterion is used to select a solution:


O001 is programmed to select P1-1 (smaller angle), O002 is programmed to select P1-2 (greater angle).

178 Programmer's Guide for CNC Turning, Version 6.7


Three-Point String: Line - Arc G71G72 or G71G73

G71 X.. O001 or O002 G71 X.. O001 or O002


G72 X.. I.. K.. B.. (O070) O001 or O002 G72 Z.. I.. K.. B.. (O070) O001 or O002

In the first block G71 the angle criterion is used to select a solution:
O001 is programmed to select P1-1 (smaller angle), O002 is programmed to select P1-2 (greater angle).
In the second block G72 the arc criterion is used to select a solution: O001 is programmed to select P2-1
(shorter arcs), O002 is programmed to select P2-2 (longer arcs).

G71 Z.. O001 or O002 G71 Z.. O001 or O002


G72 X.. I.. K.. B.. (O070) O001 or O002 G72 Z.. I.. K.. B.. (O070) O001 or O002

In the first block G71 the angle criterion is used to select a solution:
O001 is programmed to select P1-1 (smaller angle), O002 is programmed to select P1-2 (greater angle).
In the second block G72 the arc criterion is used to select a solution: O001 is programmed to select P2-1
(shorter arc), O002 is programmed to select P2-2 (longer arc).

G71 L.. O001 or O002


G72 X.. Z.. I.. K.. (O070)

The angle criterion is used to select a solution:


O001 is programmed to select P1-1 (smaller angle),
O002 is programmed to select P1-2 (greater angle).

© MTS GmbH 1998 179


G71G72 or G71G73 Three-Point String: Line - Arc

G71 L.. O001 or O002 G71 L.. O001 or O002


G72 X.. I.. K.. B.. (O070) O001 or O002 G72 Z.. I.. K.. B.. (O070) O001 or O002

In the first block G71 the angle criterion is used to select a solution:
O001 is programmed to select P1-1 (smaller angle), O002 is programmed to select P1-2 (greater angle).
In the second block G72 the arc criterion is used to select a solution: O001 is programmed to select P2-1
(shorter arc), O002 is programmed to select P2-2 (longer arc).

G71 A.. O001 or O002


G72 X.. Z.. I.. K.. (O070)

The line criterion is used to select a solution:


O001 is programmed to select P1-1 (shorter line),
O002 is programmed to select P1-2 (longer line).

G71 A.. O001 or O002 G71 A.. O001 or O002


G72 X.. I.. K.. B.. (O070) O001 or O002 G72 Z.. I.. K.. B.. (O070) O001 or O002

In the first block G71 the angle criterion is used to select a solution:
O001 is programmed to select P1-1 (shorter line), O002 is programmed to select P1-2 (longer line). In the
second block G72 the arc criterion is used to select a solution: O001 is programmed to select P1-1
(shorter arc), O002 is programmed to select P1-2 (longer arc).

180 Programmer's Guide for CNC Turning, Version 6.7


Three-Point String: Line - Arc G71G72 or G71G73

Examples of Tangential Transitions

G71 A.. O001 or O002


G72 X.. Z.. B.. O000

The arc criterion is used to select a solution:


O001 is programmed to select P1-1 (shorter arc),
O002 is programmed to select P1-2 (longer arc).

Examples of Pointed Tangential Transitions

F When the WOP mode is operative, pointed tangential transitions may only be
programmed if the appropriate option has been selected with the function key
<F5>.

G71 O001 G71 R+.. O002 O011


G72 X.. Z.. I.. K.. (O070) O000 G72 X.. Z.. I.. K.. (O070) O000

The tangent criterion is used to select a solution:


O001 (left diagram) is programmed to select the tangent in the direction of the circle orientation (P1-1)
O002 (right diagram) is programmed to select the pointed tangential transition (P1-2)with a rounding

© MTS GmbH 1998 181


G71G72 or G71G73 Three-Point String: Line - Arc

G71 O001 G71 R+.. O002 O011


G72 X.. I.. K.. B.. (O070) O000 G72 X.. I.. K.. B.. (O070) O000

The tangent criterion is used to select a solution:


O001 (left diagram) is programmed to select the tangent in the direction of the circle orientation (P1-1)
O002 (right diagram) is programmed to select the pointed tangential transition (P1-2)with a rounding

G71 O001
G71 R+.. O002 O011
G72 Z.. I.. K.. B.. (O070) O000
G72 Z.. I.. K.. B.. (O070) O000
The tangent criterion is used to select a solution:
O001 (left diagram) is programmed to select the tangent in the direction of the circle orientation (P1-1)
O002 (right diagram) is programmed to select the pointed tangential transition (P1-2)with a rounding

182 Programmer's Guide for CNC Turning, Version 6.7


Three-Point String: Arc - Arc G72G72

6.9 Three-Point String: Arc - Arc G72G72 or G72G73 or G73G72 or


G73G73
Two consecutive circular arcs can be programmed as a three-point string, provided
that the starting point P0 is known. According to the definition of a three-point string,
the first arc is not determined until its end point is programmed in the subsequent
NC block, describing the second arc.

Optional Addresses As a first contour entity a circular arc, starting at a known point P0 can be defined
by its centre and radius. One of the four alternative address combinations listed
below must be programmed:

I, K Coordinates of the centre of the arc


A, I Starting angle and centre coordinate in X
A, K Starting angle and centre coordinate in Z
A, B Starting angle and radius

For reasons of clarity, only the centre coordinates (I and K) of arcs are shown in the
diagrams below.

Optional Addresses:

I1/K1 Centre coordinates of the first arc


A Angle of the tangent in the
direction of the circle orientation at
the starting point P0
B1 Radius of the first arc
I2/K2 Centre coordinates of the second
arc
B2 Radius of the second arc
X/Z End point coordinates of the
second arc
E Angle to the positive Z-axis of the
oriented tangent at the end point
P2
O000 Tangential transition between
segments

Number of solutions Depending on the programmed address values, the computation of the contour
may not always result in a single solution (cf. addresses for segment contour
programming). Some combinations of addresses may result in four, three, two, one
or no solutions.

Programming Hints When several solutions are possilbe the desired contour must be determined by
entering O001 or O002.
If absolute coordinates are entered for the centre of the circle, the address O070
must be programmed in the same NC block.

© MTS GmbH 1998 183


G72G72 Three-Point String: Arc - Arc

To determine a three-point string consisting of two arcs, a total of six of the above
addresses must be programmed.

Table of Available Three-Point Strings:

Arc - Arc Selection of Solutions


G72/G73 I K Arc Criterion

G72/G73 X Z I K
G72/G73 I K Arc Criterion
Arc Criterion
G72/G73 X I K B
G72/G73 I K Arc Criterion
Arc Criterion
G72/G73 Z I K B

With Tangential Transitions between Contour Segments

Programming Hints With the contour strings listed below, the word O000 must be programmed in the
second NC block to define the tangential transition.

Arc - Arc Selection of Solutions


G72/G73 I K Arc Criterion

G72/G73 X Z B O000
G72/G73 I K Arc Criterion

G72/G73 X B E O000
G72/G73 I K Arc Criterion

G72/G73 Z B E O000
G72/G73 A B Arc Criterion

G72/G73 X B E O000
G72/G73 A B Arc Criterion

G72/G73 Z B E O000

F
Note: a circular arc as a first contour segment may also be programmed by
the addresses A I, A K or A B instead of with the centre coordinates I K. This
applies to all examples.

184 Programmer's Guide for CNC Turning, Version 6.7


Three-Point String: Arc - Arc G72G72

Examples of Three-Point Strings: G72G72 with Alternative


Solutions

F
To avoid repetition, only clockwise-oriented arcs (G72) are included in the graphic
representation of contour strings. All programming examples given are however
also applicable to counter-clockwise arcs (G73).
As a model, all combinations of G72 and G73 possible with the first example
are shown in the diagrams below.

G72 I.. K.. (O070) O001 or O002 G72 I.. K.. (O070) O001 or O002
G72 X.. Z.. I.. K.. (O070) G73 X.. Z.. I.. K.. (O070)

G73 I.. K.. (O070) O001 or O002 G73 I.. K.. (O070) O001 or O002
G72 X.. Z.. I.. K.. (O070) G73 X.. Z.. I.. K.. (O070)
In each case the arc criterion is used to select a solution:
O001 is programmed to select P1-1 (shorter arc), O002 is programmed to select P1-2 (longer arc).

© MTS GmbH 1998 185


G72G72 Three-Point String: Arc - Arc

G72 I.. K.. (O070) O001 or O002 G72 I.. K.. (O070) O001 or O002
G72 X.. I.. K.. B.. (O070) O001 or O002 G72 Z.. I.. K.. B.. (O070) O001 or O002

In each case the arc criterion is used to select a solution:


O001 is programmed to select P1-1 (shorter arc), O002 is programmed to select P1-2 (longer arc).

2nd arc:
O001 is programmed to select P2-1 (shorter arc), O002 is programmed to select P2-2 (longer arc).

Examples of Tangential Transitions

G72 I.. K.. (O070) O001 or O002


G72 X.. Z.. B.. O000

In each case the arc criterion is used to select a


solution:
O001 is programmed to select P1-1 (shorter arc),
O002 is programmed to select P1-2 (longer arc).

186 Programmer's Guide for CNC Turning, Version 6.7


Three-Point String: Arc - Arc G72G72

G72 I.. K.. (O070) O001 or O002


G72 X.. B.. E.. O000 G72 I.. K.. (O070) O001 or O002
G72 Z.. B.. E.. O000
In each case the arc criterion is used to select a solution:
O001 is programmed to select P1-1 (shorter arc), O002 is programmed to selected P1-2 (longer arc).

G72 A.. B.. O001 or O002


G72 X.. B.. E.. O000 G72 A.. B.. O001 or O002
G72 Z.. B.. E.. B.. O000
In each case the arc criterion is used to select a solution:
O001 is programmed to select P1-1 (shorter arc), O002 is programmed to select P1-2 (longer arc).

© MTS GmbH 1998 187


Four-Point String

6.10 Four-Point String:with Tangential Transitions


Three contour segments (lines and arcs in any order) can be programmed as a
four-point string, provided that the starting point P0 is known. According to the
definition of a four-point string, the first and second entity are not determined until
the third segment is defined.

Optional Addresses As a first segment of a contour, a circular arc, starting at a known point P0 can be
defined by its centre and radius. One of the four alternative address combinations
listed below must be programmed:

I, K Centre coordinates
A, I Starting angle and centre coordinate in X
A, K Starting angle and centre coordinate in Z
A, B Starting angle and radius

For reasons of clarity, only the centre coordinates (I and K) of arcs are shown in the
diagrams below.

Optional Addresses:

A Angle of the line to the positive Z-


axis
B1 Radius of the first arc
I/K Centre coordinates of the second
arc
B2 Radius of the second arc
Z Coordinate of the end point of the
second arc
O000 Tangential transition between
segments

Diagram: Line - Arc - Arc

Number of solutions Depending on the programmed address values, the computation of the contour
may not always result in a single solution (cf. addresses for segment contour
programming). Some combinations of addresses may not result in a single solution
but in any number of sultions, from one to four.

Programming Hints If several solutions are possible the arc criterion must be used to determine the
desired contour, by entering O001 (smaller arc) or O002 (greater arc).

If absolute circle centre coordinates are entered, the address O070 must be
programmed in the same NC block.

With four-point strings the word O000 is programmed to define tangential


transitions.

188 Programmer's Guide for CNC Turning, Version 6.7


Four-Point String

Table of Available Four-Point Strings with Tangential


Transitions:

Selection of Solutions
G71 A Arc Criterion

G72/G73 B O000
G72/G73 X Z I K O000
G71 A Arc Criterion

G72/G73 B O000
G72/G73 X I K B O000 Arc Criterion
G71 A Arc Criterion

G72/G73 B O000
G72/G73 Z I K B O000 Arc Criterion
G72/G73 I K Arc Criterion

G72/G73 B O000
G72/G73 X Z I K O000
G72/G73 I K Arc Criterion

G72/G73 B O000
G72/G73 X I K B O000 Arc Criterion
G72/G73 I K Arc Criterion

G72/G73 B O000
G72/G73 Z I K B O000 Arc Criterion
G72/G73 I K Arc Criterion

G72/G73 B O000
G71 X Z A O000
G72/G73 I K Tangent Criterion

G71 O000
G72/G73 X Z I K O000
G72/G73 I K Tangent Criterion

G71 O000
G72/G73 X I K B O000 Arc Criterion

G72/G73 I K Tangent Criterion

G71 O000
G72/G73 Z I K B O000 Arc Criterion

F
Note: a circular arc as a first contour segment may also be programmed by the
addresses A I, A K or A B instead of with the centre coordinates I K. This
applies to all examples.
To avoid repetition, as a rule only clockwise-oriented arcs (G72) are included in the
graphic representation of contour strings. All programming examples given are
however also applicable to counter-clockwise arcs (G73) and to any combination of
G72 and G73.

© MTS GmbH 1998 189


Examples of Contour Strings

Examples of Contour Strings with Alternative Solutions


and Tangential Transitions

G71 A.. O001 or O002


G73 B.. O000
G72 X.. Z.. I.. K.. O000 (O070)

The arc criterion is used to select a solution:


O001 is programmed to select P1-1 (shorter arc),
O002 is programmed to ¾elect P1-2 (longer arc).

G71 A.. O001 or O002


G71 A.. O001 or O002 G73 B.. O000
G73 B.. O000 G72 Z.. I.. K.. B.. O000 (O070)
G72 X.. I.. K.. B.. O000 (O070) O001 or O002
O001 or O002

In each case the arc criterion is used to select a solution:


1st arc:
O001 is programmed to select P1-1 (shorter arc),
O002 is programmed to select P1-2 (longer arc).
2nd arc:
O001 is programmed to select P3-1 (shorter arc),
O002 is programmed to select P3-2 (longer arc).

190 Programmer's Guide for CNC Turning, Version 6.7


Examples of Contour Strings

G72 I.. K.. (P070) P001 or P002


G73 B.. P000
G72 X.. Z.. I.. K.. P000 (P070)

The arc criterion is used to select a solution:


2nd arc:
P001 is programmed to select P1-1 (shorter arc),
P002 is programmed to select P1-2 (longer arc).

G72 I.. K.. (P070) P001 or P002 G72 I.. K.. (P070) P001 or P002
G73 B.. P000 G73 B.. P000
G72 X.. I.. K.. B.. P000 (P070) G72 Z.. I.. K.. B.. P000 (P070)
P001 or P002 P001 or P002

In each case the arc criterion is used to select a solution:


2nd arc
P001 is programmed to select P1-1 (shorter arc), P002 is programmed to select P1-2 (longer arc).

3rd arc:
P001 is programmed to select P1-1 (shorter arc), P002 is programmed to select P1-2 (longer arc).

G72 I.. K.. (P070) P001 or P002


G73 B.. P000
G71 X.. Z.. A.. P000

The arc criterion is used to select a solution:


2nd arc:
P001 is programmed to select P1-1 (shorter arc),
P002 is programmed to select P1-2 (longer arc).

© MTS GmbH 1998 191


Examples of Contour Strings

Examples of Pointed Tangential Transitions

F
Pointed tangential transitions may only be programmed in the WOP mode if this
option has been selected with the function key <F5>.
If P002 (pointed tangential transition) is programmed in the first NC block, the
selection of this solution will also apply to the second arc.

G72 I.. K.. (P070) P001 G72 I.. K.. (P070) R+.. P002 P011
G71 P000 G71 R+.. P011 P000
G72 X.. Z.. I.. K.. (P070) P000 G72 X.. Z.. I.. K.. (P070) P000

In the first NC block (1st. arc) the tangent criterion is used to select a solution:
P001 (left diagram) is programmed to select the tangent in direction of the circle orientation (P1-1 - P2-1)
P002 (right diagram) is programmed to select the pointed tangential transition (P1-2 - P2-2)with roundings.

192 Programmer's Guide for CNC Turning, Version 6.7


Examples of Contour Strings

G72 I.. K.. (P070) P001 G72 I.. K.. R+.. (P070) P002 P011
G71 P000 G71 R+.. P011 P000
G72 X.. I.. K.. B.. P000 (P070) G72 X.. I.. K.. B.. P000 (P070)
P001 or P002 P001 or P002

In the first NC block (1st. arc) the tangent criterion is used to select a solution:
P001 (left diagram) is programmed to select the tangent in direction of the circle orientation (P1-1 - P2-1)
P002 (right diagram) is programmed to select the pointed tangential transition (P1-2 - P2-2)with roundings.

In the third NC block (2nd arc) the arc criterion is used to select a solution:
P001 is programmed to select P3-1 (shorter arc), P002 is programmed to select P3-2 (longer arc).

G72 I.. K.. (P070) P001 G72 I.. K.. R+.. (P070) P002 P011
G71 P000 G71 R+.. P011 P000
G72 Z.. I.. K.. B.. P000 (P070) G72 Z.. I.. K.. B.. P000 (P070)
P001 or P002 P001 or P002

n the first NC block (1st. arc) the tangent criterion is used to select a solution:
P001 (left diagram) is programmed to select the tangent in direction of the circle orientation (P1-1 - P2-1)
P002 (right diagram) is programmed to select the pointed tangential transition (P1-2 -
P2-2)with roundings.

In the third NC block (2nd arc) the arc criterion is used to select a solution:
P001 is programmed to select P3-1 (shorter arc), P002 is programmed to select P3-2 (longer arc).

© MTS GmbH 1998 193


Open Contour Strings

6.11 Open Contour Strings


To describe contour strings of any number of entities as multiple-point strings,
would result in an unlimited number of arc and line combinations with a
corresponding variety of address combinations. Since only a limited number of
examples can be described in this manual, the exemplification of strings of four
points and longer has been confined to those with a tangential transition.

To describe a contour string longer than four points we use the terms "open
contour strings" and tangential connections.

Definition An "open contour string" denotes a multiple-point string with all of its segments
geometrically determined. Only the end point of the final entity remains
undetermined.
Consequently, this final segment of an open contour string must be either a half line
or a full circle. The end point of this entity can only be determined by entering the
next entity; it is then computed by the control system. The next multiple-point string
is then linked-up, i.e. the last entity of the open contour string will be considered as
the first entity of the new multiple-point string.

Example - An open contour string with a tangential transition is given, consisting of an


arc and a line. The end point of the line remains undetermined
(see Diagram 6.9.1).
- Subsequent entities are an arc (G73) with given radius and an arc (G72) with
end point and centre. Based on the known starting point of the line P1 a
four-point string with tangential transitions is established, including the line
and both arcs (see Diagram 6.9.2).


G72 I.. K.. P070 G72 I.. K.. P070
G71 A.. P000 G71 A.. P000 P001
G73 B.. P000
G72 X.. Z.. I.. K.. P070 P000

Diagram 6.9.1 Diagram 6.9.2

In this example, the open contour string could also be continued by programming
G72 I.. K.. B..

194 Programmer's Guide for CNC Turning, Version 6.7


Open Contour Strings

Optional Addresses:

X/Z Coordinates of the end point of the


line
L Length of the line
A Angle of the line to the positive Z-
axis
I/K Coordinates of the centre of the
arc
B Radius of the arc
P000 Tangential transition between
segments

Number of Solutions Depending on the address values programmed, the computation of the contour
may not always result in a single solution (cf. addresses for segment contour
programming). Some combinations of addresses may result in four, three, two, one
or no solutions.

Optional Addresses As a first segment of a contour, a circular arc, starting at a known point P0 can be
defined by its centre and radius. One of the four alternative address combinations
listed below must be programmed:

I, K Centre coordinates
A, I Starting angle and centre coordinate in X
A, K Starting angle and centre coordinate in Z
A, B Starting angle and radius

For reasons of clarity, only the centre coordinates (I and K) of arcs will be shown in
the diagrams below.

Programming Hints When alternative solutions occur, the desired contour must be determined by
entering P001 or P002.

If no particular solution is selected, the control system, will assume the first solution
P001.

If absolute circle centre coordinates are entered, the address P070 must be
programmed in the same NC block.

To avoid repetition, only clockwise-oriented arcs (G72) are included in the graphic
representation of contour strings. All programming examples given are applicable
to counter-clockwise arcs (G73) as well.

© MTS GmbH 1998 195


Open Contour Strings

Table of Available Open Contour Strings:

One Entity Selection of Solutions


G71 A
G72/G73 I K

Two Entities Selection of Solutions


G72/G73 I K Tangent Criterion

G71 A P000
G71 X Angle Criterion

G72/G73 I K B
G71 Z Angle Criterion

G72/G73 I K B
G71 A Line Criterion

G72/G73 I K B
G71 L Angle Criterion

G72/G73 I K B
G71 Tangent Criterion

G72/G73 I K B P000
G72/G73 I K Arc Criterion

G72/G73 I K B

Two Entities Selection of Solutions


G72/G73 I K Tangent Criterion

G71 P000
G72/G73 I K B P000
G71 I K Arc Criterion

G72/G73 B P000
G72/G73 I K B P000
G71 A Arc Criterion

G72/G73 B P000
G72/G73 I K B P000

F
Note: a circular arc as a first contour segment may also be programmed by
the addresses A I, A K or A B, instead of by the centre coordinates I K. This
applies to all examples.

196 Programmer's Guide for CNC Turning, Version 6.7


Examples of Contour Strings

Examples of Contour Strings with Alternative Solutions

G71 X.. P001 or P002 G71 Z.. P001 or P002


G72 I.. K.. B.. (P070) G72 I.. K.. B.. (P070)

The angle criterion is used to select a solution:


P001 is programmed to select P1-1 (smaller angle), P002 is programmed to select P1-2 (greater angle).

G71 A.. P001 or P002


G72 I.. K.. B.. (P070)

In the first block G71 :

The line criterion is used to select a solution:


P001 is programmed to select P1-1 (shorter line),
P002 is programmed to select P1-2 (longer line).

G71 L.. P001 or P002


G72 I.. K.. B.. (P070)

The angle criterion is used to select a solution:


P001 is programmed to select P1-1 (smaller angle),
P002 is programmed to select P1-2 (greater angle).

© MTS GmbH 1998 197


Examples of Contour Strings

G72 I.. K.. (P070) P001 or P002


G72 I.. K.. B.. (P070)

The arc criterion is used to select a solution:


P001 is programmed to select P1-1 (shorter arc),
P002 is programmed to select P1-2 (longer arc).

G72 I.. K.. (P070) P001 or P002


G73 B.. P000
G72 I.. K.. B.. P000 (P070)

G71 A.. P001 or P002


G73 B.. P000
G72 I.. K.. B.. P000 (P070)

The arc criterion is used to select a solution:


P001 is programmed to select P1-1 (shorter arc), .
P002 is programmed to select P1-2 (longer arc).

198 Programmer's Guide for CNC Turning, Version 6.7


Examples of Contour Strings

Examples of Pointed Tangential Transitions

F
Pointed tangential transitions may only be programmed in the WOP mode if this
option has been selected with the function key <F5>.

G72 I.. K.. (P070) P001 G72 I.. K.. (P070) R+.. P002 P011
G71 A.. P000 G71 A.. P000

The tangent criterion is used to select a solution:


P001 (left diagram) is programmed to select the tangent in direction of the circle orientation (P1-1). P002
(right diagram) is programmed to select the pointed tangential transition (P1-2)with a rounding

G71 P001 G71 R+.. P002 P011


G72 I.. K.. B.. (P070) P000 G72 I.. K.. B.. (P070) P000

The tangent criterion is used to select a solution:


P001 (left diagram) is programmed to select the tangent in direction of the circle orientation (P1-1). P002
(right diagram) is programmed to select the pointed tangential transition (P1-2)with a rounding

© MTS GmbH 1998 199


Examples of Contour Strings

G72 I.. K.. (P070) P001 G72 I.. K.. R+.. (P070) P002 P011
G71 P000 G71 R+.. P011 P000
G72 I.. K.. B.. P000 (P070) G72 I.. K.. B.. P000 (P070)

In the first NC block (1st. arc) the tangent criterion is used to select a solution:
P001 (left diagram) is programmed to select the tangent in direction of the circle orientation (P1-1 - P2-1).
P002 (right diagram) is programmed to select the pointed tangential transition (P1-2 - P2-2)with roundings.

If P002 (pointed tangential transition) is programmed in the first NC block, this selection will also be
applied to the second arc.

200 Programmer's Guide for CNC Turning, Version 6.7


Tangential Connection

6.12 Tangential Connection


As a rule two addresses must be programmed to define a line, three addresses to
define an arc (see the description of two-point strings in Sections 6.2 and 6.3).
However if a contour segment is connected to the previous segment by a tangential
transition, one address will be sufficient to determine a line and two addresses to
determine an arc.

Cross Reference For more detailed instructions concerning tangential transitions between contour
segments, see Section 6.1.2 "Tangential Transitions".

Optional Addresses:

Line:

X/Z Coordinates of the end point of the


line
L Length of the line

Arc:

X/Z Coordinates of the end point of the


arc
I/K Coordinates of the centre of the
arc
B Radius of the arc

To program a tangential transition between two contour segments, the address


P000 is entered in the second NC block. This address is equivalent to the starting
angle A, which must not be programmed.

Programming Hints If absolute circle centre coordinates are entered, the address P070 must be
programmed in the same NC block.

To avoid repetition, only clockwise-oriented arcs (G72) are included in the graphic
representation of contour strings. All programming examples given are also
applicable to counter-clockwise arcs (G73).

© MTS GmbH 1998 201


Tangential Connection

Examples of Contour Strings with Tangential Connection

Selection of Solutions
G71 X P000
G71 Z P000
G71 L P000
G72/G73 X Z P000
G72/G73 X I P000 Arc Criterion

G72/G73 X K P000 Arc Criterion

G72/G73 Z I P000 Arc Criterion

G72/G73 Z K P000 Arc Criterion

G72/G73 X B P000 Arc Criterion

G72/G73 Z B P000 Arc Criterion

Examples of Contour Strings with Alternative Solutions

G72 X.. I.. P000 (P070) P001 or P002 G72 X.. K.. P000 (P070) P001 or P002

The arc criterion is used to select a solution:


P001 is programmed to select P1-1 (shorter arc), P002 is programmed to select P1-2 (longer arc).

202 Programmer's Guide for CNC Turning, Version 6.7


Tangential Connection

G72 Z.. I.. P000 (P070) P001 or P002 G72 Z.. K.. P000 (P070) P001 or P002

The arc criterion is used to select a solution:


P001 is programmed to select P1-1 (shorter arc), P002 is programmed to select P1-2 (longer arc).

G72 X.. B.. P000 P001 or P002 G72 Z.. B.. P000 P001 or P002

The arc criterion is used to select a solution:


P001 is programmed to select P1-1 (shorter arc), P002 is programmed to select P1-2 (longer arc).

© MTS GmbH 1998 203


Parameters

Assignment of Parameter Values:


N020 P01=-080.000
N025 P02=+015.000
N030 P03=+001.000
N035 P04=+040.000
N040 P05=-030.000
N045 P06=+006.000
N050 P07=+001.500
N055 P08=+070.000
N060 P09=+001.000
N065 P10=-070.000
N070 P11=+095.000
N075 P12=+001.500
N080 P13=+006.000
N085 P14=+000.920
N090 P15=+030.000

Diagram 7.1: Assignment of parameter values

Diagram 7.2: NC program, parameter programming

204 Programmer's Guide for CNC Turning, Version 6.7


Parameters

7 Parameters
In the MTS Programming Code, parameters are generally programmed at the
address P. A total of 100 registers "P00" to "P99" are available to the user.

Assignment of a Parameter Value


To assign a value to a parameter, the identification letter P and the number of the
register are entered. The assignation sign ("=" as a rule) will be set automatically by
the editor. The value which is to be assigned to this register must then be entered.

Example N120 P20= +100.000

The default parameter address and assignation sign may be edited in the
configuration program (e.g. for use with other programming codes). Note: this kind
of modification should be effected only if a format file containing has been created,
the applicable parameter entries, or if the NC Editor is operating in the free format
mode.

In the free format mode an option is provided to assign a complete command (e.g.
N20 P200= G0 X100) to a parameter register.
The free format mode provides access to 32000 parameter registers.

F
The assignement of a value to a parameter must be programmed either as a
separate NC block or at the end of a block.

Programming with Parameters


To program parameters within an NC block, enter, the identification letter, followed
by the applicable parameter number after the address.

Example N475 P01 = +020.000 P02 = +030.000

ò
N485 G00 XP01 ZP02

In line with the value programmed in block N475 the tool will be moved in X to the
value +20 and in Z to +30 when block 475 is executed.

If, in the free format mode, a command has been assigned to a parameter, there
is no need to program an address to invoke it.

Example N20 P200= G0 X100

ò
N140 P200

Rapid positioning of the tool at X +100.

Cross-Reference Please see the Operation Manual of the CNC Simulator for Turning for detailed
instructions concerning the configuration and operation of the free format mode.

© MTS GmbH 1998 205


Programming with Special Characters

Diagram 8.1: NC blocks N140, N150 and N235 contain comments.

206 Programmer's Guide for CNC Turning, Version 6.7


Programming with Special Characters

8 Programming with Special Characters

8.1 Comments
To keep the structure of a generated NC program clear and intelligible,
explanations and comments concerning specific NC blocks or program parts may
be included in the program itself. Comments must be flagged by special characters
to make them distinguishable from the program blocks. The flagged parts will be
identified by control system and skipped accordingly during program execution.

( The comment character "(" (opening parenthesis) can be used to explain


specific steps in the program run, such as G-commands and cycles.

Example N020 P01=-080.000 ( DRILLING DEPTH


...
N150 F000.200 S0450 T0404 M04 (LEFT HAND CORNER TOOL ALT/506

The comment character may be inserted directly after a command or on the next
line, depending on the length of the text to be entered.

Removing the comment sign will delete the whole line/comment.

8.2 Skipping of NC blocks


: The special character ":" (colon) serves to temporarily omit NC blocks, e.g. for
test purposes. The blocks indicated will be skipped in the program execution.

Example N210 G00 Z-017.000


N215 G00 X+046.000
N220 : G78 X+044.000 Z-025.000 I+002.000 K+005.000
N225 G78 X+044.000 Z-025.000 I+001.800 K+006.500
N230 G01 X+062.000 : Z-020.000

In this case the NC block N220 and the address Z-020.000 in block N230 will be
skipped in the program execution.

Unlike the parenthesis sign preceding a comment, the colon can be removed
without deleting the line: only the special character will disappear and the NC block
will be re-integrated into the program run.

© MTS GmbH 1998 207


Programming with Special Characters

Diagram 8.2: Because of the arithmetic operations included in the NC blocks N270 and
N300 these have been programmed in the "Temporary Free Format Mode".

208 Programmer's Guide for CNC Turning, Version 6.7


Arithmetic Operations

8.3 Temporary Free Format


If the user wishes to dispense with syntax checking, automatic formatting etc., the
free format mode is the option to choose for NC Programming. In this programming
mode there are no limitations to entering characters and character strings. The free
format mode can either be activated from the configuration program (to apply to an
NC program in general), or by entering the character ")" (to apply to specific
program lines). (See Ch. 7 of the CNC Simulator Operation Manual for a detailed
description of the MTS Format and the Free Format Mode.)

) The character ")" (closing parentheses) activates the free format mode for the
selected program line. As with the comment character (see above), any
sequence of characters (including blanks) can be entered after the special
character. All entries will take effect in the program run, while no syntax
checking is applied. It is advisable to make sure that your entries are logical
and interpretable!

Example N270 ) G00 XP04+1 Z+001.000

F
The option of activating the free format mode in each selected program line can be
used for condensed input of NC blocks as well as to include arithmetic operations
in the programming:

8.4 Arithmetic Operations


In an NC program, a calculation may be specified as an arithmetic operation (e.g.
XP1+1) or as a functional equation (e.g. P4=P1*P2). In both cases, the algebraic
rules (e.g. 'priority of multiplication and division', 'priority of operations in brackets'),
addition theoremes, rules of calculation with powers and logarithmic calculation etc.
must be observed.
The following operations can be programmed:

Addition + To effect an addition, the sign "+" (plus) must be programmed:

N270 ) G00 XP04+1 Z+001.000 (=> X = P04 + 1)

Subtraction - To effect a subtraction, the sign "-" (minus) must be programmed:

N445 ) P16 = P04 - P02

Multiplication * To effect a multiplication, the sign "*" (asterisk) must be programmed:

N320 ) G01 X P04 Z 2 * P03 (=> Z = 2 * P03)

Division / To effect a division, the sign "/" (slash) must be programmed:

N320 ) G01 X P04 Z 4 / P03 (=> Z = 4 / P03)

© MTS GmbH 1998 209


Arithmetic Operations

Statement of + By specifying a + (plus) or - (minus) sign, an entered value can be


Operational Signs - interpreted as a real number, with up to three places after the
decimal point. Values that have no sign will be interpreted as positive
numbers.:

N330 ) P1 = -005.500
N340 ) P2 = P1 + P1

ò
P2 = - 011.000

Brackets [] In addition to the operations described above, brackets can be used. The
applicable characters are "[" (opening bracket) and "]" (closing bracket).

N260 ) G01 X [P1 + P2] * 2

Absolute Value ABS To enter a number as an absolute value, the character string "ABS" must be
programmed prior to that number. This may serve to exclude negative
values:

N330 ) P1 = -005.500
N350 ) P2 = ABS [+004.500 + P1]

ò
P2 = 001.000

Integer Value INT If, in the course of an arithmetic operation, only the numbers before the
decimal point should be taken into account, the character string "INT" must
be programmed prior to the respective value:

N445 ) P1 = +010.000
N450 ) P2 = -001.500
N455 ) P1 = INT [P1 + P2]
...
N480 ) G23 P450 Q470 S3

ò
P1' = 008.000, P1'' = 006.000, P1''' = 004.000
During the first execution of the program part repetition P1 is set to the value 8, in
the second execution it is set to 6 and in the third to 4.

"Modulo" Value % "Modulo" is the term for the remainder of a division calculation, when the
result is to be a value of integer numbers e.g.:
5/2=2
4

_____
1 (modulo-value)
The division sign for modulo calculation is "%" (percentage) , e.g. 5 modulo 2: 5 %
2

N550 ) P1 = +010.000 % +003.000

ò
P1 = 001.000

210 Programmer's Guide for CNC Turning, Version 6.7


Arithmetic Operations

Sine SIN The sine function applies to right-angled triangles and is established by the
function "opposite cathetus/hypotenuse". The character string "SIN" must be
programmed prior to entering a sine value in angular degrees.:

N400 ) P16 = SIN P15 * P03

Cosine COS The cosine function applies to right-angled triangles and is established by the
function "adjacent cathetus/hypotenuse". The character string "COS" must
be programmed prior to entering a cosine value in angular degrees.:

N405 ) P16 = COS [90 - P15] * P03

Tangent TAN The tangent function applies to right-angled triangles and is established by
the function "opposite cathetus/adjacent cathetus". The character string
"TAN" must be programmed prior to entering a tangent value in angular
degrees:

N410 ) P17 = TAN P15 * P03

Arc Tangent ATAN The arc tangent function applies to right-angled triangles, it establishes the
included angle of the adjacent cathetus and hypotenuse.
This functional equation is the inverse function of the tangent: "opposite
cathetus/adjacent cathetus". The character string "ATAN" must be entered to
program the arc tangent, which will be calculated in angular degrees:

N420 ) P15 = ATAN P17 / P03

Square Root SQRTTo program the square root function, the character string "SQRT" is entered :

N320 ) P16 = SQRT +025.000

ò
P16 = 005.000

Exponential Function EXP This exponential function, programmed by the character string EXP, is based
on "Euler's constant" (e = 2,71828...); it serves to calculate the ex. value for
each case.

N820 ) P20 = EXP +003.000

Natural Logarithm LN As the inverse to the above exponential function, programming "LN" serves
to calculate the logarithm to the base e :

N830 ) P21 = LN P20

F
Note: when applying arithmetical operations or programming parameters, the
entered values or intended functions must "make sense" in the overall context of
the NC programming. If the arithmetical operations prove invalid, a corresponding
error message with the suffix "operation error..." will appear (cf. CNC Simulator
Operating Manual).

© MTS GmbH 1998 211


Arithmetic Operations

Calculating a Chamfer:

Z2 => Z1 - P03
X2 => P04
Z1 = 000.000
X1 => P04 - 2 * P03 / TAN P15

Diagram 8.3: Applying a trigonometric function in the programming of a chamfer. If a


general case is given, the Z1-value can also be parametricised.

Diagram 8.4: Programming with parameters and application of arithmetic operations.

212 Programmer's Guide for CNC Turning, Version 6.7


Arithmetic Operations

8.5 Example of Programming with Parameters and Arithmetic


Operations
In diagrams 7.2, 8.1 and 8.2, parameter programmed lines of NC programs are
listed, namely the deep drilling cyle (N140), the cross turning cycle (N165), the
roughing cycle (N180 - N225), the roughing cycle in compliance with DIN 76 (N275)
and the thread cutting cycle (N300). Each of these cutting cycles can easily be
modified by setting different parameters.
With the roughing cycle a trigonometric function has been applied to describe the
chamfer in a generalized form. This special type of programming is advisable in the
given case, because the chamfer angle depends on the lead. In the following, a
short explanation is given of the arithmetic operations applied.
Parameters relevant to the programming of the chamfer are the following:
P03: Length of the chamfer
P04: Diameter at the chamfer end point
P15: Chamfer angle

The contour is described by determining two contour points:

1. First the cross turning is executed, up to the point where the chamfer is to
begin. The part diameter at this point can easily be calculated by applying the
tangent function(see Diagr.):
N190 ) G01 X [P04 - 2 * P03 / TANP15]
Note: dx = X2 - X1 relates to the diameter. The value of the adjacent cathetus in
the tangent function must therefore be doubled.

2. As a next step the end point of the chamfer must be defined:


N195 ) G01 XP04 Z-P03
Note: this contour description is based on Z1 = 000.000. If the user wishes to
define a generally valid function, Z1 can be programmed as a parameter.

F
Parametricized cutting cycles can be used as macros for other NC programs.

Note: If you choose to use macros as subprograms, make sure you do not
program any jump instructions or program part repetitions.

© MTS GmbH 1998 213


Setup Form

Diagram 9.1 : Setup form; programming of data for the automatic setup of the machine tool.

214 Programmer's Guide for CNC Turning, Version 6.7


Setup Form

9 Setup Form

9.1 Preface
The setup form lists all data necessary for the automatic setup of a machine tool
when an NC program is started, as defined in the Simulator configuration. This data
includes the following:
- Blank-/part geometry
- Clamping devices and clamping mode
- Tools in the turret and current tool
- Offset values of the tools employed
Setup forms describing the status of the machine at any time can be created
automatically or manually. Each setup form is listed before the NC program to
which it applies and is distinctly separated from the actual program lines. It is also
possible to create and manage an NC program bound to a specific set of setup
data.

If the setup form interpreter (see CNC Simulator Operating Manual) is selected,
the CNC Simulator will automatically be set up according to the specified setup
data, each time the respective NC program is loaded in the automatic or in the
interactive programming mode.

If the user wishes to include the setup of a specific machine status in the start-up
routine of the CNC Simulator itself, the name of the NC program to which that setup
applies, must be specified in the configuration program. In cases where a setup
form and a status file have been specified in the configuration, the Simulator will be
set up according to the status file.

The setup form function considerably speeds up programming, because specific


NC programs can be repeatedly edited without the need to re-program the
Simulator setup for each work session. At the same time the setup form serves to
document the machine status, which can then be verified and edited at any time. As
an additional data backup, we recommend that the user make printed copies of the
NC programs generated.

Note Note: When a setup form documenting a specific machine status is generated
automatically, it will be included in the current NC program without a security
prompt. If the selected NC program already has a setup form prefixed to it, this will
be overwritten without further dialogue.

F
When manually creating or editing a setup form, it is important to check on
the valid input of words, parameters and values. Invalid keywords will be
ignored and missing parameters will be set to zero. Trouble-free execution of
a program is guaranteed only if there are no errors with value input and
spelling.
If specific data is missing or wronly entered, as a rule the respective data
from the previous definition of the machine status will normally be entered.

© MTS GmbH 1998 215


Setup Form

()
(( 26.6.1998 08:20
(
( CONFIGURATION
( MACHINE MTS TC-DRT-CSP-042-0400x2000
( CONTROL MTS TC DRT CSP CONTROL
(
( PART
( CYLINDER D060.000 L112.000
( MATERIAL C 45 W-Nr: 1.0503
( DENSITY 007.90
(
( MAIN SPINDLE WITH WORKPART
( CHUCK KFD-HS 130
( STEP JAW HM-110_130-02.001
( TYPE OF CHUCK EXTERNAL CHUCK OUTSIDE STEP JAW
( CHUCKING DEPTH E18.000
(( Right side of the part: Z+222.000
(
( COUNTER SPINDLE WITHOUT WORKPART
( CHUCK KFD-HS 160
( STEP JAW HM-160_200-01.001
( POS. COUNTER SPINDLE Z+1000.000
(
( CURRENT TOOL T01
( TOOLS
( T01 LEFT CORNER TOOL CL-SCLCL-2020/L/1204 ISO30
( T02 CENTER DRILL CD-04.00/056/R/HSS ISO30
( T03 TWIST DRILL DR-10.00/087/R/HSS ISO30
( T04 LEFT CORNER TOOL CL-SDJCL-2020/L/1204 ISO30
( T05 LEFT CORNER TOOL CL-SVJCL-2020/L/1604 ISO30
( T06 RECESSING TOOL ER-SGTFL-2012/L/02.4-0 ISO30
( T07 LEFT THREADING TOOL TL-LHTR-2020/R/60/3.00 ISO30
( T08-R LEFT CORNER TOOL CL-SCLCL-2020/L/1204 ISO30
( T09-R REVERSIBLE TIP DRL DI-26.00/059/R/HMT ISO30
( T10-R LEFT CORNER TOOL CL-MTJNL-2020/L/1604 ISO30
( T11-R LEFT CORNER TOOL CL-MTJNL-2020/L/1604 ISO30
( T12-R INSIDE TURNING TOOL POST BI-SDQCL-1212/L/0704 ISO30
( T13-R INTERN. THREADING TOOL POSTAX. TI-ITTR-2016/R/60/2.50 ISO30
( T14 LEFT CORNER TOOL CL-SVJCL-2020/L/1604 ISO30
( T15-R TWIST DRILL DR-14.00/065/R/HSS ISO30
( T16 LEFT THREADING TOOL TL-LHTR-2020/R/60/3.00 ISO30
(
( TOOL COMPENSATION
( D01 R000.400 X+100.000 Z+041.500 G000.000 E005.000 I-000.400 K-000.400
( D02 R000.000 X+062.000 Z+070.000 G004.000 E000.000 I+000.000 K+000.000
( D03 R000.000 X+062.000 Z+129.000 G010.000 E000.000 I+000.000 K+000.000
( D04 R000.400 X+100.000 Z+041.500 G000.000 E032.000 I-000.400 K-000.400
( D05 R000.400 X+100.000 Z+041.500 G000.000 E052.000 I-000.400 K-000.400
( D06 R000.160 X+095.000 Z+038.700 G002.400 E000.000 I-000.160 K-000.160
( D07 R000.433 X+105.000 Z+037.067 G000.000 E000.000 I-000.433 K+000.000
( D08 R000.400 X+100.000 Z-041.500 G000.000 E005.000 I-000.400 K+000.400
( D09 R000.000 X+065.000 Z-115.000 G026.000 E000.000 I+000.000 K+000.000
( D10 R000.400 X+100.000 Z-041.500 G000.000 E027.000 I-000.400 K+000.400
( D11 R000.400 X+100.000 Z-041.500 G000.000 E027.000 I-000.400 K+000.400
( D12 R000.400 X+056.224 Z-120.000 G000.000 E017.500 I+000.400 K+000.400
( D13 R000.361 X+051.439 Z-120.000 G000.000 E000.000 I+000.361 K+000.000
( D14 R000.400 X+100.000 Z+041.500 G000.000 E052.000 I-000.400 K-000.400
( D15 R000.000 X+062.000 Z-112.000 G014.000 E000.000 I+000.000 K+000.000
( D16 R000.433 X+105.000 Z+037.067 G000.000 E000.000 I-000.433 K+000.000
(
()
Diagram 9.2 : Setup data of an NC program

216 Programmer's Guide for CNC Turning, Version 6.7


Setup Form

9.2 Syntax of the Setup Form


As with the generation of an NC program, the setup data is programmed using the
NC- editor or the interactive programming mode. By an appropriate default entry in
the Simulator control configuration, the setup form data can be protected against
manual editing. This may be recommendable e.g. for training purposes.
If manual entry or editing of setup form data is desired, certain conventions
concerning the programming language ("syntax rules") must be observed to ensure
correct interpretation. The diagram on the previous page shows an example: the
setup form of an NC program.

Beginning and End The beginning and end of the setup form must be indicated by the character string
Indicator: "()" Deleting one of these indicators may lead to problems in the program run.

Line Start Indicator The character "(" - otherwise used to denote a comment - must be entered at the
beginning of each new line.

Break Character Different entries within the same line must be separated by at least one blank
character.

Keywords A number of pre-defined "keywords" can be used with the entry of setup data,
serving to denote that element of the machining space to which the subsequent
information relates. These keywords are given and explained in further detail on the
following pages.
e.g.: ( CYLINDER D60 L112
The character"(" indicates the beginning of a new line and the character
string "CYLINDER" is the keyword for the definition of a blank.

Parameters After the keyword has been entered, the appropriate elements can be specified
either by input of dimensions or by entering object or file names.
e.g.: ( T04 LEFT CORNER TOOL CL-SDJCL-2020/L/1204 ISO30
The corner tool identified by " CL-SDJCL-2020/L/1204 ISO30" is mounted to
the turret position "T04" .

Groups of Elements For the sake of clarity, all entries relating to a common technical context will be
arranged in "groups". The grouping has a binding effect and must therefore be
observed in the subsequent programming. :
e.g.: (MAIN SPINDLE WITH WORKPART
( CHUCK KFD-HS 130
( STEP JAW HM-110_130-02.001
( TYPE OF CHUCK EXTERNAL CHUCK OUTSIDE STEP JAW
( CHUCKING DEPTH E18.000

Comments To include comments in the setup form, another opening parenthesis "("must be
entered to indicate the beginning of the comment text. Specific comments - e.g.
"right face of the workpiece : ..." - will be set automatically when a setup form is
representing a current machine status is created.
In cases where the character "(" is also used to name an element, the character
should be entered twice to make sure it will not be interpreted as a comment
character.
Example.: Chuck Name : "SP5(120" -> Setup form: ( LATHE CHUCK SP5((120

© MTS GmbH 1998 217


Setup Form

9.3 Setup Data: Beginning/End Indicator


Function The beginning and end of the setup form is indicated by the character string "()"
(opening/closing parenthesis)

NC Block ()
...
()
Note The character strings indicating the beginning and end of the setup form must be
programmed to ensure trouble-free program execution.

9.4 Setup Data: Configuration Files


Function For the sake of clarity the activated machine and control configuration files can be
specified in the setup form. This will facilitate the selection of the appropriate
configuration with later test runs of the NC program.

NC Block ( CONFIGURATION
( MACHINE [FILENAME1]
( CONTROL [FILENAME2]
Addresses [FILENAME1] Name of the machine configuration file
[FILENAME2] Name of the control configuration file

Note Configuration files cannot be read-in while the CNC Simulator is switched on; it is
therefore of no importance for the program run, whether such files have been
specified in the setup form. To edit the configuration, machining must be interrupted
and the desired configuration files identified in the selection menu.

Example ( CONFIGURATION
( MACHINE MTS TC-DRT-CSP-042-0400x2000
( CONTROL MTS TC DRT CSP CONTROL

218 Programmer's Guide for CNC Turning, Version 6.7


Setup Form

9.5 Setup Data: Blank


Function Blanks can be cylindrical core pieces (cylinder, cylinder with chamfer) or tubes
(tube, tube with chamfer). Furthermore it is possible to overlap each rotation
symmetrical raw part geometry additionally with a polygon as an outside contour.

The polygon is specified with the number N for corners and with the width over the
flats D. Based on these data and on the quantity theory the raw part is created as
an average of the cylinder/tube with the N-polygon.

NC Block ( CYLINDER D... L...


( CYLINDER WITH CENTRE HOLE D... L... WS... WF... DS... DF...
( TUBE D... L... I...
( CHAMFERED TUBE D... L... I... WS... WF... DS... DF...
( N-POLYGON N006 D050.000

Addresses D Diameter of cylinder or tube respectively


the width of each side of the N- polygon
L Length of cylinder or tube
I Internal diameter of tube
WS Angle of chamfer at face end
WF Angle of chamfer at chucked end
DS Diameter of chamfer at face end
DF Diameter of chamfer at chucked end
N Number of corners of the N-polygon

Programming Example: ( CHAMFERED TUBE D+170.000 L+170.000 I+080.000 WS+090.000


WF+090.000 DS+100.000 DF+100.000

Setting up work part :


chamfered tube

Note The values entered must only relate to one type of blank at a time.
Parameters not entered will automatically be set to zero.

© MTS GmbH 1998 219


Setup Form

Programming Example: ( N-KANT N006 D050.000

N-polygon Clarification: N = number of corners D = width of each side


• If N is an even number then:
the width of each polygon side D corresponds to the distance of two
opposite areas.
• If N is an uneven number then:
the width of each polygon side D corresponds to the distance of one side
to the opposite area.

Setting up work part:


N-polygon

3D view:
demonstration of the
N-sided polygon
specified as a blank

220 Programmer's Guide for CNC Turning, Version 6.7


Setup Form

9.6 Setup Data: Prefabricated Part


Function Instead of a blank, a prefabricated part may be inserted. This can be specified in
the setup form either by entering the keyword "Blank Geometry" and subsequently
describing an NC program in compliance with DIN 66025 including the
G-commands "G00", G01", "G02" or "G03" (all specified in the setup form), or - if
there is already a workpiece file - by entering the keyword "Blank Filename" and
subsequently specifying the file name.

NC Block ( BLANK GEOMETRY [NC program]


( BLANK FILENAME [FILENAME.DWS]
Addresses [NC program] After the keyword the geometry is described as an NC
program in compliance with DIN 66025 (closed contour,
1st block: Feed adjustm. at "G00" or "G01").
[Filename.DWS] Name of the workpiece file

Programming Example: ( BLANK GEOMETRY X+000.000Z+270.000


( G01 X+120.000 Z+270.000
( G01 X+130.000 Z+260.000
( G01 X+130.000 Z+170.000
( G02 X+170.000 Z+155.000 I+000.000 K+015.000
( G01 X+170.000 Z+60.000
( G01 X+000.000 Z+060.000
( G01 X+000.000 Z+270.000
( M30

Setting up work part :


prefabricated part

Setup Data: Workpiece Material


Function After the keyword "material" the desired type of workpiece material can be entered.
In addition to the information on the raw material of the work part to be machined
also the material density can be entered. This value corresponds to the specific
material weight and is internally used in the NC program analysis for the calculation
of the milled mass.

NC Block ( MATERIAL [type of the selected material]


( DENSITY [density of the selected material]
Example ( MATERIAL C 45 W-Nr: 1.0503
( DENSITY 007.90

© MTS GmbH 1998 221


Setup Form

9.7 Setup Data: Clamping Devices


Function The clamping device management of the Simulator for Turning provides the means
to define and manage lathe chucks, step jaws, lathe centres, face drivers, collets
and sleeves. To select of one of the available elements, the desired (and, of
course, matching) elements must be entered under the group name "clamping
devices":

NC Block ( CLAMPING DEVICES


( LATHE CHUCK [Chuck]
( STEP JAW [Set of jaws]
( SLEEVE TIP [Sleeve tip]
( FACE DRIVER [Face driver]
( COLLET CHUCK [Collet chuck)
( COLLET [Collet]
Addresses [Chuck] Name of the lathe chuck
[Set of jaws] ame of the step jaws
[Sleeve tip] Name of the sleeve tip
[Face driver] Name of the face driver
[Collet chuck] Name of the collet chuck
[Collet] Name of the collet

Note Only matching clamping elements can be specified. See clamping device
management for the correct names of the clamping elements.

Setting-up:
Clamping selection

222 Programmer's Guide for CNC Turning, Version 6.7


Setup Form

Clamping on counter If the turning machine is configured for counter spindle it is possible to select a
spindle corresponding clamping device and to use the counter spindle.

Setting-up:
Clamping on the main
and counter spindle

9.8 Setup Data: Clamping Mode


Function The clamping mode (the way the step jaws are used to chuck the workpiece) is
entered under the group name "Clamping Mode".

NC Block ( CLAMPING MODE EXT. CLAMPING EXT. STEPPED JAWS


( CLAMPING MODE EXT. CLAMPING INT. STEPPED JAWS
( CLAMPING MODE INT. CLAMPING EXT. STEPPED JAWS
( CLAMPING MODE INT. CLAMPING INT. STEPPED JAWS
Addresses "External clamping" or "internal clamping" denotes the selected type of clamping.
"External stepped jaws" or "internal stepped jaws" defines the way of applying the
stepped jaws.
Keywords have no parameters.

Note The clamping mode must be consistent with the blank/workpiece geometry.
If no clamping mode is defined, the default mode will be external clamping with
externally stepped jaws.
If a clamping mode has been defined and "turning between centres" has been
selected as the clamping device, the entry concerning the clamping mode will be
ignored.

© MTS GmbH 1998 223


Setup Form

9.9 Setup Data: Tailstock/Sleeve


Function Additionally a tailstock can be defined, on condition that this option has been
provided for in the CNC Simulator Configuration.

NC Block ( TAILSTOCK POSITION Z...


Addresses Z After the keyword "tailstock" the position of the tailstock in Z must be entered.

Note Check on possible collisions. The turret will be moved to the reference point in the
automatic setup procedure.

9.10 Setup Data: Chucking Depth


Function The final parameter for definition of the clamping is the chucking depth.

NC Block ( CHUCKING DEPTH E...


Addresses E Chucking depth in Z

Programming Example:

...
( CHUCKING DEPTH E+028.000
...

Note To facilitate the programming of the workpiece zero, the Z-value of the front face
will be indicated as a comment when a setup form is generated automatically.

224 Programmer's Guide for CNC Turning, Version 6.7


Setup Form

9.11 Setup Data: Counter Spindle


With the additional option to install a counter spindle on a CNC machine tool it was
necessary to extend the set-up sheet information.

2 work parts In the set-up sheet it is possible to store information on two work parts. Also the
information which of the work parts is chucked on each spindle is stored in the set-
up sheet.

Example 1 Set-up sheet of a turning machine with counter spindle and two work parts.
...
definition of the ( PART 1
first work part ( CYLINDER D020.000 L072.400
( MATERIAL C 45 W.-No 1.0503
(
defintition of the ( PART 2
second work part ( GEOMETRY X+000.000 Z+435.200
( G01 X+020.000 Z+435.200
( G01 X+020.000 Z+441.588
( G03 X+019.700 Z+441.900 I+000.250 K+000.312
...
( G01 X+000.000 Z+435.200
( M30
( MATERIAL C 45 W.-No 1.0503
(
clamping the first work ( MAIN SPINDLE WITH WORKPART 1
part in the main spindle ( COLLET CHUCK BO-HS
( COLLET BO-BC32-20
( CHUCKING DEPTH E54.700
(( Right side of the part: Z+017.700
(
clamping the second ( COUNTER SPINDLE WITH WORKPART 2
work part in the counter ( COLLET CHUCK BO-GS
spindle ( COLLET BO-BC32-14
( CHUCKING DEPTH E9.500
( POS. COUNTER SPINDLE Z+423.000
(( Left workpart surface: Z+416.200
...

Example 2 Set-up sheet of a turning machine with counter spindle and one work part.
...
definition of the ( PART
work part ( CYLINDER D025.000 L162.400

( MATERIAL ::Messing
( DENSITY 008.70
(
clamping the work part ( MAIN SPINDLE WITH WORKPART
in the main spindle ( COLLET CHUCK CCPO-KSPF-48
( COLLET POCC-171E-22
( CHUCKING DEPTH E81.000
(( Right side of the part: Z+172.000
(
no work part in the ( COUNTER SPINDLE WITHOUT WORKPART
counter spindle ( COLLET CHUCK CCPO-KSPF-48
( COLLET POCC-171E-22
( POS. COUNTER SPINDLE Z+1000.000
...

© MTS GmbH 1998 225


Setup Form

9.12 Setup Data: Current Tool


Function This entry serves to program a selected tool in the turret to be moved to the
working position. Prior to this the turret is positioned at the reference point.

NC Block ( CURRENT TOOL T..


Addresses T Specification of the selected tool in the turret (two-digit, e.g. "T09")
Note It is essential to make sure that moving the selected tool to the working position will
not cause a collision.

9.13 Setup Data: Tools in the Turret


Function The selection of tools to be mounted in the turret is determined by entering, under
the group name "Tools", the two-digit position numbers, the keywords of tool types
and the tool names.

NC Block ( TOOLS
( T.. RIGHT CORNER TOOL [Tool name]
( T.. LEFT CORNER TOOL [Tool name]
( T.. COPYING TOOL [Tool name]
( T.. ROUND HORIZONTAL [Tool name]
( T.. INSIDE TURNING TOOL POST [Tool name]
( T.. INSIDE TURNING TOOL PRE [Tool name]
( T.. INSIDE RECESSING TOOL PREAXI. [Tool name]
( T.. INSIDE RECESSING TOOL POSTAXI. [Tool name]
( T.. FRONT GROOVING TOOL [Tool name]
( T.. RECESSING TOOL [Tool name]
( T.. RH THREADING TOOL [Tool name]
( T.. LEFT THREADING TOOL [Tool name]
( T.. TWIST DRILL [Tool name]
( T.. CENTER DRILL [Tool name]]
( T.. REVERSIBLE TIP DRL [Tool name]
( T.. INTERN THREADING TOOL PREAXI. [Tool name]
( T.. INTERN THREADING TOOL POSTAX. [Tool name
( T.. SPECIAL TOOL. [Tool name]
( T.. EMPTY

Addresses T Specification of the selected tool in the turret (two-digit, e.g. "T09")

The appropriate "tool name" can be found under "tool management"..

Note Only tools that are included in the tool management can be specified. If a tool type
keyword has been spelled incorrectly no new tools can be mounted. If the tool
name is invalid, a corresponding error message will appear.

226 Programmer's Guide for CNC Turning, Version 6.7


Setup Form

9.14 Setup Data: Driven Tools


Driven tools for If a turning machine has been configured for driven tools the turret and the tool
horizontal and management function are correspondingly extended to allow horizontal and
vertical milling vertical milling tools.
operations

When using driven tools it is possible to select milling tools out of the following
machining groups:
• End mill
• Slot milling tool
• T-slot cutter
• Radius cutter
• Reamer
• Tap
• Drill
• Core drill

The individual tools of the above groups can be used either vertically or horizontally
in the turret. This definition is made in set-up mode under the menu item for
equipping the turret.

CNC simulator turning version 6 offers new tool adaptation possibilities for turning
and for driven tools especially for the use of the counter spindle.
In case of this type of turret the tool carrier reference points are located on the
turret surface. For tool equipping special tool adapters are available.

If the turning machine is configured for counter spindle the user can define the use
of the tools for machining on the main or counter spindle, after the turret has been
equipped. This definition is done with the menu item „Turn the tool“ in the main
menu of equipping the turret. Herewith the current tool is turned 180° and used in
the turret.

Setting-up:
Equipping the turret
with driven tools

© MTS GmbH 1998 227


Setup Form

Additional Next to the information on turret position equipping the set-up sheet contains
identification of additional identifications on the application of the tool. These identifications each
tool application in have a different meaning:
set-up sheet
-R This letter indicates that a turning tool or a horizontal milling tool is installed
in the tool turret, turned 180°, for machining on counter spindle.
-V This letter indicates that a milling tool is used for vertical machining
irrespective of the fact if machining takes place on the main or counter
spindle.

Based on the additional identifications for the tool application the following set-up
sheet alternatives are possible:

Example 1
( T06 SLOT MILLING TOOL MS-10.0/022K/HSS ISO 1641

Clarification: Milling tool without identification = horizontal clamping for


machining on the main spindle

Example 2
( T08-R SLOT MILLING TOOL MS-14.0/053L/HSS ISO 1641

Clarification: Milling tool with identification R = horizontal clamping for


machining on the counter spindle

Example 3
( T07-V RADIUS CUTTER RC-03/01.5/05/HSS ISO1641

Clarification: Milling tool with identification V = vertical clamping for machining


on the main and counter spindle

Example 4
( T02 LEFT CORNER TOOL CL-MTJNR-2020/R/1604 ISO30

Clarification: Turning tool without identification = machining on the main spindle

Example 5
( T04-R RIGHT CORNER TOOL CR- MSBNL-2020/R/1204 ISO30

Clarification: Turning tool with identification R = machining on the counter


spindle

228 Programmer's Guide for CNC Turning, Version 6.7


Setup Form

Compensation values for Left Corner Tool and Axial Reccessing Tool:

Setup Form, Compensation Values for Tools in the Turret:

© MTS GmbH 1998 229


Setup Form

9.15 Setup Data: Compensation Values


Function The compensation values of the active tools may be automatically read in from the
tool management or the offset value registers may be "manually" defined by the
user, by entering the keyword "compensation values" followed by the compensation
values.

NC Block ( VALID COMPENSATION VALUES

( COMPENSATION VALUES
( D.. R... X... Z... G... E... I... K...

Addresses The keyword "Valid Compensation Values" is entered without parameters. This
effects the setting of the default compensation values to the appropriate registers,
denoted by numbers corresponding to the turret position numbers, e.g. the offset
values for "T01" are stored in the register "01" etc.

Denotation Parameter
Number of register D (Two-digit:01-16)
Tool nose radius R
Drills: R=000.000
Coordinates of the theoretical tool tip X and Z
relative to the tool reference point
Max. width of recessing tool G
or diameter of drill All other tools:
G=000.000
Plan angle of external and E
internal tools All other tools: E=000.000
Tool nose compensation vector 1 I and K
Drills: =000.000

Note For a detailed description of the definition of compensation values, see the
Operating Manual of the CNC Simulator.

230 Programmer's Guide for CNC Turning, Version 6.7


NC Program Analysis

10 NC Program Analysis
The NC program analysis is a comfortable tool for the technological and
economical analysis of rotation symmetrical machining within NC programs.
For each tool applied in the simulation it calculates the corresponding machining of
the work part in form of a travel path representation including a table with the
corresponding technological data.
With reference to each tool and to the corresponding machining the following
information is calculated for each machining process:
• machining process (commentary in NC program)
• tool position in turret
• minimum and maximum infeed of cutting point resulting from infeed
• number of rotations (minimum and maximum)
• cutting speed (minimum and maximum)
• infeed (minimum and maximum)
• length of travel path with infeed speed
• traversing time with infeed speed
• traversing time in rapid speed
• tool changing time
• cut material volume
• sum of the calculated times

Select NC The NC program analysis is started in the main menu of the automatic mode by
program analysis selecting the menu item „calculate NC data“ after you have entered the name of
the NC program to be analyzed

After the NC program is run the user can enter additional information, for instance,
name of the customer, of the part, special tool description among other things. This
information can be displayed on the screen together with the graphical
representation of the machining and of the technology data. It can also be printed
out page by page.

When for instance the following message:

N100 T0404 ( STRAIGHT ROUGHING OUTSIDE

has been included as a comment after the tool change this comment is displayed in
abbreviated form in the table with other analyzed technology information during the
graphical representation of the machining process.

It is also possible to include the technology information (without graphics) into the
corresponding NC program. It then appears as a comment at the end of the
analyzed NC program.

© MTS GmbH 1998 231


NC Program Analysis

Result of the NC
program analysis:
travel path
indication with the
individual
machining
processes (part 1)

Result of the NC
program analysis:
travel path
indication with the
individual
machining
processes (part 2)

Result of the NC
program analysis:
table of overview
with technological
information

Result of the NC
program analysis

232 Programmer's Guide for CNC Turning, Version 6.7


3D-View

11 3D-View
The performance of the 3D view of the CNC simulator turning 6 has been
considerably extended and offers now almost unlimited possibilities for three-
dimensional viewing of the work part.
The 3D view can be called at any time of the CNC simulation and it always shows
the current machining situation. Within the 3D menu the view can be changed with
the following functions:

3D menu: Adjusting the viewing angle


• Rotation of the work part in the X axis (each step 5°)
• Inclination of the work part in the Y axis (each step 5°)
• Rotation of the work part in the Z axis = location of the C axis (each step 1°)
• Zoom
• Viewing distance from the work part (far away, close viewing point)

3D view:
3D menu for the
selection of the 3D
view

3D-Interface: Adjusting the viewing angle


• Free-selected C cut
From a rotation symmetrical basic form of the work part a circular sector is cut
out. The size of the circular sector (opening angle of the wedge) as well as the
location of its both limiting areas can be selected freely. Variants of the C cut are
the full cut, half cut and free-selected cut.

• Free-selected Z cut
With the help of the Z cut the work part can be cut at any point of the Z axis in
the X, Y plane. The orientation of the Z cut indicates which of the so created
two sides of the work part is currently shown.

In the 3D view the different type of machining operations are indicated in color as
follows:

grey: geometries generated by rotation symmetrical machining operations


blue: geometries generated by machining with driven tools
red: threading generated by milling operations

© MTS GmbH 1998 233


3D-View

3D view:
3D interface for the
free-selectable
location of the
C cut

3D view:
3D interface menu
for the free-
selectable location
of the Z cut

3D view:
view of the work
part as a 3D full
view without
section cut

234 Programmer's Guide for CNC Turning, Version 6.7


CNC-Turning with the Counter Spindle

12 CNC-Turning with the Counter Spindle

12.1 Preface

F The counter spindle is an optional software supplement to the MTS CNC


simulator Turning 6. This function has to be bought separately. The performance
characteristics described below are available only if this supplementary software is
available.

Counter spindle The free-configurable counter spindle on a track of its own is in the first place
created to take over the work part for complete machining especially for rear side
machining. Either the counter spindle or the tailstock can be configured.

Programming For machining on counter spindle a complete programming code including the
code application of driven tools is available.

Work part transfer The counter spindle makes it first of all possible to take over work parts from the
main spindle or work parts which have already been machined. Furthermore, the
counter spindle enables to take the work part from the main spindle and to transfer
it to the counter spindle after trimming. The counter spindle consequently allows
reversal or complete machining.

Collision The travel movement of the counter spindle is time controlled and is fully
monitoring integrated in the mathematically exact collision monitoring within the machining
space of the machine tool.

Set-up mode If counter spindle is configured it is possible to select the clamping device and to
insert the work part in counter spindle in set-up mode in work part and clamping
device management.

The work part can be inserted either separately one by one in the main or counter
spindle or at once in both of them.
For the take-over of the machining tools a special turret type vertically to the
turning axis is automatically selected allowing tool application for machining on the
main and counter spindle.

Machining with
driven tools on the
counter spindle

© MTS GmbH 1998 235


CNC-Turning with the Counter Spindle

Activating The functions and characteristics of the counter spindle are activated in the CNC
counter spindle machine configuration in which the counter spindle is configured instead of the
tailstock.

If you start the CNC simulator with such a configuration it is possible for you to use
the counter spindle.

Programming key The same machining possibilities (G and M commands, cycles) which are
for counter available on the main spindle of the CNC control are available on the counter
spindle spindle as well.
Especially for the programming of the work part transfer, as well as for the
differentiation of machining operations on the main and counter spindle new G and
M commands were necessary to improve the functional applicability of these
operations.

Machining states In the MTS CNC simulator Turning 6 a CNC machine with a counter spindle has
the machining possibilities G29, G30, G28:

G29 Machining on the main spindle (standard)


Machining takes place on the main spindle. The coordinate system,
operation and programming of the CNC simulator remain unchanged. When
starting the CNC simulator this machining status is activated as a standard.
G30 Work part transfer
This command initiates the work part transfer from the main spindle to the
counter spindle. The counter spindle can be moved to a programmed
position for the work part take-over. Prior to the subsequent machining the
work part can be trimmed. During the work part transfer there are additional
switch commands available for the main and counter spindle. Please note
that for G30 the coordinate system of the last machining status is valid. This
is usually G29.
G28 Machining on the counter spindle
Machining takes place on the counter spindle, i.e. the current coordinate
system refers to the counter spindle as well as to switch and technology
commands.

In the following passages only the special travel and switch commands for
the programming of a CNC machine with counter spindle are being
discussed.

For the programming of rotation-symmetrical machining as well as for the


application of driven tools on counter spindle the same programming
instructions are valid as for machining on the main spindle. These
instructions (rotation-symmetrical machining) as well as in chapter 4 of this
manual regarding the application of driven tools.

236 Programmer's Guide for CNC Turning, Version 6.7


Configuration

12.2 Configuration
Within the MTS configuration program of the CNC simulator there are extensive
possibilities to adapt the software to the machine-specific conditions of the CNC
control available.

If a machine with counter spindle was selected as the „machine type“ in the
configuration of the machine to be used, then the counter spindle is additionally
available. Here it is possible to set-up the counter spindle.

Configuration of the
machine:
Set-up of the
counter spindle

The following parameters of the counter spindle can be adjusted:

• geometrical dimensions of the shell surface


• diameter of the counter spindle
• spindle jut-out
• type of the chucks
• minimum clamping length on the counter spindle
• travel area of the counter spindle
• maximum infeed
• minimum and maximum number of rotations of the counter spindle
• changes of the coordinate system by mirroring the NC axes Y and Z
• availability of a C axis
• changing rotation direction for circular interpolation on the counter spindle,
separately for turning and milling
• changing the rotation direction of the cutting radius compensation, separately for
turning and milling
• relative rotation direction of the main and counter spindle in relation to each
other

© MTS GmbH 1998 237


G29 Machining Transfer to the Main Spindle

12.3 Programming the Counter Spindle

12.3.1 Machining Transfer to the Main Spindle G29


Function The command G29 informs the CNC control that the subsequent machining
operation is carried out on the main spindle. The control consequently activates
the most recently used work part coordinate system for the main spindle. The zero
point of the coordinate system is then set again to the value which was last valid
on the main spindle.

NC command G29

F When starting the CNC simulator machining status G29 is in general active. This
means that G29 needs to be explicitly programmed in the NC program only if a
tool transfer (G30) or machining on the counter spindle (G28) was carried out.

Transfer In G29 the following switch commands are valid for the main spindle:
command

M03 Spindle rotation direction right (CW)


M04 Spindle rotation direction left (CCW)
M05 Spindle rotation off
M07 Coolant 1 on
M08 Coolant 2 on
M09 Coolant off
M10 Chucking jaws clamping inside for standing spindle
M11 Chucking jaws clamping outside for standing spindle
M15 Chucking jaws clamping inside for rotating spindle
M16 Chucking jaws clamping outside for rotating spindle

238 Programmer's Guide for CNC Turning, Version 6.7


Work Part Transfer G30

12.3.2 Work Part Transfer G30


Function The command G30 initiates the work part transfer from the main to the counter
spindle.

NC command G30

F In machining state G30 it is possible to program the position movements of the


counter spindle with G00 and G01 and the address V. In addition to this a number
of supplementary M and G commands are available in the machining state G30.

Transfer M03 Spindle rotation direction right (CW)


commands for the M04 Spindle rotation direction left (CCW)
main spindle in
G30 M05 Spindle rotation off
M07 Coolant 1 on
M08 Coolant 2 on
M09 Coolant off
M10 Chucking jaws clamping inside for standing spindle
M11 [X...] Chucking jaws clamping outside for standing spindle
X... Diameter for the clearance of the chucking jaws
M15 Chucking jaws clamping inside for rotating spindle
M16 Chucking jaws clamping outside for rotating spindle
M19 [C...] Spindle halt at specified angle position
C... Angular position of the main spindle at specified angle
M28 Main spindle moment-free

Switch commands M53 Spindle rotation direction right (CW)


for the counter M54 Spindle rotation direction left (CCW)
spindle in G30
M55 Spindle rotation off
M57 Coolant 1 on
M58 Coolant 2 on
M59 Coolant off
M60 [X...] Chucking jaws clamping inside for standing spindle
X... Diameter for closing chucking jaws
M61 [X...] Chucking jaws clamping outside for standing spindle
X... Diameter for closing chucking jaws
M65 Chucking jaws clamping inside for rotating spindle
M66 Chucking jaws clamping outside for rotating spindle
M69 [C...] Spindle halt at specified angle position
C... Angular position of the main spindle at specified angle
M78 Counter spindle moment-free
M95 Switch on cleaning air blow of counter spindle
M96 Switch off cleaning air blow of counter spindle

Switch commands M37 Switch on parallel run of main and counter spindle
for the main and M38 Switch off parallel run of main and counter spindle
counter spindle in
G30

© MTS GmbH 1998 239


G59 Incremental Shift of the Counter Spindle Reference Point (when Programming Travel Movements)

12.3.3 Incremental Shift of the Counter Spindle Reference Point


(when Programming Travel Movements) G59
Function As a supplement to the counter spindle zero point a so-called counter spindle
reference point is also identified. In standard setting these points are identical.
With the command G59 it is possible to shift the counter spindle reference point
incrementally. All coordinate data refer to this point when programming the travel
movements of the counter spindle.

NC command G59 V...

Address V... Value of the incremental shift of the counter spindle reference point
The direction of the shift is defined by the sign of the address V:
V+... = Shift in the direction of the positive Z axis
V-... = Shift in the direction of the negative Z axis

Incremental shift of
the counter spindle
reference point

= active work part zero point (in G29 and G30)


= counter spindle reference point (example: identical with the counter spindle
zero point)
= value of the incremental shift of the counter spindle reference point
= new counter spindle reference point (example: outer left side of the
chucking jaws)

Programming ...
example N045 G30 Work part transfer (begin)
N050 G59 V-160 incremental shift of the counter spindle reference point
Incremental shift of ... on the outside surface of the chucking jaws, i.e. 16 mm
the counter spindle in direction of the negative Z axis
reference point

240 Programmer's Guide for CNC Turning, Version 6.7


Travel Movement of the Counter Spindle in Rapid Speed Movement G00

12.3.4 Travel Movement of the Counter Spindle in Rapid Speed


Movement G00
Function The counter spindle can be positioned for the tool transfer with the command G00
and the address V.

NC command G00 V...

Address V... Z coordinate of the target point of the counter spindle travel movement
Please note that the Z coordinate of the travel movement refers to the
reference point of the counter spindle. In the standard set-up this point is
identical with the counter spindle zero point. However, it is possible to shift
the counter spindle reference point incrementally with the command G59 to
position it, for instance, on the outer edge of the clamping jaws.

F
Counter spindle
If the address V has been programmed in G30 instead of the address X the
machine then moves the current tool to the indicated position.

movement in rapid
speed (without
shifting the counter
spindle reference
point)

= active work part zero point (in G29 and G30)


= counter spindle reference point (without incremental shift with G59)
= counter spindle movement in rapid speed

Programming ...
example N045 G30 Work part transition (begin)
N050 G00 V+130 Counter spindle in rapid speed movement:
Counter spindle ... The counter spindle reference point is moved to
movement in rapid the value Z=+130 mm.
speed
without G59

Programming ...
example N045 G30 Work part transition (begin)
N050 G59 V-160 Incremental shift of the counter spindle reference point
Counter spindle on the outside surface of the chucking jaws, i.e.
movement in rapid counter spindle in rapid speed: the counter spindle in
speed rapid speed 160 mm to the negative Z axis.
with G59 N055 G00 V-30 The counter spindle reference point is moved to the
... coordinate Z=30. This value corresponds to the
clamping depth of the counter spindle.

© MTS GmbH 1998 241


G01 Travel Movement of the Counter Spindle with Infeed F in mm/min

12.3.5 Travel Movement of the Counter Spindle with Infeed F in


mm/min G01
Function With the command G01 and the address V the counter spindle can be positioned
for the tool transfer with the infeed F. Hereby the counter spindle can move up to a
point of collision of the clamping device and the work part. This position can then
be taken to clamp the tool and to continue machining.
NC command G01 V... F...

Addresses V... Z coordinate of the target point of the counter spindle travel movement
Please note that in G30 the coordinate system of the machining state is
activated in which G30 has been called. The Z coordinate of the travel
movement to be programmed under the address V refers to the counter
spindle reference point. In standard setting this point is identical with the
counter spindle zero point. The counter spindle reference point can,
however, be incrementally shifted with the command G59, for instance to
have the outer edge positioned on the chucking jaws.
F... In feed of the travel movement

F If the address V is programmed in machining state G30 instead of the address X


the machine takes the current tool (instead of the counter spindle) to the indicated
position.

Counter spindle in
rapid speed
movement
(without shifting
the counter spindle
reference point)

= active work part zero point (in G29 and G30)


= counter spindle reference point (without incremental shift with G59)
= travel movement of the counter spindle in infeed
Programming a) without G59
example ...
N045 G30 Work part transfer (begin)
Counter spindle N050 G01 V+130 F1 Counter spindle movement in infeed F: The counter spindle
travel movement in ... reference point is moved to the value Z=+130 mm.
infeed F
b) with G59
...
N045 G30 Work part transfer (begin)
N050 G59 V-160 Incremental shift of the counter spindle reference point to
the outer edge of the chucking jaws, i.e. travel in infeed F by
160 mm in direction of the negative Z axis.
N055 G01 V-30 F1 The counter spindle reference point is moved to coordinate
... Z=30. This value also corresponds to the clamping depth of
the counter spindle

242 Programmer's Guide for CNC Turning, Version 6.7


Counter Spindle to the Counter Spindle Reference Point G27

12.3.6 Counter Spindle to the Counter Spindle Reference Point G27


The command G27 effects that the counter spindle zero point is moved to the
configured counter spindle reference point in rapid speed. The counter spindle
reference point is located at the extreme right edge of the travel area of the
counter spindle in the machine room.

NC command G27

Counter spindle
movement to the
counter spindle
reference point

= current work part zero point (in machining states G29 and G30)
= counter spindle reference point (without incremental shift with G59)
= counter spindle movement to the counter spindle reference point

© MTS GmbH 1998 243


G28 Switching on Machining on the Counter Spindle

12.3.7 Switching on Machining on the Counter Spindle G28


Function With the command G28 the CNC control is being informed that the subsequent
machining takes place on the counter spindle. Hereby G28 activates the
coordinate system for the counter spindle. The location of the zero point of this
coordinate system can be defined when calling the command with optional
addresses. Please, note that G27 (counter spindle movement to the reference
point) should be programmed prior to programming G28.

NC Command G28 [O...] [Z...]

If G28 is programmed without address the counter spindle zero point is


automatically taken as the new zero point of the coordinate system.

Optional O50 Take-over of the counter spindle reference point as a new zero point
addresses of the coordinate system (standard)

O51 Taking the present work part zero point of the work part on the main
spindle as a new zero point of the coordinate system of the work part
on the counter spindle

O51 Z... Taking the present work part zero point as a new zero point of the
coordinate system and a subsequent incremental shift of the new
zero point by the value of Z with reference to the work part zero point

Mirroring Z axis Mirroring the Z axis for machining on counter spindle is controlled by a
configuration variable. Depending on the setting of these variables G28 either
represents the mirroring of the Z axis or retains its direction. The location of the
zero point depends on the fact if the mirroring of Z axis was made or not.

Zero point shifts Absolute and incremental zero point shifts programmed with G28 refer to the new
zero point (= new work part zero point) specified in G28.

Switch commands In machining state G28 the following switch commands are valid for the counter
spindle:

M03 Spindle rotation direction right (CW)


M04 Spindle rotation direction left (CCW)
M05 Spindle rotation off
M07 Coolant 1 on
M08 Coolant 2 on
M09 Coolant off
M10 Chucking jaws clamping inside for standing spindle
M11 Chucking jaws clamping outside for standing spindle
M15 Chucking jaws clamping inside for rotating spindle
M16 Chucking jaws clamping outside for rotating spindle

244 Programmer's Guide for CNC Turning, Version 6.7


Switching on Machining on the Counter Spindle G28

Zero and reference


points on the main
and counter spindle

= machine zero point


= work part zero point on the main spindle
= work part zero point on the counter spindle
= counter spindle zero point = counter spindle reference point

F Please, note the difference between the counter spindle zero point and the so-
called counter spindle reference point. In standard setting these points are
identical. The counter spindle reference point can, however, be shifted
incrementally with the command G59.
Consequently, it is reasonable for the programming of the work part transfer to
shift for instance the counter spindle reference point on to the front edge of the
chucks.
Please, note that when programming the travel movements of the counter spindle
the coordinate data refer to the reference point of the counter spindle.

Programming ...
example N045 G30 Work part transfer (start)
N050 G00 V+130.000 Counter spindle in rapid speed movement: The counter
Work part transfer spindle reference point is placed on the value Z=+130
and machining on mm.
the counter spindle N055 M60 Chucks of the counter spindle inwards (=close).
N060 M11 Chucks of the main spindle outwards (=open).
N065 G27 Reference path of the counter spindle.
N070 G28 O51 Z-100 Switching on machining on the counter spindle: The work
... part zero point is taken as the new origin of the coordinate
system in Z shifted by 100 mm to the left.

© MTS GmbH 1998 245


G05 Bar feed

12.3.8 Bar feed for work parts in the main spindle G05
Function The bar moves to a programmed position or to the end stop mounted in the counter
spindle.

Conditions 1) The bar is clamped with a collet chuck!


2) The selected machining plane is the turning plane G14!

NC Block 1) M70
2) G05 [W...] [F...]
Optional Addresses W incremental Z value for the shifting in the Z direction
F Feedrate in mm/min

Programming example ...


M70 open the collet chuck
G05 the bar moves to the end stop mounted in the
... counter spindle

...
M70 open the collet chuck
G05 W50 F200.000 the bar moves 50 mm incremental in the positive X-direction
... with the feedrate of 300mm/min

open the collet chuck

the bar moves to the


end stop mounted in
the counter spindle

246 Programmer's Guide for CNC Turning, Version 6.7


CNC Turning with Driven Tools

13 CNC Turning with Driven Tools

13.1 Preface

F Driven tools is an optional software supplement to the MTS CNC simulator


Turning 6. It can be separately purchased as a supplementary license. The
functions described below are available only if this software supplement is installed
in your system.

5 controllable NC The CNC simulator version 6 with driven tools represents a CNC machine tool with
axes: 5 controllable NC axes. Unlike the CNC simulator 5.x the traditional Cartesian
X, Z, Y, C and B coordinate system for turning with the main axes X and Z is extended by the main
axis Y. This means that machining with driven tools can be programmed in a new
Cartesian coordinate system offset the rotation center point (Y=0).

In addition to the above there is a rotation axis C available. It enables you to


control exactly the rotation of the work part in the Z axis. The rotation axis C can
be both positioned exactly and interpolated. In this way it is possible to realize tool
geometry’s by overlapping a rotation in C with a simultaneous movement of the
tool in X and/or Z.

The swivel axis B of the turret is new as well. By programming B the turret is
rotated in the turret reference point. It enables you to realize milling with driven
tools on all surfaces and on all machining planes.

Location and
direction of the NC
axes X, Z, Y and C

Swivel axis B of the


turret

= Turret
reference point
= Turret rotation
point
= Tool reference
point

© MTS GmbH 1998 247


CNC Turning with Driven Tools

Machining planes The NC programming syntax of the CNC simulator turning 6 depends on the
currently active machining plane. The following machining planes can be selected:

• Turning plane (G14)


• Standard plane (G15)
• Free-definable plane (G16)
• Front surface (G17)
• Shell surface (G18)
• Chord surface (G19)

In addition to the turning plane (G14) the driven tools are available on all other
machining planes (G15-G19) as well. Conventional rotation-symmetrical
machining is programmed on the turning plane (G14).

Overview of the
machining planes
of the CNC
simulator turning 6
for machining with
driven tools

Programming In addition to the commands G and M of the MTS syntax on turning plane (G14)
code the programming code for driven tools offers a set of new cycles for the application
of driven tools.

248 Programmer's Guide for CNC Turning, Version 6.7


Preface

As to the new cycles for driven tools machining and multiple cycles are
differentiated.

Machining cycles The machining type and method as well as the geometry and additional
information on the NC machining is programmed in the machining cycles.

Multiple cycles Using a multiple cycle a previously specified machining cycle is controlled to be
performed either once or several times.

In general, the following machining and multiple cycles are available on machining
planes G16, G17, G18 and G19:

Available Machining Cycles Pages


G60 Face Milling Cycle in G16: 262 and in G19: 304

G61 Drilling Cycle in G16: 264, in G17:278, in G18: 293 and in G19: 306

G62 Thread Tapping in G16: 265, in G17:279, in G18: 294 and in G19: 307

G63 Reaming/Boring in G16: 266, in G17:280, in G18: 295 and in G19: 308

G64 Square Pocket/in Groove in G16: 267, in G17:281, in G18: 296 and in G19: 309

G65 Circular Pocket in G16: 268, in G17:282, in G18: 297 and in G19: 310

G66 Tapping in G16: 270, in G17:283, in G18: 298 and in G19: 311

Available Multiple Cycle Pages


G67 Cycle on a Circle in G16: 270, in G17:284, in G18: 299 and in G19: 312

G68 Cycle on a Radius in G16: 271, in G17:285, in G18: 300 and in G19: 313

G69 Cycle at a Point in G16: 272, in G17: 286, in G18: 301 and in G19: 314

General Selecting Machining Plane on C Axis


programming
hints The functions and features of driven tools are activated in an NC program by
selecting one of the machining planes of the C axis (G15-G19).

In general, the main spindle is switched off (M05) when starting and the C axis is
placed in the reference position (milling angle C=0).

The further application possibilities of the C axis depend in the first place on the
selected machining plane:
• When calling G16 (free-definable plane) and G19 (shell and mill surface) the C
axis is positioned at a certain rotation angle. This value remains valid until some
other plane is selected. This means that on the plane G16 and G19 it is not
possible to re-position the C axis any more.
• The plane G15 (standard plane with linear interpolation), G17 (front face) and
G18 (shell surface) are called without a specified rotation angle of the C axis.
On these planes it is possible to position C at any rotation angle. Furthermore, it
is possible to overlap the rotation movement of the C axis with the movement of
the tool (interpolation of several NC axis).
After one of the planes G15, G16, G17, G18 and G19 have been selected the
machine commands (e.g. M03/M04/M05) as well as the following programmed
technology data refer to the auxiliary drive of the driven milling tools on the turret.

© MTS GmbH 1998 249


CNC Turning with Driven Tools

The technology parameters of the auxiliary drive can be programmed as follows:


G97 S... Rate of rotation of the tool
G96 S... Cutting speed of the tool
G94 F... Infeed in mm/min
G95 F... Infeed in mm/U

Programming Machining Cycles

Programming machining with driven tools can be made in the NC program in


different ways. In addition to the standard commands there are efficient machining
and multiple cycles available.

The machining cycle (G60-G66) is always programmed first in an NC program. This


NC block generates no machining as such. Only if a multiple cycle (G67-G69) is
programmed in one of the succeeding NC blocks the machining is carried out.

This standard situation can be changed by programming the machining cycle and
the multiple cycle in one NC block. The following facts are to be considered:
• The complete machining cycle with all necessary addresses has to be
programmed first.
• The addresses of the machining cycle are followed by the G command of the
desired multiple cycle as well as the necessary address for it.
• In such an NC block with machining and multiple cycles none of the addresses
is allowed to appear more than once.

The following information is of great importance regarding the NC programming of


the CNC simulator turning 6:

F The programmable addresses of machining and multiple cycles depend on


the currently active machining plane.
Due to this reason the cycles of the driven tools are described below grouped
according to the machining plane.

Switching off Machining with Driven Tools

By selecting the turning plane G14 the functions and features of the driven tools are
de-activated again.

The selection of G14 means that the auxiliary drive (M05) is switched off. The C
axis remains with spindle halt (M05) at the position, which was taken after the last
programmed movement on the C axis plane.

The machine commands M03/M04/M05 as well as the technology data


programmed after it refer again to the most recent active spindle (main or counter
spindle).

250 Programmer's Guide for CNC Turning, Version 6.7


Configuration

13.2 Configuration
The MTS configuration program of the CNC simulator contains extensive
possibilities for adjusting the software to the special features of the machine tool
and CNC control available.

If a CNC machine with driven tools was selected in the configuration of the machine
tool the additional configuration option „driven tools“ is available. The corresponding
set-ups can be made here.

Configuration
machine:
Set-ups for the
driven tools

The following parameters can be varied:

• the turret positions to be operated on driven tools can be specified


• the number of rotations in the different gear stages of the CNC machine can be
defined
• it can be specified if the X coordinates programmed in the NC program should
be interpreted as a diameter or radius in the different machining planes with
driven tools.

F Definition of the interpretation of the X coordinate has a decisive influence on the


programming of machining processes with driven tools. It is recommended to
machine on all planes with radius programming. This set-up is used in the
standard configurations for CNC turning machines with driven tools supplied by
MTS.

F When configuring CNC machines with driven tools, also note the configuration
menus „main spindle“, „turret“ and eventually also „counter spindle“. In these
menus the availability of the controllable NC axes C, Y and B needs to be set-up.

F In this manual all the programming clarifications on driven tools are based
on the MTS standard machine configuration „MTS GSP AWZ“ as well as on
the MTS standard configuration „MTS CNCT GSP AWZ“ for the CNC control
for turning.

© MTS GmbH 1998 251


G14 Turning Plane

13.3 Turning Plane G14


Function The turning plane is selected with the command G14. In this plane it is possible to
realize conventional, rotation-symmetrical tool geometries. When selecting the
turning plane G14 no driven tools are available.
As a zero point of the coordinate system the most recently used work part zero
point is used. Its value depends on the activated machining status at the time when
G14 is selected. G29 (machining on the main spindle) and G28 (machining on the
counter spindle) are possible for the selection.
For the selection of the turning plane G14 the turret has to be positioned in the
rotation center (Y=0). If the CNC machine has a controllable Y axis a corresponding
G command has to be programmed prior to calling G14.
Programming takes place with the Cartesian coordinates X, Z, whereby X is to be
entered as a diameter value.

NC Command G14
Programming If the turret was rotated in rotation axis B on some other machining plane prior to
hints the selection of G14 this rotation remains valid on the rotation plane. Prior to
making any further rotation-symmetrical machining the B axis in NC program
should be first switched back to B=0 (for instance the command: G01 B0). This
guarantees that the current tool correction values are processed correctly.
A light swivel of the turret (small B values) changes the recessing and withdrawal
angle of the tools. This can have positive and negative consequences for the
programmed machining.

Location and
direction of the NC
axes X and Z on
turning plane G14

Coordinate entries
of a point on
turning plane G14

252 Programmer's Guide for CNC Turning, Version 6.7


Standard Plane G15

13.4 Standard Plane G15


Function The standard plane is selected with the command G15. By selecting the plane
G15 the control is instructed to carry out linear interpolation of the programmed
coordinates in the axes X, Z, Y, C.
The programmed tool movements refer hereby to the spatial Cartesian coordinate
system X, Z, Y.
The interpretation of the X coordinates as a radius or diameter value is configurable
on the G15 machining plane. In general, it is recommended to work with radius
programming on all planes. This set-up is also used in the standard configurations
of the CNC turning machines supplied by MTS. In this manual all clarifications on
programming with driven tools are based on a configuration with radius
programming on all machining planes with driven tools.
On the standard plane driven tools are available for machining. It is however not
possible to program machining cycles.
As a zero point of the coordinate system the most recently active work part zero
point is used. Its value depends on the machining status activated when selecting
G15. G29 (machining on the main spindle) or G28 (machining on the counter
spindle) are possible as machining status.
The turret can be moved in Y and additionally rotated in B axis. The rotation axis B
can only be positioned here. Machining with the interpolation of the B axis is not
possible.

NC Command G15

Location and
direction of the NC
axes X, Z, Y and C
on standard plane
with linear
interpolation G15

Entry of the
coordinates of a
point on standard
plane with linear
interpolation G15

© MTS GmbH 1998 253


G16 Free-definable Plane

13.5 Free-definable Plane G16


Function Free-definable planes can be used to program milling operations with driven tools
and a turret, that is rotated in B.

In general the turret is tilted in such an angle B that the tool is located vertically to
the plane to be machined. The rotation angle of the turret is within the range -
90°<B<+90° for a vertically clamped tool. For machining with a horizontally clamped
tool it is reasonable to use the angle range 0°<B<+180°.

Using the free-definable machining plane correspondingly requires the availability of


the B axis on the CNC machine. Eccentric milling requires additionally the Y axis.

For the realization of simple NC programming for milling with swiveled tools a new
coordinate system is introduced by selecting machining on a free-definable plane
G16. The coordinate axes YG16, ZG16 are hereby allocated to any plane. The third
coordinate axis of the Cartesian coordinate system XG16 is located vertically on the
specified plane directed off from the work part.

Example of free-
definable plane G16
with the coordinate
system XG16, YG16,
ZG16

The definition of a new coordinate system XG16, YG16, ZG16 is made by selecting any
plane G16 in reference to the coordinate system X, Y, Z of the turning plane G14.
The new coordinate system XG16, YG16, ZG16 is specified by the rotation in the Y axis
(rotation angle A) and by the shift of the new zero point in X and/or Z. The
additional definition of the positioning angle of the rotation axis C defines the
location of the free-definable plane G16.
The value of this rotation angle A specifies simultaneously the angle B, which is the
angle the tool turret has to be rotated for machining on the deliberate plane.

Location of the
coordinate system
on free-definable
plane G16

Original coordinate system of the turning plane G14


Shifted and rotated coordinate system of the free-definable plane G16

254 Programmer's Guide for CNC Turning, Version 6.7


Free-definable Plane G16

Location variants of
a free-definable
plane G16 for
manufacturing of
shell and mill
surfaces

F Please note in the above figure that the work part was first positioned on the
corresponding point of the rotation axis C prior to starting the machining on the
free-definable plane G16.

Machining processes on the free-definable plane G16 are programmed in the


Cartesian plane coordinates Y and Z of the new coordinates system X G16, YG16,
ZG16. The infeed value within this plane is entered using the coordinate X.

Values of the
coordinates of a
free-definable plane
G16

© MTS GmbH 1998 255


G16 Free-definable Plane

Selection Alternative 1 of a free-definable plane

NC command G16 C... X... Z... V... W... I.../K...


Addresses C The rotation angle of the rotation axis on which the work part is
positioned (identified) when selecting the plane.
When switching on the CNC machine all controllable NC axis are being
referenced. The reference point for the rotation angle 0° of the rotation axis C
is located on the positive A axis of the machine coordinate system. By
clamping the raw part the location of the value C=0° is defined in relation to
the work part. After this it is possible to make the exact positioning of the
work part for machining with driven tools by programming the address C.
X, Z Coordinates of the starting point (P1) of one of the straight lines
defining the plane (entry in the coordinate system of G14)
V, W Coordinates of the end point (P2) of one of the straight lines defining
the plane (entry in the coordinate system of G14)
I/K One coordinate of the new zero point of the coordinate system XG16, YG16,
ZG16 (entry in the coordinate system of G14)
The control calculates automatically the second coordinate for the definition
of the location of the new zero point of the coordinate system XG16, YG16,
ZG16. For this purpose the geometrical values of the straight lines defining the
plane are used.

F The coordinates X, Z, V, W, I and K refer to the original coordinate system of the


turning plane G14 when selecting the plane.
When quitting the plane G16 the zero point is repositioned to the zero point of the
turning plane G14.

Addresses of
the selection
alternative 1
of free-definable
plane G16

Plane G16 (YG16, ZG16 plane) specified by the line P1-P2

256 Programmer's Guide for CNC Turning, Version 6.7


Free-definable Plane G16

Selection Alternative 2 of a free-definable plane

NC command G16 X... Z... A... I.../K... C...


Addresses C The rotation angle of the rotation axis on which the work part is
positioned (identified) when selecting the plane
X, Z Coordinates of the starting point (P1) of one of the lines defining the
plane
This point is also the rotation point of the lines.
A Rotation angle of the lines defining the plane in Y axis in relation to the
direction of the positive Z axis of the G14 plane
I/K One coordinate of the new zero point of the coordinate system XG16, YG16,
ZG16 (entry in the coordinate system of G14)
The control calculates automatically the second coordinate for the definition
of the position of the new zero point of the coordinate system XG16, YG16,
ZG16. For this purpose the geometrical values of the lines defining the plane
are used.

F When selecting the plane the coordinates in X, Z, I and K refer to the original
coordinate system of the turning plane G14.
When quitting the plane G15 the zero point is re-positioned on the turning plane
G14.

Addresses of the
selection
alternative 2 of
free-definable plane
G16

Free-definable plane G16 (YG16, ZG16 plane) specified by the point P1 and the angle A

© MTS GmbH 1998 257


G16 Free-definable Plane

Machining a boring
pattern on a face
surface
programmed with
free-definable plane
G16

Programming ...
example N040 G94 F120 S1800 T0909
N045 G00 X+150 Z+30
Selection of the N050 G16 X+60 Z-10 K-10 A-10 C+45
free-definable plane N055 G01 B-10 M03
G16 to machine a N060 G01 X+30 Z-10
boring pattern on a N065 G60 X-20 I+90 K+40 V+60 W-90 O011
plane surface G16 N070 G69
N075 F80 S1200 T1515 M03
N080 G01 X+20 Z-50
N085 G61 X-50 K+20 A+10 B+10 D+10 W+30
N090 G67 Y+0 Z-55 J+0 E+360 R+20 S008
...

258 Programmer's Guide for CNC Turning, Version 6.7


Programming the Selection of the Free-definable Plane G16 G16

13.6 Programming the Selection of the Free-definable Plane G16


The geometrical programming entries for machining processes on a free-definable
plane rotated in B axis are made based on the analysis of the 2D-CAD drawing of
the work part to be machined. The process can be analyzed as follows:
Initial Considerations
1. First find out which machining elements (curved surfaces, pockets, grooves,
drillings) of the work part require for their machining the application of a turret
rotated in B axis.

Example for one


machining task on
plane G16 (part 1)

Ø The above example shows a part of a drawing. The production task includes
the machining of two curved surfaces and two drillings which are located at
180° angle to each other. These four machining elements require the
application of a tool rotated in B axis.
2. Now group all the machining elements which can be machined with one rotation
angle of the B axis and those which can be machined with one rotation angle of
the C axis.

Example for one


machining task on
plane G16 (part 2)

Ø As a result of this second step you have two groups of elements to be


machined:

The curved surface as well as the drilling of the group 1 are to be machined
in the position C=0° of the rotation axis. Both elements to be machined can
be machined at the same angle position B of the turret.

For machining the elements of the group 2 the rotation axis has to be
positioned C=180°. The same angle B can be used here as well.
3. The angle of the C axis as well as the location of the new coordinate system
XG16, YG16, ZG16 is defined by selecting the free-definable plane G16. During
machining on this plane they cannot be changed any more. This means that in
the current example, two different, free-definable planes G16 have to be
selected one after the other to be able to realize all machining processes.

© MTS GmbH 1998 259


G16 Programming the Selection of the Free-definable Plane G16

Defining Geometrical Entries for the Selection of the Free-Definable PlaneG16


After having clarified which elements can be manufactured together, the
geometrical values required for the definition and selection of the free-definable
plane G16 have to be specified. This is done in the following for the production
elements of the group 1 of the above example.

Example for a
production task
on plane G16 (part 3)

Production elements group 1 for whose production the free-definable plane


G16 is to be selected

Straight line 1 on the X, Z plane (Y=0) indicating the rotation of the free-
definable plane to be programmed in the Y axis of the coordinate system of
the turning plane G14 (angle A)
Straight line 2 on the X, Y plane (Z=0) indicating the rotation of the free-
definable plane to be programmed in Z axis of the coordinate system of the
turning plane G14 (angle position of the rotation axis C)
For the programming of machining with driven tools the turret has to be rotated
in such an angle so as to have the milling tool vertically positioned to the
selected free-definable plane G16. In this example the width of the angle A
also specifies the width of the angle B.

F For the exact definition of the angles A and C based on the CAD drawing it is
necessary that the technical representation meets the following requirements:

• The longitudinal section of the work part in X, Z plane (Y=0) has to be


represented from an angle with the work part rotated in Z axis prior to the
representation. This means that the straight line 2 in the X and Y plane (Z=0)
runs parallel to the Y axis.
• A side view or a section view (X, Y plane) of the work part has to indicate clearly
the angle of the rotation axis C in which the machining is carried out.

260 Programmer's Guide for CNC Turning, Version 6.7


Programming the Selection of the Free-definable Plane G16 G16

F If several free-definable planes G16 are to be programmed for one work part the
following items have to be additionally considered:

• A side view or a section view (X, Y plane) has to indicate clearly the respective
rotation angle of the rotation axis C. It describes the location of the various free-
definable planes to each other.
• For each element or each group of elements to be manufactured a longitudinal
section in X, Z plane (Y=0) has to be drawn whereby the work part has to be
rotated in the Z axis prior to it so as to have the straight line 2 in X, Z plane
(Z=0) parallel to the Y axis. Otherwise, it is not possible to determine the angle A
exactly from the drawing.

Geometrical data
which is not
sufficient for the
selection of the
plane G16 in a CAD
drawing

The above example shows a part of a drawing which in its present form does not
contain enough information for the definition and selection of the free-definable
plane G16

A group of elements to be manufactured for whose production the free-


definable plane G16 is to be selected.

The straight line in X, Y plane (Z=0) does not run parallel to the Y axis.

The drawing shows clearly the angle of the rotation axis C for both of the groups
elements to be manufactured, however, it does not give any information on the
rotation in longitudinal section in Y axis for the indicated group of elements to be
manufactured. In such a case the value of the angle A has to be either explicitly
indicated or represented in some other elevation.

© MTS GmbH 1998 261


Free-definable Plane: G16 Face Milling Cycle

13.7 Machining Cycles in the Free-definable Plane G16

13.7.1 Face Milling Cycle G60


Function With the machining cycle G60 the machining of a face area is programmed. A face
area is an area parallel to YG16ZG16 plane whose location in XG16 can be freely
defined. The cycle machines the programmed face area with one infeed or in
several infeeds. The travel paths of the milling tool can be optimized if necessary.
In addition to G60 it is necessary to program a multiple cycle, for instance G69
(cycle at a point). By programming the multiple cycle the machining cycle which
was most recently specified is carried out.

NC command G60 W... X... V... K... [I...] [O...] [O...]

F When programming the addresses of the machining cycle all the coordinate data
refer in the following to the coordinate system XG16YG16ZG16 of the plane G16.
For this cycle it is necessary to have the Y axis available in the CNC machine.

Addresses W Z coordinate of the end point of the face milling area


The starting point of the face milling area is defined by the Z coordinate
based on the multiple cycle programmed subsequent to it. If Z has not
programmed in the multiple cycle the value of the current tool position is
used when calling the cycle.
X X coordinate (absolute) of the end point of the face milling area
Unlike for CNC milling the coordinate entry for the infeed is programmed as
an absolute value in this cycle.
V Half machining width in Y for machining the face milling area
Machining face milling area takes place in Y direction starting from the Y
coordinate with the value -V and moving towards the Y coordinate with the
value +V.
K Infeed in X direction (incremental)
The infeed takes place incrementally starting from the X coordinate of the
starting point of the machining cycle. The interpretation of the infeed value K
as a radius or as a diameter depends on the current machine configuration.
In the MTS standard configuration the radius programming is in general used
for all machining planes with driven tools.
If the absolute value is located between 2K and K the control makes the
infeed twice. Half of the remaining infeed value is used as an infeed value for
each run.
Optional Addresses I Infeed in Z direction (infeed entry as a percentage of the milling tool
diameter)
The infeed in Z direction depends on the tool used for processing the cycle.
If I has not been programmed then the control carries out the infeed with a
value corresponding 75% of the width (diameter) of the current milling tool
as a standard. Values which are larger than or identical with 100% are not
acceptable for I.
The sign of the address I specifies whether the machining is carried out
synchron or as conventional milling:
I+ = synchron machining (standard)
I- = conventional machining

262 Programmer's Guide for CNC Turning, Version 6.7


Face Milling Cycle Free-definable Plane: G16

O Absolute or incremental entry of the Z coordinate of the end point W of


the face milling area
O70 Z coordinate of the end point W absolute (standard)
O71 Z coordinate of the end point W incremental
O Optimizing the travel paths when processing cycles
O10 not optimized machining (standard)
O11 optimized machining in Y direction

If 011 is programmed the tool moves in Y from -Ymin to +Ymin, whereby Y min is
the smallest value calculated for the current infeed to generate the
programmed face milling area. In this case the programming of the address
V has no relevance.

NC addresses for
the programming of
a face milling cycle
G60 on free-
definable plane G16

Starting point of the plane area. The Z coordinate is defined in the multiple
cycle or by the current tool position.
End point of the face milling area (X, W)

© MTS GmbH 1998 263


Free-definable Plane: G61 Drilling Cycle

13.7.2 Drilling Cycle G61


Function With the machining cycle G61 the machining of a drilling is programmed.
Machining is carried out either as one or as multiple infeed. The infeed can be
interrupted for chip breaking and chip cleaning. After each infeed the tool returns
to the outer edge of the drilling hole. After a drilling hole has been completed the
tool returns to the clearance plane. In addition to G61 a multiple cycle has to be
programmed, for instance G67 (cycle on a circle). By programming the multiple
cycle the most recently defined machining cycle is carried out.

NC command G61 X... [K...] [D...] [A...] [B...] [W...]

F
Addresses
When programming the addresses of the machining cycle the coordinate values
refer to the coordinate system XG16YG16ZG16 of the free-definable plane G16.

X X coordinate (absolute) of the end point of the drilling (depth)

Optional K Infeed in X direction (incremental)


addresses
The infeed takes place incrementally starting from the X coordinate of the
starting point of the machining cycle. The interpretation of the infeed K as
either a radius or a diameter depends on the current machine configuration.
The MTS standard configuration uses in general the radius programming for
all machining planes with driven tools.
D Decrease of infeed
In the address D it is possible to program a decrease of the infeed K per
machining run. This means that the value of the infeed K per machining run
in reduced by the value D. The interpretation of the value reduction of D as
either a radius or a diameter depends on the current machine configuration.
The MTS standard configuration uses in general the radius programming for
all machining planes with driven tools. The reduction of the infeed value K
takes place at maximum up to the value equal to D (K=D).
If no decrease value has been programmed then D=0 is valid. The tool drills
in this case in each machining run up to the programmed depth X.
A Dwell time for chip breaking (value as rotations of the tool)
In the address A it is possible to program the dwell time for chip breaking.
Having withdrawn to the clearance plane the tool carries out the programmed
number of rotations and then breaks the chip. After that the next infeed is
made.
B Dwell time for chip cleaning (value as rotations of the tool)
In the address B it is possible to program the dwell time for chip cleaning.
The tool carries out the programmed number of rotations at the bottom of the
drilled shaft and then removes the chips. Subsequently, the tool is withdrawn
to the clearance level and the next infeed starts.
W The distance between the clearance and withdrawal plane of the
machining cycle (incremental, diameter value)
In the address W it is possible to program the distance in X between the
withdrawal and clearance plane of the machining cycle. The X coordinate of
the withdrawal plane is defined by the starting point of the cycle.
If the address W has been programmed the control then feeds in the tool in
rapid travel movement by the value of W when calling the machining cycle.
Subsequently, the machining is carried out with the programmed infeed
value.

264 Programmer's Guide for CNC Turning, Version 6.7


Thread Tapping Free-definable Plane: G62

13.7.3 Thread Tapping G62


Function With the machining cycle G62 it is possible to program a thread tapping cycle. The
rotation direction of the thread tapping drill can be programmed for the infeed.
When calling the machining cycle the infeed is then made with spindle rotations
either to the right or to the left, with the stored number of rotations and infeed
speed, and with the specified threading depth. After the cycle run the rotation
direction is automatically changed and the tool returns to the clearance plane in
specified infeed speed. If the withdrawal plane has been specified as well, then the
tool returns in rapid speed to the withdrawal plane. At the end of the cycle the
rotation direction of the spindle is changed again and vice versa. In addition to G62
it is necessary to program the multiple cycle as well, for instance G67 (cycle on a
circle). By programming the multiple cycle the most recently specified machining
cycle is carried out.

NC command G62 X... [M...] [W...] [F...]

Addresses X Threading depth (absolute)

Optional M Rotation direction of the tool during infeed


addresses
When withdrawing the tool the rotation direction is automatically changed.
W Distance between the clearance and withdrawal plane of the machining
cycle (incremental)
In the address W the distance in X between the withdrawal and clearance
plane of the machining cycle can be programmed. The X coordinate of the
withdrawal plane is defined by the starting point of the cycle.
If the address W has been programmed the control then feeds in the tool in
rapid speed movement by the value of W when calling the machining cycle.
Subsequently, the machining is carried out with the programmed infeed
value.
F Threading pitch

© MTS GmbH 1998 265


Free-definable Plane: G63 Reaming/Boring

13.7.4 Reaming/Boring G63


Function The command G63 specifies a machining cycle for reaming a drilling hole. Prior to
calling G63 the rotation direction of the spindle has to be programmed to
correspond to the applied reamer. When calling the cycle the infeed is made in the
specified rotation direction either to the right or to the left, with the specified
number of rotations and infeed speed up to the reaming depth as specified. After
that the rotation direction of the spindle is automatically changed and the tool
returns in the specified infeed speed to the clearance plane. If the withdrawal plane
has been specified as well the tool returns in rapid speed to the withdrawal plane.
At the end of the cycle the rotation direction is changed again. In addition to G63, it
is necessary to program the multiple cycle as well, for instance G68 (cycle on a
radius). By programming the multiple cycle the most recently specified machining
cycle is carried out.

NC command G63 X... [W...]

Addresses X Depth (absolute)

Optional W Distance between the clearance and withdrawal plane of the


addresses machining cycle (incremental)
In the address W it is possible to program the distance X between the
withdrawal and clearance plane of the machining cycle. The X coordinate of
the withdrawal plane is defined by the starting point of the cycle.
If the address W has been programmed the control first feeds in the tool in
rapid speed by the value W when calling the machining cycle. Then the
machining is carried out with the programmed infeed value.

266 Programmer's Guide for CNC Turning, Version 6.7


Square Pocket/Groove Free-definable Plane: G64

13.7.5 Square Pocket/Groove G64


Function With the command G64 it is possible to program a machining cycle for the
machining of a square pocket or a groove. The cycle call point (pocket center
point) of the square pocket/groove is programmed in the corresponding multiple
cycle, for instance G69 (cycle at a point). The tool goes to the cycle call point in
rapid speed and starts then the machining of the square pocket/groove with the
stored technology values. The travel paths of the tool for cycle processing can be
influenced by the sign when programming the infeed K. After processing the
machining cycle G64 the tool is positioned at the cycle call point again. If the
withdrawal plane has been programmed as well the tool then returns to the
withdrawal plane in rapid speed.

NC command G64 X... V... D... [K...] [I...] [A...] [B...] [W...]

Addresses X Depth of the square pocket/groove (absolute)


V Dimension of the square pocket in Y
W Dimension of the square pocket in Z

Optional K Infeed in X (incremental from cycle call onwards)


addresses
K+ On each infeed plane the square pocket is milled starting from the
center of the square pocket.
K-... With a negative infeed value a groove is first milled to mark the outer
line, then the rest the square pocket is milled in its full depth in one
machining run.
I Infeed in the YG16 ZG16 plane in percentage of the milling tool diameter
If I has not been programmed the standard value I=75% is valid.
An applicable value range for I is 10%<I<85%. The resulting path
undercutting is 100%-I.
A Rotation angle of the square pocket/groove in the cycle call point with
reference to the negative ZG16 axis
Positive values for A rotate the square pocket/groove counterclockwise.
Negative rotation angle values induce a clockwise rotation.
B Rounding radius of the corners of the square pocket
The programmed value of B has to be larger than or equal to the radius of
the applied milling tool.
W Distance between the clearance and withdrawal plane of the machining
cycle (incremental, diameter value)
In the address W the distance in X between the withdrawal and clearance
plane of the machining cycle can be programmed. The X coordinate of the
withdrawal plane is defined by the starting point of the cycle.
If the address W is programmed the control then feeds in the tool in rapid
speed by the value W when calling the machining cycle. Subsequently, the
machining is carried out with the programmed infeed value.

© MTS GmbH 1998 267


Free-definable Plane: G65 Circular Pocket

13.7.6 Circular Pocket G65


Function Using the command G65 a machining cycle can be programmed for the machining
of a circular pocket. The cycle call point (pocket center point) of the circular pocket
is programmed in the corresponding multiple cycle, for instance G69 (cycle at a
point). The tool goes to the cycle call point in rapid speed and starts the machining
of the circular pocket with the programmed technology values. The tool travel
paths for cycle processing can be influenced by the programmed sign of the infeed
K. After the machining cycle has been processed G65 the tool is positioned at the
cycle call point again. If the withdrawal plane was programmed as well the tool
then returns to the withdrawal plane in rapid speed.

NC command G65 X... B... K... [I...] [W...]

Addresses X Depth of the circular pocket (absolute)


B Radius of the circular pocket
K Infeed in X
K+... The tool moves in concentric circular paths when milling the pocket.
K-... The tool moves in spiral paths when milling the pocket.

Optional I Infeed in YG16 ZG16 plane in percentage of the milling tool diameter
Addresses
If I has not been programmed the standard value I=75% is valid. An
applicable value range for I is 10%<I<85%. The resulting path undercutting
is 100%-I.
W Distance between the clearance and withdrawal plane of the machining
cycle (incremental)
In the address W it is possible to program the distance X between the
withdrawal and the clearance plane of the machining cycle. The X coordinate
of the withdrawal plane is defined by the starting point of the cycle.
If the address W has been programmed the first infeed of the tool is made in
rapid speed by the value W when calling the machining cycle. Then the
machining is carried out with the programmed infeed value.

268 Programmer's Guide for CNC Turning, Version 6.7


Tapping Free-definable Plane: G66

13.7.7 Tapping G66


Function Using the command G66 a machining cycle can be programmed for the machining
of a tapping. The cycle call point (tapping center point) is programmed in the
corresponding multiple cycle, for instance G69 (cycle at a point). The tool goes to
the cycle call point in rapid speed and starts machining the tapping with the
programmed technology values. After processing the machining cycle G66 the tool
returns to the cycle call point again. If the withdrawal plane was programmed as
well, the tool returns to it in rapid speed.

NC command G66 X... D... B... K... [I...] [W...]

Addresses X Depth of the circular pocket (absolute)


D Radius of the circular pocket
B Tapping radius
K Infeed in X

Optional I Infeed in YG16 ZG16 plane in percentage of the milling tool diameter
addresses
If I has not been programmed the standard value I=75% is valid. A
reasonable range for I is 10%<I<85%. The resulting path undercutting is
100%-I.
W Distance between the clearance and withdrawal plane of the machining
cycle (incremental)
In the address W it is possible to program the distance X between the
withdrawal and the clearance plane of the machining cycle. The X coordinate
of the withdrawal plane is defined by the starting point of the cycle.
If the address W has been programmed the first infeed of the tool is made in
rapid speed movement by the value W when calling the machining cycle.
Then the machining is carried out with the programmed infeed value.

© MTS GmbH 1998 269


Free-definable Plane: G67 Cycle on a Circle

13.8 Multiple Cycles in the Free-definable Plane G16

13.8.1 Cycle on a Circle G67


Function Using the multiple cycle G67 the most recently programmed machining cycle can
be repeated on a circle. Hereby the individual cycle runs are located equally far
from each other on a circle. The coordinates of the circle center point can be
programmed with the command G67. In other respects, the control uses the
current tool position as a circle center point for the multiple cycle G67.

NC command G67 R... J... H... E... S... [Z...] [Y...]

Addresses R Radius of the circle


J Starting angle to the positive YG16 axis when the cycle is carried out for
the first time
H Angle increment between the individual cycle runs
E End angle to the positive Y axis when the cycle is carried out for the
last time
S Number of cycle runs on a circle

Optional Z, Y Coordinates of the center of the circle


addresses
For coordinates which have not been programmed the value of the current
tool position is used for the definition of the center of the circle .

Programming Beside R, three of the four addresses J, H, E, S have to be programmed.


hints

270 Programmer's Guide for CNC Turning, Version 6.7


Cycle on a Radius Free-definable Plane: G68

13.8.2 Cycle on a Radius G68


Function Using the multiple cycle G68 the most recently programmed machining cycle can
be repeated several times on a radius. Hereby the individual cycle runs are all
located at the same distance from each other on a radius. The coordinates of the
starting point of the radius can be programmed with the command G68. In other
respects, the control uses the current tool position for the cycle call as a starting
point of the radius for the multiple cycle G68.

NC command G68 J... H... E... S... R... [Z...] [Y...]

Addresses J Angle of the radius to the positive YG16 axis


H Y components of the distance of the cycle runs on the radius
The sign of H defines the direction of the radius in reference to the YG16 axis.
E Z components of the distance of the cycle runs on the radius
The sign of E defines the direction of the radius in reference to the ZG16 axis.
S Number of cycle runs
R Distance between two cycle runs on the radius

Optional Z, Y Coordinates of the starting point of the radius and the first cycle call
Addresses point
For coordinates which have not been programmed the value of the current
tool position is used for the definition of the center of the circle.

Programming Beside S, two of the four addresses J, H, E or R have to be programmed.


hints

© MTS GmbH 1998 271


Free-definable Plane: G69 Cycle at a Point

13.8.3 Cycle at a Point G69


Function Using the command G69 the CNC control is instructed to run the most recently
programmed machining cycle only once at one point. The location of the point can
be specified by programming its coordinates in the current coordinate system. If
the command G69 is used to program a point, the control goes to this point with
linear interpolation in all axes in rapid speed. After that the most recently
programmed machining cycle is run.

NC command G69 [X...] [Z...] [Y...]

Optional X, Z, Y Coordinates of the point on which the cycle is to be carried out


addresses
For coordinates which have not been programmed the corresponding
value of the current tool position is used.

Programming If the processing of a machining cycle G60 is programmed with the command
hints G69, then only the coordinates X and Y will be interpreted. The coordinate Y
results from the face milling cycle G60.

For the machining cycles G61, G62, G63, G64, G65 and G66 all the three
coordinates X, Z and Y can be programmed.

272 Programmer's Guide for CNC Turning, Version 6.7


Front Frace G17

13.9 Front Face G17


The selection of this plane allows the machining of the X, Y plane of the X, Y, Z
coordinate system. For the programming of this plane the Cartesian coordinates X,
Y or the polar coordinates X, C can be used.

F
Location and
On plane G17, tool movements which have been programmed in Cartesian
coordinates X, Y are converted into movements of the X and C axis.

direction of the NC
axis X, Z, Y and C of
front face milling
G17

Programming front face machining in Programming front face machining in polar


Cartesian coordinates coordinates

Plane selection in NC program:

NC command G17
Programming When using the Cartesian coordinates X, Y the G commands G00, G01, G02,
hints G03, G71, G72 and G73 can be applied as usual. The value of the coordinate X is
then programmed as a diameter value.

When programming in polar coordinates X, C the following has to be considered:


the programming origin in polar coordinates is always located at X=0 and Y=0, i.e.
exactly at the rotation center of the work part.
The programmed coordinates are self-retaining. This means that if only one of the
coordinates is given in an NC command the missing coordinate retains the value
last programmed for it.

© MTS GmbH 1998 273


Front Face: G10 Rapid Speed Movement in Polar Coordinates

13.9.1 Rapid Speed Movement in Polar Coordinates G10


Function The command G10 makes the tool to go on a straight line to the programmed
target point in rapid speed. The target point of the movement is programmed in
polar coordinates.

NC command G10 X... C...

Addresses X The diameter of the target point of the path movement


The current machine configuration specifies whether the value of the
coordinate X is interpreted as a radius or as a diameter. The MTS standard
configurations use in general radius programming for all machining planes
with driven tools.
C Rotation angle of the target point in the origin of coordinates (absolute)

Programming The NC command G10 is not self-retaining.


hints

274 Programmer's Guide for CNC Turning, Version 6.7


Linear Interpolation in Polar Coordinates Front Face: G11

13.9.2 Linear Interpolation in Polar Coordinates G11


Function With the command G11 the tool goes to the programmed target point with infeed
on a straight line. The target point of the movement is programmed as polar
coordinates.

NC command G11 X... C...

Addresses X Diameter of the target point of the path movement


The current machine configuration specifies whether the value of the
coordinate X is interpreted as a radius or a diameter. The MTS standard
configurations use in general the radius programming for all machining
planes with driven tool.
C Rotation angle of the target point in the origin of the coordinates
(absolute)

Programming The NC command G11 is not self-retaining.


hints

© MTS GmbH 1998 275


Front Face: G12 Circle Interpolation in Polar Coordinates Clockwise

13.9.3 Circle Interpolation in Polar Coordinates Clockwise G12


Function With the command G12 the tool moves clockwise in infeed on an arc towards the
programmed target point. The starting point of the travel movement is the current
tool position. The target point of the travel movement and the center point of the
circular arc are to be programmed.

NC command G12 X... C... I... J... [O...]

Addresses X Diameter of the target point of the path movement (absolute)


The current machine configuration specifies whether the value of the
coordinate X is interpreted as a radius or as a diameter. The MTS standard
configurations use in general radius programming for all planes with driven
tools.
C Rotation angle of the target point in the coordinate origin (absolute)
I Diameter of the circle center (incremental from starting point)
J Rotation angle of the circle center in the coordinate origin (incremental
from starting point)

Optional O Interpretation of the addresses I, J and C


addresses
O70 Polar coordinates (absolute) of the circle center (I, J)
O71 C coordinate of the target point incremental to the starting point

F Please note that the address O can be programmed twice within the NC
command G12, and in each case with a different value.

Programming The NC command G12 is not self-retaining.


hints

276 Programmer's Guide for CNC Turning, Version 6.7


Circle Interpolation in Polar Coordinates Counterclockwise Front Face: G13

13.9.4 Circle Interpolation in Polar Coordinates Counterclockwise


G13
Function With the command G13 the tools moves counterclockwise by infeed on a circular
path to the programmed target point. The starting point of the travel movement is
the current tool position. The target point of the travel movement and the center
point of the circular path are to be programmed.

NC command G13 X... C... I... J... [O...]

Addresses X Diameter of the target point of the path movement (absolute)


The current machine configuration specifies whether the value of the
coordinate X is interpreted as a radius or a diameter. The MTS standard
configurations use in general the radius programming for all machining
planes with driven tools.
C Rotation angle of the target point in the origin of the coordinates
(absolute)
I Diameter of the circle center (incremental from starting point)
J Rotation angle of the circle center in the origin of the coordinates
(incremental from starting point)

Optional O Interpretation of the addresses I, J and C


addresses
O70 Polar coordinates (absolute) of the circle center (I, J)
O71 C coordinate of the target point incremental to the starting point

F Please note that the address O can be programmed twice within the NC
command G12, and in each case with a different value.

Programming The NC command G13 is not self-retaining.


hints

© MTS GmbH 1998 277


Front Face: G61 Drilling Cycle

13.10 Machining Cycles in the Front Face G17

13.10.1 Drilling Cycle G61


Function With the machining cycle G61 a drilling process is programmed. Machining is
carried out as a single or multiple infeed. The infeed can be interrupted for chip
breaking and chip cleaning. After each infeed the tool is withdrawn to the outer
edge of the drilling hole. After completion of the drilling hole the tool returns to the
withdrawal plane. In addition to G61 a multiple cycle needs to be programmed, for
instance G67 (cycle on a circle). By programming the multiple cycle the most
recently specified machining cycle is being carried out.

NC command G61 Z... [K...] [D...] [A...] [B...] [W...]

Addresses Z Z coordinate (absolute) of the end point of the drilling (depth)

Optional K Infeed in Z direction (incremental)


addresses
The infeed is carried out incrementally starting from the Z coordinate of the
starting point of the machining cycle.
D Degression of cutting depth
In the address D it is possible to program the decrease of the infeed K per
machining run. This means that the infeed K is reduced by the value D after
each machining run. The infeed K can be reduced up to the value equal to D
(K=D) at maximum.
If no infeed value reduction has been programmed, then D=0. In this case
the tool machines in one machining run up to the programmed depth Z.
A Dwell time for chip breaking (as number of rotations of the tool)
In the address A it is possible to program a dwell time for chip breaking. The
tool makes the programmed number of rotations after withdrawal to the
clearance plane for chip breaking. After that the next infeed is made.
B Dwell time for chip breaking (as number of rotations of the tool)
In the address B it is possible to program a dwell time for chip breaking. The
tool carries out the programmed number of rotations in the drilled hole to
clean it. After this the tool is first withdrawn to the clearance plane to then
perform the next infeed.
W Distance of the clearance plane of the machining cycle (incremental)
In the address W it is possible to program the distance Z between the
withdrawal and clearance plane of the machining cycle. The starting point of
the cycle defines the Z coordinate of the withdrawal plane.
If the address W has been programmed the first infeed of the tool is made in
rapid speed movement by the value W when calling the machining cycle.
Then the machining is carried out with the programmed infeed value.

278 Programmer's Guide for CNC Turning, Version 6.7


Thread Cutting Front Face: G62

13.10.2 Thread Cutting G62


Function With G62 it is possible to program a thread cutting cycle. The rotation direction of
the tread tapping drill can be programmed for the infeed. When calling the
machining cycle the infeed is then made with the programmed right or left rotation
of the spindle, entered number of rotations and infeed speed up to the
programmed threading depth. After that, the rotation direction of the spindle is
automatically changed and the tool returns in infeed speed to the clearance plane.
If withdrawal plane has been programmed as well, the tool then returns in rapid
speed to the withdrawal plane. At the end of the cycle the rotation direction of the
spindle is changed again. In addition to G62 it is necessary to program a multiple
cycle as well, for instance G67 (cycle on a circle). With the programming of the
multiple cycle the most recently defined machining cycle is carried out.

NC command G62 Z... [M...] [W...] [F...]

Addresses Z Threading depth (absolute)

Optional M Rotation direction of the tool during infeed


addresses
When withdrawing the tool the rotation direction is automatically changed.
W Distance between the clearance and withdrawal plane of the machining
cycle (incremental)
In the address W the distance in X between the withdrawal and clearance
plane of the machining cycle can be programmed. The X coordinate of the
withdrawal plane is defined by the starting point of the cycle.
If the address W is programmed the control then feeds in the tool in rapid
travel movement by the value of W when calling the machining cycle.
Subsequently, the machining is carried out with the programmed infeed
value.
F Threading pitch

© MTS GmbH 1998 279


Front Face: G63 Reaming/Boring

13.10.3 Reaming/Boring G63


Function The command G63 specifies a machining cycle for reaming a drilling hole. Prior to
calling G63 the rotation direction of the spindle has to be programmed in
accordance to the reamer applied. When calling the machining cycle the infeed is
made with the programmed right or left rotation of the spindle, entered number of
rotations and infeed speed up to the programmed depth. At the end of the cycle
the rotation direction of the spindle is automatically changed and the tool returns in
infeed speed back to the clearance plane. If the withdrawal plane has been
programmed as well the tool then returns in rapid speed to the withdrawal plane.
At the end of the cycle the rotation direction of the tool is changed again. In
addition to G63 a multiple cycle needs to be programmed as well, for instance G68
(cycle on a radius). By programming the multiple cycle the most recently specified
machining cycle is carried out.

NC command G63 Z... [W...]

Address Z Depth (absolute coordinates)

Optional W Distance between the clearance and withdrawal plane of the


addresses machining cycle (incremental)
In the address W the distance in X between the withdrawal and clearance
plane of the machining cycle can be programmed. The X coordinate of the
withdrawal plane is defined by the starting point of the cycle.
If the address W is programmed the control then feeds in the tool in rapid
speed by the value of W when calling the machining cycle. Subsequently,
the machining is carried out with the programmed infeed value.

280 Programmer's Guide for CNC Turning, Version 6.7


Square Pocket/Groove Front Face: G64

13.10.4 Square Pocket/Groove G64


Function With the command G64 a machining cycle for machining a square pocket/groove
can be programmed. The cycle call point (pocket center point) of the square
pocket/groove is programmed in the corresponding multiple cycle, for instance
G69 (cycle at a point).The tool goes to the cycle call point in rapid speed and starts
the machining of the square pocket/groove with the programmed technology
values. The travel paths of the tool can be influenced by the sign of the infeed
value K when programming it. After processing the machining cycle G64 the tool is
repositioned to the cycle call point. If the withdrawal plane has been programmed
as well, the tool then returns to the withdrawal plane in rapid speed.

NC command G64 Z... V... D... K... [I...] [A...] [B...] [W...]

Addresses Z Depth of the square pocket/groove (absolute)


V Dimension of the square pocket in X
D Dimension of the square pocket in Y

Optional K Infeed in Z (incremental starting from the cycle call)


addresses
K+ On each infeed plane the square pocket is milled starting from the
center point of the pocket.
K-... With a negative infeed value a groove marking the outline of the
pocket is milled first and then the square pocket in its full depth in one
machining run.
I Infeed in X, Y plane in percentage of the milling tool diameter
If I has not been programmed the standard value I=75% is valid. An
applicable value range for I is 10%<I<85%. The resulting path undercutting is
100%-I.
A Rotation angle of the square pocket/groove in the cycle call point with
reference to the positive X axis
B Rounding radius of the corners of the square pocket
The programmed value of B has to be larger than or equal to the radius of
the milling tool applied.
W Distance between the clearance and withdrawal plane of the machining
cycle (incremental)
In the address W the distance in X between the withdrawal and clearance
plane of the machining cycle can be programmed. The X coordinate of the
withdrawal plane is defined by the starting point of the cycle.
If the address W has been programmed the control then feeds in the tool in
rapid speed by the value of W when calling the machining cycle.
Subsequently, the machining is carried out with the programmed infeed
value.

© MTS GmbH 1998 281


Front Face: G65 Circular Pocket

13.10.5 Circular Pocket G65


Function The machining of a circular pocket can be programmed with the command G65.
The cycle call point (pocket center point) of the circular pocket is programmed in
the corresponding multiple cycle, for instance G69. The tool goes to the cycle call
point in rapid speed and starts the machining of the circular pocket with the
programmed technology values. For the processing of the cycle the travel path can
be influenced by the sign of the infeed K when programming it. After processing
the cycle G65 the tool returns to the cycle call point. If the withdrawal point has
been programmed as well the tool then returns to the withdrawal point in rapid
speed.

NC command G65 Z... B... K... [I...] [W...]

Addresses Z Depth of the circular pocket (absolute)


B Radius of the circular pocket
K Infeed in Z
K+... The tool moves in concentric circles when milling circular
pockets.
K-... The tool moves in spiral circles when milling circular pockets.

Optional I Infeed in the X, Y plane in percentage of the milling tool diameter


addresses
If I has not been programmed the standard value I=75% is valid. An
applicable value range for I is 10%<I<85%. The resulting path undercutting
is 100%-I.
W Distance between the clearance and withdrawal plane of the machining
cycle (incremental)
In the address W it is possible to program the distance Z between the
withdrawal and clearance plane of the machining cycle. The starting point of
the cycle defines the Z coordinate of the withdrawal plane.
If the address W has been programmed the first infeed of the tool is made in
rapid speed movement by the value W when calling the machining cycle.
Then the machining is carried out with the programmed infeed value.

282 Programmer's Guide for CNC Turning, Version 6.7


Tapping Front Face: G66

13.10.6 Tapping G66


Function The machining of a tapping can be programmed as a machining cycle with the
command G66. The cycle call point (tapping center point) is programmed in the
corresponding multiple cycle, for instance G69 (cycle at a point). The tool goes to
the cycle call point in rapid speed and starts the machining of the tapping with the
programmed technology values. Having processed the machining cycle G66 the
tool returns to the cycle call point. If withdrawal plane has been programmed as
well, the tool then returns in rapid speed to the withdrawal plane.

NC command G66 Z... D... B... W... K... [I...] [W...]

Addresses Z Depth of the circular pocket (absolute)


D Radius of the circular pocket
B Tapping radius
K Infeed in Z

Optional I Infeed in the X, Y plane in percentage of the milling tool diameter


addresses
If I has not been programmed the standard value I=75% is valid. An
applicable value range for I is 10%<I<85%. The resulting path undercutting
is 100%-I.
W Distance between the clearance and withdrawal plane of the machining
cycle (incremental)
In the address W it is possible to program the distance Z between the
withdrawal and clearance plane of the machining cycle. The starting point of
the cycle defines the Z coordinate of the withdrawal plane.
If the address W has been programmed the first infeed of the tool is made in
rapid speed by the value W when calling the machining cycle. Then the
machining is carried out with the programmed infeed value.

© MTS GmbH 1998 283


Front Face: G67 Cycle on a Circle

13.11 Multiple Cycles in the Front Face G17

13.11.1 Cycle on a Circle G67


Function With the multiple cycle G67 the most recently programmed machining cycle can
be run several times on a circle. Hereby the individual cycle runs all have the same
distance from each other on this circle. The coordinates of the circle center point
can be programmed with the command G67. Otherwise, the control uses the
current tool position at the time of the cycle call as the circle center point for the
multiple cycle G67.

NC command G67 R... J... H... E... S... [X...] [Y.../C...]

Addresses R Radius of the circle


J Starting angle to the positive X axis when running the cycle on the
circle for the first time
H Angle increment between the individual runs of the cycle
E End angle to the positive X axis applied for the final run of the cycle on
the circle
S Number of the cycle runs on a circle

Optional X, Y/C Coordinates of the circle center point


addresses
The circle center point can be programmed either in Cartesian (X, Y) or
polar coordinates (X, C).
When processing the cycle a Y coordinate programmed in Cartesian
coordinates is converted into the corresponding rotation of the rotation
axis C.
For coordinates which have not been programmed the corresponding
value of the current tool position is used for the definition of the circle
center point.

Programming Beside R, three of the four addresses J, H, E, S have to be programmed.


hints

284 Programmer's Guide for CNC Turning, Version 6.7


Cycle on a Radius Front Face: G68

13.11.2 Cycle on a Radius G68


Function The most recently programmed machining cycle can be run several times on a
radius with the multiple cycle G68. The individual cycle runs are located at a
constant distance from each other on the radius. The coordinates of the starting
point of the radius can be programmed with the command G68. Otherwise, the
control takes the current tool position at the time of the cycle call as the starting
point of the radius for the multiple cycle G68.

NC command G68 J... H... E... S... R...[X...] [Y.../C...]

Addresses J Angle between straight lines and the positive X axis


H X components of the pitch of the individual cycle calls on the radius
E Y components of the pitch of the individual cycle calls on the radius
If the coordinate Y is used to program the starting point of the straight lines
the value of the address E is also interpreted as the value of Y.
If, on the other hand, C is used to program the starting point, then E indicates
the rotation angle of the C axis.
S Number of cycle runs
R Distance between two cycle runs (pitch) on the radius

Optional X,Y/C Coordinates of the starting point of the radius and of the 1st cycle
addresses call point.
The starting point can be programmed either in Cartesian
(X, Y) or in polar coordinates (X, C).
When processing a cycle, a Y coordinate which has been programmed in
Cartesian coordinates is converted into a corresponding rotation of the
rotation axis in C.
For coordinates which have not been programmed the corresponding
value of the current tool position is used for the definition of the starting
point.

Programming Beside S, two of the four addresses J, H, E or R have to be programmed.


hints

© MTS GmbH 1998 285


Front Face: G69 Cycle at a Point

13.11.3 Cycle at a Point G69


Function The command G69 instructs the CNC control to run the most recently
programmed machining cycle only once at one point. The location of this point can
be specified by programming the coordinates in the current coordinate system. If a
point has been programmed with the command G69, the control goes in all axes to
this point with linear interpolation in rapid speed. Subsequently, the most recently
programmed machining cycle is run.

NC command G69 [X...] [Y.../C...]


Optional X, Y/C Coordinates of the point at which the cycle is to be run
addresses
For coordinates which have not been programmed the corresponding
value of the tool position is used.

286 Programmer's Guide for CNC Turning, Version 6.7


Shell Surface G18

13.12 Shell Surface - G18


By selecting this plane it is possible to machine on the plane Y, Z. The infeed is
made in X.

To program on this plane either the Cartesian coordinates Y, Z of the rolled out
shell surface of the diameter X or the cylindrical coordinates Z, C can be used.

F On the plane G18 machining processes programmed in Cartesian coordinates Y,


Z are being transformed into movements of the Z and C axis. The Y axis of the
machine is not used here. During machining the tool is always positioned in the
rotation center (Y=0).

Rolling out a shell


surface

Cartesian
coordinates of a
point on a shell
surface G18

Location of a point
on a shell surface
G18 in cylinder
coordinates

© MTS GmbH 1998 287


G18 Shell Surface

Selection alternative 1 for a shell surface in an NC program:

NC command G18 X...


Address X Cylinder diameter (reference diameter for rolling out the shell surface)

Selection alternative 2 for a shell surface in an NC program:

NC command G18 B...


Address B Cylinder radius (reference radius for rolling out the shell surface)

Programming When using the Cartesian coordinates Y, Z the G commands G00, G01, G02,
hints G03, G71, G72 and G73 can be used as usual.

F Please, consider the following hints regarding the G commands when


programming the cylinder coordinates Z, C.

288 Programmer's Guide for CNC Turning, Version 6.7


Rapid Speed Movement in Cylinder Coordinates Shell Surface: G10

13.12.1 Rapid Speed Movement in Cylinder Coordinates G10


Function With the command G10 the tool moves in rapid speed to the programmed target
point on a straight line. The target point of the movement is programmed in polar
coordinates.

NC command G10 Z... C...

Addresses Z Z coordinate of the target point of the travel path


C Rotation angle of the target point of the travel path (absolute)

Programming The NC command G10 is not self-retaining.


hints

© MTS GmbH 1998 289


Shell Surface: G11 Interpolation of Straight Lines in Cylinder Coordinates

13.12.2 Interpolation of Straight Lines in Cylinder Coordinates G11


Function With the command G11 the tool moves in infeed to the programmed target point
on a straight line. The target point of the movement is programmed in polar
coordinates.

NC command G11 Z... C...

Addresses Z Z coordinate of the target point of the travel path


C Rotation angle of the target point of the travel path

Programming The NC command G11 is not self-retaining.


hints

290 Programmer's Guide for CNC Turning, Version 6.7


Circle Interpolation in Cylinder Coordinates Clockwise Shell Surface: G12

13.12.3 Circle Interpolation in Cylinder Coordinates Clockwise G12


Function With the command G12 the tool moves clockwise in infeed to a programmed
target point on a circular path. The starting point of the infeed is the current tool
position. The target point of the travel path and the center point of the circular path
are to be programmed.

NC command G12 Z... C... K... J... [O...]

Addresses Z Z coordinate of the target point of the travel path (absolute)


C Rotation angle of the target point of the travel path (absolute)
K Z coordinate of the circle center point (incremental from starting point)
J Rotation angle of the circle center point in the coordinate origin
(incremental from starting point)
Optional O Control address for the interpretation of the addresses K, J and C
addresses
O70 Polar coordinates (absolute) of the circle center point (K, J)
O71 C coordinate of the target point incremental with reference to the
starting point

F Please, note that the address O within the NC command G12 can be
programmed twice, and in each case with different values.

Programming The NC command G12 is not self-retaining.


hints

© MTS GmbH 1998 291


Shell Surface: G13 Circle Interpolation in Polar Coordinates Counterclockwise

13.12.4 Circle Interpolation in Polar Coordinates Counterclockwise


G13
Function With the command G13 the tool moves counterclockwise as infeed to the
programmed target point on a circular path. The starting point of the travel
movement is the current tool position. The target point of the travel movement and
the center point of the circular path need to be programmed.

NC command G13 Z... C... K... J... [O...]

Addresses Z Z coordinate of the target point of the travel path (absolute)


C Rotation angle of the target point of the travel path (absolute)
K Z coordinate of the target center point (incremental from starting point)
J Rotation angle of the circle center point in the coordinate origin
(incremental from starting point)

Optional O Control address for the interpolation of the addresses K, J and C


addresses
O70 Polar coordinates (absolute) of the circle center point (K, J)
O71 C coordinate of the target point incremental to the starting point

F Please, note that the address O within the NC command G12 can be
programmed twice, and in each case with different values.

Programming hints The NC command G13 is not self-retaining.

292 Programmer's Guide for CNC Turning, Version 6.7


Drilling cycle Shell Surface: G61

13.13 Machining Cycles in the Shell Surface G18

13.13.1 Drilling cycle G61


Function With the machining cycle G61 the machining of a drilling can be programmed. The
machining takes place either as a single infeed or a multiple infeed. The infeed
can be interrupted, if desired, for chip breaking and for chip cleaning. After each
infeed the tool returns to the outer edge of the drilling hole. After completion of the
drilling the tool returns to the withdrawal plane. In addition to G61 it is necessary to
program a multiple cycle as well, for instance G67 (cycle on a circle). By
programming the multiple cycle the most recently specified machining cycle is run.

NC command G61 X... [K...] [D...] [A...] [B...] [W... ]

Addresses X X coordinate (absolute) of the end point of the drilling (depth)

Optional K Infeed in X direction (incremental)


addresses
The infeed is carried out incrementally starting from the Y, X coordinate of
the starting point of the machining cycle. The current machine configuration
specifies whether the infeed value K is interpreted as a radius or a diameter.
The MTS standard configurations use in general radius programming for all
planes with driven tools.
D Degression of cutting depth
In the address D it is possible to program the decrease per machining run of
the infeed K. This means that K is reduced by the value D per each
machining run. The current machine configuration specifies whether the
value of the decrease D is interpreted as a radius or a diameter. MTS
standard configurations use in general radius programming for all planes with
driven tools. The decrease of the infeed K is carried out at maximum until its
value is identical with the value D (K=D).
If no decrease has been programmed, then D=0. The tool then drills up to
the programmed depth X in one machining run.
A Dwell time for chip breaking (entry as number of rotations of the tool)
In the address A it is possible to program the dwell time for chip breaking.
The tool makes the programmed number of rotations after the withdrawal to
the clearance plane in order to break the chip. After this the next infeed is
carried out.
B Dwell time for chip cleaning (entry as number of rotations of the tool)
In the address V it is possible to program the dwell time for chip cleaning.
The tool makes the programmed number of rotations at the drilling base in
order to clean the drilling hole from chips. After that the tool is withdrawn to
the clearance plane and the next infeed is carried out.
W Distance between the clearance plane and withdrawal plane of the
machining cycle (incremental)
In the address W it is possible to program the distance between the
withdrawal and clearance plane of the machining cycle. The X coordinate of
the withdrawal plane is defined by the starting point of the cycle.
If the address W has been programmed the control infeed value for the tool
is first W in rapid speed movement when calling the machining cycle. After
that machining is carried out with the programmed infeed.

© MTS GmbH 1998 293


Shell Surface: G62 Thread Cutting

13.13.2 Thread Cutting G62


Function With the machining cycle G62 a thread cutting cycle can be programmed. The
rotation direction of the thread cutting tool for the infeed can be programmed.
When calling the machining cycle the infeed is made either with right or left
rotation of the spindle, the entered number of rotations and infeed speed up to the
programmed threading depth. At the end, the rotation direction of the spindle is
automatically changed and the tool returns in infeed speed to the clearance plane.
If withdrawal plane has been programmed then the tool returns to the withdrawal
plane in rapid speed. At the end of the cycle the rotation direction of the spindle is
changed. In addition to G62 a multiple cycle needs to be programmed, for instance
G67 (cycle on a circle). With the programming of the multiple cycle the most
recently specified machining cycle is run.

NC command G62 X... [M...] [W...] [F...]

Addresses X Threading depth (absolute)

Optional M Rotation direction of the tool during infeed


addresses
When withdrawing the tool the rotation direction is automatically changed.
W Distance between the clearance and withdrawal plane of the machining
cycle (incremental)
In the address W it is possible to program the distance between the
withdrawal and clearance plane of the machining cycle. The X coordinate of
the withdrawal plane is defined by the starting point of the cycle.
If the address W has been programmed the control infeed value for the tool
is first W in rapid speed movement when calling the machining cycle. After
that machining is carried out with the programmed infeed.
F Threading pitch

294 Programmer's Guide for CNC Turning, Version 6.7


Reaming/Boring Shell Surface: G63

13.13.3 Reaming/Boring G63


Function The command G63 specifies a machining cycle for reaming a drilling. Prior to the
call of G63 the rotation direction of the spindle has to be programmed in
accordance to the reamer applied. When calling the machining cycle the infeed is
made either with right or left rotation of the tool, the entered number of rotations
and infeed speed up to the programmed depth of the drilling. At the end, the
rotation direction of the tool is automatically changed and the tool returns to the
clearance plane in infeed speed. If the withdrawal plane has been programmed the
tool returns in rapid speed to the withdrawal plane. At the end of the cycle the
rotation direction of the spindle is changed again. In addition to G63 a multiple
cycle needs to be programmed, for instance G68 (cycle on a radius). By
programming the multiple cycle the most recently specified machining cycle is run.

NC command G63 X... [W...]

Address X Depth (absolute)

Optional W Distance between the clearance and withdrawal plane of the


addresses machining cycle (incremental)
In the address W it is possible to program the distance between the
withdrawal and clearance plane of the machining cycle. The X coordinate of
the withdrawal plane is defined by the starting point of the cycle.
If the address W has been programmed the control infeed value for the tool
is first W in rapid speed movement when calling the machining cycle. After
that machining is carried out with the programmed infeed.

© MTS GmbH 1998 295


Shell Surface: G64 Square Pocket/Groove

13.13.4 Square Pocket/Groove G64


Function With the command G64 the machining cycle is programmed for the machining of a
square pocket/groove. The cycle call point (pocket center point) of the square
pocket/groove is programmed with the corresponding multiple cycle, for instance
G69 (cycle at a point). The tool moves to the cycle call point in rapid speed and
starts the machining of the square pocket/groove with the programmed technology
values. The travel paths of the tool for the processing of the cycle can be
influenced by the sign of the infeed value K when programming it. Having
processed the machining cycle G64 the tool returns to the cycle call point. If
withdrawal plane has been programmed as well the tool then returns to the
withdrawal plane in rapid speed.

NC command G64 X... V... D... K... [I...] [A...] B...] [W...]

Addresses X Depth of the square pocket/groove (absolute)


V Dimension of the square pocket in Y
If the corresponding multiple cycle uses the coordinates Z and C, then V is
interpreted as a constant dimension specified.
D Dimension of the square pocket in Z
K Infeed in X (incremental starting from cycle call point)
K+ On each infeed plane the square pocket is machined starting from the
center of the pocket hole.
K-... If the infeed sign is negative the groove marking the final outline of the
pocket is milled first and then in one machining run the square pocket
in its full depth.
Optional I Infeed in Y, Z plane in percentage of the milling tool diameter
addresses
If I has not been programmed the standard value I=75% is valid. An
applicable value range for I is 10%<I<85%. The resulting path undercutting
is 100%-I.
A Rotation angle of the square pocket/groove in the cycle call point with
reference to the positive Y axis
B Rounding radius of the corners of the square pocket
The programmed value of B has to be larger than or identical with the radius
of the applied milling tool.
W Distance between the clearance and withdrawal plane of the machining
cycle (incremental)
In the address W it is possible to program the distance between the
withdrawal and clearance plane of the machining cycle. The X coordinate of
the withdrawal plane is defined by the starting point of the cycle.
If the address W has been programmed the control infeed value for the tool
is first W in rapid travel movement when calling the machining cycle. After
that machining is carried out with the programmed infeed.

296 Programmer's Guide for CNC Turning, Version 6.7


Circular Pocket Shell Surface: G65

13.13.5 Circular Pocket G65


Function With the command G65 the machining cycle for machining a circular pocket is
programmed. The cycle call point (pocket center point) of the circular pocket is
programmed with the corresponding multiple cycle, for instance G69 (cycle at a
point). The tool moves in rapid speed to the cycle call point and starts the
machining of the circular pocket with the programmed technology values. The
travel paths for the processing of the cycle can be influence by the sign of the
infeed value K when programming it. After completing the processing of the
machining cycle G65 the tool returns to the cycle call point. If withdrawal plane has
been programmed as well the tool then returns in rapid speed to the withdrawal
plane.

NC command G65 X... B... K... [I...] [W...]

Addresses X Depth of the circular pocket (absolute)


B Radius of the circular pocket
K Infeed in X
K+... The tool machines in concentric travel paths
K-... The tool machines in spiral travel paths

Optional I Infeed in Y, Z plane in percentage of the milling tool diameter


addresses
If I has not been programmed the standard value I=75% is valid. An
applicable value range for I is 10%<I<85%. The resulting path undercutting
is 100%-I.
W Distance between the clearance plane and withdrawal plane of the
machining cycle (incremental)
In the address W it is possible to program the distance between the
withdrawal and clearance plane of the machining cycle. The X coordinate of
the withdrawal plane is defined by the starting point of the cycle.
If the address W has been programmed the control infeed value for the tool
is first W in rapid speed when calling the machining cycle. After that
machining is carried out with the programmed infeed.

© MTS GmbH 1998 297


Shell Surface: G66 Tapping

13.13.6 Tapping G66


Function With the command G66 the machining cycle for tapping is programmed. The cycle
call point (tapping center point ) is programmed with the corresponding multiple
cycle, for instance G69 (cycle at a point). The tool goes to the cycle call point in
rapid speed and starts machining the tapping with the programmed technology
values. After processing the machining cycle G66 the tool returns to the cycle call
point. If the withdrawal plane has been programmed as well, the tool returns in
rapid speed to the withdrawal plane.

NC command G66 X... D... B... K... [I...] [W...]

Addresses X Depth of the circular pocket (absolute)


D Radius of the circular pocket
B Tapping radius
K Infeed in X

Optional I Infeed in Y, Z plane in percentage of the diameter of the milling tool


addresses
If I has not been programmed the standard value I=75% is valid. An
applicable value range for I is 10%<I<85%. The resulting path undercutting
is 100%-I.
W Distance between the clearance plane and withdrawal plane of the
machining cycle (incremental)
In the address W it is possible to program the distance between the
withdrawal and clearance plane of the machining cycle. The X coordinate of
the withdrawal plane is defined by the starting point of the cycle.
If the address W has been programmed the control infeed value for the tool
is first W in rapid speed movement when calling the machining cycle. After
that machining is carried out with the programmed infeed.

298 Programmer's Guide for CNC Turning, Version 6.7


Cycle on a Circle Shell Surface: G67

13.14 Multiple Cycles in the Shell Surface G18

13.14.1 Cycle on a Circle G67


Function With the multiple cycle G67 it is possible to repeat several times the most recently
programmed machining cycle on a circle. The pitch between the individual
machining runs on the circle remains constant. The coordinates of the circle center
point can be programmed with the command G67. If the coordinates of the circle
center point have not been programmed, the control uses the current tool position
for the cycle call as a circle center point for the multiple cycle G67.

NC command G67 R... J... H... E... S... [Z...] [Y.../C...]

Addresses R Radius of the circle


J Starting angle to the positive X axis when running the cycle on the
circle for the first time
H Angle element between cycle runs
E End angle to the positive Y axis when running the cycle on the circle
for the last time
S Number of cycle runs on the circle

Optional Z, Y/C Coordinates of the circle center point


addresses
The circle center point can be programmed in the Cartesian coordinates
(Z, Y) as well as in polar coordinates (Z, C) (Z, C).
When processing the cycle a Y coordinate programmed as a Cartesian
coordinate is converted into the rotation of the corresponding rotation
axis.
For the coordinates which have not been programmed the current tool
position is used for the definition of the position of the circle center point.

Programming Beside R, three of the following addresses J, H, E, S have to be programmed.


hints

© MTS GmbH 1998 299


Shell Surface: G68 Cycle on a Radius

13.14.2 Cycle on a Radius G68


Function With the multiple cycle G68 the most recently programmed machining cycle on a
radius can be run several times. The machining pitch between the cycle runs on
the radius remains constant. The coordinates of the origin of the radius can be
programmed with the command G68. If the origin has not been programmed, the
control takes the current tool position as the starting point of the radius for the
multiple cycle G68 when calling the cycle.

NC command G68 J... H... E... S... R... [Z...] [Y.../C...]

Addresses S Number of cycle runs


J Angle of the straight lines to the positive Y axis
H Distance of the cycle runs as a Y value or as rotation angle of the C
axis
If the coordinate Y is used for the programming of the starting point then the
value of the address H is also interpreted as a Y value.
On the other hand, if the coordinate C is used for the programming of the
starting point then H indicates the rotation angle of the C axis.
E Distance between the cycle runs in Z
The sign of the value E defines the direction of the radius in relation to the
Z axis.
R Distance between two cycle runs on the radius

Optional Z, Y/C Coordinates of the starting point of the radius and the 1st cycle call
addresses point
The starting point can be programmed in Cartesian coordinates (Z, Y)
and also in polar coordinates (Z, C).
When processing the cycle, the Y coordinate programmed in the
Cartesian system is converted into the corresponding rotation of the
rotation axis C.
For the coordinates which have not been programmed the corresponding
value of the current tool position is used for the definition of the starting
point.

Programming Beside S, two of the following four addresses J, H, E or R need to be programmed.


hints

300 Programmer's Guide for CNC Turning, Version 6.7


Cycle at a Point Shell Surface: G69

13.14.3 Cycle at a Point G69


Function The command G69 makes the CNC control to run the most recently programmed
machining cycle only once at a point. The location of the point can be specified by
programming the coordinates in the current coordinate system. If a point is
programmed with the command G69, then the control goes in rapid speed to this
point with linear interpolation in all axes. Subsequently, the most recently
programmed machining cycle is run.

NC command G69 [Z...] [Y.../C...]

Optional Z, Y/C Coordinate of the point to which the cycle is to be run


addresses
For the coordinates which have not been programmed the corresponding
value of the current tool position is used.

© MTS GmbH 1998 301


G19 Chord Surface

13.15 Chord Surface G19


Chord surfaces are used to program milling with vertically applied driven tools. The
milling tools are installed vertically when machining the selected chord surface in
vertical direction to the Y, Z plane of the coordinate system of the turning plane
G14.

Therefore, a chord surface can be seen as a special case of the free-definable


plane G16, whereby the rotation angle is A=0 and no new coordinate system is
entered for this plane.

Using chord surface does not necessarily require the availability of the B axis on the
CNC machine. However, for eccentric machining an additional Y axis is required.

The coordinate system of the turning plane G14 is valid also for machining on a
chord surface G19. When programming the Cartesian plane coordinates Y and Z
are used. The infeed is made in direction of the negative X axis.

Location and
direction of the NC
axes X, Z, Y and C
in the plane G19
chord surface

The coordinates of
a point on the plane
G19 chord surface

302 Programmer's Guide for CNC Turning, Version 6.7


Chord Surface G19

Selecting chord surface in an NC program:

NC command G19 C...

Address C Rotation angle of the rotation axis where the work part is positioned
when selecting the plane (fixed)

When switching on the CNC machine the controllable NC axes are referenced. The
reference point for the rotation angle 0° of the rotation axis C are located on the
positive X axis of the machine coordinate system. When clamping the raw part the
location of the value C=0° is specified in relation to the work part. Subsequently, it is
possible to make the exact positioning of the work part for machining with driven
tools by programming the address C.

© MTS GmbH 1998 303


Chord Surface: G60 Plane Milling Cycle

13.16 Machining Cycles in the Chord Surface G19

13.16.1 Plane Milling Cycle G60


Function With the machining cycle G60 the plane milling is programmed. A plane is a
surface parallel to the Y, Z plane whose location can be freely selected in X. The
cycle machines the programmed plane surface either in a single or in multiple
infeed. The travel paths of the milling tool can be optimized if desired. In addition to
G60 it is necessary to program a multiple cycle, for instance G69 (cycle at a point).
By programming a multiple cycle the machining cycle most recently programmed
is run.

NC command G60 W... X... V... K... [I...] [O...] [O...]

F When programming the addresses of the machining cycle the coordinate data
refers in the following to the coordinate system X, Y, Z of the turning plane G14.
The cycle requires the availability of a Y axis on a CNC machine.

Addresses W Z coordinate of the end point of the plane surface


The starting point of the plane surface is defined by the Z coordinate of the
multiple cycle programmed after it. If Z is not programmed in the multiple
cycle the value of the current tool position is used when calling a cycle.
X X coordinate (absolute) of the end point of the face surface
Unlike a CNC milling machine the coordinate entry for the infeed is
programmed with an absolute value in this cycle.
V Half of the machining width in Y for the machining of the plane surface
The machining of the plane surface in Y direction from the Y coordinate with
the value -V, to the Y coordinate with the value +V.
K Infeed in X direction (incremental)
The infeed is made incrementally starting from the X coordinate of the
starting point of the machining cycle. The current machine configuration
defines whether the infeed K is interpreted as a radius or a diameter. The
MTS standard configurations use in general radius programming for all
planes with driven tools.
If the absolute value of the remaining infeed is between 2K and K, then the
control makes the infeed twice. In each case half of the remaining infeed
value is uses for the infeed.
Optional addresses I Infeed in Z direction (infeed value as percentage of the milling tool
diameter)
The infeed in Z direction depends on the tool used for the cycle. If I
has not been programmed the control automatically uses for infeed a value
which is 75% of the width (diameter) of the current milling tool. Values which
are larger than or equal to 100% cannot be applied for I.
The sign of the address I defines whether synchron or conven-tional milling
is used:
I+ = synchron milling (standard)
I- = conventional milling

304 Programmer's Guide for CNC Turning, Version 6.7


Plane Milling Cycle Chord Surface: G60

O Absolute or incremental Z coordinate of the end point W of the plane


surface
O70 Z coordinate of the end point W absolute (standard)
O71 Z coordinate of the end point W incremental
O Optimizing the travel paths when processing a cycle
O10 machining without optimizing function (standard)
O11 optimized machining in Y direction

If O11 has been programmed the tool moves in Y only from -Ymin to +Ymin,
whereby Y min is the smallest value calculated for the current infeed to
generate the programmed plane surface. Programming the address V is in
this case irrelevant.

© MTS GmbH 1998 305


Chord Surface: G61 Drilling Cycle

13.16.2 Drilling Cycle G61


Function With the machining cycle G61 a drilling process is programmed. The machining is
carried out as a single or multiple infeed. The infeed can be interrupted for chip
breaking and chip cleaning if necessary. After each infeed the tool returns to the
outer edge of the drilling hole. After completion of the drilling the tool returns to the
withdrawal plane. In addition to G61 it is necessary to program a multiple cycle as
well, for instance G67 (cycle on a circle). By programming a multiple cycle the
machining cycle most recently programmed is run.

NC command G61 X... [K...] [D...] [A...] [B...] [W...]

Addresses X X coordinate (absolute) of the end point of the drilling (depth)

Optional K Infeed in X direction (incremental)


addresses
The infeed is carried out incrementally starting from the X coordinate of the
starting point of the machining cycle. The current machine configuration
specifies whether the infeed K is interpreted as a radius or a diameter. The
MTS standard configurations use in general radius programming for all
planes with driven tools .
D Decrease of the infeed (diameter)
In the address D it is possible to program the value the infeed is decreased
per each machining run. This means that the infeed value K is reduced by
the value D per each machining run. The current machine configuration
specifies the interpretation of the reduction value D either as a radius or a
diameter. The MTS standard configurations use in general radius
programming for all planes with driven tools. The infeed K is maximally
reduced up to the value equal to D (K=D).
If this decrease value has not been programmed then D=0 is valid. The tool
then drills in one machining run up to the programming depth X.
A Dwell time for chip breaking (given as number of rotations of the tool)
In the address A it is possible to program a dwell time for chip breaking. The
tool carries out the programmed number of rotations after withdrawal to the
clearance plane in order to break the chip. After this the next infeed is made.
B Dwell time for chip cleaning (given as number of rotations of the tool)
In the address B it is possible to program the dwell time for chip cleaning.
The tool carries out the programmed number of rotations at the bottom of the
drilling hole, in order to clean the drilling hole from the chips. After that the
tool is withdrawn to the clearance plane and the next infeed is made.
W Distance between clearance and withdrawal plane of the machining
cycle (incremental)
In the address W it is possible to program the distance between the
withdrawal and clearance plane of the machining cycle. The X coordinate of
the withdrawal plane is defined by the starting point of the cycle.
If the address W has been programmed the control infeed value for the tool
is first W in rapid speed movement when calling the machining cycle. After
that machining is carried out with the programmed infeed.

306 Programmer's Guide for CNC Turning, Version 6.7


Thread Cutting Chord Surface: G62

13.16.3 Thread Cutting G62


Function With the machining cycle G62 it is possible to program a thread cutting cycle. The
rotation direction of the thread cutter for the infeed can be programmed. When
calling the machining cycle the infeed is made either with a right or left rotation of
the spindle, the entered number of rotations and infeed speed up to the
programmed threading depth. Subsequently, the rotation direction of the spindle is
automatically changed and the tool returns in infeed speed to the clearance plane.
If withdrawal plane has been programmed as well, then the tool returns in rapid
speed to the withdrawal plane. At the end of the cycle the rotation direction of the
spindle is changed again. In addition to G62 a multiple cycle needs to be
programmed as well, for instance G67 (cycle on a circle). With the programming of
the multiple cycle the most recently programmed machining cycle is run.

NC command G62 X... [M...] [W...] [F...]

Address X Threading depth (absolute)

Optional M Rotation direction of the tool during infeed


addresses
When withdrawing the tool the rotation direction is changed automatically.
W Distance between the clearance and withdrawal plane of the machining
cycle (incremental diameter value)
In the address W it is possible to program the distance between the
withdrawal and clearance plane of the machining cycle. The X coordinate of
the withdrawal plane is defined by the starting point of the cycle.
If the address W has been programmed the control infeed value for the tool
is first W in rapid speed movement when calling the machining cycle. After
that machining is carried out with the programmed infeed.
F Threading pitch

© MTS GmbH 1998 307


Chord Surface: G63 Reaming/Boring

13.16.4 Reaming/Boring G63


Function With the command G63 it is possible to program a machining cycle for
reaming/boring. Prior to calling G63 the rotation direction of the spindle has to be
programmed in accordance to the reamer applied. When calling the cycle the
infeed is made with either a right or left rotation of the spindle, the entered number
of rotations and infeed speed up to the programmed depth of the drilling.
Subsequently, the rotation direction of the spindle is automatically changed and the
tool returns in infeed speed to the clearance plane. If the withdrawal plane has
been programmed as well the tool returns in rapid speed to the withdrawal plane.
At the end of the cycle the rotation direction of the spindle is changed again. In
addition to G63 a multiple cycle needs to be programmed as well, for instance G68
(cycle on a radius). With the programming of the multiple cycle the most recently
programmed machining cycle is run.

NC command G63 X... [W...]

Address X Depth (absolute)

Optional W Distance between the clearance and withdrawal plane of the


addresses machining cycle (incremental)
In the address W it is possible to program the distance between the
withdrawal and clearance plane of the machining cycle. The X coordinate of
the withdrawal plane is defined by the starting point of the cycle.
If the address W has been programmed the control infeed value for the tool
is first W in rapid speed movement when calling the machining cycle. After
that machining is carried out with the programmed infeed.

308 Programmer's Guide for CNC Turning, Version 6.7


Square Pocket/Groove Chord Surface: G64

13.16.5 Square Pocket/Groove G64


Function With the command G64 a machining cycle can be programmed for the machining
of a square pocket or a groove. The cycle call point (pocket center point) is
programmed in the corresponding multiple cycle, for instance G69 (cycle at a
point). The tool goes to the cycle call point in rapid speed and starts the machining
of the square pocket/groove with the programmed technology data. The travel
paths of the tool for processing the cycle can be influenced by the sign of the
infeed value K when programming it. After processing the machining cycle G64 the
tool returns to the cycle call point. If the withdrawal plane has been programmed
the tool returns in rapid speed to the withdrawal plane.

NC command G64 X... V... D... [K...] [I...] [A...] [B...] [W...]

Addresses X Depth of the square pocket/groove (absolute)


V Dimension of the square pocket in Y
D Dimension of the square pocket in Z

Optional K Infeed in X (incremental starting from the cycle call point)


addresses
K+ On each infeed plane the square pocket is machined starting from
the center.
K-... If the infeed value has a negative sign a groove marking the final
outer line of the square pocket is milled first and after that the square
pocket is machined in one machining run in its full depth.
I Infeed in the Y, Z plane in percentage of the milling tool diameter
If I has not been programmed the standard value I=75% is valid. An
applicable value range for I is 10%<I<85%. The resulting path undercutting is
100%-I.
A Rotation angle of the square pocket/groove with reference to the
negative Z axis
Positive values for A rotate the square pocket/groove counter-clockwise.
Negative values for A rotate the square pocket/groove clockwise.
B Rounding radius of the corners of the square pocket
The programmed value of B has to be larger than or identical with radius of
the milling tool applied.
W Distance between the clearance and withdrawal plane of the machining
cycle (incremental diameter value)
In the address W it is possible to program the distance between the
withdrawal and clearance plane of the machining cycle. The X coordinate of
the withdrawal plane is defined by the starting point of the cycle.
If the address W has been programmed the control infeed value for the tool
is first W in rapid speed movement when calling the machining cycle. After
that machining is carried out with the programmed infeed.

© MTS GmbH 1998 309


Chord Surface: G65 Circular Pocket

13.16.6 Circular Pocket G65


Function With the command G65 a machining cycle can be programmed for the machining
of a circular pocket. The cycle call point (pocket center point) is programmed in the
corresponding multiple cycle, for instance G69 (cycle at a point). The tool goes to
the cycle call point in rapid speed and starts machining the circular pocket with the
programmed technology values. The travel paths of the tool for the processing of
the machining cycle can be influenced by the sign of the infeed value K when
programming it. After processing the machining cycle the tool returns to the cycle
call point. If withdrawal plane has been programmed as well, the tool then returns
in rapid speed to the withdrawal plane.

NC command G65 X... B... K... [I...] [W...]

Addresses X Depth of the circular pocket (absolute)


B Radius of the circular pocket
K Infeed in X
K+... The tool moves in concentric paths when machining
K-... The tool moves in spiral paths when machining

Optional I Infeed in the Y, Z plane in percentage of the milling tool diameter


addresses
If I has not been programmed the standard value I=75% is valid. An
applicable value range for I is 10%<I<85%. The resulting path undercutting
is 100%-I.
W Distance between the clearance and withdrawal plane of the machining
cycle (incremental)
In the address W it is possible to program the distance between the
withdrawal and clearance plane of the machining cycle. The X coordinate of
the withdrawal plane is defined by the starting point of the cycle.
If the address W has been programmed the control infeed value for the tool
is first W in rapid speed movement when calling the machining cycle. After
that machining is carried out with the programmed infeed.

310 Programmer's Guide for CNC Turning, Version 6.7


Tapping Chord Surface: G66

13.16.7 Tapping G66


Function With the command G66 it is possible to program a machining cycle for machining
a tapping. The cycle call point (tapping center point) is programmed with the
corresponding multiple cycle, for instance G69 (cycle at a point). The tool goes to
the cycle call point in rapid speed and starts machining the tapping with the
programmed technology values. After processing the machining cycle G66 the tool
returns to the cycle call point. If the withdrawal plane has been programmed, the
tool returns in rapid speed to the withdrawal plane.

NC command G66 X... D... B... K... [I...] [W...]

Addresses X Depth of the circular pocket (absolute)


D Radius of the circular pocket
B Tapping radius
K Infeed in X

Optional I Infeed in the Y, Z plane in percentage of the milling tool diameter


addresses
If I has not been programmed the standard value I=75% is valid. An
applicable value range for I is 10%<I<85%. The resulting path undercutting
is 100%-I.
W Distance between the clearance and withdrawal plane of the machining
cycle (incremental)
In the address W it is possible to program the distance between the
withdrawal and clearance plane of the machining cycle. The X coordinate of
the withdrawal plane is defined by the starting point of the cycle.
If the address W has been programmed the control infeed value for the tool
is first W in rapid speed movement when calling the machining cycle. After
that machining is carried out with the programmed infeed.

© MTS GmbH 1998 311


Chord Surface: G67 Cycle on a Circle

13.17 Multiple Cycles in the Chord Face

13.17.1 Cycle on a Circle G67


Function With the multiple cycle G67 the most recently programmed machining cycle can
be run several times on a circle. The cycle machining pitch between the individual
runs remains constant on the circle. The coordinates of the circle center point can
be programmed with the command G67. In other case, the current tool position is
taken as the circle center point for the multiple cycle G67 when calling the cycle.

NC command G67 R... J... H... E... S... [Z...] [Y...]

Addresses R Radius of the circle


J Starting angle to the positive X axis when running the cycle on the
circle for the first time
H Angle increment between the cycle runs
E End angle to the positive Y axis when running the cycle on the circle
for the last time
S Number of cycle runs on a circle

Optional Z, Y Coordinates of the circle center point


addresses
For coordinates which have not been programmed the corresponding value
of the current tool position is used.

Programming Beside R, three of the four addresses J, H, E, S have to be programmed.


hints

312 Programmer's Guide for CNC Turning, Version 6.7


Cycle on a Radius Chord Surface: G68

13.17.2 Cycle on a Radius G68


Function With the multiple cycle G68 the most recently programmed machining cycle can
be run several times on a radius. The cycle machining pitch between the individual
runs remains constant on the radius. The coordinates of the starting point of the
radius can be programmed with the command G68. Otherwise, the current tool
position is taken as the starting point of the radius for the multiple cycle G68 when
calling the cycle.

NC command G68 S... J... H... E... R... [Z...] [Y...]

Addresses S Number of cycle runs


J Angle of the radius to the positive Y axis
H Distance of the cycle runs in Y
The sign of H defines the direction of the radius with reference to the Y axis.
E Distance of the circle runs in Z
The sign of E defines the direction of the radius with reference to the Z axis.
R Distance between two cycle runs

Optional Z, Y Coordinates of the starting point of the radius and the 1st cycle call
addresses point
For coordinates which have not been programmed the value of the current
tool position is used.

Programming Besides S, two of the four addresses J, H, E or R have to be programmed.


hints

© MTS GmbH 1998 313


Chord Surface: G69 Cycle at a Point

13.17.3 Cycle at a Point G69


Function With the command G69 the CNC control is instructed to run the most recently
programmed machining cycle only once at a point. The location of the point is
defined by programming its coordinates in the current coordinate system. If the
point is programmed with the command G69, then the control goes in rapid speed
to this point with linear interpolation in all axes. Subsequently, the most recently
programmed machining cycle is run.

NC command G69 [X...][Z...] [Y...]

Optional X, Z, Y Coordinates of the point the cycle is to be run at


addresses
For coordinates which have not been programmed the corresponding
value of the current tool position is used.

314 Programmer's Guide for CNC Turning, Version 6.7


Appendix: Table of Programmable Addresses

Appendix 1: Table of Programmable Addresses


All measurements are in millimeters (mm), unless otherwise stated.

Address Value / Range Explanation / Function


% 000001 to999999 Identification of a Main Program
A 000 to 360 - Input of angles in degrees: G71 cycle
- Thread angle in degrees: Threading cycle G31
000.000 to 999.999 - Dwell time (in seconds) after tool retreat for chip-
breaking: Deep-drilling cycle G84
- Length of the line in X (absolute); for calculation of
the taper rise: Straight/Plane Roughing cycle G89
B 000.000 to 999.999 - Radius: Contour strings G72, G73
- Rounding radius: Recessing cycle G86
- Additional swivel rotation axis for the turret
(depending on machine configuration and of the
current machining plane)
Exception: During contour programming of
G72/G73 B remains circle radius.
C 000.000 to 999.999 - Positionable turning axis
D 000.000 to 999.999 - Depth of feed: Straight/Plane Roughing cycle G89,
G75 and G76
- Degression: Deep drilling cycle G84
- Finishing allowance: Clearance cutting cycles G78
- 999.999 to +999.999
and G85
- Width of recess: Recessing cycle G79
E 000.000 to 360.000 - Thread angle to the Z-axis, at the end point:
Threading cycle G31
- Taper rise : Straight/Plane Roughing cycle G89
- 360.000 to + 360.000
- Angle of the oriented tangent to the positive Z-axis,
at the end point: Contour strings G72/G73
F 000.001 to 050.000 - Feedrate in mm/rev
- Lead: Threading cycles G31 and G33
G 00 to 99 - Motion (G-) commands
H 000.000 to 999.999 - Distance after which the feed motion is interrupted
for chip-breaking: Straight/Plane Roughing cycle
G89, G75 and G76
- Radius of roundings at the upper edge of the
recess: recessing cycle G79
I - 999.999 to +999.999 - Centre coordinate in X: commands G02 and G03,
and contour strings G72 and G73
- Difference of radii between the theoretical starting
point and the end point of the thread: Threading
cycle G31

© MTS GmbH 1998 315


Appendix: Table of Programmable Addresses

Address Value / Range Explanation / Function


I - 999.999 to + 999.999 - Infeed in X: Cross- and straight roughing cycles
G75, G76, G81 and G89 as well as contouring
contour parallel cross roughing cycle G83
- Grinding allowance: Clearance cutting cycles G78
and G85 compliant with DIN 509 Type E and F
- Depth of clearance cut: Thread cutting cycles G78
and G85 compliant with DIN 76
- Allowance in X: Recessing cycles G79 and G86
- Rounding radius: Cycle G7
000.000 to 999.999
- Chamfer length: Cycle G88
J - 999.999 to + 999.999 - Feed adjustment per cut in X: Threading cycle G31
000.000 to 999.999 - Clearing distance between tool and part: Recessing
cycle G79
K - 999.999 to +999.999 - Centre coordinate in Z: Cycles G02 and G03
contour strings G72 and G73
- Feed adjustment per cut in Z: Threading cycle G31
- Feed adjustment per cut in Z: Straight and cross
roughing cycles G75, G76, G82 and G89,
000.000 to 999.999 Contouring cycle G83
- Length of clearance cut: Threading cycles G78 and
G85 compliant with DIN 76
- Allowance in Z: Recessing cycle G79
- Width of Recess: Recessing cycle G86
- First drilling level: Deep drilling cycle G84
L 0 to 100 - Optimization of remaining cuts: Roughing cycles
G75, G76, G81, G82 and G89
01 0r 02
- DIN-Parameters : Clearance cutting cycle G78
compliant with DIN 509 Type E and F
000.000 to 999.999
- Length of line : Contour string G71
M 00 to 99 - M functions
N 001 to 999 - Number of NC block
O 000 to 999 - Number of first block: Subprogram invocation G22
- Nmber of first block: Routines G23
000 to 450 - Block number : Jump instruction G24
O001, O002 - Side angle to the side of the programmed end
point: Recessing cycle G79 (tenths of degrees)
- Selection of alternatives: Contour strings
- Finishing allowance in Z: G57 command
O O011, O012 - Selection of alternatives: Roundings with R+ in the
course of contour strings
- Absolute coordinates of circle centres: Contour
O070
strings G72 and G73

316 Programmer's Guide for CNC Turning, Version 6.7


Appendix: Table of Programmable Addresses

Address Value / Range Explanation / Function


O 101, 102, 204, 206, - Definition of dimensions: Clearance cutting cycle
306, 410, 210, 316, G78 compliant with DIN 509, Type E and F
425, 540
P 00 to 99 - Addresses for parameter value assignation
Q 000 to 999 - Number of last block: Subprogram invocation G22
- Number of last block: Program part repetition G23
- Final cut segmentation: Threading cycle G31
000 to 450 - Side angle in tenth of degrees (to the side of the
programmed corner point): Recessing cycle G79
R - 999.999 to +999.999 - Chamfer (R-) or rounding (R+): Contour strings
G71, G72 and G73
- Chamfer at the bottom edge: Recess. cycle G79
000.000 to 999.999
- Degression of feeding depth: roughing cycles G75,
G76, G81, G82 and G89
S 001 to 999 - Number of cutting passes: Threading cycle G31
- Number of cutting passes: Roughing cycles G75,
G76 and G89
- Number of repetitions: Subprogram invocation G22
and program part repetition G23
0001 to 9999
- Spindle speed in RPM
- Constant spindle speed in m/min
T 0101 to 1699 - The first two digits (01 - 16) denote the turret
position for tool change
- The last two digits (01 - 99) denote the
compensation value storage
U 000000 to 999999 - Subprogram name: G22
V 000.000 to 999.999 - Minimum depth of cut: Roughing cycles G75, G76,
G81, G82 and G89
W 000.000 to 999.999 - Distance by which the tool moves back for chip-
breaking: Roughing cycles G75, G76, G81, G82
and G89
- Radius of rounding at the bottom edge of recess:
Recessing cycle G79
X - 999.999 to + 999.999 - Coordinate value in X
- Coordinate value in X: G57 command
000.000 to 999.999 - Dwell in sec: G04 command
Y - 999.999 to + 999.999 - Additional feed axis for the turret
Z - 999.999 to + 999.999 - Coordinate value in Z
- Finishing allowance in Z: G57 command

© MTS GmbH 1998 317


Appendix: Table of Programmable Addresses

Index
Code (Number)
3D-View 233 See NC Block: 25
Commands 26
A Modal and Non-modal 26
Compensation Values 230
Absolute Dimensioning 17
Compensation Value Storage 21
Absolute Dimensions
Length Compensation 21
Activate 61
Configuration
De-Activate 62
Counter Spindle 237
Addresses
Driven Tools 251
Alternative Addresses 27
Constant Cutting Speed
Combined Addresses 27
See Cutting Speed: 66
Optional Addresses 27
Contour Segments
Table of Addresses 315
See Contour Strings: 142
Alternative Solutions with Contour Strings
Contour String
See Contour Strings: 142
Three-Point String
Angle Criterion
Arc - Arc 183
See Contour Strings: 152
Contour Strings 142
Angle Criterion with Contour Strings
Arc Segment 144
See Contour Strings: 142
Chamfer between Two Lines 159
Arc as a Contour Segment
Circle Centres Absolute 147
See Contour Strings: 142
Four-Point String
Arc Criterion
with Tangential Transitions 188
See Contour Strings: 154
Line Segment 144
Arc Criterion with Contour Strings
Open Contour Strings 194
See Contour Strings: 142
Pointed Tangential Transitions 150
Rounding between Two Entities 157
B Selection of Solutions 151
Bar feed for work parts in the main spindle 246 Arc Criterion 154
Basic Geometry 13 Selection of Solutions - Angle Criterion 152
Basics of NC Programming 25 Selection of Solutions - Line Criterion 153
Blank 219 Selection of Solutions with Roundings 157
Tangential Connection to Preceding Entity 201
C Tangential Transitions 148
Three-Point String
Cancel Incremental Zero Shift 60
Arc - Line 170
Centre Sleeve
Line - Arc 176
Lock/Unlock 29
Line - Line 166
Chamfer between Segments - See Contour Strings:
Two-Point String
159
Straight Line 160
Chamfering between Axially Parallel Straight Lines
Contouring Cycle
Radius/Chamfer Cycle 131
Contouring/Multipass Cycle 111
Chamfering Cycle 131
Cross Roughing Cycle for any Contour 98
Changes and Supplements to the Version 5.x
Recessing Cycle for any Contour 124
Change of Address Letter 11
Straight Roughing Cycle for any Contour 88
Change of G-Commands 11
Coolant
Chord Surface 302
Activate/Deactivate 28
Chucking Depth 224
Coordinate System 13; 60
Circle Interpolation: 36
Cartesian Coordinate System 13
Circular Interpolation
for CNC-Turning 13
Clockwise 36
Origin of the Coordinate System 13
Clamping Devices 222
Polar Coordinate System 13
Clamping Mode 223
Shift Coordinate System
Clearance Cutting Cycle
See Workpiece Zero: 59
G78 in Compliance with DIN 509 Types E and F
Two-dimensional Coordinate System 13
81
Coordinates 13
G85 in Compliance with DIN 509 Types E and F
Core Diameter of Threads
117
See Thread: 69
Clearance Cutting Cycle: 81; 117

318 Programmer's Guide for CNC Turning, Version 6.7


Index

Counter Spindle 235 I


Configuration 237
Incremental Dimensioning 17
G00 Rapid Speed Movement 241
Incremental Dimensions
G01 Travel Movement 242
Activate 62
G05 Bar feed 246
De-Activate 61
G28 Machining on the Counter Spindle 244
Incremental Zero Shift
G29 Machining Transfer to the Main Spindle 238
See Workpiece Zero: 59
G30 Work Part Transfer 239
G59 Shift of the Reference Point 240
Machining states 236 J
Programming the Counter Spindle 238 Jump Instruction - unconditional 45
Setup Data 225
Current Tool 226 L
Cutting Speed Lead 50
Constant Cutting Speed 66 Length Compensation
Cycles 67 See Compensation Values: 21
Table of Available Cycles 67 Limitation of the Travel Range
See Travel Range Limitation: 113
D Line as a Contour Segment
Deep Drilling Cycle See Contour Strings: 142
See Drilling Cycle : 115 Line Criterion
Define Workpiece Zero - Incremental 59 See Contour Strings: 153
Define/Shift Zero Line Criterion with Contour Strings
See Workpiece Zero: 57 See Contour Strings: 142
Description of a Final Contour 55 Linear Interpolation in Slow Feed Motion G01 35
DIN 66025 31
Drilling Cycle M
Deep Drilling Cycle G84 115 Machine Zero 15; 57
Driven Tools 247 Machining Cycles 249
Chord Surface G19 302 Machining planes 248
Configuration 251 Machining states 236
Free-definable Plane G16 254 Material 221
Front Face G17 273 Measuring Unit
Machining Cycles 249 Millimeters (mm), Switch to 41
Machining planes 248 M-Functions 28
Multiple Cycles 249 Millimeters (mm), Switch to 41
Setup Data 227 Miscellaneous Functions 28
Shell Surface G18 287 Modal Commands 26
Standard Plane G15 253 Motion, Rapid 33
Turning Plane G14 252 Multiple Cycles 249
Dwell 38

E N
NC Block 25
End Block Number in Subprograms Addresses 25
See Subprograms: 43 Code 25
End Block Number of Repeated Program Parts Format 25
See Repeated Program Parts: 44 Skipping of NC blocks 207
External Diameter of Threads Value 25
See Thread: 69 Word 25
NC Program Analysis 231
F N-polygon 219
Feedrate 29
Millimeters per Minute 64 O
Millimeters per Revolution 65 Open Contour Strings
Final Contour 55 See Contour Strings: 142
Finishing Allowance 73 Optional Block Skip 43
Four-Point String
See Contour Strings: 142
Free-definable Plane 254 P
Front Face 273 Parameter 205
Planes
© MTS GmbH 1998 319
Appendix: Table of Programmable Addresses

Chord Surface G19 302 Compensation Values 230


Free-definable Plane G16 254 Counter Spindle 225
Front Face G17 273 Current Tool 226
Shell Surface G18 287 Driven Tools 227
Standard Plane G15 253 Prefabricated Part 221
Turning Plane G14 252 Syntax 217
Pointed Tangential Transitions 150 Tailstock/Sleeve 224
Polar Coordinate System Tools in the Turret 226
See Coordinate System: 13 Workpiece Material 221
Prefabricated Part 221 Shell Surface 287
Program End 29 Skipping of NC blocks 207
Programmed Halt 28 Special Characters 207
Programming the Spindle Speed 29 Spindle
Programming with Parameter 205 Activate/Deactivate 28
Programming with Special Characters 207 Spindle Speed 29
Spindle Speed Limitation 63
R Standard Plane 253
Start Block Number in Subprograms
Radiusing Cycle 131
See Subprograms: 43
Rapid Traverse 33
Start Block Number of Repeated Program Parts
Recessing Cycle
See Repeated Program Parts: 44
G79 Recessing Cycle with chamfers, roundings
Subprograms
and bevelled sides: 87
End 43
G86 Recessing Cycle for rectangular recesses:
End Block Number 43
123
Invocation 43
G87 Recessing Cycle for any Contour 124
Start Block Number 43
Recessing Cycle G86 123
Subprograms: 43
Reference Point 15
Switching Functions 28
Move to the Reference Point 46
Reference Points 15
Relative Dimensioning 17 T
Repeated Program Parts 44 Table of available DIN commands 31
End Block Number 44 Tailstock 48
Start Block Number 44 Tailstock/Sleeve 224
Repetition of a Program Part Tangential Transition with Contour Strings
See Repeated Program Parts: 44 See Contour Strings: 142
Roughing Cycle Tangential Transitions 148
Contouring/Multipass Cycle 111 Tangents, Pointed 155
Cross Roughing Cycle / Rectangular Contour 79 Thread 50; 69
Cross Roughing Cycle for any Contour 98 Core Diameter 69
Straight Roughing Cycle for any Contour 88 Cylinder Thread 50; 69
Straight Roughing Cycle- Rectangular Contour 77 Depth 69
Straight/Plane Roughing Cycle- Conical Contour External Diameter 69
135 Lead 69
Rounding Between Contour Entities - See Contour Taper Thread 50; 69
Strings: 157 Thread Undercut G78 in Compliance with DIN 76
Roundings between Axially Parallel Straight Lines 85
Radius/Chamfer Cycle 131 Thread Undercut G85 in Compliance with DIN 76
121
S Threading Cycle G31 69
Threading Cycle G33 50
Screen Layout in CNC Simulator 6 10
Three-Point String
Segment Contour Programming
See Contour Strings: 142
See Contour Strings: 142
Tool Change 30
Selection of Solutions
Tool Changing Position 15
See Contour Strings: 151
Tool Compensation Storage
Selection of Solutions with Pointed Tangents 155
See Compensation Values: 21
Setup Form
Tool Compensation Values
Beginning/End Indicator 218
See Compensation Values: 21
Blank 219
Tool Geometry 19
Chucking Depth 224
Tool Nose
Clamping Devices 222
adjustable angle 19
Clamping Mode 223
Angle of Reversible Tip 19
320 Programmer's Guide for CNC Turning, Version 6.7
Index

Clearance Angle 19 Current Tool 226


Infeed Angle 19 Setup Data Driven Tools 227
Lenght of Tool Nose 19 Tools in the Turret 226
Theoretical Cutting Point 21 Travel Range Limitation 113
Tool Nose Compensation Value 21 Turning Plane 252
Tool Nose Geometry 19 Turret
Tool Nose Radius 19; 21 Tools in the Turret 226
Width of Tool Nose 19 Two-Point String
Tool Nose Compensation 23; 52 See Contour Strings: 142
Cancel 52
Left/Right of the Contour 52 V
Tool Nose Radius 23
Value
Tool Nose Radius Compensation 23
See NC Block: 25
Tool Reference Point 15; 21
Tool Shank
Diameter 19 W
Minimum Diameter 19 Words
Tool Shank: 19 See NC Block: 25
Tool-Changing Position Workpiece Material 221
Move to the Tool-Changing Position 47 Workpiece Zero 15; 57
Tooling Quadrants 23 Define - Absolute 57
Tools Zero Shift 59
Compensation Values 230

© MTS GmbH 1998 321

Potrebbero piacerti anche