Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
0% found this document useful (0 votes)
11 views

Programming Manual-DeCO13a En

This document is a programming manual for the DECO 13 machine by TORNOS−BECHLER S.A., providing essential information on safety regulations, tool geometries, G-functions, M-functions, T-functions, and macros. It includes detailed instructions and tables for programming various operations and functions of the machine. The manual emphasizes the importance of following training courses to minimize misinterpretation of the content.

Uploaded by

Peter Smith
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
11 views

Programming Manual-DeCO13a En

This document is a programming manual for the DECO 13 machine by TORNOS−BECHLER S.A., providing essential information on safety regulations, tool geometries, G-functions, M-functions, T-functions, and macros. It includes detailed instructions and tables for programming various operations and functions of the machine. The manual emphasizes the importance of following training courses to minimize misinterpretation of the content.

Uploaded by

Peter Smith
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 175

PROGRAMMING

Version 4.32

DECO 13 mm

ATTENTION ! 300482 E
Before handling the machine, read first
the information contained in the leaflet
entitled “SAFETY REGULATIONS”

TORNOS−BECHLER S.A.
CH−2740 MOUTIER / Suisse
 1999 Printed in Switzerland Internet: http://www.tornos.ch

300482 E − 07/99 Chap. /1


TORNOS
PROGRAMMING − DECO 13
BECHLER

This manual is based on the information available at the moment of its publication. Although the very
best has been done in order to have the contents as precise as possible, it does not pretend to cover
all details of the hardware and software, nor to anticipate every contingency.
TORNOS−BECHLER S.A. give no guarantee nor assume any responsibility for the exactitude and
the sufficiency of the information contained in this manual.
The contents of the manual remain the property of TORNOS−BECHLER S.A. who reserve the right
to modify, complete or correct it at any time.
The risks of misinterpretation of the contents of this manual can be considerably reduced, if the user
follows the training courses proposed by TORNOS−BECHLER S.A.

Chap. /2 300482 E − 07/99


TORNOS
PROGRAMMING − DECO 13
BECHLER
TABLE OF CONTENTS

1. INTRODUCTION . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1

2. TOOL GEOMETRICS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
2.1 AXIS TRAVEL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
2.2 ZERO DATUM SYMBOLS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
2.3 5-AXIS KINEMATICS FOR 20 MM-DECO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
2.4 COMB-GANGS 1 & 2 (X1Y1 & X2Y2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
2.5 COMB-GANG 2 (X2Y2) WITH POWERED TOOL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
2.6 FRONTWORK GANG . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
2.7 AXIAL BACKWORK GANG . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
2.8 RADIAL BACKWORK GANG . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
2.9 TOOL LINE & OPERATION LAYOUT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

3. G-FUNCTIONS (PREPARATORY) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
3.1 G-CODE TABLE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
3.1.1 Function Groups With Processing Order Numbers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
3.2 DESCRIPTION OF G-FUNCTIONS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

4. M-FUNCTIONS (MISCELLANEOUS) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
4.1 M-CODE TABLE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
4.2 DESCRIPTION OF M-FUNCTIONS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
4.3 DO ALLOCATION ON OPTIONAL SOCKETS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
4.4 RECAP OF LOGICAL FUNCTIONS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
4.5 SAMPLE PROGRAMMING FOR ADDITIONAL DRILL SENSOR . . . . . . . . . . . . . . . . . 13
4.6 INTERPOLATION IN POLAR COORDINATES (TRANSMIT FUNCTION) . . . . . . . . . . 14

5. T-FUNCTIONS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
5.1 SPECIFY TOOLS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
5.1.1 Support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
5.1.2 What Is T0 For ? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
5.1.3 QUADRANTS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
5.2 CIRCULAR INTERPOLATION INDEXING OF TOOLS ON X1Y1 COMB-GANG . . . . 4
5.2.1 Y+ Indexing on X1Y1 Comb-Gang . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
5.2.2 Y− Indexing on X1Y1 Comb-Gang . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
5.3 CIRCULAR INTERPOLATION INDEXING OF TOOLS ON X2Y2 COMB-GANG . . . . 5
5.3.1 Y+ Indexing on X2Y2 Comb-Gang . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
5.3.2 Y− Indexing on X2Y2 Comb-Gang . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
5.4 INDEXING FRONTWORK GANG TOOLS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
5.5 INDEXING BACKWORK GANG TOOLS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

300482 E − 07/99 3
TORNOS
PROGRAMMING − DECO 13
BECHLER

6. MACROS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
6.1 MACRO APPLICATION . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
6.1.1 Auxiliary Program INIT.PGM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
6.1.2 Main Program PIECE.PGM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
6.1.3 Auxiliary Program END_BAR.PGM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
6.1.4 Auxiliary Program NEW_BAR.PGM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
6.2 DIVERSE MACROS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
6.2.1 G903-Macro: Index Gang Tooling On Comb-Gangs 1 & 2 . . . . . . . . . . . . . . . . . . . . . . . 7
6.2.2 G904-Macro: Cutoff At Constant Cutting Speed . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
6.2.3 G915-Macro: Zero Offset In Z3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
6.2.4 G916-Macro: Zero Offset In Z4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
6.2.5 G933-Macro: Single-Point Threading Cycle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
6.2.6 G977-Macro: Pecking Cycle (Drilling & Chip Clearing) . . . . . . . . . . . . . . . . . . . . . . . . . . 19
6.3 FEEDING SEQUENCES FOR VARIOUS BARFEEDERS . . . . . . . . . . . . . . . . . . . . . . . . 22
6.3.1 End-of-Bar For Mechanical Or Hydraulic Feed Tube . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
6.3.2 End-of-Bar For Robobar SSF-226
Or Similar Barfeeder With Bar Calibration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
6.4 EXTENDED PROGRAMMING . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
6.4.1 Extension of ISO Programming For Operations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
6.4.2 Pre-Specified Library of Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
6.5 EXTENDED PROGRAMMING :
CLASSIFICATION OF FUNCTIONS BY TYPE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
6.5.1 String Processing Library . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
6.5.2 Input / Output & Move Library . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
6.5.3 System Library . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
6.5.4 Mathematical & Decoding Library . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
6.6 EXTENDED PROGRAMMING :
LIBRARY FUNCTIONS ALPHABETICALLY LISTED & EXPLAINED . . . . . . . . . . . . . . 26

7. VARIABLES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
7.1 TYPES OF VARIABLES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
7.2 GENERAL DESCRIPTION OF VARIABLES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
7.2.1 System Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
7.2.2 Auxiliary System Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
7.2.3 System String Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
7.2.4 Local Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
7.2.5 Global Program Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
7.2.6 Global Part Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

4 300482 E − 07/99
TORNOS
PROGRAMMING − DECO 13
BECHLER

7.3 APPLICATION OF VARIABLES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6


7.3.1 Application of System Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
7.3.2 Application of Local Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
7.3.3 Application of Global Program Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
7.3.4 Application of Global Part Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
7.3.5 Variable #3004: Feeding Allowance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
7.3.6 Variable #3005: Deburring Shift . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
7.3.7 Variable #3009: Part-Pickoff Length . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
7.3.8 Variable #3010: Pickoff-Spindle Collet Geometry . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
7.3.9 Variable #3011: Pickoff-Spindle Retract Distance After Part-Pickoff . . . . . . . . . . . . . . . 24
7.3.10 Variable #3012: Pickoff-Spindle Approach Distance For Part-Pickoff . . . . . . . . . . . . . . 24
7.3.11 Variable #3014: Z1-Axis Retract For Remnant Ejection . . . . . . . . . . . . . . . . . . . . . . . . . 25
7.3.12 Variable #3015: Z1-Axis Feed For New Bar Insertion . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
7.3.13 Variable #3016: S1 Speed For Next Part Feeding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

8. SAMPLES OF PROGRAMMING . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
8.1 SAMPLE 001: FACE WITH ALLOWANCE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
8.2 SAMPLE 002: THREAD WITH MACRO G933 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
8.3 SAMPLE 003: APPLICATION OF INTERLINKED-AXES (Z1Z3 & Z1Z4) . . . . . . . . . . 4
8.4 SAMPLE 004: MACHINE SEVERAL PARTS PER CHUCKING . . . . . . . . . . . . . . . . . . 8
8.5 SAMPLE 005: PROGRAMMING C-AXIS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
8.6 SAMPLE 006: APPLICATION OF Z1Z4 INTERLINKED-AXES (1) . . . . . . . . . . . . . . . 12
8.7 SAMPLE 007: APPLICATION OF Z1Z4 INTERLINKED-AXES (2) . . . . . . . . . . . . . . . 15
8.8 SAMPLE 008: FORM MILLING WITH CUTTER COMPENSATION . . . . . . . . . . . . . . . 19
8.9 SAMPLE 010: LONG PART . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
8.10 SAMPLE PART EX_V4_10.PCE (10 AXES) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
8.11 SAMPLE KEYWAY CONTOURING WITH CUTTER COMPENSATION . . . . . . . . . . . . 56
8.12 SAMPLE GROOVING WITH CUTTER COMPENSATION . . . . . . . . . . . . . . . . . . . . . . . . 57
8.13 SAMPLE THREADING . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58

300482 E − 07/99 5
TORNOS
PROGRAMMING − DECO 13
BECHLER

6 300482 E − 07/99
TORNOS
PROGRAMMING − DECO 13 BECHLER

1. INTRODUCTION

DECO 2000 belongs to a new generation of automatics with a sliding headstock. It replaces
the cam-controlled machine, improves ergonomics and reduces setup time. DECO 2000 com-
bines the productivity of the cam-controlled machine with all the advantages of the numerical
control.

The specific feature of the PNC-DECO control (parallel numerical control) is its capacity to man-
age all machine axes simultaneously. Each axis follows its own path in synchronization with all
the others.

Starting from the part drawing, you will program the part by means of the dedicated TB-DECO
software running on MicrosoftWindows. You can simulate part machining with the SIM-
DECO simulation software. Then you will download your program into the machine over the
DNC-DECO communication software.

A new part is usually programmed from a basic part model. This model comprises, according
to the mechanical configuration of the machine, a basic operation schedule. Each machine con-
figuration has its own model of basic part. These basic part models, particularly useful for creat-
ing a new program, will be copied on your hard disk at the installation of TB-DECO.

This document gives you all information required to produce a part program and is complemen-
tary to the TB-DECO SOFTWARE SYSTEM MANAGEMENT manual for DECO 2000.

The operator training courses on DECO 2000 provide the trainees with the competence and
self-assurance adequate for the programming and for the best possible application of the
DECO 2000 potential.

300482 E − 07/99 Chap. 1. /1


TORNOS
PROGRAMMING − DECO 13 BECHLER

Chap. 1. /2 300482 E − 07/99


TORNOS
PROGRAMMING − DECO 13 BECHLER
2. TOOL GEOMETRICS

2.1 AXIS TRAVEL

AXIS TRAVEL
AXIS Lower limit Upper limit Reference Travel
X1 −14 mm (∅) 56 mm (∅) 56 mm (∅) 35 mm
X2 −14 mm (∅) 56 mm (∅) 56 mm (∅) 35 mm
Y1 −3 mm 155 mm 0 mm 158 mm
Y2 −3 mm 155 mm 0 mm 158 mm
Z1 0 mm 255 mm 0 mm 255 mm
X3 −144 mm (∅) 230 mm (∅) −144 mm (∅) 187 mm
Z3 −160 mm 0 mm 0 mm 160 mm
X4 −310 mm (∅) 6 mm (∅) 0 mm (∅) 158 mm
Y4 −1 mm 299 mm 296 mm 300 mm
Z4 0 mm 160 mm 160 mm 160 mm

2.2 ZERO DATUM SYMBOLS

Machine Zero : Fixed point on the machine.

Part Zero : Moving point on the part face.

Tool Zero : Reference point for tool geometry.

300482 E − 07/99 Chap. 2.2 /1


TORNOS
PROGRAMMING − DECO 13 BECHLER

2.3 KINEMATICS

Chap. 2.3 /2 300482 E − 07/99


TORNOS
PROGRAMMING − DECO 13 BECHLER

2.4 COMB-GANGS 1 & 2 (X1Y1 & X2Y2)


Standard Geometrics : X1/X2 = 0 Y1=2 Y2 = −2 Z1=−25

Z1(− 25)

X1(+)

Dowel pin

62

X1(−)

X1(+)
28

X1(−) +
Z1(+) Z1(−)

2.5 COMB-GANG 2 (X2Y2) WITH POWERED TOOL


Standard Geometrics : X2 = 0 Y2 = 0 Z1 = −28/−35

X2(+)
Z1(−28/−35)

Dowel pin
62

X2(−)
28

+
Z1(+) Z1(−)

300482 E − 07/99 Chap. 2.5 /3


TORNOS
PROGRAMMING − DECO 13 BECHLER

2.6 FRONTWORK GANG


Standard Geometrics X3 = 0 Z3 = −180

X3(+)
Z3 (−180)

X3(−)

X3(−)

Z3(−) Z3(+)

2.7 AXIAL BACKWORK GANG


Standard Geometrics: X4 = 0 Z4 = +80 Y4= 0

X4(+)

185

Z4 (+80)

X4(−)

Z4(+) Z4(−)

Chap. 2.7 /4 300482 E − 07/99


TORNOS
PROGRAMMING − DECO 13 BECHLER

2.8 RADIAL BACKWORK GANG


Standard Geometrics: X4 = 0 Z4 = +37 Y4 = +2

120

Z4 (+37) Dowel pin

X4(+)

62

Z4 (+28/35)

diam 50
X4(−)

Z4 (+53/60)

Z4(+) Z4(−)

2.9 TOOL LINE & OPERATION LAYOUT


See following pages.

300482 E − 07/99 Chap. 2.9 /5


TORNOS
PROGRAMMING − DECO 13 BECHLER
TOOL LINE
X4
DECO 13mm 10 axes
Z4
BACKWORK GANG
Program No.: Order :
T41
Material : Dia. ∅ :
Dwg No.:
Production : sec/part part/min T42

Cutting Oil :
Date : Name : T43

X3

Z3
FRONTWORK GANG
T31 X4

Z4
T32 BACKWORK GANG
T51

T33
T52

T34
T53

X1 X2

Z1 Z1
COMB-GANG 1 COMB-GANG 2
T11 T21

T12 T22

T13 T23

T14 T24

T15 T25

Chap. 2.9 /6 300482 E − 07/99


TORNOS
PROGRAMMING − DECO 13 BECHLER

DECO 2000 Drawing No.: Progr. No.:

Operation Layout

T Comb-Gang 1 T Comb-Gang 2 T Frontwork Gang T Backwork Gangs

300482 E − 07/99 Chap. 2.9 /7


TORNOS
PROGRAMMING − DECO 13 BECHLER

Chap. 2.9 /8 300482 E − 07/99


TORNOS
PROGRAMMING − DECO 13 BECHLER
3. G-FUNCTIONS (PREPARATORY)

3.1 TABLE OF G-FUNCTIONS


Code Function Grp No. M/S
G01 Linear interpolation 10 S
G02 Circular interpolation clockwise 10 S
G03 Circular interpolation counter-clockwise 10 S
G04 Dwell [s] at 100% of override 1 S
G13 Loop start 1 S
G26 Circular chamfer link, L= radius 2 S
G27 Linear chamfer link, L= length 2 S
G28 Referencing 10 S
G33 Threading, constant lead 9 S
G34 Threading, increasing lead 9 S
G35 Threading, decreasing lead 9 S
G40 Cutter compensation cancel 2 M
G41 Cutter compensation, left 2 M
G42 Cutter compensation, right 2 M
Cancel all zero offsets (datum shifts). Coordinate system begins at
G52 1 M
Machine Zero and is again valid for the axes concerned.
Cancel all additional zero offsets (datum shifts) entered over G54
G53 1 M
and G55
Additional zero offset (datum shift) against current coordinate sys-
G54 1 M
tem. If repeated, these offsets add up for the axes concerned.
Additional zero offset against initial coordinate system (Part Zero).
G55 1 M
Cancels G54
Zero offset (datum shift) against Machine Zero. Initial G56 settings,
G56 processed at each program start, are those entered in Part Mana- 1 M
ger.
Save all zero offsets (datum shifts) and reset them for the axes con-
G58 1 M
cerned to cut with respect to Machine Zero
Restore all zero offsets (datum shifts) saved over last G58 (also for
G59 1 M
the axes concerned)
G68* Cancel G69 2 M
G69 Calculate 360 modulo for rotating axis 2 M
G70 Inch data input (not for tools) 2 M
G71* Metric data input 2 M
G81 Linear extension for cutter compensation 2 M
G82* Circular extension for cutter compensation 2 M
G83 Permute axes for main plane of interpolation 2 M
G84 Permute axes for main plane of interpolation 2 M
Reestablish main plane specified in Operation Line.
G85* 2 M
Cancel G83 or G84
G90* Absolute dimension 2 M
G91 Incremental dimension 2 M
G94 Asynchronous feedrate [mm/min] 2 M

300482 E − 07/99 Chap. 3.1 /1


TORNOS
PROGRAMMING − DECO 13 BECHLER
Code Function Grp No. M/S
G95* Synchronous feedrate [mm/rev] 2 M
G100 Rapid traverse (unproductive) 2 S
G113 Loop End 1 S
G130 Threading header 8 S
G131 Threading footer 8 S
G190* Exact stop (between segments) 2 M
G191 Continuous contouring (If angle = 0) 2 M
G250 Cancel polygoning 4 S
G251 Spindle On (specified by hundreds) for polygoning 4 M
G314 Circular Interpolation for arcs > 180°: Path > π for G02/G03 2 S
G550 Cancel polygoning 4 S
G551 Spindle On (specified by hundreds) for polygoning 4 M
G900 Initialize spindles with settings specified for part
G901 Initialize sequences
Explanations :
* Functions enabled by default for new operation
Grp No. Function Group No. (see also below in Para 3.1.1)
M modal : Function remains enabled until replaced by another function off
same group.
S sequential : Function remains enabled in programmed segment only.

3.1.1 Function Groups With Processing Order Numbers

Each G-function belongs to a group numbered 1 to 10.


Group Numbers represent the order in which particular functions are processed in a block.

Functions are processed in the following order :


Group 1 : System Commands
Group 2 : Modal G-Functions
Group 3 : Spindle Rotation Commands
Group 4 : Polygoning Spindle Commands
Group 5 : Spindle Commands for Phase Adjustment
Group 6 : Spindle Positioning Commands
Group 7 : Spindle ON/OFF Commands
Group 8 : Header/Footer Threading Commands
Group 9 : Threading Commands
Group 10 : Axis Commands
Group 11 : Basic M-Commands
Group 12 : Additional M-Commands
Group 13 : Machine Cycles
Note : Tool call to be entered either in a separate line or together with a function of
Group 10.

Chap. 3.1.1 /2 300482 E − 07/99


TORNOS
PROGRAMMING − DECO 13 BECHLER

3.2 DESCRIPTION OF G-FUNCTIONS

G01 Linear Interpolation


G01 X1=1.1 Z1=−2.2 F0.1 T12
G02 Circular Interpolation clockwise
G02 X1=4 Z1=−4 R2 F0.1
G03 Circular Interpolation counter-clockwise
G03 X1=4 Z1=−4 R2 F0.1
G04 Dwell : idle time in seconds at 100% override
G04 X0.4
G13 Loop Start
G13

G26 / G27 CHAMFER PROGRAMMING


By definition the chamfer must be programmed between two segments (i.e.
two segments entered over G01) and within a single operation.
If one or both segments are circular, the programming is called Simplified Con-
tour Programming.
For Simplified Contour Programming, only G26 (Circular Chamfer Link) is
enabled. G27 (Linear Chamfer Link) would produce an error.
G26 or G27 entered in the last segment of an operation are of no conse-
quence, i.e. two segments of two different operations cannot be automatically
chamfer-linked.
G26 Circular Chamfer Link

L
G26 L.... E....
L = Fillet Radius (facultative)
E = Tool path velocity for chamfer expressed in active units (facultative)

G27 Linear Chamfer Link

L
L = Chamfer Length for positive value (facultative)
L− L− = Chamfer Length / 1.414 for negative value (facultative)
E = Tool path velocity for chamfer expressed in active units (facultative)

Notes :  Settings entered under L are saved for G26 and G27 separately.
Parameter L is facultative and when omitted, G26/G27 will take its last
setting entered in G26/G27.
If no settings are given under L, G26 will take the default settings from
Default Radius Box and G27 from ChamferLength Box in the Global
section of the machine database.
 The last setting entered under E is saved and remains identical for G26
and G27.

300482 E − 07/99 Chap. 3.2 /3


TORNOS
PROGRAMMING − DECO 13 BECHLER
Parameter E is facultative and, if omitted, G26/G27 takes its last setting.
If no E settings are available, G26/G27 will take the last velocity setting
for the segments.
 Angle or fillet to be entered between the movement programmed in the
same block and the movement in the next block.
 Linear chamfer is perpendicular to the bisecting line of the angle for−
med by the two chamfer-lined segments.
 Circular chamfer is tangent with the two chamfer-lined segments.
Example of programming :
G91 G94 G81
T11
G1 Z1=−5 F1000 G26 L0.3 E50
G1 X1=5 G27 L−0.5 E100
G1 Z1=−2 X1=2 G26 L0.3
G1 Z1=2 X1=2 G26 L0.2
G1 Z1=−3 X1=−1 G26 L0.3
G1 X1=3
G3 Z1=−1.5 X1=−3 R1.5
G2 Z1=−1.5 X1=−3 R1.5
G1 X1=3 G26 L0.3
G1 Z1=−2 X1=−2 G27 L2
G1 Z1=−5 G27 (corresponding to G27 L2 E100)
G1 X1=−5 G26 (corresponding to G26 L0.3 E100)
G1 Z1=−3

G28 Referencing: Parameters are facultative. If no parameter is given, all axes in


the block return to their reference point. A dwell to be programmed after G28
block to let the axis return to its reference point. This procedure enables
sequenced returns (axis by axis).
G28 X2 Y2
G04 X3
G28 X1
G4 X0.8
G28 Z1 Y1
G4 X5
Note : G28 is used only when the actual position of the axis is unknown.
G28 runs always at 100% feedrate.
Enter a dwell to let axis return to its REF before you command another move.

Chap. 3.2 /4 300482 E − 07/99


TORNOS
PROGRAMMING − DECO 13 BECHLER

RESTRICTIONS :  Make absolutely sure to enter G28 in the INIT program only because
only here the actual position of the axis is unknown.
 In the other programs (first of all Main Program No. 02), use System
Variables #24, #25, #26 to reference the axes (see the description of
System Variables, Para. 7.2.1).
Example :
G52 Z3
G1 Z3=#24 X3=#25 G100 T0
CANCEL ALL ZERO OFFSETS,
REFERENCE 1st MASTER AXIS (Z3) OVER #24 and 2nd (X3) OVER #25.

G33 Threading, constant lead


G33 indicates a single synchronized threading cut with synchronized spindle.
F = Thread Lead [mm/rev]
Feedrate is equal to the programmed lead [mm/rev]. Contouring Functions
G1, G2 and G3 with G100 can be used with G33.
G130 N3
G01 X2=−3 F0.2
G33 G01 X2=−2 F1 T12
....
G34 Threading, increasing lead
L= Increase [mm/rev] of the Initial Lead F.
...
G34 L0.2 G01 Z1=−4 F1
G34 L0.1 G01 X1=2 F1
....
G35 Threading, decreasing lead
L= Decrease [mm/rev] of the Initial Lead F.
...
G35 L0.2 G01 Z1=−4 F1
G35 L0.1 G01 X1=2 F1
....

G40* Cutter Compensation cancel


G40
G41 Cutter Compensation, left
G41
G42 Cutter Compensation, right
G42

300482 E − 07/99 Chap. 3.2 /5


TORNOS
PROGRAMMING − DECO 13 BECHLER

ZERO OFFSETS

Xm X X X X

Zm Z Z Z Z

G56 G55 G54


G53
G55
G53
G58
G59
G52
Offset
fixation Org1 Org2

G52 Cancel All Zero Offsets (datum shifts). Coordinate system begins at Machine
Zero and is again valid for the axis / axes concerned.
G52 (enabled for all axes)
G52 X1 Z1 (enabled for X1 and Z1 only)
G52 X1 (enabled for X1 only)
G53 Cancel All Additional Zero Offsets (datum shifts) entered over G54 and
G55. Saved Org2 is deleted for the axes concerned.
G53 (enabled for all axes of Operation Line)
G53 X2 Z1 (enabled for X2 and Z1 only)
G54 Additional Zero Offset (datum shift) against current coordinate system. This
offset is additional for the axes concerned. The offset value is added to Org2.
G54 X3=5.15 Z3=3.2
G54 Z1=16
G55 Additional Zero Offset Against Initial Coordinate System (Part Zero).
G55 cancels G54. Changes offset value of Org2.
G55 X3=5.15 Z3=3.2
G55 Z1=16
G56 Zero offset (datum shift) against Machine Zero. The initial G56 settings at
each program start are those entered in Part Manager.
G56 X3=5.15 Z3=3.2
G56 Z1=16
G58 Save All Zero Offsets (datum shifts) and reset them for the axes concerned
to cut with respect to Machine Zero.
G58 saves Org1 and Org2 before deleting them.
G58 (enabled for all axes of Operation Line)
G58 X2 Z1 (enabled for X2 and Z1 only)

Chap. 3.2 /6 300482 E − 07/99


TORNOS
PROGRAMMING − DECO 13 BECHLER

G59 Restore all zero offsets (datum shifts)


saved over last G58 for the axes concerned.
G59 copies in Org1 and Org2 the settings saved by G58.
G59 (enabled for all axes of Operation Line)
G59 X2 Z1 (enabled for X2 and Z1 only)
G68* Cancel G69
G68 G70
G69 Calculate 360 Modulo for Rotary Axis
Angular programming value is reduced to 1 revolution (360°).
G1 Z1 = −20 C1260 (Angular movement of 3.5 revolutions)
G69 G1 Z1=0 C0 (Angular movement of 180°)

G70 / G71 INCH / METRIC DATA INPUT


Distinguish two different cases :
 INCH / METRIC machine (i.e. you can program in inch or metric)
 Default INCH / METRIC Programming
You can select the case in the machine database
over the Interface icon and check boxes.

G70 Inch Data Input


Input data are interpreted in inch.
G71* Metric Data Input
Input data are interpreted in metric units.

For INCH machine (IsMachInch()), the number of decimal points for the data
edited in the Edit Global Variables and in the Fixation Correction dialog
boxes passes from 3 to 4.
Note : Tool Catalogue retains 4 decimal points in both cases.

(1) INCH Machine


With the inch machine setup, the tool catalogue data, the fixation offsets
and the global variables are processed in inch.
(2) Default INCH Programming
The default header of operations is already in inch for the code entry in
inches.
Data can be input with 5 decimal points.

CONFIGURATIONS
(1) INCH Machine and INCH Programming
INCH tool presetter and INCH plane
to configurate in Machine Database
over the Interface icon and check boxes :
.....
[MACROCODE]
Header=G82 G85 G90 G95 G190 G68 G70
Footer=G82 G85 G90 G95 G190 G68 G70

300482 E − 07/99 Chap. 3.2 /7


TORNOS
PROGRAMMING − DECO 13 BECHLER

(2) INCH Machine and METRIC Programming


INCH tool presetter and METRIC plane
to configurate in Machine Database
over the Interface icon and check boxes :
.....
[MACROCODE]
Header=G82 G85 G90 G95 G190 G68 G71
Footer=G82 G85 G90 G95 G190 G68 G70
......

