Top Banner
D. ELECTRON Since 1977 Hi - Tech for the Machine - Tool CNC Z32 Programming guide (Lathes) Document M335 C2 – 20.02.08 Read thoroughly before installation Contains important information on: programming This manual contains information exclusively devoted to the user of D.Electron products to allow a correct usage of delivered devices. No part of this manual can be duplicated or delivered to third parties for an usage not corresponding to that indicated. All information here contained have been accurately checked to be exact and reliable, but D.Electron doesn’t assume any responsibility for possible inaccuracies. D.Electron reserves the right to make all modifications necessary to improve the performance and reliability of its products. D.Electron - Via R. Giuliani 140 - 50141 Firenze ITALY Internet: www.delectron.it Tel ++39 - 055 - 416927 Fax ++39 - 055 - 434220 email [email protected]
115

SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

Mar 14, 2020

Download

Documents

dariahiddleston
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

D. ELECTRONSi nce 1977 H i - Techfor t he Machi ne - Too l

CNC

Z32

Programming guide (Lathes)

Document M335 C2 – 20.02.08

Read thoroughly before installationContains important information on: • programming

This manual contains information exclusively devoted to the user of D.Electron products to allow a correct usage of delivered devices. No part of this manual can be duplicated or delivered to third parties for an usage not corresponding to that indicated. All information here contained have been accurately checked to be exact and reliable, but D.Electron doesn’t assume any responsibility for possible inaccuracies. D.Electron reserves the right to make all modifications necessary to improve the performance and reliability of its products.

D.Electron - Via R. Giuliani 140 - 50141 Firenze ITALY Internet: www.delectron.it Tel ++39 - 055 - 416927 Fax ++39 - 055 - 434220 email [email protected]

Page 2: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled
Page 3: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

CONTENTS 1. INTRODUCTION .................................................................................................................................................... 1

2. BASE PROGRAMMING ....................................................................................................................................... 2 2.1 INTRODUCTION.................................................................................................................................................... 2

2.1.1 Machine behavior at reset....................................................................................................................... 2 2.1.2 Line number .............................................................................................................................................. 3 2.1.3 The standard ISO line.............................................................................................................................. 3 2.1.4 Comment lines.......................................................................................................................................... 4 2.1.5 G functions (modals and with stop) ....................................................................................................... 4

1.1. F (FEED) PARAMETER AND FEED MANAGEMENT (G93 G94 G95).................................................................... 5 2.2 S PARAMETER AND SPEED MANAGEMENT (G96 G97) ...................................................................................... 5 2.3 M FUNCTIONS ..................................................................................................................................................... 6 2.4 AUXILIARY FUNCTIONS MA, MB, MC................................................................................................................. 7 2.5 END OF PROGRAM AND END OF SUBPROGRAM (M2 G26)................................................................................. 7 2.6 FUNCTIONS FOR ORIGINS RECALL (WORKPIECE COORDINATE SYSTEM) ........................................................... 8

2.6.1 Setup of workpiece coordinates in the part-program. ......................................................................... 8 2.7 T PARAMETER AND TOOL CHANGE ................................................................................................................... 10 2.8 TOOL CORRECTIONS: LENGTH (LX AND LZ) AND RADIUS (R) ......................................................................... 11

2.8.1 Position of the theoretical tool tip ......................................................................................................... 11 2.9 TOOL PARAMETERS MODIFICATION (DLX, DLZ, DDR) ................................................................................... 13 2.10 CANCELLATION AND SUSPENSION OF ORIGINS AND LENGTHS (G53 G54 G45) ............................................. 14 2.11 CONTOURING PLANE......................................................................................................................................... 15 2.12 MOVEMENT PROGRAMMING (G0 G1 G2 G3) .................................................................................................. 16

2.12.1 Rapid movement (G0) ........................................................................................................................... 17 2.12.2 Linear interpolation (G1) ....................................................................................................................... 18 2.12.3 Circular interpolation (G2 – G3) ........................................................................................................... 19 2.12.4 Helical interpolation (G12 – G13) ........................................................................................................ 22

2.13 INCREMENTAL COORDINATES PROGRAMMING (G90 G91) .............................................................................. 23 2.14 MIRRORING, ROTATION, TRANSLATION, SCALE FACTOR .................................................................................. 24

2.14.1 Mirroring on the working plane (G56 – G55)...................................................................................... 24 2.14.2 Machining rotation (IR JR QR) ............................................................................................................. 26 2.14.3 Machining translation (DA DB) ............................................................................................................. 27 2.14.4 Scale factor ............................................................................................................................................. 28 2.14.5 Other correction parameters................................................................................................................. 28

2.15 OTHER FUNCTIONS ........................................................................................................................................... 29 2.15.1 Dwell (G4 TT..) ....................................................................................................................................... 29 2.15.2 Axes change (G16) ................................................................................................................................ 29 2.15.3 Alive axes management (G28, G29) ................................................................................................... 30 2.15.4 Suspending and resuming Tool change (G38, G39) ........................................................................ 31 2.15.5 Mounted tool reading (G104) ............................................................................................................... 31 2.15.6 Real positions reading (G105) ............................................................................................................. 31 2.15.7 Radial programming (G106) ................................................................................................................. 31 2.15.8 Diametrical programming (G107) ........................................................................................................ 32 2.15.9 Axis movement with alarm CNxx12 (G119) ....................................................................................... 32 2.15.10 Working field limits (G123).................................................................................................................... 32

3. DIRECT PROGRAMMING OF PROFILE......................................................................................................... 34

4. TOOL RADIUS CORRECTION ......................................................................................................................... 41 4.1 VECTORIAL COMPENSATION OF TOOL RADIUS ................................................................................................. 42 4.2 PROFILE APPROACH (G41/G42) AND PROFILE RETRACT (G40)..................................................................... 44 4.3 NULL OR NEGATIVE RADIUS .............................................................................................................................. 47 4.4 CONNECTING RADIUS ON EXTERNAL EDGES (G109S, G109T) ...................................................................... 47

i

Page 4: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

4.5 INCOMPATIBLE PROFILE ERROR............................................................................................................... 48 4.6 DISPLAYED POSITIONS AND RADIUS CORRECTION ........................................................................................... 48 4.7 EXAMPLE OF A PROFILE WITH RADIUS CORRECTION ........................................................................................ 49 4.8 ALLOWANCE MANAGEMENT .............................................................................................................................. 50

5. PARAMETRIC PROGRAMMING ...................................................................................................................... 51 5.1 PARAMETER MANAGEMENT .............................................................................................................................. 51

5.1.1 Parameter assignment........................................................................................................................... 53 5.1.2 Parameter assignment through a formula .......................................................................................... 53 5.1.3 Axis movement programming with parameters.................................................................................. 54 5.1.4 System parameters programming........................................................................................................ 54 5.1.5 Axes programming through parameters AA, AB, AC ........................................................................ 55

5.2 PROGRAMMING WITH “ADVANCED LINES” ( ! ... ! ) ............................................................................................ 56 5.2.1 Assigning values to parameters and computing expressions.......................................................... 56 5.2.2 Executing jumps without return (!GON..!) ........................................................................................... 57 5.2.3 Executing jumps with return (!GON..–..!) ............................................................................................ 57 5.2.4 Executing conditioned jumps (!IF .. ; GON.. !).................................................................................... 58 5.2.5 Controlling more than one condition on the same advanced line ................................................... 58 5.2.6 Structuring conditioned jumps .............................................................................................................. 59 5.2.7 Jump to a CMOS subprogram (! GOP.. !)........................................................................................... 60 5.2.8 Jump to a CMOS subprogram with label (! GOP.. –N..!).................................................................. 61 5.2.9 Jump to a CMOS subprogram with two labels (! GOP.. –N.. –N..!) ................................................ 61

5.3 CONDITIONING BLOCKS OF PROGRAMS (--IF) .................................................................................................. 62 5.4 PROGRAM BLOCK REPETITION (--DO --LOOP) ............................................................................................... 64

5.4.1 Specifying the repetition number (LOOP {N}) .................................................................................... 64 5.4.2 Repetition condition................................................................................................................................ 64 5.4.3 Anticipated exit condition --DO --LOOP (--EXIT DO)........................................................................ 65

5.5 WRITING CMOS PROGRAMS (--DEFINE P..) ................................................................................................. 66 5.6 WRITING A TEMPORARY SUBPROGRAM SUBTEMP (--DEFINE S..).............................................................. 66

6. Z32 FIXED CYCLES AND MACROS ............................................................................................................... 68 6.1 Z32 FIXED CYCLES (G881 - G886) ................................................................................................................. 68

6.1.1 G881: Normal drilling ............................................................................................................................. 71 6.1.2 G882: Deep drilling with chip breakage .............................................................................................. 71 6.1.3 G883: Deep drilling with chip extraction.............................................................................................. 72 6.1.4 G884: Tapping with compensating chuck........................................................................................... 73 6.1.5 G885: Rigid tapping .............................................................................................................................. 73 6.1.6 G886: Reaming....................................................................................................................................... 73

6.2 G901: MACRO FOR INTERNAL/EXTERNAL GROOVE MACHINING ...................................................................... 74 6.3 G902: MACRO FOR FACIAL GROOVES MACHINING........................................................................................... 81 6.4 G903: MACRO FOR ROUGHING OF TRAPEZOIDAL SECTIONS, WITH PASSES ALONG Z. ................................... 86 6.5 G904: MACRO FOR ROUGHING OF TRAPEZOIDAL SECTIONS, WITH PASSES ALONG X.................................... 88 6.6 THREADING ....................................................................................................................................................... 90

6.6.1 G33 function ............................................................................................................................................ 90 6.6.2 Variable pitch threading (G34, G35).................................................................................................... 92 6.6.3 G905: Threading macro......................................................................................................................... 93 6.6.4 G906: Facial threadings ........................................................................................................................ 98

6.7 G907: ROUGHING MACRO ................................................................................................................................ 99 7. POLAR AXES ..................................................................................................................................................... 110

7.1 LIMITATIONS ON THE USAGE OF POLAR AXES ................................................................................................. 111 7.2 EXAMPLE ......................................................................................................................................................... 111

ii

Page 5: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

1. INTRODUCTION This manual contains a simplified description of Z32 control programming. This document doesn’t contain a detailed description of all functionalities available, focusing only on the most common and useful for the programming of lathe machines. For a complete and detailed description of all functionalities available in the Z32 numerical control, please consult “Programming Manual” M96. This manual is valid for SIS xxx.xx version or later.

1

Page 6: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

2. BASE PROGRAMMING

2.1 Introduction The base programming Z32 numerical controls follows the indications of ISO directions. The program for a workpiece (or part-program) is a text file composed by a series of instructions stored in sequential way. The ISO lines are composed by a line number (not mandatory) and by a series of elementary instructions.

2.1.1 Machine behavior at reset The machine behavior at reset is defined as the condition assumed by the machine when the pushbutton “Reset” is pressed on the console. This behavior is important because it determines the machine functionality in its base condition. The reset condition is activated in the following ways:

- At CNC power up - At the start of a program execution - After pressing the pushbutton “Reset”

• Offset behavior at reset

The behavior of the zero offset at reset, is function of machine setup. Depending on the setup, the following can happens:

- The machine sets its base origin (axis positions related to machine zero) - The machine sets as active the origin (zero offset) number 1 on all continuous axes - The machine leaves as active the last programmed offsets

Please consult the machine tool builder for further information.

• Parameter behavior at reset All parameters used for the parametric programming of part-program are set to zero upon reset. The following parameters behaves differently:

- Tool parameters. Upon reset all parameter values contained in the active tool description are assigned. The active tool is the tool actually inserted on the spindle. If the tool parameters contain technological parameters, like parameter F (feed) or parameter S (speed), these values are set at reset with the corresponding values in the tool table. Parameters normally contained in the tool description, are length L and radius R.

• Behavior of working plane at reset

As described later on, there are functions allowing to setup the working plane of the machine. This is done through the G25 function. At reset the machine switches to the configuration defined by setup made by the machine tool builder For example, in a standard lathe the working plane is the Z-X plane. Please consult the machine tool builder for further information.

• Axes behavior at reset (alive axes at reset) Upon reset the axes can be alive or not. An alive axis is an axis whose position is controlled by the numerical control. A non alive axis is an axis without control. A machine setup data defines the behavior at reset. During part-program execution an axis can be switched alive or not alive through instructions G28 and G29.

- If the alive axes are defined as reset-transparent, the reset will not alter the actual map of alive axes.

- If the alive axes are defined as non reset-transparent, the reset restores the map of alive axes defined in the setup.

Please consult the machine tool builder for further information.

• All geometric transforms, translations, mirroring, rotations, scale factors, etc. are disabled at reset.

2

Page 7: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

• All functions and settings related to RTCP (rotating tool centre point) are disabled at reset.

• At reset, all high speed settings are restored with the corresponding parameters contained in the machine

setup. Please consult the machine tool builder for further information.

Warning: it is important to remember that at the beginning of a part-program execution, a reset condition is forced. Thus the machine initiates the execution starting from the reset state, and every modification to be made on this state must be expressly programmed in the part-program.

2.1.2 Line number The line number is composed by the letter “N” followed by a number (also decimal). The line number programming is not mandatory. As an example, all following syntaxes are equivalent:

G0 Z100 and N10 G0Z100

Line number format: The line number can be an integer or decimal number, with the decimal position indicated either with a point or a comma. It is possible to insert some space characters between the letter N and the number. As an example, it is possible to write: N100 N 100.2 N100,34 The only limitation is the total number of numeric characters before and after the decimal delimiter, which cannot be more than 9 characters. Line number as jump destination: The line number may be used as “jump destination” in the logic-mathematic programming. For a description of this functionality, please consult this manual in the logic-mathematic programming section.

2.1.3 The standard ISO line After the optional line number N, the ISO line is composed by a sequence of elementary instructions. Each instruction is composed by two parts:

- ADDRESS - VALUE

The address is composed by alphabetic characters and specifies the type of operation desired. The value, normally numeric, specifies the operation to be executed. Between address and value, an arbitrary number of spaces can be inserted. The same line may contain more than one couple address-value. The followings are all valid ISO lines: N10 G0 Z100 N20 G0 X 100 Z20 G0Z0X0Y0

Format of numeric values:

3

Page 8: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

- At least one number must be programmed (the zero value is programmed with one or more “0” characters)

- The division between integer and decimal part may be indicated either with “.” (point) and with “,” (comma).

All following sample programming are valid ISO lines: X.1 X .1 X,1 X0,1 X 0.1 X00000,1000 - All numbers cannot have more than 9 significant digits before or after the decimal delimiter. All following sample programming are valid ISO lines: X123456789 X0.123456789 X0.0000123456789 X12345.6789 Invalid programming samples: X1234567.12345 X12345.67890000 X1.00000001234 - A number cannot contain space characters.

2.1.4 Comment lines A part-program may contain comment lines. A comment is contained between parenthesis. Example: G0 Z100 (initial approach)

2.1.5 G functions (modals and with stop) The G functions are preparatory functions responsible to prepare the CNC to interpret the following functions. The number following the G letter identifies the particular function for which the Z32 must be prepared. The value following the G letter must always be a numeric value (CANNOT be an expression result). Only some G functions (i.e. only some numeric values) are interpreted and executed from Z32. If a not implemented G function is programmed, Z32 issues the related alarm. The functions are those contained in the ISO regulations, with some adaptations. In particular:

• The initial zero digits of G codes can be omitted (G0 is equivalent to G00) • More than one G function can be programmed in the same block: in this case the G functions are

recognized and executed by the CNC as they are encountered in the programmed line: if contrasting G functions are programmed, the last programmed G function remains active.

• Some particular G functions require additional data to complete their definition. • MODAL functions are those G functions whose effect will be maintained also in the blocks following the

one where they were programmed: modal G functions are normally deactivated by other special G functions.

• Some G functions require the machine STOP: the profile must be completely defined when they are executed. In this case no contouring with open profile, or contouring with radius compensation can be active.

4

Page 9: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

1.1. F (Feed) parameter and Feed management (G93 G94 G95) The F parameter defines the feed velocity during machining and it is programmed writing the letter F followed by the desired feed value (numeric value with a maximum of 9 significant digits).

• Programmed after G94 it defines the F velocity in “units” per minute. Example: With linear axes measured in millimeters, F100 means 100 mm/min. With linear axes measured in inches, F100 means 100 in/min. With round axes measured in degrees, F100 means 100 deg/min.

G94 is active upon reset and it is thus the normal mode if not otherwise specified.

• Programmed after G95 it defines the feed velocity as “units” per spindle round. “Units” can be millimeters, inches or degrees, depending on the axis type.

• Programmed after G93 it defines the velocity as the inverse of time (expressed in minutes) necessary to

execute the programmed movement. In this case the F value to be programmed is equal to the velocity desired on the trajectory, divided by the length of the trajectory itself:

F = Velocity (mm/min or in/min) / Space (mm or inches)

2.2 S parameter and Speed management (G96 G97) The S parameter defines the spindle rotational speed and is programmed writing the letter S followed by the desired speed value (numeric value with a maximum of 9 significant digits). The S function doesn’t activate the spindle rotation, activated through the auxiliary functions M3 or M4.

