PROGRAMMING MANUAL - Eurotech Sales Tools

Transcription

PROGRAMMING MANUAL - Eurotech Sales Tools
PROGRAMMING
MANUAL
Volume
1
THIS MANUAL DOES NOT REPLACE
THAT FROM GE FANUC, 18i
BUT IS AN EASY-TO-CONSULT COMPLEMENT
WITH PRACTICAL EXAMPLES
MANUAL WITH "G" CODES TYPE "B"
Cod. : … T140-00129-IM01
Data : … 01.04.05
- T140-00129-IM01 -
Officine E. BIGLIA e C. S.p.A.
Via Martiri della Libertà, N° 31
TEL.
FAX.
E.mail
Internet
:
:
:
:
-14045 INCISA SCAPACCINO (ASTI) ITALY-
01417831
0141783327
[email protected]
www.bigliaspa.it
Registered office:
C.so Genova, 24 -20123 MILANO-
FOREWORD
Biglia has paid great care in the preparation of this manual to make it an exhaustive
and easy-to-use tool for the user.
This manual describes and illustrates the various procedures to execute a
machining program, on a C.N.C. lathe.
The operator is required to read this manual attentively and follow the general procedures described
herein and heed the danger warnings when performing the setting up of the cycle.
A hierarchy criterion has been adopted to classify the manual subjects and the table of contents drawn up
accordingly.
The sections of the manual are identified by a letter of the alphabet.
The classification within each section uses figures and dots to identify the hierarchical grades.
Example :
A
1.
1.1
1.1.1
Section A of the manual
Chapter 1 of Section A
Paragraph 1, Chapter 1, Section A
Sub-paragraph 1, Paragraph 1, Chapter 1, Section A
To keep identification references as short as possible, chapter, paragraph and sub-paragraph figures are not
preceded by the letter identifying the manual section which is instead shown in bold type on the page edge.
-2-
- T140-00129-IM01 -
OPERATING WORK SEQUENCE
The following operating sequence should always
be followed when machining a part
1°
DEFINING THE WORK CYCLE
Define the machining according to the part
Select the tools to use
Define the locking device and other fixtures if necessary
Enter the program
2°
TOOLING-UP THE MACHINE AND SETTING-UP THE
PROGRAM
Enter the program in the CNC memory
Mount the clamping device, replace the collet, turn the jaws
Adjust clamping pressure of part clamping and tailstock
Mount the tools on the turret
Perform tool-setting (geometry value)
Set the part zero-point
Dry-run the program (without axes movements)
Modify the program if necessary
Trial run of the machining cycle
Perform a cutting test, a no-load test, and a single-block test to check
machining conditions
Modify the program if necessary
3°
PRODUCTION
Machine the parts in the automatic mode
Measure the part and adjust the dimensions acting on the offset
TOOL WEAR
Check the parts very often and maintain the clearance modifying the offset
TOOL WEAR if necessary
-3-
- T140-00129-IM01 -
SYMBOLS USED
The following symbols have been used in the manual to make its consultation easier
NOTE
Indicates practical recommendations to be followed
EXAMPLE
It shows the functions previously described
PROCEDURE
Indicates the procedures to be followed
Warning
It shows a machine condition which could occur
Indicates the reference page number or manual
Indicates that the description continues on the next page
-4-
- T140-00129-IM01 -
HANDBOOK SECTIONS
A
BASIC FUNCTIONS
B
SIMPLIFIED PROGRAMMING
C
CANNED CYCLES
D
ADVANCED PROGRAMMING
The Programming Manual consists of two volumes.
The second volume "T140-00130-IM01"
deals with the following items:
Motor-driven tools, C-axis
Sub-spindle, B-axis
Y-axis
Four-axes - two turrets
-5-
- T140-00129-IM01 -
-6-
- T140-00129-IM01 -
SECTION
-A-
------------
Chapter
Date
Modifications
Paragraph
Description
BASIC FUNCTION
4.
1. General functions ...............................................
1.1 Description of "G" functions ...................
1.2 "M" functions .............................................
1.3 Variables for verifying ................................
page 8
page 8
page 10
page 12
2. Basic programming ............................................
2.1 Start and end of program ..........................
2.2 Sequence number .....................................
2.3 Machine axes definition .............................
2.4 Logic in the choice of the workpiece
zero point ...............................................
2.5 Axis movement ..........................................
2.6 Summary program .....................................
page
page
page
page
3. Axis movement ..................................................
3.1 Rapid traverse ...........................................
3.2 Cylindrical and taper linear interpolation ...
3.3 Circular interpolation .................................
3.4 Turret rotation and offset enabling .............
3.5 Spindle rotation .........................................
3.6 Limitation of the max. spindle speed .........
3.7 Spindle stop ..............................................
3.8 Gear change ..............................................
3.9 Lock and release of the clamping device...
3.10 Programmable part clamp pressure ..........
3.11 Axis feed ....................................................
3.12 Coolant ......................................................
3.13 Summary program .....................................
3.14 Dwell .........................................................
3.15 Temporary program stop ............................
3.16 Optional temporary program stop ..............
3.17 Message ....................................................
3.18 Skip block ..................................................
3.19 Accurate stop .............................................
3.20 Front door automatic opening and closing.
page
page
page
page
page
page
page
page
page
page
page
page
page
page
page
page
page
page
page
page
page
Parting off and unloading ...................................
-7-
13
13
13
14
page 14
page 15
page 16
17
17
18
18
21
22
23
23
24
24
25
26
27
27
28
29
29
30
30
31
32
page 32
BASIC FUNCTIONS
A
- T140-00129-IM01 -
1.
GENERAL FUNCTIONS
1.1 Description of "G" functions
Code G
( Note f. )
A
Function
Group of
mutually
exclusive
functions
A
B
G00
G01
G02
G03
G00
G01
G02
G03
01
Rapid traverse
Linear interpolation (turning)
Clockwise circular interpolation (turning)
Counter-clockwise circular interpolation (turning)
G04
G10
G04
G10
00
Dwell
Data input
G18
G18
16
- Xp Zp - plane selection radius center I and K
G20
G21
G20
G21
06
Programming in inches
Programming in millimetres
G22
G23
G22
G23
09
Safety areas control ON
Safety areas control OFF
G28
G28
00
Return to reference point
G32
G33
01
Threading
G40
G41
G42
G40
G41
G42
07
Cancel tool tip radius compensation
Left tool tip radius compensation ON
Right tool tip radius compensation ON
G50
G52
G53
G92
G52
G53
00
Max. spindle speed setting
Local coordinate system setting
Machine coordinate system selection
G54
G55
G56
G57
G58
G59
G54
G55
G56
G57
G58
G59
14
Workpiece coordinate system 1 selection
Workpiece coordinate system 2 selection
Workpiece coordinate system 3 selection
Workpiece coordinate system 4 selection
Workpiece coordinate system 5 selection
Workpiece coordinate system 6 selection
G65
G65
00
Macro calling
G66
G67
G66
G67
12
Macro modal call
Macro modal call cancel
BASIC FUNCTIONS
-8-
- T140-00129-IM01 -
Code G
( Note f. )
Function
Group of
mutually
exclusive
functions
A
B
G70
G71
G72
G73
G74
G75
G76
G70
G71
G72
G73
G74
G75
G76
00
Finishing cycle
Roughing cycle in Z axis
Roughing cycle in X axis
Roughing cycle on forged shape
Face peck drilling in Z axis or Z axis grooves cycle
X axis grooves cycle
Multiple threading cycle
G80
G83
G84
G80
G83
G84
10
Cancel canned drilling cycle
Canned axial drilling cycle
Canned axial tapping cycle
G90
G92
G94
G77
G78
G79
01
Internal/external diameter cutting cycle
Threading cycle
Facing cycle
G96
G97
G96
G97
02
Constant cutting speed ON
Constant spindle speed ON
G98
G99
G94
G95
05
Per minute feed (mm)
Per revolution feed (mm)
---
G90
G91
03
Absolute programming
Incremental programming
-----
G100
G101
G102
G103
NOTE
End of recording program G101-G102-G103
Start of recording first program B axis
Start of recording second program B axis
Start of recording third program B axis
a. The -G- codes marked with a
are -G- active on power-on. For -G20 and G21-,
the one that was operational at shut-down remains effective.
b. The group 00 -G- codes are not modal.
They are only valid for the block in which they are commanded.
c. Several -G- codes can be specified in the same block. If several -G- codes belonging
to the same group are specified, an alarm signal is generated.
d. If a group 01 -G- ode is specified when canned cycle mode is active, the canned cycle
is cancelled automatically and the system switches to the -G80- condition. The group
01 -G- codes, however, are not affected by the programming of a canned cycle -Gcode.
e. One -G- code is displayed for each group.
f. In the present manual and for all machine types Biglia uses the code numbers in the
shaded column B . If you wish to use code numbers in column A, set parameter
3401 bit 6-7=00, otherwise for code numbers in column B, set parameter 3401 bit 6=1
and bit 7=0 (in order to enable these parameters it is necessary to switch the C.N.C.
off and then on).
-9-
BASIC FUNCTIONS
A
- T140-00129-IM01 -
1.2 "M" functions
A
M00
M01
M02
Program stop
Optional stop
End of program and reset
M03
M04
M05
Clockwise spindle rotation
Counterclockwise spindle rotation
Spindle rotation stop
M07
M08
M09
High pressure coolant ON
Low pressure coolant ON
Coolant OFF
M10
M11
M12
M13
M14
M15
Spindle indexing at 30°
Spindle indexing at 60°
Spindle indexing at 90°
Spindle indexing at 120°
Spindle indexing at 150°
Spindle indexing at 180°
M17
M18
Tool setter down (in setting position only for some models)
Tool setter up (in rest position only for some models)
M19
M20
Spindle indexing at 0°
Spindle indexing reset
M21
Automatic tailstock position manual search e lunetta
M22
M23
Parts-catcher up
Parts-catcher down
M24
M25
Chuck open
Chuck closed
M26
M27
Sleeve tailstock forward with LS control
Sleeve tailstock backward with LS control
M28
M29
M30
Slide lubrication
Clear buffer (background)
End of program and reset
M31
M32
Bypass override, axes and spindle speed = 100%
Reset "M31"
M33
M34
Steady-rest open (option)
Steady-rest closed (option)
M35
Rigid tapping
M36
M37
Sleeve tailstock forward without limit switch control
Sleeve tailstock backward without limit switch control
M38
M39
Accurate stop ON (point to point movement)
Accurate stop OFF (continuous movement)
M40
M41
Gear range 1:1
Gear range 1:4
BASIC FUNCTIONS
- 10 -
- T140-00129-IM01 -
M42
M43
M44
M45
Call program for B axis movement from PMC (from G101 to G100)
Call program for B axis movement from PMC (from G102 to G100)
Call program for B axis movement from PMC (from G103 to G100)
Check B axis end of program from PMC
M46
M47
Release tailstock from guides and hook axis Z to shift
Lock tailstock on guides
M50
M51
Block automatic tailstock on slide
Release automatic tailstock on slide
M51
M52
Load new bar
End of bar check
M56
M57
Release steady-resttailstock from guides and hook axis Z to shift slide
Block steady-rest on
M58
M59
Tool load monitoring ON (selected)
Tool load monitoring OFF (deselected)
M68
M69
Front door automatic opening
Front door automatic closing
M72
M78
M79
B axis torque limitation enabled
Check load in B axis (selected)
Check load in B axis (deselected)
M80
M81
M82
M83
End of lathe cycle - Call for unloading (automatic loader)
Workpiece released (automatic loader)
Call for loading (automatic loader)
Workpiece locked (automatic loader)
M87
M88
M89
B axis high pressure coolant ON (drilling operations)
Washing coolant on spindle ON
Both "M88" and "M87" OFF
M90
Piece counter increment
M91
M92
B axis unslaved
B axis slaved
M98
M99
Call subprogram
Return to program start / Unconditional jump
M100
M101
Auxiliary 1 ON
Reset "M100"
M102
M103
Auxiliary 2 ON
Reset "M102"
M104
M105
Pulse 1 [200msec]
Pulse 2 [200msec]
M106
M107
Enable bar-feeder [KEEPRL K5/4 = 1]
Disable bar-feeder [KEEPRL. K5/4 = 0]
M113
M114
M115
Limiting thrust on X-axis
Limiting thrust on Z-axis
Limiting thrust on B-axis
(for B1000 only)
(for B1000 only)
Value digited in variable #1133
- 11 -
BASIC FUNCTIONS
A
- T140-00129-IM01 -
M116
M117
Synchronism of the steady-rest movement with "Z" axis
Synchronism reset
M120
Programmable clamping pressure
1.3 Variables for verifying
A
#1000
Check of bar end
#1001
Check of bar replacement completed
#1004
Check of bar-feeder alarm
#1005
Check of tool life end
#1006
Check of families change completed
#1133
Setting of torque value in sub-spindle B axis
#1134
Value of the part clamping pressure by proportional valve
BASIC FUNCTIONS
- 12 -
- T140-00129-IM01 -
2.
GENERAL FUNCTIONS
2.1 Start and end of program
ADDRESS
"O"
Used to number programs and input as follows:
O1234 ; ( max. 4 digits ) the digits after the letter "O" identify the program number.
FUNCTION
"M30"
Shows the end of the program and commands an automatic return to the first block of the
program. This function automatically stops spindle rotation and coolant and switches off the micro
for sliding door locking.
EXAMPLE
N150 G0X100
N160 Z100
N170 M30
2.2 Sequence number
ADDRESS
"N"
The letter"N" is used to number the blocks in a program with the aim of facilitating automatic
searching. The data set written in a line after the "N", is called a block.
On inputting the program from the keyboard, numbering is automatic in feeds of 10.
If it is required to add another block to an existing program, it is advisable to number it progressively,
even if this is not compulsory.
The important thing is to avoid signing the same number to two blocks - on performing a seek, the
N.C. would select that block it meets first, which might not be the one required.
NOTE
a. Parameter 3216 increases the sequence numbers which have been inserted
automatically.
b. If you do not want blocks being numbered automatically, just move to parameter input
and enter Ø su No. SEQUENCE =.
c. A program with both numbered and not numbered blocks is also accepted.
EXAMPLE
N10
N20
N30
N40
T1
G97S800M3
G0X50 Z 2M8
G1......................
N10
N20
N30
N35
N40
- 13 -
T1
G97S800M3
G0X50M8
Z2
(additional block)
G1....................
BASIC FUNCTIONS
A
- T140-00129-IM01 -
2.3 Machines axes definition
ADDRESS
"X - Z "
The names of the machine axes are:
X
Z
to identify the transverse axis
(diameters)
to identify the longitudinal axis
(lengths)
2.4 Logic in the choice of the workpiece zero point
To start with, a reference point must be identified on the piece to be processed which allows the
programming, in a simple and unambiguous way, of the extent of the movement and, at the same
time, of the direction that it must take.
This point for X axis (X zero) is positioned on the spindle rotation axis, while for Z axis (Z zero)
it is convenient to assume at the finished surface of the piece furthest way from the selfcentering chuck. The coordinates of the end point relative to the workpiece zero point are
programmed in the absolute commands.
In programming, the coordinates must be followed by a + (positive) or – (negative) sign, which
defines the direction of the movement.
The + (positive) sign can be omitted since it is recognized automatically by the control unit.
EXAMPLE
X+
workpiece
0 point
Z+
Z-
X-
Point of origin of the axes (workpiece zero point) relative to which the dimensions of
the piece and the tool movements for both X axis and Z axis must be referred.
A
BASIC FUNCTIONS
- 14 -
- T140-00129-IM01 -
2.5 Axis movement
ADDRESS
"X (U) - Z (W)"
In absolute command the end point of the tool is programmed relative to the workpiece zero point.
In incremental command the distance to be covered relative to the last programmed point is
programmed.
NOTE
Absolute
command
Incremental
command
Notes
X
Z
U
W
X axis movement command
Z axis movement command
"U" value is diametrical as address "X"
EXAMPLE
G0 X40 W–40
Incremental command (Z axis movement)
Absolute diametrical command (X axis movement)
NOTE
Absolute and incremental commands can be specified in the same block.
ø 20
ø 30
ø 20
ø 30
EXAMPLE
20
20
25
X0Z0
X20
Z-20
X30
Z-25
25
X0Z0 Abs.
U20 Increm.
W-20
"
U10
"
W-5
"
- 15 -
X0Z0
X20
X30 Z-20
Z-25
BASIC FUNCTIONS
X0Z0 Abs.
U20
Increm.
U10W-20 "
W-5
"
A
- T140-00129-IM01 -
2.6 Summary program
This program shows the application of the functions previously described.
EXAMPLE
17 5 14 11 12,5 9 10,5
P7
Shape description in absolute
Shape description mixed
absolute-incremental
X0 Z0
X40
Z - 10.5
X57 Z - 19.5
Z - 32
X77
Z - 43
X99
Z - 57
X127
Z - 62
X105 Z - 79
Z - 89
X140
Z - 95
X123 Z - 113.5
X0 Z0
X40 (U40)
W - 10.5
X57 W - 9
W - 12.5
X77
W - 11
X99
W - 14
X127 (U28)
W-5
X105 W - 17 (U-22 W-17 )
W - 10
X140 (U35)
W-6
X123 W - 18.5
BASIC FUNCTIONS
- 16 -
ø 99
ø 77
ø 57
ø 40
P0
0
19,5
10,5
32
43
62
57
79
95
89
113,5
A
P1
P2
ø 105
ø 123
ø 127
ø 140
P4
P3
P6
P5
P8
P11
P12
P15
P10
P9
P14
P13
18,5 6 10
- T140-00129-IM01 -
3.
AXIS MOVEMENT
FUNCTIONS
"G00 - G01 - G02 - G03"
The type of movement which the axes can perform in the machining area is defined by four "G" functions
(MODAL) which are permanent and mutually exclusive.
Included in the program, they confer a determined type of movement on the axes, which can only be
modified by programming a different "G" function of the same group.
G0
G1
G2
G3
NOTE
Rapid traverse
Linear interpolation
Clockwise circular interpolation (CW)
Counterclockwise circular interpolation (CCW)
The first ZERO is meaningless and can be omitted.
3.1 Rapid traverse
FUNCTION
"G0"
Used to quickly position or withdraw the tool from the workpiece in times which vary depending
on the machine model and on the screw pitch; this is why the rapid traverse has no linear
interpolation and the axis which first reaches the programmed point stops while the others
continue.
Word:
G0 followed by the end point coordinate/s
EXAMPLE
G0X50
G0Z3
G0X 50 Z3
NOTE
(transverse movement)
(longitudinal movement)
(combined oblique movement without interpolation)
If a fast (G0) oblique movement has been programmed, the axes move simultaneously,
but independently, until the required point is reached.
- 17 -
BASIC FUNCTIONS
A
- T140-00129-IM01 -
3.2 Cylindrical and taper linear interpolation
FUNCTION
"G1"
Used for cylindrical and taper turning processes and facing.
Word:
G1
followed by the end point coordinate/s
EXAMPLE
G0X100
G1X50 F.2
G0X100Z2
G1Z-50 F.3
G0X100Z2
G1Z0 F.25
X60Z-30
(facing)
(cylindrical turning)
(taper turning)
3.3 Circular interpolation
FUNCTION
"G2 - G3"
Used for programming arcs (spherical sectors).
○○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○
Words:
G2
for clockwise (CW) arcs
G3
for counterclockwise (CCW) arcs
Block format:
N___ G2___X___Z___R___ F ___
G2___X___Z___ I___ K___ F ___
N
= block number
G2
= G code of the direction of the arc (choice between G2, G3)
X / Z = end point of the arc
R
= radius of the arc
F
= feed rate
I / K = radius center incremental with respect to the radius start point
○ ○ ○ ○ ○ ○ ○ ○ ○
(For further details see FANUC manual, chapter 4.3)
NOTE
When programming with "I" and "K" , in case the difference between start and final
radius outweighs the value digited in parameter 3410, a FANUC alarm is signalled.
A
BASIC FUNCTIONS
- 18 -
- T140-00129-IM01 -
Programming radius tangential to two straight lines.
The example shows a series of radii tangential to two straight lines at 90°.
Thus the calculation of the radius start and end points is easy.
EXAMPLE
N100 ..................
N110 G0X14Z2
N120 G1Z0F.3
N130 X18Z-2
N140 Z-10
N150 G2X22Z-12R2F.2
(or G2X22Z-12I2K0)
N160 G1X30
N170 X38Z-25
N180 Z-31
N190 G2X42Z-33R2F.15
(or G2X42Z-33I2K0)
N200 G1X48
N210 G3X54Z-36R3F.25
(or G3X54Z-36I0K-3)
N220 G1Z-40F.2
N230 G0X200Z200
N240 M30
R3
R2
ø 54
ø 38
ø 30
12
2
0
40
33
25
ø 18
R2
Programming radius intersecting one or two straight lines, and radius tangential to and/or
intersecting another radius.
The figures show radii tangential to each other, intersecting straight lines and intersecting radii.
All these cases must be programmed, using G2 - G3
radius
intersecting two
straight lines
radius intersecting
one straight line
and tangential to
the other
two radii
tangential to
each other
two radii
intersecting to
each other
For programming, the start and end points of each radius must be known.
- 19 -
BASIC FUNCTIONS
A
- T140-00129-IM01 -
EXAMPLE
Secant
R11
EXAMPLE
A
BASIC FUNCTIONS
R13
R13
R13
- 20 -
6
0
36
30
60
83
93
ø 56
N330 G0X56Z2
N340 G1Z-6
N350 G3X56Z-30R13
N360 G1Z-36
N370 G2X56Z-60R13
N380 G3X56Z-83R13
N390 G1Z-94
N400 G0X100
N410 Z100
N420 M30
ø 122
ø 102
6
0
45
55
66
R16
ø 80
ø 53
Tangent
ø 154
N190
N200 G0X0Z2
N210 G1Z0F.2
N220 X53
N230 G3X80Z-6R16F.15
N240 G1X102Z-45F.25
N250 G2X122Z-55R11
N260 G1X154Z-66F.1
N270 G0X200Z200
N280 M30
- T140-00129-IM01 -
3.4 Turret rotation and offset enabling
FUNCTION
"T"
The N.C. is set up for the use of an automatic turret with a total of 12 positions (or 8, depending on
the type of machine).
"T " is the function for calling the tool position and must be followed by one or two digits, which show
which of the 12 positions has been selected. The standard version of the N.C. is equipped with
32 offsets which are automatically linked to the tool position in the turret.
Thus writing function T1 , automatically links to offset "01".
If, however, it is required to link a different offset to a tool one must enter:
"T121", which thus links offset 21 to tool 1.
"T525" offset 25 to tool 5.
OFFSETS
Information given to the N.C. which allows every tool to identify the workpiece zero point.
For more information on offset, consult the "OPERATING MANUAL" section "D".
We recommend:
- to always program function " T " in an independent block with G40 (see note at the foot of the page)
- to use automatic tool offset linking.
EXAMPLE
N 80 G0Z100
N 90 T3M8
N100 G97S200M4
N110 G0X50Z2
N120 G1Z-50F.2
N130 G0Z150
N140 T12M8
N150 ...............................
NOTE
a. See instructions in -Volume 2- for tools which use the sub-spindle.
b. Turret rotation is done using the shortest route.
There is no possibility of selecting the direction of rotation.
It is possible to rotate the turret while the axes are moving: this operation is dangerous
but it cuts down idle time, T1G0X100Z4G40.
c. Rotation and rapid traverse are performed simultaneously and the program will only
continue when the two movements are completed.
Warning
If in the tool change block G4 is mistakenly entered instead of G40 there will
be no control of the axis movement with possible collision of the tool against the
spindle.
- 21 -
BASIC FUNCTIONS
A
- T140-00129-IM01 -
3.5 Spindle rotation
FUNCTIONS
"G96 S.... - G97 S.... M3 - M4"
○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○
Three functions must be programmed in the same block to rotate the spindle:
G… S… M…
G96 constant cutting speed (m/min.)
G97 constant spindle speed (rpm)
G96 S..
G97 S..
M3
M4
metres per minute (normally used in turning medium/big pieces)
revs per minute (normally used in drilling, tapping, threading or for pieces with small
dimensions)
clockwise rotation (normally used with right-hand tools)
counterclockwise rotation (normally used with left-hand tools)
○ ○ ○ ○ ○ ○ ○
The direction of rotation (M3 or M4) is defined by looking at the spindle from the rear.
"S" gives either the cutting speed or the number of fixed spindle revs, depending on the G96 - G97
address which precedes it:
○ ○ ○ ○ ○ ○ ○
If preceded by "G96" the "S" shows the constant cutting speed in m/min.
G96 S150 is equivalent to a cutting speed (Vc) of 150 m/min, so far each variation of the piece
diameter there will be an immediately corresponding variation of the spindle revs.
○ ○ ○ ○ ○ ○ ○
○ ○ ○ ○ ○
If preceded by "G97" the "S" shows the absolute number of fixed revs.
G97 S1300 the spindle will always turn at 1300 revs per minute no matter what diameter the
○ ○ ○ ○ ○ ○ ○
tool encounters.
The functions G96 - G97 - M3 and M4 are permanent and mutually exclusive.
In the same way "S" is permanent and can be changed by entering a new "S" value.
EXAMPLE
Calculation of the spindle revs as a function of the cutting speed (Vc) and of the tip, plug, thread or
Vt x 1000
of the diameter of the piece to be machined (D): N =
xD
A
BASIC FUNCTIONS
- 22 -
- T140-00129-IM01 -
3.6 Limitation of the max. spindle speed
FUNCTION
"G92 S...."
The function "G92 S..." is used to limit the spindle speed during constant cutting speed
processes.
Warning
This function must be programmed in a block of its own: if programmed with
other functions (coordinates), an uncontrolled movement will occur with
possible collisions between tool and part.
EXAMPLE
G92 S1800 (always write in a block of its own)
--------------------------(conform to this sequence)
G96 S150 M3
The example refers to a constant cutting speed process at 150 m/min. with a limitation
of 1800 giri/min.rpm, a limit which cannot be exceeded. "G92 S..." is stored in memory
and must only be programmed once, at the start of the program.
NOTA
a. When using a constant cutting speed (G96) it is recommended to always limit the
spindle speed.
Otherwise, during center facing, the spindle will reach its maximum revs.
Warning
-- "G92 S...." does not limit the rotation commanded by G97--- Reset and "M30" function cancel the spindle revs limit
-- In case you have to restart the processing from an intermediate position of the
program, it is necessary to set the spindle revs limit.
3.7 Spindle stop
FUNCTION
"M5"
Spindle rotation is stopped by programming "M5 " in a block on its own or together with a rapid
traverse.
EXAMPLE
G0 X250 Z150 M5
To reverse spindle rotation there is no need to go through "M5" but it could be advisable to
reduce spindle speed, for e.g. G97 S500.
- 23 -
BASIC FUNCTIONS
A
- T140-00129-IM01 -
3.8 Gear change
FUNCTIONS
"M40 - M41"
○○ ○ ○ ○ ○
If the machine is fitted with gear change, the functions "M40 and M41" must also be programmed.
M41 is used for roughing operations (gear ratio 1:4)
M40 is used for finishing operations (direct gear ratio 1:1)
○ ○ ○
NOTE
a. When a rapid traverse (G0) is selected with constant cutting speed (G96 ), the
spindle speed is calculated on the dimension (X) input in the program.
Thus the spindle speed will no longer progressively change and the idle time is
also slightly reduced.
3.9 Lock and release of the clamping device
FUNCTIONS
M24 :
M25 :
NOTE
"M24 - M25"
Part lock by clamping device
Part release by clamping device
a. The lock pressure can be adjusted manually by a knob and it is displayed on the gauge.
b. In order to invert the lock direction of the tie rod, when there is a change from a chuck
to a collet unit, or from an inner socket to an outer one, it is necessary to consult the
Operating Manual (MO 010 section "F" paragraph 1.2).
A
BASIC FUNCTIONS
- 24 -
- T140-00129-IM01 -
3.10 Programmable part clamp pressure
FUNCTIONS
"M120 - #1134"
By means of the programmable clamping device with proportional valve it is possible to set the
clamping pressure of the part in the collet.
In this way the operator will not adjust manually the pressure anymore, but the value of the clamping
pressure has to be written inside the part programme.
This device is also used to vary the pressure of the part clamping between the roughing and the
finishing phases. The same system works both for increasing and decreasing this pressure.
In order to increase pressure it is enough to set a greater value, whereas for decreasing it, it is
essential to open and then to clamp the part again.
Be careful during the opening phase since it is necessary to hold up the part by means of a tailstock,
○○ ○ ○ ○ ○
or a sub-spindle or a special tool.
#1134
M120
M25
○ ○ ○
(pressure value in bar)
activates the pressure previously set by #1134
collet clamping
EXAMPLE
O100 machining with programmed clamping pressure
N10 #1134=20
(defines the clamping pressure at 20 bar)
N20 M120
(activates the pressure previously set)
N30 M25
(part clamping at 20 bar pressure)
N40 part programme
NOTE
a. When the machine is set in motion it is necessary to perform the opening or closing of
the clamping device, otherwise alarm “ALL 67” will be created.
- 25 -
BASIC FUNCTIONS
A
- T140-00129-IM01 -
3.11 Axis feed
FUNCTIONS
"G94 - G95 - F"
The feed value during the various processing phases is defined by function "F" which gives both
the feed in mm/rev and the feed in mm/min.
The choice is made using the function "G94 - G95 ".
Programming
G95
sets a feed F in mm. per rev (modal).
EXAMPLE
F 0.2 = 0,2 mm per rev
F 0.35 = 0.35 mm per rev
F 1.5 = 1.5 mm per rev
Programming
G94
cases normally used in turning processes
sets a feed F in mm. per minute (modal).
EXAMPLE
F 10 = 10 mm per minute
F 350 = 350 mm per minute
F 4000 = 4000 mm per minute
cases normally used in milling processes
Function F is modal, thus once input into the program it remains valid for all G1-G2-G3 process
movements made with any tool.
Variations can be made by programming a new F value.
EXAMPLE
N50 G1Z-30G95F.15
N60 X100 F.3
N70 G3 X110Z-35 R5 F.15
The programmed feed value can be modified manually, using the potentiometer -F- located on the
control panel, by any position between 0 and 150% (feeding stops at 0).
During the constant cutting speed phase it is recommended that the feed speed be programmed
in mm/rev (G95), so as to obtain a constant chip section at any spindle speed.
A
BASIC FUNCTIONS
- 26 -
- T140-00129-IM01 -
3.12 Axis feed
FUNCTIONS
M7
M8
M9
"M7 - M8 - M9" (they are all modal
functions)
:
High pressure coolant enable command. It is active at the start of the block.
:
Coolant enable command. It is active at the start of the block.
:
Coolant stop command. It is active at the end of the block.
NOTE
Selecting M8 or M7 the other pump is automatically excluded.
The two pumps can be run simultaneously see section "D" chapter 12.
3.13 Summary program
This program shows the application of the functions described in the preceding chapters.
EXAMPLE
O50
N10
N20
N30
N40
N50
N60
N70
N80
N90
N100
N110
N120
N130
N140
N150
N160
N170
N180
N190
N200
N210
N220
ø 74
ø 20
ø blank 78
25
G92S1800
T1M7G40 (20 diam. drilling)
30
G97S800G95F.15M3
(technological block)
G0X0Z5
G1Z-30
G0Z10
X200Z100M4
(M4 anticipates the spindle reversing)
T2M8 (external roughing)
G96S180G95F0.25M4 (technological block)
G0X80Z0
G1X17 (facing)
G0X75Z1
G1Z-24.8F0.35
X80
G0X200Z200
T3M8 (external finishing)
G96S220G95F.15M4
(technological block)
G0X74Z2
G1Z-25
X80
G0X200Z200M9
M30
- 27 -
BASIC FUNCTIONS
A
- T140-00129-IM01 -
3.14 Dwell
FUNCTION
" G4U ……"
When the block preceding the dwell has been performed, the subsequent block will be performed
after the time programmed in secs.
Dwells could be needed when a program is running (e.g. at the bottom of a groove or after an
M function to close/open a collet, parts-catcher, etc.).
This is made possible by the G4, function which is operational at the end of the programmed block
and only applies to it (maximum time 99999,99 sec.).
Dwell duration is always given in seconds by the value "U" following address G4, written in an
independent block.
The duration in seconds can be converted to number of revs using the following formula:
60 (sec.)
60
Time for rev. =
=
S (Spindle speed)
= 0. 20
300
If you want a 4 rev. dwell, digit: G4U0.8
G0X 41Z-15
G1X30F.15
G4U2 (two second dwell)
G0X41
Z-30
G1X30
G4U1 (one second dwell)
G0X100
Z100
M30
30
15
ø 40
N 500
N 510
N 520
N 530
N 540
N 550
N 560
N 570
N 580
N 590
Dwell at the bottom of a groove
ø 30
EXAMPLE
Function "G4" without the letter "U" is also used for cutting sharp edges.
Facing down to diameter 100, stop and immediate restart in Z
N200 G1........
N210 X100F.2
N220 G4
(momentary dwell)
N230 Z-55
Warning
"G4 U...." must always be programmed in a block of its own to avoid any
collision between tool and workpiece.
NOTE
A
55
ø 100
EXAMPLE
Letter U can also be replaced by letter X
BASIC FUNCTIONS
- 28 -
- T140-00129-IM01 -
3.15 Temporary program stop
FUNCTION
"M00"
Function "M0" , recognized as “program stop”, has the scope of stopping execution of the program
at the end of the block in which it is programmed.
Spindle rotation stops, the coolant halts and the micro switch is turned off.
To restart the push-button CYCLE must be pressed and the functions preceding "M0" are
resumed.
EXAMPLE
N100 T3M8
N110 G97S280M4
N120 G0X40Z1
N130 G1Z-15F.3
N140 X50
N150 Z-25
N160 X70
N170 G0X100Z200
N180 M0 (place turn-over for 2nd process phase)
N190 T1M8
N200 ............................
3.16 Optional temporary program stop
FUNCTION
"M01"
It works like "M0", but it is switched on by key 49 on BIGLIA’s operator’s panel (see the Operation
○○ ○ ○
Manual).
With push-button indicator lit, cycle is stopped.
○ ○ ○ ○ ○ ○
Press push-button CYCLE to restart; the functions preceding "M01" are resumed.
- 29 -
BASIC FUNCTIONS
A
- T140-00129-IM01 -
3.17 Message
FUNCTION
" (....)"
It is possible to include messages which will be displayed during processing.
Every message must be contained within round brackets ( Max. 31 characters ).
Messages can only be input from the N.C. keyboard in the version with the complete keyboard
FULL-KEY while for the version with the dedicated keyboard the program and messages must be
input on personal computer and then transmitted to the N.C. by cable.
EXAMPLE
O10
N20
N30
N40
N50
(gear dwg. 102534 customer Rossi)
G92S2000
T1M8 (drilling dia. 22)
G97S800M3
..................................
3.18 Skip block
FUNCTION
"/"
It is always programmed after the block number (Example: N 120/ X .......... ); its scope is to permit
execution or exclusion of the marked block using key 50 on BIGLIA’s keyboard (see the Operation
○ ○ ○ ○ ○
Manual).
With the key indicator OFF the marked blocks are performed.
With the key indicator ON the marked blocks are skipped.
○ ○ ○ ○
Boring of the ø 40 after the tool replacement and verification of the bored diameter
A
BASIC FUNCTIONS
- 30 -
ø 60
20
ø 40
N100 T6M8 (dia. 40 finishing)
N110 G96S200G95F0.15M4
N120/G0X39.7Z1
N130/G1Z-10
N140/G0X38Z10
N150/X200Z100M0 (checking dia. 39.7)
N160 G0X40Z1M8T6 (offset confirmation to
compensate tool wear)
N170 G1Z-20
N180 X36
N190 G0Z10M9
N200 X200Z100
N210 M30
ø 37
EXAMPLE
- T140-00129-IM01 -
3.19 Accurate stop
FUNCTIONS
"M38" enabled - "M39" disabled
(modal functions)
Tool movement between one block and another can be done in two different ways:
M38 POINT-TO-POINT execution with deceleration at the end of the
block.
The axes between block and block decelerate to reach the dimension and the restart.
This gives a “perfect” shape with sharp edges.
M39 CONTINUOUS execution without deceleration.
The axes do not decelerate between block and block and so, if the
feed is very large, there will be an “error” with rounding of the
edges, as in the sketch as a function of the speed which has been
programmed.
NOTE a. It is recommended to use function M38 where a precise tolerance on profiles is
required, even on chamfers, cones and corner rounds.
b. The numerical control arises in M39 and is mutually exclusive with M38.
c. M38 is not compatible with G0, therefore it has to be always cleared in rapid traverse.
Feeding
Acceleration
0,20
M 38
0,15
0,10
0,05
0
1
2
3
4
Program blocks
Deceleration
Feeding
Acceleration
0,20
M 39
0,15
0,10
0,05
0
1
2
3
- 31 -
4
Program blocks
BASIC FUNCTIONS
A
- T140-00129-IM01 -
3.20 Front door automatic opening and closing
FUNCTION
M68 :
M69 :
"M68 - M69"
(optional)
Front door automatic opening
Front door automatic closing
EXAMPLE
O100
N10
.........
.........
.........
N800
N810
N820
NOTE
M69
(workpiece program)
G0X200Z200M5M9 (stop spindle rotation)
M68 (opening is possible only if the spindle is stopped)
M30
a. Block N820 is necessary only on machines with automatic feeder (robot)
b. If the machine is equipped with socket for the automatic feeder and it is used with
manual feed, it is necessary to insert block N815 M00 between blocks N810 and N820
4.
PARTING OFF
AND
FUNCTIONS
UNLOADING
"M22 - M23"
Hydraulic operation
Functions
: Parts-catcher up
"M23"
: Parts-catcher down
Semi-parting, parts-catcher up, parting off and unloading
.................
.................
G0X42Z-30
G1X8F.1
M22
X0F0,07
G0X100M23
ø 40
EXAMPLE
"M22"
.................
.................
A
BASIC FUNCTIONS
- 32 -
(parting up to 8 dia.)
(parts-catcher up)
(cutting to the center)
(tool withdrawal and
parts-catcher down)
- T140-00129-IM01 -
SECTION
-B-
1. Direct programming ...........................................
1.1 Angle ...........................................................
1.2 Chamfer ......................................................
1.3 Corner round ...............................................
1.4 Rules for using direct programming ............
1.5 Direct programming of single blocks ...........
1.6 Direct programming of double blocks ..........
page
page
page
page
page
page
page
34
34
36
36
37
37
40
2. Taper turning .....................................................
page 42
3. Circular turning...................................................
page 43
4. Tool tip radius compensation .............................
4.1 Types of tools T and offset values ..............
page 44
page 46
5. Tool load monitoring ..........................................
5.1 Description ..................................................
5.2 Monitoring ON/OFF from Part-program .......
page 48
page 48
page 48
-----
- -- - - - - -
Paragraph
Chapter
Date
Modifications
Description
SIMPLIFIED
PROGRAMMING
- 33 -
SIMPLIFIED
PROGRAMMING
B
- T140-00129-IM01 -
1.
DIRECT PROGRAMMING
FUNCTIONS
"A - ,C - R "
With direct programming it is possible to include straight line stretches, chamfers and round corners
without defining them by points but using the data from the mechanical drawing.
The definitions possible using direct programming are:
A
,C
R
= Angle
= Chamfer
= Round corner
1.1 Angle
FUNCTION
"A"
The inclination (Angle) of straight lines can be programmed directly.
To establish the value of angle "A" , the axes in figure A or B must be positioned, without rotating
them, on the taper start point with reference to the tool’s working direction.
Start
nizioof
onicità
taper
90
Start
nizioof
conicità
taper
A+
A+
180
-270
A+
0
-180
0
A–
AA-
270
A: Value of angle defined in
a counterclockwise
direction
-90
B: Value of angle defined in
a clockwise direction
The block will be built by declaring only dimension X or Z and the taper A (single block), or the
taper A of the first straight line, the taper A of the second straight line and the X and Z coordinates
relative to the end point of the second straight line (double block). Angle "A" must be programmed
with a maximum format of 3 integers and 4 decimals, with an expression in degrees for the integers
and hundredths for the remainder.
EXAMPLE
50°
10° 30 '
30° 40' 12"
B
=
=
=
A 50
A 10.5
A 30,67 (see table on page 35)
SIMPLIFIED
PROGRAMMING
- 34 -
- T140-00129-IM01 -
CONVERSION OF MINUTES AND SECONDS
TO DECIMAL PARTS OF ONE DEGREE
TABLE - A - MINUTES
DECIMALS OF
ONE DEGREE
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
EXAMPLE
0,01666
0,03333
0,05000
0,06666
0,08333
0,10000
0,11666
0,13333
0,15000
0,16666
0,18333
0,20000
0,21666
0,23333
0,25000
0,26666
0,28333
0,30000
0,31666
0,33333
0,35000
0,36666
0,38333
0,40000
0,41666
0,43333
0,45000
0,46666
0,48333
0,50000
TABLE - B - SECONDS
DECIMALS OF
ONE DEGREE
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
DECIMALS OF
ONE DEGREE
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
0,51666
0,53333
0,55000
0,56666
0,58333
0,60000
0,61666
0,63333
0,65000
0,66666
0,68333
0,70000
0,71666
0,73333
0,75000
0,76666
0,78333
0,80000
0,81666
0,83333
0,85000
0,86666
0,88333
0,90000
0,91666
0,93333
0,95000
0,96666
0,98333
1,00000
0,00028
0,00055
0,00083
0,00111
0,00138
0,00166
0,00194
0,00222
0,00250
0,00277
0,00305
0,00333
0,00361
0,00388
0,00416
0,00444
0,00472
0,00500
0,00527
0,00555
0,00583
0,00611
0,00638
0,00666
0,00694
0,00722
0,00750
0,00777
0,00805
0,00833
DECIMALS OF
ONE DEGREE
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
0,00861
0,00888
0,00916
0,00944
0,00972
0,01000
0,01027
0,01055
0,01083
0,01111
0,01138
0,01166
0,01194
0,01222
0,01250
0,01277
0,01305
0,01333
0,01361
0,01388
0,01416
0,01444
0,01472
0,01500
0,01527
0,01555
0,01583
0,01611
0,01638
0,01666
Convert 35° 16' 22" to a decimal number
35 °
16 '
(tab. A)
22 " (tab. B)
35° 16' 22"
=
=
=
35°
0°,26666
0°,00611
35 ,27277
In the program write A 35.273 (rounded off)
- 35 -
SIMPLIFIED
PROGRAMMING
B
- T140-00129-IM01 -
1.2 Chamfer
FUNCTION
",C"
It is possible to automatically program the chamfer between two linear segments, directly setting
the required dimension. The value of ",C" gives the length to be removed from the straight line
preceding it and from the straight line following it.
Thus an isosceles triangle is built where the two equal oblique give the value ",C" to be removed.
Graphical diagrams of ",C" chamfers
EXAMPLE
,C
,C
,C
,C
,C
,C
1.3 Corner round
FUNCTION
"R"
By using the same logic as chamfers, corners can also be programmed automatically, setting the
value of the radius directly, with which the control unit will build a circular interpolation tangential
to the straight line preceding it and to the straight line following it.
Graphical diagrams of "R" fillets
EXAMPLE
R
R
NOTE
R
a. Chamfers and corners programmed as per ",C" and "R" , can only be present in
cases where the straight lines intersect each other.
b. In programming, coordinates X and Z will always refer to the intersection points
between the straight lines.
B
SIMPLIFIED
PROGRAMMING
- 36 -
- T140-00129-IM01 -
1.4 Rules for using direct programming
Direct programming is only compatible with G1 movements since its scope is to meet, in the best
way possible, the problems of counterturning. The circular sections can be defined as corner
rounds "R" whenever the tangential condition is present on both the straight line preceding the
corner round and the straight line following it. When the initial or final tangential condition is
absent, functions G2 and G3 in traditional format must be used; these are completely compatible
with direct programming.
Chamfers and corners ",C" and "R" can only exist between linear segments (performed in G1)
of sufficient length to contain them. For the same reason the first or last process movement must
never be ",C" or "R" because the linear segment able to contain and locate the chamfer or the
corner would be totally absent.
This problem can be eliminated by programming a preceding or following segment whose length
is equal to ",C" or "R" and which will be covered by the chamfer or corner during execution.
1.5 Direct programming of single blocks
EXAMPLE
70
50
N100 .............................
N110 G0X20Z1
N120 G1Z-20
N130 X50R10
N140 X70Z-40
N150 ............................
R10
20
0
20
40
0
5 x 45°
N100 .............................
N110 G0X20Z1
N120 G1Z-20
N130 X50,C5
N140 Z-40
N150 ............................
50
20
0
20
40
0
- 37 -
SIMPLIFIED
PROGRAMMING
B
- T140-00129-IM01 -
5
5
70
N100 .............................
N110 G0X30Z1
N120 G1Z-10
N130 X70Z-20,C5
N140 Z-40
N150 ............................
30
0
10
20
40
0
70
N100 .............................
N110 G0X30Z1
N120 G1Z-10
N130 X70Z-20R7
N140 Z-40
N150 ............................
R7
30
0
10
20
40
0
70
60°
N100 .............................
N110 G0X30Z1
N120 G1Z-16
N130 A120X70
N140 ............................
30
0
16
0
5
5
70
N100 .............................
N110 G0X30Z1
N120 G1Z-16
N130 A120X70,C5
N140 Z-42
N150 ............................
60°
30
B
SIMPLIFIED
PROGRAMMING
0
16
42
0
- 38 -
- T140-00129-IM01 -
70
N100 .............................
N110 G0X30Z1
N120 G1Z-16
N130 A120X70R8
N140 Z-42
N150 ............................
R8
60°
30
0
42
16
0
80
N100 .............................
N110 G0X33Z1
N120 G1Z-16R6
N130 A150Z-35
N140 ............................
R6
30°
33
0
16
35
0
sm 2
80
R12
sm 2
30°
33
0
16
35
47
0
N100 .............................
N110 G0X29Z1
N120 G1Z0
N130 X33,C2
N140 Z-16
N150 A150Z-35R12
N160 X80,C2
N170 Z-47
N180 ..............................
R6
80
50
R12
N100 .............................
N110 G0X50Z1
N120 G1Z-16
N130 A195Z-35R12
N140 X80R6
N150 Z-47
N160 .............................
15°
0
16
35
47
0
- 39 -
SIMPLIFIED
PROGRAMMING
B
- T140-00129-IM01 -
1.6 Direct programming of double blocks
EXAMPLE
A150
90
30°
R6
2
60°
33
10°
0
16
50
64
0
N100 .............................
N110 G0X29Z1
N120 G1Z0
N130 A170X33
N140 Z-16R6
N150 A120
N160 A150X90Z-50
N170 Z-64
N180 .............................
5
90
5
30°
3 x 45°
60°
33
0
30°
16
50
64
0
R13
3 x 45°
N100 .............................
N110 G0X70Z1
N120 G1Z0
N130 X76,C3
N140 Z-16
N150 A195R13
N160 A150X90Z-50
N170 Z-64
N180 .............................
15°
90
76
SIMPLIFIED
PROGRAMMING
0
16
50
64
0
B
N100 .............................
N110 G0X27Z1
N120 G1Z0
N130 X33,C3
N140 Z-16
N150 A120,C5
N160 A150X90Z-50
N170 Z-64
N180 .............................
- 40 -
- T140-00129-IM01 -
5
5
90
N100 .............................
N110 G0X33Z1
N120 G1Z-16R6
N130 A120R12
N140 A150X90Z-50,C5
N150 Z-64
N160 ..............................
30°
R6
R12
60°
33
0
16
50
64
0
5
30°
90
5
N100 .............................
N110 G0X33Z1
N120 G1Z-16
N130 A120,C5
N140 A150X90Z-50R7
N150 Z-64
N160 ..............................
R7
60°
33
0
16
50
64
0
R13
30°
90
76
15°
N100 .............................
N110 G0X76Z1
N120 G1Z-16
N130 A195R13
N140 A150X90Z-50R7
N150 Z-64
N160 ..............................
R7
0
16
50
64
0
- 41 -
SIMPLIFIED
PROGRAMMING
B
- T140-00129-IM01 -
2.
TAPER TURNING
It should be remembered that, in taper turning (including chamfers), the tool will only shape the piece as
programmed in the case when the tool’s tip is sharp edged.
One normally works with radiused tipped tools and consequently the result is a piece shape displaced in
parallel from the programmed one by an amount which varies depending on the radius of the tool and the
angle of inclination of the shape to be cut. It is therefore necessary to program the correct shape by the
same amount as mentioned above, so that the tool cuts the required shape.
The corrections to be made to the start and end points of the shaped piece to achieve the required shape
can be calculated as follows:
EXAMPLE
Correct
shape
T.R.
²Z
ß
Wrong shape
²X
2
T.R. = Tool tip radius
ß
= Angle of inclination of shape
X
= Axis X increment
Z
= Axis Z increment
Calculate
X
2
X
2
X and
90° - ß
)]
2
X
2
=
R.U. - [ R.U. x
tg. (
X
=
R.U. - [ R.U. x
tg. (
Z = 1,2 - [ 1,2 x
tg. (
Z = 1,2 - [ 1,2 x
tg. 15° ]
ß
2
)]
Z with T.R. = 1,2 and ß = 30°
90° - ß
)]
2
= 1,2 - [ 1,2 x
tg. (
= 1,2 - [ 1,2 x
tg. 30° ]
X
2
= 1,2 - 0,70
Z = 1,2 - 0,33
X
2
= 0,5 - - -
Z = 0,87
X=1
30°
)]
2
Data derived from the calculation which can be normally used in the case of 45° chamfers
Sm. 2 x 45°
0,5
1,6
0,23 0,29 0,47 0,58 0,7 0,93
Chamfer value increased to 45°
B
SIMPLIFIED
PROGRAMMING
- 42 -
Tool used R = 0,8
.................
G1 X50 ,C2.47
.................
ø 50
0,4
Tip radius
0,8 1,0 1,2
- T140-00129-IM01 -
3.
CIRCULAR TURNING
As with taper processing, circular turning has the same problems as regards the tool radius.
This problem can be overcome by programming the required radius, decreased or increased by the tool
radius value depending on whether a concave or convex shape is being processed.
The center of this circumference will be displaced relative to that of the shape to be machined by an amount
equal to the tool radius, both along axis X and along axis Z.
EXAMPLE
Outside
tool
Tool
offset
point
T.R.
Inside
tool
Convex
radius
Concave
radius
Max. error
Programmed
radius
T.R.
New circumference
centre
Programmed
radius
Radius
obtained
Radius
obtained
Wrong detail
Spindle
axis
Correct detail
to obtain the required radius
the concave radii should be reduced and the convex radii increased by the T.R. value.
- 43 -
SIMPLIFIED
PROGRAMMING
B
- T140-00129-IM01 -
4.
TOOL TIP RADIUS COMPENSATION
FUNCTIONS
"G40 - G41 - G42"
Often, during shape turning (it can be checked when the process is finished), errors can be encountered
in the geometry of the piece. Error should not be understood as having turned an over-tolerance diameter
or shoulder (errors which can generally be recovered from with an intervention of the offset linked to the
tool itself) but the fact of having programmed tool movements with the scope of obtaining a piece of a
certain “shape” without actually obtaining it.
These errors which will only be encountered for chamfers, taper turning and corners or spheres (as shown
in the previous pages) are due to the tool tip radius.
The error can be recovered from by programming a tool path different to the theoretical one but this
compels the programmer to make calculations which are sometimes complex (compensation obtained
manually).
With automatic compensation of the tool radius all this work is eliminated since it will be the control unit
to directly and suitably modify the programmed dimensions, eliminating the error due to the tool tip radius.
Thus the programmer must provide:
1.
The actual points of the shape:
The programmed dimensions of the shape must be the actual dimensions of the finished piece (as
per drawing);
2.
The tool tip radius:
The size of the tool tip radius is input to the page called with the "OFFSET SETTING" key (see page
46 or OPERATING MANUAL section "D").
3.
The direction of the imaginary tool tip:
The type of tool is input to the same page as value "T" (see page 46).
4.
The position in which the tool will be working on the shape,
The position of the tool with respect to the shape is defined by function G41 when the tool is onthe
left of the piece looking in the feeding direction; by G42 when it is on the right.
This function must be included in the part-program.
TOOL ON THE RIGHT: G42
TOOL ON THE LEFT: G41
G42
G41
B
SIMPLIFIED
PROGRAMMING
- 44 -
- T140-00129-IM01 -
NOTE
The following should be borne in mind when programming a shape with radius compensation:
a. It is advisable to include "G41" or "G42" in the fast approach block (G0) before the start
of the finishing process.
b. It is compulsory to cancel the "G41" or "G42" at the end of the finishing pass with function
"G40" to be included in the fast withdrawal block.
c. It is advisable to start every program with the inclusion of function "G40".
d. Both the approach stroke of the tool to the piece and the withdrawal one, during which radius
compensation is enabled and disabled, must be greater than double the T.R. .
e. Within a shape there are no blocks with only M,S,T, functions which do not generate axes
movements.
f. T.R. offset should only be used in the finishing passes when there are tapers and circular
interpolations or corner rounds, and only in the case of real need.
g. Do not specify G41" or "G42" if already active. If called a second time, it doubles
compensation.
EXAMPLE
R11
R0.8
ø 122
ø 102
ø 80
ø 34
T7M8G40 (finishing)
G96S180G95F.2M4
G0X30Z2G42 (enable)
G1Z0
X53
G3X80Z-6R16F.15
G1X102Z-45
G2X122Z-55R11
G1X154Z-66F.25
G0X200Z200G40 (cancel)
M30
6
0
45
66
55
ø 53
6
ø 154
R1
N180
N190
N200
N210
N220
N230
N240
N250
N260
N270
N280
NOTE
In the "Tool Geometry" table, set::
OFFSET / GEOMETRY
NO
X
……
………
……
………
……
………
- 45 -
SIMPLIFIED
PROGRAMMING
O1000 N1000
Z
R
T
………
……… …
………
……… …
………
0.800 3
B
- T140-00129-IM01 -
4.1 Types of tools T and offset values
The value of "T" for every finishing tool to be included in the "offset geometry" table may be derived
from this table.
External backward
turner
External neutral
turner
4
Neutral backward
facer
8
5
3
7
0
6
1
External
turner
Neutral
facer
2
Reamer
Backward
reamer
Internal neutral
turner
OFFSET / GEOMETRY
COMPENSAZ
/ GEOMETRY
Input te value of
tool radius
B
SIMPLIFIED
PROGRAMMING
- 46 -
Input the typology of
the tool according to
the table above
- T140-00129-IM01 -
OFFSET / WEAR
COMPENSAZ
/ USURA
Values always
ZERO
NOTE
The same value T
as the GEOMETRY
table is loaded
a. For input of the R and T see the relevant procedures on the "OPERATING MANUAL".
b. The radius offset value is the sum of the radii read in GEOMETRY and WEAR.
For this reason the R value in WEAR must always be 0.
c. Tool wear increment ± 0,999 max.
- 47 -
SIMPLIFIED
PROGRAMMING
B
- T140-00129-IM01 -
5.
TOOL LOAD MONITORING
This matter is dealt in the "SBS" manual,
in this chapter only functions M58 and M59 are described.
5.1 Description
This function displays the torque used by axes and spindle motors, thus allowing to detect tools
machining load.
Machining load monitoring is conducted in accordance with the limit levels entered by the operator;
the machine stops as soon as these limits are exceeded.
For each tool two limit values can be preset:
--
If the load exceeds the preset first limit, an overload alarm occurs and the machine stops at
the end of the machining cycle;
--
If the load exceeds the preset second limit, a tool breakage alarm occurs and the
machining cycle is immediately interrupted.
In both cases the alarm description and the relevant tool number are displayed on the screen.
5.2 Monitoring ON/OFF from Part-program
To switch the tool load monitoring on and off enter M58 and M59 functions in the program.
These functions have to be always inserted in one block.
Functions
M58
M59
: Tool Load Monitoring ON
: Tool Load Monitoring OFF
N10
G0X100Z50;
N20
T101;
N30
M58;
N40
G1X200Z150F100;
N50
X300Z200;
N60
M59;
..............................
..............................
N100 T505;
N110 G0X300Z500;
N120 M58;
N130 G1X350Z400;
N140 X360;
N150 M59;
..............................
..............................
N300 M30;
NOTE
B
(enabling)
(disabling)
(enabling)
(disabling)
During axes rapid traverse tool load monitoring is automatically disabled.
SIMPLIFIED
PROGRAMMING
- 48 -
- T140-00129-IM01 -
SECTION
-C-
CANNED
CYCLES
page
page
page
page
page
page
page
page
page
page
page
page
page
50
50
51
52
54
57
59
62
63
64
65
66
68
page 74
page 78
page 78
-----
--------
Paragraph
Chapter
Date
Modifications
Description
1. Canned repetitive cycles ....................................
1.1 Paraxial roughing cycle along Z axis ........
1.2 Finishing cycle ..........................................
1.3 Summary program .....................................
1.4 Paraxial roughing cycle along X axis ........
1.5 Pattern repeating .......................................
1.6 Finishing cycle with machining allowance
1.7 Face peck drilling ......................................
1.8 Deep drilling with swarf conveying (axial) .
1.9 Face groove ...............................................
1.10 Radial groove ............................................
1.11 Constant lead threading ............................
1.12 Canned simple threading cycle ................
1.13 Automatic threading and multiple-start
threading cycle .........................................
1.14 Canned axial tapping cycle .......................
1.15 Rigid axial tapping cycle ...........................
- 49 -
CANNED CYCLES
C
- T140-00129-IM01 -
1.
CANNED REPETITIVE CYCLES
1.1 Paraxial roughing cycle along axis "Z"
FUNCTION
"G71"
Starting from a blank perform roughing with consecutive passes and a mandatory pass for semifinishing. Used for both external and internal roughing.
If the shape A - B - C is programmed, as in the figure, the area specified is removed with equal passes
D
45°
Blocks format
A
C
R (1st block)
U
(1st block)
(F)
U
(machining
allowance in X)
○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○
with the possibility of leaving a machining allowance in X and Z .
B
Finished shape
G 0 X..... Z..... (A)
(see note a.)
G 71 U..... R.....
(1st block)
G 71 P..... Q..... U..... W..... F..... (2nd block)
W
U/2
(2nd block)
(machining
allowance in Z)
1st BLOCK :
G 71 U..... R.....
U:
Depth of pass in radii in mm without sign
R : Tool retraction amount during the return phase in mm without sign
2nd BLOCK :
G 71 P..... Q..... U..... W..... F.....
P : Sequence number relative to the first block of the shape (point B)
Q : Sequence number relative to the last block of the shape (point C)
U : Machining allowance for finishing in X, expressed in mm, diameter with sign (positive if
external, negative if internal)
W : Machining allowance for finishing in Z in mm with sign (see figure on page 51)
F : Feed used during all the roughing cuts.
Possible F addresses contained in the shape definition blocks from "P" to "Q" are ignored
and only made active in finishing cycle G70.
○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○
○ ○ ○ ○ ○ ○ ○ ○ ○ ○
Two modes of operation are possible with cycle G 71
Mode a: roughing of a shape without grooves processes pre-finishing cut. In the block following
the second G71 specifiy the X value only (see examples on page 52 and page 53).
Mode b: roughing of a shape with or without grooves does not process pre-finishing cuts since
at each pass the tool exits in line with workpiece shape. In the block following the
second G71 put both X and Z value (see examples on page 56 and page 57).
○ ○ ○ ○ ○ ○ ○ ○ ○ ○
NOTE
a. Point "D", starting cycle, is defined by the "X" and "Z" values specified in the block
preceding G71, G72 and G73, plus the machining allowance set with "U" and "W" in
the second block.
C
CANNED CYCLES
- 50 -
- T140-00129-IM01 -
Wrong sequence numbers set under P and Q, may be the cause of collisions, more
Warning
likely so if higher values are set under P than under Q as the cycle makes no controls
on said blocks and processing continues up to the block set from Q with the same
tool called before the roughing cycle.
The same rule applies also to cycles G72 and G73.
The following four shapes can be processed.
Processing is always parallel to Z axis and the signs for U and W are as follows:
C
U (+) ... W (+) ... A
A
External
process.
+X
External
process.
B
B
B
B
Internal
process.
C
U (+) ... W (-) ... C
U (-) ... W (+) ... A
+Z
Both linear and
circular interpolations
are possible
Internal
process.
A
U (-) ... W (-) ...
C
The path of the tool from A to B in G0 or G1 is the 1st block of the shape and is programmed in
the block following the second G71; its sequence number represents the P value.
When the movement from A to B is programmed with G0 or G1 , the feed increase is performed
in G0 or G1 mode accordingly.
NOTE
a. The blocks between P and Q cannot include subprograms calling.
b. The tool always returns to point A at the end of the cycle.
Finishing cycle
FUNCTION
"G70"
After roughing performed with G71, G72 and G73 the following command allows finishing.
○○ ○ ○ ○ ○ ○
1.2
G70 P.....Q.....
P : sequence number relative to the first block of the shape
Q : sequence number relative to the last block of the shape.
○ ○ ○ ○ ○
Warning
At the end of cycle "G70" the tool is reset to the starting point in fast mode
so it is advisable to locate the finishing tool in the same position as the roughing
one (diameter of the blank).
- 51 -
CANNED CYCLES
C
- T140-00129-IM01 -
1.3
Summary program
This program shows the application of the functions G70 - G71 e G72 described in the preceding
chapters.
EXAMPLE
Machining a shaft end using a roughing and finishing tool
2
Machining allowance W =0,10
R=1mm
(retraction amount)
62
ø54
44
ø42
26
17
ø30
ø18
Machining allowance
U/2=0,5mm on the radius
Sm 1 x 45°
0
13
26
39
34
48
58
0
O2
N10 G92S2000
N20 T1M8G40 (Z axis paraxial roughing)
N30 G96S180G95M4
* N40 G0X64Z2
(positioning at start of "A" roughing cycle)
N50 G71U6R1
N60 G71P70Q150U1W0.1F0.35
P N70 G0X15
NOTE a. and b.
N80 G1Z0
N90 X17,C1
N100 Z-13
N110 X26Z-26
N120 Z-34F0.15
(feed used only for finishing)
N130 X44 Z-39F0.2 (feed used only for finishing)
N140 Z-48
Q N150 X62Z-58
N160 G0X200Z150
N170 T2M8G40 (finitura)
N180 G96S200M4G95F0.25
N190 G0X64Z2G42 (positioning as for roughing block 40)
N200 G70P70Q150 (G70 switches on functions M-S-F as written in block 120 and 130)
N210 G0G40X200Z150
N220 M30
NOTE
a. If only X axis is set in block N70 (as in the example), roughing leaves "steps" (shaded
areas on the sketch) which are removed by a final prefinishing cut.
b. If both X and Z axes are set in block N70 (e.g. N70 X15Z2), roughing leaves no "steps"
and no final prefinishing cut is performed.
C
CANNED CYCLES
- 52 -
- T140-00129-IM01 -
EXAMPLE
Internal-external roughing and finishing with four tools
Blank ø 130 x 75
130
R5
R6
100
R4
15°
70
60°
54
3°
34
30
Sm 2
Sm 2
0
0
O4
N10 T1M8G40 (dia 30 tip)
N20 G92S1800
N30 G97S1000G95F0.15M3
N35 M58
N40 G0X0Z6
N50 G83Z-85Q15000
N60 G0G80X200Z100M4
N65 M59
N70 T3M8 (external roughing)
N80 G92S1800
N90 G96S200G95F0.35M4
N95 M58
N100 G0X133Z0
N110 G1X27
(facing)
N120 G0X132Z1
(pos. start roughing)
N130 G71U3.5R1 (ext. roughing)
N140 G71P150Q210U1W0.1
P N150 G0X66
N160 G1Z0
N170 X70Z-2
N180 Z-20R4
N190 A120X100R6
N200 A180R5
Q N210 A105X130Z-50
N220 G0X200Z200
N225 M59
N230 T5M8 (internal roughing)
- 53 -
0
20
50
73
C4
N240 G92S2000
N250 G96S180G95F0.3M4
N260 G0X30Z2 (pos. start roughing)
N265 M58
N270 G71U3R1
N280 G71P290Q340U-1W0.1
P N290 G0X58
N300 G1Z0
N310 X54Z-2
N320 Z-20R4
N330 A-90 , C2
Q N340 A183X34Z-73
N350 G0Z100
N355 M59
N360 T7M8 (internal finishing)
N370 G92S2500
N380 G96S250G95F0.2M4
N390 G0G41X32Z3M38
N400 G70P290Q340
N410 G0G40X200Z100M39
N430 T9M8 (external finishing)
N440 G96S280G95F0.25M4
N450 G0G42X132Z3M38
N460 G70P150Q210
N470 G0G40X200Z200M39
N480 M30
CANNED CYCLES
C
- T140-00129-IM01 -
1.4 Paraxial roughing cycle along X axis
"G72"
FUNCTION
As seen from the figure below, this cycle is similar to G71 except that the processing is parallel
○○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○
to X axis.
W
Blocks format
C
Tool path
B
A
R
(Machining
allowance) in Z
45°
W
Finished shape
U
(Machining
allowance) in X
U/2
C
G0 X.. Z..... (A)
G72 W.. R.....
(1st block)
G72 P..... Q.... .U..... W..... F..... (2nd block)
The meaning of the addresses in the two G72 blocks is the same as for G71.
○ ○ ○ ○ ○ ○ ○ ○ ○
It is possible to machine the following four shapes.
Machining is always parallel to X axis; U and W signs are as follows :
U (-) ... W (+) ...
U (-) ... W (-) ...
C
C
+X
Internal
process.
Internal
process.
B
A A
B
A A
External
process.
+Z
B Both linear and
circular interpolations
B are possible
External
process.
C
C
U (+) ... W (+) ...
U (+) ... W (-) ...
The path of the tool from A to B is specified in the block with sequence number P with G00
or G01 and the increments for each pass will be performed in G0 or G1. The path from B to C
can also include a shape with grooves.
See note for cycle G71 on pages 50-51-52.
C
CANNED CYCLES
- 54 -
- T140-00129-IM01 -
Roughing along X axis
EXAMPLE
Rough. cut W 3
see block N50
Retraction amount R 1mm
150
ø 200
Machining 0.5mm
allowance U/2
see block N60
ø 162
ø 40
0
2
20
60
50
40
ø 80
ø 120
ø 160
Machining allowance W 0.1
see block N60
O3
N10 T1M8G40 (X axis paraxial roughing)
N20 G92S1500
N30 G96S190G95M4
* N40 G0X162Z2
(positioning at start of "A" roughing cycle)
N50 G72W3R1
N60 G72P70Q130U1W0.1F0.35
See NOTE a. and b. page 52
P N70 G0Z-60
N80 G1X160
N90 X120
N100 Z-50
N110 X80Z-40
N120 Z-20
Q N130X40Z0
N140 G0X200Z150
N150 T2M8 (finitura)
N160 G92S1800
N170 G96S230G95F0.25M4
N180 G0G41X162Z2 (positioning as for roughing block 40)
N190 G70P70Q130
(G70 switches on functions M-S-F)
N200 G0G40X200Z150
N210 M30
NOTE
The rules given for G71 apply.
- 55 -
CANNED CYCLES
C
- T140-00129-IM01 -
EXAMPLE
External roughing-finishing of a pin with pockets, performed using two tools
Sm 1 x 45°
NOTE b.
R20
16
10
0
31
50
46
66
Sm 1,5 x 45°
92
84
108
Sm 1 x 45°
128
ø 40
ø 25
ø 26,46
R3
ø 20
ø 30
ø 40
ø 45
R2 R5
C7
O10
N10 G92S1500
N20 T1M8G40M26 (sgrossatura ut. 35°)
N30 G96S180G95F0.25M4
N40 G0X100Z10
N50 X46Z2
(positioning at start of "A" roughing cycle)
N60 G71U2R1
N70 G71P80Q210U1.5W0.1
NOTE a. (in presence of Z carry out pockets)
P N80 G0X18Z2
N90 G1A135X25
N100 Z-10R3
N110 X40,C1
N120 Z-16
N130 G2X40Z–46R20
N140 G1Z-50
NOTE b.
N150 X20Z-66
N160 Z-84R5
N170 X30Z-92
N180 Z-108R2
N190 X40,C1
N200 Z-128
Q N210 X45
N220 G0X200Z10
NOTE c.
N230 T2M8 (finitura RU0.8T3)
N240 G96S220G95F0.15M4
N250 G0G42X48Z3
(positioning at start of finishing cycle)
N260 G70P80Q210
N270 G0G40X200Z10M9
N280 M30
NOTE
a. Position in Z outside the piece 2,5 times the tool radius otherwise the finishing
tool will penetrate the workpiece because of radius correction.
b. At bottom of groove - it is not possible to program a radius by direct programming but only with G2 or G3, otherwise the 057- lack of data alarm appears.
c. The finishing tool is of the T3 type with tip radius R = 0,8
C
CANNED CYCLES
- 56 -
- T140-00129-IM01 -
1.5 Pattern repeating
FUNCTION
"G73"
This function allows a defined shape to be repeated several times, shifiting it by the programmed
value each time.
○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○
Using this cycle it is possible to process pieces derived from pressings and castings efficiently.
Blocks format
W (2nd Block)
A
C
Blank shape
U (1st Block)
Finished
shape
* see note
at page bottom
B
U/2 (2nd Block)
W (1st Block)
The cycle should be programmed as follows:
A
B
C
G0 X.... Z.... (A)
G73 U.... W.... R....
(1st block)
G73 P.... Q.... U.... W.... F.... (2nd block)
1st BLOCK
G73 U.... W.... R....
U : material to be removed in X, in mm in radii with sign
W : material to be removed in Z, in mm with sign
R : number of passes
2nd BLOCK
G73 P.... Q.... U.... W.... F....
sequence number relative to the first block of the shape
sequence number relative to the last block of the shape
machining allowance for finishing in X, in diameters in mm with sign
machining allowance for finishing in Z, in mm with sign
feed used during the roughing passes.
P:
Q:
U:
W:
F:
○ ○ ○ ○ ○ ○ ○ ○ ○ ○
Four types of shape are considered. Attention should be paid to the signs of U and W (refer to the
figure on page 51)
The tool returns to point A at the end of the cycle.
Warning
Using this roughing cycle for a shape having excessive shoulders (greater than the
insert) could result in the insert breaking or the workpiece escaping from the chuck
damaging the machine or causing injury to the operator.
See note on pages 50-51-52-56-57 for cycle (G71).
- 57 -
CANNED CYCLES
C
- T140-00129-IM01 -
Machining a forged piece with three roughing cuts
EXAMPLE
16
16
W 0,1
X
A
ø 250
ø 210
U1 : 2 = 0,5
U1 : 2 = 0,5
ø 80
ø 120
ø 160
ø 180
ø 185
R20
O1
N10 G92S1500
N20 T1M8G40 (roughing)
N30 G96S200G95F0.35 M4
N40 G0X210Z20
N50 G73U14W14R3
N60 G73P70Q120U1W0.1
P N70 G0X80Z2
N80 G1Z-20F0.15
N90 X120Z-30F0.25
N100 Z-50
N110 G2X160Z-70R20
Q N120 G1X180Z-80
N130 G0X250Z150
N140 T2M8 (finishing)
N150 G96S230G95F0.25 M4
N160 G0G42X190Z2
N170 G70P70Q120
N180 G0G40X250Z150
N190 M30
C
CANNED CYCLES
- 58 -
150
20
0
30
20
50
80
70
120
Z
- T140-00129-IM01 -
1.6 Finishing cycle with machining allowance
FUNCTION
"G70 P.... Q.... U.... W... "
After roughing a shape with pockets with cycles G71, G72 and G73, this function allows further
○○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○
finishing passes with constant machining allowance along the shape.
G 70 P.....Q.....U.....W.....
P:
Q:
U:
W:
sequence number relative to the first block of the shape
sequence number relative to the last block of the shape
machining allowance for finishing in X, expressed in mm, diameter with sign (positive
if external, negative if internal)
machining allowance for finishing in Z in mm with sign (see figure on page 51)
○ ○ ○ ○ ○ ○
NOTE
a. It is possible to leave a machining allowance only in X or only in Z or in X and in Z at
the same time.
Warning
At the end of cycle G70 the tool is reset to the starting point.
For this reason it is advisable to locate the finishing tool in a position that does not
cause any collision between tool and part.
- 59 -
CANNED CYCLES
C
- T140-00129-IM01 -
EXAMPLE
External roughing-finishing of a shape with pockets performed using two tools,
roughing cycle “G71” and finishing cycle “G70” with constant machining allowance
on the shape and further finishing passes with radius correction ON.
Sm 1 x 45°
NOTE b.
R20
16
10
0
31
50
46
66
Sm 1,5 x 45°
92
84
108
128
Sm 1 x 45°
ø 40
ø 25
ø 26,46
R3
ø 20
ø 30
ø 40
ø 45
R2 R5
C7
O10
N10 G92S1500
N20 T1M8G40M26 (roughing tool 35°)
N30 G96S180G95F0.25M4
N40 G0X100Z10
N50 X46Z2
(positioning at start of "A" roughing cycle)
N60 G71U2R1
N70 G71P80Q210U2W0.1
P N80 G0X18Z2
N90 G1A135X25
N100 Z-10R3
N110 X40,C1
N120 Z-16
N130 G2X40Z–46R20
N140 G1Z-50
N150 X20Z-66
N160 Z-84R5
N170 X30Z-92
N180 Z-108R2
N190 X40,C1
N200 Z-128
Q N210 X45
N220 G0X200Z10
N230 T2M8 (finishing RU0.8T3)
N240 G96S220G95F0.15M4
N250 G0G42X48Z3
(positioning at start of pre-finishing and finishing cycle)
NOTE b.
N260 G70P80Q210U1W0.1
N270 G70P80Q210U0.5W0.1
N280 G70P80Q210
N290 G0G40X200Z10M9
N300 M30
NOTE
a. The rules already given for roughing and finishing cycles apply also for this cycle.
b. “U” and “W” represent the machining allowance left with radius correction ON in
finishing cycle G70.
C
CANNED CYCLES
- 60 -
- T140-00129-IM01 -
EXAMPLE
External roughing-finishing of a shape with pockets performed using two tools,
roughing cycle “G72” and finishing cycle “G70” with constant machining allowance
on the shape and further finishing passes with radius correction ON.
1x
45
°
3 ° 5°
R x415x4
1
3
X180
X160
X140
X120
X100
X76
X60
X42
X28
X90
ø16
Z 22
Z
0
Z-20
Z-20
Z-15
Z-15
Z-10
Z-10
Z-6
Z-6
0
O20
N10 G92S1000
N20 T1M8G40 (roughing tool 35°)
N30 G96S180G95F0.25M4
N40 G0X184Z4
(positioning at start of "A" roughing cycle)
N50 G72W2R1
N60 G72P70Q190U0.1W2
P N70 G0X184Z-18
N80 G1A-45Z-15
N90 X160R3
N100 Z-6,C1
N110 X140
N120 X120Z-15
N130 X100
N140 X90Z-10
N150 X76
N160 X60Z-20
N170 X42
N180 X28Z0
Q N190 X14
N200 G0X220Z100
N210 T2M8 (finishing R.UT.O.8T3)
N220 G96S220G95F0.2M4
N230 G0G41X186Z3 (positioning at start of pre-finishing and finishing cycle)
NOTE b.
N240 G70P70Q190U0.2W1
N250 G70P70Q190U0.2W0.3
N260 G70P70Q190
N270 G0G40X220Z100M9
N280 G30
NOTE
a. The rules already given for roughing and finishing cycles apply also for this cycle.
b. “U” and “W” represent the machining allowance left with radius correction ON in
finishing cycle G70.
- 61 -
CANNED CYCLES
C
- T140-00129-IM01 -
1.7 Face peck drilling
FUNCTION
"G74"
○○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○
Using this cycle the swarf can be broken when drilling along the "Z" axis.
Blocks format
G0 X.... Z....
(starting and ending cycle position)
G74 R....
(1st block)
G74 Z.... Q.... F.... (2nd block)
R:
Z:
Q:
F:
tip retraction distance in mm
total hole depth in mm with sign
next drilling depth before each retraction, without sign in thousandths of a mm.
feed rate.
○ ○ ○ ○ ○ ○ ○ ○ ○
NOTE
a. At the end of drilling the tip will be positioned outside the piece.
EXAMPLE
58
R = 1 Retraction distance
2
Workpiece
zero point
8 8 8
C
CANNED CYCLES
- 62 -
…………
T1M8
G97S600G95M3
G0X0Z2
G74R1
G74Z-58Q8000F.12
…………
- T140-00129-IM01 -
Deep drilling with swarf conveying (axial)
FUNCTION
"G83"
Using this cycle the swarf from deep drilling along axis "Z" can be ejected.
○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○
1.8
Blocks format
G0 X.... Z....
(starting and ending cycle position)
G83 Z.... Q.... P.... F....
G80
(G83 disable)
Z:
Q:
P:
F:
hole depth in mm with sign
drilling section after which there is a rapid withdrawal from the piece for swarf ejection,
expressed in thousandths without sign.
dwell at bottom of hole, expressed in thousandths of a second
feed, expressed in mm/rev.
○ ○ ○ ○ ○ ○ ○ ○ ○ ○
NOTE
a. Parameter 5101 bit 2 = 1 .
The safety distance from the material to be worked, when the tip is reentering after each
conveyance, can be set in parameter 5114. The normal value is 500, i.e. 0.5.
EXAMPLE
2 NOTE a.
92
Workpiece
zero point
14
NOTE
20
20
20
…………
T1M8
G97S800G95M3
G0X0Z2
NOTE a.
G83Z-92Q20000P1000F.2
G80G0X100Z100
…………
20
a. Fast positioning point: it defines the start of drilling position, the swarf ejection
position, and cycle end position.
- 63 -
CANNED CYCLES
C
- T140-00129-IM01 -
1.9 Face grooves
FUNCTION
"G74"
This cycle is used to cut a face groove wider than the tool with several cuts automatically established
○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○
by the N.C. with the possibility of breaking chips.
Blocks format
G0 X.... Z....
(starting and ending cycle position)
G74 R....
G74 X... Z.... P.... Q.... F....
R:
X:
Z:
P:
the tool retraction distance in mm. If ZERO is set there is no retraction.
the final diameter of the groove, taking into account twice the width of the tool, in mm.
the depth of the groove in mm.
the tool displacement along axis X to perform the subsequent cuts (this is a value less
than the tool width expressed in radii in thousandths of a mm. without sign)
successive depths of penetration before each retraction, without sign in thousandths
of a mm.
If chip breaking is not desired, set this value to the groove depth +1 (e.g. 12+2+1=15).
feed rate.
Q:
F:
○ ○ ○ ○ ○ ○ ○ ○ ○ ○
EXAMPLE
1
2
Tool offset point
4 5
N80
N90
N100
N110
N120
N130
N140
6
ø 30
ø 40
6
ø 116
2
12
C
CANNED CYCLES
- 64 -
T2M8
G96S100G95M4
G0X116Z2
G74R1
G74X40Z-12P4000Q6000F0.05
G0X200Z200
M30
- T140-00129-IM01 -
1.10 Radial grooves
FUNCTION
"G75"
This cycle is used to cut a radial groove wider than the tool with several cuts automatically
established by the N.C. with the possibility of breaking chips.
○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○
Blocks format
G0 X.... Z....
(starting and ending cycle position)
G75 R....
G75 X.... Z.... P.... Q.... F....
R:
X:
Z:
P:
Q:
F:
the tool retraction distance in mm. If ZERO is set there is no retraction.
the end diameter of the groove in mm.
the end point of the groove in Z, taking into account the tool offset side.
successive depths of penetration before each radial retraction without sign inthousandths
of a mm.
If chip breaking is not desired, set this value to the groove depth + 1 (e.g.13+1+1=15).
the tool displacement along axis Z to perform the subsequent cuts (this is a value less
than the tool width expressed in thousandths of a mm. without sign).
feed rate.
○ ○ ○ ○ ○ ○ ○ ○ ○ ○
EXAMPLE
Tool offset point
………………………
T11M8
G96S100G95M4
G0X152Z-31
G75R1
G75X124Z-70P6500Q5000F0.1
G0X200Z200
1
6,5 6,5
1
6
ø 152
ø 150
0
25
31
70
ø 124
1
13
5
- 65 -
CANNED CYCLES
C
- T140-00129-IM01 -
1.11 Constant lead threading
FUNCTION
"G33"
It is possible to program cylindrical,frontal and taper threading programming single movements
using function "G33". The lead is given using address F .
F3
CYLINDRICAL THREADING
Example of constant lead cylindrical threading
with a length of 100 mm pitch 3:
G33 Z-100 F3
FRONTAL THREADING
F2.5
Example of frontal threading, constant pitch 2,5:
F2
G33 X50 F2,5
TAPER THREADING
Example of taper threading pitch 2:
G33 X150 Z-200 F2
NOTE
a. The feeding potentiometer is switched off during threading.
b. Thread undercut, where they are not required, can be ignored since the tool moves
away from the piece rapidly at the end of the thread without creating a groove.
c. The result of multiplying the spindle revs by the lead must not exceed 10000 or the
value specified by Biglia in parameter 1422.
Otherwise the lead will be different from that programmed, but no errors will be signalled
by C.N.C.
d. When the HOLD push-button is pressed the tool will only stop at the end of the cut.
e. The spindle speed must be programmed with G97S... and must be the same for both
roughing and finishing (G96 would generate an imperfect threading).
f. The thread lead is inaccurate near the starting (L) and finishing (L1)points due to
the acceleration and deceleration of the axis. To avoid this error the threading pass
should be started about 3 ÷ 5 times the lead away from the piece.
C
CANNED CYCLES
- 66 -
- T140-00129-IM01 -
The length of sections L and L1 is calculated using the following rules:
L1
L=
PxN
500
L1 =
PxN
1800
L
P = thread lead (mm)
N = spindle speed (rpm)
The value L obtained by the rule above must always be rounded off to the the higher integer and then
doubled, to be on the safe side.
There is also a practical system to calculate L i.e. multiplying the lead value by 3 ÷ 5 namely:
L = P x 3 or L = P x 5 depending on the number of spindle speed and on the machine type.
EXAMPLE
Threading ø20 x 1 in three cuts plus a polishing one, vertical penetration
L
L=
0.3
ø 20
0.2
ø 19.4
ø 18.72
M 20 x 1
30
ø 19
0.14
35
SxF
800 x 1
=
= 1.6 -- 1.6 x 2 = 3.2 (rounded off to 4)
500
500
N 220
N 230
N 240
N 250
N 260
N 270
N 280
N 290
N 300
N 310
N 320
N 330
N 340
N 350
N 360
N 370
N 380
N390
T4M8
G97S800M3
G0X19,4Z4
G33Z-30F1 (1st pass)
G0X22
Z4
X19
G33Z-30F1 (2nd pass)
G0X22
Z4
X18.72
G33Z-30F1 (3rd pass)
G0X22
Z4
X18.72
G33Z-30F1 (polishing)
G0X100
Z10
- 67 -
CANNED CYCLES
C
- T140-00129-IM01 -
1.12 Canned simple threading cycle
FUNCTION
"G78"
It is possible to create cylindrical and taper threadings by programming the cut depths.
This is the ideal solution when cycle G76, described further below, cannot be used.
As command "G78" automatically generates an A - B - C - D modal path, in the following blocks
only the diameter of the subsequent cuts needs being specified.
○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○
CYLINDRICAL THREADING
Blocks format
G0 X(A) Z(A)
G78 X(C) Z-(C) F(lead)
A
B
C
D
=
=
=
=
D
Point of tool location before threading starts
Diameter of the 1st threading cut
End point of threading in Z.
Location established by CNC automatically
as a function of point A and point C
A
C
B
See examples of threading on pages 71 and 72
○ ○ ○ ○ ○ ○ ○ ○ ○ ○
C
Blocks format
+X
D
A = Point of tool location before threading
C
B =
C =
D =
E =
starts
Location established by CNC automatically as a function of E
End point of taper threading in X
Location established by CNC automatically as a function of point A and point C
It defines the inclination of the thread
expressed in mm; it represents the difference between the end diameter and the
initial diameter divided by 2, with negative sign for external threads and without
sign for internal threads.
A
E
G0 X(A) Z(A)
G78 X(C) Z(C) R(E) F(lead)
X
○○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○
TAPER THREADING
See examples of threading on pages 73 and 74
○ ○ ○ ○ ○ ○ ○ ○ ○
CANNED CYCLES
- 68 -
Z
B
+Z
- T140-00129-IM01 -
ISO Table for external threads
R
H0 H
Surface finished
by the shaving tool
Tool with
crest shaver
Turned diameter
"H0" defines the thread’s depth as a function of the lead and the bottom radius, while the number of
cuts is given as an indication only and must be optimized according to the material being machined
and the type of tool being used.
Lead
H
H0
R
1
2
3
4
5
6
7
8
9
10
11
12
NOTE
0.5
0.38
0.32
0.06
0.75
0.56
0.47
0.09
1.0
0.76
0.63
0.13
1.25
0.95
0.79
0.16
1.5
1.14
0.95
0.19
1.75
1.33
1.11
0.22
2.0
1.52
1.27
0.25
2.5
1.89
1.58
0.31
3.0
2.28
1.90
0.38
0.15
0.12
0.10
0.05
(0.42)
0.18
0.14
0.10
0.10
0.05
(0.57)
0.25
0.20
0.13
0.10
0.05
(0.73)
0.25
0.20
0.15
0.14
0.10
0.05
(0.89)
0.30
0.25
0.20
0.15
0.10
0.05
(1.05)
0.30
0.25
0.20
0.16
0.15
0.10
0.05
(1.21)
0.30
0.25
0.20
0.20
0.15
0.12
0.10
0.05
(1.37)
0.30
0.28
0.25
0.20
0.20
0.15
0.15
0.10
0.05
(1.68)
0.35
0.30
0.25
0.20
0.20
0.15
0.15
0.15
0.10
0.10
0.05
(2,00)
a. The sum of the various cuts in the table is increased by 0.10 to take into account tool
flexion and stress.
b. A practical way of calculating the depth of the external metric thread is to multiply the
lead value by the fixed numbers 0.60 ÷ 0.63; for the internal thread multiply by 0.55
÷ 0.58; with Whitworth threads multiply the screw and internal thread values by 0.65.
c. Calculating the insert inclination as a function of the thread diameter and the lead
P
Tgα =
xD
P = thread lead
D = diameter of the piece to thread
α = insert inclination (check the correspondence on the insert holder)
- 69 -
CANNED CYCLES
C
- T140-00129-IM01 -
EXAMPLE
External thread M24 x 1.5 material C40, cutting speed 120 m/min.
Calculating the spindle speed.: N =
Vt x 1000 120 x 1000
=
= 1592 (rounded off to 1600)
xD
3.14 x 24
From the table we get 6 passes and their deep.
6
30
N100
N110
N120
N130
N140
N150
N160
N170
N180
N190
C
ø 26
ø 22,22
M 24 X 1,5
0,89
4
(4 times the lead)
T8M8 (external thread with G78)
G97S1600G95M3
G0X26Z6
(position of retraction and thread start)
G78X23.5Z-31F1.5 1st cut
X= 24–(0.25 x 2)
X23.1
2nd cut X=23.5–(0.2 x 2)
X22.8
3rd cut
X=23.1–(0.15 x 2)
X22.52
4th cut
X=22.8–(0.14 x 2)
X22.32
5th cut
X=22.52–(0.1 x 2)
X22.22
6th cut
X=22.32–(0.05 x 2)
G0X100Z100
CANNED CYCLES
- 70 -
- T140-00129-IM01 -
EXAMPLE
Internal thread M24 x 1.5 material C40, cutting speed 100 m/min.
Calculating the spindle speed: N =
Vt x 1000
100 x 1000
=
= 1326 (rounded off to 1300)
xD
3.14 x 24
From the table we obtain 6 cuts and their depths.
Said depths must be slightly reduced as the depth of the internal thread is less than the
external thread’s.
Lead x 0.56 = 1.5 x 0.56 = 0.84
6
Indicative value
ø 21
ø 22,32
L
0,84
M 24 x 1,5
35
(4 times the lead)
N100
N110
N120
N130
N140
N150
N160
N170
N180
N190
T5M8 (internal thread with G78)
G97S1300G95M3
G0X21Z6
G78X22.8Z-36F1.5 1st cut depth 0.25
X23.22
2nd cut depth 0.20
X23.52
3rd cut depth 0.15
X23.76
4th cut depth 0.12
X23.90
5th cut depth 007
X24.00
6th cut depth 0.05
G0X100Z100
- 71 -
was 0.30 on the table
was 0.25 on the table
was 0.20 on the table
was 0.15 on the table
was 0.10 on the table
was 005 on the table
CANNED CYCLES
C
- T140-00129-IM01 -
EXAMPLE
External taper threading M24 x 1,5
Radial taper
over 36 mm
ø 2,40
ø 19,2
ø 26
ø 20
ø 22,22
0,89
M 24 x 1,5
6
30
36
N200
N210
N220
N230
N240
N250
N260
N270
N280
N290
NOTE
T7M8
G97S1600G95M3
G0X26Z6
G78X23.5Z-30R-2.4F1.5
X23.1
X22.8
X22.52
X22.32
X22.22
G0X100Z100
a. For calculating the number of cuts, consult the example on cylindrical external threading
given in the previous pages
C
CANNED CYCLES
- 72 -
- T140-00129-IM01 -
Quadruple external threading, lead 8 mm, performing cuts on the four threads before
each increment in X and angle phase for the different starts.
EXAMPLE
G78 :
Canned threading cycle
F
:
Lead
Q
:
Defines the angle shift between two neighbour threads (in thousandths)
Indicative value
ø 26
30
24 - Pitch 8
with 4 starts
4
ø 21,26
1,37
L= 20
Workpiece program:
N100
N110
N120
N130
N140
N150
N160
N170
N180
N190
N200
N210
N220
N230
N240
N250
N260
N270
N280
NOTE
T7M8 (ext. thread with 4 starts)
G97S700G95M3
G0X26Z20
G78X23.4Z-31F8Q0
Q90000
Q180000
Q270000
X22.9Q0
Q90000
Q180000
Q270000
X22.5Q0
Q90000
Q180000
Q270000
X22.1Q0
Q90000
Q180000
Q270000
N290
N300
N310
N320
N330
N340
N350
N360
N370
N380
N390
N400
N410
N420
N430
N440
N450
N460
X21.8Q0
Q90000
Q180000
Q270000
X21.56Q0
Q90000
Q180000
Q270000
X21.36Q0
Q90000
Q180000
Q270000
X21.26QO
Q90000
Q180000
Q270000
G0X100Z100
M30
a. This system allows to start threading always from the same Z point to perform the different
threading and each pass.
- 73 -
CANNED CYCLES
C
- T140-00129-IM01 -
1.13 Automatic threading and multiple-start threading cycle
"G76"
FUNCTION
Allows a thread to be cut by programming only two blocks with function G76 (not modal)
G0
X..... Z.....
(Starting and ending cycle position)
1st BLOCK
G76 P……………………… Q..... R.....
2nd BLOCK
G76 X..... Z..... R..... P..... Q..... F.....
(R)
E
Tool positioning
(R)
A
(R)
Thread end
point
Plunge (R)
(F)
X
D
1st cut
B
R
Thread
depth
C
To be set for
conical thread
only
Workpiece
Zero point
Exit taper
(R) = Rapid
(F) = Work
Z
Tool
a
1st
2nd
3nd
n-th
Qx n
2nd block
P
R
C
CANNED CYCLES
- 74 -
- T140-00129-IM01 -
Description of blocks
○○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○
1°
3°
G76 P……………………… Q… R…
1st BLOCK
P:
2°
Is always followed by 6 digits with the following meaning:
The 1st pair of digits:
show the number of finishing passes.
During the first pass the machining allowance shown by the R in the same block is removed,
subsequent passes are polishing ones.
Values normally used:
00
:
no finishing pass
01
:
one finishing pass
02
:
two finishing passes.
The 2nd pair of digits:
show the tool exit method at the end of each threading pass.
Values normally used:
00
:
is the most used with stripping exit
06
:
exit inclined by 45° where the length of the exit taper is approximately
equal to the thread depth (for metric or Whitworth threading).
The 3rd pair of digits:
show the entry angle of the tool for cutting the thread.
Only the following values can be selected:
80
60
:
entry along the right-hand side for metric threading
55
:
entry along the right-hand side for Whitworth threading
30
29
00
:
vertical entry
Q:
Shows the minimum cutting depth bearing in mind that the initial pass depth (shown by
letter Q in the 2nd block of G76) decreases automatically according to the rule given
on the next page.
When this minimum cutting depth value has been reached the cycle continues with
constant cutting depths until threading is complete.
The value is given in radii in thousandths of a mm. without sign
Values normally used:
Q100
Q120
R:
Shows the machining allowance which is removed during the 1st finishing cut.
Given in radii in mm. without sign.
Values normally used:
R0
:
no finishing allowance foreseen
R0,05 :
5 hundredths in radius of finishing allowance.
○ ○ ○ ○ ○ ○ ○ ○ ○
- 75 -
CANNED CYCLES
C
○○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○
- T140-00129-IM01 -
NOTE
G 76 X..... Z..... R..... P..... Q..... F.....
2nd BLOCK :
X:
Z:
R:
Diameter in mm of the thread bottom.
If threading is tapered it is that of the thread end.
Thread end coordinate
Radius variation between the starting point and the thread end in mm. with sign:
for threading on the main-spindle with movement from right to left,
-- negative for external threads (e.g.: R–0.15)
-- positive for internal threads (e.g.: R 0.15 )
NOTE
a. The letter R is not given for cylindrical threading
b. C.N.C. does not accept:
positivo R for external threads
negativo R for internal threads
Thread angle
R
Length of pass "a"
P:
Q:
F:
Thread depth in radii in thousandths of a mm, without sign.
For metric threads the rule P = pitch x 0.6 - for Whitworth P = pitch x 0.65
Depth of the 1st pass given in radii, thousandths of a mm, no sign
indicative values: Q200 - Q300
Thread pitch given in mm, without sign.
○ ○ ○ ○ ○ ○ ○ ○ ○
a. The number of passes depends on the two values given under letter Q. Increasing one or
both of the two values reduces the number of passes, reducing them increases it.
b. The depth of the first pass decreases according to the following mathematical rule:
Initial pass depth x square root of the x
Q300
3°
4°
0,60
2°
0,52
0,3
1°
0,42
EXAMPLE
n° of cuts .
1st pass
: 0,3
mm radius
2nd pass
: 0,3 x
2 = 0,42
3rd pass
: 0,3 x
3 = 0,52
4th pass
: 0,3 x
4 = 0,60
If the passes are to be equal with a constant depth, two equal Q values are
programmed.
c. Threading is performed only with G97 (fixed revs).
d. In the block preceding G76 function, it is required to place the tool with rapid feed in X and Z;
(X on the return diameter which is normally distant 1 mm radius from the thread crest and in
Z equal approximately 3÷4 times the pitch. If revs increase this value should increase too).
e. Fixed cycle G76 automatically recognizes internal or external threading from the fast tool
positioning to X.
f. By pressing HOLD, the threading pass is complete and the tool returns to the starting point
before stopping. By pressing START the threading cycle starts again.
C
CANNED CYCLES
- 76 -
- T140-00129-IM01 -
EXAMPLE
External and internal threading ø 24 x 2 and quadruple starts external threading.
External threading
6
Thread’s depth P=1200
(approx. 3 times the pitch)
30
T11M8
G97S1600G95M3
NOTE a.
G0X26Z6
G76P010060Q150R0.02
G76X21.6Z-31P1200Q300F2
G0X100Z100
ø 26
ø 21,6
M 24 x 2
1,2
4
Internal threading
6
(approx. 3 times the pitch)
T10M8
G97S1400G95M3
NOTE a.
G0X21Z6
G76P010060Q100R0.01
G76X24Z-31P1200Q250F2
G0X100Z100
ø 21
ø 21,6
M 24 x 2
1,2
Thread’s depth P=1200
Quadruple starts external threading, pitch 8mm
(approx. No.3 times the pitch)
24
Thread’s depth P=1200
30
ø 26
ø 21,6
ø 24 x 8
1,2
4
T10M8 (4-start threading)
G97S1000G95M3
G0X26Z24 (1st start)
G76P010060Q150R0.02
G76X21.6Z-31P1200Q300F8
G0X26Z26 (2nd start)
G76P010060Q150R0.02
G76X21.6Z-31P1200Q300F8
G0X26Z28 (3rd start)
G76P010060Q150R0.02
G76X21.6Z-31P1200Q300F8
G0X26Z30 (4th start)
G76P010060Q150R0.02
G76X21.6Z-31P1200Q300F8
G0X100Z100
To calculate distance between starts, divide the pitch by the number of starts (ex. 8:4=2), therefore positioning in Z will be Z24, Z26, Z28 and Z30, the thread end position remains unchanged.
NOTE
a. Starting and ending cycle position, when the thread is cut the tool automatically returns to the
starting point.
- 77 -
CANNED CYCLES
C
- T140-00129-IM01 -
1.14 Canned axial tapping cycle
FUNCTION
"G84"
As an alternative to the previous example, it is possible to use the "G84" canned cycle which allows
tapping to be performed in a single block and thus it is possible to test the first piece without having
to move to continuous running mode.
EXAMPLE
Tapping M14 x 2
N550
N560
N570
N580
N590
T9M8 (tap M14x2)
G0X0Z8G97S450G95M3
G84Z-20F2
G0G80X200Z200
……………
8
0
20
30
M 14 x 2
Workpiece
Zero point
1.15 Rigid axial tapping cycle
FUNCTION
"M35"
It is possible to create a tap by fitting a rigid tap (like a drill bit).
To do this function "M35" and the use of "G84" , as described above, is required.
EXAMPLE
Rigid tapping M14 x 2
NOTE
N550
N560
N570
N580
N590
T9M8 (tap M14x2)
G0X0Z3G97S450G95M3
M35 (rigid tapping)
G84Z–20F2
G0G80X200Z200
8
0
20
30
M 14 x 2
Workpiece
Zero point
a. G80 cancels G84 and M35.
b. For left-hand threads digit M4, in place of M3, in block N560.
c. To avoid tap rotation, use special collet with security dowel (DIN 6499/B).
d. Function "M35" must be written in a block of its own.
C
CANNED CYCLES
- 78 -
- T140-00129-IM01 -
SECTION
-D-
ADVANCED
PROGRAMMING
-----
- -- - - - - -
Paragraph
Chapter
Date
Modifications
Description
1. Subprograms .................................................
1.1 Subprogram configuration .........................
1.2 Programs and subprogram protection .......
1.3 Calling a subprogram ................................
1.4 Calling a subprogram specifying the
number of the coming block .......................
1.5 Specifying the block number to return
to the main program ...................................
1.6 Using M99 in the main program .................
1.7 Calling blocks in the main program ...........
1.8 Calling and repeating blocks
in the main program ...................................
page
page
page
page
81
81
81
82
page 82
page 83
page 83
page 85
page 87
2. Changing the work coordinate system ...............
page 89
3. Changing work coordinates ...............................
page 91
4. Varying tool offset ..............................................
page 92
5. Local coordinates setting ...................................
page 93
6. Machine coordinates system setting ..................
page 94
7. Rapid position to machine zero point .................
page 95
8. Tailstock and steady-rest ...................................
8.1 Using the tailstock in a fixed position ...........
8.2 Using the tailstock in a cycle and steady-rest
8.3 Using the tailstock with a face driver .........
8.4 Steady-rest connected with tool feed .........
page
page
page
page
page
9. Custom macro and arithmetic operations ...........
9.1 Custom macro ...........................................
9.2 Arithmetic operations .................................
9.3 Conditional and unconditional
jump instructions .......................................
page 99
page 99
page 100
- 79 -
96
96
97
98
98
page.102
ADVANCED
PROGRAMMING
D
- T140-00129-IM01 -
10.Using variable #3000 .........................................
10.1 Using variable #3000 for alarms
definition in a program with or
without skip block ......................................
10.2 Part-counting and cycle stop
with variables ............................................
11.Bar feeder
.................................................
11.1 Programming of the one-bar feeder ...........
11.2 Programming with bar-feeder ....................
11.3 Programming with bar-feeder ....................
11.4 Programming with bar-feeder ....................
11.5 Programming with bar-feeder ....................
11.6 Programming with bar-feeder and
spindle hunting cycle for an easy
insertion of shaped bars ............................
11.7 Programming with bar-feeder and
automatic switch off at bar end ..................
11.8 Parametric programming
for bar-feeder use ......................................
12.Automatic tailstock with B axis ...........................
12.1 Workpiece support with rotating
tailstock and B axis ....................................
12.2 Cycle G131 enabling .................................
12.3 Piece support with turning tailstock
without quill and B axis ..............................
12.4 Piece support with B axis, turning tailstock
and quill .................................................
12.5 Peck drilling cycle with swarf
conveying (Optional) .................................
12.6 Tool load monitoring
(asse "B") inl cycle G183 ...........................
12.7 Drilling with B axis simultaneously with
external turning without thrust check
B axis using the cycle G83 ........................
D
ADVANCED
PROGRAMMING
- 80 -
page 103
page 103
page 104
page 105
page 106
page 107
page 108
page 109
page 110
page 111
page 112
page 113
page 115
page 116
page 119
page 121
page 122
page 124
page 126
page 129
- T140-00129-IM01 -
1.
SUBPROGRAMS
FUNCTIONS "M98
- M99"
A program can be divided into main program and subprograms.
Normally the CNC operates under the control of the main program when a command is encountered which
calls a subprogram, control is passed to the subprogram.
Then, when a returning command is encountered, control is held again by the main program.
Faced, repetitive sequences can be loaded into memory as subprograms simplifying programming.
A subprogram can be called from the main program.
A subprogram can call another subprogram.
A subprogram called only by the main program is considered as single level nesting.
Up to four levels of nesting can be achieved, as shown in the figure below.
Main program
Subprogram
Subprogram
Subprogram
Subprogram
O0001 ;
"
"
"
"
M98P1000 ;
"
"
"
"
M30 ;
O1000 ;
"
"
"
"
M98P2000 ;
"
"
"
"
M99 ;
O2000 ;
"
"
"
"
M98P3000 ;
"
"
"
"
M99 ;
O3000 ;
"
"
"
"
M98P4000 ;
"
"
"
"
M99 ;
O4000 ;
"
"
"
"
( Level 1 )
( Level 2 )
( Level 3 )
( Level 4 )
"
"
"
"
M99 ;
1.1 Subprogram configuration
A subprogram is a common program ending with "M99"
O
; Subprogram number
...................................................;
M99 ............................................; End of program
1.2 Programs and subprograms protections
It is possible to protect programs and subprograms, so that they cannot be modified or cancelled
unintentionally by unauthorised people.
Protection of programs from 8000 to 8999 parameter 3202 BIT 0=1
Protection of programs from 9000 to 9999 parameter 3202 BIT 4=1
- 81 -
ADVANCED
PROGRAMMING
D
- T140-00129-IM01 -
1.3 Calling a subprogram
A subprogram is performed when it is called by the main program or by another subprogram.
To call a subprogram, use:
M98P
subprogram name
number of repetitions (9999 max.)
When a number of repetitions is omitted, 1 is assumed.
EXAMPLE
M98P51002
Subprogram number 1002,
is called 5 times consecutively
X100M98P1002
Subprogram number 1002,
is called once only at the end of the axis movement
MAIN PROGRAM
O13
N10 ...........
N20 ...........
N30 ...........
N40 M98P1010
N50 ...........
N60 ...........
N70 ...........
1.4
SUBPROGRAM
O1010
N10 ...........
N20 ...........
N30 ...........
N40 ...........
N50 ...........
N60 M99
Calling a subprogram specifying the number of the coming block
"Q......" defines the coming block in the machining starting subprogram.
MAIN PROGRAM
O13
N10 ...........
N20 ...........
N30 ...........
N40 M98P1010Q30
N50 ...........
N60 ...........
N70 ...........
SUBPROGRAM
O1010
N10 ...........
N20 ...........
N30 ...........
N40 ...........
N50 ...........
N60 M99
NOTE a. When the subprogram number specified in P is not in memory, the alarm N 78 will
occur. Subprograms cannot be called in MDI.
To call a subprogram create the following program in EDIT mode and run it in
automatic mode:
O0;
M98Pxxxx;
M30;
D
ADVANCED
PROGRAMMING
- 82 -
- T140-00129-IM01 -
1.5 Specifying the block number to return to the main program
If in the last block of the sub-program a P is added to M99 followed by a block number, the
control does not return straight to the calling block but to the block number with P in the main
program.
EXAMPLE
MAIN PROGRAM
N0010 ……
N0020 ……
N0030 M98P1010
N0040 ……
N0050 ……
N0060 ……
SUBPROGRAM
O1010 ……
N1020 ……
N1030 ……
N1040 ……
N1050 ……
N1060 M99P0060
1.6 Using M99 in the main program
If M99P… is included in the main program, control will skip to the block the sequence number of
which is specified in P… , and the skip is considered as an unconditional branch.
EXAMPLE
O50
N10 ……
N20 ……
/M99P70
N40
N50
N60
N70
N80
N90
(used to optionally skip the section of a program
see description of skip block)
……
……
……
……
……
M30
If M99 is included in the main program, control returns to the beginning of the program itself.
This rule is used in continuous automatic cycle processes (processing from bars or with a
loader).
EXAMPLE
O13
N10
N20
N30
……
N800
N810
O13
N10 ……
N20 ……
N30 ……
……
N800 /M30
N810 M99P30
……
……
……
/M30
M99
- 83 -
(return to block N30)
ADVANCED
PROGRAMMING
D
- T140-00129-IM01 -
EXAMPLE
Repetition of a process or of a series of operations "N" times
Cutting 4 grooves at fixed distances
10
10
10
10
Tool zero
setting in "Z"
MAIN PROGRAM
N250 T4M8 (grooves L3)
N260 G0X42Z0G97S800G95M4
N270 M98P41250
N280 G0X150Z100
N290 ……
NOTE
At the end of
the 4th process
ø 42
ø 40
ø 30
3
SUBPROGRAM
O1250
N10 W-10
N20 G1X30F.1
N30 G4U.2
N40 G0X42
N50 M99
a. If the cycle stops during execution of a subprogram and RESET is performed, the cycle does
not resume from the point of interruption - restart must be from block N250 in the main
program.
D
ADVANCED
PROGRAMMING
- 84 -
- T140-00129-IM01 -
1.7 Calling blocks in the main program
FUNCTION
"M98 Q...."
It is possible to call a series of blocks within the main program only in case they are digited in the
queue of the main program after function "M99" or "M30".
To call a block, use:
M98Q
block number for starting repetition
digited after M99 or M30
NOTA
NOTE a. The series of blocks to repeat must absolutely end with function "M99".
EXAMPLE
ESEMPIO
MAIN PROGRAM
O100
N10 ...........
N20 ...........
N30 ...........
N40 M98Q1500
(skip to block N1500 with return to block N50 after
performing blocks from N1500 to N2000)
N50 ...........
N60 ...........
N70 M98Q1500
N80 ...........
....................
N1480 .........
N1490 M99
N1500 .........
N1510 .........
....................
N1990 .........
N2000 M99
(skip to block N1500 with return
to block N80 after performing
blocks from N1500 to N2000)
MACHINING
MACHINING
BLOCKS
(return to block following M98Q1500)
- 85 -
ADVANCED
PROGRAMMING
D
- T140-00129-IM01 -
Cutting a series of similar grooves on different diameters and distances
3
Tool zero
setting in "Z"
ø 42
ø 30
0
15
45
60
78
ø 40
1 x 45°
ø 40
ø 50
1 x 45°
3
32
EXAMPLE
O100 (external grooves machining)
N10
G10L2P1Z..... (part origin)
N20
T1M8G40 (external roughing)
N30
G92S.....
(spindle revs limitation)
N40
N....
roughing program
N190
N200 T2M8 (external finishing)
N210
N....
finishing program
N390
N400 T3M8 (groove cutting)
N410 G96S180G95F0.08M4
N420 G0X42Z-15
(X position at +2mm compared to finished diameter)
N430 M98Q1000
(calling of blocks 1st groove cutting)
N440 G0Z-32
N450 M98Q1000
(calling of blocks 2nd groove cutting)
N460 G0X52
(X position at +2mm compared to finished diameter)
N470 Z-60
N480 M98Q1000
(calling of blocks 3rd groove cutting)
N490 G0Z-78
N500 M98Q1000
(calling of blocks 4th groove cutting)
N510 G0X200Z200M9
N520 M30
(end of program)
N1000 G1U-12
(starting of the blocks to repeat programmed with
incremental movements)
N1010 G4U0.5
N1020 G0U12
N1030 W-2
N1040 G1U-4W2
N1050 G0U4
N1060 W2
N1070 G1U-4W-2
NOTE a.
N1080 G0U4
NOTE b.
N1090 M99
NOTE
a. In this phase the tool must be in starting cycle position.
b. Digit further blocks to repeat in M99 queue.
D
ADVANCED
PROGRAMMING
- 86 -
- T140-00129-IM01 -
1.8 Calling and repeating blocks in the main program
FUNCTION "M98
P.... Q...."
It is possible to call and repeat a series of blocks within the main program only in case they are digited
in the queue of the main program after function "M99" or "M30".
Up to four levels of nesting can be achieved and they follow the same rules as subprograms
described in chapter 1.
In this case it is necessary to subdivide the blocks to repeat with function "M99" and to give them
a correct number since they define the skip position.
To call a block, use:
M98P
Q
block number for starting repetition digited after M99 or M30
subprogram name
(it must absolutely be ON)
number of repetitions (max. 9999)
NOTE a. The series of blocks to repeat must absolutely end with function "M99".
- 87 -
ADVANCED
PROGRAMMING
D
- T140-00129-IM01 -
Cutting 4 grooves at fixed distances with chamfer
10
10
Tool zero
setting in "Z"
1
1 x 45°
ø 30
3
10
O2000
N10
N20
N30
N40
N50
N60
N70
N80
N90
N100
N110
N120
N130
N140
N150
N160
N170
N180
N1000
N1010
N1020
N1030
N1040
N1050
N1060
N1070
N1080
N1090
N1090
NOTE
1 1
2
(equidistant external grooves)
G10L2P1Z..... (part origin)
T1M8G40 (external process)
G92S1500
G96S200G95F0.25M4
G0X45Z0
G1X-1.6
G0X36Z1
G1A135X40
Z-45
G0X200Z100
T2M8 (grooves L3 and chamfer 1x45° process)
G96S150G95F0.1M4
G0X42Z0
(X position at +2mm compared to finished diameter)
M98P42000Q1000
G0X150Z100M9
M90
M1
M99
W-10
G1X30
G4U0.5
G0X42
W-2
G1X38W2
G0X42
W2
G1X38W-2
NOTE a.
G0X42
NOTE b.
M99
a. In this phase the tool must be at the groove beginning.
b. Digit other blocks to repeat in M99 queue.
D
ø 42
10
ø 40
Example
ADVANCED
PROGRAMMING
- 88 -
ø42
ø40
ø38
- T140-00129-IM01 -
CHANGING THE WORK COORDINATE SYSTEM
FUNCTIONS
"G54 - G59" TO DEFINE THE WORKPIECE ZERO POINT
Z axis traverse value carried
to No.00 (EXT) e.g.: Z-500.000
X axis traverse value carried
to No.00 (EXT) e.g.: X-310.000
2.
Z
X
Turret position on
MACHINE ZERO POINT
WORKPIECE ZERO POINT consequent to the value carried to
Work shift No.00 (EXT)
P.N. These values have been set by Biglia and must not be
cancelled or modified.
Work coordinate screen page
WORK COORDINATES
WORK
COORDINATES
NOTE
a. Position No.00(EXT) defines the shift from machine zero point to the workpiece zero point
set by BIGLIA; values in origins G54 - G59 are set by customer in relation to workpiece and
clamping device (see example below).
b. Origin G54 is enabled at switching on the machine or after pressing RESET.
c. It is necessary to confirm origins G55÷G59 every time there is a tool change, otherwise
possible collisions between part and tool may occur.
- 89 -
ADVANCED
PROGRAMMING
D
- T140-00129-IM01 -
Workpiece
zero point
set by BIGLIA
Z200 “Z” value
digited in G54
X
Z axis workpiece zero point
digited in G54 work coordinates
Z
1 st operation
30
Z170 “Z” value
digited in G55
X
Z axis workpiece zero point
digited in G55 work coordinates
Z
2 nd operation
Machining using No.2 workpiece origins: "G54 - G55"
EXAMPLE
N10 T1M8G40
(1st phase process)
N20 G54
(values set in G54 are called)
N30 G92S2000
N40 G0G96S180G95F0.35M4
N....
N.... } 1st phase program
N....
N400 G0X200Z200M0
(rotate piece)
N410 T1M8
(2nd phase process)
N420 G55
(values set in G55 are called)
N....
N.... } 2nd phase program
N.... M30
NOTE
a. For machine setting of the values of origins G54 and G55 see the OPERATING
MANUAL section "D" chapter 7.
D
ADVANCED
PROGRAMMING
- 90 -
- T140-00129-IM01 -
3.
CHANGING WORK COORDINATES
FUNCTION
"G10"
It is possible to set values in work coordinates G54÷G59 by digiting G10L2P1Z200 in an independent
block.
Therefore, by digiting - P1 - the value Z200 is set in work coordinates with reference to G54; for the other
work coordinates digit - P2 - for G55 write - P2 - and so on to - P6 - for work coordinates G59.
NOTE
a. Never digit - P0 - as this would change the dimensions of work coordinates No. 00 (EXT) set
by BIGLIA with the risk of possible collision.
- 91 -
ADVANCED
PROGRAMMING
D
- T140-00129-IM01 -
4.
VARYING TOOL OFFSETS
FUNCTION
"G10"
○○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○
Tool offset values can be input from program through the following format:
G10
oppure
G10
P…X…Y…Z…R…Q…;
------ Absolute values
P…U…V…W…C…Q…; ------ Incremental values
P:
1..64:
Offset number
Wear offset
P specifies offset number directly
10000 + ( 1..64 ): Geometry offset
P specifies offset number plus 10000
X :
Y :
Z :
U :
V :
W:
R :
C :
Q :
X axis offset value (absolute)
Y axis offset value (absolute)
Z axis offset value (absolute)
X axis offset value (incremental)
Y axis offset value (incremental)
Z axis offset value (incremental)
Tool tip radius compensation value (absolute)
Tool tip radius compensation value (incremental)
Imaginary tool tip number
○ ○ ○ ○ ○ ○ ○ ○ ○
EXAMPLE
G10P10001X50Z10
G10P1U0.2W0.1
NOTE
D
Value X50 and Z10 will be digited
in Geometry offset No. 1.
Tool wear offset No. 1 will be increased
by 0.2 mm in X and by 0.1 mm in Z.
a. To activate the new value it is necessary to call the offset again, ex. : T10.
ADVANCED
PROGRAMMING
- 92 -
- T140-00129-IM01 -
5.
LOCAL COORDINATES SETTING
FUNCTION
"G52"
Using function "G52" it is possible to influence the system of work coordinates G54÷G59 from partprogram.
This proves helpful when the six origins G54÷G59 are not enough. It is also used in repetitive operations in various points of the workpiece or as a subprogram, especially if parameterized.
NOTE
a. This command only works on the absolute mode and is ignored in the incremental mode.
EXAMPLE
Machine 3 pieces obtained from a bar with one feed only
30
MAIN
O1
N10
N20
N30
N40
N50
N60
N70
N....
N....
N....
N120
N130
N140
N150
N160
N170
PROGRAM
#100=30
(shift of G52)
#101=0
(variable zeroing)
G54
(call origin G54)
G52Z0
(clear local coord.)
G92S2000
T12M9G40 (bar stopper)
G0G97S200M4
30
SUBPROGRAM
O1000
N10 T1M8G40 (drilling)
N....
N.... } piece machining program
N....
N500
N510 #101=#101+#100
N520 G52Z-#101
N530 M99
} bar positioning program
G0X200Z100
M98P31000 (call subprogram
N1000 three times)
G52Z0
(clear local coordinates)
/M30
M90
M99
- 93 -
ADVANCED
PROGRAMMING
D
- T140-00129-IM01 -
6.
MACHINE COORDINATES SYSTEM SETTING
FUNCTION
"G53"
When code "G53" is commanded there is a rapid positioning of the tool relative to the machine
coordinates. This command only works in the absolute mode and is ignored in the incremental mode.
It is useful to position the tool in the tool change point without collision.
Such points must be taken from the screen page"machine location".
Distance -B- Z axis
Distance -A- Z axis
Z
X
Tool position to
machine zero point
Tool position
for turret rotation
EXAMPLE
Distance A = X-50 - Distance B = Z-150
digit G53X-50Z-150 in the program before tool change command.
NOTE
a. Coordinates X and Z can be parameterized, e.g.: G53X#100Z#101
b. For machines with Y axis a doppia slitta it is necessary to position first on G0Y0, otherwise
there might be override problems or collisions between tool and part.
D
ADVANCED
PROGRAMMING
- 94 -
- T140-00129-IM01 -
7.
RAPID POSITIONING TO MACHINE ZERO POINT
FUNCTION
"G28"
If "G28U0W0" is commanded in the same block, the tool positions in X and in Z simultaneously.
When code "G28U0" is commanded and then "G28W0", is commanded in the next block, there is a rapid
positioning of the tool first to the machine zero point in X and then to the machine zero point in Z.
This programming is useful to prevent cutting tool colliding against sub-spindle during the piece picking
phase prior to cutting.
Z
X
Possible conditions:
G28U0
=
rapid positioning X-axis on machine zero point
G28W0
=
rapid positioning Z-axis on machine zero point
G28V0
=
rapid positioning Y-axis on machine zero point
G28C0
=
rapid positioning C-axis on machine zero point
G28B0
=
rapid positioning B-axis on machine zero point
- 95 -
ADVANCED
PROGRAMMING
D
- T140-00129-IM01 -
8.
TAILSTOCK AND STEADY-REST
FUNCTIONS
"M21 - M26 - M27 - M33 - M34- M36 - M37 - M46 M47 - M50 - M51 - M56 - M57"
The tailstock and the automatic steady-rest are not equipped by independent screws for their movement,
but they use the axis Z slide for their positioning. Therefore, at the beginning it will be necessary to look
for their position by function
M21
M26
M27
M33
M34
M36
M37
M46
M47
M50
M51
M56
M57
M21.
Automatic tailstock position manual search and steady-rest
Sleeve tailstock forward with LS control
Sleeve tailstock backward with LS control
Steady-rest open (for all the machines equipped with Steady-rest)
Steady-rest closed (for all the machines equipped with Steady-rest)
Sleeve tailstock forward without limit switch control
Sleeve tailstock backward without limit switch control
Release tailstock from slideways and lock to axis Z slide for positioning
Block tailstock on slideways
Block automatic tailstock on slide
(for B1000 only)
Release automatic tailstock on slide
(for B1000 only)
Release steady-rest tailstock from guides and hook axis Z to shift
Release steady-rest on slide
8.1 Using the tailstock in a fixed position
Machining a shaft with the center already cut, locked in the self-centering chuck and supported by
the tailstock on lathe model B1200
EXAMPLE
O100 (main program)
G92S1000
M47
(lock tailstock on guides)
G4U0.5
M26
(tailstock quill forward)
T1G40
G97S500M4
G0X....Z....
......
...... } piece machining
......
G0X200Z10M9M5 (withdrawal of the last tool)
M27
(tailstock quill backward)
M30
D
ADVANCED
PROGRAMMING
- 96 -
- T140-00129-IM01 -
8.2
Using the tailstock in a cycle and steady-rest
Machining starts with tailstock in backward position and workpiece supported by the steady-rest,
then the spot-center drilling and tailstock hooking and positioning are performed, followed by
complete machining of the workpiece, and ends with tailstock in its backward position.
EXAMPLE
Backward position Z-100 and forward position Z-300 are considered.
O10 (Main program)
G28U0
(position X axis slide to machine zero point)
M47
(lock tailstock on guides)
M27
(tailstock quill backward)
M34
(steady-rest closed)
T1M8G40 (centering bore)
G0G97S500G95F0.08M3
G0Z5
X0
G1Z-8
G0Z5
G28U0
T0100G40M5
(cancel tool offset and stop spindle)
G0Z-100
(position to hook tailstock)
M46
(unlock tailstock from guides)
G4U0.5
st
G1G94Z-110F500 (1 slow shift to avoid stripping)
Z-300F3000
(work area forward position)
M47
(lock tailstock on guides)
G4U0.5
M26
(tailstock quill forward)
G4U0.5
M33
(steady-rest open)
T8G40M8
G0G96S....G95F0.3M4
......
...... } piece machining
......
G0Z10M5M9
G28U0
T0100G40M34
(call tool without offset and close steady-rest)
G0Z-300M27
(position of slide to hook tailstock and withdraw quill)
G4U0.5
M46
(unlock tailstock from guides)
G4U0.5
G1G94Z-290F500
Z-100F3000
(tailstock position rest area)
G95M47
(lock tailstock on guides)
- 97 -
ADVANCED
PROGRAMMING
D
- T140-00129-IM01 -
8.3 Using the tailstock with a face driver
Machining a shaft locked between the face driver and the rotating tailstock.
EXAMPLE
O100 (main program)
G92S1000
M47
(lock tailstock)
M26
(confirm sleeve tailstock forward)
T1G40
......
...... } piece machining
......
GOX200Z10M9
(end of cycle)
M30
NOTE
a. In this case the cursor of OPR referred to CHK-TS (chuck-tailstock) must be on ON
(see OPERATING MANUAL section "F" chapter 1).
8.4 Steady-rest connected with tool feed
Machining a long shaft where the steady-rest follows the turning tool with the same feed.
EXAMPLE
O1200 (SHAFT B11200)
......
T4M9G40 (EXTERNAL MACHINING)
G97S400G94F1400M3M40
M33
(steady-rest opening)
G0B400
(steady-rest positioning)
G0Z-90
X52M34
(steady-rest closing)
G1X50Z-93
......
...... } part machining with steady-rest in fixed position
......
GOX280Z2M33
(steady-rest opening)
T8M9 (THREAD P2)
G97S300M3
G0Z10B450
(steady-rest positioning at synchronism start)
M116
(steady-rest synchronism movement with “Z” axis)
X42M34
(steady-rest closing)
M29
G76P011060Q350R0.02
G76X37.6Z-38P1200Q400F4 (thread machining by steady-rest with tool feed)
G0X200
M117
(synchronism reset)
M33
......
D
ADVANCED
PROGRAMMING
- 98 -
- T140-00129-IM01 -
9.
CUSTOM MACRO AND ARITHMETIC OPERATIONS
9.1 Custom macro
Subprograms are used to repeat an operation several times, using functions and coordinates inside
them which the operator already knows.
Custom macro functions allow subprograms to be run where the following will be used: variables,
arithmetic and logic operations and conditional branches.
This makes it possible to develop general use programs, such as customized deep drilling cycles,
special threading and web cycles, special automatic tool wear compensation cycles, as shown in
the example below.
Variables
Four types of variables are available:
#1 ÷ #33
#100 ÷ #149
Local
variables
Local variables can only be used within a macro and cannot be
shared with other macros.
At switch-on these variables have no value as they are volatile
variables. Use RESET to restore original conditions.
Common
variables
Common variables can be shared among more macros.
At switch-on these variables have no value as they are volatile
variables. Use RESET to restore original conditions.
Common
variables
Like variables #100 ¸ #149, except that they are stable variables
and retain their value even when the machine is switched off.
System
variables
LSystem variables are used to read and digit various CNC data,
such as tool and axis position, tool offset values, etc.
(option. #199)
#500 ÷ #531
(opzion. #999)
#1000 ÷ ........
NOTE
a. To read variables block by block set parameter 6000 bit 5=1
- 99 -
ADVANCED
PROGRAMMING
D
- T140-00129-IM01 -
9.2 Arithmetic operations
D
No.
EXPRESSION
1
#i = #j
Definition, replacement
2
#i = #j + #k
Addition
3
#i = #j – #k
Subtraction
4
#i = #j
5
#i = #j / #k
Division
6
#i = SQRT [#j]
Square root
7
#i = SIN [#j]
Sine
8
#i = COS [#j]
Cosine
9
#i = TAN [#j]
Tangent
10
#i = ATAN [#j]/[#k]
Arctangent
* #k
ADVANCED
PROGRAMMING
FUNCTION
Multiplication
- 100 -
- T140-00129-IM01 -
EXAMPLE
(1)
Definition and replacement of variables #i = #j
Example: #101 = 1005
#101 = #110
#101 = - #112
(2)
Addition #i = #j + #k
Example: #101 = #102 + #103
(3)
Subtraction #i = #j – #k
Example: #101 = #102 – #103
(4)
Multiplication #i = #j * #k
Example: #101 = #102
(5)
* #103
or
or
#101 = SIN [30]
or
#101 = COS [30]
or
#101 = TAN [30]
Tangent #i = TAN [#j]
Example: #101 = TAN [#102]
(10 )
#101 = SQRT [3]
Cosine #i = COS [#j]
Example: #101 = COS [#102]
(9)
or
Sin #i = SIN [#j]
Example: #101 = SIN [#102]
(8)
#101 = #102 / 360
Square root #i = SQRT [#j]
Example: #101 = SQRT [#102]
(7)
#101 = #102 * 5
Division #i = #j / #k
Example: #101 = #102 / #103
(6)
or
Arctangent #i = ATAN [#j] / [#k]
Example: #101 = ATAN [#102] / [#103]
- 101 -
ADVANCED
PROGRAMMING
D
- T140-00129-IM01 -
9.3
Conditional and unconditional jump instructions
No.
EXPRESSION
FUNCTION
DEFINITION
1
GOTO....
Unconditional branch
GOTO....
2
IF [#j EQ #k] GOTO....
Conditional branch (equal to)
IF #j = #k GOTO....
3
IF [#j NE #k] GOTO....
Conditional branch (not equal to) IF #j <> #k GOTO....
4
IF [#j GT #k] GOTO....
Conditional branch (greater than) IF #j > #k GOTO....
5
IF [#j LT #k] GOTO....
Conditional branch (less than)
6
IF [#j GE #k] GOTO....
Conditional branch (greater than O or =)IF #j > #k GOTO....
7
IF [#j LE #k] GOTO....
Conditional branch (less than O or =)
IF #j < #k GOTO....
IF #j < #k GOTO....
EXAMPLE
(1)
Unconditional branch GOTO 1000 oppure GOTO #100
Example: GOTO 1000 (skip to block N1000)
(2)
Conditional branch equal to IF [#i EQ #j] GOTO .......
Example: IF [#101 EQ #102] GOTO 1000
if #101 = #102, skip to block N1000
if #101 <> #102, continue with the next block.
(3)
Conditional branch not equal to IF [#i NE #j] GOTO .......
Example: IF [#101 NE #102] GOTO 1000
if #101 <> #102, skip to block N1000
if #101 = #102, continue with the next block.
(4)
Conditional branch greater than IF [#i GT #j] GOTO .......
Example: IF [#101 GT #102] GOTO 1000
if #101 > #102,skip to block N1000
if #101 < #102, continue with the next block.
(5)
Conditional branch less than IF [#i LT #j] GOTO .......
Example: IF [#101 LT #102] GOTO 1000
if #101 < #102,skip to block N1000
if #101 > #102, continue with the next block.
(6)
Conditional branch greater than or equal to IF [#i GE #j] GOTO .......
Example: IF [#101 GE #102] GOTO 1000
if #101 > #102, skip to block N1000
if #101 < #102, continue with the next block.
(7)
Conditional branch less than or equal to IF [#i LE #j] GOTO .......
Example: IF [#101 LE #102] GOTO 1000
if #101 < #102, skip to block N1000
if #101 > #102, continue with the next block.
D
ADVANCED
PROGRAMMING
- 102 -
- T140-00129-IM01 -
10. USING VARIABLE #3000
10.1 Using variable #3000 for alarms definition in a program with or without
skip block
When a value from 0 to 200 is given to variable #3000, CNC stops in alarm.
If an alarm message (max. 26 characters) is digited after the value, CRT displays an alarm number
by summing 3000 to variable #3000 value and the screen displays a red alarm message.
NOTA
NOTE a. If #3000=1 (WORN OUT TOOL) is digited in the program, the alarm screen page will
display "3001 WORN OUT TOOL".
EXAMPLE
Using function "GOTO" for alarm definition with skip block
N950
N960
#501=#501+1
IF[#501EQ#500]GOTO1000
(when the result of the verification is Yes, the program jumps to
block 1000 and stops in alarm condition with message
"3001 PROCESSED PARTS")
N970 M90
N980 M01
N990 M99
N1000 #3000=1 (PROCESSED PARTS)
EXAMPLE
N950
N960
N970
N980
N990
NOTE
Using function "THEN....." for alarm definition without skip block
#501=#501+1
IF[#501EQ#500]THEN#3000=1 (PEZZI REALIZZATI)
(when the result of the verification is Yes, the program stops in
alarm condition with message
"3001 PROCESSED PARTS")
M90
M01
M99
a. Function "THEN" allows an immediate alarm without skip block, and sometimes it is
easier to manage.
b. To restart processing after alarm #3000
reset the machine and clear alarm
conditions.
- 103 -
ADVANCED
PROGRAMMING
D
- T140-00129-IM01 -
10.2 Part-counting and cycle stop with variables
EXAMPLE
N10 #500=100
N20 IF[#501GE#500]GOTO1000
N30 T1M8G4
......
......
PIECE MACHINING
......
N950
N960 G0X200Z200
N970 #501=#501+1
N980 IF[#501GE#500]GOTO1000
N990 M99 oppure M99P30
N1000 M0 (Pezzi realizzati)
N1010 #501=0
(N° of pieces to process. It is recommended
this block to cancel and set the value directly
in variable #500)
(by this variant machining cannot be restarted
until piece-counting #501 is set to zero)
(increment)
(conditional skip)
(return to block N10 or N30)
(Zeroise variable #501. It is recommended
to cancel this block and set the variable to
zero manually)
N1020 M30
NOTE
a. For safety reasons set variable #501 to zero before machining starts.
b. In case should be displayed and/or modified variable, see "OPERATING MANUAL"
section "F" chapter 1. and press the key soft MACRO .
D
ADVANCED
PROGRAMMING
- 104 -
- T140-00129-IM01 -
11. BAR FEEDER
The lathe can be fitted with various kinds of bar feeder.
For each type or operating mode there is a type of programming.
Cutting
tool T10
Piece
locked
ø38
4
40 Piece
44
NOTE
a. Following are some programming examples being used in relation to the type of bar feeder,
all referred to the figure shown above.
- 105 -
ADVANCED
PROGRAMMING
D
- T140-00129-IM01 -
11.1 Programming of the one-bar feeder
EXAMPLE
N10
N20
N30
N40
N50
N60
N70
N80
The cycle requires the machine to stop at bar end
G10L2P1Z…
M64
G28U0
G92S2500
T1G40M9(puntalino)
G97S200M3
G0X0Z2
G1G94Z-40F2500
(shift origin as required)
(select main spindle as required)
(return to reference point in X)
(spindle revs limitation)
(spindle rotation)
(bar stopper positioned near the piece)
(controlled bar stopper feed,
see bar length)
N90 M24
(open collet)
N100 G1Z0F1300
(conduct bar to workpiece zero point)
N110 M29
(clear buffer)
N120 IF[#1000EQ1]GOTO1000 (check end of bar signal,
if OK skip to block 1000)
N130 M25
(close collet)
N140 G4U1
(dwell)
N150 G0G95X200Z100
(bar stopper withdrawal)
N160 .....................
............................... (program blocks for workpiece machining)
N890 .....................
N900 M90
(piece counter)
N910 M01
(optional stop)
N920 M99
(return to program start)
N1000 G28U0
(return to reference point in X)
N1010 M52
(end of bar)
N1020 M30
D
ADVANCED
PROGRAMMING
- 106 -
- T140-00129-IM01 -
11.2 Programming with bar-feeder
EXAMPLE
N10
N20
N30
N40
N50
N60
N70
N80
The cycle loads the new bar with discharge of billet inside the machine without bar
stopper and without billet cutting.
G10L2P1Z…
M64
G28U0
G92S2500
T1G40M9 (bar stopper)
G97S200M3
G0X0Z2
G1G94Z-40F2500
(shift origin as required)
(select main spindle as required)
(return to reference point in X)
(spindle revs limitation)
(spindle rotation)
(bar stopper positioned near the piece)
(controlled bar stopper feed,
see bar length)
N90 M24
(open collet)
N100 G1Z0F1300
(conduct bar to workpiece zero point)
N110 M29
(clear buffer)
N120 IF[#1000EQ1]GOTO1000 (check end of bar signal,
if OK skip to block 1000)
N130 M25
(close collet)
N140 G4U1
(dwell)
N150 G0G95X200Z100
(bar stopper withdrawal)
N160 .....................
............................... (program blocks for workpiece machining)
N890 .....................
N900 M90
(piece counter)
N910 M01
(optional stop)
N920 M99
(return to program start)
N1000 G28U0
(return to reference point in X)
N1010 G0Z50
N1020 M51
(load new bar and discharge billet inside the
new machine)
N1030 M25
(close collet)
N1040 G4U1
(dwell)
N1050 M99
(return to program start)
- 107 -
ADVANCED
PROGRAMMING
D
- T140-00129-IM01 -
11.3 Programming with bar-feeder
EXAMPLE
N10
N20
N30
N40
N50
N60
N70
N80
The cycle features discharge of billet from rear side of main spindle and loading
of the new bar against bar stopper without billet cutting.
G10L2P1Z…
M64
G28U0
G92S2500
T1G40M9 (bar stopper)
G97S200M3
G0X0Z2
G1G94Z-40F2500
(shift origin as required)
(select main spindle as required)
(return to reference point in X)
(spindle revs limitation)
(spindle rotation)
(bar stopper positioned near the piece)
(controlled bar stopper feed,
see bar length)
N90 M24
(open collet)
N100 G1Z0F1300
(conduct bar to workpiece zero point)
N110 M29
(clear buffer)
N120 IF[#1000EQ1]GOTO1000 (check end of bar signal,
if OK skip to block 1000)
N130 M25
(close collet)
N140 G4U1
(dwell)
N150 G0G95X200Z100
(bar stopper withdrawal)
N160 .....................
............................... (program blocks for workpiece machining)
N890 .....................
N900 M90
(piece counter)
N910 M01
(optional stop)
N920 M99
(return to program start)
N1000 G1Z-44F500
(controlled bar stopper feed to piece parting
position)
N1010 M51
(load new bar)
N1020 M25
(close collet)
N1030 G4U1
(dwell)
N1040 G0X200Z100
(withdrawal of bar stopper)
N1050 M99
(return to program start)
D
ADVANCED
PROGRAMMING
- 108 -
- T140-00129-IM01 -
11.4 Programming with bar-feeder
EXAMPLE
N10
N20
N30
N40
N50
N60
N70
N80
The cycle features discharge of billet from rear side of main spindle and loading
of the new bar against bar stopper with billet cutting.
G10L2P1Z…
M64
G28U0
G92S2500
T1G40M9 (bar stopper)
G97S200M3
G0X0Z2
G1G94Z-40F2500
(shift origin as required)
(select main spindle as required)
(return to reference point in X)
(spindle revs limitation)
(spindle rotation)
(bar stopper positioned near the piece)
(controlled bar stopper feed,
see bar length)
N90 M24
(open collet)
N100 G1Z0F1300
(conduct bar to workpiece zero point)
N110 M29
(clear buffer)
N120 IF[#1000EQ1]GOTO1000 (check end of bar signal,
if OK skip to block 1000)
N130 M25
(close collet)
N140 G4U1
(dwell)
N150 G0G95X200Z100
(bar stopper withdrawal)
N160 .....................
............................... (program blocks for workpiece machining)
N890 .....................
N900 M90
(piece counter)
N910 M01
(optional stop)
N920 M99
(return to program start)
N1000 G1Z-34F500
(controlled bar stopper feed to piece parting
position)
N1010 M51
(load new bar)
N1020 M25
(close collet)
N1030 G4U1
(dwell)
N1040 G0X200Z100
(withdrawal of bar stopper)
N1050 T10G40 (troncatore)
N1060 G97S1000G95M4M8
(spindle revs. and coolant)
N1070 G0X40Z-44
(position parting tool to parting start point)
N1080 G1X0F0.08
(billet cutting)
N1090 G0X100
(parting tool withdrawal)
N1100 X200Z100
N1110 M01
(optional stop)
N1120 M99
(return to program start)
- 109 -
ADVANCED
PROGRAMMING
D
- T140-00129-IM01 -
11.5 Programming with bar-feeder
EXAMPLE
N10
N20
N30
N40
N50
N60
N70
N80
The cycle loads the new bar without bar-stopper, with billet cutting (discharge of
billet, if required).
G10L2P1Z…
M64
G28U0
G92S2500
T1G40M9 (bar stopper)
G97S200M3
G0X0Z2
G1G94Z-40F2500
(shift origin as required)
(select main spindle as required)
(return to reference point in X)
(spindle revs limitation)
(spindle rotation)
(bar stopper positioned near the piece)
(controlled bar stopper feed,
see bar length)
N90 M24
(open collet)
N100 G1Z0F1300
(conduct bar to workpiece zero point)
N110 M29
(clear buffer)
N120 IF[#1000EQ1]GOTO1000 (check end of bar signal,
if OK skip to block 1000)
N130 M25
(close collet)
N140 G4U1
(dwell)
N150 G0G95X200Z100
(bar stopper withdrawal)
N160 .....................
............................... (program blocks for workpiece machining)
N890 .....................
N900 M90
(piece counter)
N910 M01
(optional stop)
N920 M99
(return to program start)
N1000 G0X200Z100
(withdrawal of bar stopper)
N1010 T10G40 (parting tool)
N1020 G0X42Z-44
(position parting tool to parting start point)
N1030 M51
(wait for loading of new bar and discharge of billet
if required)
N1040 M25
(close collet)
N1050 G4U1
(dwell)
N1060 G97S1200G95M4M8
(spindle revs. and coolant for billet cutting
operation)
N1070 G1X0F0.08
(billet cutting)
N1080 G0X100
(parting tool withdrawal)
N1090 X200Z100
N1100 M01
(optional stop)
N1110 M99
(return to program start)
D
ADVANCED
PROGRAMMING
- 110 -
- T140-00129-IM01 -
11.6 Programming with bar-feeder and spindle hunting cycle for an easy
insertion of shaped bars
EXAMPLE
The cycle discharges the billet before the spindle and loads the new bar with
alternate reversal of the spindle for an easier insertion of shaped bars without bar
stopper.
N90 G10L2P1Z151.231
(set piece origin)
N100 M64
(select main spindle)
N110 G53X-40Z-100
(bar stopper positioned near the piece)
N120 G92S2500
(spindle revs limitation)
N130 T1G40M9 (bar stopper)
N140 G97S200M3
(spindle rotation)
N150 G0X0Z2
(bar stopper positioned near the piece)
N160 G1G94Z-40F2500
(controlled bar stopper feed)
N170 M24
(open collet)
N180 G1Z0.5F1300
N190 M29
N200 IF[#1000EQ1]GOTO1000 (check end of the bar signal)
N210 M25
(close collet)
N220 G4U1
(dwell)
N230 G0G95X200Z100
N240
............................... (program blocks for workpiece machining)
...............................
N900 M90
(piece counter)
N910 M01
(optional stop)
N920 M99
(return to program start)
N1000 G53X-40Z-100
(turret withdrawal for frontal billet discharge)
N1010 G97S20M4
N1020 G4U0.5
N1030 M3
N1040 G4U0.5
N1050 IF[#1001EQ0]GOTO1010(check bar load signal, if NO skip to block N1010)
N1060 M25
(close collet)
N1070 G4U1
(dwell)
N1080 M99
(return to program start)
NOTE
a. This program works if parameter #1001 is not impulsive but held for at least 3 sec., or
in any case for not less than the cycle time from block N1010 to block N1040.
b. The bar-feeder must change the bar as soon as it gets the end of bar signal, without
waiting for M51 consent.
- 111 -
ADVANCED
PROGRAMMING
D
- T140-00129-IM01 -
11.7 Programming with bar-feeder and automatic switch off at bar end
EXAMPLE
N10
N20
N30
N40
N50
N60
N70
N80
The cycle loads the new bar without bar stopper and without billet cutting.
G10L2P1Z…
M64
G28U0
G92S2500
T1G40M9 (bar stopper)
G97S200M3
G0X0Z2
G1G94Z-40F2500
(shift origin as required)
(select main spindle as required)
(return to reference point in X)
(spindle revs limitation)
(spindle rotation)
(bar stopper positioned near the piece)
(controlled bar stopper feed,
see bar length)
N90 M24
(open collet)
N100 G1Z0F1300
(conduct bar to workpiece zero point)
N110 M29
(clear buffer)
N120 /IF[#1000EQ1]GOTO1000 (check end of bar signal, if OK skip to block 1000
-See note for skip blocks-)
N130 IF[#1000EQ1]GOTO2000 (check end of bar signal, if OK skip to block 2000
in alarm state, after a preset time the machine
automatically switches off totally or partially, see
automatic switch off option)
N140 M25
(close collet)
N150 G4U1
(dwell)
N160 G0G95X200Z100
(bar stopper withdrawal)
N170 .....................
............................... } (program blocks for workpiece machining)
N890 .....................
N900 M90
(piece counter)
N910 M01
(optional stop)
N920 M99
(return to program start)
N1000 G28U0
(return to reference point in X)
N1010 M51
(load of new bar)
N1020 M25
(close collet)
N1030 G4U1
(dwell)
N1040 M99
(return to program start)
N2000 #3000=1 (end of barre)
N2010 M30
NOTE
a. To enable automatic switching off, see the "OPERATING MANUAL" section"F"
page 98.
D
ADVANCED
PROGRAMMING
- 112 -
- T140-00129-IM01 -
11.8 Parametric programming for bar feeder use
EXAMPLE
The cycle features discharge of billet from rear side of main spindle and loading
of the new bar against bar stopper with billet cutting
MAIN PROGRAM
N10 G10L2P1Z…
(shift origin as required)
N20 M64
(select main spindle as required)
N30 G92S2500
(spindle revs limitation)
* N40 G65P9010T1Z40F2500S200M4
where :
G65P9010 = call subprogram O9010 for bar positioT1
Z40
F2500
S200
M4
=
=
=
=
=
ning (see following page)
toll No. for bar positioning
length of finished workpiece
bar stopper feed rate in mm/min.
spindle speed
spindle rotation direction
* N60 G65P9011T10X38Z40S1200F0.08M4H4
where :
G65P9011 = call subprogram O9011 for billet cutting
T10
X38
Z40
S1200
F0,08
M4
H4
=
=
=
=
=
=
=
(see following page)
toll No. for billet cutting
bar diameter
length of finished workpiece
spindle speed for billet cutting
feed rate in mm/rev. for billet cutting
spindle rotation direction
width of parting tool
* N70 T…M8G40
N80 G0G96S…G95F…M4
............................... (program blocks for workpiece machining)
N890 .....................
N900 G0X200Z200M9
N910 M90
N920 M1
N930 M99
NOTE
a. The numbering of blocks N40-N60-N70 in the main program and bloc N150 in the
subprogram O9010, cannot be changed since they are used as skip bloc during
processing.
- 113 -
ADVANCED
PROGRAMMING
D
- T140-00129-IM01 -
EXAMPLE
BAR STOPPER SUBPROGRAM
O9010
N10 G28U0
(return to reference point in X)
N20 T#20M9G40
(call bar stopper)
N30 G97S#19M#13
(spindle rotation)
N40 G0X0Z2
(bar stopper positioned near the workpiece)
N50 G1G94Z-#26F#9
(bar stopper feed, -see piece length-)
N60 M24
(open collet)
N70 G1Z0F[#9–1000]
(conduct bar stopper to Z0)
N80 M29
N90 IF[#1000EQ1]GOTO150 (check end of bar with conditional block skip)
N100 M25
(close collet)
N110 G4U1
(dwell 1 sec.)
N120 G0G95W50
(50 mm backward in Z - indicative value)
N130 G28U0
(return to reference point in X)
* N140 M99P70
(return to block N°70 in the main program)
N150 G1Z-[#26-5]
(pos. bar stopper 5 mm backward for billet cutting)
N160 M51
(wait for new bar loading)
N170 M25
(close collet)
N180 G4U1
N190 G0G95W50
(50 mm backward in Z - indicative value)
N200 G28U0
(return to reference point in X)
* N210 M99P60
(return to block N60 in the main program and call
parting tool)
BILLET CUTTING SUBPROGRAM
O9011
N10 G28U0
(return to reference point in X)
N20 T#20G40M8
(call parting tool)
N30 G97S#19G95F#9M#13(spindle rotation and feed setting)
N40 G0X[#24+2]Z-[#26+#11](rapid positioning to cutting start point)
N50 G1X-1
(workpiece parting)
N60 G28U0
(return to reference point in X)
N70 G0Z100
(100 mm backward in Z - indicative value)
* N80 M99P40
(return to block N40 in the main program)
D
ADVANCED
PROGRAMMING
- 114 -
- T140-00129-IM01 -
12. AUTOMATIC TAILSTOCK WITH B AXIS
Tailstock with B axis is used to support the workpiece after the center spot has been drilled
or to drill simultaneously with external turning.
Code
Function
M7
High pressure coolant B axis - ON
To have high pressure on B axis it is necessary to modify KEEPRL K4/7=1,
so that the two pumps M8 and M7 can run simultaneously; through manual
valve divert high pressure coolant flow to the tailstock
M42
M43
M44
M45
Call B axis program recorded from G101 to G100; for two-axis lathes
Call B axis program recorded from G102 to G100; for two-axis lathes
Call B axis program recorded from G103 to G100; for two-axis lathes
End of B axis program, for two-axis lathes
M55
M56
Call B axis program recorded from G101 to G100; for four-axis lathes
End of B axis program, for four-axis lathes
M78
M79
Enables control of B axis load
Disables control of B axis load
M115
Limiting thrust on B axis (see #1133)
G80
G83
Disables cycle G83
Deep drilling cycle with decreasing swarf discharge
G101
G102
G103
G100
Recording 1st program B axis
Recording 2nd program B axis
Recording 3rd program B axis
End of B axis program recording G101-G102-G103
G131
G183
Call cycle for workpiece support with tailstock (B-axis)
Call deep drilling cycle with decreasing swarf discharge (B-axis)
#1133=...
Recording in
channel No. 1
Variable where the value of B-axis is written; it can vary between 0÷250.
This value defines the motor torque limit and must be assigned before calling
M78 and M115 (it is recommended not to exceed 150)
(set this value only from channel No.1)
- 115 -
ADVANCED
PROGRAMMING
D
- T140-00129-IM01 -
12.1 Workpiece support with rotating tailstock and B axis
FUNCTION
"G131 B.... D.... J.... F...."
When the length of the piece to be machined is three times the diameter, a centering bore has to
be drilled to avoid vibrations, and a tailstock should be used.
To avoid possible interference between piece and tailstock it is useful to use automatic B axis type.
This function allows to set B axis thrust and check its position before and during work cycle and it
stops machining in case of:
ˆ Short piece
ˆ Long piece (e.g. short or absent centering bore / blocked tailstock)
ˆ Piece shift during machining
This function allows also a stiffer process as the tailstock quill does not come out.
It can also be applied to lathes with counter-spindle using an ejector instead of a tailstock, or to
machines equipped with a flange for drill or rotating tailstock mounting.
P1 B-90
P3
P2 B-106
B-100
P4 B-110
D-1
P1 = Starting point cycle G131 (10÷15 mm before the piece)
P2 = Contact point of the tailstock with the piece (see #530)
P3 = (P2+D) Max. point of the tailstock on the piece. If this point is exceeded the alarm AXIS MIS
POSITIONING is signalled (see on the next pages)
P4 = Final point of B axis in piece absence to be set in G131.
This value (P4+D) defines B axis max. position and in piece absence it signals alarm
○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○
AXIS B MIS POSITIONING.
D
Block format
B.... : B axis distance point P4.
D.... : Max. piece shift during machining (from -0,001 to -2 mm).
J.... : Thrust limitation for B axis tailstock to support the piece (see table on the next page).
F.... : B axis feed in cycle G131 expressed in mm/min.
ADVANCED
PROGRAMMING
- 116 -
- T140-00129-IM01 -
Table of J indicative values as a function of the motor and the screw pitch of B-axis
○○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○
(values to optimise in cycle "G131").
Value of
6 Nm Motor Screw pitch 6 mm 12 Nm Motor Screw pitch 12 mm
J
Power
KgF
Power
KgF
J=20
30%
60
30%
135
J=40
60%
125
60%
310
J=60
100%
220
80%
420
J=80
135%
280
100%
570
J=100
180%
370
135%
750
○ ○ ○ ○ ○ ○ ○ ○ ○
NOTE
a. Do not modify nor use these variables inside part program:
#148 Reserved.
#530 Tailstock contact position as noted in self-learning.
#531 Max permitted position (it is equal to #530 value + the value sent with “D”).
b. Before using G131 check the following parameter: 1826/B=2000.
c. P1 must always be at least 10 ÷ 15 mm less than P2
(e.g. P1=-90 P2=-106 difference 16 mm) , in order to have an exact and repetitive
contact point of the tailstock relative to the piece.
d. Always program B-axis with absolute values relative to machine offset.
e. G131 cycle is disabled through function "M79" or from reset.
f. In case the tailstock does not reach the piece, B axis stops in alarm at B + D distance.
Warning
a. Cycle G131 must be enabled following the procedure described at paragraph
12.2 section "D" (see page 130).
b. If it is not enabled, no check on tailstock position is performed, B axis does not
remain under thrust and alarms are not generated.
- 117 -
ADVANCED
PROGRAMMING
D
- T140-00129-IM01 -
12.1.1Using tailstock to workpiece support
Machine zero
point B-axis
EXAMPLE
# 500 (E.g. B-195) Max. dimension
# 502 (E.g. B-200) Sample dimension
# 501 (E.g. B-205) Min. dimension
O100 (with system to
* N10 #500=-195
* N20 #501=-205
* N30 #502=-200
N40 G0Y0
N50 G53X-20
N60 G0B-185G94
*
*
*
*
*
*
check piece length)
(max. dimension)
(min. dimension)
(sample dimension)
(for Y axis machines only)
(rapid positioning at 20 mm from X override)
(rapid positioning outside the piece, in any case at not
less than 10 mm from sample position)
N70 G131B-#501D-1J50F400
(calling the piece support cycle)
N80 IF[#530GE#500]THEN#3000=1 (LONG PIECE OR B AXIS BLOCKED)
N90 IF[#530GE#501]THEN#3000=2 (SHORT PIECE)
...........................
........................... (part program)
...........................
N300 G94
(mm/min feed)
N310 G1B#530F300 (return to initial contact point of tailstock compulsory
block to be written before M79 and G28B0)
N320 M79
(disable torque limit)
N330 G28B0
(tailstock positioning at B0)
Warning
a. Blocks marked by * are compulsory for a correct working of cycle "G131".
b. Enable "G131" by the procedure described at paragraph 12.2 section D.
D
ADVANCED
PROGRAMMING
- 118 -
- T140-00129-IM01 -
12.2 Cycle G131 enabling
PROCEDURE
1.
Press key
"MDI".
2.
Press key
3.
Optional screen page "BIGLIA" appears, press soft key
4.
A new screen page appears "B-AXIS CHECK" showing a spindle and a sub-spindle and, at
MDI
CUSTOM
"CUSTOM".
AXIS B .
the bottom of the page, a number of soft keys.
POS. C
Press soft key
POS. C
B. OFF
EXIT
LIM. C
A. SET
to enable position check during workpiece support; the following
message comes on display, in red: POSITION CHECK, and a sketch of the tailstock appears
on the drawing.
P.N.: The effective power absorption of B axis motor can be displayed, while working, under:
"AXIS CURRENT ABSORPTION".
The value appears in three colours:
GREEN
:
ideal working conditions
YELLOW
:
100% motor absorption
RED
:
130% motor absorption B-axis
(P.N.: this condition can be maintained only for short periods).
NOTE
a. The use of the motor in the red area for too long causes a system alarm.
If the key
RESET
"RESET" is pressed when tailstock is supporting the workpiece, B-axis
returns to maximum thrust (nominal torque) in an attempt to go back to maximum
admitted position (#531).
This could cause inconveniences (workpiece movement, system alarms) to avoid
which just manually move tailstock away from workpiece by 2 ÷ 3 mm before pressing
key
RESET
"RESET".
- 119 -
ADVANCED
PROGRAMMING
D
- T140-00129-IM01 -
12.2.1 Cycle G131 disabling
PROCEDURE
1.
Repeat points - 1. - 2. - 3. of the previous paragraph.
2.
Press soft key
B. OFF to disable position control during workpiece support, B-axis.
The word "OFF" appears on display in red and the red-coloured tailstock disappears from the
tailstock sketch.
4.
D
Press soft key
EXIT to return to the initial page "BIGLIA".
ADVANCED
PROGRAMMING
- 120 -
- T140-00129-IM01 -
12.3 Piece support with turning tailstock without quill and B axis
NOTE
P1
B-90
P5 B-104
P2 B-106
"G31 P98"
P4 B-110
FUNCTION
a. B axis position is automatically digited in #5065 when the tailstock reaches the piece.
b. Check B axis absorption in the operator panel in "MONI" position.
c. Check table on page 117 and notes on page 118 for the value to set on #1133 as a
function of the motor and of the screw of B axis.
d. P1 and P2 positions: see the description of cycle G131.
e. P2 position: theoretical point of tailstock with complying centering bore.
f. P4 position: final B axis point in piece absence (value digited within G131).
g. P5 position: point used to check centering bore compliance and B axis tolerance
position.
EXAMPLE
N10
N20
N30
N40
N50
N60
N70
N80
N90
N95
N100
N110
N120
N130
N140
N150
N160
N170
N180
N190
G0X150Z2
(rapid positioning B axis)
B-90G94
#1133=50
(thrust limit B axis)
M115
(it defines torque limit on B axis)
M72
(torque limit B axis ON)
G1G31P98B-110F300 (call piece support cycle)
G1B[#5065-2]
G4U0.5
M29
IF[#5065GE-104]THEN#3000=1 (LONG PIECE OR B AXIS BLOCKED)
IF[#5065LE-110]THEN#3000=2 (SHORT PIECE)
G97S500M4
(piece process blocks)
(end of process)
G0X150
M5
G1G94F500B[#5065+1] (1 mm backward tailstock )
M79
(torque limit B-axis OFF)
G28B0
(sub-spindle return to 0 position)
- 121 -
ADVANCED
PROGRAMMING
D
- T140-00129-IM01 -
12.4 Piece support with B axis, turning tailstock and quill
NOTE
P1 B-200
P2 B-250
P5 B-245
"G31 P98"
P4 B-255
FUNCTION
a. B axis position is automatically digited in #5064 and #5065 when the tailstock
reaches the piece during cycle G31.
b. Check B axis absorption in the operator panel in "MONI" position.
c. Check table on page 117 and notes on page 118 for the value to set on #1133 as a
function of the motor and of the screw of B axis.
d. Position P1 defined with the quill withdrawn must allow the piece support by the tailstock
quill traverse during the part loading phase (see block N30).
e. Position P2: theoretical point of tailstock with complying centering bore.
f. Position P4: final B axis point without piece (the greater value of P2 must be written in
cycle G31).
g. Position P5: the point used to check the centre conformity prevents from processing
with small centering bore, moreover it intervenes when the tailstock is blocked since
the #1133 value is too low (see block N110).
EXAMPLE
N10
N20
N30
N40
N50
N60
N70
N80
N90
D
(tailstock quill withdrawal with end-of-stroke check)
(rapid positioning B axis with withdrawn quill)
(piece loading)
- P.N.: B-200 position must allow the piece support
by the tailstock quill intervention #1133=50
(thrust limit B axis - indicative value)
M115
(it defines torque limit on B axis)
M72
(torque limit B axis ON)
G1G31P98B-255F400 (calling the piece support cycle, in this phase the
tailstock quill must return, therefore the thrust pressure must be adjusted at 5 bar)
- P.N.: excessive pressures may create operation
problems G1B[#5065-1]
G4U0.5
M27
G0G94B-200
M0
ADVANCED
PROGRAMMING
- 122 -
- T140-00129-IM01 -
N100
N110
N120
N130
N......
N......
N......
N250
N260
N270
N280
N290
M29
IF[#5065GE-245]THEN#3000=1 (LONG PIECE OR B AXIS BLOCKED)
IF[#5065LE-255]THEN#3000=2 (SHORT PIECE)
G97S500M4/M3
(piece process blocks)
(end of process)
G0X150
M5
G4U1
(torque limit B-axis OFF)
M79
M36G1G94F600B-200 (tailstock withdrawn, see block N20, in this phase
the tailstock quill intervenes to support the piece)
N300 M1
N310 M30
- 123 -
ADVANCED
PROGRAMMING
D
- T140-00129-IM01 -
12.5 Peck drilling cycle with swarf conveying (Optional)
FUNCTION
"G183 B.... C.... D.... I.... K.... A.... F...."
This function generates, through the use of the variables from #100 to #147, a deep peck drilling
parametric with swarf conveying, (18 ejections max.), which can be carried out at the same time as
the external machining.
It is also possible to link, for B axis, the axis load control using the two threshold:
tool wear threshold
2nd
tool breakage threshold
○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○
1st
Blocks format
B.... : B-axis value ejection point (absolute values referred to axis zero point).
C.... : B-axis value drilling start point (absolute values referred to axis zero point).
D.... : depth of first drilling length (incremental value).
I.... : B-axis value drilling end point (absolute values referred to axis zero point).
K.... : coefficient of reduction of "D" value (lower value at 1).
A.... : value of minimum cut depth.
F.... : Feed rate as a function of "G94" F mm/min or "G95" F mm/rev.
In the next block G183 must be selected and one of the two sub-programs defining the type of
feed rate in drilling.
M98P8094 (selects drilling sub-program "G101" with feed rate in "G94" F mm/min.).
M98P8095 (selects drilling sub-program "G101" with feed rate in "G95" F mm/rev.).
○ ○ ○ ○ ○ ○ ○ ○ ○ ○
3rd cut
2nd cut
1st cut
4th cut
Minimum
value
A10
D 20
EXAMPLE
Zero
workpiece
Calculation of the cutting depth
reduction with reduction cutting
coefficient = 0.8(K)
1st cut = 20
2nd cut = 20 x 0.8 = 16
3rd cut = 16 x 0.8 = 12.8
4th cut = 12.8 x 0.8 = 10.24
D
ADVANCED
PROGRAMMING
B-100
(B) B-90
(C) B-148
(I)
B-250
5th cut = 10 Minimum value
Last section
(random length)
- 124 -
the next passes will be 10mm
depth, except the last pass.
- T140-00129-IM01 -
ESEMPIO
O110
N10
N20
N30
(drilling simultaneous with B-axis turning)
G28B0
(B-axis positioning on machine offset)
G0Y0
(for Y-axis machines only)
G53X-20
(rapid positioning at 20 mm from X limit switch)
F0.1 (linked to P8095 of block N50)
N40 G183B-90C-148I-250D20K0.8A10
F300 (linked to P8094 of block N50)
P8095
(selects drilling program with mm/rev. feed rate)
N50 M98
P8094
(selects drilling program with mm/min. feed rate)
N60 G10L2P1Z...
(piece origin)
N70 T1M8G40 (external roughing simultaneous with drilling)
N80 G92S2000
(spindle revs limitation)
N90 G0G97S1000G95F0.3M4 (technological block fixed revs machining)
- P.N.: using M4 the tip must be left-handed N100 M7
(pressure pump on B-axis tip)
N110 M42
(selects B-axis drilling program)
- P.N.: for multiple-axis models with 2 turrets, write M55 N120 ...........
....................... (external machining program simultaneous with B-axis drilling)
N250 ...........
N260 M45
(B-axis end of program check)
- P.N.: for multiple-axis models with 2 turrets, write M56 N270 M9
(stops pumps M8 and M7)
- P.N.: this block is compulsory if a B-axis shift has to
be programmed immediately after M45 (B-axis
end of program) N280 M8
(confirm M8 for coolant on turret)
N290 G28B0
(B-axis positioning on machine offset)
- P.N.: after a M45 command programming of a B-axis
movement is not allowed unless other operations
have been made, and namely:
X and Z axes movements or "M" functionsN300 G0X72Z0.2
(piece facing after drilling)
N310 G1X18
N320 G0X200Z100
N330 T3M8G40 (internal roughing)
N...
................
N...
................
N1800 /M30
N1810 M90
N1820 M99P60
(jumps to block N60 and G183 drilling program needs no
longer being worked out anew.
This cycle will have to be worked out anew only if values
inside cycle G183 are changed)
NOTE
a. The use of variables #100 and #147 in the same program is possible only after the block
containing selection of sub-programs P8094 or P8095, i.e. after block 60, has been
read.
b. In the case of a M99P... or of a G0T0... blocks G183B... and M98P... will have to be
both read or boht skippeds.
- 125 -
ADVANCED
PROGRAMMING
D
- T140-00129-IM01 -
12.6 Tool load monitoring (B axis) in cycle G183
PROCEDURE
1.
Program the cycle according to the requested machining and execute it at first with reduced
speed without workpiece.
Adjust possible program errors and then try to process the workpiece with reduced speed.
2.
Perform workpiece machining at 100% capacity both in terms of revs and feed If everything is
correct, go on with point - 3., otherwise perform the necessary modifications.
3.
Press key
"MDI".
4.
Press key
5.
Optional screen "BIGLIA" appears, press soft key
6.
A new screen page appears "B-AXIS CHECK" showing a spindle and a sub-spindle and, at the
MDI
CUSTOM
"CUSTOM".
AXIS B .
bottom of the page, a number of soft-keys.
POS. C
B. OFF
EXIT
LIM. C
A. SET
Press soft key A. SET (AUTO SET) to define in self-learning the work load during drilling
B axis.
P.N.: A red drill appears on the sub-spindle.
7.
Select "AUTO" by pressing
8.
Perform the workpiece machining at 100% for all the axis, in this way two work load limits will
AUTO
.
be created automatically by C.N. as a function of the performed machining.
9.
Repeat points - 3. - 4. - 5. - 6. . Again and press key
10. Press soft key
11. Press
AUTO
MDI
"MDI".
LIM. C (POWER CONTROL) to enable B axis load check.
"AUTO" again to perform the machining with automatic cycle with B axis load
check.
NOTE
D
If point - 10. is skipped, the machining takes place without B axis load control.
ADVANCED
PROGRAMMING
- 126 -
- T140-00129-IM01 -
12.6.1 Considerations on cycle G183
1.
Cycle G183 generates 2 sub-programs O8094 and O8095, as a function of feed rate "G94"
and "G95".
2.
Inside the sub-programs O8094 and O8095 there is a code "G101" (start of recording of B-axis
program).
Inside the a.m. sub-programs there are all the codes required to monitor B-axis load.
3.
Monitoring of B-axis load has two thresholds, which stop the machine.
Example:
1st threshold with worn tool:
In this case the tool stops at the end of the cycle in the presence of M90 or M30.
2nd threshold with broken tool:
In this case the cycle stops immediately.
These two limits are automatically calculated by the N.C.; using the self-learning cycle (A. SET)
the values can be optimised based on experience.
12.6.2 Cycle G183 disabling
PROCEDURE
1.
Repeat points - 3. - 4. - 5. - 6. above.
2.
Press soft key
B. OFF
to disable load check on B-axis.
The word "OFF" appears on display in red and the red-coloured drilling tip disappears from the
sub-spindle sketch.
3.
Press soft key
EXIT to return to the initial page “BIGLIA”.
- 127 -
ADVANCED
PROGRAMMING
D
- T140-00129-IM01 -
12.6.3 Modifying the parameters taken in slef-learning
PROCEDURE
1.
Repeat points - 3. - 4. - 5. - 6. above.
2.
Use cursor arrows
, to move to the desired limits "LIMIT 1" and "LIMIT2" or
"TIMER 1 - 2".
P.N.: Timer determines the frequency of C.N.C. checks of the two limits and can range between
200÷600. It is normally set between 300÷400.
3.
Press key
NOTE
AUTO
"AUTO" and try again.
A way to know the effective absorption value of B axis motor is to read it during machining
on the page "B-AXIS CHECK" described above, repeating points - 3. - 4. - 5. - 6. under
"AXIS CURRENT ABSORPTION".
In case of alarm on the same page, under "EXCEEDED LIMIT", the maximum absorption
value can be read and used to modify pre-set values.
D
ADVANCED
PROGRAMMING
- 128 -
- T140-00129-IM01 -
12.7 Drilling with B axis simultaneously with external turning without thrust
check B axis using the cycle G83
R3
Sm 3 x 45°
ø70
ø60
ø50
ø40
ø30
ø20
Sm 2 x 45°
B-210
NOTE
0
15
35
55
80
110
100
130
0
2
B-98
a. Turning must be performed in G97 (constant spindle speed) as it is simultaneous with
drilling with B axis.
The example uses a fixed cycle G83 with swarf discharge every 10 mm of drilling.
The cycle so defined only applies to the B axis written between G101-G100, which
means that if said cycle is defined outside G101-G100 workpiece and tool could collide.
b. The cycle only works if parameter 8022 "X axis" has a value of 6000.
c. Dimensions of B axis must be defined in the absolute mode relative to the MACHINE
ZERO POINT.
Warning
Do not write G28B0 in G101 and G100
EXAMPLE
O100
N10 G101
N20 G0B-98G95F0.15
N30
G83B-210R-98Q10
(enable storing in memory of program B axis)
(rapid positioning to start point and feed setting
mm/rev di 0,15)
Where : G83
= drilling cycle with swarf discharge
B-210
R-98
=
=
Q10
=
bore depth absolute dimension
swarf ejection position in B-98 absolute
dimensions and mahcining start
value in mm, it defines the length at each
ejection (incremental value in mm)
(G80 cancels fixed cycle and positions on machine
zero point B axis)
N50 G100
(end of storing of program B axis)
N60 G28B0
(rapid positioning on machine zero point B axis)
N70 T1M8G40 (external roughing with simultaneous drilling)
N80 G92S1200
N90 G0G97S1200G95F0.35M3 (canned cycles machining - verification of the helical tip)
N100 M42
(M55)
(calls program B axis from G101 to G100, write
M55 for four-axis machines)
N110 G0X72Z6M7
(high pressure B axis)
N120 G71U3R1
N40
G0G80B0
- 129 -
ADVANCED
PROGRAMMING
D
- T140-00129-IM01 -
N130
* N140
N150
N160
N170
N180
N190
N200
N210
N220
N230
* N240
N250
N260
N270
N280
N290
N300
N310
N320
N330
N340
N350
N360
N370
N380
N390
NOTE
G71P140Q240U1W0.1
G0X26
G1Z0
X30Z-2
Z-15
X40Z-35
Z-55
X50,C3
Z-80
X60R3
Z-100
X70Z-110
G0X33Z0.1
(start facing position)
M45 (M56) (check end of program B axis from G101 to G100,
processing continues with the following block in M45
only if said program has been completed,
write M56 for four-axis machines).
G1X17F0.2
(workpiece facing)
G0X200Z100M9
(stop high pressure B axis and stop normal pump
on turret)
T2M8G40 (finishing)
G0G96S200G95F0.2M3
X33Z0
G1X17
G0Z3
G42X72Z2
G70P140Q240
G0G40X200Z100M9
M90
(increment piece counter)
M1
M99P60
a. For machines with four axis and two turrets, M42 and M45 must be replaced respectively by M55 and M56.
D
ADVANCED
PROGRAMMING
- 130 -