(3) METRIC Machine and METRIC Programming


METRIC tool presetter and METRIC plane
to configurate in Machine Database
over the Interface icon and check boxes :
.....
[MACROCODE]
Header=G82 G85 G90 G95 G190 G68 G71
Footer=G82 G85 G90 G95 G190 G68 G71
......

(4) METRIC Machine and INCH Programming


METRIC tool presetter and INCH plane
to configurate in Machine Database
over the Interface icon and check boxes :
.....
[MACROCODE]
Header=G82 G85 G90 G95 G190 G68 G70
Footer=G82 G85 G90 G95 G190 G68 G71
......
Within an operation, you can also mix the inch and metric programming over
G70 and G71. The tool catalogue data and the fixation offsets are always con-
verted into the active units.
All figures in the machine database (File *.MD) are always in metric units
(including Tool Support settings)

G71 (metric) and G70 (inch) COMPARED


G71 G70
Asynchronous feedrates : [mm/min] [inch/min]
limits 0 to 12000 0 to 472
Synchronous feedrates : [mm/rev] [inch/rev]
Positioning : [mm] [inch]
Data format : xxxxx.xxxx xxxx.xxxxx

Chap. 3.2 /8 300482 E − 07/99


TORNOS
PROGRAMMING − DECO 13 BECHLER

G81 Linear Extension for Cutter Compensation


G81 specifies a linear tool path on changing direction.
G41 G81

G82* Circular Extension for Cutter Compensation


G 82 specifies a circular tool path on changing direction.
G42 G82

AXES PERMUTATION
G83 Permute Axes for Main Plane of Interpolation
On Comb-Gang 1 : Z1 is Master Axis 1 (by default)
X1 is Master Axis 2 (by default)
Y1 is Slave Axis (by default)
On Comb-Gang 2 : Z1 is Master Axis 1 (by default)
X2 is Master Axis 2 (by default)
Y2 is Slave Axis (by default)
Operation Line of three axes has two Master Axes and one Slave Axis.
G18 plane (for G02/G03) is specified by two Master Axes of the operation line.
G83 permutes Slave Axis with Master Axis 2 to provide two different axes for
G18 plane.
G83
G84 Permute Axes for Main Plane of Interpolation
Function identical with G83. G84 permutes Slave Axis with Master Axis 1.
G84
G85* Reestablish Main Plane as Specified in Operation Line.
Cancel G83 or G84
G85

300482 E − 07/99 Chap. 3.2 /9


TORNOS
PROGRAMMING − DECO 13 BECHLER

G90* Absolute Dimension


G90 G94 G190
G91 Incremental Dimension
G91 G94 G190

ASYNCHRONOUS / SYNCHRONOUS FEEDRATES

G94 Asynchronous Feedrate [mm/min]


G90 G94 G190
G95* Synchronous Feedrate [mm/rev]
G90 G95 G190
For the PNC-DECO control all axes are independent of each other: For this
reason spindle speeds are in no way related to feedrates.
Feedrates [mm/rev] are controlled according to the programmed spindle
speeds and converted then to [mm/min].
The programmed feedrate [mm/rev] is real on the machine only when the
spindle and axis overrides are identical, usually 100% by default.
Feedrate [mm/rev] is disregarded when :
 overriding axis feedrate only, i.e. axis feedrate changes while spindle
speed does not.
 overriding spindle speed only, i.e. spindle speed changes while axis
feedrate does not.
To avoid problems with relating spindle speeds to the calculation of feedrates
[mm/rev], set up the program as follows :
S1 in Operation Line of Comb-Gang 1
S2 in Operation Line of Comb-Gang 2
S3 in Operation Line of Frontwork Gang
S4 in Operation Line of Backwork Gang

Chap. 3.2 /10 300482 E − 07/99


TORNOS
PROGRAMMING − DECO 13 BECHLER

COMPUTING FEEDRATE [mm/rev] in G95


Spindle state Spindle state
Operation
before operation after operation
Comb-Gang 1 : X1 Y1 Z1 S1
M103 S5000 M103 S5000
M203 S5000 M203 S5000
No spindle speed programmed
M303 S5000 M303 S5000
M403 S5000 M403 S5000
If no spindle speed is programmed in the operation, the last speed programmed in the
operation line will be taken for the feedrate calculation. The calculated feedrate is correct.

M103 S5000 M103 S10000


Spindle speed programmed
M203 S5000 M203 S5000
M103 S10000
M303 S5000 M303 S5000
G1...
M403 S5000 M403 S5000
Spindle speed change in the operation. The programmed spindle speed is related to the
axes in the operation line. The feedrate calculation is correct.

Spindle state Two simultaneous Spindle state


before operation operations after operation
Comb-Gang 1 : X1 Y1 Z1 S1
M103 S5000 Speed speed programmed M103 S10000
M203 S5000 M103 S10000 M203 S5000
M303 S5000 M303 S10000 M303 S10000
M403 S5000 G1... M403 S5000
Frontwork Gang : X3 Z3 S3
M103 S5000 M103 S10000
M203 S5000 No spindle speed programmed M203 S5000
M303 S5000 G1... M303 S10000
M403 S5000 M403 S5000
S1-spindle speed change. The programmed spindle speed is related to the axes in the
operation line. The feedrate calculation is correct.
S3-spindle speed change. The programmed spindle speed is not related to the axes in the
operation line. The feedrate calculation is incorrect.
S3-spindle speed will be at 10000 rpm but the feedrate will be calculated with 5000 rpm.

300482 E − 07/99 Chap. 3.2 /11


TORNOS
PROGRAMMING − DECO 13 BECHLER

G100 Rapid Traverse


(unproductive movement)
G100 optimizes unproductive motions :
At first the system determines the highest possible traversing rate between
between the axis start and end points. If however the axis reaches its end point
too soon, it will have to stand by for action. If so, the system recomputes the
rate down, which brings the axis to its end point a little later, i.e. right before
it is required to move into action again.
G01 G100 X3=26 Z3=54 T12

G113 Loop End


G113

G130 Start of Threading Specification


(See Threading Cycle, Para. 6.2.3)

G131 End of Threading Specification


(See Threading Cycle, Para. 6.2.3)

G190* Exact Stop (between segments)


G90 G94 G190

G191 Continuous Contouring


G68 G70 G191

G250 Cancel Polygoning for S2−Spindle


enabled by G251.
Polygoning can be cancelled by Functions M205 or M203 S...
G250

G251 S2-Spindle On (specified by hundreds) for Polygoning


Polygoning Tool T must be enabled BEFORE the block.
Negative value in Parameter Q reverses spindle rotation direction.
Polygoning Spindle S2 with Reference Spindle S1
Polygoning Phase Shift
If you need a phase shift in relation to another machining operation, apply the
following rule :
 Multiply Phase Shift [°] by Polygoning Ratio in Variable R of G251.
e.g.
Polygoning Ratio 2 : G251 R2 Q0
Part Measurement Error : 10°
Phase Shift to enter : 10° x 2 = 20°
Resulting ISO code : G251 R2 Q20

Chap. 3.2 /12 300482 E − 07/99


TORNOS
PROGRAMMING − DECO 13 BECHLER

G314 Circular Interpolation for Arcs > 180


Path > π for G02/G03
G02 X2=3 Z2=5 R1 G314

G2 G314

G3 G314

G550 Cancel Polygoning for S5-Spindle


enabled by G551.
Polygoning can be cancelled by Functions M505 or M503 S...
G550

G551 S5-Spindle On (specified by hundreds) for Polygoning


Polygoning Tool T must be enabled BEFORE the block.
Negative value in Parameter Q reverses spindle rotation direction.
Polygoning Spindle S5 with Reference Spindle S4
Polygoning Phase Shift
If you need a phase shift in relation to another machining operation, apply the
following rule :
 Multiply Phase Shift [°] by Polygoning Ratio in Variable R of G551.
e.g.
Polygoning Ratio 2 : G551 R2 Q0
Part Measurement Error : 10°
Phase Shift to enter : 10° x 2 = 20°
Resulting ISO code : G551 R2 Q20

G900 Initialize Spindles with Settings Specified for Part


G900 turns all spindles ON with settings specified in Part Manger.
Operation Line with G900 does not affect starting the spindles.

G901 Initialize Sequences


G901 places commands necessary to realize program sequences.
G901 is always indispensable for a part with at least two programs.
Preferably put G901 at the program start i.e. in its initialization.

300482 E − 07/99 Chap. 3.2 /13


TORNOS
PROGRAMMING − DECO 13 BECHLER

Chap. 3.2 /14 300482 E − 07/99


TORNOS
PROGRAMMING − DECO 13 BECHLER
4. M-FUNCTIONS (MISCELLANEOUS)

4.1 M-CODE TABLE

Grp
Code Function Notes M/S Resp.
No.

(DO1921)
M1 Program stop, facultative 11 M No
Enter in a separate block
M2 Program stop, unconditional with reset (DO1922) 11 M No
M8 Coolant On (DO1904) 11 M No
M9 Coolant Off (DO1905) 11 M No
M10 Close spindle collet (DO1901) 12 M Yes
M11 Open spindle collet (DO1900) 12 M Yes
End-of-Part signal.
M20 (DO1923) 11 S No
Increments Part Count(er).
M32 Tool breakage check on Sensor 1 (DO1942) 12 S No
M33 Part presence check on Sensor 1 (DO1943) 12 S No
M34 Tool breakage check on Sensor 2 (DO1944) 12 S No
M35 Part presence check on Sensor 2 (DO1945) 12 S No
M36 Tool breakage check on Sensor 3 (DO1946) 12 S No
M37 Part presence check on Sensor 3 (DO1947) 12 S No
M45 HP pump On (option) (DO1950) 12 S Yes
M46 HP pump Off (option) (DO1951) 12 S Yes
M60 Load a new bar (DO1927) 11 S No
M82 Barfeed thrust On (DO1931) 12 S No
M83 Barfeed thrust Off (DO1932) 12 S No
M84 Advance pickoff spindle ejector (DO1954) 12 S Yes
M85 Retract pickoff spindle ejector (DO1955) 12 S Yes
M101 Program stop at End-of-Table (DO1920) 11 S No
(DO1700 if 4 spindles)
M103 S1-spindle On, cw 7 S No
Disregards W-Parameter.
(DO1700 if 4 spindles)
M104 S1-spindle On, ccw 7 S No
Disregards W-Parameter.
(DO1700 if 4 spindles)
M105 S1-spindle Off 7 M No
Disregards W-Parameter.
M110 Close pickoff spindle collet (DO1903) 12 S Yes
M111 Open pickoff spindle collet (DO1902) 12 S Yes
M118 S1-spindle synchro phase Disregards W-Parameter. 5 M No
M119 Oriented S1-spindle stop Disregards W-Parameter. 6 M No

300482 E − 07/99 Chap. 4.1 /1


TORNOS
PROGRAMMING − DECO 13 BECHLER
Grp
Code Function Notes M/S Resp.
No.

M150 Adjust feedrate (DO1940) 11 M No


M151 Cancel adjust feedrate (DO1941) 11 M No
M160 Advance part catcher (DO1906) 12 S Yes
M161 Retract part catcher (DO1907) 12 S Yes
M164 Close part gripper (DO1935) 12 S Yes
M165 Open part gripper (DO1936) 12 S Yes
M170 Enable Z4 torque limit (DO1890) 12 S No
M171 Disable Z4 torque limit (DO1891) 12 S No
M172 Enable Z4 servo-lag check (DO1892) 12 S No
M173 Disable Z4 servo-lag check (DO1893) 12 S No
M180 Advance long-part (LP) ejector (DO1980) 12 S Yes
M181 Retract LP ejector (DO1981) 12 S Yes
M182 Advance LP catcher thrustor (DO1982) 12 S Yes
M183 Retract LP catcher thrustor (DO1983) 12 S Yes
M184 Tip long part ON (DO1984) 12 S Yes
M185 Tip long part OFF (DO1985) 12 S Yes
M186 Check LP ejector advance (DO1986) 12 S Yes
M187 Check LP ejector retract (DO1987) 12 S Yes
M188 Check LP catcher thrustor advance (DO1990) 12 S Yes
M189 Check LP catcher thrustor retract (DO1991) 12 S Yes
M191 Adjust guidebush (DO1924) 11 S No
M192 Open guidebush (DO1926) 11 S No
M198 Switch S1 to rotary axis Disregards W-Parameter. 3 M No
M199 Reset S1 speed On. Cancel M198 Disregards W-Parameter. 3 M No
(DO1701 if 4 spindles)
M203 S2-spindle On, cw 7 S No
Disregards W-Parameter.
(DO1701 if 4 spindles)
M204 S2-spindle On, ccw 7 S No
Disregards W-Parameter.
(DO1701 if 4 spindles)
M205 S2-spindle Off 7 M No
Disregards W-Parameter.
M218 S2-spindle synchro phase Disregards W-Parameter. 5 M No
M219 Oriented S2-spindle stop Disregards W-Parameter. 6 M No
(DO1702 if 4 spindles)
M303 S3-spindle On, cw 7 M No
Disregards W-Parameter.
(DO1702 if 4 spindles)
M304 S3-spindle On, ccw 7 M No
Disregards W-Parameter.

Chap. 4.1 /2 300482 E − 07/99


TORNOS
PROGRAMMING − DECO 13 BECHLER
Grp
Code Function Notes M/S Resp.
No.

(DO1702 if 4 spindles)
M305 S3-spindle Off 7 M No
Disregards W-Parameter.
(DO1703 if 4 spindles)
M403 S4-spindle On, cw 7 S No
Disregards W-Parameter.
(DO1703 if 4 spindles)
M404 S4-spindle On, ccw 7 M No
Disregards W-Parameter.
(DO1703 if 4 spindles)
M405 S4-spindle Off 7 M No
Disregards W-Parameter.
M418 S4-spindle synchro phase Disregards W-Parameter. 5 M No
M419 Oriented S4-spindle stop Disregards W-Parameter. 6 M No
M498 Switch S4-spindle to rotary axis Disregards W-Parameter. 3 M No
M499 Reset S4-spindle On. Cancel M498 Disregards W-Parameter. 3 M No
(DO1704) &
M503 S5-spindle On, cw (DO1710−DO1724) 7 M No
Disregards W-Parameter.
(DO1704 if 4 spindles)
M504 S5-spindle On, ccw 7 M No
Disregards W-Parameter.
(DO1704) &
M505 S5-spindle Off (DO1710−DO1724) 7 M No
Disregards W-Parameter.
M603 S6-spindle On, cw 7 S No
M604 S6-spindle On, ccw 7 S No
M605 S6-spindle Off 7 M No
M800 DO setting 11 S Yes
Enter in a separate block
M801 Enforce new path creation 1 S No
and with no parameters.
M811 Enable Output 1 on Optional Socket 1 (Y4.6) (DO1763/DO1765) 11 M Yes
M812 Disable Output 1 on Optional Socket 1 (Y4.6) (DO1763/DO1765) 11 M Yes
M813 Enable Output 2 on Optional Socket 1 (Y4.4) (DO1764/DO1766) 11 M Yes
M814 Disable Output 2 on Optional Socket 1 (Y4.4) (DO1764/DO1766) 11 M Yes
Generate 100 ms impulse to enable
M815 Socket 1 check. Check is over as soon as (DO 1754) 11 S No
code processing starts.
M821 Enable Output 1 on Optional Socket 2 (Y4.2) (DO1783/DO1785) 11 M Yes
M822 Disable Output 1 on Optional Socket 2 (Y4.2) (DO1783/DO1785) 11 M Yes
M823 Enable Output 2 on Optional Socket 2 (Y4.0) (DO1784/DO1786) 11 S Yes
M824 Disable Output 2 on Optional Socket 2 (Y4.0) (DO1784/DO1786) 11 S Yes

300482 E − 07/99 Chap. 4.1 /3


TORNOS
PROGRAMMING − DECO 13 BECHLER
Grp
Code Function Notes M/S Resp.
No.

Generate 100 ms impulse to enable


M825 Socket 2 check. Check is over as soon as (DO 1774) 11 S No
code processing starts.
Enable Output Y4.3=1
M831 (DO1803/DO1805) 11 S Yes
(if stated with K10.0=1)
Disable Output Y4.3=0
M832 (DO1803/DO1805) 11 S Yes
(if stated with K10.0=1)
Enable Output Y4.1=1
M841 (DO1823/DO1825) 11 S Yes
(if stated with K10.1=1)
Disable Output Y4.1=0
M842 (DO1823/DO1825) 11 S Yes
(if stated with K10.1=1)
Enable Output Y5.6=1
M851 (DO1843/1845) 11 S Yes
(if stated with K10.2=1)
Disable Output Y5.6=0
M852 (DO1843/1845) 11 S Yes
(if stated with K10.2=1)
Air ON in MDI
M880 (DO1850) 11 S No
Laser Sensor 1 (Y1.6=1)
Air OFF in MDI
M881 11 S No
Laser Sensor 1 (Y1.6=0)
Air ON in MDI
M882 (DO1851) 11 S No
Laser Sensor 2 (Y1.4=1)
Air OFF in MDI
M883 11 S No
Laser Sensor 2 (Y1.4=0)
Air ON in MDI
M884 (DO1852) 11 S No
Laser Sensor 3 (Y1.2=1)
Air OFF in MDI
M885 11 S No
Laser Sensor 3 (Y1.2=0)
Cool & flush pickoff spindle collet
M886 (DO1856) 11 S No
ON / OFF in 2 s (Y4.5)
Enable Output Y4.3=1 /
M887 (DO1857) 11 S No
Disable in 2 s (if stated with K10.0=0)
Enable Output Y4.1=1 /
M888 (DO1860) 11 S No
Disable in 2 s (if stated with K10.1=0)
Enable Output Y5.6=1 /
M889 (DO1861) 11 S No
Disable in 2 s (if stated with K10.2=0)
M890 Enable Output Y5.4=1 NSK HF-Spindle (DO1862) 11 S No
M891 Disable Output Y5.4=0 NSK HF-Spindle (DO1863) 11 S No
M892 Enable Output Y5.2=1 NSK HF-Spindle (DO1864) 11 S No
M893 Disable Output Y5.2=0 NSK HF-Spindle (DO1865) 11 S No

Chap. 4.1 /4 300482 E − 07/99


TORNOS
PROGRAMMING − DECO 13 BECHLER
Grp
Code Function Notes M/S Resp.
No.

M894 Enable Output Y5.0=1 Deep Drill’g Pump (DO1866) 11 S No


M895 Disable Output Y5.0=0 Deep Drill’g Pump (DO1867) 11 S No

300482 E − 07/99 Chap. 4.1 /5


TORNOS
PROGRAMMING − DECO 13 BECHLER

Explanations :
Grp No. Function Group No. (see also Para. 3.1.1)
M modal : Function remains active until replaced by another function of
same group.
S sequential : Function remains active in segment only.
Resp. response : All functions with the (anticipated) response-enabling Yes in the table
above can be accompanied by Parameter D specifying (Anticipated)
Response Time [ms] of a particular item independently of the over-
ride.
LP long part
Notes :  All M functions are executed DURING the block :
Enter M-function in the next block if you want it to be executed AFTER the block.

 No block interpretation time is necessary for PNC-DECO and all synchros are pos-
sible !
 1 segment = 1 M-function.

 All M functions can be accompanied by W-Parameter to shift the segment in time [ms]
at 100% override.
But for all spindle functions, W-Parameter is disregarded !

Examples of application :
M11 Classical programming.
M10 W100 Function is delayed by 100 ms at 100% override.
M10 D10=300 M10-function enable will respond in 300 ms.
M11 W150 D11=250 M11-function will be enabled in150 ms (acc. to feedrate override)
after entering, but also including 250 ms response time (independently
of feedrate override).
M1 W50 M1-function is delayed by 50 ms against the value entered.

Chap. 4.1 /6 300482 E − 07/99


TORNOS
PROGRAMMING − DECO 13 BECHLER

4.2 DESCRIPTION OF M-FUNCTIONS

M1 Program Stop, facultative


Can be enabled / disabled from the machine control panel.
G1 G100 Z1=0.5
M1

M10 Close Spindle Collet


Make sure to enter a dwell to let the collet time to close.
G1 G100 Z1=0
M10
G4 X0.2
G1 G100 Z1=0.2

M11 Open Spindle Collet


Make sure to enter a dwell to let the collet time to open.
G1 G100 Z1=0
M11
G4 X0.2
G1 G100 Z1=0.2

M45 High Pressure Pump On, optional


To use the function, enable M8 Coolant On.

M101 Program Stop at End-of-Table


Enables End-of-Table: As soon as the function processing starts, the axes
move to their End-of-Table position. The part machined is not completed.
The function is used for setups.

M103 − M603 Spindle On, cw


Makes spindle turn clockwise.
The function is sequential: S, entered alone, and M without speed setting are
disabled.
Hundreds (1 to 6) specify the spindle to engage.
M203 S1400
M203 S1450.2

300482 E − 07/99 Chap. 4.2 /7


TORNOS
PROGRAMMING − DECO 13 BECHLER

M104 − M604 Spindle On, ccw


Makes spindle turn counter-clockwise.
The function is sequential: S entered alone as well as M-function without
speed setting are disabled.
Hundreds (1 to 6) specify the spindle to put On.
M204 S1400
M204 S1450.2
M105 − M605 Spindle Off
Stops and disengages the spindle and erases the value entered.
The function is modal. Hundreds (1 to 6) specify the spindle to stop.
M118 − M418 Spindle Synchro Phase
Enables Phase Synchro mode for the spindle specified by hundreds (1,2,4).
The figure entered with S specifies Master Spindle (i.e. reference spindle).
M318 does not exist.
Make sure to enter an identical speed for the two spindles concerned before
you program a phase synchro :
e.g. M103 S4000 (S1-Master Spindle)
M404 S4000 (S4-Slave Spindle)
M418 S1 (S1-S4 synchro)
If the slave spindle is off or turns slower/faster than the master spindle the
resulting phase synchro is deficient and leads to angular positioning errors on
the work.
M119 − M419 Oriented Spindle Stop
Enables Positioning Mode for the spindle specified by hundreds (1,2,4). The
figure entered with Q is the positioning angle [°] which must be 0° to 359.99°.
The positioning is always in absolute dimension .
G90/G91 do not affect positioning.
M319 does not exist.
M119 Q32.432 Oriented (main) S1-spindle stop

Recommended Dwell Settings for S1 and S4


Rule
Dwell
Spindle Speed To establish the spindle-stop dwell
to enter
to enter, you can assume :
S0 to S3000 G4 X0.45
S0 to S6000 G4 X0.9
0.15 s per
S1 S0 to S8000 G4 X1.2
1000 rpm
S0 to S10000 G4 X1.5
S0 to S12000 G4 X1.8
S0 to S3000 G4 X0.75
S0 to S6000 G4 X1.5
0.25 s per
S4 S0 to S8000 G4 X2
1000 rpm
S0 to S10000 G4 X2.5
S0 to S12000 G4 X3

Chap. 4.2 /8 300482 E − 07/99


TORNOS
PROGRAMMING − DECO 13 BECHLER

Before you program a positioned stop over M119 / M419 functions :


 Make sure to enter first M103 S0 / M403 S0 (0 speed) and a dwell to let the spindle time
to stop.
 Enter between two indexings and before axis, another dwell to let the spindle adequate time
for indexing. Generally a dwell of 0.4 to 0.5 s is adequate.
 Otherwise an alarm will be released for program run in auto mode and this in certain cases
only after an unspecified time duration.

S1 Main Spindle
j Note : Before you enter the stop, assume the spindle speed as given, e.g. S9000.
ISO Code for operation :
M103 S0 Zero speed
G4 X1.35 Dwell to let spindle reach zero speed
G1 G100 Z1=.3
G1 G100 X2=0 M119 Q0 0° indexing
G4 X.4 Dwell between two indexings
G1 G94 Z1=−4.5 F500
G1 G100 Z1=.3
M119 Q90 90° indexing
G4 X.4
G1 Z1=−4.5 F400
G1 G100 G95 Z1=.3
G1 G100 X2=3.2
M103 S9000

S4 Pickoff Spindle
j Note : Before positioned stopping, assume the spindle speed as given, e.g. S6000.
ISO Code for operation :
M403 S0 Zero speed
G4 X1.5 Dwell to let spindle reach zero speed
G1 G100 Z4=.3
M419 Q0 0° indexing
G4 X.4 Dwell between two indexings
G1 G94 Z4=−4.5 F500
G1 G100 Z4=.3
M403 S6000

300482 E − 07/99 Chap. 4.2 /9


TORNOS
PROGRAMMING − DECO 13 BECHLER

M150 Adjust Feedrate


M150 adjusts feedrate overrides against spindle speed overrides :
e.g. If spindle speed is at 80%, feedrate will be automatically set to 80%.
M151 Cancel Adjust Feedrate
Feedrate override takes over the figure it had before M150 was enabled.

M170/M171 Enable / Disable Z4 Torque Limit


M170 / M171 are included already in the basic model programs:
They are an important safety factor for part pickoff and their use as such is
obligatory even if it is possible to erase them.
M172/M173 Enable / Disable Z4 Servo-Lag Check
M172 / M173 are included already in the basic model programs:
They are an important safety factor for part pickoff and their use as such is
obligatory even if it is possible to erase them.

M198 / M498 ROTARY AXES


M198 Switch S1-Spindle to Rotary Axis (C1)
M498 Switch S4-Spindle to Rotary Axis (C4)
A spindle is programmed in rotary axis in the same way as for linear axis.
Hence a rotary axis is a complete axis and must be stated in the database.
It must also appear as axis in Operation Line.
Rotary axes are often inexistent physically but they do appear in Operation
Line.
The switched spindle is specified by hundreds 1 and 4.
A facultative Parameter D can be added to M198/M498. This D can contain
Value −1 (interpolation in polar coordinates) or Part Diameter allowing for work
in the “developed” rotary axis, i.e. programming on the developed circumfer-
ence.
Defaulted D gives a developed circumference of 360 mm or 36 inches. With
this, a Slave-Axis machining can be simulated to perform positioning in
degree-equivalent units.
Note : For Rotary Axis :
 All axis functions are enabled except Interlinked-Axes.
 Part Diameter in D, entered in M198 and M498 cannot be edited during
operation. This can be done when switching only.
 The switching remains active (also for other operations)
until reversed.
 Spindle is reset [0°] on switching.

Units :
G71 G70
Asynchronous feedrates : [mm/min] [inch/min]
Synchronous feedrates : [mm/rev] [inch/rev]
Positioning: [mm] [inch]
Parameter D: [mm] [inch]
Data format : xxxxx.xxxx xxxx.xxxxx

Chap. 4.2 /10 300482 E − 07/99


TORNOS
PROGRAMMING − DECO 13 BECHLER

Program sample :
M203 S1000
......
G1 X1=20 Z1=12 F1000 G94
G69
M198 D4
T22
G1 X2=10 F1000 G41
G3 C1=2.5 X2=7.5 R2.5
G3 C1=5 X2=10 R2.5
G1 X2=30
G3 C1=2.5 X2=32.5 R2.5
G3 C1=0 X2=30 R2.5
G1 C1=2 X2=20 G40
G1 X2=38 G90
M199
M103 S2500

M199 / M499 Reset Spindle On. Cancel M198


Resets initial spindle mode i.e. cancels Rotary Axis mode.
Hundreds specify spindles concerned, S1 or S4.
M199