• Programmed after G97 it defines the spindle rotational speed in rpm. G97 is active upon reset and it is thus the normal mode if not otherwise specified.

• Programmed after G96 it sets the mode “Constant cutting speed". This is a typical functionality of lathes:

the spindle rotational speed is computed in such a way that the cutting speed is equal to the programmed S value (expressed in m/min), considering the tool distance from the rotation centre of the spindle.

Note on G96: In order to avoid excessive speed when the distance from spindle center is very small, aside G96 the parameter MS is activated (programmable also before the S value) which sets the maximum spindle rotational speed (in rpm) allowed. The active MS value is that present at the moment of last programmed S: if the parameter MS is newly programmed, the limit doesn't change until a new programming of S value. The tool may jump over the rotation centre: the speed is in every case determined by the absolute value of the distance from spindle center, while the center crossing is limited by the programmed MS. It is possible to program:

G96 S100 MS4000 M3 This programming imposes a cutting speed of 100 m/min. With a maximum speed limit of 4000 rpm. In lathe machinings, it is very common the combined usage of G96 and G95 functions. Example:

G96 S100 MS4000 M3 G95 F0.3 cutting speed 100 m/min, maximum speed 4000 rpm, feed 0.3 mm/round

5

Page 10: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

2.3 M Functions The M functions (miscellaneous) are mainly related to the machine tool behavior and their functionality is mostly defined by the machine tool builder. All M functions require a machine stop. The ISO standards indicate the functionality of many M codes: only some M codes are decoded and managed by the Z32, and only these codes will be discussed. The numeric value (two integer digits) following the letter “M”, indicates the programmed M function. All leading zeros can be omitted (G0 = G00). ISO “M” codes M0 - stop

It stops the program execution; program resuming trough Start pushbutton. This function also stops spindle and coolants.

M1 – conditioned stop Same behavior as M0, but M1 activity is conditioned by a dedicated logic input: for further details, please consult the machine tool builder. This function also stops spindle and coolants.

M2 – End of program Exits the control EXECUTION mode and terminates all automatic operations.

M3 – Spindle clockwise Requests a clockwise rotation of the spindle, with the previously programmed S (speed).

M3 – Spindle counterclockwise Requests a counterclockwise rotation of the spindle, with the previously programmed S (speed).

M5 – Spindle stop Requests the spindle stop. It stops also the coolants.

M6 – Tool change Requests the mounting of last programmed T (in the same or preceding blocks) on the spindle. It also stops spindle and coolants. After the M6 execution, the NC takes into account the description of the tool mounted on the spindle, updating accordingly all parameters.

M7 – coolant #1 delivery Requests delivery of coolant #1.

M8 – coolant #2 delivery Requests delivery of coolant #2.

M9 – Coolant stop Requests stop of coolants delivery.

M19 – Spindle orientation Requests the spindle orientation. This function also stops spindle and coolants.

The machine tool builder can define other M functions for particular usage and purposes of the machine. For further details, please consult the machine tool builder. Special “M” codes A category of M functions is defined as “Special” M. Unlike normal M functions, interpreted exclusively by the machine PLC, every special M code is associated with a service part-program. A typical example of special M is the M6 for tool changing. The definition and programming of subprograms associated with special M codes, are activities reserved to the machine tool builder. During the execution of the subprogram associated to a special M, the progressive block number counting is suspended (in block search the special M appears as a single block, not searchable in an intermediate point). The subprogram associated to the special M may be executed as a single block.

6

Page 11: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

2.4 Auxiliary functions MA, MB, MC Besides M auxiliary functions, the Z32 control offers to the machine tool builder three more auxiliary functions categories (MA, MB, MC) sent to the machine logic. The MA, MB and MC functions may be programmed with 9 significant digits, before or after the decimal delimiter. The MA, MB and MC functions provoke the machine stop. For further details, please consult the machine tool builder.

2.5 End of program and end of subprogram (M2 G26) The end of program instruction is the M2 code. When the Z32 control decodes the M2 instruction, the execution will be terminated. The G26 instructions represents the end of a subprogram. When the Z32 control decodes the G26 instruction, the execution of the actual subprogram is aborted and the execution of calling program is restored. If the instruction G26 is found in the main program (not in a subprogram), the instruction has the same meaning of M2, i.e. the part-program execution is aborted.

7

Page 12: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

2.6 Functions for origins recall (workpiece coordinate system) To set the workpiece coordinate system, the workpiece origins are used. Workpiece origins are defined by the user and define the position of the machining inside the working field. When

a workpiece origins are activated, all positions programmed in the part-program are related to the active workpiece origin.

Note: The base origin is always defined on the machine. The base origin is the reference point defined by the

machine tool builder, representing the machine zero. On a lathe, the origins are normally defined considering the X axis corresponding to the spindle center, and the Z

axis corresponding to the workpiece face.

100

A

OZ1 OX1

X

Z

2.6.1 Setup of workpiece coordinates in the part-program. The address “O” indicates an origin recall to the Z32. The syntax for an origin recall is as follows:

- programming of letter “O” - name of desired axis - number of the origin to be recalled (1 to 9)

Example:

OZ1 OX1 (activates origin 1 on axes X and Z) OX2 OZ2 (activates origin 2 on axes X and Z) OZ3 (activates origin 3 on the Z axis, leaving unchanged the origins on all other axes)

Note: It is possible to program origins from 1 (OX1 OZ1) to 9 (OX9 OZ9). Two digits values, for example 0x10, are not allowed. If the origin 0 is programmed, the machine base origin is selected. Therefore the origin 0 (OX0 OZ0) cannot be used as workpiece origin. Note: In very special cases it is useful the availability of more origins than the 9 standard. In these cases, a single alphabetic character may be used instead of digits 1 to 9. It is possible, for example, to program and use the origin OXA OZA (A origin). Lower and upper case characters have different meanings. Therefore OXA and Oxa refer two different origins.

Nell’esempio al lato, le origini pezzo sugli assi Z e X (OZ1 e OY1) definiscono il punto di riferimento per le quote pezzo: Ad esempio, nel sistema di coordinate OZ1 OX1, il punto A ha coordinate Z=0 X=100

8

Page 13: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

It is possible to recall the workpiece origins on a single axis. For example, after having selected the origin OX1 OZ1, it is possible to set a new reference only for the Z axis, leaving unchanged the X reference defined before.

Nell’esempio al lato l’origine 1 è stata fatta sulla faccia del pezzo con X a centro pezzo.

Dopo la programmazione di OZ1 OX1

Il punto A ha coordinate

Z0 X80 L’origine 2 invece è stata fatta solo in Z sulla parete verticale.

Dopo la programmazione di OX1 OZ1 è possibile impostare il nuovo riferimento solo per l’asse Z programmando

OZ2

Dopo la programmazione di OZ2 il punto B avrà coordinate

Z0 X350

A

OZ1 OX1

X

Z80350

B OZ2

Note: The supplementary origins are stored in the NC CMOS memory. Depending on the process the origins belong, the files are the following:

Process: 0 1 2 3 4 5 Origin file: 126 123 120 117 114 111

In the machines with a single process, the file containing the origins is the file 126 (the file related to process 0). The syntax of a tool table file is as follows:

:OS X1=123.4 Y1=-231.5 …

The file begins with the header “:OS” which indicates the start of the section specific for the origins In the following lines, the values of the various origins are stored. In the example: The origin number 1 on X axis determines a translation of 123.4 with respect to the base origin.

9

Page 14: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

2.7 T parameter and tool change The T parameter is devoted to the tool change, together with the M6 function. The digits following the T letter indicate the tool number to recall. The T parameter has the purpose to prepare the machine for the tool changing (i.e. to prepare the axes of tool magazine for the change), while the function M6 starts the actual change. For further details, please consult the machine tool builder. For example, to set the tool number 5, the following instruction is programmed:

T5M6 Warning: At the moment of tool change all parameters present in the tool table for the desired tool are recalled and assigned. The values for tool length (LX and LZ) and radius (R) are assigned, together with every other parameter stored in the table. Note: The tool table is stored in the NC CMOS memory. Depending on the process the tool tables belong, the files are the following:

Process: 0 1 2 3 4 5 Tool table: 127 124 121 118 115 112

In the machines with a single process, the file containing the tool descriptions is the file 127 (the file related to process 0). The syntax of a tool table file is as follows:

T1P127 :TL T1#1R0.4LX-121,230LZ-74.21 T2#2LX-124,354LZ-112.345R0(TRUNCATING TOOL) …

The file starts with the tool actually mounted on the spindle. In the above example, it is the tool number 1, contained in the file number 127. The “:TL” label specifies the start of the section describing the tools. In the following lines, the descriptions of the various tool are stored.

- The “T” parameter indicates the tool number - The “#” parameter indicates the position of the tool in the tool magazine. - The various parameters describing the tool are inserted in the line through the parameter name and

its numeric value. - The line may have a comment inserted between parenthesis.

In the example: The tool T1 is positioned at place #1, has a length LX-121.23, length LZ-74.21 and radius R0.4

10

Page 15: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

2.8 Tool corrections: length (LX and LZ) and radius (R)

The corrections for a lathe tool are referred to the tool tip. The corrections are stored in LX and LZ. LX is the correction along the X axis, while LZ is the correction along the Z axis. The tool corrections are used to specify the tool dimensions referred to a standard point on the machine, used for the computing of tool corrections. It is important that this point is a common point, used for all tools Only in this way, it is possible to store congruent tool corrections for all tools. For example, it is possible to choose the tool spindle as reference point.

LX

LZ

2.8.1 Position of the theoretical tool tip The theoretical tool tip is the point defined by the length LX and LZ, and it is considered the tool zeroing point. The position of the tool tip follows the diagram shown below.

X

Z

13

5 7

Z

X

2

4

6

89

The theoretical tool tip is the point controlled by the CNC. For the execution of profiles with sloped walls or containing radiuses, in addition to the LX and LZ lengths, it is necessary to know also the orientation of the tool tip and the insert radius.

11

Page 16: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

In the example below, some horizontal and vertical walls are machined, with a tool zeroed in position 1.

X

Z

1

0-40

100

50

Nell’esempio al lato è possibile eseguire il profilo desiderato, programmando i movimenti:

X0 Z0 X50 Z-40 X100

E’ possibile programmare il movimento della punta teorica dell’utensile esattamente sul profilo da eseguire.

If the profile contains sloped segments or radiuses, it is no more possible to not consider the position of the tool tip and its radius. In these cases the theoretical tool tip must follow a path different from that programmed.

Z

X

1

Nell’esempio al lato vengono mostrati il profilo desiderato e il percorso eseguito dal centro dell’utensile. Si noti che nei tratti inclinati e nelle raggiature, la punta teorica dell’utensile non giace sul profilo desiderato. Profili di questo tipo devono essere eseguiti in Correzione Raggio. Consultare il relativo capitolo più avanti in questo stesso manuale.

The tool radius is expressed with the parameter R.

12

Page 17: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

2.9 Tool parameters modification (DLX, DLZ, DDR)

It is possible to modify the tool length corrections or the tool radius, without modifying the actual stored corrections. The LX and LX correctors may be modified through the parameters DLX and DLZ. The correction values actually used by the CNC are the following: LX + DLX LZ + DLZ The DDR parameter allows to modify the tool radius R. The actual tool radius used by the CNC, for example in profiles with radius correction, is the following: R + DDR Note: The LX tool length is always expressed al radial value and not as diameter value. The same applies to the

DLX correction. The DLX, DLZ and DDR values are always absolute values. The corrections may be cleared, by setting the

parameters to zero. Example:

N10 T1M6 (tool with LX120 and LZ145) N20 DLX0.1 (X length increased by 0.1) (from now on, the actual X length is 120.1) N30 … … N100 DLX0 (the length correction is canceled) (from now on, the actual X length is restored to 120)

13

Page 18: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

2.10 Cancellation and suspension of origins and lengths (G53 G54 G45) These functions must be used by expert programmers. To cancel an origin it is necessary to program the base origin, for example:

OZ0 OX0 To cancel the tool length corrections it is necessary to program a null length: LX0 LZ0

To suspend the corrections introduced by supplementary origins and tool length it is possible to program the G53 function. By programming the G53 function, all roto-translations, mirroring and scale factors are suspended, in order to reference all movements to the base origin. After programming the G53 function, all movements are related to the base origin (origin “0”) The restoring of corrections due to supplementary origins and tool length happens by programming the G54 function. After programming the G54 function, the situation of origins, lengths, roto-translations, mirroring and scale factors existing before the G53 programming is restored. To suspend only the correction due to the tool length it is possible to use the G45 function. After programming of the G45 function, all movements of the tool axis don’t take into account the tool length. The correction can be restored by programming the G43 or G44 function.

14

Page 19: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

2.11 Contouring plane The function allowing to define the working plane is the G25 function. Example: G25ZX defines a working plane composed by the axes Z and X (in that order). This is the standard configuration for a lathe. The contouring plane defines the plane where circular interpolations may be executed (G2 and G3). Note: The programming order of the axes composing the working plane defines the clockwise or counterclockwise direction of circular interpolations. Assuming as abscissa the first axis of the contouring plane and as ordinate the second axis, G2 executes a clockwise interpolation, while G3 a counterclockwise interpolation.

X

Z

G3

G2G2G2G2

G3

G25ZX G25XZX

Z

G3

G2

Note: At power on and after each program start, the working plane defined by the machine tool builder setup is activated. Normally, on a lathe the plane G25ZX is defined. Warning: It is possible to define a third axis in the G25 programming. The third axis is normally used for macro instructions or system fixed cycles. For example, on machines capable to handle polar coordinates programming, it is possible to define as contouring plane, the plane where the circular interpolations are made, while the third axis defines the depth axis. For further information, please refer to the chapter related to the polar axis programming.

15

Page 20: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

2.12 Movement programming (G0 G1 G2 G3) The programming of machine movements happens through the functions:

G0: rapid movement G1: linear interpolation G2: circular CW interpolation G3: circular CCW interpolation

The ISO standard states that all G functions for the movement must be MODAL. That means, for instance, that after programming a G0 movement, all successive movements will be in G0 mode, unless a different move type will be programmed. Example: (behavior with MODAL G movement functions)

G0 X150 (G0 movement) Z5 (G0 movement) X105 (G0 movement)

G1 X100 (G1 movement) Z-100 (G1 movement) X140 (G1 movement)

It is possible to define a different machine behavior through the setup, setting all G movement functions as NOT MODAL. In this case all movement without an explicit G function indication are assumed as programmed in G1 mode. (behavior with NOT MODAL G movement functions)

G0 X150 (G0 movement) Z5 (G1 movement) X105 (G1 movement)

G1 X10 (G1 movement) Z-100 (G1 movement) X140 (G1 movement)

2.12.1

16

Page 21: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

Z

X20

0

Rapid movement (G0)

G0 X200 Z10

The G0 function specifies a rapid movement, executed with the maximum speed allowed on the machine. Only linear movements can be programmed in rapid mode, allowing the programming of more than one axis. If only one axis is programmed, the movement is aligned along the programmed axis.

Z

X

200

G0 X220 G0 Z10

The G0 velocity is defined in the setup. The G0 function can be modal or not, depending on machine setup. If the function is modal, after the first positioning in G0 mode, all successive positioning without explicit specification of G0, will be also executed in G0 mode. If the function is not modal, all movements without an explicit motion function will be executed in G1 mode.

2.12.2

17

Page 22: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

Linear interpolation (G1)

Z

X20

0

100

380

T1 M6 OZ1 OX1 G96 S100 MS2000 M3 G95 F0.3 G0 X200 Z5 G1 Z0 G1 X380 Z-100 M2 Attenzione: con profili conici e utensili raggiati è necessario tenere in considerazione la correzione dovuta al raggio utensile.

The G1 function specifies a linear feed movement. More than one axis may be programmed. Up to five axes can be simultaneously programmed. The trajectory followed by the axis group to reach the programmed end point is linear: all programmed axes arrive together to the programmed point. The velocity in G1 mode is defined through the programmed feed (address F). It is possible to program the tool feed (F parameter) also on the same line containing the G1 movement. If only one axis is programmed, the movement is aligned along the programmed axis.

Z

X

200

T1 M6 OZ1 OX1 G96 S100 MS2000 M3 G95 F0.3 G0 X10 Z5 G1 Z0 G1 X200 G1 Z-200 G0 X205 M2

Warning: programming only G1 on a line (without positions) is allowed, but it has a special meaning (OPEN linear move, see the chapter describing the profile programming) and doesn’t have the purpose to prepare for a G1 movement. Example:

... N10 G1 N11 X0 Y0 ...

not allowed: block 11 issues the error CN3414

2.12.3

18

Page 23: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

Circular interpolation (G2 – G3) Allows to program a circular arc. The direction of the linear interpolation is set with G2 or G3. In case the working plane G25ZX has been specified, the following rule apply:

G2 - clockwise machining G3 - counterclockwise machining

On machines with downward positive X axis, the directions are inverted, as shown in the figure below:

X

Z

G3

G2G2G2G2

G3

Z

X

G2G3G2

G3

G2G3