M800 DO Setting
M800 enables / disables DOs (digital outputs).
M800 P1=1600 P2=−1601
Enables DO 1600 (positive)
Disables DO 1601 (negative)
M800 P1=1600 P2=−1601 D1=32 D2=16
Enables DO 1600 (positive) including 32 ms response i.e. of its reaction time
independent of feedrate override.
Disables DO 1601 (negative) including 16 ms response i.e. of its reaction time
independent of feedrate override.
You can add Time Shift [ms] at 100% override over W-Parameter.
M800 W16 P1=1600
Delays activation of DO 1600 by 16 ms.
M800 limits the number of DOs to 5.

300482 E − 07/99 Chap. 4.2 /11


TORNOS
PROGRAMMING − DECO 13 BECHLER

4.3 DO ALLOCATION ON OPTIONAL SOCKETS

Class 0

Class 0

Class 0

Event 7

 Flags 1 and 2 : reverse Inputs In1 and In2.


 Flags 3 and 4 : disable Inputs In1 and/or In2.
Flag indication 1 disables the input.
 Flag 5 : determines when check starts (ck).
 Flags 6 to 8 : determine actions to be enabled.
Gates 6, 7, 8, 9 are actually flip-flops to be reinitialized by PMC when
program starts.
 Flag 9 : enables Register Event 7.
(cf. the concept of sequences)

Chap. 4.3 /12 300482 E − 07/99


TORNOS
PROGRAMMING − DECO 13 BECHLER

4.4 RECAP OF LOGICAL FUNCTIONS


XOR (Gates 1 and 2)
A B Out
0 0 0
0 1 1
1 0 1
1 1 0

OR (Gates 3 and 4)
A B Out
0 0 0
0 1 1
1 0 1
1 1 1

AND (Gates 5 to 9)
A B Out
0 0 0
0 1 0
1 0 0
1 1 1

Flags Socket 1 Socket 2


1 1750 1770
2 1751 1771
3 1752 1772
4 1753 1773
5 1754 1774
6 1755 1775
7 1756 1776
8 1757 1777
9 1760 1780
Set OUT 1 1763−1765 1783−1785
Set OUT 2 1764−1766 1784−1786
Reset OUT 1 1765−1763 1785−1783
Reset OUT 2 1766−1764 1786−1784
RR1 1761 1781
RR2 1762 1782
RR1/2 enable reset of corresponding output for reset on the machine.

300482 E − 07/99 Chap. 4.4 /13


TORNOS
PROGRAMMING − DECO 13 BECHLER

4.5 SAMPLE PROGRAMMING FOR ADDITIONAL DRILL SENSOR

 First configurate the optional socket for the sensor to be mounted on.
Configurate preferably outside the loop of the main program :
E.g.: Put a sensor on Socket 1 and consequently use Output 1 and Input 1 of Socket 1.
In tool absence, enable an alarm.
j Note : On initialization, all DOs indicate 0.

The code line for this configuration is as follows :


M800 P1=1753 P2=1756 (1753=Cancel In2; 1756=Select Alarm Class 1)

To check an alarm in tool presence, the above line will look as follows :
M800 P1=1753 P2=1756 P3=1750 (1750=Reverse signal on Input 1)

 Now enable program loop check as follows :


M815 Impulse to start checking
M811 D811=300 Sensing command with 300 ms response time
M812 Cancel sensing command

SENSOR CHECK TIMING DIAGRAM


300 ms ITP (8 ms)

OUT1 100 ms

DO 1754 (M815)

Sensor motion

Time (ITP)

M81
5
M81
1
M81
2

Chap. 4.5 /14 300482 E − 07/99


TORNOS
PROGRAMMING − DECO 13 BECHLER

4.6 INTERPOLATION IN POLAR COORDINATES (TRANSMIT FUNCTION)

Interpolations in polar coordinates are programmed in a Cartesian plane, i.e. in X, Y-coordi-


nates. For programming movements and only for them, the combination of C-axis and X-axis
is used.

 Enter −1 as a facultative parameter of M198.


 Enter M198 D−1 to enable the function.
 Enter M199 to disable the function.

Operation Line with M198 D−1 code for machining in polar coordinates must have X-axis as
Master Axis 1, C-axis as Master Axis 2 and a third axis as Slave Axis (e.g. Z).

Master Axis 1 must be absolutely a diameter axis (X), i.e. an axis of machining on diameter.

Example : MILLING A SQUARE


14

300482 E − 07/99 Chap. 4.6 /15


TORNOS
PROGRAMMING − DECO 13 BECHLER

After switching to polar coordinates with M198 D−1, the X and C-axes are defined as shown
below :

2 1

X− X

3 4

C−

Correct Positioning of Part Zero at Bar Center :


 Make absolutely sure to put the initialize block before the M198 D−1 block and that it calls
all axes.
The initialize block must look as follows (for Operation Line with X2, C1 Z1) :
G1 G100 X2=... Z1=... T...
The rotary axis does not exist at this moment. So, with the initialize block as such, there is no
need to generate a movement.

X and C axis coordinates


Point * X C
1 14 7
2 −14 7
3 −14 −7
4 14 −7
* Points 1 to 4 see Fig. above

The part is then programmed in a new Cartesian plane defined by X and C axes.

Restrictions :
 Avoid passing through the part center during an interpolation in polar coordinates.
 Reduce the feedrate near the center to avoid abrupt motions (180°) of the rotary axis.
F100 F100

F10
F100

Chap. 4.6 /16 300482 E − 07/99


TORNOS
PROGRAMMING − DECO 13 BECHLER

Programming with Cutter Compensation :


 To facilitate programming, use cutter compensation over G41 or G42.
 Cut the said square with a 63 mm-∅ saw on a polygoning attachment in Position T24
(20mm-capacity DECO2000 lathe).
The square form will be obtained by combining the X2 and C1 motions.

Tool Geometry :
 Enter X geometry for cutter center :
e.g. for a 40 mm-∅ saw: D = 63, geometry X = −80

L
X

Programming and Diagram of Cutter Approach :


(Diagram, see overleaf)

On one hand, the cutter diameter is much bigger than that of the bar, on the other hand, the
X travel is limited, which requires a very careful programming (enabling G41 or G42) of the
approach movement.

 Make absolutely sure that after enabling cutter compensation the distance between the bar
center and any point on the tool center path be shorter than or equal to the maximum value
of the SOFTware limit switch of the X-axis.

 Also, avoid “plunging” effect of cutter compensation when a segment to cut (e.g. a shoulder)
is shorter than the cutter radius.
A possible procedure (which is not general and depends largely upon the form to cut) is to
program a Fictitious Point 2 and an Approach Point 3 on the contour, the latter avoiding the
plunging. Consequently, Point 6 cannot be used. Compensation Point 2‘ will be computed
in accordance with Starting Point 1, Fictitious Point 2 and Approach Point 3 on the part con-
tour. The cutter approach having been entered, the contour can be programmed.

300482 E − 07/99 Chap. 4.6 /17


TORNOS
PROGRAMMING − DECO 13 BECHLER
ISO-code :
(1.) G1 X2=160 Z1=−4 G100 T24 G94
(2.) M198 D−1
(3.) (APPROACH AND PREPARE
CONTOURING)
(4.) G1 X2=70 C1=−55 G100 T24 G42
(5.) G1 X2=14 C1=7 F500
(6.) G1 X2=−14 C1=7
(7.) G1 X2=−14 C1=−7
(8.) G1 X2=14 C1=−7
(9.) G1 X2=14 C1=7
(10.) (PREPARE EXIT)
(11.) G1 X2=0 C1=10
(12.) G3 X2=0 C1=−10 G100 R10
(13.) G3 X2=20 C1=0 G100 R10
(14.) (EXIT FROM CONTOUR)
(15.) G1 X2=160 C1=0 G100 G40
(16.) M199

Notes : Path 1 − 2 −3 : programmed approach


Path 1 − 2‘ −3‘ : resultant approach path (G42 enabled)
Fictitious Point 2 can be graphically determined for approach off stock only and
as such need not be very precisely located.
The disabling of cutter compensation requires as much attention as the pro-
gramming of the cutter approach :
The axes must be in the same (machine) positions for the M199 disab-
ling and the M198 D−1 enabling of polar coordinates interpolation.
Hence, you may have to move around the part before cancelling the cut-
ter compensation with G40, Blocks (11.) to (13.) above.

Other Important Notes :


Software limit switch check for X and C is disabled during interpretation.
The sum of X and C displacements must be nil.
 Use M198 D−1 and M199 in one operation for them both.
Rotary C-axis alone or in polar coordinates interpolation cannot be pro-
grammed unless M198 is enabled.
 Free the spindle, involved in polar coordinates programming, from all
other functions such as positioning, sychro, etc.

Chap. 4.6 /18 300482 E − 07/99


TORNOS
PROGRAMMING − DECO 13 BECHLER

300482 E − 07/99 Chap. 4.6 /19


TORNOS
PROGRAMMING − DECO 13 BECHLER

5. T-FUNCTIONS

5.1 SPECIFY TOOLS

Each tool is specified by Txx, xx designating the 1st or 2nd geometry.


The 1st geometry name corresponds also to the support name.
The geometries are entered in the tool catalogue as soon as the tool is generated.
The tools are distributed on the different tool systems in the following manner :

X1Y1 COMB-GANG TOOLS


1st geometry 2nd geometry Support
T11 T16 11
T12 T17 12
T13 T18 13
T14 T19 14
T15 T20 15

X2Y2 COMB-GANG TOOLS


1st geometry 2nd geometry Support
T21 T26 21
T22 T27 22
T23 T28 23
T24 T29 24
T25 T30 25

FRONTWORK GANG TOOLS


1st geometry 2nd geometry Support
T31 T35 31
T32 T36 32
T33 T37 33
T34 T38 34

300482 E − 07/99 Chap. 5.1 /1


TORNOS
PROGRAMMING − DECO 13 BECHLER

AXIAL BACKWORK GANG TOOLS


1st geometry 2nd geometry Support
T41 T44 41
T42 T45 42
T43 T46 43

CROSS BACKWORK GANG TOOLS


1st geometry 2nd geometry Support
T51 T54 51
T52 T55 52
T53 T56 53

T40 Pickoff spindle geometrics for part pickoff


T50 Part gripper / tray geometrics for part disposal

Chap. 5.1 /2 300482 E − 07/99


TORNOS
PROGRAMMING − DECO 13 BECHLER

5.1.1 Support

The mounting position of each tool is called support. The 1st geometry’s name corresponds to
the support’s name.
A value of offset against the geometry reference point is input in the machine database for each
support.
For more than two geometries required for a support, use Tool Names T60 to T91, even num-
bers for the 1st geometry and odd numbers for the 2nd geometry.
Example : T60/T61, T62/T63...

5.1.2 What Is T0 For ?

T0 cancels geometry. When entered, it deletes tool geometrics and tool support data.

5.1.3 QUADRANTS

+X

1 2 3 4
P P

S S
+Z
S S

P P
+X

5 6 7 8 9
P

P S S
+Z
S S P P−S

300482 E − 07/99 Chap. 5.1.3 /3


TORNOS
PROGRAMMING − DECO 13 BECHLER

5.2 CIRCULAR INTERPOLATION INDEXING OF TOOLS ON


X1Y1 COMB-GANG

5.2.1 Y+ Indexing on X1Y1 Comb-Gang

Index T11 to T12


ISO Code :
G84
G2 G100 X1=20 Y1=0 T12 R30
G85
ISO Representation : Real Representation of Motion

T12
X1

G2
T11

Y1

5.2.2 Y− Indexing on X1Y1 Comb-Gang

Index T12 to T11


ISO Code :
G84
G3 G100 X1=20 Y1=0 T11 R30
G85
ISO Representation : Real Representation of Motion

T12
X1

G3
T11

Y1

Chap. 5.2.2 /4 300482 E − 07/99


TORNOS
PROGRAMMING − DECO 13 BECHLER

5.3 CIRCULAR INTERPOLATION INDEXING OF TOOLS ON


X2Y2 COMB-GANG

5.3.1 Y+ Indexing on X2Y2 Comb-Gang

Index T21 to T22


ISO Code :
G84
G2 G100 X2=20 Y2=0 T22 R30
G85
ISO Representation : Real Representation of Motion

T22
X2

G2
T21

Y2

5.3.2 Y− Indexing on X2Y2 Comb-Gang

Index T22 to T21


ISO Code :
G84
G3 G100 X2=20 Y2=0 T21 R30
G85
ISO Representation : Real Representation of Motion

T22
X2

G3
T21

Y2

300482 E − 07/99 Chap. 5.3.2 /5


TORNOS
PROGRAMMING − DECO 13 BECHLER

5.4 INDEXING FRONTWORK GANG TOOLS

Index T31
ISO Code :
G1 G100 X3=0 T31
G1 G100 Z3=18 M304 S8000

5.5 INDEXING BACKWORK GANG TOOLS

Axial Backwork Gang (T41 − T44)


Index T42
ISO Code :
G1 Z4=20 X4=0 Y4=0 G100 T42

Cross Backwork Gang (T51 − T53)


Index T51
ISO Code :
G1 Z4=20 X4=−13 Y4=0 G100 T51 M404 S3000

Chap. 5.5 /6 300482 E − 07/99


TORNOS
PROGRAMMING − DECO 13 BECHLER

6. MACROS

6.1 MACRO APPLICATION

Macros are used in the main program and in the auxiliary programs.
The macros are entered in the main program and in the auxiliary programs according to Basic
Part Model: c:\deco_13\modèles.

6.1.1 Auxiliary Program INIT.PGM

Macro G910
Description : Check Global Variables #3000 − #3008.
Initialize
Check guidebush type
Check spindle travel
Compute number of parts to produce after End-of-Bar signal
INITIAL CUTOFF
A facultative Parameter P1= can be entered after G910 to determine the num-
ber of parts still to produce after End-of-Bar Signal without computations
related to the travel.
Attention ! Breakage risk if false data is entered !
No check !
Syntax : G910 P1=1
P1=number of parts still to produce after End-of-Bar
Signal
Unless P1 is specified or if P1=0 the cycle runs in a regular manner and com-
putes the number of parts to produce.

Macro G920
Description : Check Global Variables #3009 to #3012 & #3017.
Check Variable #3017 :
#3017=1 enables ejector feed (M84) for part ejection
from the pickoff spindle.

300482 E − 07/99 Chap. 6.1.1 /1


TORNOS
PROGRAMMING − DECO 13 BECHLER

6.1.2 Main Program PIECE.PGM


Macro G911
Description : Compute Zero Offset, according to Part Length.
Macro G912 :
Description : Feed a New Part
OPEN COLLET, SPINDLE RETRACT, CLOSE COLLET
Macro G915
Description : Compute Z3-axis Zero Offset to find Part Zero according to Z1-axis machine
position.
Macro G921
Description: Compute various machine positions in Z4-axis for Part Pickoff
(#2013, #2014, #2015).
Compute Zero Point offset for backworking (#2016).
Checks : if Part Pickoff Length is too great;
if Z4 travel is adequate to perform part-pickoff.
Macro G922
Description : Clear pickoff spindle to X4=444 and position Z4 according to the result of
check in G920.
If Variable #3024=1, pickoff-spindle collet is open (M111) and part is ejected
at Z4=100.
If Variable #3024=0, part is withheld in pickoff-spindle collet at End-of-Table
and Z4-axis is positioned as specified in Variable #3023.
Macro G923
Description : Eject Part from Pickoff Spindle
Operation : Two global variables are available for the selection of the type of ejection and
the part-gripping length :
#3017 Type of ejection
0 Gripper
1 Cage + Ejector
2 Collet + Ejector

#3018 Part-Gripping Length (by gripper, see Fig. 1)


T50 geometry is required to specify the position of Cage or Gripper against
Tool Zero of supports T41 to T43. This geometry will be measured on the
machine (see Figure 1)

Chap. 6.1.2 /2 300482 E − 07/99


TORNOS
PROGRAMMING − DECO 13 BECHLER

Fig 1

Fig. 2

300482 E − 07/99 Chap. 6.1.2 /3


TORNOS
PROGRAMMING − DECO 13 BECHLER

G923 carries out movements & functions according to the type of ejection spe-
cified in Variable #3017 :

#3017=0 Ejection due to pickoff spindle retract after part gripping


(by gripper)
The pickoff spindle is positioned in Z4 over Variable
#3018, i.e. the part gripping length and T50 geometry, for
part gripping.
At the same time, X4 is positioned according to geometry
T50 to align pickoff spindle and gripper.
Close gripper over M164. Feed part catcher chute over
M160.
The pickoff-spindle collet opens and the pickoff spindle
retreats for part ejection.
Shift axis X4 in minimum position (−310) to drop the part
in the part catcher chute.
The part is still held in the gripper.
Open gripper over M165.
The part drops down onto the part catcher chute.

#3017=1 The pickoff spindle is positioned according to T50


geometry to have its nut flush with the cage.
Close the cage over M164.
The pickoff-spindle collet opens and M84 feeds the
pickoff-spindle ejector. A dwell.
M85 retracts the ejector with the part still in the cage.
Shift X4 in minimum position (−310) to drop the part in the
part catcher chute.
Open cage over M165.
The part drops down onto the part catcher chute.

#3017=2 The ejection sequence is basically identical with that of


Variable #3017=0 but after the ejecting movement, i.e.
pickoff-spindle retract, M84 feeds the ejector,
M85 retracts it while the collet is flushed.

Special points : Six facultative parameters are available to modify some


functions of Macro G923 :

Chap. 6.1.2 /4 300482 E − 07/99


TORNOS
PROGRAMMING − DECO 13 BECHLER

PART EJECTION PARAMETERS

Default
Parameter Fac. Comment
Setting

P1 20000 Z4 retract rate F for part ejection [mm/min]

P2 0.7 Dwell after ejector feed [s]

P3 5 Ejection safety-clearance [mm]

Distance between the position on which the part was before


P4 0
its ejection and the cylinder at the part presence check

P5 0 Decentering of the cylinder for the part presence check

Facultative closing of pickoff spindle collet (M110) before part


P6 0
presence check

Explanations :
P1 For part ejection from pickoff-spindle, the latter retracts at a rate given
by parameter P1, the default rate being that of the rapid traverse, i.e.
20000 mm/min. For parts requiring careful handling, a reduced rate can
be entered.
P2 specifies a dwell after the ejector feed over M84,
the default dwell being 0.7 s.
P3 For part ejection from the the pickoff spindle, the latter retreats by a
distance equal to the part-pickoff length plus a safety clearance of 5 mm.
Parameter P3 allows to modify the safety clearance.
P4 Part presence check after ejection is effected by means of a cylinder
equipped with a rod. The latter effects a travel of 10 mm at the check.
The pickoff spindle is positioned at a distance such that the cylinder in
stand−by station is at a standard position of 5 mm in relation to the posi−
tion of the part before its ejection. Parameter P4 allows to modify the dis−
tance between the cylinder rod and the position of the part before its
ejection. A positive value increases the distance. A negative value
diminishes the distance (see figure 2).
P5 Parameter P5 allows the decentering of the checking cylinder in relation
to the part in the X4 sense. This procedure can be very useful in the case
of a drilled part whose bore diameter and depth are bigger than the dia−
meter and the travel of the checking cylinder. The value of P5 is
introduced on the diameter.
P6 Parameter P6 allows to close the pickoff spindle (M110) before the part
presence check, when the part is clamped on the exterior diameter. This
allows to avoid that the checking cylinder pushes the part into the pickoff
spindle, which would render the check inefficient.
P6 = 0 collet open before the check
P6 = 1 collet closed before the check

300482 E − 07/99 Chap. 6.1.2 /5


TORNOS
PROGRAMMING − DECO 13 BECHLER

6.1.3 Auxiliary Program END_BAR.PGM

Macro G913
Description : Debur bar waste
Spindle retract to eject bar waste from guidebush
M60 Load a new bar
A facultative Parameter P1= can be entered after G913 to determine the
spindle rpm speed for the insertion of a new bar.
Unless P1 is specified the spindle rotates at a defaulted 300 rpm.
Note : P1 is used with an automatic barfeeder only.
Syntax : G913 P1=400
P1= Spindle Speed [rpm]
Note : According to Variable BarLoader in active Machine
Database *.MD, G913 is processed differently.
0= Hydraulic or mechanical tube
1= ROBOBAR SSF 226
2= IEMCA
3= LNS

6.1.4 Auxiliary Program NEW_BAR.PGM

Macro G914
Description : Spindle feed to insert new bar into guidebush
Face new bar with cutoff tool and feed according to Variable #3002
Three facultative Parameters P1, P2 & P3 can be entered after G914 :
 P1 & P2 help cut off a number of parametrable lengths from a
positioned new bar.
A length cut off drops into the swarf.
 P3 alters the new-bar feedrate [mm/min] of entry into the guidebush.
Defaulted P3 is G100, i.e. 2000 mm/min.
Attention ! If the length to be cut off exceeds the maximum spindle
travel, an alarm is given.
Syntax : G914 P1=5 P2=10
P1= No. Lengths To Cut Off
P2= Length To Cut Off
P3= New-Bar Feedrate [mm/min]
of Entry Into Guidebush
Unless P1, P2 & P3 are specified or if P1=0, P2=0 & P3=0 the cycle runs in
a regular manner.

Chap. 6.1.4 /6 300482 E − 07/99


TORNOS
PROGRAMMING − DECO 13 BECHLER

6.2 DIVERSE MACROS

6.2.1 G903-Macro: Index Gang Tooling On Comb-Gangs 1 & 2


Note :  Tool change according to G84 & G2/G3.
 After G903 enter G85.
 By default, the indexed tool moves into the last X coordinate entered
and Y0.
Syntax : G903 P1= <Indexed Tool No.>
G903 P1= 60

6.2.2 G904-Macro: Cutoff At Constant Cutting Speed


Note :  You can enter six parameters.
 G904 recomputes the rpm speed to suit the diminishing diameter.
 As the TB-DECO PNC-DECO cannot provide in-process monitoring of
the recomputed rpm speed, G904 computes an artificial cutting speed.

CONSTANT CUTOFF CUTTING-SPEED PARAMETERS


Default
Parameter Fac. Comment
Setting

P1 − Cutting speed [m/min] [feet/min]


P2 − S1 speed, max. [rpm]
P3 #3002 Cutting feedrate [mm/rev] [inch/rev]
P4 #3001 Cutoff start (bar) diameter [mm] [inch]
P5 −0.5 Cutoff end diameter [mm] [inch]
P6 1 X distance to cover before next speed change [mm] [inch]
The gray Fac.-boxes indicate a facultative Parameter P, i.e. the cycle will automatically
accept a Default Setting unless such a Parameter P is specified in a G904 block.

G904 FACULTATIVE PARAMETERS


& Their Default Settings
P3 Cutting feedrate : as specified in Global Variable #3002.
P4 Bar diameter : as specified in Global Variable #3001.
P5 : Cutoff end diameter : −0.5
P6 : X travel : 1.0
When X travelled 1 mm a new rpm speed is computed.
P6 can be reduced to alter the speed more frequently.
Note :  Defaults are converted into INCH for INCH programming.
 Make sure S1 speed of P2 is limited to prevent damage to the barfeeder
or lathe.
Unless P2 is specified, S1-spindle accelerates at the end of cutoff to the
maximum.

300482 E − 07/99 Chap. 6.2.2 /7


TORNOS
PROGRAMMING − DECO 13 BECHLER

6.2.3 G915-Macro: Zero Offset In Z3

Description : Zero Offset in Z3 to reestablish Part Zero against the current <MC> position
in Z1.
With the sliding-headstock spindle, Part Zero (Z-axis) shifts continuously dur-
ing machining.
G915 computes Additional Zero Offset G54 on Z3 against the <MC> position
in Z1.
Objective : To reestablish Part Zero for frontworking in T31 to T33.
Notes : Several G915’s can be entered for a single part because
after each Z1 movement, Part Zero must be recomputed.
 After each use of G915, make sure to cancel Additional Zero Offset
G54 with G53 Z3 before you enter a new G915.
Syntax : G915

G915 APPLICATION IN EX_003 (EXAMPLE)

Example ex_003.pce can be found in Directory c:\deco_20\exemples, see Fig. 601 below.

1:6 1:7
Comb-Gang 1

2:3 2:4 2:5 2:6


Comb-Gang 2

3:3 3:4 3:5 3:6


Frontwork Gang

4:5
Backwork Gang

5:1
G915/G916

601

Chap. 6.2.3 /8 300482 E − 07/99


TORNOS
PROGRAMMING − DECO 13 BECHLER

Explanations :
 The part is centered with Operation 1:6. Next, it is drilled with Tool T31.
At that moment the part zero is not known and G915 is required to compute it in Z.
 G915 is entered in Operation 5:1 where a constraint must be imposed between the end
of Operation1:6 and the start of 5:1 because it is necessary to make Zero Offset on Z3
after the last Z1 movement in 1:6 to reestablish the current Part Zero.
 A constraint is imposed between the end of Operation 5:1 and the start of 3:3.
The operation contains G1 Z3=0.5 G100 code which positions the drill 0.5 mm off the work.
 Operation 3:4 effects drilling. It is interlinked with turning in 2:4.
 Cancel Zero Offset in Operation 3:6 with G53 Z3 at the end of drilling.
G53 Z3 cancels Additional Zero Offset executed with G915 on Z3 in 5:1.
The drill is cleared with the next block: G1 Z3=33 G100.
 Enter another G915 to reestablish Part Zero for the part which moved further and is almost
finished and for its drilled hole which must be now deburred with Tool T31. The programming
for Operations 3:6, 5:2 & 3:7 is identical with the one described above.

Note : G915 can be used as often as required.

6.2.4 G916-Macro: Zero Offset In Z4

Description : Zero Offset in Z4 for intermediate part-pickoff, e.g. to support the work in the
pickoff spindle or for pointed-cutoff.
G916 computes Additional Zero Offset G54 in Z4 against the <MC> position
of Z1.
Objective : Intermediate part-pickoff.
Notes : Several G916’s can be entered for the same part.
When Parameter P1 is active, Part-Pickoff Length will
be computed according to P1 value.
Unless P1 is specified, the distance will be taken from
Global Variable #3009.
 After each use of G916, make sure to cancel Additional Zero Offset
G54 with G53 Z4 before you enter a new G916.
Syntax : G916
G916 P1= <Part-Pickoff Length>

300482 E − 07/99 Chap. 6.2.4 /9


TORNOS
PROGRAMMING − DECO 13 BECHLER

G916 APPLICATION IN EX_003 (EXAMPLE)

Example ex_003.pce can be found in Directory c:\deco_20\exemples, see Fig. 602 below.

1:8 1:9 1:10


Comb-Gang 1

Comb-Gang 2

3:10
Frontwork Gang

4:6 4:7 4:8 4:9 4:10


Backwork Gang

5:3
G915/G916

602

Explanations :
 Operation 1:8 positions the cutoff tool in Z1 at the start of pointed-cutoff. At that moment
the work must be picked up and followed with Z4 for pointed-cutoff.
 Unless Z1 position then corresponds to the total part length, the part-pickoff length will be
false. If so, a G916 is required to compute an intermediate part-pickoff length.
 G916 is entered in Operation 5:3 where a constraint must be imposed between the end
of Operation1:8 and the start of 5:3 because it is necessary to make Zero Offset on Z4
after the last Z1 movement in 1:8 to effect Intermediate Part-Pickoff.
 A constraint is imposed between the end of Operation 5:3 and the start of 4:7 and a Stan-
dard TB-Wizard controls Part Pickoff.
 Make sure to cancel Zero Offset in Operation 4:10 with G53 Z4 after Part Pickoff.
G53 Z4 cancels Additional Zero Offset executed with G916 on Z4 in 5:3.
4:10 effects the retract after a regular part-pickoff.

Notes : Unless you specify Parameter P1 in G916, Part-Pickoff Length will be


taken from Global Variable #3009, i.e. 12.8 mm.

Chap. 6.2.4 /10 300482 E − 07/99


TORNOS
PROGRAMMING − DECO 13 BECHLER

6.2.5 G933-Macro: Single-Point Threading Cycle

Note : The programming of threading is largely facilitated by G933-macro,


i.e. G933 allows for 99% operations for threading of any type: cylindrical, coni-
cal, external or internal or even on a face.
In some cases it may be of interest to check the movements necessary for
threading. This is possible over G130, G131 & G33.
Implementation of these instructions requires a good command of the parallel
numeric control PNC-DECO.
The programming procedure with G130, G131 & G33 is given at the end of this
paragraph.

P5

P11
P15

P10

P6 P9
P4

P1

P8 P7

P3 P2

G933 FACULTATIVE PARAMETERS


& Their Default Settings

P5 Threading Tool Angle : 60° by default


The cycle divides then the angle by 2 and subtracts 2°
to obtain a penetration which does not directly follow the
thread flank.
Example : (60° : 2) − 2° = 28°
Enter 0° for straight penetration.

P6 Thread Height : H= 0.61343 P0 for 60° metric thread

P7 Lead Angle at Threading Start : 45° by default


Enter 90° for straight entry
when e.g. threading starts outside the part.

300482 E − 07/99 Chap. 6.2.5 /11


TORNOS
PROGRAMMING − DECO 13 BECHLER

THREADING PARAMETERS
Parameter Fac. Default Setting Comment
P0 — Lead (NEGATIVE for internal threading)
P1 — Threading start in X
P2 — Threading start in Z
P3 — Threading end in Z
P4 P1 Threading end in X
P5 60° Threading tool angle
P6 0.61343 P0 [mm] Thread height (depth)
P7 45° Lead angle at threading start
P8 45° Exit angle at threading end
P9 0.2 [mm] Safety distance
P10 2 P0 [mm] Mechanical limit at threading start
P11 2 P0 [mm] Mechanical limit at threading end
P12 INT (P1 + 0.5) Number of rough cuts
P13 2 Number of finishing cuts
P14 2 Number of idle passes
(P3 − P2) 0.5 − 0.1 +
P15 Max. mechanical limit in X
+ P6 + P9 [mm]
P16 1 Retract rate factor
The gray Fac.-boxes indicate a facultative Parameter P, i.e. the cycle will automatically
accept a Default Setting unless such a Parameter P is specified in a G933 block.

P8 Exit Angle at Threading End : 45° by default


Enter 90° for straight entry.

P9 Safety Distance : 0.2 mm at radius by default


for distance between tool point and X0 ∅
This figure can be increased if the last turn is unsatisfac-
tory. The point computed then for the tool exit will be far-
ther away in X direction and the last turn will be com-
pleted.
Attention ! Tool exiting at 45° risks a collision with part face if P9 is
too long.

P10 Mechanical Limit at Threading Start : 2 P0 by default


With a mechanical obstacle, e.g. part face,
a spacing to be entered.

Chap. 6.2.5 /12 300482 E − 07/99


TORNOS
PROGRAMMING − DECO 13 BECHLER

P11 Mechanical Limit at Threading End : 2 P0 by default


With a mechanical obstacle, e.g. a face,
a spacing to be entered.

P12 Number of Rough Cuts : e.g. for M6 6 + 0.5 = 6.5, i.e. 6 roughing cuts by default,
computed from X0 ∅ + 0.5
(Integer only: disregard tenths.)

Note : P12, P13 & P14 specify the number of threading cuts.
The number of cuts entered is indicative only.
In practice, the sum of cuts may slightly differ ($1 cut) from the number
entered.
For such reasons as the encoder signal standby time for each cut, it is
impossible to ascertain the exact number of cuts in G933 computation.

P15 Max. Mechanical Limit in X : 5 mm + P6 + P9 by default


P15 is used to compute default retract-path radius
(TB-DECO Version 4.0).
P15 = Thread Length 0.5 − 0.1 + P6 + P9 by default
P15 is used to compute ideal default retract-path radius
(TB-DECO Version 4.1).
Distance between P1 ∅ and mechanical obstacle in X
direction, e.g. hole ∅ in internal threading.
Retract path is arc of a circle.

P16 Retract Rate Factor : 1 by default


P16 reduces tool off-work retract rate.
Enter e.g. 0.5 if excessive shocks occur in threading.
P16, min. / max.: 0.1 / 1.0

Note : Defaults are converted into INCH for INCH programming.


Description of Info 1045
Info 1045 : RPM SPEED TOO HIGH. PATH ALTERED!
ATTENTION INTERNAL THREADING!
This info comes with the interpretation of G933 for a
thread of a small height (P6), a relatively big lead (P0) and
a high rpm speed.
Here, the path, computed by G933, contains segments,
too short to cut.
If you just clear 1045 info, G933 will simply extend certain
segments to obtain a path acceptable for the system.
Such a path alteration however may cause collisions
between the tool and the work in internal threading.
If so, keep reducing the rpm speed until Info 1045
disappears.

300482 E − 07/99 Chap. 6.2.5 /13


TORNOS
PROGRAMMING − DECO 13 BECHLER

PROGRAMMING G933 THREADING CYCLE

Example for M5 thread of 12 mm length :

ISO Code for operation :


M103 S1900
G1 Z1=2 G100
G1 X1=8 G100
M150
G933 P0=0.8 P1=5 P2=2 P3=−12 P5=0 P12=5 P13=0 P14=2 P15=10
M151
G1 X1=20 G100

Attention ! Make sure to enter spindle speed in the operation with G933.
M150 ensures correct threading with enabled SPINDLE SPEED OVERRIDE.
At the end of the cycle, the tool returns to threading start.

G933 ROUGHING & FINISHING CUTS

Rule : The cuts are managed as follows :


Roughing cuts are computed for constant chip-removal volume, especially for
60° threading.
Finishing cuts are computed for constant depth of cut.

 Choose (a), (b) or (c), the example being for 8 cuts in total :
(a) Regular : P12=5 P13=3 5 roughing + 3 finishing cuts,
i.e. 5 cuts with constant chip-removal vol-
ume + 3 cuts with constant depth of cut

(b) Rough only: P12=8 P13=0 8 roughing + 0 finishing cuts,


i.e. 8 cuts with constant chip-removal vol-
ume

(c) Finish only : P12=0 P13=8 0 roughing + 8 finishing cuts,


i.e. 8 cuts with with constant depth of cut
(e.g. medical equipment threading or
special profiles)

Chap. 6.2.5 /14 300482 E − 07/99


TORNOS
PROGRAMMING − DECO 13 BECHLER

THREAD PROGRAMMING WITH G130, G131 & G33

OPERATION OF MECHANICAL THREADING ATTACHMENT


A good understanding of how a threading attachment functions facilitates the understanding
of the TB-DECO “threading attachment” (procedure) controlled by electronic cams, i.e. cutting
paths stored in electronic memory and not in the form of a traditional mechanical cam.
In a mechanical threading attachment, cams are driven by the spindle. The movement is syn-
chronized with the spindle so that the single point tool follows always the thread on the work.
This attachment merely follows the thread. To cut, it must be fitted on a machine axis. The axis
is usually driven by a came which in turn is mounted on the feed camshaft.
The combination of both movements, i.e. threading and feed, results in cutting a thread.

OPERATION OF TB-DECO “THREADING ATTACHMENT”


In the parallel numeric control, stored programs represent the traditional cams.
The stored “threading attachment” programs are read with a speed controlled by the spindle.
The programs contain the threading movement only, i.e. a thread path to be followed. The TB-
DECO software uploads them into particular memories for a relevant code block with the G33
instruction.
The feed path programs (“cams of the main camshaft”) are also stored in memories and are
read with the speed controlled by the feed clock (ITP counter). The TB-DECO software uploads
them into particular memories for any code block without the G33 instruction.
You can also engage / disengage the movements of the “threading attachment” at any point
of the program over G130 / G131 respectively. Make sure however that no other movement of
axes concerned is under way.

G130 & G131 PROGRAM

G1 X1= ... Z1= ... G100 (Position threading attachment at thread start)
G130 (Threading movement ON)

I. Feed Movement :
G90 [ G91 ] (Program in absolute or incremental mode)
G1 X1=... Z1=... F... (Infeed which determines number of cuts)
G4 X... (Dwell allowing for some idle passes)
G1 X1=... Z1=... G100 (Exit tool at thread start)

300482 E − 07/99 Chap. 6.2.5 /15


TORNOS
PROGRAMMING − DECO 13 BECHLER

II. Threading Movement :


a. G91 (Obligatory incremental programming
because absolute position unknown !)
b. G33 G1 X1=... Z1=... F .. (Specify threading movement)
c. G33 G1 X1=... Z1=... F ... (F stands for projected lead =
= actual lead projected on X & Z axes)
d. G33 G1 X1=... Z1=... F ...
e. G33 G2 X1=... Z1=... R... F... (Possible, if necessary, circular interpolation
programming for rapid retract off stock)
f. G33 ... (Number of movements as required, usually 4 segments)
g. G33 ... (Last code block with G33 must return
threading tool to G91 above)
h. [G90] (Switch [facultative] to absolute mode)

III. Termination of Threading Cycle


G131 (Stop attachment, end of threading)
G4 X... (Dwell allowing for completion of last cut
[ Xmin = 1 cut duration ])

Example for M6 x 1 thread of 10 mm length :


0.2

M6

10

4 1
604
2
3

Chap. 6.2.5 /16 300482 E − 07/99


TORNOS
PROGRAMMING − DECO 13 BECHLER

How to program with G130 & G131 :

a) Calculate thread height (depth) :


h = 0.613 x P h = 0.613 x 1 = 0.613 mm

b) Calculate X & Y coordinates of Starting Point 1 (Fig. 604) :