Nella figura sono mostrati I sensi di percorrenza dei cerchi. Sono presi in considerazione archi di cerchio effettuati con X positive e archi di cerchio effettuati con X negative (linea tratteggiata) per il caso di torrette posteriori.

A G2/G3 movement is specified with the following syntax: G2 I… J… Z… X… F… or G3 I… J… Z… X… F… I indicates the Z coordinate of the arc center, expressed as absolute (non incremental) value J indicates the X coordinate of the arc center, expressed as absolute (non incremental) value Z is the final position along Z reached at the end of the interpolation X is the final position along X reached at the end of the interpolation F is the feed used for the interpolation. If not programmed, the last programmed value remain valid.

Warning: If the contouring plane is different from ZX plane, but is for instance the VW plane, the syntax becomes: G3 I.. J.. V.. W.. where “I” indicates the first axis of the contouring plane (V) and “J” the second axis (W)

19

Page 24: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

The circle may be also defined in a second way, i.e. by specifying the positions of the final point and the radius of the circle. In this case, the syntax of the G2/G3 movement becomes:

G2 Z… X… RA… F… or G3 Z… X… RA… F… Z is the final position along Z reached at the end of the interpolation X is the final position along X reached at the end of the interpolation RA is the radius of the circle to be executed F is the feed used for the interpolation. If not programmed, the last programmed value remain valid.

With the additional parameter KA1, it is possible to specify if the circular arc is greater than 180°. Example:

Z-70-250

R100

-570

R100

X

400

-700 -370

T1 M6 OZ1 OX1 G96 S100 MS2000 M3 G95 F0.3 G0 X410 Z5 G1 Z0 X400 G1 X-70 G3 Z-250 X400 RA100 G1 Z-370 G2 Z-570 X400 RA100 G1 Z-700 M2

Z-70-250-570

R100

X

400

-700 -370

R100

T1 M6 OZ1 OX1 G96 S100 MS2000 M3 G95 F0.3 G0 X410 Z5 G1 Z0 X400 G1 X-70 G3 Z-250 X400 KA1 RA100 G1 Z-370 G2 Z-570 X400 KA1 RA100 G1 Z-700 M2

Note: The programming of arcs greater than 180° is uncommon and useful only in rare programming cases.

20

Page 25: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

The execution of the circle must consider the radius of the tool insert. If the radius correction feature of the CNC (described in the appropriate chapter of this manual) is not used, the programmed profile must be corrected in order to obtain the desired machining on the workpiece. Example:

T1 M6 OZ1 OX1 G96 S100 MS2000 M3 G95 F0.3 G0 X440 Z5 G1 Z0 X440 G1 Z-220.4 G2 Z-350 X699.2 RA129.6 G1 X700 G1 Z-600 G0 X705 M2

2.12.4

21

Page 26: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

Helical interpolation (G12 – G13) The function G12 allow the execution of helical interpolations. The function G13 disables this mode. The position programmed for the third axis is reached at end movement, together with the two axes of the plane. The velocity when G12 is active is the programmed F value. G12 can be activated also if the radius correction is active (G41 or G42 active): it thus allow the motion of the third axis, always coordinated with that of the first two. G12 may remain active, in radius correction mode, also in shortened or deleted segments.

Warning: If a segment shortened or deleted due to the radius correction, contains a movement on the third axis, this movement will be completely executed together with the next valid movement.

Because the function G12 poses some limitations (slope, radius correction, etc.) it is a good programming practice to program it only when necessary and disable it (G13) when not. The helical interpolation may be useful in case of machinings with polar axes. For example, if the polar axes are V and W, it is possible to execute a circle on the VW plane, while moving at the same time the depth axis Z. Example:

G12 G3 V..W..I..J..Z.. G13

It is not possible to program an helicoids more than one complete turn in a single block. To program more than one turn, a repeating cycle must be used.

22

Page 27: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

2.13 Incremental coordinates programming (G90 G91) The programming of incremental positions happens through the G91 function. The syntax is as follows: HX.. G91 Starts the incremental programming in micron The parameter HX defines the scale of increment expressed in thousandth of display units. To get programmed increments in display units (millimeters, inches or degrees) it is necessary to program HX1000 In the normal practice it is common to program:

HX1000 G91 The G91 function is modal and can be deactivated by programming G90. Warning: The incremental programming is only referred to the end positions of the movements. The circle center programming is always considered as absolute, independently from the G91 programming. Example:

X

Z

4035

20151515

Warning: The HX parameter must be programmed before the G91 programming:

Correct: HX1000 G91

Erroneous: G91 HX1000

T4 M6 OZ1 OX1 G96 S30 MS2000 M3 G95 F1 G0 X45 Z5 G0 Z-20 G1 X35 HX1000 G91 X8 G0 Z-15 G1 X-8 G0 X8 G0 Z-15 G1 X-8 X8 G0 Z-15 G1 X-8 G90 G0 X45 M2

23

Page 28: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

2.14 Mirroring, rotation, translation, scale factor With these functions it is possible to translate, rotate, mirror and scale a workpiece program. Please note that all these transformations are made on programmed positions, instead of measured positions.

2.14.1 Mirroring on the working plane (G56 – G55) On the lathe machinings it is common to use the mirroring to machine a workpiece with the turret in the negative range of X positions. In these cases, it is normal to program the machinings considering the normal X+ range, then set a mirroring to move the machining in the X- range The mirroring may be set only on the two axes of the working plane. On a normal lathe, the working plane is normally the ZX plane. The mirroring is enabled with G56 (modal). G55 cancels G56 and thus the mirroring.

T4 M6 OZ1 OX1 G96 S30 MS2000 M3 G95 F1 G56 (activates mirroring) G0 X50 Z2 G1 Z0 X100 Z-80 X140 Z-90 G55 (disables mirroring) G0 X-145 M2

Z

X

100

140

80

The mirroring may be used to mirror a machining along any axis. The programmed machining is transformed in the mirror figure with respect to the mirroring axis defined by the point of coordinates (IS, JS) and by the slope QS.

The mirroring must be enabled with the G56 (modal) function followed by the programming of IS JS QS parameters:

G56 IS… JS… QS… G55 cancels G56 and thus the mirroring. When a mirrored machining is disabled, it is a good programming practice to clear (program to zero) the values IS JS QS used for the mirroring.

G55 IS0 JS0 QS0

The definition of point (IS, JS) follows the rule: IS is the coordinate related to the first axis of working plane, while JS

is the coordinate related to the second axis.

IS

JS

QS

(IS, JS)

Z

X

Warning: The coordinate of the JS point must be expressed as radial position, also if the diameter programming is active. No more than one mirroring can be activated. At reset IS = JS = QS = 0 and G55 active (mirroring not active)

24

Page 29: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

2.14.2

25

Page 30: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

Machining rotation (IR JR QR) Through the rotation functions it is possible to rotate the machining of an angle QR, around a point of coordinates IR and JR. The rotation may be set only on the working plane defined with G25. On a normal lathe, the working plane is normally the ZX plane.

The rotation activation happens automatically after programming the QR parameter.

Z

X

(IR, JR)

JR

IR

QR The definition of point (IR, JR) follows the rule: IR is the rotation center coordinate related to the first axis of contouring plane, while JR is the rotation center coordinate related to the second axis. Warn he JR point must be expressed as radia eter programming is active. The ation is thus the following:

QR… IR… JR…

The rotation may be deactivated by only programming t r, but it is advisable to clear also the IR and JR values:

QR0 IR0 JR0 At Reset IR=0 JR=0 QR=0, all rotations are canceled Warning: the rotation center (IR JR) is defined with r igin, without considering active translations (DA DB DC), mirroring (G56) or scale fac

2.14.3

2

ing: The coordinate of tl position, also if the diam

syntax to activate the rot

o zero the QR paramete

espect to the active ortors.

6

Page 31: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

Machining translation (DA DB) The functions DA and DB allow to translate the program along the axis defined by the working plane. DA executes a translation along the first axis DB executes a translation along the second axis For example, on a lathe with ZX working plane: DA translates the machining along Z axis DB translates the machining along X axis The translation activation happens automatically after programming the DA or DB parameters. At Reset DA=0 DB=0, all translations are canceled Warning: The DB translation must be expressed as radial position, also if the diameter programming is active. Example:

T4 M6 OZ1 OX1 G96 S30 MS2000 M3 G95 F1 G0 X5 Z1 G1 Z-1 X9 Z-1.5 X10 G0 X11 DA-15 DB5 G0 X5 Z1 G1 Z-1 X9 Z-1.5 X10 G0 X11 M2

Z

2.5

0.5 x 45°

X

1

1020

15

2.14.4

27

Page 32: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

Scale factor The KP parameter defines the scale factor on the working plane. On a lathe, KP applies the scale factor on the plane ZX.

Y

X

KP = 2

The scale factors are automatically applied after programming the parameters KP and KT. At Reset KP=1 KT=1

2.14.5 Other correction parameters It is possible to define further parameters as additive and multiplicative factors of the programmed positions. multiplicative factor on a single axis: KM {+axis name} additive factor on a single axis: KD {+axis name} Example:

KMX 1.2 (scale fa is) KDZ 10 (additive

The additive and multiplica At reset all effects related Warning: Unlike all otheparameters on a single a

ctor of 1.2 only on X ax

factor of 10 only on Z axis)

tive factors are automatically applied after programming the parameters KM.. and KD...

to these parameters are canceled.

r translation, rotation, mirroring and scale factors, the additive and multiplicative xis cannot be used in programs containing circular interpolations.

28

Page 33: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

2.15 Other functions

2.15.1 Dwell (G4 TT..) The dwell value, expressed in seconds, is indicated by the parameter “TT” which can be programmed on the same line of G4 function, or in a preceding line. Example:

G4 TT2.5 (dwell of 2.5 seconds) This function stops the machine: The machine stops also if the function is programmed with a null dwell time.

2.15.2 Axes change (G16) Through the function G16 it is possible to exchange the axes of the machine. The exchange of axes names is executed starting from the axis definition in the machine setup, following the diagram below:

0 1 2 3 ...

...

...G16 Desired axes names

Logical axis number

G16 must be programmed according to the following rules: - The desired axis names must be single uppercase alphabetic characters, excluding FGIJKLMNORST. - The desired axis names must follow the G16 without any blank character. - If the characters following the G16 are less than the machine axes, the remaining axes will be not

affected. Example:

Logical axis number 0 1 2 3 4

Desired axis names Z X C A B

Setup axis names X Z C A B The above example can be programmed:

G16ZX Warning: - The axis change will be suspended by G53. - The axis change is valid also for the functions G25, G28, G29, G43, G44, KM, KD - The axis change is valid for all programmed positions, but doesn’t change the contouring plane set by G25. In order to change also the contouring plane, it is necessary to program a corrected G25.

2.15.3

29

Page 34: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

Alive axes management (G28, G29) One axis is defined as “alive” when its position is controlled by the NC, also if it is stand still.

• The function G28 (modal, with stop) asks the NC to maintain under control the axis also when it is not interested by the current move (alive axis). After G28 the axis name (i.e. X) desired as alive must be specified, for instance:

G28X Only one axis can be specified, choosing among those defined as continuous in the machine setup. If more than one axis are desired as alive axes, it is possible to program G28 more than once, in the same or subsequent lines. Example:

G28Z G28A asks to maintain always under control the axes Z and A. Some axes (defined in the machine setup) may be defined as alive since power on: at every program start (or after a reset) the alive/not alive axes situation defined in the machine setup is restored.

Note: Depending on machine setup, it is possible to define the axes as “alive at reset”. With this setup all axes programmed as alive (with G28) or abandoned (with G29) restore their alive/not alive axes state also after a reset or next power on.

It is allowed, without effect, the request to activate one already alive axis.

• The function G29 (modal, with stop) asks the NC to abandon the specified axis. After G29 the axis name (i.e. X) to be abandoned must be specified, for instance:

G29 X Only one axis can be specified, choosing among those defined as continuous in the machine setup. If more than one axis have to be abandoned, it is possible to program G29 more than once, in the same or subsequent lines. Example:

G29X G29A asks the NC to abandon the axes X and A. It is allowed, without effect, the request to deactivate one already not alive axis.

Note on programming not alive axes − If the part-program contains a movement for a not alive axis, the axis is automatically activated,

moved and then abandoned, but only if its physical position doesn’t coincide with the programmed one.

The NC considers the physical position coincident with the programmed position if the error is less than the positioning error defined in the setup (normally some hundredth of millimeter).

Some problem may arise if the error is very close to the tolerance. If the measured position of the not alive axis (which shouldn’t move) changes a little, bringing the error over the setup threshold, an alarm CN1513 may be issued.

The measured position may oscillate by some transducer count, still remaining inside the positioning threshold; the threshold override may thus happen if the position is already close to the tolerance limit. Typical examples are:

− a turntable (or other axis) during the mechanical lock may have a little movement bringing the axis very close to the maximum setup error allowed

− programming a little movement for a not alive axis, corresponding to a space very close to the positioning threshold

In these cases it is recommended to not use the automatic activation of a not alive axis, but to force it alive or not, directly with part-program instructions.

30

Page 35: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

2.15.4 Suspending and resuming Tool change (G38, G39) By programming G39 it is possible to suspend the automatic execution of tool change. When the function G39 is active, the M6 (tool change) is no more automatically executed, provoking instead a machine STOP to allow the operator to manually change the tool. When the operator, after changing the tool, presses the pushbutton START, the program will resume from the interruption point, and the tool change is considered as done. The programmed tool is thus considered in all its effects as already mounted on the spindle, with related acquisition of its description, etc. Example:

… N10 G39 N12 T10 M6 (MANUALLY CHANGE WITH MILL R=10) N13 G38 …

The function G39 is modal and it is deactivated by G38, which restores the automatic execution of tool change. The function G38 is activated at reset.

2.15.5 Mounted tool reading (G104) This function transfers the T value of the tool actually mounted on the spindle in the parameter HX. The function is active only in the block where programmed. Example:

… N10 T101 M6 N11 G104 …

After execution of line N11, HX contains the value 101 (the tool actually mounted on the spindle is T101). If the management for replacement tools is installed, and the tool actually mounted is a replacement for T101, the parameter HX will contain the T code related to the tool actually mounted.

2.15.6 Real positions reading (G105) The function G105 transfers the physical measured positions in the axes position parameters, for all machine axes. The function is active only in the block where programmed, with stop. With G105 the measured positions (referred to the active origins and corrections) are transferred in the axes position parameters. The positions transfer happens only for all continuous axes, including those not alive. Warning: The position transferred is the actual measured position, not the reference position. These two positions may differ due to positioning errors (however very small to remain inside the positioning threshold). For example, if X10 is commanded and the axis moves to position 9,998, G105 acquire the position 9,998 and not 10.

2.15.7 Radial programming (G106) Modal, always active at reset for milling machines, canceled by G107. This function is used in lathe machines when radial programming is desired. On milling machines the function is not used, because automatically active at reset. After G106 the X axis and J parameter programming are considered as radial. For an example, see G107,

31

Page 36: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

2.15.8 Diametrical programming (G107) Specific function for lathes. Modal, active at reset for lathes, cancels and is canceled by G106. After G107 the X position and the associated J parameter are considered as diameters (i.e. the physical movement is the half). Example (valid for lathes):

N1 G107 N2 G0 X10 (X axis goes to pos. 5, diameter 10) N3 G106 (radial programming) N4 X10 (X axis goes to pos. 10, diameter 20) N5 G107 X10 (X axis goes to pos. 5, diameter 10)

2.15.9 Axis movement with alarm CNxx12 (G119) In order to allow for the semiauto or jog movement of axes with transducer alarms (type CNxx12), the G119 function has been introduced, with the following characteristics:

• Valid only if programmed in a semiauto line (MDI) • Modal, transparent to reset • If G119 is active, all transducer alarms type 12 are ignored. • The function is automatically reset if an auto program is started or after an attempt to execute a

subprogram (also related to a special M) from semiauto. The axes with alarm type 12 can be moved in jog or semiauto, proceeding as follows:

• Enter in semiauto • Digit G119, press ENTER and then START • Press RESET (all transducer alarms disappear) • Operate normally in semiauto or jog

Warning: When G119 is active, the software limits are disabled on all axes, because the transducers may measure not significant positions, possibly disabling the movement. The operator is in charge to have the maximum awareness in order to avoid collisions and damages. In every case, as safety precaution, the Z32 automatically enables the TEST condition (rapid reduction to 1/5) when G119 is active.

2.15.10 Working field limits (G123) With G123 it is possible to limit the working field through the programmed positions of continuous axes (logical number from 0 to 12). WARNING G123 is only active on the final programmed positions of linear movements. The intersection between movement and limit position is not estimated, but only the substitution (or the test depending on the mode) of the final programmed position. For each continuous axis it is possible to define a working field, defined through an upper and a lower limit, which limits the programmed positions after the processing of all transformations (G121, scale factors, etc.). At machine power on, all limits related to G123 are disabled. Limits setup: The functions G123 KA1 and G123 KA-1 allow to program the positive (KA1) and negative (KA-1) limits:

G123 KA1 [X...] [Y...]

32

Page 37: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

Sets the positive limits on the continuous axes X.., Y.. and activates the positive limits. G123 KA-1 [X...] [Y...]