X-coordinate :
The starting point to calculate in X must account for the fact that on enabling G130 the
threading movement (path from Point 1 to 4) commences. To avoid collision between the
tool and the work, take into account Thread Height + Safety (0.2 mm) between the tool and
work diameter of 6 mm.
This gives : X = 2 x h + 2 x 0.2 + 6 X = 2 x 0.613 + 2 x 0.2 + 6 = 7.626
Z-coordinate :
Assume that threading start is at Z= 2

c) Determine diameter for end of infeed :


The infeed movement starts at the diameter calculated in Item b) above. The final diameter
at the end of infeed must allow the tool to cut the full depth of thread. To determine this diam-
eter, take into account the tool path from Point 1 to 4. The X distance from Point 1 to 2 equals
in this case the thread height, i.e. 0.613 mm. For correct threading, the tool infeed will end
at the diameter of 6 mm.
Infeed End j = Start-j − 2 x Safety − 2 x Distance bet. Points 1 & 2

ISO code :
1 M103 S1200
2 G1 X1=20 Z1=5 G100
3 G1 X1=7.626 Z1=2 G100 (Position in Point 1, Fig. 604)
4 M150
5 G130 (Threading start)
6 G1 X1=6.2 F0.01 (Infeed rough cuts)
7 G1 X1=6 F0.005 (Infeed end, see Item c) above; finish cuts)
8 G4 X2 (Dwell for n idle passes)
9 G1 X1=7.626 G100 (Return to Point 1)
10 G91
11 G1 G33 Z1=0 X1=−1.226 F1 (Threading movement from Point 1 to 2)
12 G1 G33 Z1=−12 F1 (Threading movement from Point 2 to 3)
13 G1 G33 X1=1.226 Z1=−0.613 F1.414 (Threading movement from Point 3 to 4)
14 G1 G33 Z1=12.613 F5 (Threading movement from Point 4 to 1)
15 G131 (End of threading)
16 M151
17 G4 X1 (Dwell for completion of last cut)
18 G1 X1=20 Z1=5 G100

300482 E − 07/99 Chap. 6.2.5 /17


TORNOS
PROGRAMMING − DECO 13 BECHLER

Notes : Blocks 6 − 8 :
Blocks 6 to 8 specify the threading movement and the dwell for some idle
passes.
The number of working cuts is determined by Feed F in Blocks 6 & 7.
Here, with F0.01 & F0.005, the actual number of cuts is 6.
With 2 idle passes added, the thread is completed with 8 passes.
To raise or reduce this number, alter infeed in Blocks 6 & 7 and compute then
the resultant number of passes by means of simulation, SIM_DECO.

Blocks 6 − 7 :
Infeed movement :
In the example above, the infeed is carried out in X-axis only.
You can also infeed simultaneously in X & Z axes simultaneously.

Blocks 13 :
Here the tool exits at 45°
Projected Lead = Actual Lead / cos (angle)
Projected Lead = 1 / cos 45° = 1.414

Blocks 11 − 14 :
The threading movement represents a loop.
Make absolutely sure to return to the starting point. Otherwise, Alarm 1016:
LOOPING ERROR IN THREADING CYCLE is given.

Chap. 6.2.5 /18 300482 E − 07/99


TORNOS
PROGRAMMING − DECO 13 BECHLER

6.2.6 G977-Macro: Pecking Cycle (Drilling & Chip Clearing)

PECKING PARAMETERS
Parameter Fac. Default Setting Comment
P1 — Drill-∅
P2 — Drilling start
P3 — Drilling end
P4 1 mm Chip-clearing distance
P5 0.2 mm Rapid approach clearance
P6 5 n drill-∅ for 1st drilling
P7 3 n drill-∅ for 2nd drilling
P8 3 Number of progression passes
P9 0.01 drill-∅ Drilling feed
P10 of 120° drill Drill point height
P11 0 Centering feed
P12 0 Drill retract feed
P13 0 Type of drilling: 0 = long; 1 = cross
P14 0 Dwell at end of drilling
The gray Fac.-boxes indicate a facultative Parameter P, i.e. the cycle will automatically
accept a Default Setting unless such a Parameter P is specified in a G977 block.

DRILL POSITION

P5
P1

AT CYCLE START
P2
P3 603

AFTER CHIP CLEARING


P4
(Drill retract to its last position
P5 minus P5 value)
604

Note : The end-of-cycle position of the drill is that of the end-of-chip clearing.
See Fig. 604 above.

300482 E − 07/99 Chap. 6.2.6 /19


TORNOS
PROGRAMMING − DECO 13 BECHLER

G977 FACULTATIVE PARAMETERS


& Their Default Settings
P6 5 Drill-∅ for 1st drilling by default
P6 is used to enter a Depth for 1st Drilling = P6 Drill-∅
P7 3 Drill-∅ for 2nd drilling by default
P7 is used to enter a Depth for 2nd Drilling = P6 Drill-∅
P8 3 (number of progression passes) by default
With a specified P8, the cycle uses a mathematical rule to compute progres-
sion drilling depths for each pass. The P6 & P7 values (for 1st & 2nd drilling)
affect the tool progression into the work.
When all P8-specified passes are completed, the following passes will prog-
ress by P1 (drill-∅) down to the final depth (P3).
P9 0.01 drill-∅ (drilling feed) by default
P10 0.288 120°-drill-∅ (drill point height) by default
P10 specifies a drill point height for centering with a feed of P11.
P11 0 (centering feed) by default
P11 is a feed for the drill point height of P10 while centering.
With P11 = 0 there is no centering.
P12 0 (drill retract feed) by default
You can specify a retract rate to avoid scratching the hole. G1 with P12=F
(feed) will clear the chips.
With P12 = 0 the drill retracts at high speed (G100 rapid traverse).

G977 APPLICATION
(examples of regular cases)

(1) Depths with default parameters :


G977: Depths with Default Parameters
5 P6 = 5 P7 = 3

4
Drilling Depth

0
10

12

13

14
0

11
7

Pass No.

Here the depth reached is : 5 drill-∅ in the 1st pass


3 drill-∅ in the 2nd pass
1 drill-∅ in the next passes down to the final depth.

Chap. 6.2.6 /20 300482 E − 07/99


TORNOS
PROGRAMMING − DECO 13 BECHLER

(2) Progression depths of P8 passes :


G977: Progression Depths
P6=5 P7=3.5 P8=6
5

Drilling Depth 4

10

12

13

14
0

11
7

9
Pass No.

Here (with P8 = 6), 6 progression passes will be executed. The first two passes are comprised
in the number of passes specified in P8. The progression of the 1st & the 2nd pass is specified
in P6 & P7. The curve can be modified by varying P6 & P7.

(3) Line-progression depths of passes :


G977: Line-Progression Depths
P6=5 P7=4.5 P8=9
5

4
Drilling Depth

0
10

12

13

14
0

11
7

Pass No.

Here, the difference in depth reached with each pass and measured against the preceding
pass, remains constant until Drilling Depth = P1.

(4) Constant depth of passes :


G977: Constant Depth
3 P6=3 P7=3
2.5
Drilling Depth

1.5
1
0.5
0
10

12

13

14
0

11
7

Pass No.

Here P6 must equal P7 & P8 must be by default to reach constant depth with each drilling.

300482 E − 07/99 Chap. 6.2.6 /21


TORNOS
PROGRAMMING − DECO 13 BECHLER

6.3 FEEDING SEQUENCES FOR VARIOUS BARFEEDERS

6.3.1 End-of-Bar For Mechanical Or Hydraulic Feed Tube

Feeding Sequence in Auto Mode :

1. M11 Open spindle collet