Sets the negative limits on axes X.., Y.. and activates the negative limits.

• The limits are programmed by the name of continuous axis where the limits have to be applied. • The programmed limits are always referred to the active origin. • The limits are applied only on continuous axes explicitly programmed with G123KA1 or G123KA-1,

the other remaining unchanged. • At reset all limits are disabled. • Only the positive or negative limit can be active, or they may be both active. • On each axis : (positive limit) > (negative limit) • If the axes are already outside the limits when G123 KA1 or G123 KA-1 is programmed, the alarm

CN5514 will be issued Function modes

G123 KA3 Activates alarm mode: if one of the programmed positions is outside the working field, the alarm CN5614 is issued.

G123 KA4 Restores normal mode, the positions are limited by working field. This is the default mode, the mode normally active if not otherwise programmed. If a movement outside the limits is programmed, the movement stops when it reaches the limit set, without generating any alarm.

G123 KA5 Enables stop mode: if one or more programmed positions are outside working field, all movements are stopped and resumed only when all programmed positions lie inside working field. When the programmed positions re-enter inside the working field, all axes previously blocked are considered as programmed.

Warning: if during the stop phase more than five axes were moving, when the movement is restored, more than five axes are considered as programmed, bringing to the alarm CN2C14 (incompatible parameters).

Rules and restrictions for G123

• G123 must be programmed in a stand-alone line, otherwise the alarm CN2C14 (incompatible parameters) will be issued.

• If a circle (G2 or G3) is programmed when G123 is active, the alarm CN5714 (circle+G123) is issued. • If G53 is programmed when G123 is active, or vice versa G123 programmed when G53 is active, the alarm

CN5A14 (G123+G53) is issued. • If G105 is programmed when G123 is active, the alarm CN5914 (G123+G105) is issued.

DeactivationBy programming G123KA0 both positive and negative limits are disabled, but all limit settings (limit positions, KA3, KA4) remain valid. To restore the preceding positive limit, it is sufficient to program G123KA1 without any position, and to restore the negative limit G123KA-1 without any position.

33

Page 38: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

3. DIRECT PROGRAMMING OF PROFILE With the direct programming, it is possible to describe the final workpiece profile, using the known elements on the mechanical drawing. In this mode, sloped lines, chamfers and connecting radiuses are automatically computed by the control unit. In the direct programming, the following parameters are used in addition to the X and Z axes positions.

• QF (slope) The slope of a linear segment may be programmed through the QF parameter, with the following convention: If the X axis is oriented downwards, the convention becomes:

34

Page 39: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

• RR (connecting radiuses) The programming of a connecting radius is made through the parameter RR. The RR parameter must be programmed with a sign. Normally the choice of the sign for a connecting radius follows the same convention used for G2 and G3. If the circular arc representing the desired connection is executed in G2, the radius has a negative value. If the circular arc representing the desired connection is executed in G3, the radius has a positive value.

X

Z Z

X

RR-

RR+

RR+RR-

The figure depicts directions and connecting radius signs. Both upwards and downwards X axis orientations are considered.

If the profile is programmed in the X negative area, the convention used for the sign of radiuses becomes the following:

X

Z Z

X

RR-RR+

RR-RR+

Warning: This convention must be used only if the profile is directly programmed in the X- area; it cannot be applied if the profile is programmed in the X+ area and then mirrored.

The insertion of a connecting radius is programmed by adding the RR parameter followed by the radius value (with sign) in the same movement block which terminates with the connecting radius.

35

Page 40: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

• RB (chamfers) A chamfer is programmed through the RB parameter. The RB parameter must be programmed with a sign. Its meaning is shown in the following figure:

X

Z Z

XRB

RB

RB

RB

A chamfer is programmed by adding the RB parameter followed by the chamfer value, in the same block terminating with the chamfer.

36

Page 41: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

Programming examples:

50

30°

Z

X

-20-40

• Line with known final Z and slope: G1 Z… QF…

G1 X50 Z0 Z-20 Z-40 QF150

• Line with known final X and slope:

50

30°

Z

X

-20

70

G1 X… QF…

G1 X50 Z0 Z-20 X70 QF150

• Combinations with double slope: G1 QF…

50

Z

60°

X

30°

120

-15-50

G1 Z… X… QF…

G1 X50 Z0 Z-15 QF150 Z-50 X120 QF120

37

Page 42: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

Z-50

20

X

7030°

-25

G1 X20QF 90

Z0

Z-25 X70 QF150 Z-50

At the end of each programmed movement it is possible to add a connecting radius or a chamfer, by programming on the same movement block the value of radius (RR) or chamfer (RB).

50

30°

Z

X

-20

70

R15

Connecting radius programming examples

G1 X50 Z0 Z-20 RR-15 Z-40 QF150

38

50

Z

60°

X

30°

120

-15-50

R15

R10

50

30°

Z

X

-20

70

R15

G1 X50 Z0 Z-15 RR-10 QF150 RR-15 Z-50 X120 QF120

Page 43: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

G1 X20 Z0 QF 90 RR10 Z-25 X70 QF150 RR10 Z-50

Chamfer programming examples

50

30°

Z

X

-20-40

5

G1 X50 Z0 Z-20 RB5 Z-40 QF150

50

Z

60°

X

30°

120

-15-50

5

5

G1 X50 Z0 Z-15 RB5 QF150 RB5 Z-50 X120 QF120

39

Page 44: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

Z-50

20

X

7030°

-25

5

5

G1 X20 Z0 QF 90 RB5 Z-25 X70 QF150 RB5 Z-50

40

Page 45: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

4. TOOL RADIUS CORRECTION The Z32 NC allows to program directly the finished workpiece profile, and automatically executes all necessary profile modifications as a function of the effective tool radius. It is clear that the actual tool path will be different from the programmed profile, because of the corrections to be made in order to execute the profile with a tool having a not-null radius. In the figure, the tool center path corresponding to the programmed profile (1…6) is shown.

Please note the following:

− internal edges may not be machined due to tool radius (areas ‘X’) − some fillets are automatically inserted (not programmed in the original profile) around external edges

(B and D) − some programmed segments have been eliminated because they cannot be machined with the

programmed tool radius (segment 5) Generally, if the tool radius correction is activated in a program (with G41/G42), the Z32 NC executes a series of operations on each element of the programmed profile, in order to transform it in the tool center path. These operations may bring to the elimination of some profile elements because they cannot be machined with the tool radius. The possibility to eliminate some profile elements imposes the NC to “explore” in advance the trajectory, searching elements which cannot be machined. The G109 function allows to determine how many elements are explored in advance in this search:

G109A three elements (active at reset) G109B four elements G109C five elements G109D six elements G109E seven elements

41

Page 46: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

4.1 Vectorial compensation of tool radius In case of profile to be executed with tool radius compensation, the theoretical tool tip must follow a profile different from the programmed workpiece profile. To start the discussion related to the tool radius compensation, it is necessary at first to define two important points: the theoretical tool tip and the tool center.

A

B

In the figure, the point A represents the tool center, or the center of the radiused sector. The point B represent the theoretical tool tip. The theoretical tool tip is the point where the tool is zeroed; the axis positions displayed on the screen are always referred to the B point (theoretical tool tip).

42

Page 47: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

In order to machine a profile with radius correction, it is necessary to know the position of the theoretical tool tip with respect to the tool center:

X

Z

13

5 7

Z

X

2

4

6

89

If the X axis is oriented downwards:

9

ZZ

X X

132

5 76

84

The G150 function allows to set the orientation of the theoretical tool tip. According to the preceding figures, the orientation codes are the following: G150KA1 = position 1. Tool tip oriented in direction Z- and X- G150KA2 = position 2. Tool tip oriented in direction X- G150KA3 = position 3. Tool tip oriented in direction Z+ and X- G150KA4 = position 4. Tool tip oriented in direction Z+ G150KA5 = position 5. Tool tip oriented in direction Z+ and X+ G150KA6 = position 6. Tool tip oriented in direction X+ G150KA7 = position 7. Tool tip oriented in direction Z- and X+ G150KA8 = position 8. Tool tip oriented in direction Z- The function G150 must be programmed before the start of execution with tool radius compensation. The G150 function may be deactivated by programming G150KA0.

43

Page 48: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

4.2 Profile approach (G41/G42) and profile retract (G40) The functions G41 and G42 are used to start the execution of a profile with tool radius correction. Depending on the orientation of the X axis, the G41 and G42 functions define the tool position related to the profile. With an upward orientation of the X axis, the following rule apply: G41: looking in the profile direction, the tool is positioned on the left of the profile G42: looking in the profile direction, the tool is positioned on the right of the profile

G42

G41X

Z Z

X

G41

G42

X

ZZ

XG41G42

G41 G42

With a downward orientation of the X axis, the following rule apply: G41: looking in the profile direction, the tool is positioned on the right of the profile G42: looking in the profile direction, the tool is positioned on the left of the profile

X

X

X

Z

Z

X

X

Z

Z

G42

G41

G41

G42

G41G42

G42G41

44

Page 49: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

The programming of a profile with radius correction is mainly composed by the following parts: - approach to profile - profile execution - retract from profile

The approach movement is the movement following the G41 or G42 programming. The approach movement brings the radiused tool tangent to the path, on the first point defining the profile. The tool center is thus positioned orthogonal to the profile tangent to the first point:

The same applies to the last point of the profile. The last movement brings the radiused tool tangent to the path, on the last point defining the profile. The tool center is thus positioned orthogonal to the profile tangent to the last point:

Two types of approach and retract movements are available. 1) Linear approach and retract The general programming syntax is as follows:

G0X..Z.. (initial positioning) G41 (radius correction activation) X.. Z.. (first profile point) … (profile) … X.. Z.. (last profile point) G40 (radius correction deactivation) X.. Z.. (retract)

For example, a simple profile:

Z

X

-50 5

50

-40

7080

G0 Z5 X70 G42 X50 Z0 Z-50 X70 G40 X80 Z-40

45

Page 50: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

Warning! The part-program line where the first point to be reached with radius correction is defined, must immediately follow the line where the radius correction is activated. Correct programming G41 (o G42) X.. Z.. incorrect G41 X.. Z.. The programming of X and Z positions on the same line containing the activation function G41 (or G42) has the meaning to consider also the approach movement with radius correction. In these cases it is not always possible to reach the first programmed point. Consult the programming manual M323 for further information. 1) Circular approach and retract In this case, the programming syntax is as follows:

G0X..Z.. (initial positioning) G41 X.. Z.. QF..(radius correction activation) … (profile) … X.. Z.. (last profile point)

G40 X.. Z.. (radius correction deactivation) The approach movement is described in the block containing G41 (or G42) X… Z… QF… X and Z are the positions of the first point on the profile, while QF is the final slope of the approaching movement, i.e. the direction of the first profile segment. QF follows the same convention mentioned for the normal profile.

Z

X

-50 5

50

-40

7080

G0 Z5 X70 G42 X50 Z0 QF180 Z-50 X70G40 X80 Z-40

Every combination between linear and circular approach/retract movements is allowed.

46

Page 51: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

4.3 Null or negative radius Null or negative tool radius are allowed: in case of null radius, exactly the programmed profile will be executed, while a negative radius is equivalent to exchange the meaning between G41 and G42. A negative radius may be useful when the profile has already been computed (i.e. by an automatic programming system) for the typical tool radius, and the operator has added the tool radius compensation directly on the machine to compensate possible wearing or difference in the actual tool used. Please, pay attention that the radius considered by the Z32 is fictitious, losing the automatic adaptation of tool center velocity and the constancy of tool periphery velocity: in the blocks where this adaptation is required, the FEED must be programmed anew. Warning: in presence if very small tool radius (less than about 3 micron) the machined profile may have a maximum error of about 2 micron, normally well supported in most applications, because these errors are lower than other errors influencing the final result (following errors, temperature, tool geometry, etc.). If this error entity cannot be supported, it is recommended not to program very small tool radius; it is better to program the physical tool radius and not its correction with respect to the theoretical radius.

4.4 Connecting radius on external edges (G109S, G109T) In case of normal radius correction, a connecting radius is inserted on external edges. The function G109S it is possible to force the Z32 not to insert the connecting radius, continuing instead the current segment up to the bisecting line of the edge. The G109S may be active only on edges produced by two linear segments. If one or both elements are circular arcs, the normal connecting radius is inserted. G109S (modal, not active at reset) forces the bisecting line correction, while G109T (modal, active at reset) the normal behavior of Z32 is restored, with the connecting radius insertion.

G109T G109S Warning: In order to avoid large elongations of programmed elements, the G109S mode cancels only the external fillets below 91 degrees.

G109S

47

Page 52: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

4.5 INCOMPATIBLE PROFILE error If a profile cannot be executed with tool radius compensation, the INCOMPATIBLE PROFILE error may be issued. In these cases it is possible to program the function G109R, which forces the generation of a fillet also around internal edges (provoking a kind of “knot”) with the purpose to display the problem, and eliminating the issuing of INCOMPATIBLE PROFILE error. G109R is canceled by G109N. Please pay attention that the activation of G109R may provoke the tool to d profile, and long fillets may remain around internal edges in case of complex profiles. Warning: usually G109R is programmed only to understand the situa OMPATIBLE PROFILE error with tool radius correction. It is not a function to be used g.

4.6 Displayed positions and radius correction During the execution of a profile with radius correction, the positions display eferred to the virtual tool tip. Therefore, in case of sloped walls or circular elements, the displayed positioprofile positions. The following figure depicts the path pertaining to the theoretical profile (soltool tip displayed on the screen (dashed line).

Z

X

1

48

element generating the

enter in the programme

tion provoking the INC in normal programmin

ed by the CNC are still r

ns don't correspond to the theoretical

id line) and the positions of the virtual

Page 53: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

4.7 Example of a profile with radius correction

-30-50-60

50

70

110

R5

R5

Z5

2x45°

30°

120X

T4 M6 OZ1 OX1 G96 S30 MS2000 M3 G95 F1 G150KA1 G0 Z10 X60 G42 X50 Z5 Z-30 RR-5 X70 Z-50 QF150 RR-5 X110 RB2 Z-60 X120 G40 G0 Z-50 X130

In the preceding figure, the tool center path was shown. The positions displayed on the screen are instead those depicted in the following figure:

49

Page 54: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

4.8 Allowance management With the function G150 it is possible to define an allowance in the machining of a profile executed with radius correction. The programming syntax is

G150 I…

Example: 2mm allowance an the profile:

-30-50-60

50

70

110

R5

R5

Z5

2x45°

30°

120X

T4 M6 OZ1 OX1 G96 S30 MS2000 M3 G95 F1 G150KA1 I2 N10 G0 Z10 X60 G42 X50 Z5 Z-30 RR-5 X70 Z-50 QF150 RR-5 X110 RB2 Z-60 X120 G40 G0 Z-50 X130 N20 G150 I0 !GON10-N20!

The figure shows:

- The programmed profile (thick line) - The tool center path (dashed line) - The unmachined allowance (shadowed zone)

In the programming example, after the profile execution with an allowance of 2mm, the allowance is cleared (instruction G150 I0) and the profile is repeated, with no allowance. The profile is repeated through the jump with return instruction !GON..-N..! Consult the chapter related to the jump with return instruction (parametric programming).

50

Page 55: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

5. PARAMETRIC PROGRAMMING

5.1 Parameter management A parameter defines a numeric value recalled by means of an identifier. The Z32 CNC offers to the user three types of parameters: • Literal parameters:

They are composed by a combination of one or more alphabetic characters. The names of literal parameters cannot contain: - space (BLANK) characters - NUMERICAL characters - the characters ! $ % ( ) * + , - . / ; < = > - the first character cannot be one of the following: “G”, “N”, “O” Lower case characters cannot be used. SYSTEM PARAMETERS: Some parameters have a special meaning in Z32 programming, and they cannot be used for purposes different to those already assigned. These parameters, defines as system parameters, are:

AA first axis of tern set by G25 AB second axis of tern set by G25 AC third axis of tern set by G25 AE communication from the logic AM first axis measure AN negative probe correction first axis AP positive probe correction first axis AU communication to logic BM second axis measure BN negative probe correction second axis BP positive probe correction second axis CM third axis measure DA first axis translation DB second axis translation DC third axis translation DM measuring distance F feed HR temporary for radius polar coordinate and G110 HT temporary for angle polar coordinate and G110 HX temporary for X cartesian coordinate and special G HY temporary for Y cartesian coordinate and special G I first axis center coordinate IR first axis rotation center coordinate IS first axis mirroring center coordinate J second axis center coordinate JR second axis rotation center coordinate JS second axis mirroring center coordinate K threading pitch and G110 KA selection parameter KD additive factor single axis

51

Page 56: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

KG GEPI-2 code and permanent subprograms KM multiplicative factor single axis KP scale factor on the plane KT third axis scale factor L tool length (milling machines) LX tool length (lathes) LZ tool length (lathes) M auxiliary function MA auxiliary function MB auxiliary function MC auxiliary function MS maximum speed in G96 P nurbs order QA auxiliary slope QF final slope QR rotation angle QS mirroring axis slope R tool radius RA circle radius RB chamfer RR connecting radius S speed T programmed tool TA place of tool on the spindle TB place of programmed tool TT dwell time # synchronizer between part-program and ML logic #A - #Q synchronizer between part-program and ML logic D.ELECTRON may define further parameters in the future, to enhance the Z32 software features.