2. Spindle retract by half of cutoff tool + Variable #3005 (Deburring Shift)
3. M10 Close spindle collet
4. Spindle retract by 0.5 mm to clear cutoff tool
5. Clear cutoff tool to bar ∅ (#3001) + 0.5 mm safety
6. Spindle feed for deburring (Items 2. & 4.)
7. Waste deburring by cutoff tool infeed (0.1 mm at radius)
Retract to bar ∅ +0.5 safety
M9 Coolant Off
8. Spindle retract to rearmost position according to guidebush type
9. Message display: END OF BAR
10. Operator opens collet by hand, removes waste and places a new bar behind guidebush.
11. CYCLE START by operator
12. M8 Coolant On and 5 s dwell
13. M10 Close Spindle Collet, Spindle On
14. Spindle feed in INCREMENTAL mode to insert a new bar in guidebush
15. Cutoff, face a new bar at feedrate specified in #3002

Chap. 6.3.1 /22 300482 E − 07/99


TORNOS
PROGRAMMING − DECO 13 BECHLER

6.3.2 End-of-Bar For Robobar SSF-226


Or Similar Barfeeder With Bar Calibration

Feeding Sequence in Auto Mode :

1. M11 Open spindle collet


2. Spindle retract by half of cutoff tool + Variable #3005 (Deburring Shift)
3. M10 Close spindle collet
4. Spindle retract by 0.5 mm to clear cutoff tool
5. Clear cutoff tool to bar ∅ (#3001) + 0.5 mm safety
6. Spindle feed for deburring (Items 2. & 4.)
7. Waste deburring by cutoff tool infeed (0.1 mm at radius)
Retract to bar ∅ + 0.5 safety
M9 Coolant Off
8. Spindle retract in INCREMENTAL (min. by 30 mm) to eject waste from guidebush.
Spindle On at 300 rpm.
9. M83 Barfeeder thrust Off
10. M11 Open spindle collet
11. M60 Load a new bar
12. Standby until bar is positioned while spindle turns 3 s at 300 rpm and stops for 3 s.
13. Barfeeder OK FOR MACHINING. Bar calibrated by barfeeder behind guidebush.
14. M8 Coolant On,
M10 Close spindle collet
M82 Barfeeder thrust On and 5 s dwell
15. Spindle On
16. Spindle feed in INCREMENTAL to insert new bar in guidebush (min. feed 1 mm)
17. Cutoff, face a new bar at feedrate specified in #3002

Special Features :
Modify Spindle Retract To Eject Waste from Guidebush (Item 8.) :
 Default retract : 25 mm
 If 25 mm retract is too short, enter a positive figure in #3014, which will be added to 25 mm.
 Min. retract : 25 mm (For shorter retracts an alarm will appear.)
Modify Spindle Feed To Insert New Bar (Item 16.) :
 Default feed : 25 mm
 If 25 mm feed is not adequate, enter a figure in #3015.
 Min. feed : 1 mm (For shorter feeds an alarm will appear.)
Note : Follow the following rule for Variables #3014 & #3015 :
Positive figure increases retract / feed.
Negative figure decreases retract / feed.
Example : #3014 = 10
Retract = 25 + 10 = 35 mm
#3015 = −5
Feed = 25 + ( −5 ) = 20 mm

300482 E − 07/99 Chap. 6.3.2 /23


TORNOS
PROGRAMMING − DECO 13 BECHLER

6.4 EXTENDED PROGRAMMING

6.4.1 Extension of ISO Programming For Operations

Operation programming has an extended language and comments can be entered.


A comment is entered with the “(” character.
Everything that follows the “(” character on the right hand side is disregarded.
The programming of macro functions (specified in the ISO macro by ~DEF) or all macros begin-
ning with @) can be used. They must be entered in a separate block of their own and begin with
the ”[” character .
(Example of comment
G1 X1=12.345 f1000 (Feedrate in mm/min
(Compute Z1 motion with macros
[@Move DX 12
[@Move DX #1009
[@Key +
[@Move #1009 DX
G1 Z1=#1009 T15
(.....etc....

6.4.2 Pre-Specified Library of Functions

Access to a library function is indicated by @.


The function names must observe upper & lower case letters of the names.

6.5 EXTENDED PROGRAMMING :


CLASSIFICATION OF FUNCTIONS BY TYPE

6.5.1 String Processing Library

StrConv StrForm2 ExistString


StrForm1 StrForm3 StrMove
StrSet

6.5.2 Input / Output & Move Library

MessageBox Set_Alarm Move


DlgInput Set_Info PrintMachPos
LoadMsg Set_DlgOp ViewDPR
MessageTrace Abort ViewAllSegments
CreateSegFile

Chap. 6.5.2 /24 300482 E − 07/99


TORNOS
PROGRAMMING − DECO 13 BECHLER

6.5.3 System Library

Run AdjustRegister ClearBackup


SaveParamFct ChangeAxisPlan SetBeginLoop
GetGeomTool LastSegAxeCtrl SetEndLoop
NecessaryToCreateTraj DoPrepOrg GetDBValue
TrajEmpty SetOrg1 SpdleINIT
CreateNewTraj SetOrg2 SuccINIT
CreateSegAxe SaveOrg1 Move
CreateSegBr SaveOrg2 PopCmde
CreateSegDO RestoreOrg1 call
SetDODelay RestoreOrg2
AddSegment AddToOrg2
SwitchAxToSpdle

6.5.4 Mathematical & Decoding Library

Key Bitreset PutValueAt


BitSet BitTest PutValueOf
ConvUnit

300482 E − 07/99 Chap. 6.5.4 /25


TORNOS
PROGRAMMING − DECO 13 BECHLER

6.6 EXTENDED PROGRAMMING :


LIBRARY FUNCTIONS ALPHABETICALLY LISTED & EXPLAINED
NAME Explanation
Abort Stops processing
Example : @Abort
AddSegment Adds a segment to current path
AddToOrg2 Adds to register Org2 data of Variables #29 to #31 for programmed axes
(Variable %19. cf SetOrg1)
AdjustRegister Adjusts position registers (MC, PR, DG, OFFSET...) of operation line axes
BitSet Processes bits in long Variables (%)
BitReset Syntax : BitSet <NumBit><Variable %>
BitTest BitReset <NumBit><Variable %>
BitTest <NumBit><Variable %>
Note : For BitSet & BitReset, if NumBit begins with 0x, its
data is processed in HEXA.
So you can put at 1 or 0 several bits at a time.
Examples : @BitReset 0x21FC1 %7
@BitSet 9 %7
~IF@ BitTest 9 %7
call Calls cycle indirectly.
Cycle Name is in DPR Variable $.
Example : @call $2.
ChangeAxisPlan Permutes master axes with slave axis
Parameters are given by DPR long[20] Variable M_PlanConfig and
permutation type (1=M1<−>slave axis; 2=M2<−>slave axis) is put in
parameter.
Example: ChangeAxisPlan 1
ClearBackup Clears backup registers for programmed axes.
(Variable %19. cf SetOrg1)
ConvUnit Converts, if necessary, inch to metric.
Checks if Inch Modal Function is enabled, and if so, carries out conversion
for parameter required.
Example: @ConvUnit #19 −−> Converts #19 from Inch to metric for
#19 if Inch Modal Function is active !.
CreateNewTraj Creates a new group of segments.
CreateSegAxe
CreateSegBr Creates segments.
CreateSegDO

Chap. 6.6 /26 300482 E − 07/99


TORNOS
PROGRAMMING − DECO 13 BECHLER
NAME Explanation
CreateSegFile Creates primary files of segment for testing cutter compensations.
The name of file created must be in Variable $49.
If this string is empty, create file in active Directory TRACE.SEG.
DlgInput Collects data over dialog box.
The function has 4 parameters :
1st parameter is a $ with text displayed in dialog box title bar.
2nd parameter is a # with initial and return data entered in dialog box.
3rd & 4th parameters are # with admissible minimum & maximum data
respectively. Dialog box will remain displayed if data entered are out of the
admissible range specified by 3rd or 4th parameter.
Examples : @StrSet $10 Example of collection
@Move #1030 24
@Move #1031 0
@Move #1032 30
@DlgInput $10 #1030 #1031 #1032
DoPrepOrg Recomputes Total Zeros, puts the results in Variables #29 to #31.
Note : Make sure to call this function after each modification in Zero
Offset Registers for the latest modifications to be considered.
ExistString Syntax : @ExistString <Source> [<Reference>]
Searches string put in parameter directly or indirectly in a command block
also put in parameter directly or indirectly.
If a single parameter is input, the search takes place in the block previously
saved by @SaveParamFct.
Examples : ~IF @ExistString G26 −> Returns TRUE if G26 exists in
Parameter block saved by @SaveParamFct ($8)
~IF @ExistString $1 −> Searches string contained in $1
in Parameter block saved by @SaveParamFct ($8).
~IF @ExistString $1 $4 −> Searches if string of $1 exists
in $4.
~IF @ExistString G26 $10 −> Searches if G26 exists in
$10.
~IF @ExistString $1 COUCOU −> Searches if string of $1
exists in COUCOU.
Note : Only letters & digits can be used in a constant.
The function is not case-sensitive.

300482 E − 07/99 Chap. 6.6 /27


TORNOS
PROGRAMMING − DECO 13 BECHLER
NAME Explanation
GetDBValue Retrieves digital data only in active machine database.
Data put in parameter have the following order :
section,
box,
variable for data to be put.
The box which cannot be read does not affect the return variable.
Examples : @GetDBValue GLOBAL MachID #1050 −> finds Machine
ID in #1050
GetDBValue @StrSet $10 AXIS
continued
@StrSet $11 NumberAxis
@GetDBValue $10 $11 %34 −> finds Axis No. in %34.
GetGeomTool Takes either a tool geometry or the difference between two tool geome-
tries. Data are put in System Variables #32 , #33 & #34 for geometries of
1st & 2nd Master Axes, and of Slave Axis.
(Pay attention to Axis Permutation for Plane Change G83, G84, G85 !)
The function does not affect operation processing nor does the processor
modify Registers #32 to #34.
@GetGeomTool 14 −> Puts T14 data in DPR.
@GetGeomTool 14 18 −> Puts T18 & T14 data in DPR.

Chap. 6.6 /28 300482 E − 07/99


TORNOS
PROGRAMMING − DECO 13 BECHLER
NAME Explanation
Key Functions for Polish Calculator
@Key parameters specify possible operations which can be either arith-
metic or comparative.
Arithmetic Operators :
+ addition
− subtraction
* multiplication
x multiplication
: division
/ division
^ shift up
V shift down
ABS takes absolute value
SIN sine
ASIN arc sine
COS cosine
ACOS arc cosine
TAN tangent
ATAN arc tangent
LN natural logarithm
LOG logarithm base 10
EXP exponential
10PX logarithm base 10 inverse (10^x)
RAD switches calculator to radian
DEG switches calculator to degree
PI sets Constant p (3.14...) in DX
E sets Constant e (2.718...) in DX
Key SQRT square root
continued
NEG changes sign of DX register value
TRUNC rounds down number in DX : (−2.8=>2 & 2.8=>2)
ROUND rounds up number in DX : (−2.8=>−3;
−2.3=>−2; 2.8=>3; 2.3=>2;)

300482 E − 07/99 Chap. 6.6 /29


TORNOS
PROGRAMMING − DECO 13 BECHLER
NAME Explanation
Key Comparison does not affect calculator battery.
(comparison)
Executes : Rx <comp> Ry −> x being Basic Register of calculator
Example of use in File Code : ~IF @Key <= −−−> IF (Rx <= Ry)
Comparison Operators available in the calculator:
< smaller than
> bigger than
<= smaller or equal
>= bigger or equal
= equal
<> different
Examples : @MessageTrace ln calculation for 0.577
@Move DX 0.577
@Key ln
@Move OUT DX
Key Test Code to show a 10-lap loop
(example)
~DEF TEST
@Move DX 10 −−> Number of loop occurrences
@Move DX 0
:BEGINLOOP −−> Loop Start
~IF @Key >=
~GOTO ENDLOOP
@Run G100 G1 G91 X1=−1 −−> Segment generation
@Move DX 1
@Key +
@Move OUT DX
~GOTO BEGINLOOP
:ENDLOO −−> Loop End
~ENDDEF
LastSegAxeCtrl Retrieves latest axis segment entered and adds Threading End Flag.
Used for processing G131.
LoadMsg Loads a message from TB-DECO Message File in Section [FC] in Variable
$. This permits formatting in File Code.
Examples : @LoadMsg $10 1005 −> Loads Message 1005 in $10
@StrForm1 $10 $1
@Set_DlgOp $10
MessageBox Displays a message as dialog box.
Example : @MessageBox This is a user message !

Chap. 6.6 /30 300482 E − 07/99


TORNOS
PROGRAMMING − DECO 13 BECHLER
NAME Explanation
MessageTrace Displays a message in OUTPUT window of TB-DECO.
Example : @MessageTrace User message in OUTPUT window
Move Moves data to a pre-determined location such as :
Calculator Register −>DX
OUTPUT window −>OUT
Variable
Direct data
Syntax : @Move <destination> <source>
Move direct data : @Move #11 14 −> Puts 14 in Variable #11
Move indirect data : @Move #12 #15 −> Puts data from Vari−
able #15 in Variable #12.
Note : The words must be either #, %, DX or OUT and can be combined.
@Move #1002 #2002
@Move #2002 DX −>Copies Calculator
Register in D2002
@Move DX #2002 −> Enters data from
Variable #2002 in Calculator Register.
NecessaryTo-
Tests if paths or segment group need be created.
CreateTraj
PopCmde Puts a command parameter (FileCode) in String Variable ($) of DPR. Pre-
ferably use SaveParamFct
Example : @PopCmde $10
PrintMachPos Displays in OUTPUT window, machine positions of axes i.e. System Vari-
ables #18 to #20.
PutValueAt Decodes ISO parameter of ISO block.
Syntax : PutValueAt <StringSearch> <Variable # or %)>
Searches word contained in string variable, indicated by 1st parameter,
and puts in variable, given by the 2nd parameter, the data allocated to this
word.
Adds “=” to StringSearch.
Note : StringSearch must be DPR string variable and is indirect.
2nd parameter can be # or %(long).

300482 E − 07/99 Chap. 6.6 /31


TORNOS
PROGRAMMING − DECO 13 BECHLER
NAME Explanation
PutValueAt Parameter block must have been saved before.
continued (@SaveParamFct)
Value that follows <StringSearch> can be indirect.
Example : If <StringSearch> contains X1 and if the block has
X1=#2004 the value for 2nd Parameter Variable (#1) will
be the one from #2004.
Example : PutValueAt $1 #1 −> Puts double value of Word $1 in #1.
Returns TRUE if a value is decoded.
Example : ~IF @PutValueOf F #1
@ConvUnit
PutValueOf Decodes ISO parameter of ISO block.
Syntax : PutValueOf <StringSearch> <Variable # or %)
Searches word value put in parameter where indicated by 2nd parameter.
Note : StringSearch is given directly or indirectly ($).
2nd parameter can be # or %(long).
Parameter block must have been saved before.
(@SaveParamFct)
Value that follows <StringSearch> can be indirect.
Example : F#2004 In this case, value put in Variable of 2nd parameter
(#1) will be the one from #2004.
Example : PutValueOf F #1 −> Puts double value of Word F in #1.
Returns TRUE if a value is decoded.
Example: ~IF @PutValueOf F #1
@ConvUnit
RestoreOrg1 Restores Register Org1 with latest data saved.
(Variable %19. cf SetOrg1)
RestoreOrg2 Ditto for Org2
Run Processes ISO Code block directly or indirectly.
Examples : @Run G2 X1=#1004 Z1=#1002 R#1002 F#1001
@Run G1 X1=1 Z1=2 Y1=0 F168 T11
@StrSet $10 M103 S2000
@Run $10 −>Executes M103 S2000
SaveOrg1 Saves Register Org1 for programmed axes. (Variable %19. cf SetOrg1)
SaveOrg2 Ditto but for Org2.
SaveParamFct Saves current parameter block for Functions PutValue??,
or ExistString, etc...

Chap. 6.6 /32 300482 E − 07/99


TORNOS
PROGRAMMING − DECO 13 BECHLER
NAME Explanation
Set_Alarm Sets alarm. Processing stops.
Alarm Nos are in TB-DECO Message File in Section [FC].
Examples : @Set_Alarm 1004
Alarm can be prepared and sent indirectly manner, i.e.
@StrSet $10. Axis %s is not in reference.
@StrForm1 $10 $1
@Set_Alarm $10
SetBeginLoop
System Functions
SetEndLoop
Set_DlgOp Ditto as Set_alarm but user must select to continue.
Examples : ~IF @Set_DlgOp 1005
~GOTO ContYes
~GOTO ContNo
:ContYes
@MessageBox OK
~GOTO EndTest
:ContNo
@MessageBox Cancel
:EndTest
SetDODelay Modifies Segment DO’s Pure Delays for last DO segment created with
@CreateSegDO.
NO OTHER TYPE OF SEGMENT MUST HAVE BEEN INTRODUCED !!!!
Examples : @SetDODelay %12 104 −> DO in %12 with 104 ms pure
delay
@SetDODelay −1604 #1010 −> DO 1604 with pure delay
on OFF of #1010
@SetDODelay #36 %38 −>DO #36 with delay of %38
Delay is put ON or OFF according to the sign of DO’s ID !
Set_Info Ditto as Set_Alarm but sets information. Processing continues.
SetOrg1 Sets Zero Register Org1 for programmed axes.
Programmed axes are determined by Variable %19.
Bit 0=1st Master Axis
Bit 1=2nd Master Axis
Bit2=Slave Axis
Data put in Org1 must be from Registers #29 to #31.
SetOrg2 Ditto but for Org2.
SpdleInit Starts spindles with default part settings.
Used in G900 cycle.

300482 E − 07/99 Chap. 6.6 /33


TORNOS
PROGRAMMING − DECO 13 BECHLER
NAME Explanation
StrConv Passes data of Variable % or # or a constant into string variable.
Examples : @Move #1000 1234
@StrConv #1000 $10 −> $10 with 1234.0000 as string
or :
@StrConv 4321 $10 −> $10 with 1234.0000 as string
@StrConv %2 $10 −> $1 with data of %2 as string
StrForm1 Formats string.
String parameters can be %s only.
Formats with a single variable.
Examples : @StrSet $10 Axis %s is not programmed
~REM axis name is in $1.
@StrForm1 $10 $1
@Set_Info $10
For the above case, if $1 contains Z1, the following Info Message for oper-
ator will be displayed :
Axis Z1-axis not programmed
StrForm2 Same as above but can format :
2 parameters for StrForm2
StrForm3
and 3 parameters for StrForm3
Examples : @StrSet $10 −> Axes %s, %s & %s not programmed
@StrForm3 $10 $1 $2 $3
StrMove Copies string variable into another variable.
Example : @StrMove $10 $11 −>Copies content of $11 into $10.
StrSet Initializes string variable
Examples : @StrSet $15 Good Morning TB-DECO Team !
Variable $15 with text ”Good Morning..” as above.
SuccInit Initializes sequence specified for part.
SwitchAxToSpdle Reintializes variables and saves them for switching rotating axis into
spindle.
Parameter entered corresponds to ID of spindle to be switched back to
spindle.
Example : @SwitchAxeRotToSpdle 1 or
@SwitchAxeRotToSpdle #1054 or
@SwitchAxeRotToSpdle %36
TrajEmpty Finds out if current path is empty.
Example : ~IF @TrajEmpty

Chap. 6.6 /34 300482 E − 07/99


TORNOS
PROGRAMMING − DECO 13 BECHLER
NAME Explanation
ViewAllSegments Active only if Environment Variable _DEBUG is specified.
ViewDPR Displays DPR dialog box.
(System Variables #, %, *, $)

300482 E − 07/99 Chap. 6.6 /35


TORNOS
PROGRAMMING − DECO 13 BECHLER

Chap. 6.6 /36 300482 E − 07/99


TORNOS
PROGRAMMING − DECO 13 BECHLER

7. VARIABLES

7.1 TYPES OF VARIABLES

 System Variables : #0 to #49


%0 to %49
$0 to $49
 Local Variables : #1000 to #1225 for operation management
 Global Program Variables : #2000 to #2255 for program management
 Global Part Variables : #3000 to #3063 for part management

7.2 GENERAL DESCRIPTION OF VARIABLES

7.2.1 System Variables

System Variables must be read-only.

AVAILABLE SYSTEM VARIABLES


Variable # Description
#1 Last entered data of 1st Master Axis
#2 Last entered data of 2nd Master Axis
#3 Last entered data of Slave Axis
#4 Last entered data of Main Spindle in Operation Line plane
#5 Last entered data of Auxiliary Spindle in Operation Line plane
#6 Last entered data of Linear Chamfer Length (G26)
#7 Last entered data of Circular Chamfer Radius (G27)
#8 Last speed value calculated and adjusted for segment
#9 Last radius value entered with R-label (G02/G03)
#10 Last data entered with Q-label
#11 Last data entered with N-label
#12 Last spindle data entered with S-label
#13 Last spindle phase value entered
#14 Last spindle speed ratio entered
#15 <DG> Last distance-to-go calculated for 1st Master Axis
#16 <DG> Last distance-to-go calculated for 2nd Master Axis.
#17 <DG>Last distance-to-go calculated for Slave Axis
#18 <MC> Absolute machine position of 1st Master Axis
#19 <MC>Absolute machine position of 2nd Master Axis

300482 E − 07/99 Chap. 7.2.1 /1


TORNOS
PROGRAMMING − DECO 13 BECHLER
#20 <MC>Absolute machine position of Slave Axis
#21 <PR> Programmed position of 1st Master Axis
#22 <PR> Programmed position of 2nd Master Axis
#23 <PR> Programmed position of Slave Axis
#24 Reference position of 1st Master Axis
#25 Reference position of 2nd Master Axis
#26 Reference position of Slave Axis
#27 Last data entered with F-label
#28 Last value of lead/rev difference entered for threading in G33, G34, G35.
#29 Total Zero Offset for 1st Master Axis
#30 Total Zero Offset for 2nd Master Axis
#31 Total Zero Offset for Slave Axis
#32 Tool geometry result required by Function @GetGeomTool for 1st Master Axis.
Tool geometry result required by Function @GetGeomTool for the 2nd Master
#33
Axis.
#34 Tool geometry result required by Function @GetGeomTool for Slave Axis.
#35 Chamfer feedrate entered with E-label
Equivalent diameter entered in Diameter D for spindle switch to rotary axis
#36
(Mx98)
#37 Storage of working offset <PR>-<MC> for switching to transmit function
#38−#49 Unassigned

Definitions :
<MC> Machine Position (absolute) for testing Software Limit Switches
<PR> Program Position. Distance from Part Zero
<DG> Last “Distance-To-Go”: distance already covered
Zeroes Total of all Zero Offsets
T Tool Geometry + Support Value
(O) Index for current position
(1) Index for position to reach

A tool geometry for an axis on diameter is on the diameter.

In absolute mode :
<DG>(0−>1) Programmed Value (0−>1)+Zeroes (1)+T(1)−<MC>(0)
<MC>(1) Programmed Value (0−>1)+Zeroes (1)+T(1)
<PR>(x) <MC>(x)−Zeroes(x)−T(x)

In relative mode :
T(1)−T(0) T
<DG>(0−>1) Programmed Value (0−>1)+(T(1)−T(0))
<MC>(1) <MC>(0)+Programmed Value (0−>1)+(T(1)−T(0))
<PR>(x) <MC>(x)−Zeroes (x)−T(x)

Chap. 7.2.1 /2 300482 E − 07/99


TORNOS
PROGRAMMING − DECO 13 BECHLER

7.2.2 Auxiliary System Variables

Auxiliary System Variables must be read-only and they have complete format.

AVAILABLE AUXILIARY SYSTEM VARIABLES


Variable # Description
%0 Error code returned by code processor
<0 (negative)−>Error in execution of library function.
(Hardcode returns negative value !)
1..9 −> Read errors in file setting up
10..19 −> Errors in cycle processing. ($0 with last executed macro command)
Description of errors in detail :
0−>OK
1−>Key word XDEF found inside a cycle. (Cycle name in $0)
2−>Key word XEND_DEF found without cycle specification (~DEF).
(Last cycle name in $0 correct)
3−>Open error for Cycle File. (File name in $0)
10−>Command with unspecified string.
11−>Code XIF followed by non-library function.
Function without”@”
12−>A label specified by XGOTO does not exist.
13−> Call of non-library function.
(Hardcode not found in dispatch table)
%1 ID (identifier) of 1st Master Axis
%2 ID (identifier) of 2nd Master Axis. If %1002=0, no 2nd Master Axis
%3 ID (identifier) of Slave Axis. If %1003=0, no Slave Axis
%4 ID (identifier) of Main Spindle in Operation Line plane
0 = no Main Spindle specified in Operation Line
%5 ID (identifier) of Auxiliary Spindle in Operation Line plane
0 = no Auxiliary Spindle specified in Operation Line
%6 Identifier of Tool T
%7 Modal axis functions (with bit position notation)
%8 Modal spindle functions (with bit position notation)
%9 Modal DO functions (with bit position notation)
%10 Type(s) of command(s) in progress. Axis=1; Br=2; DO=4; BitTest
%11 Value of Parameter W or delays of DO segment
%12 − % 16 DO State 1 − 5. Positive identifier for ON and negative for OFF
%17 ID (identifier) of last programmed spindle
%18 Decoding check flag
%19 Programmed axes Info (with bit position notation)

300482 E − 07/99 Chap. 7.2.2 /3


TORNOS
PROGRAMMING − DECO 13 BECHLER
%20 Plane configuration. Bit 0=G85; Bit1=G84; Bit2=G83
%21 Calculation buffer variable for Sequences
%22 Contains Table Index for 1st Master Axis of threading
%23 Contains Table Index for 2nd Master Axis of threading
%24 Contains Table Index for Slave Axis of threading
%25 Contains ITP equivalent for threading
%26 Contains ITP/rev figure for threading
%27 Contains reference spindle (0 − 3) for threading
%28 Used by CheckLineISO
%29 − %35 System reserve (TB)
%36 − %46 System reserve (cycles)
%47 − %49 Conversion of bit position notation

7.2.3 System String Variables

SYSTEM STRING VARIABLES


Variable # Description
$0 Last command M_LastParsCmde. Not implemented yet !
$1 Name of 1st Master Axis (real number axis such as Z1)
$2 Name of 2nd Master Axis (imaginary number axis such as X1)
$3 Name of Slave Axis (imaginary number axis such as Y1)
$4 Name of Spindle 1 in Operation Line
$5 Name of Spindle 2 in Operation Line
$6 Line of Edit ISO being processed
$7 Line reserved for generating ISO commands.
$8 Line with parameters copied by function @SaveParamFct
$9 − $15 Reserved for TB system
$16 − $31 Reserved for TB system
$32 − $49 Reserved for user

Chap. 7.2.3 /4 300482 E − 07/99


TORNOS
PROGRAMMING − DECO 13 BECHLER

7.2.4 Local Variables

Local Variables manage an operation only.


LOCAL VARIABLES
Variable # Description
#1000 Reserved for dwell calculation (G04)
#1001 − #1031 Reserved for TB
#1032 − #1095 Reserved for user
#1096 − #1191 Reserved for TB (standard cycles)
#1192 − #1210 Reserved for TB
#1211 − #1255 Reserved for TB (additional cycles)

7.2.5 Global Program Variables

Global Program Variables manage a program.


GLOBAL PROGRAM VARIABLES
Variable # Description
#2000 − #2008 Table of Program Sequences
#2009 Unassigned
#2010 Time constant for spindles [ms]
#2011 − #2031 Reserved for TB
#2032 − #2127 Reserved for user
#2128 − #2195 Reserved for TB (TB Wizard and supplementary TB macros)
#2196 − #2255 Reserved Tornos-Bechler (Basic ISO Language)

7.2.6 Global Part Variables

Global Part Variables allow for data exchange between programs.


The variables are edited in Part Manager over the Edit / Global Variables... menu

or with this key:


Global Part Variables manage a part and are stored with it.
They are reset on opening a program.
GLOBAL PART VARIABLES
Variable # Description
#3000 − #3047 Reserved for TB
#3048 − #3063 Unassigned

300482 E − 07/99 Chap. 7.2.6 /5


TORNOS
PROGRAMMING − DECO 13 BECHLER

7.3 APPLICATION OF VARIABLES

7.3.1 Application of System Variables

Basic Part Model V4_10.PGM uses System Variables for the following operation :
Operation 2:4 in Model V4_10.PGM.

2:4
Operation 2:4. Axes Referencing. End of Part.

EDIT LANGUAGE ISO−DECO


Characteristics Specify operation
Type
Tool T T0 REFERENCING

ID 2:4 Operation duration:

G52
T0
G1 Z1=#18 X2=#25 Y2=#20 G100
G1 Y2=#26 G100

Joint Resources Manager Single Mode


Z1 Virtual Deleted OK
Z2 Virtual Deleted Cancel
Y2 Virtual Deleted
Spindle Setup...

 For Y2 and Z1 axes to retain their position (no movement) after cancelling geometries with
T0, use the following variables :
#18 Absolute machine position of 1st Master Axis (Z1)
#20 Absolute machine position of Slave Axis (Y2)

 To reference axes, use the following variables :


#25 Reference position of 2nd Master Axis (X2)
#26 Reference position of Slave Axis (Y2)

Chap. 7.3.1 /6 300482 E − 07/99


TORNOS
PROGRAMMING − DECO 13 BECHLER

Basic Part Model V4_10.PGM uses System Variables for the following operations :

3:7
Operation 3:7. Clear Frontworking Gang. Referencing X3 and Z3-axes.

EDIT LANGUAGE ISO−DECO


Characteristics Specify operation
Type
Tool T T0 CLEAR FRONTWORKING GANG

ID 3:7 Operation duration:

G52 Z3
G1 Z3=#24 X3=#25 G100 T0

Joint Resources Manager Single Mode

Z3 Virtual Deleted OK
X3 Virtual Deleted
Cancel

Spindle Setup...

#24 Reference position of 1st Master Axis (Z3)

#25 Reference position of 2nd Master Axis (X3)

300482 E − 07/99 Chap. 7.3.1 /7


TORNOS
PROGRAMMING − DECO 13 BECHLER

3:8
Operation 3:8. Referencing.

EDIT LANGUAGE ISO−DECO


Characteristics Specify operation
Type
Tool T T0 REFERENCING

ID 3:8 Operation duration:

G52
T0
M305
G1 Z3=#24 X3=#19 G100
G1 X3=#25 G100

Joint Resources Manager Single Mode

Z3 Virtual Deleted OK
X3 Virtual Deleted
Cancel

Spindle Setup...

#19 Absolute machine position of 2nd Master Axis (X3)

#24 Reference position of 1st Master Axis (Z3)

#25 Reference position of 2nd Master Axis (X3)

Chap. 7.3.1 /8 300482 E − 07/99


TORNOS
PROGRAMMING − DECO 13 BECHLER

4:11
Operation 4:11. Referencing.

EDIT LANGUAGE ISO−DECO


Characteristics Specify operation
Type
Tool T T0 REFERENCING

ID 4:11 Operation duration:

G52
T0
M405
G1 Z4=#24 X4=#19 Y4=#20 G100
G1 X4=#25 G100
G1 Y4=#26 G100

Joint Resources Manager Single Mode


Z4 Virtual Deleted OK
X4 Virtual Deleted Cancel
Y4 Virtual Deleted
Spindle Setup...

 For X4 and Y4 axes to retain their position (no movement) after cancelling geometries with
T0, use the following variables :
#19 Absolute machine position of 2nd Master Axis (X4)
#20 Absolute machine position of Slave Axis (Y4)

 To reference axes, use the following variables :


#25 Reference position of 2nd Master Axis (X4)
#26 Reference position of Slave Axis (Y4)

300482 E − 07/99 Chap. 7.3.1 /9


TORNOS
PROGRAMMING − DECO 13 BECHLER

7.3.2 Application of Local Variables


Basic Part Model V4_10.PGM uses no Local Variables.

7.3.3 Application of Global Program Variables


The following variables are used in the main program :

#2011 X1 Position <PR> at end-of-cutoff acc. to LX of cutoff tool.


#2012 Z1 Position <PR> for cutoff (part length).
#2013 Z4 Position <MC> before part with part in cutoff position,
in accordance with Variable #3012 (by default 20 mm).
#2014 Z4 Position <MC> for part-pickoff,
in accordance with Variable #3009.
#2015 Z4 Position <MC> for retract after part-pickoff.
#2016 Z4 Zero Offset G56 to be entered
before 1st backworking (T41 − T44).
#2017 Z1 Position <PR> for supporting and feeding a bar.
It is specified for each feed by Parameter P3 in G942
(Bar Clamping Position in Z).
Used for Long Parts.
#2018 Additional Zero Offset of Z1 for feeding.
It is specified by Parameter P1 in G942 (Feed Length).
Used for Long Parts.
#2019 Z3 Zero Offset G56 to be entered
before 1st frontworking (T31 − T34).
#2020 Cutoff Tool No (cutoff side) to be used by TB-Wizards.
#2021 Bar Retention Claws No. Used for Long Parts.
#2022 Cutoff tool geometry value, cutoff side.
Used in Operation 1:2 to specify Z1 position at loop end.
Used for Long Parts.
#2025 Bar retention-claws’ rapid-traverse approach Position <PR> in X1X2.
It is computed according to Bar Clawing Diameter as specified by Parameter
P4 in G942 (Bar Clawing Diameter).
The claws traverse to a position 1 mm off clawing diameter and do not press
on the bar.
Bar Clawing Diameter defines the size of Bar Retention Claws to use.
Used for Long Parts.
#2026 Retention-claws’ bar clawing Position <PR> in X1X2.
The claws move simultaneously in X1X2 by another 2 mm over the support-
claws’ approach position. The movement compresses the springs by 1 mm
and generates a pressure on the bar, adequate to support and claw it as
spindle retracts for the next feed.
Used for Long Parts.

Chap. 7.3.3 /10 300482 E − 07/99


TORNOS
PROGRAMMING − DECO 13 BECHLER

Model V4_10.PGM uses Global Program Variables for the following operations on
Comb-Gangs 1 and 2 :

1:2
Operation 1:2. Position of Cutoff Tool at Loop End. Loop Start G13.

EDIT LANGUAGE ISO−DECO


Characteristics Specify operation
Type
Tool T T14 G13

ID 1:2 Operation duration:

(CUTOFF TOOL POSITION AT LOOP END)


G1 Z1=#2012 X1=#2011 Y1=0 G100 T#2020
(LOOP START)
G13

Joint Resources Manager Single Mode


Z1 Virtual Deleted OK
X1 Virtual Deleted Cancel
Y1 Virtual Deleted
Spindle Setup...

#2011 X1 Position <PR> at end-of-cutoff.


Take into account LX (Overcut in X) from cutoff tool geometry.

#2012 Z1 Position <PR> to cut off a part length given in Global Variable #3003.
e.g. : If Variable #3003 = 20, the part will be cut off at Z1 = −20.
This value is given in Variable #2012.

#2020 Cutoff Tool No (cutoff side) to be used by TB-Wizards.

j Note :
We recommend to use Variables #2011 #2012 because the modifications to part length
over Variable #3003 or to cutoff tool geometry are considered in the program.

300482 E − 07/99 Chap. 7.3.3 /11


TORNOS
PROGRAMMING − DECO 13 BECHLER

1:7
Operation 1:7. Index Cutoff Tool T11.

EDIT LANGUAGE ISO−DECO


Characteristics Specify operation
Type
Tool T T11 INDEX CUTOFF TOOL T11

ID 1:7 Operation duration:

G1 Z1=#2012 X1=55 Y1=0 G100 T11

Joint Resources Manager Single Mode


Z1 Virtual Deleted OK
X1 Virtual Deleted Cancel
Y1 Virtual Deleted
Spindle Setup...

#2012 Z1 Position <PR> to cut off a part length given in Global Variable #3003.

Note : If you want to chamfer with cutoff tool, you cannot use the programming given
for the above operation.

Cutoff operation with chamfer :


G1 G100 X1=7.5 Z1=−19.25
G1 X1=6 Z1=−20 F0.01
G1 X1=2 F0.02
G1X1=−0.5 F0.02
If you want to modify part length here, edit Variable #3003 and the ISO Code of the part.

Chap. 7.3.3 /12 300482 E − 07/99


TORNOS
PROGRAMMING − DECO 13 BECHLER

1:9
Operation 1:9. End-of-Cutoff. Loop End G113.

EDIT LANGUAGE ISO−DECO


Characteristics Specify operation
Type
Tool T T11 END-OF-CUTOFF G113

ID 1:9 Operation duration:

(PART COUNT, END-OF-CUTOFF, LOOP END)


M20
G1 X1=#2011 F0.08 M167
G113

Joint Resources Manager Single Mode


Z1 Virtual Deleted OK
X1 Virtual Deleted Cancel
Y1 Virtual Deleted
Spindle Setup...

#2011 X1 Position <PR> at end-of-cutoff.


Take into account LX (Overcut in X) from cutoff tool geometry.

j Note :
Make sure to use this variable to program end-of-cutoff operation.

300482 E − 07/99 Chap. 7.3.3 /13


TORNOS
PROGRAMMING − DECO 13 BECHLER

Model V4_10.PGM uses Global Program Variables for the following front and back wor-
king :

3:1
Operation 3:1. Zero Offset for Machining with Frontworking Gang.

EDIT LANGUAGE ISO−DECO


Characteristics Specify operation
Type
Tool T T0 ZERO OFFSET FOR FRONTWORKING

ID 3:1 Operation duration:

G56 Z3=#2019

Joint Resources Manager Single Mode

Z3 Virtual Deleted OK
X3 Virtual Deleted
Cancel

Spindle Setup...

#2019 Variable #2019 contains Zero Offset necessary for machining with Z3-axis.
This value is calculated in Macro G911.

j Note :
Make sure to program this operation before 1st machining with Z3-axis.

Chap. 7.3.3 /14 300482 E − 07/99


TORNOS
PROGRAMMING − DECO 13 BECHLER

4:1
Operation 4:1. Calculate Part-Pickoff Positions. Loop-End Position.

EDIT LANGUAGE ISO-DECO


Characteristics Specify operation
Type
Tool T T0 G921 + LOOP-END POSITION

ID 4:1 Operation duration:

(CALCULATE PART-PICKOFF POSITIONS)


G921
(X4 AND Z4 APPROACH THEIR LOOP-END POSITION)
G1 X4=0 G100 T0
G1 Z4=#2015 G100

Joint Resources Manager Single Mode


Z4 Virtual Deleted OK
X4 Virtual Deleted Cancel
Y4 Virtual Deleted
Spindle Setup...

#2015 Z4 Position <MC> for retract after part-pickoff according to Variable #3011.

300482 E − 07/99 Chap. 7.3.3 /15


TORNOS
PROGRAMMING − DECO 13 BECHLER

4:2
Operation 4:2. Zero Offset for Backworking.

EDIT LANGUAGE ISO-DECO


Characteristics Specify operation
Type
Tool T T0 ZERO OFFSET FOR BACWORKING

ID 4:2 Operation duration:

G56 Z4=#2016

Joint Resources Manager Single Mode


Z4 Virtual Deleted OK
X4 Virtual Deleted Cancel
Y4 Virtual Deleted
Spindle Setup...

#2016 Variable #2016 contains Zero Offset necessary for backworking in Z4 with
Tools T41 to T44 or T51 to T53.
The value is calculated in Macro G921.

j Note :
Make sure to program this operation before 1st backworking in Z4.

Chap. 7.3.3 /16 300482 E − 07/99


TORNOS
PROGRAMMING − DECO 13 BECHLER

4:8
Operation 4:8. Approach Pickoff Spindle.

EDIT LANGUAGE ISO-DECO


Characteristics Specify operation
Type
Tool T T40 APPROACH PICKOFF-SPINDLE

ID 4:8 Operation duration:

G1 Z4=#2013 X4=0 G100 T40 M404 S5000


(RESTART PICKOFF SPINDLE FOR PART-PICKOFF)
M418 S1
(PHASE SYNCHRO WITH S1)

Joint Resources Manager Single Mode


Z4 Virtual Deleted OK
X4 Virtual Deleted Cancel
Y4 Virtual Deleted
Spindle Setup...

#2013 Z4 Position <MC> before part in cutoff position according to Variable #3012
(20 mm by default).

300482 E − 07/99 Chap. 7.3.3 /17


TORNOS
PROGRAMMING − DECO 13 BECHLER

4:9
Operation 4:9. Part-Pickoff. Close Pickoff Spindle Collet (M110).

EDIT LANGUAGE ISO-DECO


Characteristics Specify operation
Type
Tool T T40 PART-PICKOFF M110

ID 4:9 Operation duration:

M170 (ENABLE Z4 TORQUE-LIMIT)


G4 X0.1
G1 Z4=#2014 F4000 G94
G4 X0.4
M172 (ENABLE SERVO-LAG CHECK)
M110 M165
G4 X0.3

Joint Resources Manager Single Mode


Z4 Virtual Deleted OK
X4 Virtual Deleted Cancel
Y4 Virtual Deleted
Spindle Setup...

#2014 Z4 Position <MC> for part-pickoff, the part-pickoff length specified in Variable
#3009 being considered.

j Note :
This figure is calculated in G921. See description of Variable #3009, Para. 7.3.7.

Chap. 7.3.3 /18 300482 E − 07/99


TORNOS
PROGRAMMING − DECO 13 BECHLER

4:10
Operation 4:10. Retract after Part-Pickoff.

EDIT LANGUAGE ISO-DECO


Characteristics Specify operation
Type
Tool T T0 RETRACT AFTER PART-PICKOFF

ID 4:10 Operation duration:

G1 Z4=2 F4000 G94 G91 (2MM RETRACT FOR TOOL-BREAK CHECK)


G4 X0.4
M172
G4 X0.2
M171 M173 (DISABLE Z4 TORQUE LIMIT)
G4 X0.3
G1 Z4#2015 G100 T0 G90 G95

Joint Resources Manager Single Mode


Z4 Virtual Deleted OK
X4 Virtual Deleted Cancel
Y4 Virtual Deleted
Spindle Setup...

#2015 Z4 Position <MC> for retract after part-pickoff according to Variable #3011.

Note : The figure is calculated in G921.


The operation is situated just before Loop End (G113).
See description of Variable #3011, Para. 7.3.9.

300482 E − 07/99 Chap. 7.3.3 /19


TORNOS
PROGRAMMING − DECO 13 BECHLER

7.3.4 Application of Global Part Variables

Global Part Variables are entered in the Edit Global Variables dialog box of the Part Manager
window.

Basic Part Model V4_10.PGM uses Global Variables #3000 to #3020.

#3000 Cutoff Tool Support No (11,12,13,14, 15, 21, 22, 23, 24, 25)
#3001 Bar diameter [mm] [inch]
#3002 Initial cutoff feedrate (after RESET and new bar) [mm/rev]
#3003 Positive part length [mm] [inch]
#3004 Feeding allowance for positive offset tool [mm] [inch]
#3005 Positive deburring shift [mm] [inch]
#3006 Guidebush type :
0 Stationary / Live / Habegger guidebush (220mm spindle-travel)
#3007 Dwell after open spindle collet [s]
#3008 Dwell after close spindle collet [s]
#3009 Pickoff-spindle part-pickoff length [mm] [inch]
#3010 Pickoff-spindle collet geometry [mm] [inch]
#3011 Pickoff-spindler retract distance after part-pickoff [mm] [inch]
#3012 Pickoff-spindle approach distance for part-pickoff [mm] [inch]
#3013 This variable is not used for 13mm-DECO !
#3014 Z1-axis retract for remnant ejection [mm] [inch]
#3015 Z1-axis feed for new bar insertion [mm] [inch]
#3016 S1 speed for next part feeding [rpm]
#3017 Ejection method
0 Manipulator gripper
1 Manipulator tray and pickoff-spindle ejector
2 Manipulator gripper and pickoff-spindle ejector
#3018 Part gripping length (cf. G923-macro) [mm] [inch]
#3019 Productive bar length for Long Parts [mm] [inch]

Chap. 7.3.4 /20 300482 E − 07/99


TORNOS
PROGRAMMING − DECO 13 BECHLER

7.3.5 Variable #3004: Feeding Allowance

The operation processing alarm Z1-AXIS OVERSHOOTS SOFTWARE LIMIT SWITCHES can
occur if spindle travel is too short for part machining in a situation such as :
 machining with an offset tool,
 tool position entered is greater than part length.
In both cases, enter in Variable #3004 a feed length greater than part length.

Calculate the data to be entered in Variable #3004, as follows :


1. Take into account the most offset tool geometry.
2. Subtract cutoff tool geometry from this geometry (cutoff side).
3. Note the farthest position programmed and the most offset tool.
4. Subtract part length from this position.
5. Add up the results of Items 2 and 4.
6. Enter the absolute positive value obtained in Variable #3004.

Example 1 :
 Part length : −10 mm
 Most offset tool geometry : −18
 Programmed position : −12 (u part length)

1. Most offset tool geometry : −18


2. Cutoff tool geometry subtracted from the Item 1. geometry : (−18) − (−16.5) = −1.5
3. Farthest programmed position : −12
4. Part length subtracted from Item 3. position : (−12) − (−10) = −2
5. Results of Items 2. and 4. added up : (−1.5) +(− 2) = −3.5
6. Absolute positive value of Item 5 to be entered in #3004 : 3.5

T26 Geometry = −18


−5
−10

−12

T14 Geometry = −16.5

300482 E − 07/99 Chap. 7.3.5 /21


TORNOS
PROGRAMMING − DECO 13 BECHLER

Example 2 :
 Part length : −10 mm
 Most offset tool geometry : −25
 Programmed position : −8 (t part length)

1. Most offset tool geometry : −25


2. Cutoff tool geometry subtracted from the Item 1. geometry : (−25) − (−16.5) = −8.5
3. Farthest programmed position : −8
4. Part length subtracted from Item 3. position : (−8) − (−10) = 2
5. Results of Items 2. and 4. added up : (−8.5) + 2 = −6.5
6. Absolute positive value of Item 5 to be entered in #3004 : 6.5

Î Î
Î Î
Î Î
T26 Geometry = −25
−5

−8

−10

T14 Geometry = −16.5

Chap. 7.3.5 /22 300482 E − 07/99


TORNOS
PROGRAMMING − DECO 13 BECHLER

7.3.6 Variable #3005: Deburring Shift

At end-of-bar, the cutoff tool deburs remnant by infeeding 0.15 mm on radius from bar diameter
(see figure below).
 If remnant is cut off at bar diameter, Variable #3005 is 0.

DEBURRING REMNANT WITHOUT DEBURRING SHIFT

Remnant

0.10

 If you find an excess turned length on the bar after cutoff, enter a deburring shift in Variable
#3005.
Deburring Shift length is specified by a positive value in Variable #3005.
Attention ! If the deburring shift figure in Variable #3005 remains 0 while there is an
excess turned length, the tool will go only through the deburring motion
off the remnant.

DEBURRING REMNANT WITH DEBURRING SHIFT

Remnant

#3005

7.3.7 Variable #3009: Part-Pickoff Length

 Enter Part-Pickoff Length as positive value, calculated from Part Zero.

POSITION AFTER PART-PICKOFF

#3009

300482 E − 07/99 Chap. 7.3.7 /23


TORNOS
PROGRAMMING − DECO 13 BECHLER

7.3.8 Variable #3010: Pickoff-Spindle Collet Geometry

Pickoff-spindle collet geometry must be indicated for collet with an extended nose.
The reference face for measuring this geometry is that the of the pickoff-spindle nut.

j Note :
For standard F25 collet, the geometry to enter is about −0 mm.

#3010 Z4 − Z4 +

7.3.9 Variable #3011: Pickoff-Spindle Retract Distance After Part-Pickoff

The retract after part-pickoff is entered in Variable #3011.


Pickoff spindle retracts then by the figure entered in the variable.

POSITION AFTER PICKOFF-SPINDLE RETRACT

#3011

7.3.10 Variable #3012: Pickoff-Spindle Approach Distance For Part-Pickoff

Pickoff spindle can be brought to a distance given in Variable #3012 in respect to the part length
in cutoff position.
POSITION BEFORE PART-PICKOFF

#3012

Chap. 7.3.10 /24 300482 E − 07/99


TORNOS
PROGRAMMING − DECO 13 BECHLER

7.3.11 Variable #3014: Z1-Axis Retract For Remnant Ejection

This variable is used with barfeeder only.


At end-of-bar, after deburring remnant, the spindle Z1-axis retracts for remnant ejection out of
the guidebush.
 Macro G913 default retract : 25 mm
It can be increased, if insufficient, by entering a figure in Variable #3014.
 A positive value increases retract.
 A negative value reduces retract.
Example: Default retract : 25 mm
Variable #3014 : 10 mm
Total retract : 25 + 10 = 35 mm

7.3.12 Variable #3015: Z1-Axis Feed For New Bar Insertion

This variable is used with barfeeder only.


 Macro G914 default feed : 25 mm
It can be increased, if insufficient, by entering a figure in Variable #3015.
 A positive value increases feed.
 A negative value reduces feed.
Example: Default feed : 25 mm
Variable #3015 : 10 mm
Total feed : 25 + 10 = 35 mm

7.3.13 Variable #3016: S1 Speed For Next Part Feeding

Variable #3016 reduces S1-spindle speed for feeding next part to avoid scratches on bar
diameter.
The speed reduction is executed over Macro G912 (feeding) with the spindle collet open.
Macro G912 having been executed, the spindle resumes its speed specified in the Initial
Spindle Speed dialog box.

Note : If the speed specified in the Initial Spindle Speed dialog box is negative (S1
spindle On, ccw M104), enter also a negative speed in Variable #3016.
If Variable #3016=0 for feeding, the speed will not be reduced.
If the speed reduction is considerable (e.g. from 10000 to 200 rpm), the feed-
ing and spindle deceleration occur simultaneously.
In this case, to make sure that the speed entered in Variable #3016 (200 rpm)
is attained before feeding next part, increase the dwell in Variable #3007.
Also to make sure that the initial speed (10000 rpm) is resumed after G912,
increase the dwell in Variable #3008. Some downtime may be the conse-
quence.

300482 E − 07/99 Chap. 7.3.13 /25


TORNOS
PROGRAMMING − DECO 13 BECHLER

Chap. 7.3.13 /26 300482 E − 07/99


TORNOS
PROGRAMMING − DECO 13 BECHLER

8. SAMPLES OF PROGRAMMING

On installing TB-DECO, the following programming samples will be installed in Directory


c:\deco_20\exemples or c:\deco_26\exemples :

Sample 001 Face with Allowance


Sample 002 Thread with Macro G933
Sample 003 Application of Interlinked-Axes (Z1Z3 & Z1Z4)
Sample 004 Machine Several Parts per Chucking
Sample 005 Programming C-Axis
Sample 006 Application of Interlinked Z1Z4-Axes (1)
Sample 007 Application of Interlinked Z1Z4-Axes (2)
Sample 008 Form Milling with Cutter Compensation
Sample 010 Long Part
Sample EX_V4_10 Part Programming for 20mm-DECO 0004 (10 axes)
Sample EX_V1_5 Part Programming for 20mm-DECO 0001 (5 axes)

The following samples will not be installed :


 Keyway contouring with tool radius compensation
 Grooving with tool radius compensation
 Programming a threaded hole

300482 E − 07/99 Chap. 8. /1


TORNOS
PROGRAMMING − DECO 13 BECHLER

8.1 SAMPLE 001: FACE WITH ALLOWANCE

TECHNICAL DATA
 Part length : 20 mm
 Facing allowance : 0.2 mm

Part length is specified in Global Variable #3003.


Facing allowance must be added to part length. Here #3003 = 20.2 mm.

1:1 1:2 1:3 1:4 1:5


Comb-Gang 1

2:1 2:2 2:3 2:4


Comb-Gang 2

Operation 2:3 Face 0.2mm


Face is machined with T24-tool.
 Enter Additional Zero Offset (G54),
i.e. the relevant facing allowance, and so G54 Z1=0.2 .
 Face the work with T24-tool down to Z1=0
to remove 0.2 mm allowance.
G54 Z1=−0.2 (0.2 mm ZERO OFFSET FOR FACING ALLOWANCE)
G1 Z1=0 G100
G1 X2=−0.5 F0.02 (FACE TO Z1=0)
G1 Z1=0.5 G100
G1 X2=3 G100
G1 Z1=−0.5 X2=5 F0.03
G1 Z1=−10 F0.07 (TURN DIA 5 LG 10)
G1 X2=6.5 F0.01
G1 Z1=−10.5 X2=7.5 F0.03

Operation 1:5 Call Cutoff Tool + Cutoff


 Do not use Variable #2012 here, which positions the cutoff tool
in accordance with the value in Global Variable #3003, i.e. at 20.2 mm.
 Enter instead, the cutoff tool position equal to the part length,
i.e. Z1=−20.
G1 Z1=−20 X1=55 Y1=0 G100 T11

Chap. 8.1 /2 300482 E − 07/99


TORNOS
PROGRAMMING − DECO 13 BECHLER

8.2 SAMPLE 002: THREAD WITH MACRO G933

TECHNICAL DATA
 Thread : M5 x 10 mm

1:2 1:3 1:4 1:5 1:6 1:7


Comb-Gang 1

2:2 2:3 2:4 2:5 2:6


Comb-Gang 2

Operation 2:4 Front Turn dia 5


G1 Z1=0.5 G100
G1 X2=2.98 G100
G1 Z1=−.5 X2=4.98 F0.01
G1 Z1=−15 F0.04
G1 X2=6.8 F0.02
G1 Z1=−15.35 X2=7.5 F.02

Operation 1:6 Thread M5


 See the description of threading G933-macro in Para 6.2.5.
M103 S1900
G1 Z1=2 G100
G1 X1=8 G100
M150
G933 P0=0.8 P1=5 P2=2 P3=−10
M151
G1 X1=20 G100

300482 E − 07/99 Chap. 8.2 /3


TORNOS
PROGRAMMING − DECO 13 BECHLER

8.3 SAMPLE 003: APPLICATION OF INTERLINKED-AXES (Z1Z3 & Z1Z4)

TECHNICAL DATA
Interlinked Z1Z3-axes for simultaneous :
 Outside turning ∅: 5 mm
length : 10 mm
 Drilling ∅: 2 mm
length : 10 mm
with simultaneous chip clearing
Interlinked Z1Z4-axes for :
 Taper-cutoff (supported in pickoff spindle)

Chap. 8.3 /4 300482 E − 07/99


TORNOS
PROGRAMMING − DECO 13 BECHLER

Description : Turning & drilling run simultaneously with their own cutting speeds.
Z1Z3 Z1 & Z3-axes (master & slave respectively) interlinked in Rocker Function.

1:6 1:7
Comb-Gang 1

2:3 2:4 2:5 2:6


Comb-Gang 2

3:3 3:4 3:5 3:6


Frontwork-Gang

4:5
Backwork-Gang

5:1
G915/G916

Operation 2:3 Rapid Traverse to Angle-Start Dia


G1 X2=4.4 G100

Operation 5:1 Macro G915


G915

Operation 2:4 Turn dia 5, lg 10 mm


G1 Z1=0.2 G100
G1 Z1=0.1 F0.5
G1 Z1=−0.2 X2=5 F0.008
G1 Z1=−10 F0.1
G1 X2=6.6 F0.02
G1 Z1=−10.2 X2=7 F0.008
G1 Z1=−10.5 X2=7.04 F0.02

Operation 3:3 Drill’s Rapid Traverse to 0.5 mm


G1 Z3=0.5 G100
M1

300482 E − 07/99 Chap. 8.3 /5


TORNOS
PROGRAMMING − DECO 13 BECHLER

Operation 3.4 Drill dia 3.5 depth 10 mm


For drilling operation, Z1 & Z3-axes are interlinked.
Here for chip clearing (Z3), enter a feedrate (F1) rather than a rapid
retract (G100) to avoid excessive accelerations for Z3.
G1 Z3=−6 F0.04 (1ST DRILLING)
G1 Z3=2 F1
G1 Z3=−5.9
G1 Z3=−10 F0.04 (2ND DRILLING)
G1 Z3=2 F1

Operation 3:6 Retract T31 after Drilling + G53 Z3


G53 Z3 (CANCEL G54 OVER G915)
G1 Z3=33 G100

Description : Pickoff spindle supports the work for taper-cutoff.


Z1Z4 Z1 & Z4-axes (master & slave respectively) interlinked
in Rocker Function.
Z4 follows Z1 during the whole cutoff operation.

1:8 1:9
Comb-Gang 1

Comb-Gang 2

3:9 3:10
Frontwork-Gang

4:6 4:7 4:8 4:9 4:10 4:11


Backwork-Gang

5:3
G915/G916

Chap. 8.3 /6 300482 E − 07/99


TORNOS
PROGRAMMING − DECO 13 BECHLER

Operation 1:8 Cutoff Position in Z1


G1 Z1=−26.72 X1=3.2 G100 T14

Operation 5:3 Macro G916


Zero Offset for Z4-axis
G916

Operation 4:7 Part-Pickoff, M110


Part-Pickoff Length is specified in Variable #3009 (12.8 mm).
Here, Variable #2014 of TB-Wizard can be used for part-pickoff with
pickoff spindle.
M170 (ENABLE Z4 TORQUE LIMIT)
G4 X0.1
G1 Z4=#2014 F4000 G94 (PART-PICKOFF LENGTH 12.8)
G4 X0.4
M172 (ENABLE SERVO-LAG CHECK)
M110 M165
G4 X0.3
M173 (DISABLE SERVO-LAG CHECK)

Operation 4:8 M171


Z4 torque limit is disabled by cutoff operation.
M171 (DISABLE Z4 TORQUE LIMIT)
G4 X0.3

Operation 1:9 Cutoff, 20° angle, 3 mm long


G1 Z1=−30 X1=0.81 F0.025
G1 X1=−0.5 F0.015

Operation 4:11 G53 Z4


Z4 torque limit is re-enabled to allow for a correct check of cutoff tool
breakage.
G53 Z34 (CANCEL G54 OVER G916)
M170 (ENABLE Z4 TORQUE LIMIT)
G4 X0.1

Operations 4:9 & 4:10 are empty.


( See description of Interlinked-Axes, Instructions 300411, Para. 5.5).

300482 E − 07/99 Chap. 8.3 /7


TORNOS
PROGRAMMING − DECO 13 BECHLER

8.4 SAMPLE 004: MACHINE SEVERAL PARTS PER CHUCKING

TECHNICAL DATA
 Part length : 15 mm
 Number of parts per chucking : 3
 Cutoff tool width : 1.5 mm

Description : Part length is entered in Global Variable #3003 to be established here as


follows :
N Number of parts per chucking
L Part length [mm or inch]
LZ Cutoff tool width [mm or inch]
#3003 = (N x L) + [(N − 1) x LZ )]
Here: #3003 = (3 x 15) + [(3 −1) x 1.5)] = 48 mm

1:6 1:7 1:8 1:9 1:10 1:11


Comb-Gang 1

2:5 2:6 2:7 2:8 2:9


Comb-Gang 2

Operation 1:7 PART 01: Index T14


 Do not use Variable #2012 here, which positions the cutoff tool
in accordance with the value in Global Variable #3003, i.e. at 48 mm.
 Enter instead, for each part here, the cutoff tool position equal
to the part length, i.e. Z1=−15.

G84 G2 X1=55 Y1=0 G100 T14 R30


G1 Z1=−15 G100

Chap. 8.4 /8 300482 E − 07/99


TORNOS
PROGRAMMING − DECO 13 BECHLER

Operation 1:9 PART 01: Zero Offset for Part 02


Operation 1:9 is a TB-Wizard and can be found in any program
of machining several parts per chucking.
The extended programming is used here to :
 calculate & execute a movement (zero)
to activate 2nd geometry of cutoff tool (T18).
 execute a Zero Offset according to part length & cutoff tool width
to establish a part zero for the next part.

Values of variables used : #1 = −15


#1001= −16.5
#3021 = 18
#3031 = 1.5

[@Move DX #1 (last value <PRG> Z1)


[@Move DX #3031 (cutoff tool width)
[@Key −
[@Move #1001 DX
G1 Z1=#1001 X1=0 G100 T#3021
(ENTER PART LENGTH + CUTOFF TOOL WIDTH)
(TO RETRIEVE GEOMETRY ON BARFEEDER SIDE T#3021)
G54 Z1=#1001 (ZERO OFFSET: PART LENGTH + CUTOFF TOOL WIDTH)

Operation 1:10 PART 02: Clear Cutoff Tool


G1 Z1=0.2 G100
G1 X1=8.1 G100 (CONSIDER LX FOR RETRACT IN X1)

Next operation is the first operation of the next part.

300482 E − 07/99 Chap. 8.4 /9


TORNOS
PROGRAMMING − DECO 13 BECHLER

8.5 SAMPLE 005: PROGRAMMING C-AXIS

Description : Programming C1 & Z1-axes for milling a bayonet catch.


Programming C-axis calls for a new Operation Line with axes relevant for pro-
gramming a required form.
For this, an Operation Line has been created according to the following model:

Operation Line Setup


Operation Line Name

C1 axis

Bitmap Name

Main Axes Auxiliary Axis

Spindle Setup... Cancel

CUTTER-CENTER PATH

Note : Form is programmed with regard to the cutter center.

Chap. 8.5 /10 300482 E − 07/99


TORNOS
PROGRAMMING − DECO 13 BECHLER

1:2 1:3 1:4 1:5


Comb-Gang 1

2:2 2:3 2:4


Comb-Gang 2

Frontwork-Gang

4:3 4:4 4:5


Backwork-Gang

5:1
G915/G916

Operation 2:2 M203 S7000 + M103 S0


Cutter On at 7000 rpm
S1-spindle On but at 0 rpm
M203 S7000
M103 S0
G4 X0.4

Operation 5:1 M198, Form Milling with C1 + Z1


Argument D in M198 is the diameter on which the form is cut.
C-axis developed movements [mm]
Cutting speed [mm/min]
G1 Z1=2 X2=7.5 G100 T24 M198 D7 (SWITCH S1 TO ROTARY AXIS)
G1 C1=0 G100
G1 X2=4 G100
G1 Z1=−7 F200 G94 (FORM MILLING BY CONTOURING)
G1 Z1=−10 C1=−3
G1 C1=−10
G1 Z1=−7
G3 Z1=−5 C1=−8 R2
G1 C1=−5
G1 Z1=−7
G1 X2=10 G100 M205
M199 (RESET S1-SPINDLE ON)

300482 E − 07/99 Chap. 8.5 /11


TORNOS
PROGRAMMING − DECO 13 BECHLER

8.6 SAMPLE 006: APPLICATION OF Z1Z4 INTERLINKED-AXES (1)

Description : Interlinked Z1Z4-axes for taper-cutoff with form-ground cutoff tool and work
supported in pickoff spindle.

TECHNICAL DATA
 Use G916-macro : see Para. 6.2.2.
 Facing allowance : 0.30 mm
comprising : 0.25 mm for facing
0.05 mm for taper-cutoff

 Add facing allowance to part length in Global Variable #3003, i.e. 30.3 mm.

Chap. 8.6 /12 300482 E − 07/99


TORNOS
PROGRAMMING − DECO 13 BECHLER

1:5 1:6 1:7


Comb-Gang 1

2:5
Comb-Gang 2

Frontwork-Gang

4:7 4:8 4:9 4:10 4:11 4:12


Backwork-Gang

5:1
G916

Operation 1:5 Z1 Position −28.4


Positioning cutoff tool at taper-cutoff start.
G1 Z1=−28.4 G100 T14
G1 X1=3.2 F0.2

Operation 5:1 Macro G916


Zero Offset for Z4-axis
G916

300482 E − 07/99 Chap. 8.6 /13


TORNOS
PROGRAMMING − DECO 13 BECHLER

Operation 4:7 Part-Pickoff, M110


Part-Pickoff Length is specified in Variable #3009 (8 mm).
Here, Variable #2014 of TB-Wizard can be used for part-pickoff with
pickoff spindle.
M170 (ENABLE Z4 TORQUE LIMIT)
G4 X0.1
G1 Z4=#2014 F4000 G94
G4 X0.4
M172 (ENABLE SERVO-LAG CHECK)
M110 M165
G4 X0.3
M173 (DISABLE SERVO-LAG CHECK)

Operation 4:8 M171


Z4 torque limit is disabled by cutoff operation.
M171 (DISABLE Z4 TORQUE LIMIT)
G4 X0.3

Operation 1:6 45°-Taper-Cutoff


G1 Z1=−30.05 X1=−0.1 F0.012
(REAL PART LENGTH= 30 MM)

Operation 4:11 G53 Z4


Z4 torque limit is re-enabled to allow for a correct check of cutoff tool
breakage.
G53 Z34 (CANCEL G54 OVER G916)
M170 (ENABLE Z4 TORQUE LIMIT)
G4 X0.1

Operations 4:9 & 4:10 are empty.


( See description of Interlinked-Axes, Instructions 300411, Para. 5.5).

Chap. 8.6 /14 300482 E − 07/99


TORNOS
PROGRAMMING − DECO 13 BECHLER

8.7 SAMPLE 007: APPLICATION OF Z1Z4 INTERLINKED-AXES (2)

Description : Interlinked Z1Z4-axes, with work supported in the closed collet of pickoff
spindle, for :
 back turning
 threading

TECHNICAL DATA
 Use G916-macro : see Para. 6.2.2.
 Facing allowance : 1 mm

 Add facing allowance to part length in Global Variable #3003, i.e. 51 mm.

Description : The work is held in the closed collet of the pickoff spindle during back turning.

1:5
Comb-Gang 1

2:2 2:3
Comb-Gang 2

Frontwork-Gang

4:5 4:6 4:7 4:8 4:9


Backwork-Gang

5:1
G916

300482 E − 07/99 Chap. 8.7 /15


TORNOS
PROGRAMMING − DECO 13 BECHLER

Operation 2:2 Front & Back Turn Angle


Front turn angle with T22 geometrics
Back turn angle with T26 geometrics
G1 Z1=0 G100
G1 X2=−0.2 F0.04 (FACE)
G1 Z1=0.1 G100
G1 X2=4.8 G100
G1 Z1=−1.2 X2=7.4 F0.02
G1 Z1=−14.6 G100 T26
G1 Z1=−15 X2=6.6 F0.02
G1 X2=4.96 F0.03

Operation 5:1 Macro G916


Zero Offset for Z4-axis.
P1-parameter of G916-macro is used here because Part-Pickoff Length
differs from that entered in Global Variable #3009 (14 mm).
G916 P1=4 (PART-PICKOFF LENGTH 4 MM)

Operation 4:6 Part-Pickoff, M110


M170 (ENABLE Z4 TORQUE LIMIT)
G4 X0.1
G1 Z4=#2014 F4000 G94
G4 X0.4
M172 (ENABLE SERVO-LAG CHECK)
M110
G4 X0.3
M173 (DISABLE SERVO-LAG CHECK)

Operation 4:7 M171


M171 (DISABLE Z4 TORQUE LIMIT)
G4 X0.3

Operation 2:3 Turn dia 5 lg 40


Z1 & Z4-axes interlinked in Rocker Function.
G1 Z1=−50.05 F0.06 G27 L0.75 E0.02
G1 X2=3.5
G1 X2=7.2 G100

Chap. 8.7 /16 300482 E − 07/99


TORNOS
PROGRAMMING − DECO 13 BECHLER

Operation 4:10 M111, M404 S1400


Compulsory operation after G916-macro to cancel Zero Offset.
G53 Z4 (CANCEL G54 OVER G916)
M111
G4 X0.5
M404 S1400
G4 X3

Operations 4:8 & 4:9 are empty.


( See description of Interlinked-Axes, Instructions 300411, Para. 5.5).

Description : The work is held in the closed collet of the pickoff spindle during threading.

1:6 1:7
Comb-Gang 1

2:4
Comb-Gang 2

Frontwork-Gang

4:10 4:11 4:12 4:13 4:14


Backwork-Gang

5:2
G916

Operation 1:6 Position T12, M103 S1400


Positioning threading tool (T12)
Tool call in Operation 1:5
M103 S1400
G4 X3
G1 Z1=−35.0 G100
G1 X1=6.0 G100

300482 E − 07/99 Chap. 8.7 /17


TORNOS
PROGRAMMING − DECO 13 BECHLER

Operation 5:2 Macro G916


Zero Offset for Z4-axis.
P1-parameter of G916-macro is used here because Part-Pickoff Length
differs from that entered in Global Variable #3009 (14 mm).
G916 P1=10 (PART-PICKOFF LENGTH 10 MM)

Operation 4:11 Part-Pickoff, M110


M170 (ENABLE Z4 TORQUE LIMIT)
G4 X0.1
G1 Z4=#2014 F4000 G94
G4 X0.4
M172 (ENABLE SERVO-LAG CHECK)
M110
G4 X0.3
M173 (DISABLE SERVO-LAG CHECK)

Operation 4:12 M171


M171 (DISABLE Z4 TORQUE LIMIT)
G4 X0.3

Operation 1:7. Thread M5, Length 15


Z1 & Z4-axes interlinked in Rocker Function.
M103 S1400
M150
G933 P0=0.8 P1=4.96 P2=−35.0 P3=−51.0 P7=90 P8=90 P9=0.5 P12=4 P13=2 P14=1
M151
G1 X1=20.0 G100

Operation 4:15 M111, M404 S8000


Compulsory operation after G916-macro to cancel Zero Offset.
G53 Z4 (CANCEL G54 OVER G916)
M111
G4 X0.5
M404 S8000
G4 X2

Operations 4:13 & 4:14 are empty.


( See description of Interlinked-Axes, Instructions 300411, Para. 5.5).

Chap. 8.7 /18 300482 E − 07/99


TORNOS
PROGRAMMING − DECO 13 BECHLER

8.8 SAMPLE 008: FORM MILLING WITH CUTTER COMPENSATION

Description : Contouring (milling) a key with cutter compensation (G41).


The form is programmed in Y2/Z1-plane.

approach

exit

1:3 1:4
Comb-Gang 1

2:2 2:3 2:4 2:5 2:6


Comb-Gang 2

Operation 2:3 S2-Spindle On


M203 S7000

Operation 2:4 Outside Milling in Z1Y2-Plane


Cutter diameter to enter in Tool Catalogue under D-argument.
M103 S0
G4 X1
M119 Q0
G1 Z1=−.5 X2=7 G100 G94
G1 X2=4 F120
G83 (SELECT Z1Y2-PLANE)
G1 Z1=−2 Y2=−1.5 F120 G41 (APPROACH)
G1 Z1=−9 (CONTOURING A KEY)
G2 Z1=−9 Y2=1.5 R1.5
G1 Z1=−2
G2 Z1=−2 Y2=−1.5 R1.5
G1 Z1=−3
G1 Z1=−4 Y2=−4 F200 G40 (CANCEL CUTTER COMPENSATION)
G1 X2=8 G100 M205
M103 S4000

300482 E − 07/99 Chap. 8.8 /19


TORNOS
PROGRAMMING − DECO 13 BECHLER

8.9 SAMPLE 010: LONG PART

 Part name : EX_010.PCE

Description : Programming Long part (400 mm) With Multiple Feeds.


A special mechanical device required (Bar Support Claws).

TECHNICAL DATA
 Part length : 400 mm
 Number of feeds : 5

Notes : The X1Y1 & X2Y2 gang tooling system includes a pair of Bar Support Claws
which occupy one toolholder position each.
The claws traverse rapidly in X1 & X2 toward bar and clamp it carefully (spring)
to lock it as the spindle retracts.
 Support claws positions recommended : T11/T21

Chap. 8.9 /20 300482 E − 07/99


Tipper thrustor stroke : 500 mm Ejector thrustor stroke : 600 mm
PROGRAMMING − DECO 13

300482 E − 07/99
LONG-PART DISPOSAL KINEMATICS
Ejector & Tipper
TORNOS
BECHLER

Chap. 8.9 /21


TORNOS
PROGRAMMING − DECO 13 BECHLER

1st feed :

1:2 1:3 1:4 1:5 1:6 1:7 1:8


Comb-Gang 1

2:2 2:3 2:4 2:5 2:6


Comb-Gang 2

3:2 3:3 3:4 3:5


Frontwork-Gang

4:3 4:4 4:5 4:6 4:7 4:8 4:9 4:10


Backwork-Gang

5:1
G915/G916

Chap. 8.9 /22 300482 E − 07/99


TORNOS
PROGRAMMING − DECO 13 BECHLER

Operation 1:3 1st Feed


Enter 1st feed over G942. Parameter P1 specifies feed length.
G942 P1=90 (1ST FEED LENGTH 90)

Operation 1:4 M11, Spindle Retract 1st Feed M10


Retract spindle over Variable #2018 with feed length.
G55 Z1=#2018
M11
G4 X#3007
G1 Z1=#2017 X1=0 G100 T#2021
M10
G4 X#3008

Operation 1:6 Index T12


Index Tool T12 over G903.
G903 P1=12
G1 X1=22 G100

Operation 1:8 Turn ∅9 mm Length 80 mm


1st rough turn with Tool T25
G1 Z1=1.5 G100
G1 X1=5 G100 G42
G1 Z1=−0.5 X1=9 F0.05
G1 Z1=−80 F0.1
G1 X1=20.5 F0.2
G1 X1=22 G100 G40

300482 E − 07/99 Chap. 8.9 /23


TORNOS
PROGRAMMING − DECO 13 BECHLER

Operation 4:8 Eject Part, M111


Evacuate part with Ejector & Tipper
Backworking and part ejection must be finished before positioning
the pickoff spindle for the 2nd feed.
(This position depends on feed lengths).
G52 Z4
M111
G1 Z4=#18 X4=566 Y4=49 G100 T50
G1 Z4=200 G100 T50
M182 (FEED THRUSTOR FOR PART EVACUATION TIPPER)
G4 X2
M188
M180 (FEED EJECTOR)
G4 X1.5
M186
G4 X0.2
M181 M183 (RETRACT EJECTOR, PART IN TIPPER)
G4 X2
M187 M189
G4 X0.2
G1 Y4=0 G100 M184 (TIP-PART ON)

Operation 4:9 Approach Pickoff Spindle


Position the pickoff spindle against the main spindle.
G1 Z4=200 X4=0 G100 T40
(RESTART PICKOFF SPINDLE FOR PART-PICKOFF)

Operation 4:10 Feed to Z4=70 for Support in Pickoff Spindle


Feed the pickoff spindle to support the work which enters it in accor-
dance with machining operations and bar feeds.
G1 Z4=70 F3000 G94
M185 (TIP-PART OFF)

Chap. 8.9 /24 300482 E − 07/99


TORNOS
PROGRAMMING − DECO 13 BECHLER

2nd feed :

1:9 1:10 1:11 1:12 1:13 1:14 1:15 1:16


Comb-Gang 1

2:7 2:8 2:9 2:10 2:11 2:12


Comb-Gang 2

Frontwork-Gang

4:11
Backwork-Gang

5:2 5:3
G915/G916

Operation 1:9 2nd Feed


2nd feed length: 160 mm
Parameter P3 specifies Z position for bar support (clamping by support
claws).
The clamping claws size is for 11−26 mm bar diameter. Thus, the work
cannot be clamped on the turned diameter of 9 mm but on the diameter
specified by Parameter P4. The 1st feed length was 90 mm (10 mm more
than the turned length) to make the clamping possible on the bar diame-
ter.
G942 P1=160 P2=0 P3=−90 P4=20
(2ND FEED ==> 160 MM LONG)

Operation 4:11 M404 S3500, M418 S1


Turn the pickoff spindle on and synchronize with the main spindle.
M404 S3500
G4 X1.4
M418 S1 (PHASE SYNCHRO WITH S1 FOR PART SUPPORT)

300482 E − 07/99 Chap. 8.9 /25


TORNOS
PROGRAMMING − DECO 13 BECHLER

Operation 1:10 Index Support Claws T11


Rapid traverse in X1.
Enter X position over Variable #2025 and compute it according to the bar
clamping diameter specified in G942 by Parameter P4. The support
claws in this position do not press on the bar yet.
Z1 position for bar support (clamping) is specified for each feed in G942
by Parameter P3 and entered over Variable #2017.
G903 P1=11
G85 G1 Z1=#2017 G100 T#2021
G1 X1=#2025 G100

Operation 2:7 Index Support Claws T21


Rapid traverse in X2.
G903 P1=21
G1 X2=#2025 G100

Operation 5:2 M103 S0


S1-spindle stops before clamping with support claws.
M103 S0
G4 X1.4

Operation 1:11 Clamp Support Claws


Bar clamping position in X1 programmed over Variable #2026.
The claws move simultaneously in X1/X2 by another 2 mm over the sup-
port-claws’ approach position. The movement compresses the springs
by 1 mm and generates a pressure on the bar, adequate to support and
clamp it in position as spindle retracts for the next feed.
G1 X1=#2026 F3000 G94

Operation 2:8 Clamp Support Claws


Bar clamping position in X2 programmed over Variable #2026.
G1 X2=#2026 F3000 G94

Operation 1:12 M11, Spindle Retract 2nd Feed M10


G55 Z1=#2018
M11
G4 X#3007
G1 Z1=#2017 G100 T#2021
M10
G4 X#3008

Chap. 8.9 /26 300482 E − 07/99


TORNOS
PROGRAMMING − DECO 13 BECHLER

Operation 1:13 Unclamp Support Claws


Position X1 at bar diameter over Variable #3001.
G1 X1=#3001 G100

Operation 2:9 Unclamp Support Claws


Position X2 at bar diameter over Variable #3001.
G1 X2=#3001 G100

Operation 5:3 M103 S3500


Spindle ON for turning.
M103 S3500
G4 X1.4

Operation 1:14 Index T12


G1 X1=22 G100
G903 P1=60

Operation 1:15 G1 G100 Z1=−78


G1 Z1=−78 G100

Operation 1:16 Turn 12 mm Length 160 mm


G1 Z1=−79.2 F0.1
G1 X1=9.4 G100 G42
G1 Z1=−80.5 X1=12 F0.05
G1 Z1=−160 F0.1
G1 X1=20.5 F0.2
G1 X1=22 G100 G40

The remaining feeds are programmed in the same way (as shown above).

300482 E − 07/99 Chap. 8.9 /27


TORNOS
PROGRAMMING − DECO 13 BECHLER

8.10 SAMPLE PART EX_V4_10.PCE (10 AXES)

Chap. 8.10 /28 300482 E − 07/99


TORNOS
PROGRAMMING − DECO 13 BECHLER

DECO 2000 MACHINE: V4_10.MD Part: EX_V4_10.PCE


PART INFO
Generated on (date) : 23.09.1997 Drawing No. : Example V4_10
Customer Name : Setup No. : DECO 20
Customer Code : Program No. : EX_V4_10
Country : Diameter : 18.000000 mm
Quotation No : Length : 120.000000 mm
Prepared by : St. C Material : ETG 100
Department : 443/29
Comments : Complete sample part for 10-axes machine
Production [p/min] : 1.11
Production [p/hour] : 66.38 (Rate: 100 %)

LIST OF PROGRAMS
Set Program Name Next Feed Ev. 2 Ev. 3 Ev. 4 Ev. 5 Ev. 6 Ev. 7
EX_V4_10.CAT
02 EX_V4_10.PGM 02 03 00 00 00 00 00 00
01 INIT.PGM 02 00 00 00 00 00 00 00
03 END_BAR.PGM 04 00 00 00 00 00 00 00
04 NEW_BAR.PGM 02 03 00 00 00 00 00 00

INITIAL SPINDLE SPEED


Spindle Speed State
S1 Main Spindle 2600 ON
S2 Comb-Gang Spindle 0 OFF
S4 Pickoff Spindle −3000 ON
S3 Frontwork Spindle 0 OFF

AXES FIXATION CORRECTION


Axes Offset Speed
X1 Comb-Gang 0 2000
Y1 Comb-Gang 0 2000
X2 Comb-Gang 0 2000
Y2 Comb-Gang 0 2000
Main Spindle 0 2000
Z4 Pickoff Spindle 0 2000
X3 Frontwork Gang 0 2000
Z3 Frontwork Gang 0 2000
X4 Pickoff Spindle 0 2000
Y4 Pickoff Spindle 0 2000
C Main Spindle 0 2000
C Pickoff Spindle 0 2000

300482 E − 07/99 Chap. 8.10 /29


TORNOS
PROGRAMMING − DECO 13 BECHLER

DECO 2000 MACHINE: V4_10.MD Part: EX_V4_10.PCE

PART INFO

GLOBAL PART VARIABLES


Global Variable Value
#3000 Cutoff Tool Support No 11
#3001 Bar diameter [mm] [inch] 18
#3002 Initial cutoff feedrate [mm/rev] [inch/rev] 0.1
#3003 Part length [mm] [inch] 120
#3004 Feeding allowance [mm] [inch] 0
#3005 Deburring shift [mm] [inch] 0
#3006 Guidebush type 0
#3007 Dwell after open spindle collet [s] 0.5
#3008 Dwell after close spindle collet [s] 0.7
#3009 Part-pickoff length [mm] [inch] 80
#3010 Pickoff-spindle collet geometry [mm] [inch] 0
#3011 Retract after part-pickoff [mm] [inch] 40
#3012 Pickoff-spindle approach distance [mm] [inch] 20
#3013 Machine position of ejection in [mm] [inch] 0
#3014 Z1-axis retract for bar waste ejection [mm] [inch] 135
#3015 Z1-axis feed for new bar insertion [mm] [inch] 15
#3016 S1 speed for next part feeding [rpm] 0
#3017 Ejection method [DECO 20] 0
#3018 Part gripping length (by manipulator) [DECO 20] 0
#3019 Reserved for TB macro 0
#3020 Reserved for TB macro 0

Chap. 8.10 /30 300482 E − 07/99


TORNOS
PROGRAMMING − DECO 13 BECHLER

DECO 2000 Tool catalogue: EX_V4_10.CAT


TOOL LINE
T11/T16 Support 13 : Cutoff Tool ISCAR GHGR 16−3 Insert GIM 3J−8RA
T11 T16
X0 = 12.0000 (WEAR) X1 = 11.2000 (WEAR)
Y = 4.0000 (WEAR) Y = 4.0000 (WEAR)

Lx
X0

Z0 = −22.8500 (WEAR) Z1 = −19.8500 (WEAR)

Z1
Lz Lz : Tool width = 3.0000
Z0
Lx : Overcut in X (on diameter) = 0.8000

T13/T18 Support 13 : Lathe Tool ISCAR GHDL 16−3 Insert GIP−3.4 MT0.05IC 656
T13 T18
X = 13.0000 (WEAR)
X

Y = 3.9500 (WEAR)
Z = −38.6500 (WEAR)
R = 0.0000

Z Q=0

T14/T19 Support14 : Infeed Tool ISCAR GHDR 16−3 Insert GIP−4 00E−0.4IC656P20−P4
T14 T19
X = 13.0000 (WEAR) X = 13.0000 (WEAR)
Y = 4.0700 (WEAR) Y = 4.0700 (WEAR)
X

Z0 = −19.4600 (WEAR) Z1 = −23.4800 (WEAR)


R0 = 0.4000 R1 = 0.4000
Q0 = 3 Q1 = 4
Z1 L
Z0
L: Tool width = 4.0200
T15/T20 Support 15 : Infeed Tool ISCAR GHDR 16−3 Insert GIP−4.004 IC656 P20−P40

T15 T20
X = 13.0000 (WEAR) X = 13.0000 (WEAR)
X

Y = 3.9300 (WEAR) Y = 3.9300 (WEAR)


Z0 = −19.0000 (WEAR) Z1 = −23.0000 (WEAR)
R0 = 0.4000 R1 = 0.4000
Z1 L Q0 = 3 Q1 = 4
Z0 L: Tool width = 4.0000

300482 E − 07/99 Chap. 8.10 /31


TORNOS
PROGRAMMING − DECO 13 BECHLER

DECO 2000 Tool catalogue: EX_V4_10.CAT


TOOL LINE
T22/T27 Support 22 : Solid Carbide Endmill Type 5240 FRAISA dr  10mm

ÍÍ
T22 T27

ÍÍ
ÍÍ
X = −20.0000 (WEAR)
X

Y = 0.0000 (WEAR)

ÍÍ
D
Z = −19.7500 (WEAR)

Z D: Diameter = 10.0000

T23/T28 Support 23: Solid Carbide Circular Cutter Z=48  50 mm 3mm−thick Type 5916 APPLITEC

T23 T28
X = −19.5000 (WEAR)
D
Y = 29.0000 (WEAR)
X

ËËËËË Z = −20.0000 (WEAR)

Z
L0

D : Diameter = 50.0000
L0 : Width = 2.0000

T24/T29 Support 24 : Infeed Tool TIZIT ID 24624 SDJCL 1616 H11 Insert Utilis DCGT11

T24 T29
X = 0.0000 (WEAR) X = 0.0000 (WEAR)
X

Y = −4.0400 (WEAR) Y = −4.0400 (WEAR)


Z0 = −40.1300 (WEAR) Z1 = 0.0000 (WEAR)
R0 = 0.4000 R1 = 0.0000
Z0 L Q0 = 4 Q1 = 0
Z1 L : Tool width = 40.1300

T25/T30 Support 25 : Lathe Tool TIZIT ID 24624 SDJCR 1616 H11 Insert Utilis DCMT 1

T25 T30
X = 0.0000 (WEAR)
X

Y = −4.0400 (WEAR)
Z = −19.5500 (WEAR)
R = 0.8000
Z Q=3

Chap. 8.10 /32 300482 E − 07/99


TORNOS
PROGRAMMING − DECO 13 BECHLER

DECO 2000 Tool catalogue: EX_V4_10.CAT


TOOL LINE
T31/T35 Support 31 : Center Drill − HSS-coated Art. 18107 ESKENAZI 3x10 mm
T31 T35
X = 0.0000 (WEAR)
X

Y = 0.0000
Z = 245.0000 (WEAR)

Z D: Diameter = 6.0000
D

T32/T36 Support 32 : Solid Carbide Drill Type 2005 right  5.8 mm APPLITEC
T31 T35
X = 0.0000 (WEAR)
X

Y = 0.0000
Z = −220.0000 (WEAR)

Z D: Diameter = 5.8000
D

T33/T37 Support 33 : Solid Carbide Reamer Type 2100  6 mm right APPLITEC


T33 T37
X = 0.0000 (WEAR)
X

Y = 0.0000
Z = −220.0000 (WEAR)

Z D: Diameter = 6.0000
D

T40/T49 Support 40 : Universal Tool


X T40 T49

ÀÀÀÀÀÀÀ
ÀÀÀÀÀÀÀ
X0 = 0.0000 (WEAR) X1 = 0.0000 (WEAR)
Z

ÀÀÀÀÀÀÀ
Y0 = 0.0000 (WEAR) Y1 = 0.0000 (WEAR)

ÀÀÀÀÀÀÀ Z0 = 0.0000 (WEAR)


R0 = 0.0000
Z1 = 0.0000 (WEAR)
R1 = 0.0000
Y
ÀÀÀÀÀÀÀ
ÀÀÀÀÀÀÀ
Q0 = 0 Q1 = 0

ÀÀÀÀÀÀÀ
D: Diameter = 0.0000

ÀÀÀÀÀÀÀ
L0: Tool width = 0.0000
L1: Total width = 0.0000
Teeth: Number of teeth for polygon milling = 0
Angle: Chaser angle = 0000

300482 E − 07/99 Chap. 8.10 /33


TORNOS
PROGRAMMING − DECO 13 BECHLER

DECO 2000 Tool catalogue: EX_V4_10.CAT


TOOL LINE
T41/T45 Support 41 : Center Drill − HSS Art. 18250 2.5 x 6.3 mm left ESKENAZI

T41 T45
X = 0.0000 (WEAR)
X

Y = 0.0000 (WEAR)
Z = 120.0000 (WEAR)
Z
D

D: Diameter = 0.0000

T42/T46 Support 42 : Solid Carbide Drill left  4.2 mm Type 1005 APPLITEC

T42 T46
X = 0.0000 (WEAR)
X

Y = 0.0000 (WEAR)
Z = 120.0000 (WEAR)
Z
D

D: Diameter = 4.2000

T43/T47 Support 43: Tap − DC Type N320V−4 M5x0.8 mm


T33 T37
X = 0.0000 (WEAR)
X

Y = 0.0000
Z = 120.0000 (WEAR)

Z
D

D: Diameter = 6.0000

T50/T50 Support 50 : Universal Tool


X T50 T50

ÀÀÀÀÀÀÀ
ÀÀÀÀÀÀÀ
X0 = 0.0000 (WEAR) X1 = 0.0000 (WEAR)
Z

ÀÀÀÀÀÀÀ
Y0 = 0.0000 (WEAR) Y1 = 0.0000 (WEAR)

ÀÀÀÀÀÀÀ Z0 = 125.0000 (WEAR)


R0 = 0.0000
Z1 = 0.0000 (WEAR)
R1 = 0.0000
Y
ÀÀÀÀÀÀÀ
ÀÀÀÀÀÀÀ
Q0 = 0 Q1 = 0

ÀÀÀÀÀÀÀ
D: Diameter = 0.0000

ÀÀÀÀÀÀÀ
L0: Tool width = 0.0000
L1: Total width = 0.0000
Teeth: Number of teeth for polygoning = 0
Angle: Chaser angle = 0.0000

Chap. 8.10 /34 300482 E − 07/99


TORNOS
PROGRAMMING − DECO 13 BECHLER

DECO 2000 Tool catalogue: EX_V4_10.CAT


TOOL LINE
T51/T54 Support 51: Lathe Tool − TIZIT ID 24624 SDJCL 1616 H11 Insert Utilis DCGT 1

T51 T54
X = 0.0000 (WEAR)
X

Y = −3.7500 (WEAR)
Z = 40.1000 (WEAR)
R = 0.4000
Z Q=2

T52/T55 Support 52 : Endmill− HSS-coated Type 0100  10 mm FRAISA

T52 T55

ÍÍ
ÍÍ
X = 18.0000 (WEAR)
X

ÍÍ
Y = 0.0000 (WEAR)
Z = 49.8000 (WEAR)
D

Z D: Diameter = 10.0000

T53/T56 Support 53 : Solid Carbide Endmill APPLITEC  4 mm 3 lips

ÍÍ
ÍÍ
T53
X = 0.0000 (WEAR)
T56

ÍÍ
X

ÍÍ
Y = 0.0000 (WEAR)
Z = 44.8000 (WEAR)
D

Z D: Diameter = 4.0000

300482 E − 07/99 Chap. 8.10 /35


DECO 2000 Drawing: Sample V4_10
D 0 Program
am No EX_V4_10.PGM °

Chap. 8.10 /36


OPERATION LAYOUT
PROGRAMMING − DECO 13

Comb 1 Comb 2 End−Operation Counter−Operation G915/G916

T25 Unproductive T0 TB-Wizard


T0 TB-Wizard T0 TB-Wizard
3:1: ZERO OFFSET FOR
1:1: G911 2:1: INDEX T25, X2=50 4:1: G921 + POSITION
FRONTWORKI GANG

T0 TB-Wizard
4:2: ZERO OFFSET FOR
BACKWORKING

300482 E − 07/99
T11 Loop start
1:2: G13

T16 TB-Wizard T31 Unproductive T41 Unproductive


1:3: G912 3:2: FRONTWORKING T31 4:3: INDEX T41, Z4=0.5

T16 Unproductive
T25 Spindle function T41 Drilling
1:4: SPINDLE RETRACT
2:2L: M103 S3200 4:4: CENTER ∅ 2.5
0.2 mm, CLEAR TOOL
TORNOS

T16 Unproductive T31 Unproductive T42 Unproductive


1:5: FEED SPINDLE
3:3: RAPID TRAVERSE TO 4:5: INDEX T42, Z4=20
BECHLER

TO CENTER
32 mm
DECO 2000 Drawing: Sample V4_10
D 0 Program
m No EX_V4_10.PGM

OPERATION LAYOUT
PROGRAMMING − DECO 13

Comb 1 Comb 2 End−Operation Counter−Operation G915/G916

T42 Spindle function T0 Wizard TB


4:6: M404 S3100 5:2: Macro G915

T31 Unproductive
T42 Drilling
3:4: RAPID TRAVERSE
4:7: DRILL ∅ 4.2 depth 14
T31, Z3=0.5

300482 E − 07/99
T25 Unproductive T31 Drilling T43 Unproductive
2:3: RAPID TRAVERSE T25 3:5: CENTER ∅3 depth 7.6 4:8: INDEX T43, Z4=20
TO ∅ 20

T20 Unproductive T25 Unproductive T32 Unproductive T43 Spindle function


1:6: INDEX T15, X1=50 2:4: POSITION Z1=1 3:6: INDEX T32 4:9: M403 S600

T43 Threading
T0 Wizard TB
4:10: THREAD M5 X 0.7
5:3: Macro G915
DEPTH 12
TORNOS

T32 Unproductive T51 Unproductive


3:7: RAPID TRAVERSE Z3=5 4:11: INDEX T51, Z4=20
BECHLER

Chap. 8.10 /37


DECO 2000 Drawing: Sample V4_10
D 0 Program
ram No EX_V4_10.PGM

Chap. 8.10 /38


OPERATION LAYOUT
PROGRAMMING − DECO 13

Comb 1 Comb 2 End−Operation Counter−Operation G915/G916

T2 Turning T32 Drilling T51 Turning


2:5: TURN ANGLE 0.7 x 45°, 3:8: DRILL ∅5.8 DEPTH 25 4:12: TURN ∅ 8 LENGTH 20
+ ∅10 + 17 + ANGLES, M503 S1600

T25 Empty operation T32 Empty operation T52 Spindle function


2:6: 3:9: 4:13: INDEX T52, M419 Q0

300482 E − 07/99
T25 Spindle function T33 Unproductive T52 Milling
2:7: M103 S2200 3:10: INDEX T33 4:14: MILL 1 FLAT DEPTH 1

T22 Unproductive T50 TB-Wizard T0 TB-Wizard


2:8: INDEX T22, X2=70 4:15: EJECT PART 5:4: Macro G915

T33 Unproductive

3:11: RAPID TRAVERSE


Z3=0.5
TORNOS

T33 Drilling
3:12: BORE ∅6, DEPTH 20
BECHLER
DECO 2000 Drawing: Sample V4_10
D 0 Program
m No EX_V4_10.PGM

OPERATION LAYOUT
PROGRAMMING − DECO 13

Comb 1 Comb 2 End−Operation Counter−Operation G915/G916

T20 Spindle function T22 Unproductive T0 TB-Wizard


1:7: S1 STOP, M119 Q0, 2:9: CUTTER’S RAPID 3:13: CLEAR FRONTWORK-
M203 S1600 TRAVERSE GANG

T22 Milling
2:10: MILL 2 FLATS THICKN. 13

300482 E − 07/99
T22 spindle function
2:11: M103 S3200

T15 Turning T40 TB-Wizard


T24 Unproductive
1:8: TURN GROOVE ∅ 10 4:16: APPROACH
2:12: INDEX T24, X2=50
WIDTH 15 PICKOFF SPINDLE

T19 Unproductive
1:9: INDEX T19, X1=50
TORNOS

T14 Turning
1:10: BACK TURN ∅ 12
BECHLER

Chap. 8.10 /39


LENGTH. 22
DECO 2000 Drawing: Sample V4_10
D 0 Program
am No EX_V4_10.PGM

Chap. 8.10 /40


OPERATION LAYOUT
PROGRAMMING − DECO 13

Comb 1 Comb 2 End−Operation Counter−Operation G915/G916

T13 Unproductive T24 Turning


2:13: TURN GROOVE OF
1:11: INDEX T13, X1=50
THREAD

T13 Turning T25 Unproductive


1:12: TURN GROOVE 2:14: INDEX T25, X2=50

300482 E − 07/99
T11 Unproductive T25 Spindle function
1:13: INDEX CUTOFF 2:15: M103 S2600
TOOL T11

T40 TB-Wizard
4:17: PART PICKOFF, M110

T11 Turning
1:14: CUTOFF, CUTOFF-
FOLLOWUP
TORNOS

T11 Loop End T0 TB-Wizard T0 Spindle function


1:15: END-OF-CUTOFF G113 4:18: RETRACT AFTER 5:6: M404 S3000
BECHLER

PART PICKOFF
DECO 2000 Drawing: Sample V4_10
D 0 Program
m NO EX_V4_10.PGM

OPERATION LAYOUT
PROGRAMMING − DECO 13

Comb 1 Comb 2 End−Operation Counter−Operation G915/G916

T11 Spindle function


1:16: M105

T0 TB-Wizard
2:16: REFERENCING

300482 E − 07/99
T0 TB-Wizard
3:14: REFERENCING

T0 TB-Wizard
4:19: REFERENCING
TORNOS
BECHLER

Chap. 8.10 /41


TORNOS
PROGRAMMING − DECO 13 BECHLER

DECO 2000 Program No: EX_V4_10.PGM


OPERATION CODE
Operation:1:1 G911
Tool:T0 Axes: Z1 X1 Y1
Code: Duration: 488 ms
(MACRO CALCULATE ZERO OFFSET)
G901
M8 (COOLANT ON)
G900
G911

Operation:1:2 G13
Tool: T11 Axes:Z1 X1 Y1
Code: Duration: 16 ms
(CUTOFF-TOOL POSITION AT LOOP END)
G1 Z1=#2012 X1=#2011 2011 Y1=0 G100 T#2020
(LOOP START)
G13

Operation:1:3 G912
Tool:T16 Axes: Z1 X1 Y1
Code: Duration: 1824 ms
(FEED NEW PART)
G912

Operation:1:4 SPINDLE RETRACT 0.2 MM, CLEAR TOOL


Tool:T16 Axes: Z1 X1 Y1
Code: Duration: 320ms
G1 Z1=0.5 G100
G1 X1=50 G100
(CONSIDER LX FOR RETRACT IN X1)

Operation:1:5 FEED SPINDLE TO CENTER


Tool: T16 Axes: Z1 X1 Y1
Code: Duration: 296ms
G1 Z1=−30 G100 (FEED SPINDLE, CENTER)

Chap. 8.10 /42 300482 E − 07/99


TORNOS
PROGRAMMING − DECO 13 BECHLER

DECO 2000 Program No: EX_V4_10.PGM


OPERATION CODE
Operation:1:6 INDEX T15, X1=50
Tool: T20 Axes: Z1 X1 Y1
Code: Duration: 752 ms
G84 G2 X1=50 Y1=0 G100 T20 R600

Operation:1:7 S1 STOP, M119 Q0, M203 S1600


Tool: T20 Axes: Z1 X1 Y1
Code: Duration: 3040 ms
M203 S1600
M103 S0
G4 X1.5
M119 Q0
G4 X0.7

Operation:1:8 TURN GROOVE ∅ 10, width 15


Tool : T15 Axes: Z1 X1 Y1
Code: Duration: 5096 ms
G1 Z1=−50.25 X1=17.5 G100 T20 G42
G1 Z1=−51 X1=16 F0.05
G1 X1=10 F0.1
G1 Z1=−65.5 F0.1 T15
G1 Z1=−65 X1=11 G100 G40
G1 X1=19 G100
G1 Z1=−66.75 G100
G1 X1=18.5 F0.2 G41
G1 Z1=−66 X1=17 F0.05
G1 X1=9.90 F0.1
G1 Z1=−65
G1 X1=11 G40
G1 X1=20 G100

Operation :1:9 INDEX T19, X1=50


Tool : T19 Axes: Z1 X1 Y1
Code : Duration: 360 ms
G84 G3 X1=50 Y1=0 G100 T19 R30

300482 E − 07/99 Chap. 8.10 /43


TORNOS
PROGRAMMING − DECO 13 BECHLER

DECO 2000 Program No: EX_V4_10.PGM


OPERATION CODE
Operation :1:10 BACK TURN ∅ 12 LG. 22
Tool : T14 Axes: Z1 X1 Y1
Code: Duration: 3768 ms
G1 Z1=−81.25 X1=18.5 G100 G42
G1 Z1=−82.1 X1=16.8 F0.05
G1 X1=11.96 F0.1
G1 Z1=−101 F0.12 T14
G1 Z1=−100 X1=14 F0.5 G40
G1 X1=18.5 G100

Operation:1:11 INDEX T13, X1=50


Tool: T13 Axes: Z1 X1 Y1
Code: Duration: 376ms
G84 G3 X1=50 Y1=0 G100 T13 R30

Operation:1:12 TURN GROOVE


Tool: T13 Axes: Z1 X1 Y1
Code: Duration: 2120ms
G1 Z1=−69.2 X1=18.5 G100
G1 X1=16 F0.1 (GROOVE NO:1)
G1 X1=18.5 G100
G1 Z1=−3.2 G100 G91
G1 X1=−2.5 F0.1 (GROOVE NO:2)
G1 X1=2.5 G100
G1 Z1=−3.2 G100
G1 X1=−2.5 F0.1 (GROOVE NO:3)
G1 X1=2.5 G100
G1 Z1=−3.2 G100
G1 X1=−2.5 F0.1 (GROOVE NO:4)
G1 X1=2.5 G100
G1 X1=20 G100 G90

Operation:1:13 INDEX CUTOFF TOOL T11


Tool: T11 Axes: Z1 X1 Y1
Code: Duration: 504ms
G84 G3 Z1=#2012 X1=18.5 Y1=0 G100 T11 R60
G85

Chap. 8.10 /44 300482 E − 07/99


TORNOS
PROGRAMMING − DECO 13 BECHLER

DECO 2000 Program No: EX_V4_10.PGM


OPERATION CODE
Operation:1:14 CUTOFF, CUTOFF-FOLLOWUP
Tool: T11 Axes: Z1 X1 Y1
Code: Duration: 2872ms
G1 X1=3 F0.1
G1 X1=−0.5 F0.04

Operation:1:15 END-OF-CUTOFF, G113


Tool:T11 Axes: Z1 X1 Y1
Code: Duration: 112ms
(PART COUNT, CUTOFF END, LOOP END)
M20
G1 X1=#2011 F0.08
G113

Operation:1:16 M105
Tool:T11 Axes: Z1 X1 Y1
Code: Duration:296ms
M105 M9
M800 P1=−1903
(DISABLE DO 1903 TO OPEN MANUALLY)
(PICKOFF-SPINDLE COLLET)
(AT END-OF-CYCLE WITHOUT RESET)

Operation:2:1 INDEX T25, X2=50


Tool:T25 Axes: Z1 X2 Y
Code: Duration: 736ms
G1 X2=50 Y2=0 G100 T25

Operation:2:2 M103 S3200


Tool: T25 Axes: Z1 X2 Y2
Code: Duration: 280ms
M103 S3200

Operation:2:3 RAPID TRAVERSE T25 TO ∅ 20


Tool: T25 Axes: Z1 X2 Y2
code: Duration: 216ms
G1 X2=20 G100

300482 E − 07/99 Chap. 8.10 /45


TORNOS
PROGRAMMING − DECO 13 BECHLER

DECO 2000 Program No: EX_V4_10.PGM


OPERATION CODE
Operation:2:4 POSITION Z1=1
Tool: T25 Axes: Z1 X2 Y2
Code: Duration: 296ms
G1 Z1=2 G100

Operation:2:5 TURN ANGLE 0.7 x 45, + ∅10 + 17


Tool: T25 Axes: Z1 X2 Y2
Code: Duration: 6456ms
G1 X2=6.6 G100 G42
G1 Z1=1 F0.2
G1 Z1=−0.7 X2=10 F0.07
G1 Z1=−30 F0.2
G1 X2=12 F0.05
G1 Z1=−45 X2=17 F0.25
G1 Z1=−55.5
G1 Z1=−56.25 X2=18.5 F0.25
G1 X2=20 G100 G40

Operation:2:6
Tool: T25 Axes: Z1 X2 Y2
Code: Duration: 0ms

Operation:2:7 M103 S2200


Tool: T25 Axes: Z1 X2 Y2
Code: Duration: 280ms
M103 S2200

Operation:2:8 INDEX T22, X2=70


Tool: T22 Axes: Z1 X2 Y2
Code: Duration: 584ms
G84 G3 X2=70 Y2=10 G100 T22 R200

Operation:2:9 CUTTER’S RAPID TRAVERSE


Tool: T22 Axes: Z1 X2 Y2
Code: Duration: 496ms
G1 Z1=−42 G100
G1 X2=13 G100

Chap. 8.10 /46 300482 E − 07/99


TORNOS
PROGRAMMING − DECO 13 BECHLER

DECO 2000 Program No: EX_V4_10.PGM


OPERATION CODE
Operation:2:10 MILL 2 FLATS THICKN. 13
Tool: T22 Axes: Z1 X2 Y2
Code: Duration: 7648ms
G1 Y2=−10 F360 G94
M119 Q180
G4 X0.4
G1 Y2=10 F360
G1 X2=50 G100

Operation:2:11 M103 S3200


Tool: T22 Axes: Z1 X2 Y2
Code: Duration: 760ms
M103 S3200
M205
G4 X0.2

Operation:2:12 INDEX T24, X2=50


Tool: T24 Axes: Z1 X2 Y2
Code: Duration: 440ms
G84 G2 X2=50 Y2=0 G100 T24 R100

Operation:2:13 TURN GROOVE OF THREAD


Tool: T24 Axes: Z1 X2 Y2
Code: Duration: 3888ms
G1 Z1=−80 X2=20 G100
G1 Z1=−82 X2=18.5 G100 G42
G1 X2=11.4 F0.05
G2 Z1=−83 X2=9.4 F0.03 R1
G1 Z1=−86.4 F0.05
G1 X2=12.5 F0.5 G40
G1 X2=50 G100

Operation:2:14 INDEX T25, X2=50


Tool: T25 Axes: Z1 X2 Y2
Code: Duration: 328ms
G84 G2 X2=50 Y2=0 G100 T25 R200

300482 E − 07/99 Chap. 8.10 /47


TORNOS
PROGRAMMING − DECO 13 BECHLER

DECO 2000 Program No: EX_V4_10.PGM


OPERATION CODE
Operation:2:15 M103 S2600
Tool: T25 Axes: Z1 X2 Y2
Code: Duration: 784ms
M103 S2600
G4 X0.5

Operation:2:16 REFERENCING
Tool: T0 Axes: Z1 X2 Y2
Code: Duration: 968ms
G52
T0
G1 Z1=#18 X2=#25 Y2=#20 G100
G1 Y2=#26 G100

Operation:3:1 ZERO OFFSET FOR BACKWORK GANG


Tool: T0 Axes: Z3 X3
Code: Duration: 0ms
G56 Z3=#2019

Operation:3:2 T31 BACKWORKING


Tool: T31 Axes: Z3 X3
Code: Duration: 712ms
G1 Z3=80 X3=0 G100 T31

Operation:3:3 RAPID TRAVERSE TO 32mm


Tool: T31 Axes: Z3 X3
Code: Duration: 392ms
G1 Z3=32 G100

Operation:3:4 RAPID TRAVERSE T31, Z3=0.5


Tool: T31 Axes: Z3 X3
Code: Duration: 104ms
G1 Z3=0.5 G100
M1

Chap. 8.10 /48 300482 E − 07/99


TORNOS
PROGRAMMING − DECO 13 BECHLER

DECO 2000 Program No: EX_V4_10.PGM


OPERATION CODE
Operation:3:5 CENTER ∅ 3 DEPTH 7.6
Tool: T31 Axes: Z3 X3
Code: Duration: 3048ms
G1 Z3=−4 F0.05
G1 Z3=−7.6 F0.07
G1 Z3=25 G100

Operation:3:6 INDEX T32


Tool: T32 Axes: Z3 X3
Code: Duration: 360ms
G53 Z3 (CANCEL ADDITIONAL ZERO OFFSET G915)
G3 Z3=25 X3=0 G100 T32 R30

Operation:3:7 RAPID TRAVERSE Z3=5


Tool: T32 Axes: Z3 X3
Code: Duration: 296ms
G1 Z3=5 G100
M1

Operation:3:8 DRILL ∅ 5.8 DEPTH 25


Tool: T32 Axes: Z3 X3
Code: Duration: 9784ms
G4 X0.8 (DWELL FOR TURN ANGLE OTHERWISE TOOL CRASH)
G1 Z3=0.5 F2
G977 P1=5.8 P2=0 P3=−26.7 P4=5 P6=3 P7=2 P8=3 P9=0.07 P12=1
G1 Z3=5 F2

Operation:3:9
Tool: T32 Axes: Z3 X3
Code: Duration: 0ms

Operation:3:10 INDEX T33


Tool: T33 Axes: Z3 X3
Code: Duration: 496ms
G53 Z3 (CANCEL ADDITIONAL ZERO OFFSET G915)
G1 Z3=65 G100
G3 Z3=65 X3=0 G100 T33 R30

300482 E − 07/99 Chap. 8.10 /49


TORNOS
PROGRAMMING − DECO 13 BECHLER

DECO 2000 Program No: EX_V4_10.PGM


OPERATION CODE
Operation:3:11 RAPID TRAVERSE Z3=0.5
Tool: T33 Axes:Z3 X3
Code: Duration: 200ms
G1 Z3=0.5 G100
M1

Operation:3:12 BORE ∅ 6, depth 20


Tool: T33 Axes: Z3 X3
Code: Duration: 4136ms
G1 Z3=−20 F0.15
G1 Z3=25 G100

Operation:3:13 CLEAR BACKWORK GANG


Tool: T0 Axes: Z3 X3
Code: Duration: 816ms
G52 Z3
G1 Z3=#24 X3=#25 G100 T0

Operation:3:14 REFERENCING
Tool: T0 Axes: Z3 X3
Code: Duration: 280ms
G52
T0
M305
G1 Z3=#24 X3=#19 G100
G1 X3=#25 G100

Operation:4:1 G921 + LOOP-END POSITION


Tool: T0 Axes: Z4 X4 Y4
Code: Duration: 1968ms
(CALCULATE PART-PICKOFF POSITIONS)
G921
(X4 & Z4 APPROACH THEIR LOOP-END POSITION)
G1 X4=0 G100 T0
G1 Z4=#2015 G100

Chap. 8.10 /50 300482 E − 07/99


TORNOS
PROGRAMMING − DECO 13 BECHLER

DECO 2000 Program No: EX_V4_10.PGM


OPERATION CODE
Operation:4:2 ZERO OFFSET FOR BACKWORKING
Tool: T0 Axes: Z4 X4 Y4
Code: Duration: 0ms
G56 Z4=#2016

Operation:4:3 INDEX T41, Z4=0.5


Tool: T41 Axes: Z4 X4 Y4
Code: Duration: 1248ms
G3 Z4=0.5 X4=0 Y4=0 G100 T41 R150

Operation:4:4 CENTER ∅2.5


Tool: T41 Axes: Z4 X4 Y4
Code: Duration: 4176ms
G1 Z4=−3.5 F0.03
G1 Z4=−6.4 F0.05
G1 Z4=20 G100

Operation:4:5 INDEX T42; Z4=20


Tool: T42 Axes: Z4 X4 Y4
Code: Duration: 344ms
G1 Z4=20 X4=0 Y4=0 G100 T42

Operation:4:6 M404 S3100


Tool: T42 Axes: Z4 X4 Y4
Code: Duration: 280ms
M404 S3100

Operation:4:7 DRILL ∅ 4.2 DEPTH 14


Tool: T42 Axes: Z4 X4 Y4
Code: Duration: 8168ms
G1 Z4=0.5 G100
M1
G977 P1=4.2 P2=0 P3=−17.2 P4=10 P6=3 P7=2 P9=0.05
G1 Z4=20 G100

300482 E − 07/99 Chap. 8.10 /51


TORNOS
PROGRAMMING − DECO 13 BECHLER

DECO 2000 Program No: EX_V4_10.PGM


OPERATION CODE
Operation:4:8 INDEX T43, Z4=20
Tool: T43 Axes: Z4 X4 Y4
Code: Duration: 344ms
G1 Z4=20 X4=0 Y4=0 G100 T43

Operation:4:9 M403 S600


Tool: T43 Axes: Z4 X4 Y4
Code: Duration: 1488ms
M403 S600
G4 X1.2

Operation:4:10 THREAD M5 x 0.7 DEPTH 12


Tool: T43 Axes: Z4 X4 Y4
Code: Duration: 3088ms
G1 Z4=0.5 G100
M150
M1
G1 Z4=−1.4 F0.7
G1 Z4=−6 F0.6
M404 S600
G1 Z4=2 F0.7
M151
G1 Z4=20 G100

Operation:4:11 INDEX T51, Z4=20


Tool: T51 Axes: Z4 X4 Y4
Code: Duration: 912ms
G1 Z4=20 X4=−13.5 Y4=0 G100 T51 M404 S3200
G4 X0.5

Chap. 8.10 /52 300482 E − 07/99


TORNOS
PROGRAMMING − DECO 13 BECHLER

DECO 2000 Program No: EX_V4_10.PGM


OPERATION CODE
Operation:4:12 TURN ∅ 8 LG. 20 + ANGLES, M503 S1600
Tool: T51 Axes: Z4 X4 Y4
Code: Duration. 14024ms
G1 Z4=1 G100 M503 S3000
G1 Z4=−19.8 F0.12 (1st CUT ∅ 13.5)
G1 Z4=−19.5 X4=−16 F0.5
G1 Z4=2 G100
G1 X4=−9 G100
G1 Z4=−19.8 F0.12 (2nd CUT ∅ 9)
G1 Z4=−19.5 X4=−16 F0.5
G1 Z4=10 G100
G1 Z4=1 X4=−5 G100 G41
G1 Z4=−0.5 X4=−8 F0.05 (FINISH ∅ 8)
G1 Z4=−20 F0.1
G1 X4=−11 F0.05
G1 Z4=−20.75 X4=−12.5 F0.05
G1 X4=−20 G100 G40
G1 Z4=20 G100 M503 S1800

Operation:4:13 INDEX T52, M419 Q0


Tool: T52 Axes: Z4 X4 Y4
Code: Duration: 1832ms
G1 Z4=20 X4=−10 Y4=8.8 G100 T52 M404 S0
G4 X0.5
M419 Q0
G4 X0.7

Operation:4:14 MILL 1 FLAT DEPTH 1


Tool: T52 Axes: Z4 X4 Y4
Code: Duration: 4128 ms
G1 Z4=−28 G100
G1 Y4=−8.8 F340 G94
G1 Z4=20 G100
M505

300482 E − 07/99 Chap. 8.10 /53


TORNOS
PROGRAMMING − DECO 13 BECHLER

DECO 2000 Program No: EX_V4_10.PGM


OPERATION CODE
Operation:4:15 EJECT PART
Tool: T50 Axes: Z4 X4 Y4
Code: Duration: 3384ms
G923

Operation:4:16 APPROACH PICKOFF SPINDLE


Tool: T40 Axes: Z4 X4 Y4
Code: Duration: 1440ms
G1 Z4=#2013 X4=0 G100 T40 M404 S2600
(RESTART PICKOFF SPINDLE FOR PART-PICKOFF)
M418 S1
(PHASE SYNCHRO WITH S1)

Operation:4:17 PART-PICKOFF, M110


Tool: T40 Axes: Z4 X4 Y4
Code: Duration: 2424ms
M170 (ENABLE Z4 TORQUE LIMIT)
G4 X0.1
G1 Z4=#2014 F4000 G94
G4 X0.4
M172 (ENABLE SERVO-LAG CHECK)
M110 M165
G4 X0.3
M173 (DISABLE SERVO-LAG CHECK)

Operation:4:18 RETRACT AFTER PART-PICKOFF


Tool: T0 Axes: Z4 X4 Y4
Code: Duration: 768ms
G1 Z4=2 F4000 G94 G91 (2 MM RETRACT FOR TOOL BREAK
CHECK)
G4 X0.4
M172
G4 X0.2
M171 M173 (DISABLE Z4 TORQUE LIMIT)
G4 X0.3
G1 Z4=#2015 G100 T0 G90 G95

Chap. 8.10 /54 300482 E − 07/99


TORNOS
PROGRAMMING − DECO 13 BECHLER

DECO 2000 Program No: EX_V4_10.PGM


OPERATION CODE

Operation:4:19 REFERENCING
Tool: T0 Axes: Z4 X4 Y4
Code: Duration: 2240ms
G52
T0
M405
G1 Z4=#24 X4=#19 Y4=#20 G100
G1 X4=#25 G100
G1 Y4=#26 G100

Operation:5:2 Macro G915


Tool: T0 Axes: Z1 Z3 Z4
Code: Duration: 0ms
G915

Operation:5:3 Macro: G915


Tool: T0 Axes: Z1 Z3 Z4
Code: Duration: 0ms
G915

Operation:5:4 Macro G915


Tool: T0 Axes: Z1 Z3 Z4
Code: Duration: 0ms
G915

Operation:5:6 M404 S3000


Tool: T0 Axes: Z1 Z3 Z4
Code: Duration: 280ms
M404 S3000

300482 E − 07/99 Chap. 8.10 /55


TORNOS
PROGRAMMING − DECO 13 BECHLER

8.11 SAMPLE KEYWAY CONTOURING WITH CUTTER COMPENSATION

You can interpolate between two master axes only. The default master axes on Comb-Gangs1
& 2 are Z1, X1 & Z1, X2 respectively. The slave axes are Y1 & Y2 respectively.

In this example, Z1 & Y2 axes are used in circular interpolation.


 Use G83-function to permute Master Axis X2 with Slave Axis Y2 for programming circular
interpolation.

Cutter Radius 1.5 mm with Quadrant 9 (Q0 =9)


G1 Z1=−4 Y2=0 G100 T23
G1 X2=7 G100
G94
G1 X2=1 F80
G83
G1 Z1=−3 Y2=3 F200 G41
G2 Z1=−3 Y2=−3 R3
G1 Z1=−8
G2 Z1=−8 Y2=3 R3
G1 Z1=−3
G1 Z1=−3 Y2=0 G40
G1 X2=10 G100

R3 R3

3
8

Chap. 8.11 /56 300482 E − 07/99


TORNOS
PROGRAMMING − DECO 13 BECHLER

8.12 SAMPLE GROOVING WITH CUTTER COMPENSATION

The groove must be wider than than the tool plus twice the cutter radius.
Attention ! If the groove is narrower than the tool, it is machined but the tool plunges too
wide in the stock and the TB-DECO does not display this fault.
The only way to display it is to simulate the program before machining.

G1 Z1=−9.7 G100
G1 X1=7.2 G100 G42
G1 Z1=−10 X1=6.6 F0.005
G1 X1=6 F.01
G2 Z1=−10.3 X1=5.4 R0.3
G1 Z1=−13.7 F.01 T11
G2 Z1=−14 X1=6 F.005 R0.3
G1 X1=6.6 F.01
G1 Z1=−14.3 X1=7.2
G1 X1=10 G100 G40

Max. width = 4−(2 x 0.3) = 3.4

R0.3 R0.3
4

R0.3 R0.3

300482 E − 07/99 Chap. 8.12 /57


TORNOS
PROGRAMMING − DECO 13 BECHLER

8.13 SAMPLE THREADING

Example 1 : Threading with Backworking Tool T31

ISO Code :
M103 S500
G1 Z1=0.5 G100 (RAPID TRAVERSE)
M1
M150
G1 Z1=−2.4 F0.7 (STARTING TRAVEL)
G1 Z1=−9.8 F0.6
M104 S500 (THREADING OFF)
G1 Z1=2 F0.7
M151
G1 Z1=10 G100

Example 2 : Threading with Backworking Tool T41

ISO Code :
M403 S500
G1 Z4=0.5 G100 (RAPID TRAVERSE)
M1
M150
G1 Z4=−2.4 F0.7 (STARTING TRAVEL)
G1 Z4=−9.8 F0.6
M404 S500 (THREADING OFF)
G1 Z4=2 F0.7
M151
G1 G100 Z4=20

Chap. 8.13 /58 300482 E − 07/99

You might also like