AXES NAMES: The axes names are always defined with a single letter, by choosing among the following: A B C D H P Q U V W X Y Z They must be defined in the machine setup. USER PARAMETERS The user is allowed to define up to 60 “literal parameters” in a program for the purpose of parametric programming. The following combinations are not allowed:

RQ SN CS AT square root, sine, cosine, arc-tangent PI pi constant PC CP polar/cartesian conversion and inverted IF test operator EB advanced line interruption

It is common to use as user parameters for parametric programming, the parameters composed by the letter H followed by a second letter, for instance HA, HB, HC, etc.

52

Page 57: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

• PAR[…] parameters It is a vector containing 513 parameters. From PAR[0] to PAR[512]. The parameter number may be an expression result, for example: HA10 HB5 PAR[6]30 PAR[HA + PAR[HB + 1]] is equivalent to: PAR[10+PAR[6]] than means: PAR[40]

The usage of PAR[…] parameters may be a substitute for literal user parameters in all situations. Furthermore, these parameters are not subject to any restriction on the maximum number of parameters allowed to be used.

• PAL[…] parameters Same usage notes as for the array PAR[…].

It is a vector containing 513 parameters. From PAL[0] to PAL[512]. These parameters contain only INTEGER numbers, normally used for the information exchange between PLC and part-program. The values from PAL[256] to PAL[512] are read only. The values from PAL[0] to PAL[255] may be written by the part-program. When a non integer number is assigned to a PAL[…] parameter, the number is rounded to the nearest integer value.

5.1.1 Parameter assignment

The assignment of a numeric value to a parameter is made through a programming very similar to that for an axis movement. For example, to assign the value 100 to the parameter HA, it is possible to write:

HA100 or, to assign the value 1 to the parameter PAR[10], it is possible to write:

PAR[10]1

5.1.2 Parameter assignment through a formula It is possible to program mathematical expression whose result is a function of numeric values or other parameters. Mathematical operators with a single operand:

SN(sine of an angle in degrees) CS(cosine of an angle in degrees)

TAN(tangent of an angle in degrees) AT (arctangent in degrees) RQ (square root) ABS (absolute value) INT (truncated integer value) NEI (rounded integer value) - (sign change) Mathematical operators with two operands: + addition

- subtraction * multiplication / division

53

Page 58: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

To assign an expression result to a parameter, the lower than sign “<” and higher than sign “>” (acute parenthesis) are used to indicate the beginning and the end of the expression. Inside the expression it is possible to use the parenthesis “(“ and “)”. For example, to assign the value HB+1 to the parameter HA, it is possible to write:

HA< HB + 1 >

or to assign the square root value of parameter HC to the parameter PAR[10]: PAR[10]< RQ(HC) >

Through the use of parenthesis it is possible also to program complex expressions.

HA< HB + (HC+HD/2)/(SN(HE) >

5.1.3 Axis movement programming with parameters Through the parameter programming it is possible to program machine movements. A very simple example: N10 HA 10 N20 HB 0.5 N30 HC 30 N40 G0 X<HA> N50 F<HB> N60 G1 X<HC+100>

In lines from N10 to N30, values are assigned to the parameters. In the line N40, a rapid movement of X axis is executed up to the position contained in the parameter HA

(i.e. 10) I the line N50 a feed is set with the value contained in parameter HB (0.5) In the line N60 a feed movement of X axis is executed up to the position HC+100 (i.e. 130) with a Feed of

0.5. The movement programming using parametric expressions may be quite complex, following the same rules indicated for parameters programming.

5.1.4 System parameters programming Through parametric programming, it is possible to assign numeric values to the system parameters previously described. For example, it is possible to set or modify the tool length along the X axis (LX parameter):

LX100 Assigns the value 100 to the tool length parameter. or

LX< LX-2 > Shortens the tool by 2 mm in direction X In a similar way it is possible to assign values, also by using expressions, to all system parameters. Warning: the system parameters programming is absolutely equivalent to the programming of user parameters. The usage of system parameters is however reserved to the purpose associated with the parameter and not for generic parametric computations. .

54

Page 59: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

5.1.5 Axes programming through parameters AA, AB, AC The system parameters AA, AB and AC are very useful for parametric programming (like macros or fixed cycles). These parameters represents respectively the first (AA), the second(AB) and the third(AC) axis specified with G25. For example, with G25ZXC, the parameter AA represents the axis Z, parameter AB the X axis and AC the C axis. Through these parameters it is thus possible to program axes movements independently from the real axes names.

The programming syntax is exactly the same as the normal axis movement programming; it is therefore possible to use G0, G1, G2, G3 movements and all the functionality available for the programming of complex profiles (connecting radiuses, chamfers, etc.). Example:

G25ZX G0 AA5 (rapid movement of Z axis to position 5) G0 AB120 (rapid movement of X axis to position 120) HA-40 (assigns the value -40 to the HA parameter) G1 AA<HA> (rapid movement of Z axis to position -40) …

55

Page 60: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

5.2 Programming with “advanced lines” ( ! ... ! ) The Z32 CNC allows the usage of special program lines, called “advanced lines”. Through these lines it is generally possible to handle most cases of logic-parametric programming, allowing for conditioning and jumps with or without return. An advanced line is a program line beginning and terminating with the “!” character. This line may be preceded by the letter N followed by a line number. Inside an advanced line more than one instruction may be contained, each separated from the others by means of character “;” or “!”, as below described. Note: In advanced lines it is NOT possible to program machine movements.

5.2.1 Assigning values to parameters and computing expressions The assignment operator is the character “ = “. More than one assignment is possible, by using the separator “;”. Example: N10 !HA=16 ; HB=RQ(HA)+5 ; HC=0! Note: The computing of expressions or the assignment of a value to a parameter is possible both in an advanced line and in a normal line; for instance, the following expressions are equivalent: !HA=10! or HA10 Also equivalent are the instructions: !HA=PAR[3]! and HA<PAR[3]> Warning: as already told, it is not possible to program an axis movement in an advanced line. For example, by programming !X=100! no machine movement are produced, but it has the only meaning to set the value of parameter X to the value 100. A machine movement can be programmed only outside advanced lines.

5.2.2

56

Page 61: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

Executing jumps without return (!GON..!) The function allowing to jump to a label inside a program is the function:

!GON..! Jump destination is the line corresponding to the number (also decimal) following the letter N. Example: The program executes N10 and jumps to the label N20:

… N10 !GON20! … N20 …

Warning: In order to use the N numbers as destinations for a jump, it is necessary for the N character to be the first character present in the line, without leading spaces.

Correct programming: … N10 !GON20! … N20 … Erroneous programming: N10 !GON20! … N20 …

5.2.3 Executing jumps with return (!GON..–..!) The function

!GON..-N..! allows to execute the program section contained between the N labels specified, and then to return to the line following the calling line. Example:

… … N20 !GON40-N50! N30 … N40 …

N50 …

The program executes N20, jumps to N40, executes the instructions between N40 and N50 and then returns executing line N30. Returning jumps may be nested inside other returning jumps up to a maximum depth of 10 levels. Warning: In order to use the N… numbers as destinations for a jump, it is necessary for the N character to be the first character present in the line, without leading spaces.

5.2.4

57

Page 62: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

Executing conditioned jumps (!IF .. ; GON.. !) The instruction allowing the execution of conditioned jumps inside a program is the following:

!IF {condition} ; GON..! A condition may be any parametric expression containing one of the following comparison operators between two parametric expressions: > higher than < lower than = equal <> different >= higher or same >= lower or same Example: !IF HA > 10 ; GON20! jumps to N20 if HA is higher than 10. The condition may also be an expression: !IF (HA+HB)*PAR[10] >= HC ; GON20! Warning: In order to use the N… numbers as destinations for a jump, it is necessary for the N character to be the first character present in the line, without leading spaces.

5.2.5 Controlling more than one condition on the same advanced line On a single advanced line it is possible to control more than one condition: !IF HA > 10 ;IF HB < 5 ; GON30! jumps to N30 if HA is higher than 10 and HB is lower than 5. Warning: In order to use the N… numbers as destinations for a jump, it is necessary for the N character to be the first character present in the line, without leading spaces.

5.2.6

58

Page 63: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

Structuring conditioned jumps Normally the various commands to be executed in a single advanced line are separated by the “;” character. When an IF condition is programmed, if the condition is verified, the subsequent commands are executed, otherwise the analysis jumps to the next “!” character present in the line. Example: !IF HA > 10 ; GON20 ! IF HA >5 ; GON30 ! GON40! In the above example, if the HA > 10 is verified, the program jumps to N20. If HA > 10 is not verified, the instruction following next “!” character is executed, thus controlling if HA is higher than 5. With this logic, the sample line behaves as follows: If HA is higher than 10, jump to N20. If HA is between 5 and 10, jump to N30 Otherwise jump to N40 Warning: the character “!” doesn’t interrupt an advanced line execution. To interrupt an advanced line execution, a jump command !GON..! is necessary, or the programming of an end of block instruction EB. For example, in the following line: !IF HA>=0 ; HA=HA+1 ; EB ! HA=HA-1! the EB instruction is necessary to terminate the line execution. The line has the following behavior: If HA is higher or equal to zero, it is incremented by 1, otherwise it is decremented by 1. If the programming were as follows: !IF HA>=0 ; HA=HA+1 ; EB ! HA=HA-1! This instruction is not correct because: if HA is higher or equal to zero, HA is at first incremented and then decremented by 1, because, as already told, the “!” character doesn’t interrupt the line execution. Another example of using the EB terminator is the following: !IF HA > 0 ; EB ! GON10! That means: if HA is higher than zero, it terminates the advanced line and continues the execution from next line, otherwise, jumps to N10. Warning: In order to use the N… numbers as destinations for a jump, it is necessary for the N character to be the first character present in the line, without leading spaces.

5.2.7

59

Page 64: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

Jump to a CMOS subprogram (! GOP.. !) With the instruction

!GOP..! It is possible to suspend the execution of current program and jump to the execution of a subprogram. The !GOP..! instruction is valid for programs stored in the CMOS memory (internal memory) of CNC, and it is used by specifying the program number to be activated. Example:

N10 … N50 !GOP10!

The main program is executed up to line N50, then the execution jumps to CMOS program number 10. The subprogram must terminate with the subprogram end instruction G26. Example:

N10 … N50 !GOP10!

N60 …

Sottoprogramma CMOS 10: N10 … … N100 G26

The main program is executed up to line N50, then the execution switches to subprogram 10, executed from line N10 to line N100. The G26 instruction indicates the end of subprogram, then the execution switches back to the calling program continuing from line N60. Warning: the subprogram end instruction is the function G26. If a called subprogram contains the end of program instruction “M2”, the execution stops without returning to the calling program.

5.2.8

60

Page 65: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

Jump to a CMOS subprogram with label (! GOP.. –N..!) It is possible to jump in a CMOS subprogram starting the execution from a given label. Example:

N10 … N50 !GOP10-N30! N60 …

Sottoprogramma CMOS 10: N10 … N30 … … N100 G26

The main program is executed up to line N50, then the execution switches to subprogram 10, executed from line N30 to line N100. The G26 instruction indicates the end of subprogram, then the execution switches back to the calling program continuing from line N60.

Warning: In order to use the N… numbers as destinations for a jump, it is necessary for the N character to be the first character present in the line, without leading spaces.

5.2.9 Jump to a CMOS subprogram with two labels (! GOP.. –N.. –N..!) It is possible to jump in a CMOS subprogram starting the execution from a given label. Example:

N10 … N50 !GOP10-N30-N70! N60 …

Sottoprogramma CMOS 10: N10 … N30 … N70 … N100 G26

The main program is executed up to line N50, then the execution switches to subprogram 10, executed from line N30 to line N70. After execution of line N70, the calling program continues the execution from line N60.

Warning: In order to use the N… numbers as destinations for a jump, it is necessary for the N character to be the first character present in the line, without leading spaces.

61

Page 66: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

5.3 Conditioning blocks of programs (--IF) The structured instruction --IF is useful when it is necessary to condition the execution of whole program blocks. Example:

--IF {condition 1} N10 … N20 --END IF

The program executes the lines from N10 to N20 only if {condition 1} is verified. A condition may be any parametric expression containing one of the following comparison operators: > higher than < lower than = equal <> different >= higher or same >= lower or same The complete syntax is as follows:

--IF {condition 1} ;comment N10 … (executed if condition 1 is true) N20 --ELSE IF {condition 2} ;comment N30 … (executed if condition 1 is false and condition 2 is true) N40 --ELSE ;comment N50 … (executed if condition 1 is false and condition 2 is false) N60 --END IF ;comment N70

The --IF instruction indicates the first checked condition. If {condition 1} is verified, the blocks from N10 and N20 are executed, then the execution passes to N70. If {condition 1} is not verified, the condition --ELSE IF is checked. If {condition 2} is verified, the blocks from N30 and N40 are executed, then the execution passes to N70. If neither {condition 1} nor {condition 2} are verified, the execution passes to the --ELSE block, and the blocks from N50 to N60 are executed, then the execution passes to N70. In lines containing --IF, --ELSE IF, --ELSE and --END IF it is possible to insert a comment after the character “;”. In synthesis: The --IF instruction is the first checked condition. The blocks --ELSE IF specify the conditions checked if the preceding conditions are not true. It is possible to have more than one block --ELSE IF. In this case the conditions are checked in sequence.

--IF {condition 1} … (executed if condition 1 is true) --ELSE IF {condition 2} … (executed if condition 1 is false and condition 2 is true) --ELSE IF {condition 3} … (executed if condition 1 is false, condition 1 is false and condition 3 is true) --ELSE … (executed if condition 1 is false, condition 1 is false and condition 3 is false) --END IF N70

The instruction --ELSE identifies the block of instructions executed if all other conditions are not true. The --END IF instruction identifies the end of an IF block.

62

Page 67: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

It is possible to nest IF instructions up to 31 levels. Example:

--IF {condition 1} --IF {condition 2} --IF {condition 3} N30 … (executed if condition 1 is true, condition 1 is true and condition 3 is true) N40 --END IF --END IF --END IF

63

Page 68: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

5.4 Program block repetition (--DO --LOOP) The blocks inserted between the instructions --DO and --LOOP are repeated until the exit condition is satisfied Example:

--DO N10 … N100 --LOOP

The blocks from N10 to N100 are endless repeated.

5.4.1 Specifying the repetition number (LOOP {N}) The number of repetitions can be specified by inserting the number on the same line as the LOOP instruction:

--LOOP {N} In the following example, blocks from N10 to N100 are repeated 10 times, then the execution passes to block N110. The blocks from N10 to N100 are thus executed 11 times, because the number specified is the number of repetitions. This specification may be passed through a parameter contained between acute parenthesis: --LOOP <HA>. In this case the parameter is rounded to the nearest integer.

--DO N10 … N100 --LOOP 10 N110

5.4.2 Repetition condition A condition to be checked in order to execute the repetition may be specified on the same line as the LOOOP instruction:

--LOOP IF {condition} In the following example, blocks from N10 to N100 are repeated if the specified condition is verified, then the execution passes to block N110. That means, if HA is lower than 10, the repetitions are executed; if HA is higher than 10 the repetitions are no more executed.

--DO N10 … N100 --LOOP IF HA < 10 N110

5.4.3

64

Page 69: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

Anticipated exit condition --DO --LOOP (--EXIT DO) An anticipated exit condition from a block loop execution may be expressed with:

--EXIT DO IF {condition} The --EXIT DO instruction allows an anticipated exit from the --DO --LOOP structure when the specified condition is true. In the following example, blocks from N10 to N100 are repeated until the exit condition is verified. When the exit condition is verified, the loop exit happens in block N50, the instructions from N50 and N100 are no more executed, and the control passes to instruction N110.

--DO N10 … N50 --EXIT DO IF HA > 10 … N100 --LOOP N110 Warning: It is possible to use the --EXIT DO instruction also without the IF condition written on the same program line; it is thus possible to write: --DO … --IF HA>100 --EXIT DO --END IF … --LOOP

65

Page 70: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

5.5 Writing CMOS programs (--DEFINE P..) Through the instruction --DEFINE P.. it is possible to write a CMOS file of the CNC. With this instruction it is possible to write a CNC CMOS file without the need to directly edit it. The --DEFINE P.. instruction may be used only for CMOS user files, that means for CMOS files from number 1 to number 109. The instruction has the following syntax:

--DEFINE P.. ; comment … {program listing} … --END DEFINE ; comment In lines containing --DEFINE, --END DEFINE it is possible to insert a comment after the character “;”.

The program to be written may only be a CMOS program and must be specified with its number. In the following example, the CMOS program number 10 is written:

--DEFINE P10 … {program listing} … --END DEFINE

The definition of a CMOS program doesn’t produce any machine movement. The written program may be executed by recalling it by a CMOS subprogram jump instruction !GOP..! Example:

T1M6 F5000 --DEFINE P10 G1 X<X-0.1> G1 Z-50 G26 --END DEFINE

G0 X100 G0 Z2 !GOP10! G0 X99.9 G0 Z2 !GOP10! G0X101 M2

In the above example, the instructions for the definition of program 10 don’t produce any movement; the CMOS program number 10 is executed only after its recall trough the function !GOP10! Warning: In the definition of a CMOS subprogram by means of the --DEFINE P.. instruction, it is necessary to insert the subprogram end instruction G26. Warning: The --DEFINE P.. instruction must be executed before the calling of the defined subprogram (by the instruction !GOP..!) Warning: The definition of a CMOS program through the --DEFINE P.. instruction is not temporary. The program can be also used after machine shutdown and successive power on.

5.6 Writing a temporary subprogram SUBTEMP (--DEFINE S..) Through the --DEFINE S.. instruction it is possible to write a temporary subprogram. The instruction has the following syntax:

--DEFINE S.. ; comment …

66

Page 71: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

{program listing} … --END DEFINE ; comment

The subprogram to be written must be specified with the desired subtemp number. In the following example, the subtemp number 20 is written:

--DEFINE S20 … {program listing} … --END DEFINE

The definition of a subtemp doesn’t produce any machine movement. The written subtemp may be executed by recalling it by a subtemp subprogram jump instruction !GOS..! This instruction has the same syntax as the subprogram jump instruction !GOP..!, the only difference being the character “S” which must be used instead of character “P”, to specify the subtemp number. Example:

T1M6 F5000 --DEFINE S20 G1 X<X-0.1> G1 Z-50 G26 --END DEFINE

G0 X100 G0 Z2 !GOS20! G0 X99.9 G0 Z2 !GOS20! G0X101 M2

Up to 64 subtemps may be used for a process. A single subtemp may contain a program no larger than 240KB. The total content of all defined subtemps cannot exceed 1MB. A subtemp may be recalled by using the instructions !GOS..!, !GOS..–N..! and !GOS..–N..–N..! These instructions are equivalent to the corresponding !GOP.. ! instructions valid for CMOS programs. It is possible to use a subtemp as a fixed cycle with the instruction G27S.. To program a subtemp as a fixed cycle, please consult the section related to fixed cycles. Warning: In the definition of a subtemp by means of the --DEFINE S.. instruction, it is necessary to insert the subprogram end instruction G26. Warning: The --DEFINE S.. instruction must be executed before the calling of the defined subtemp with the instruction !GOS..! Warning: The definition of a subtemp through the --DEFINE S.. instruction is temporary. The subtemp is valid only during the current execution. At execution end, the subtemp is cleared.

67

Page 72: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

6. Z32 FIXED CYCLES AND MACROS This chapter describes the standard macros and fixed cycles of the Z32 CNC. Cycles and machining here described are valid for versions SIS T109-8B and following.

6.1 Z32 Fixed cycles (G881 - G886) The functions from G881 to G886 allow to program the system fixed cycles. When a fixed cycle has been activated (with the functions G881-G886), it is automatically executed at the end of each programmed G0 (RAPID) positioning. Movements executed in feed don’t trigger the fixed cycle execution. The programming of G881-G886 is as follows:

Parameter passing: All necessary parameters are specified by programming them on the same line containing the activation of G881-G886. In the program line containing a G881-G886 activation, it is possible to program only parameters related to fixed cycles programming. For example, with reference to the drilling cycle G881, it is possible to set the parameters by programming:

G881 Z-40 J5 E5 F600 An example of not correct programming is the following:

G881 Z-40 J5 E5 F600 S1000 M3 Because the parameter S is not directly programmable on the G881 line (neither the M3 instruction), so a correct writing is as follows:

S1000 M3

G881 Z-40 J5 E5 F600

Fixed cycle activation To recall and activate a fixed cycle, the desired G881-G886 function must be programmed. A fixed cycle activation doesn’t produce any axis movement. The cycle is executed after the first rapid positioning after the cycle activation. After the first execution, the cycle is repeated after every subsequent rapid positionings.

Fixed cycle deactivation The deactivation of a fixed cycle activated with G881-G886 is obtained by programming:

G880 After a fixed cycle deactivation, the cycle parameters are cleared; if the recalling of a new fixed cycle is desired, all parameters must be programmed anew.

68

Page 73: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

Fixed cycle suspension The function G27X suspends the active fixed cycle. G27X is valid only in the block where programmed. Example:

… G881 Z-40 J5 E10 (activates the fixed cycle) G0 X100 (executes fixed cycle) G27X G0 X200 (doesn’t execute fixed cycle) G0 X150 (executes fixed cycle) G880 (deactivates fixed cycle) G0 X200 (doesn’t execute fixed cycle) …

Return position of fixed cycles

The return position of fixed cycles is set with the parameter E. Example:

N1 G0 Z10 N2 G881 Z-10 J3 E5 N3 G0 X50 N1 – Rapid positioning to Z10 N2 – Fixed cycle preparation N3 – Drilling execution: at cycle end, the Z axis is positioned to the Z5 position.

Modification of recall parameters for fixed cycles It is possible to modify the parameters of the activated fixed cycle through the corresponding function G881-G886. Example: …

G881 Z-40 J5 E10 (activates the fixed cycle) G0 X100 (executes the first drilling) G881 E20 (changes the final return position) G0 X150 (executes the fixed cycle with the new return position) G880 (deactivates fixed cycle) …

Modification of fixed cycle and parameter settings

It is possible to modify the fixed cycle, while maintaining the parameters of previous cycle. Example:

… G881 Z-40 J5 E10 F1200 (activates the drilling fixed cycle) N1 G0 X100 (executes the first positioning) X150 (second positioning) N2 X200 (third positioning) G886 Z-35 F400 (activates the boring fixed cycle) (NOTE! The J and E parameters remain those of the preceding cycle) (repeats the positionings) !GON1-N2! G880 (deactivates fixed cycle) …

Warning: For a better understanding and a clearer programming, and to avoid not easily recognizable behaviors, it is advisable to clear all calling parameters with the G880 function, each time a fixed cycle is changed. In this way it is necessary to program anew all values necessary for the cycle. Example:

69

Page 74: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

… G881 Z-40 J5 E10 F1200 (activates the drilling fixed cycle) N1 G0 X100 (executes the first positioning) X150 (second positioning) N2 X200 (third positioning) G880 (all cycle parameters are cleared) G886 Z-35 J5 E10 F400 (activates the boring fixed cycle)

(NOTE! All parameters MUST BE PROGRAMMED ANEW because the G880 function clears them all)

(repeats the positionings:) !GON1-N2! G880 (deactivates fixed cycle) …

6.1.1

70

Page 75: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

G881: Normal drilling

Z (or X): hole end position

J: approaching position. It is the machining starting position

E: final return position.

NT: dwell time at hole end

F: Feed

Notes: In case of holes drilled in X direction, the values X, J, E are considered as diametric or radial, depending on the active mode when the drilling is programmed.

feed F

G0

Z(X)

NT

J

E

6.1.2 G882: Deep drilling with chip breakage

Z (or X): hole end position

J: approaching position. It is the machining starting position

E: final return position.

NT: dwell time at hole end

K: depth increment before chip breakage

I: retraction for chip breakage. If a null value is programmed, or if the I parameter is not programmed, a default value of 0.2 is assumed.

F: Feed

Note: In case of holes drilled in X direction, the values X, J, E, K and I are considered as diametric or radial, depending on the active mode when the drilling is programmed.

feed F

G0

NT

K

K

Z (X)

I

J

E

6.1.3

71

Page 76: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

G883: Deep drilling with chip extraction

Z (or X): hole end position

J: approaching position. It is the machining starting position

E: final return position.

NT: dwell time at hole end

K: depth increment before chip extraction

I: reduction of pass increment

NM: minimum pass depth

The operation logic of the parameters K, I and NM is the following: The depth of the first pass is set with the K parameter. The I parameter defines the reduction of pass depth. The NM parameter sets the minimum value of the pass depth. For example, suppose to choose the following parameters: K50 I20 NM5

That means: The first drilling is equal to the K value (50) The drilling length reduction is equal to the I value (20) The minimum allowed drilling depth is defined by the NM parameter (5). The drilling depth will then vary as follows: 1st pass = 50 2nd pass: reduced by the value I = 50-20 = 30 3rd pass: still reduced by the value I = 30-20 = 10 4th pass: still reduced by the I value 10-20 = -10. The resulting value is smaller than the minimum pass depth, therefore the value is set to the NM value (5). 5th and subsequent passes: with a constant increment of 5.

Note: To get constant depth increments, program I = 0.

NQ: chip extraction position

NN: dwell at chip extraction position

NS: safety distance for in hole repositioning. If a null value is programmed, or if the NS parameter is not programmed, a default value of 1 is assumed.

F: Feed

Note: In case of holes drilled in X direction, the values X, J, E, K, I, NM, NQ, NS are considered as diametric or radial, depending on the active mode when the drilling is programmed.

feed F

G0

Z (X)

NT

NNNQ

KNS

J

E

6.1.4

72

Page 77: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

G884: Tapping with compensating chuck

Z (or X): hole end position

K: tap pitch

J: approaching position. It is the machining starting position

E: final return position.

NT: dwell time at hole end, after spindle stop

NT: dwell time at hole end, after spindle inversion

Note: In case of holes drilled in X direction, the values X, J, E are considered as diametric or radial, depending on the active mode when the drilling is programmed.

G0

NT NN

Z (X)

KE

J

6.1.5 G885: Rigid tapping

Z (or X): hole end position

K: tap pitch

J: approaching position. It is the machining starting position

E: final return position.

Note: In case of holes drilled in X direction, the values X, J, E are considered as diametric or radial, depending on the active mode when the drilling is programmed.

Warning: Before using this cycle, please consult the machine tool builder for the availability of rigid tapping.

G0

Z (X)

KE

J

6.1.6 G886: Reaming

Z (or X): hole end position

J: approaching position. It is the machining starting position

E: final return position.

NT: dwell time at hole end

F: Feed

Note: In case of holes drilled in X direction, the values X, J are considered as diametric or radial, depending on the active mode when the drilling is programmed.

feed F

G0

Z(X)

NT

E

J

73

Page 78: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

6.2 G901: Macro for internal/external groove machining

This macro allows the rough and finishing machining of internal and external grooves. Programming parameters:

NX initial diameter of the first wall X final diameter at groove bottom NZ initial Z position of the first wall Z final Z position of the second wall NI angle of the first wall encountered (program with positive value). If not programmed, a vertical wall is

assumed NL angle of the second wall encountered (program with positive value). If not programmed, a vertical wall is

assumed NA/NE chamfer (NA) or radius (NE) on the first point of the first wall. NB/NF chamfer (NB) or radius (NF) at groove bottom on the first wall NC/NG chamfer (NC) or radius (NG) at groove bottom on the second wall ND/NH chamfer (ND) or radius (NF) on the last point on the second wall NU Z allowance NV X allowance (radial value in mm) K removal for pass. If not programmed, the 75% of the J value (cutting edge width) is assumed J Tool cutting edge width (with spherical tool, program J = 2*R) I machining type NN number of repetitions for the machining E pitch between two subsequent machinings

NX

X

NZ Z

Z

X

ND

NCNB

NANH

NGNF

NE

NL NI

NX

X

NZZ

NINL

NE

NFNGNB

NC

X

Z

NA

NBNC

ND

NG

NE

NF

NH

NI NL

External groove with pass increments in direction Z-

Internal groove with pass increments in direction Z+

74

Page 79: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

The groove is composed by three segments. The first wall, the groove bottom and the second wall. - The first wall starts at position NZ, NX with a slope of NI degrees with respect to a vertical wall. - The groove bottom corresponds to the diameter programmed with the X value - The second wall terminates to the position corresponding to the programmed Z value, with a slope of NL degrees with respect to a vertical wall. The pass increment is executed proceeding from the point NZ toward the point Z. The passes are executed proceeding from the NX diameter toward the X diameter:

- To execute a pass increment in Z- direction, program a NZ position greater than the Z programmed position (as shown in the figure below)

- To execute a pass increment in Z+ direction, program a NZ position smaller than the Z programmed position

- The groove is an external groove if NX corresponds to a greater diameter than the X diameter. - The groove is an internal groove if NX corresponds to a smaller diameter than the X diameter.

The figure below depicts the programming in the main four cases of internal and external grooves, with leftwards or rightwards increments.

75

Page 80: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

Chamfer and connecting radiuses management. Through the parameters NA, NB, NC, ND, NE, NF, NG, NH it is possible to define radiuses and chamfers in the groove profile. The parameters NA, NB, NC, ND are used to define chamfers. The parameters NE, NF, NG, NH are used to define connecting radiuses. Chamfers and connecting radiuses are defined starting from the first point of the first wall (NX, NZ point) and proceeding in sequence. Machining type and finishing pass depth

- I0 both roughing (with allowances) and final finishing (with no allowances) are executed - I1 only the final finishing (with no allowances) is executed - I2 only the roughing (with allowances) is executed - I3 roughing (with allowances), an intermediate finishing pass with allowances and the final finishing

(with no allowances) are executed The finishing pass is composed by two phases. In the first phase, the second wall of the groove is machined up to the groove bottom. Then the first wall of the groove is machined, with all the groove bottom. On the groove bottom, the two passes are slightly overlapped.

76

Page 81: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

Tool management The groove machining macro may be used with spherical or truncating tools.

• In case of spherical tools, the tool radius must be programmed as usual, with the R parameter, directly inserted in the tool table, or explicitly written in the part-program. The J parameter must be set with the total tool width (thus J=2*R)

• In case of tools with flat bottom, the tool width must be specified with the J parameter.

J J

R

For the correct execution of the machining, it is necessary to know the zeroing point of the tool, i.e. the tool orientation. The function G150 KA… must be programmed before calling the macro for groove machining, specifying the correct tool orientation. For truncating tools, please refer to the following orientation codes:

5

3

6

2

7

1111

7

X

Z Z

X

7

1

6

2

5

3

77

Page 82: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

Machining repetition The parameters NN and E allow to specify the number of grooves and their pitch. The NN parameter indicates the number of repetitions, while the E parameter indicates the distance (pitch) between each repetition.

X

Z

50

100

-20

R10

-40

R10 R10 R10

-60-80-100-120

The machining is considered to be repeated along the Z axis. Example:

OZ1 OX1 T7M6 G96 S… MS… M3 G95 F… G0 X110 Z-20 G901 Z-40 X50 NX100 NZ-20 NE10 NH10 NN3 E40 M2

78

Page 83: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

Example: External groove with vertical walls, without roughing allowances

-20-40

100

50

Z

X

OZ1 OX1 T1M6 G96 S… MS… M3 G95 F… G0 X110 Z-20 G901 Z-40 X50 NX100 NZ-20 M2

Example: External groove with two connecting radiuses and roughing allowances

OZ1 OX1 T1M6 G96 S… MS… M3 G95 F… G0 X110 Z-20 G901 Z-40 X50 NX100 NZ-20 NE10 NH10 NV.1 NU0.1 M2

-20-40

100

50

Z

X

R10 R10

79

Page 84: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

Example: External groove with two connecting radiuses, roughing allowances, sloped wall and I3 machining:

OZ1 OX1 T1M6 G96 S… MS… M3 G95 F… G0 X110 Z-20 G901 Z-60 X50 NX100 NZ-20 NE10 NH10 NL30 NV.1 NU0.1 I3 M2

R10

-20

100

50

Z

X

-60

R10

30°

80

Page 85: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

6.3 G902: Macro for facial grooves machining This macro allows the rough and finishing machining of facial grooves. Programming parameters:

NX initial diameter of the first wall X final diameter of the second wall NZ initial Z position of the first wall Z Z position of groove bottom NI angle of the first wall encountered (program with positive value). If not programmed, a vertical wall

is assumed NL angle of the second wall encountered (program with positive value). If not programmed, a vertical

wall is assumed NA/NE chamfer (NA) or radius (NE) on the first point of the first wall. NB/NF chamfer (NB) or radius (NF) at groove bottom on the first wall NC/NG chamfer (NC) or radius (NG) at groove bottom on the second wall ND/NH chamfer (ND) or radius (NF) on the last point on the second wall NU Z allowance NV X allowance (radial value in mm) K removal for pass. If not programmed, the 75% of the J value (cutting edge width) is assumed J Tool cutting edge width (with spherical tool, program J = 2*R) I machining type NN number of repetitions for the machining E pitch between two subsequent machinings

NZZ

NX

X

NA

NB

NC

ND

NF

NG

NH

NENI

NL

X

Z

Facial groove with pass increment in direction X+ and passes in direction Z-

81

Page 86: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

The groove is composed by three segments. The first wall, the groove bottom and the second wall. - The first wall starts at position NZ, NX with a slope of NI degrees with respect to a vertical wall. - The groove bottom corresponds to the diameter programmed with the X value - The second wall terminates to the position corresponding to the programmed Z value, with a slope of NL degrees with respect to a vertical wall. The pass increment is executed proceeding from the point NZ toward the point Z. The passes are executed proceeding from the NX diameter toward the X diameter:

- To execute a pass increment in Z- direction, program a NZ position greater than the Z programmed position (as shown in the figure below)

- To execute a pass increment in Z+ direction, program a NZ position smaller than the Z programmed position

- The groove is an external groove if NX corresponds to a greater diameter than the X diameter. - The groove is an internal groove if NX corresponds to a smaller diameter than the X diameter.

The figure below depicts the programming in the main four cases of internal and external grooves, with leftwards or rightwards increments.

82

Page 87: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

Chamfer and connecting radiuses management. Through the parameters NA, NB, NC, ND, NE, NF, NG, NH it is possible to define radiuses and chamfers in the groove profile. The parameters NA, NB, NC, ND are used to define chamfers. The parameters NE, NF, NG, NH are used to define connecting radiuses. Chamfers and connecting radiuses are defined starting from the first point of the first wall (NX, NZ point) and proceeding in sequence. Machining type and finishing pass depth

- I0 both roughing (with allowances) and final finishing (with no allowances) are executed - I1 only the final finishing (with no allowances) is executed - I2 roughing (with allowances), an intermediate finishing pass with allowances and the final finishing

(with no allowances) are executed The finishing pass is composed by two phases. In the first phase, the second wall of the groove is machined up to the groove bottom. Then the first wall of the groove is machined, with all the groove bottom.

83

Page 88: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

Tool management The groove machining macro may be used with spherical or truncating tools.

• In case of spherical tools, the tool radius must be programmed as usual, with the R parameter, directly inserted in the tool table, or explicitly written in the part-program.

• In case of tools with flat bottom, the tool width must be specified with the J parameter. This parameter may be directly stored in the tool table.

J

JR

For the correct execution of the machining, it is necessary to know the zeroing point of the tool, i.e. the tool orientation. The function G150 KA… must be programmed before calling the macro for groove machining, specifying the correct tool orientation. For truncating tools, please refer to the following orientation codes:

X

Z

1

8

7

3

4

5

4 8Z

X

7

1

5

3

84

Page 89: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

Machining repetition The parameters NN and E allow to specify the number of grooves and their pitch. The NN parameter indicates the number of repetitions, while the E parameter indicates the distance (pitch) between each repetition. The machining is considered to be repeated along the Z axis.

X

Z

40

20

60

80

120

100

R5

R5

R5

R5

-18

Example:

OZ1 OX1 T7M6 G96 S… MS… M3 G95 F… G0 X110 Z-20 G902 Z-18 X40 NX20 NZ0 NE5 NH5 NN3 E40 M2

85

Page 90: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

86

6.4 G903: Macro for roughing of trapezoidal sections, with passes along Z.

Z

X

NX, NZ

X,ZNINL

This macro allows the roughing of trapezoidal sections with passes oriented in the Z direction. Parameters:

NX initial diameter of the first wall X final diameter of the bottom of the roughing area NZ initial Z position of the first wall Z final Z position of the roughing area NI length of the first sloped wall (if NI0 or not programmed, a vertical wall is assumed) NL length of the second sloped wall (if NL0 or not programmed, a vertical wall is assumed) K number of roughing passes I machining type: I0 feed approach feed retract I1 rapid approach feed retract I2 feed approach rapid retract I3 rapid approach rapid retract J enables the radius correction J0 radius correction disabled J1 radius correction enabled E vectorial allowance (both in X and Z)

The machining is executed with the following principle: 1) Ingresso o approfondimento di passata. Il

movimento è effettuato a partire dal punto NX, NZ Il movimento è in

LAVORO se I = 0 oppure I = 2 RAPIDO se I = 1 oppure I = 3 2) Passata di sgrossatura Il movimento è sempre in LAVORO 3) Uscita Il movimento è in

LAVORO se I = 0 oppure I = 1 RAPIDO se I = 2 oppure I = 3 4) Posizionamento sul punto di approfondimento per la nuova passata Il movimento è sempre in RAPIDO ... Ripetizione per le K passate di sgrossatura 5) A fine lavorazione l’utensile viene riportato in RAPIDO sul punto definito da NX, NZ

43 12

5

Page 91: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

Depending on the programming of the NX, NZ, X and Z parameters, the machining may be external, internal, from left to right or from right to left. Generally: Roughing passes are executed proceeding from the NZ position toward the Z position The depth increments are executed proceeding from the NX position toward the X position The following diagram depicts the different cases:

Z

X

NX, NZ

X,ZNINL

X

ZNI NL

NX, NZ

X,Z

X

Z

NX, NZ

X,Z

NINL NL NI

Z

X

NX, NZ

X,Z

Radius correction: If the radius correction is active (J1), the roughing area is modified according to the tool radius, as shown in the following figure:

If the radius correction is active, the tool is always maintained inside the trapezoidal area defined. Warning! In order to use the radius correction, the tool tip orientation must be previously defined with the G150 function, before calling the macro. .

87

Page 92: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

6.5 G904: Macro for roughing of trapezoidal sections, with passes along X. This macro allows the roughing of trapezoidal sections with passes oriented in the X direction.

X

ZNX, NZ

X, Z

NL

NI

Parameters:

NX initial diameter of the first wall X final diameter of the roughing area NZ initial Z position of the first wall Z final Z position of the roughing area NI length of the first sloped wall (if NI0 or not programmed, a vertical wall is assumed) NL length of the second sloped wall (if NL0 or not programmed, a vertical wall is assumed) K number of roughing passes I machining type: I0 feed approach feed retract I1 rapid approach feed retract I2 feed approach rapid retract I3 rapid approach rapid retract J enables the radius correction J0 radius correction disabled J1 radius correction enabled E vectorial allowance (both in X and Z)

The machining is executed with the following principle:

1) Input, or pass increment The movement is executed starting from the point NX, NZ. The movement is in

FEED if I=0 or I=2 RAPID if I=1 or I=3 2) Roughing pass The movement is always in FEED. 3) Exit The movement is in

FEED if I=0 or I=1 RAPID if I=2 or I=3 4) Positioning on the point for depth increment for the new pass The movement is always in RAPID. ... Repetition for the K roughing passes 5) At machining end the tool is positioned in RAPID on the point defined by NX, NZ.

1

2

3

4

5

88

Page 93: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

Depending on the programming of the NX, NZ, X and Z parameters, the machining may be external, internal, from left to right or from right to left. Generally: Roughing passes are executed proceeding from the NX position toward the X position The depth increments are executed proceeding from the NZ position toward the Z position The following diagram depicts the different cases:

X

X,Z

NX, NZZ Z

X

X,Z

NX, NZ

NI

NL NI

NL

X

ZZ

X

NX, NZ

X,Z

NL

NI

NX, NZ

X,ZNL

NI

If the radius correction is active (J1), the roughing area is modified according to the tool radius, as shown in the following figure:

If the radius correction is active, the tool is always maintained inside the trapezoidal area defined. Warning! In order to use the radius correction, the tool tip orientation must be previously defined with the G150 function, before calling the macro.

89

Page 94: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

6.6 Threading

6.6.1 G33 function The G33 function is the basis function for the execution of threadings. A single threading pass (the feed movement is synchronized with the spindle rotation) may be programmed with the block:

G33 X… Z… K… G33 represents the threading motion with constant pitch.. X… Z… represent the final point reached by the threading motion

K is the threading pitch, expressed in mm. The pitch is always computed as the total displacement corresponding to a turn of the spindle.

K

K

Example: Cylinder threading, single pass:

Z

X

-40

50

OX1 OZ1 T2M6 G95 S400 M3 G0 X50 Z5 G33 Z-40 K1 G0 X60 M2

90

Page 95: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

After programming the G33 function, all subsequent movements are threading movements. The movements may contain both linear and circular segments. During the execution of threading movements, the K pitch specifies the displacement imposed to the tool, along the path, for each spindle revolution. The end of threading movements must be indicated with a rapid movement (G0). The profile to be threaded may be specified using the geometrical elements discussed before, i.e. taper elements, connecting radiuses, etc. Example: Cylinder-taper threading Warning: If the pitch along the Z axis must be maintained constant, it must be recomputed with the following formula: K = {pitch along Z} / cos(taper angle)

In the example, the pitch along Z is 2mm, the taper angle is 30 degrees, thus the K pitch in the taper area is equal to: K = 2/cos(30) = 2.309

Z

X

-40

50

-20

30°

OX1 OZ1 T2M6 G95 S400 M3 G0 X50 Z5 G33 Z-20 K2 Z-40 QF150 K2.309 G0 X80 M2

Threading motion synchronization: It is important to consider that at the start of each threading movement, a segment in empty space is necessary to synchronize the axes interested by the threading with the spindle movement.

Piniz

The threading movement must thus contain sufficient empty space to allow this motion synchronization. The amount of empty space required depends on the kind of machining to be executed and by the dynamic of the machine. For typical threadings, an empty space equal to three times the threading pitch may be considered.

91

Page 96: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

6.6.2 Variable pitch threading (G34, G35) The term “variable pitch threading” indicates a threading whose pitch is not constant, but varies continuously according to a determined variation quantity. The variable pitch threading is programmed through two different G functions: G34 K.. I.. rising pitch threading G35 K.. I.. decreasing pitch threading

All descriptions related to the fixed pitch threading (G33) remain valid also for the variable pitch threading (G34 and G35). K = initial threading pitch (mm or inches) This parameter can be programmed in the same block of G34/G35, or in

preceding blocks. Warning: if the K parameter is newly programmed in subsequent blocks, when G34/G35 is active, an abrupt pitch variation is encountered.

I = pitch increment expressed in mm/round or in/round. This parameter can only be programmed in the same line of

G34/G35. The parameter is always positive and assumed as absolute value if programmed as a negative number. In G34 mode, it expresses the increment in mm or inches imposed on pitch K at every round. In G35 mode, it expresses the decrement in mm or inches imposed on pitch K at every round. Warning: if the continuous decrement of K brings to a negative value, the alarm CN1F13 will be issued (in real time).

Threading movements with a fixed or variable pitch may be executed in sequence: the threading pitch will continuously vary or remain constant, or it will have a discontinuity, depending on the threading function and parameters programmed.

6.6.3

92

Page 97: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

G905: Threading macro This macro allows the complete execution of threadings. The following kinds of threadings may be executed:

- cylindrical or conical with many passes - facial - with one or more worms - internal or external

The types of threads allowed are:

- Metric 60° UNI 4535-64 - Whitworth UNI 2709 - Trapezoidal UNI 2902 - Square section - Custom (generic)

Programming format and input parameters The programming format for cylindrical or conical threadings contains: G905 X.. NZ.. K.. Z.. E.. NS.. (J..) (NF..) (I..) (NG..) (NU..) The parameters enclosed in parenthesis may be omitted, but they must be cleared when the macro M63 is programmed. The meaning of the parameters is the following:

X Nominal threading diameter NZ “On air” coordinate of the first positioning along Z Z Coordinate of the threading final point along Z NG Taper percentage with sign, see following figures J Distance between tool and workpiece during the return path from a pass (radial, in mm); if not

programmed or equal to zero, a default value of J=2 is assumed K Thread pitch, ALWAYS in millimeters NS Number of roughing passes NF Number of finishing passes I Number of starting worms E Thread type (see later on) NU Thread depth (in mm, radial value used only on custom threadings)

93

Page 98: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

Thread type: E =100 Metric screw 60° UNI 4535-64 E =200 Metric lead screw 60° UNI 4535-64 E =300 Whitworth screw UNI 2709 E =400 Whitworth lead screw UNI 2709 E =500 Trapezoidal screw UNI 2902 E =600 Trapezoidal lead screw UNI 2902 E =700 Square section screw (depth 0.5*K/NF) E =800 Square section lead screw (depth 0.5*K/NF) E =900 Generic screw (custom) E =1000 Generic lead screw (custom)

1. Cutting methods and thread types The macro cuts the thread by removing a chip with constant section, and advancing on the thread side. The advancement on the thread side allows to obtain a chip with “flat” section, warranting a longer duration of the cutting edge. On metric ISO and WHITWORTH threadings, an angle smaller by 5 degrees with respect to the thread side slope is used. On TRAPEZOIDAL threadings, an angle smaller by 4 degrees with respect to the thread side slope is used. Square and custom threadings allow only radial advancements. Custom thread The custom (generic) threading is a threading with radial pass increment. Unlike the square section threading (where tooth height is equal to the pitch), with the custom threading it is possible to define the thread depth with the parameter (NU) defining the “breakthrough”. 2. Threads with more starting worms The cycle executes threadings with more starting worms, by displacing the threading starting point by a quantity equal to the thread pitch (K) divided by the number of worms (I). 3. Threading cycle After the “on air” positioning defined by the programmer, the threading macro G905 executes the following operations: Computes radial and axial increments, and positions the tool according to the preparatory function active before the M63 and the following may be executed: a linear segment, if G1 or G0 is active a circular arc if G2/G3 is active Executes a “sliding” thread, as indicated in the preceding figure. The pass depth is computed by maintaining constant the chip section. In order to avoid dangerous loads on the tool, the first and second pass are executed by halving the pass depth resulting from the computation. Exits from the thread with a connecting radius, to retract from the workpiece by the quantity defined by the parameter J (in mm). Returns in rapid, parallel to the workpiece, at the same Z position of the starting point. Computes and reaches in rapid the new incremented point Repeats from point 2 to point 6 to execute the programmed roughing passes Repeats the last executed movement without increments, for the programmed lapping (finishing) passes. It is important to note the following: The initial, “on air”, tool position must be defined to allow the spindle to reach the programmed speed (normally two-three profile pitches) before the start of the thread. For taper threads, the nominal diameter must be computed as a function of the NZ parameter, the “on air” coordinate of Z axis for the first positioning.

94

Page 99: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

In threadings with more than one worms, the tool retracts axially from the workpiece, and executes all worms, before to proceed with the next pass. The threading ends with a circular arc with radius equal to the return distance between tool and workpiece, defined by the J parameter. Due to the non infinite axes acceleration, this distance must allow to stop the axes. The final programmed point is never overcome.

X

321

J

J / 2

Z

X

Z

5. Cylindrical threadings It is possible to execute external or internal threadings, both on negative or positive X ranges. The figure shows the possible programming modes.

X

Z

12

3

4

100

50

M24

x3

M40

x3

The end section of the thread is connected starting from the programmed J distance. Examples referred to the above figure: Thread 1 ......... G0 X45 Z5 G905 X40 NZ5 Z-103 K3 E100 J3 NS5 NF1 ........ Thread 2 .........

95

Page 100: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

G0 X45 Z-103 G905 X40 NZ-103 Z5 K3 E100 J3 NS5 NF1 ..... Thread 3 ...... G0 X20 Z-53 G905 X24 NZ-53 Z5 K3 E200 J2.5 NS7 NF1 ...... Thread 4 ...... G0 X-20 Z5 G905 X-24 NZ5 Z-53 K3 E200 J2.5 NS7 NF1 ...... 6. Taper threading It is possible to execute both external and internal taper threadings. The X parameter is referred to the nominal diameter, corresponding to the NZ value. The NG parameter is computed with the formula:

10012

⋅∆⋅

−=

ZXinizialeXfinaleNG

Where:

Xiniziale is the initial nominal diameter Xfinale is the final nominal diameter ∆Z is the length (always positive) of the Z segment going from Xiniziale to Xfinale

The NG sign is determined by the rule: NG positive if the X increases during the machine. The final segment is connected as per the cylindrical threadings.

96

Page 101: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

Examples:

Z

X

5-100 -50

X60

X40

X30

X80 1

2

1) External threading with initial diameter X=60, final diameter X=80 and Z starting and end coordinates, respectively, NZ=5 and Z= -100. Executes the thread starting from the smaller diameter to the larger diameter. In this case the positive percentage taper is equal to:

524.9100105

12

6080=⋅⋅

−=NG

Therefore, the programming becomes:

G0 X60 Z10 G905 X60 NZ5 Z-100 NG9.524 E100 J2.5 NS7 NF1 K1.25

2) Internal threading with initial diameter X=30, final diameter X=40 and Z starting and end coordinates, respectively, NZ=-50 and Z= 5. Executes the thread starting from the larger diameter to the smaller diameter. In this case the positive percentage taper is equal to:

091.9100551

23040

=⋅⋅−

=NG Therefore, the programming becomes:

G0 X25 Z-50 G905 X30 NZ-50 Z5 NG9.091 E200 J2.5 NS7 NF1 K1.25

6.6.4

97

Page 102: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

G906: Facial threadings For facial threadings: G906 X.. Z.. NZ.. NX.. K.. E.. NS.. (J..) (NF..) (I..) (NG..) (NU..) The meaning of the parameters becomes the following:

NX “On air” coordinate of the first positioning along X X Coordinate of the threading final point along X Z Coordinate of the nominal external surface of the thread NZ Selects the direction of the machining NZ=1 if the tool is oriented toward Z- NZ=-1 if the tool is oriented toward Z+ NG Percentage taper: positive if Z increases J Distance between tool and workpiece during the return path from a pass; if not programmed or

equal to zero, a default value of J=2 is assumed K Thread pitch, ALWAYS in millimeters NS Number of roughing passes NF Number of finishing passes I Number of starting worms E Thread type E =100 Metric screw 60° UNI 4535-64

E =300 Whitworth screw UNI 2709 E =500 Trapezoidal screw UNI 2902 E =700 Square section screw (depth 0.5*K/NF) E =900 Generic screw (custom)

NU Thread depth (in mm, used only on custom threadings) All other parameters maintain the same meaning. It is possible to execute plane and taper threadings, with positive or negative X. The NG parameter is computed with the formula:

10012)( ⋅∆⋅⋅−=

XZinizialeZfinaleNG

Where:

Ziniziale is the Z coordinate of thread start Zfinale is the Z coordinate of thread end ∆X is the length (always positive) of the X segment going from Ziniziale to Zfinale

Z

X

23

1

X

Z

J

98

Page 103: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

6.7 G907: Roughing macro This macro execute a generalized roughing of a closed profile. The programming is in diameter. The macro is called by the user through the function G907 The roughing cycle of the G907 macro is mainly composed by:

• Initial positioning on the starting point of the first pass • More roughing passes, each composed by:

a) G1 pass b) retract, sloped by 30 degrees, by a programmable quantity limited to the half of the pass; if enabled

the return on the preceding pass (I=1) doesn’t execute a 30 degrees sloped retract, but it shifts on the profile, up to the preceding pass

c) long retract, in case of override; if enabled the return on the preceding pass (I=1) doesn’t execute a 30 degrees sloped retract, but it shifts on the profile, up to the preceding pass without override.

d) rapid return e) contouring of the profile up to the next pass

• pass increment; it may vary between a maximum and a minimum diameter. • At the end of the roughing passes, the whole profile is executed. The last movement leaves the tool at the

end of the profile. If the NU parameter is different from zero, the final contouring is not executed, but exits from the end of the last pass with the direction indicated by the NU angle.

1. Input parameters The programming format is as follows: G907 NX.. NY.. NG.. K.. (NE..) (NL..) (NJ..) (NI..) (NS..) (NR..) (NV..) (NW..)

(NU..) (I..) (NF..) The meaning of the parameters is the following: NX NY Numbers of initial and final lines of the closed profile to be roughed. NG Slope of the pass line (roughing angle) K Pass depth (with sign, see later on) NE Retract quantity with 30 degrees slope; if not programmed, or equal to zero, it executes a retract with the

half of the pass. NL Maximum increment along the pass line, with sign (KMAX); if not programmed or equal to zero, it executes

pass increments equal to K; for roughing angles different from 180 and 0 degrees, it executes pass increments equal to K.

NJ Minimum diameter (X axis coordinate) For diameters smaller than NJ, the pass depth is equal to KMAX (NL) For diameters greater than NJ, the pass depth varies from KMAX (NL) to Kmin (K). The NJ diameter must have a smaller absolute value than the NI diameter.

NI Maximum diameter (X axis coordinate) For diameters greater than NI, the pass depth is equal to Kmin (K) For diameters smaller than NI, the pass depth varies from Kmin (K) to KMAX (NL). The NJ diameter must have a smaller absolute value than the NI diameter.

NS Section of the pass to be executed forwards (in millimeters). It must be greater than the rearwards section (NR). If not programmed, or equal to 0, the chip breaking cycle is not executed.

NR Section of the pass to be executed rearwards (in millimeters). It must be smaller than the forwards section (NS). If not programmed, or equal to 0, the rearwards section is not executed.

NV Waiting time at the end of the forwards section of the pass (chip breaking cycle) and waiting time at the end of the pass (seconds and decimals).

NW Modifies the first pass value by the value contained in NW. It may positive or negative, to increase or decrease the first pass. If not programmed, or equal to 0, the first pass is not modified.

99

Page 104: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

NU If different from zero, the final contour is not executed, but a rapid exit from the final point of the first pass, up to the intersection with the profile, with direction given by the NU angle (referred to the first axis of the plane, axis Z).

I If I=1, the return path is along the preceding pass. In this case the 30 degrees exit is not executed, but a contouring up to the preceding pass, then a rapid return.

NF Store the programmed FEED for the roughing pass. If not programmed, or equal to zero, the programmed F is assumed. The roughing movements will be executed with feed NF, while the contouring movements along the programmed profile, will be executed with the programmed F.

Programming method The roughing macro consider the profile to be roughed contained between two N labels, identifying the start and the end of the profile. The N number corresponding to the profile start is passed to the macro through the NX parameter. The N number corresponding to the profile end is passed to the macro through the NY parameter. It is possible to define the profile to be roughed in every line of the part-program, also after the end of program instruction M2. Example:

… In questo caso, il profilo da sgrossare è definito dopo l’M2. In questo caso, dopo l’esecuzione della macro di sgrossatura G907 il part-program termina (istruzione M2)

… G907 NX10 NY20 … … …

M2

N10 … … profile to be roughed … … N20

In questo caso, il profilo da sgrossare è definito prima dell’M2. In questo caso, dopo l’esecuzione della macro di sgrossatura G907 il part-program prosegue. Nel caso a lato, dopo la sgrossatura viene effettuato un cambio utensile e l’esecuzione del profilo.

… G907 NX10 NY20 … … … T…M6

N10 … … profile to be roughed … … N20 M2

100

Page 105: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

Definition of the profile to be roughed The profile to be roughed must be defined starting from the raw workpiece dimensions (with G0 segments) and ending with the final profile. The following figure shows two profile examples.

Passata di sgrossaturaRitorno a 30 gradi

Ritorno rapido

C

X

Z

A

B

D E

F

Upper profile (external machining): - the raw dimensions must be defined at first (from point A to point C) - than, the profile must be defined (from point C to point A), proceeding in clockwise direction - the tool radius correction is with tool on the right of the profile (G42) - the passes are oriented to 180 degrees (Z- direction) - the pass depth must be defined as positive (K>0) Lower profile (internal machining): - the raw dimensions must be defined at first (from point D to point F) - than, the profile must be defined (from point F to point D), proceeding in counterclockwise direction - the tool radius correction is with tool on the left of the profile (G41) - the passes are oriented to 180 degrees (Z- direction) - the pass depth must be defined as negative (K<0)

101

Page 106: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

Generally, the programming rules for the profile are the following:

- the profile must always be defined starting form the raw dimensions - the programmed profile (raw + finished) must define a close area, i.e. the first point of the raw must

coincide with the last of the finished

- the profile must be defined in clockwise or in counterclockwise direction, function of the pass direction and the pass increment. the pass depth (K) must be defined as positive or negative, function of the desired machining.

The following figure shows the eight profiles (4 clockwise and 4 counterclockwise) representing the various possible combinations with passes parallel to the axes:

G41 G42G41 G42

K>0 K<0 NG0 NG180

NG-90 NG-90K>0 K<0

K>0 K<0 NG90 NG90

NG0 NG180 K<0 K>0

G42 G41 G41 G42

X XZ Z

The passes may also be not parallel to the axes. In this case the NG value and the K sign must be chosen according to the following figure:

NG-45

X XZ Z

G41G42K>0 K<0

G42G41K<0 K>0

G42 G41

G41 G42K<0

K<0 K>0

K>0

NG135 NG135 NG45NG45

NG-45NG-135NG-45NG-135

NG-135

NG135

NG-45

NG45

NG-135

NG135 NG45

102

Page 107: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

Example: external roughing

ternal roughin ngle NG180, pass increme ng the X- axis) (positive K pass dep nd finished profile(clockwise direction, he right of the fi ofil

G0 Z10X80 (rapid positioning ece) G150KA1 (tool orientation in position 1) G907 NX1 NY2 NG180 K2.5 (macro calling) G0 Z10X80 (rapid retract far from the workpiece) M2 N1 of profile to be rou (the raw profile must be composed by only linear segments executed in rapid) G0 Z-55X60 (starting point of raw p ofile) Z-Z-5X5Z2X30X20 (end point of raw proG42 (start of finished profile) G1 Z2 X20 (starting nt of finished profile = end point of raw profile) G1Z-15 RR-10

Z-55X60 (end point of finished profile = starting point of raw profile) G40 (enZ-55 X6

(end

(Ex g: pass a nt aloth, raw atool on t

s definnished pr

ed in) e G42)

far from the workpi

ghed) (start

r35

0

file)

poi

Z-35 X40 RR10 Z-55 RR-5

d of radius correction) 0 (end point of finished profile = starting point of raw profile) of profile) N2

X

Z

103

Page 108: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

Return on preceding pass or 30 degrees exit Through the programming of the I parameter it is possible to define the behavior of the macro at the end of a pass. By programming I0 (or not programming it), at the end of each pass, an exit to 30 degrees is executed, as shown in the figure:

1

2

4

5

3J

1) Roughing pass (feed) 2) 30 degrees exit (rapid) 3) Rapid return to the pass start (rapid) 4) Pass increment (feed) 5) New pass (feed) 6) …

The distance between the return pass and the executed pass may be programmed with the J parameter. If J0 is programmed (or J not programmed), the distance between pass and return path is equal to the half of pass depth. By programming I1, at pass end the finished profile is contoured up to encounter the preceding pass.

2

4

5

1

3

6 7

1) Roughing pass (feed) 2) Execution of finished profile up to the preceding pass (feed) 3) Rapid return to the pass start (rapid) 4) Pass increment (feed) 5) New pass (feed) 6) Execution of finished profile up to the preceding pass (feed) 7) Rapid return to the pass start (rapid) 8) …

104

Page 109: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

Variable pass depth (NI NJ NL): This feature allows to obtain a variable pass increment, gradually changing from Kmin (K) to KMAX (NL) between a

he NL parameter defines the maximum pass increment.

mprised between NI and NJ: the pass depth gradually changes from K to NL or a diameter <= NJ: the pass depth is equal to NL

For roughing angles different from 180 and 0 degrees, pass increments equal to K are executed. If NL=0, this feature is deactivated and all passes have the same pass depth, defined by K. The feature allows to increase the pass depth with the increase of the depth increment.

Example:

X1OZ1

150KA1

T…M6 (finishing tool) N10 G0 X100 Z-60 G0 Z1 G0 X40 G42 G1 Z0 X40 Z-20 RR-2 G3 I-35 J40 Z-35 X70 G1 Z-43 RR-1.5 X86 Z-48.5 Z-60 40 N20 G0 Z-60 X10 M2

maximum diameter (NI) and a minimum diameter (NJ). TFor a diameter >= NI: the pass depth is equal to K For a diameter coF

OT…M6 (roughing tool) G96 S… MS… M3 95 F… GG G907 NX10 NY20 NG180 K1.5 NL10 NI90 NJ40

Z

NI

X

K

K

NLNJ

NL

G0

105

Page 110: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

Chip breaking cycle (NS NR NT) To allow the breakage of the chip it is possible to activate the pass management with chip breaking cycle, allowing to define a forward increment NS along the pass direction, and a backward decrement NR; furthermore a dwell

t. The chip breaking cycle is composed by: lacement equal to the forward segment NS

isplacement equal to the backward segment NR

null the parameter NS=0 (or NS not programmed) the feature is deactivated and the chip breaking cycle is not

executed.

verride

time NT may be defined at the end of the forward incremen- movement along the pass direction for a disp- wait at forward movement end equal to the time set in the parameter NT - back movement along the pass direction for a d- chip breaking cycle repetition up to pass end.

If the parameter NR=0 (or NR not programmed) the backward segment is not executed If the parameter NT=0 (or NT not programmed) the dwell time at forward segment end isIf

O

he roughing cycle consider the po one profiles. xample:

X1OZ1 …M6 (roughing tool) 96 S… MS… M3

4

0

T ssibility to execute the roughing of non monotE OTGG95 F… 150KA1 G

G907 NX10 NY20 NG180 K M2 N10 G0 X150 Z-100 Z1 X50 G41

0 X50ZX80Z-20RR10Z-40 G3 I-60 J80 Z-80X80 G1 Z-100 G40

50 Z-10G0 X1N20

106

Page 111: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

Final contouring and NU parameter

B r instead of the final conto lue. The N movement, and must be chosen depending on the profile and

xample with final exit at 120 degrees. Note the exit at 120 degrees executed at machining end, bringing the tool n the upper raw profile.

K4 NU120

Z-100

Z0

-100 X100

with final exit at 0.1 degreerofile defining the raw piece, and no other point reachable by the tool exists in the requested

n.

(roughing tool)

F… G150KA1 G907 NX10 NY20 NG180 K4 NU0.1 M2 N10 G0 X150 Z-100 Z1 X50 G41 X50Z0 X80Z-20 G1 Z-100 X100 G40 G0 X150 Z-100 N20

WARNING: To execute an exit in direction Z+, it is necessary to program a NU value different from zero. In these cases it is possible to program a very small angle, as in the preceding example.

Through the NU parameter it is possible to skip the final profile contouring, normally executed.

y p ogramming a non zero value in the NU parameter, at the end of the last roughing pass,uring, a rapid movement is executed with the direction given by the NU va

U parameter defines the exit angle of the last the machining executed. The exit is executed until the raw dimension is encountered. To understand the meaning of the NU parameter, it is possible to refer to the two following examples: Eo OX1OZ1 T…M6 (roughing tool)

MS… M3 G96 S… G95 F… G150KA1 G907 NX10 NY20 NG180M2 N10 G0 X150 Z1 X50 G41X50X80Z-20 G1 ZG40 X150 Z-100 G0

N20 Example s. At machining end, no particular exit movement may be noted. The tool is already on the pdirectio OX1OZ1 T…M6G96 S… MS… M3 G95

107

Page 112: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

Roughing example with passes along the X axis

X90 X85 RR2

0 X40

OX1OZ1 T…M6 (roughing tool) G96 S… MS… M3 G95 F… G150KA1 G907 NX10 NY20 NG-90 K-3 HF3 M2

N10 G0 X40 Z0 G0 X100 G41 G1 Z0 X102 G1 Z-30

G1 Z-35 X70 G2 I-35 J40 Z-2G1 Z0 G40 N20 G0 Z0 X40

Note that the first pass starts on a point of the profile (G1), therefore the movement on the first pass brings the tool in rapid from the actual point up to the profile, then proceeding in feed, following the profile in the same direction as its definition, until the start of the first pass.

108

Page 113: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

Roughing allowance

It is possible to use the G150 function specifying the allowance, in the definition of the roughing profile.

F… llowance of 1.5mm) , without final contouring NU1)

20 NG180 K2 NU1

cancel allowance for finishing)

t)

30X60RR-10

G1X120Z-50 N20 (profile end) M2

Example: OX1OZ1 T…M6 (roughing tool)

S… MS… M3 G9695 GG150KA1 I1.5 (a

g macro(roughin30Z10G0X1

G907 NX10 NY

I0 (G150

(profile starN10 G0X120Z-50 Z5 X40 G42 5X40 ZZ-Z-50X100 G40

109

Page 114: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

110

W machine, m osed by a linear axis and a rotary axis. With this feature it is possible to mill lathe workpieces on the facial surface. T consult the machine tool builder. Normally, a M function to activate the feature and a M function to deactivate it are available. W on a new axes pair, defined by the machine tool b In (X is the diameter axis, C is the rotating axis), while the cartesian axes pair is the pair V-W. A ding on actual implementations.

7. Polar axes

ith this feature it is possible to machine any profile programmed on a cartesian plane, with a polar typeainly comp

o activate the feature, please

hen the feature has been activated, the programming is done uilder.

the figure below, the physical axes pair is the pair X-C

xes names may vary depen

C

Z

W

C

W

V

X

V

X

eding figure, if the feature has been activated, it is possible to prormal cartesian programming. The programmed movements

ments of physical axes X-C.

been activated, the contouring plane must normally be newly de

Considering the axes names of the prec gram movements in the plane V-W with a no will be transformed in the corresponding move Note: When the “polar axes” feature has fined. In its normal configuration, a lathe machine h tivated, the as the contouring plane Z-X. When the polar axes are acworking plane must be set on the facial surface of the workpiece. Using the axes names shown in the prece following ding figure, after the activation of the polar axes feature, theworking plane must be set:

G25VWZ

In this mode, the plane V-W becomes the plane where circular interpolations are allowed. Z is the axis orthogonal to the working plane. Warning! Depending on the activation mode of the feature, it is possible that the setting of the new working plane is directly executed by the activation command for the polar axes. Please consult the machine tool builder for further information. Warning! When the polar axes feature is active, the programming of the machine becomes the same as a milling machine with three axes. To execute profiles with radius correction, it is necessary that the tool is zeroed on the spindle center. For this reason the G150 function cannot be used.

Page 115: SCHEDA LINK DE1039 - Bindes.it - Lathe Programming.pdf · CNC Z32 - Programming Guide (LATHES) • All functions and settings related to RTCP (rotating tool centre point) are disabled

CNC Z32 - Programming Guide (LATHES)

R5

40

V

n the usage of polar axes

center).

7.1 Limitations o When the feature polar axes is active, the mill center cannot be or cannot execute movements passing inside a circle with 5 mm diameter around the rotation center of the axes (spindle

5mm

V

W

W

40

7.2 Example

OX1 OZ1T…M6 M… (polar axes activation)

30 V0

F1500 G41 W20 V0 QF0 V20RR-5

W20RR-5 V0

M… (activation powered tool) S… M3 G25VWZ G0 Z5 WF200 G1 Z-1

W-20RR-5 V-20RR-5

G40 W30 V0 G0Z5 M2

111