Programacion en English
Programacion en English
COM5A2227 (en)
MAKINO GmbH
Wiesendamm 30, 22305 Hamburg
Telefon ++49 / 40 / 29 80 90
Fax ++49 / 40 / 29 80 94 00
Imprint I
Imprint
Editor: MAKINO GmbH
Wiesendamm 30
D-22305 Hamburg
Editorial subdivision:
Layout:
Master version: 28.05.2001
Graphic drawing:
Translation:
Revisions
Date Chapter/Page Modification
Revisions
Date Chapter/Page Modification
Table of contents
In order to finish a workpiece on a machining centre it is not sufficient to have an NC program. Further fac-
tors are also of importance.
These are shown in “Fig. 1-1: ”, the present Programming Instructions being limited to the complex repre-
sented by the programming of parts.
Drawing of workpiece
Tool sheet
Building the work holder
Writing the NC program
Presetting
the tools
Machining centre
Machining
Fig. 1-1:
2.1 Program
A program represents a sequence of machining steps and is broken down into blocks which are then bro-
ken down into words. These words can be path conditions, path information or help functions.
Each block represents a self-contained machine operation.
2.2 Block
A block consists of address letters and sequences of numbers and is completed by an end-of-block char-
acter (EOB or LF).
No fixed sequence is required for the blocks, unless a logical sequence results.
2.3 Word
The controls interprete characters in round brackets as a comment which is displayed on the screen, but
is not executed. It should be ensured that the comment is not written within time-critical axis movements
as this can lead to delays.
Furthermore there may be no ( ; short form of EOB) in the brackets.
3 Addresses
Table 3-2: (1 / 2)
Table 3-2: (2 / 2)
The controls process a program number of up to 4 digits. A program name of up to 16 characters is dis-
played in the program overview if the name is in round brackets and directly behind the number of the pro-
gram.
The display of the program name can be extended to 48 characters by means of an option.
100 programs can be addressed in the standard version. This applies to the main programs, including the
sub-programs.
The number of programs can be increased to 200, 400 or 1000 by means of options.
The program numbers usually available are those from O1–O9999.
The range of numbers is limited to O1–O7999 through lockable memory areas.
For further information see Chapter “4 Program memory data”.
N1001 (Tool 1)
(machining with tool 1)
N 1002 (Tool 2)
(machining with tool 2)
N 1003 (Tool 3)
(machining with tool 3)
Format
Example:
G90
G54.1
G120 (example of macro call)
Group allocation
The G functions are divided up into groups. Only one command from each group can be effective. If there
are two commands of the same group in one block, it is the latter command that is effective. Several G
functions of different groups can be written in one block.
Example:
Group 3 (G90 / G91) is an exception. It is possible to program incremental and absolute axis commands
in one block.
Only one function is effective from each G group after the system has been switched on or after RESET.
In “Table 3-3: List of G functions” these are indicated in the column entitled “ON status”.
Example:
G1 X100.
Y100.
X100.
G0 Z150.
The G functions that are effective by block must be called again in the next block, if required.
Note G functions from group 1 cancel fixed work cycles!! (same function as G80)
Note Macro calls can be started with G functions, i.e. the G function is stored in a cer-
tain NC parameter (6050–6059).
Program numbers of 9000 are connected with the NC parameters.
Further information can be found in the instructions for macro programming.
3.2.4 M functions
The M commands control facilities specific to the machine such as spindle, coolant and special functions.
There are three different types. See “Table 3-5: ”.
The command has a maximum of three characters. Leading zeros do not need to be programmed.
With the following systems, 0M, 6M, 11M and 15M, there must only be one M command in a block.
3 M functions are permissible for the16M system and higher systems.
The following M commands, M3 / M4 / and M8, and also M11, M10 and M12, M13 can be written in one
block although they have the same status (during).
Example:
The following functions may not be used together with another M code:
M0, M1, M2, M30, M98, M99, M198, M319 and naturally M codes that start a macro call.
It is possible that further special M codes with 3 characters have to stand alone. This depends on the spe-
cial functions of the machine (specific to the customer).
Note Macro calls can be started with M functions, i.e. the M function is stored in a cer-
tain NC parameter (6071–6091).
Program numbers of 9000 are connected with the NC parameters.
Further information can be found in the instructions on macro programming.
Setting up M codes:
Up to 999 M codes can be set. This is determined by the manufacturer.
In general the codes that are set are always M0–M99. M codes from M100 are optional.
The three different types of M functions are described in greater detail in the tables below.
In the controls of the A series there is a key marked “HILFE” (HELP) in the MPC-5 area. Press the key and
“M-Funktionen” will appear at the bottom left of the soft key keyboard. Here approx. 90% of the M func-
tions are briefly explained.
Table 3-5: (1 / 2)
Table 3-5: (2 / 2)
Table 3-6: (1 / 2)
Table 3-6: (2 / 2)
3.2.5 S function
The S function indicates the speed of the main spindle in 1/min. It has a maximum of five characters.
The S value must be entered without a decimal point.
Only one S function may be written per block.
When the spindle is in action, the speed and the direction of rotation can be altered at will.
Data for the range of revolutions can be found in the part of the operating instructions specific to the ma-
chine.
3.2.6 T function
The T function from the NC program corresponds to the tool number (PTN = pot tool number).
This number is user-definable, but it can only be selected once.
In the standard version it has four characters, with eight characters as a option.
The T value is entered without a decimal point.
Only one T call is permitted per block.
T commands should be called from the program as soon as possible (transport seconds).
The positions of the tools in the tool magazine are user-definable.
Note Watch for collision areas. Please refer to the part of the operating instructions
specific to the machine.
T4711
……
……
T4711 P9140 M98
……
Only if the same T number that has already been searched
for is addressed again for safety's sake.
The programming instructions apply to the horizontal and vertical machining centres as the direction of
the movement is seen from the tool when it comes to programming. The main spindle forms the Z axis.
In the standard version the linear axes, Y and Z, can only be moved in a negative direction.
At the customer's request it is also possible to place the zero point of the machine at the centre and on the
surface of the pallet (not an option).
The range of movement of the X axis extends from the centre in positive and negative directions.
The round axis, B, can be rotated in two directions.
Legend
[1] Viewing direction
Fig. 3-1:
All horizontal machining centres of the A series have an NC turntable as a standard specification.
As the B axis is a proper NC axis, it is treated as such.
The smallest increment is equal to 1/1000 degrees.
Example 1
G0 G90 M11 B180. M10 (Table turns in a positive direction to 180 degrees in Rapid Mode)
G1 G90 M11 B180. F200 M10 (Table turns in a positive direction to 180 degrees in Feed Mode)
G1 G90 M11 B.001 F200 M10 (Table turns in a positive direction to .001 degrees in Feed Mode)
G0 G90 M11 B-59. M10 (Table turns in a negative direction to -59 degrees in Rapid Mode)
G1 G90 M11 B-59. F200 M10 (Table turns in a negative direction to -59 degrees in Feed Mode)
Example 2
Fig. 3-2:
Every position on the radial of the rotation axis can be reached. The direction of rotation depends on the
present position and the movement command. The axes can be rotated infinitely, in every direction.
After this has been done, it is sufficient to travel to the reference point on the B axis in order to reach the
zero position as quickly as possible.
The feed rate must be converted to deg/min and depends on the diameter of the workpiece and the angle
of inclination.
Fig. 3-3:
D = 100 mm
W = 180 deg
H = 50 mm
F = 150 mm/min
U = D × π × W ÷ 360 U = 100 × π × 180 ÷ 360 = 157,08
2 2 2 2
L = U +H = 157.08 + 50 = 164.846 mm
Selecting the direction of rotation by program command. In the negative M15 is also programmed
(standard).
NC parameter 5500 bits 0 (DDP) = 1, bit 1 (REL) = 1, bit 2 (ABS) = 1, bit 3 (INC) = 0, bit 4 (G90) = 0
5511 = 15
5512 = 1000
Example:
Example:
The linear axes, X, Y and Z, can only be moved in a negative direction from the zero point of the machine.
Legend
[1] X loader [5] MAX
[2] Zero point of the machine [6] MIN
for the X, Y and Z axes
[3] Y loader [7] Shortest distance between the spin-
dle nose and the surface of the table
[4] Z loader [8] Shortest distance between the spin-
dle nose and the surface of the table
Fig. 3-4:
With the exception of the FANUC 6M controls, it is possible to obviate the need to enter the decimal point
by means of NC parameters.
3.2.8 F functions
The F function indicates the feed rate of the linear axes in mm/min.
In the case of round axes the rate changes to degrees/min.
The maximum feed rate can be found in Chapter “3.2 Addresses and their programmable area”.
The F value can be programmed with a decimal point and a maximum of three places after the decimal
point.
Important on converting from inches to metric (tapping).
Example:
In the standard situation the tool manufacturer will indicate the feed rate per gear tooth. However the ma-
chines need mm/min, so the F value first needs to be calculated. The table below is intended to provide a
little assistance.
Table 3-7:
The value in an offset memory is set off by selecting address H as the length offset with D as a radius off-
set.
In the standard version each tool has only a length and a radius offset.
As an option, 5 additional length offsets and 5 additional radius offsets are offered for 17 tools. The func-
tional description can be found in the Appendix.
Both offsets for the tools (length and radius) are stored as a default setting in the MPC-5 area “tool file”.
(They must be there if they are to be processed as described below.)
After a new tool has been clamped into the spindle they are transferred into the H1 and D2 memories of
the NC by calling the M56 function.
Of course you can only work with the offset data of the NC, without H1 D2 M56.
Example:
O4711 (TEST)
……………… T5678
………………
………………
P9140 M98
H1D2
M56
M0
……………… T1234
P9140 M98
H1D2
M56
In the tool file of the MPC-5 there is a length value of 130.222 and a radius value of 3.778 under PTN
number 5678. Under PTN number 1234 there is a length value of 231.246 and a radius value of 4.975.
After the example above has been started, the following data are in the tool memory of the NC (TOOL
OFFSET).
No. DATA
0001 130.222
0002 003.778
0003 000.000
0004 000.000
…… ……
…… ……
No. DATA
0001 231.246
0002 004.975
0003 000.000
0004 000.000
…… ……
…… ……
Example:
Note If only the cutting radius is to be set, the first S value must be zero.
No other addresses may be added.
The value stored in the correction memory is assigned to either length or radius correction when selecting
the addresses H and D respectively.
In the standard version each tool has up to 6 correction values (6x length and 6x radius).
Both tool correction values (length and radius) are stored in the Pro 5 tool file. They are transferred to the
H1 and D2 memory in the NC after inserting the tool in the spindle and calling up the M56 function if H1
and D2 have been selected.
The M56 can be omitted on request by the customer; however this means that Makino has to im-
plement certain modifications (parameters).
O4711 (TEST)
……………… T5678
………………
………………
P9140 M98
H1D2
M56
M0
……………… T1234
P9140 M98
H1D2
M56
O4711 (TEST)
……………… T5678
………………
………………
H1D2
M6 (calls up a macro)
……………… T1234
………………
H1D2
M6
………………
In the Pro 5 tool file, length and radius values of 130.222 and 3.778 respectively are given for PTN
number 5678; for PTN number 1234 the length value is 231.246 and the radius value is 4.975.
When starting with the above example, the following data is stored in the NC tool memory (TOOL OFF-
SET).
No. DATA
0001 130.222
0002 003.778
0003 000.000
0004 000.000
…… ……
…… ……
No. DATA
0001 231.246
0002 004.975
0003 000.000
0004 000.000
…… ……
…… ……
Example:
Ensure that the following conditions are fulfilled when using multiple corrections on the same tool.
1. Select parameter 12024 (Composite – tool available) in the “System” menu. This must be set to 1.
2. The following areas of the PRO5 tool file must be opened:
Fig. 3-5:
The procedure for setting additional correction values using the NC-program, as well as their handling in
the NC-program is described below.
Setting data
O0004 ( TEST )
M448 S15 ( M448 = Tool data register mode 1 on. S15 = Cutter setting mode)
S2 T3 ( S2 = Pot 2 T3 = 3 Cutters )
M37 ( Set mode off )
M448 S103 T1 ( M448 = Tool data register mode 1 on. S103 = Tool length mode
T1 = Cutter 1 )
S2 T2561234 ( S2 = Pot 2 T = Tool length = 256.1234 mm )
M37 ( Set mode off )
M448 S105 T1 ( M448 = Tool data register mode 1 on. S105 = Tool radius mode
T1 = Cutter 1 )
S2 T98789 ( S2 = Pot 2 T = Tool radius = 9.8789 mm )
M37 ( Set mode off )
M448 S103 T2 ( M448 = Tool data register mode 1 on. S103 = Tool length mode
T2 = Cutter 2 )
S2 T1879687 ( S2 = Pot 2 T = Tool length = 187.9687 mm )
M37 ( Set mode off )
M448 S105 T2 ( M448 = Tool data register mode 1 on. S105 = Tool radius mode
T2 = Cutter 2 )
S2 T45897 ( S2 = Pot 2 T = Tool radius = 4.5897 mm )
M37 ( Set mode off )
M448 S103 T3 ( M448 = Tool data register mode 1 on. S103 = Tool length mode
T3 = Cutter 3 )
S2 T1513698 ( S2 = Pot 2 T = Tool length = 151.3698 mm )
M37 ( Set mode off )
M448 S105 T3 ( M448 = Tool data register mode 1 on. S105 = Tool radius mode
T3 = Cutter 3 )
S2 T123589 ( S2 = Pot 2 T = Tool radius = 12.3589 mm )
M37 ( Set mode off )
Machining
M30
After starting the program, the PRO5 tool file should look as follows:
Fig. 3-6:
NC-program
O0006 ( TEST)
G10 G90 L2 P1 X0 Y-100 .Z-200.
T1999
M98 P9140
M451 S1 ( Select correction data for first cutter )
H1D2 ( Correction numbers of tool file on NC-page )
M56 ( M-function for data transmission )
G0 G90 X0
G1 G43 H1 Z0 F200 M3 S120 T0
G0 Z100.
M451 S2 ( Select correction data for second cutter )
H3D4 ( Correction numbers of tool file on NC-page )
M56 ( M-function for data transmission )
G90 G1 Z0 F200 M3 S200 ( G43 is retained if no RESET is issued. )
G0 Z80.
M451 S3 ( Select correction data for third cutter )
H5D6 ( Correction numbers of tool file on NC-page )
M56 ( M-function for data transmission )
G90 G1 Z0 F200 M3 S200 ( G43 is retained if no RESET is issued. )
M98 P9140
T0
M30
H1, D2 are the offset data of the NC that are normally used. Of course every other position can be ad-
dressed, e.g. H10 D30 etc. In this case the corresponding length enters the offset memory of the NC, at
no. 10 and the radius at no. 30.
Attention! There must be values in the tool file (MPC-5), as otherwise there is a danger of
collision!!
On customer request the tool change with correction transfer can also be set up as described below.
OXXXXX
……
T3505
H1D2 (CORRECTIONS CUTTER 1)
M6 (CALL UP MACRO O9001)
……
Program
……
……
M30
M6 calls up macro program O9001 which contains the complete tool change.
The H and D number must precede the M6.
If a tool is in the spindle and the correction value in the Pro 5 tool file is changed, it is necessary to run
through the M6.
Older programming versions are naturally also supported.
Our service staff will set up your parameters.
1 KB = 1024 characters
Legend
[1] VERW.: = prog. no. taken
FREI: = free programs
Fig. 4-1:
All programs in the program memory are of equal value. In the organisation of the memory no distinction
is made between main programs and sub-programs.
The sub-programs supplied with the machine are in accordance with the machine specifications.
For this reason it is not permitted to interfere with these programs, without first consulting Makino GmbH.
Any failure to observe this prohibition may cause the destruction of the machine. The diskette with the
sub-programs is supplied with the machine. The number of sub-programs depends on the specifications
for the machine.
O9819 ...................Search for and clamp dummy tool ( replacement tool strategy)
Note The sub-programs listed above and all other sub-programs, with the exception of
O9100, end with M99, i. e. they may not be started on the same level.
They are generally called from the main program or from MDI Mode.
M99 would keep starting the program all over again.
The sub-programs supplied with the machine are designed to match the machine specification.
It is therefore prohibited to modify these programs without the prior consent of Makino GmbH.
The diskette containing the sub-programs belongs to the scope of supply of the machine; the number of
sub-programs is dependent on the machine specification.
5 Program format
Programs or program blocks that have been written externally must have a percentage sign (%) at the be-
ginning and at the end. There is an exception if the programs are scanned via the main computer of the
full system, “Model B2”. There the percentage sign is allocated by the system.
The percentage sign starts or stops the reading process. If programs or program blocks are written at the
machine, this sign is automatically at the beginning and at the end of the program and is also output.
Each program must be provided with a program number. Programs that are output by the controls always
have the address O before the program number.
There is an exception in this case as well: If the machine is integrated into a FASTEM-SYSTEM the “O”
must be written.
Main programs and sub-programs differ in their structure and in the way they end. Main programs end
with an M30 and sub-programs with an M99.
Individual programs:
%
: 4711 (main program)
……
……
M30
%
%
: 1000 (sub-program)
……
……
M99
%
Program block:
%
: 120 (main program)
……
……
M30
: 1050 (sub-program)
……
……
M99
: 1051 (sub-program)
……
……
M99
%
6 Program modules
a) With transfer of the tool offset data from the MPC-5 (2) or Pro 5 to the NC controls
Working with the tool data memory of the MPC-5 (2) or Pro 5
NC turntable
Note Please consult the Makino training dept. when working without M56 and with
Pro 5!
G54 G90 G0 M11 B0 M10 S1500 M3 T0 ……....… T0 = Search for dummy tool.
(The actual machining)
P9140 M98
T0 …………………………………………………….. Put last tool back into the magazine.
M30 ………………………………………………...… End of program (change of pallet in Random Mode)
% ……………………………………………………... Load END
7 Sub-program technique
The controls make it possible to work with sub-programs. This allows several sub-programs to be started
from a main program or several main programs each start a sub-program. Apart from this, a further sub-
program can be started from a sub-program, up to four levels in total. The Pro 5 supports up to 10 levels.
Starting a sub-program:
After the sub-program has been processed M99 causes the system to return to the next block of the call.
Linkage example:
A maximum of 4 (Pro3)/10 (Pro 5) levels can be selected.
Legend
[1] Main program
[2] Sub-program
Fig. 7-1:
Example:
From this example you can see that you can return to a particular block of your choice. This results in
enormous nesting possibilities which can also be designed with block skip, taking account of certain
blocks.
Fig. 7-2:
O1 ( TEST )
N1 G90 G54 G0 X0 Y0 S900 M3
/N2 G43 H1 Z100.
/N3 G76 Z-6. R2. Q0.2 F72
/N4 G91 G80 G28 Z0 (measure tap hole; if necessary offset tool)
/N5 M0
/N6 M99 P2
N7 G90 G43 H1 Z100.
N8 G76 Z-18. R2. Q0.2 F72
etc.
The macro program call differs from the normal way of starting sub-programs in that addresses with vari-
able numbers can be added to the macro program call.
The macro program call allows further fourfold nesting in the sub-programs.
These macro programs are used for pocket cutting, special drilling cycles, calculation routines, special
sub-programs etc.
G65 P____A____B____C____
Attention! The addresses allocated to the sub-program are not treated like normal NC ad-
dresses, but the variables behind them are loaded with their numerical values.
Each letter that is used as a variable, apart from program number P, is concluded
with a full stop, A67. B56. D3. ___ etc.
G66 P____A____B____C____
Example:
G66 P3777 R2. Z-56. I-50 F122. C56 macro program call
X____ Y____ positions
X____ Y____ positions
X____ Y____ positions
X____ position
G67 cancellation of macro program call
Further processing
For further information please refer to the special documents on macro programming.
- Movement interpolated
Axes X and Y move to the end positions in a straight line.
The type of movement is determined by NC parameter 1401 bit 1 and can also be altered by means of
this parameter.
1401 bit 1 = 0 not interpolated
1401 bit 1 = 1 axes are interpolated
Movement from P to P1
G0 X23. Y58.
Legend
[1] Interpolated
[2] Not interpolated
[3] Interpolation active, G0 above 25%
Movement:
Movement from P1 to P2 and P3
Legend
[1] Rapid Mode
The axes travel from P1 to P2 with a calculated feed rate F as a straight interpolation F = mm/min.
All axes can be simultaneously moved with interpolation, i.e. including the B and C axis.
The F command is modal; the programmed F value is effective until a different value is set.
Example:
To move the axes you must use the incremental or the absolute system of units. The incremental system
of units only ever relates to the position last travelled to, while the absolute system always relates to the
preselected zero point.
G90/G91 are self-arresting commands, but should be at the beginning of each tool start. It is possible to
change within a program or a block at any time.
Both in one block: See “8.3.3 Absolute and incremental programming in one block”.
Legend
[1] Start at workpiece zero point
[2] Movement in Rapid Mode
[3] Movement in Feed Mode
Fig. 8-3:
Legend
[1] Start at the workpiece zero point
[2] Movement in Rapid Mode
[3] Movement in Feed Mode
Fig. 8-4:
8.3.1 Exercise 1
Legend
[1] Start
Fig. 8-5:
Only take account of the axis movements (solution: see “12.1 Test task no. 1”).
ABS INC
8.3.2 Exercise 2
Only take account of the axis movements (solution; see “12.2 Test task no. 2”).
Start from the zero point proceeding in a clockwise direction at a feed rate of 100 mm/min.
Legend
[1] Rapid Mode
[2] Feed Mode
Fig. 8-6:
ABS INC
Example:
Legend
[1] Cutting tool
Cutting tool in an anti-clockwise direction (G3)
Fig. 8-7:
The tool is brought into position by the main program with a called tool length and cutting radius offset, in
this example 3 mm before Z0 and in Y plus (G54).
The depth of the line must be 9 mm. However as the tool is 3 mm in front of the workpiece zero point, this
amount must be taken into account, as frequently as the sub-program is used (L12) (9 mm + 3 mm = 12
mm, corresponds to L = 12 times). After you have left the sub-program, the bottom of the tap hole will still
be oblique. This is corrected in the main program with G3 J-15.
Levels G17, G18 and G19 must be preselected for circular interpolation, for cutting radius compensation,
for the rotation of the co-ordinate system and for drilling.
Legend
[1] XY level [2] ZX level [3] YZ level
Fig. 8-8:
Fig. 8-9:
The tool moves along an arc in accordance with the following instructions.
On the X/Y level (is usually used)
There are two possibilities for defining the centre of the circle:
1. Via the addresses I, J, and K
2. Via the address R
Full circles are only possible via the addresses I, J, and K.
Fig. 8-10:
Note The three drawings show the direction of rotation from the angle of vision of the
third axis moving in a positive direction.
In the case of circular interpolation the end point and the location of the centre of the circle have to be pro-
grammed.
The end point of the arc must be defined with the addresses X, Y and Z. This can be done in absolute
(G90) or incremental mode (G91).
- G90 co-ordinate value of the end point in the tool co-ordinate system
- G91 distance between the starting and the end point.
The addresses I, J, K determine the centre of the circle; their values must be provided with an operational
sign and allocated accordingly to the addresses X, Y, and Z.
The addresses I, J, and K are incremental values, independent of G90 or G91.
Fig. 8-11:
Example:
Incremental
G3 G91 G17 X-20. Y20. I-30. J-10. F300
Absolute
G3 G90 G17 X20. Y40. I-30. J-10. F300
Note: The centre of the circle is in negative territory vis-à-vis the starting point.
Legend
[1] Starting point [3] End point
[2] Centre [4] Centre of workpiece
Fig. 8-12:
Incremental:
G91 G17 G54 G2 I – 30. M3 S1500 F300
Absolute:
G90 G17 G54 G2 I – 30. M3 S1500 F300
Incremental:
G91 G17 G54 G3 J30. M3 S1500 F300
Absolute:
G90 G17 G54 G3 J30. M3 S1500 F300
R = radius to be cut
Examples:
Legend
[1] Starting point
[2] End point
Fig. 8-14:
Legend
[1] Starting point
[2] End point
or
Fig. 8-15:
Legend
[1] Starting point
[2] End point
Fig. 8-16:
Legend
[1] Starting point
[2] End point
Example:
Incremental:
Absolute:
Legend
[1] Movement in Rapid Mode
[2] Movement in Feed Mode
Fig. 8-18:
The movement starts at the zero point, proceeds in a clockwise direction and ends at the zero point.
N1 G90 G17 G0 X0 Y0
N2 X40. Y-40.
N3 G1 X-80. F350
N4 Y-20.
N5 G2 X-40. Y20. R40.
N6 G3 X20. Y80. R60.
N7 G1 X40.
N8 Y-40.
N9 G0 X0 Y0
N10 M30
If you wish to set the data via a program this must be written as follows:
Example:
P1 = G54 P4 = G57
P2 = G55 P5 = G58
P3 = G56 P6 = G59
G10 G90 L20 P10 X-100. Y-250.123 Z-560.345 B180. (G54.1 P10)
L20 = Address additional zero shifts.
Fig. 8-19:
The external (EXT) zero shift is programmed via P0, but be careful, because then all subsequent zero
shifts, including any existing additional zero shift, are shifted according to the operational sign. In principle
there should be a zero on all axes. The others (G57–G59) are on the same page. Turn the page.
Calculation of the workpiece zero, e.g. G54. The workspace scheme relates to an A88e.
For other machines the corresponding theoretical dimensions must be taken into account.
Pay attention to the data specific to the machine. All axes are at the reference point.
Legend
[1] Theoretical dimension on the Z axis [5] Workpiece
(e. g. A88e: 1040 mm)
[2] Reference point [6] Workpiece zero G54 X Centre of table
[3] Spindle Y –645.
Z –845.
[4] Theoretical dimension on the Y axis [7] Work holder
(e. g. A88e: 900 mm) [8] Pallet
Fig. 8-20:
The reference point for the machine in the example, A88e, is as follows:
- On the X axis at the centre of the path of movement
- On the Y axis at the most positive axis position
- On the Z axis at the most positive axis position
For details please refer to the operating instructions in question.
Calculations of the shift values for the X, Y, and Z axis on the basis of the example in “Fig. 8-20: ”.
If the workpiece zero is at the centre of the table on the X axis, the shift value is zero.
These values are entered into the memory for the zero shift under G54 (01).
Input options:
Manual input
Note If the customer should so wish, it is also possible to situate the machine zero on
the surface of the pallet or in any other position.
Program
……
……
H1 D2
M56
G90 G0 G54 X0 Y20.M3 S1400 F120 T1258
G43 H1 Z2.
……
……
Explanation:
Due to the G54 function the programmed axis positions now relate to the 1st workpiece zero.
Several workpiece zero points can be used for one workpiece. If the number of standard shifts (6, G54–
G59) is exceeded, the setting of the zero shift can be integrated into the parts program. The zero shifts
can then be extended infinitely.
The offset functions allow easy programming with tools of different dimensions. The offset values of the
tools are added to the distance programmed by means of the offset functions. The distance programmed
thus corresponds to the dimensions on the machining drawing.
Additional G-functions for 5 axes machining and Pro 5 controls (G41.2, G42.2).
Offset data
There are two methods of administrating the offset data in the controls:
1. Tool offsets via the offset memory of the NC (direct input via MDI or program)
2. Tool offsets via the tool file of the MPC-5 (2) or the Pro 5.
In relation to point 2 see also “3.2.10 Tool offset memory H, D (Pro 3)” and “3.2.11 Use of tool correction
memory H and D with multi-cutter tools (PRO5)”.
Tool 1 (T1) has a length offset 1 (H1) and a radius offset 51 (D51).
Tool 2 (T2) has a length offset 2 (H2) and a radius offset 52 (D52).
Note Under P1 the tool length of 117.692 mm is set directly in the tool file of the CNC,
under no. 1.
Under P2 the tool length of 215.786 mm is set directly in the tool file of the CNC,
under no. 2.
Here it is not possible to differentiate between the length of the tool and the cut-
ting radius. It is a good idea to divide up the area oneself, e.g. P1–P49 always tool
lengths and from P50–P60 always cutting radius offsets.
8.7.2 Additional tool offsets by means of the tool file of the adaptive
controls, MPC-5/Pro3 (option)
Attention! Only possible with TOOL OFFSET “C” (from 2003 also for A / B)
Additional tool length offsets and cutting radius offsets are offered as an option.
There are 5 additional length offsets and 5 additional cutting radius offsets for 17 tools.
This area is in the MPC-5 tool file and is addressed by means of the soft key [OFFSET-DETAIL].
The data can be entered manually or via the program. If this is done via the program, it is a good idea to
set this at the beginning of the main program.
Example:
Please note!
The tool must be in the work spindle before M293 is called.
The data is saved until it is modified or deleted. Deleting data = delete the PTN in the additional tool
file of the MPC-5 [OFFSET-DETAIL]. The data is always loaded in the sequence from 1–5. If you
only wish to have data in position 4 please proceed as follows:
(1)S0, (2)S0, (3)S0, (4) S123666. Pay attention to M560/M561.
8.7.3 Additional tool offsets by means of the tool file of the adaptive
controls Pro 5
Further details may be found in chapter “3.2.11 Use of tool correction memory H and D with multi-cutter
tools (PRO5)”.
In the case of G43 the specified tool length offset (stored in the offset memory) is added to the co-ordi-
nates of the programmed end position by means of the H code.
The resulting co-ordinate indicates the end point after compensation, irrespective of the absolute or incre-
mental unit.
If no movement command has been specified for the axis in question, the system accepts a movement
command with a distance of 0. The tool travels around the offset, in a positive direction if there is a posi-
tive value in G43.
For this reason always call G43 in connection with an offset number (such as H1) and a movement com-
mand.
Example: G43 H1 Z0
Legend
[1] Value of movement command [3] Actual movement
[2] Offset value [4] H = Length of tool
Fig. 8-21:
These functions are self-arresting, but ATTENTION: G40 is effective after a RESET .
The tool radius offset is the distance between the centre axis of the tool and the tool cutting edge to be
used (radial).
G41
The tool cutting edge is shifted at a right angle to the offset value, left of the surface to be machined. The
type of machining in question is climb milling. Due to the tool lifetime, the precision of the machining and
the quality of the surface it is the type of machining most frequently used.
Legend
[1] The cutter turns to the right (M3)
[2] Tool shift
[3] Radius offset
[4] Direction of the axis movement
G42
The cutting edge of the tool is shifted at a right angle to the offset, to the right of the surface to be ma-
chined.
The type of machining in question is therefore opposed milling.
Legend
[1] Direction of the axis movement
[2] The cutter turns to the right (M3)
[3] Tool shift
[4] Offset
Note The movement command in the block with G41 or G42 requires at least one axis
to be determined on the level selected (G17, G18, G19). However the distance
travelled may not be zero.
Note The tool radius must be smaller than the smallest inner radius of the contour.
If there is any interference, the program is stopped by an NC alarm one block be-
fore the defective instruction.
Negative example:
Example:
The tool starts at the zero point and travels around the contour in a clockwise direction. It is located to the
left of the contour. When it reaches the end of the contour it returns to zero.
Fig. 8-24:
Program
The feed rate relates to the centre of the tool. In the case of movements along a straight line the relative
speed from the centre of the tool to the outer diameter of the tool is the same.
Fig. 8-25:
In the case of movements along a circular path the relative speed from the centre of the tool to the outer
diameter of the tool is different.
Fig. 8-26:
Note The feed rate at the cutting edge of the tool increases for inner circles and de-
creases for outer circles.
Note In the case of inner circles this means that the feed rate per gear tooth is too high
and this can cause the cutter to break.
Note In the case of outer circles the feed rate per gear tooth is too low and this leads to
greater wear and tear.
The FANUC 11M, 15M, 16M and PRO5 300is controls have an automatic device to decrease the feed
rate in the case of inner contours and a selected cutting radius offset.
Standard setting: up to 50% of the programmed F-value; can be set to up to 1 % by means of parameters.
In the case of outer contours with a selected cutting radius and contour milling without a radius offset the
formulae set out above must be applied in order to decrease the feed rate.
Fig. 8-27:
Example of a program
In the case of a circular movement the feed rate must be increased to the relative speed.
The example was programmed with average tolerance.
Legend
[1] Cutter DM32
Fig. 8-28:
ER = (D + DF) / 4
Example of a program:
For tapping a further axis is moved to the circular interpolation of two axes.
In this way a thread or an ordinary ascending curve can be generated.
G18 and G19 are only needed in special cases with an angular cutting head.
(G45–G48 must then be activated.)
Climb milling prolongs the life of the tool and produces a better surface.
The circular run-in and run-out must be programmed with a gradient.
Otherwise the contours are distorted on insertion.
ER = (D + DG) / 4)
PE = EW x P / 360°
Tapping M8
Core hole: 6.8 mm
Gradient: 1.25 mm
Finished after one revolution
Fig. 8-29:
ER = 3.7 mm
EW = 85.365°
PE = 0.296 mm
In the following program section it is demonstrated how the calculated data is used.
Only this section has been taken into account. For the calculation of the F value see “8.7.7 Feed rates in
the case of circular milling”.
When there are sharp-edged borders the feed rate is automatically regulated in Feed Mode (G1, G2, G3)
so that there is a slight rounding of the corners, i.e. the next block is already started although the current
one has not yet been fully machined. This rounding is intentional in order to spare the tool and the ma-
chine.
Legend
[1] Distance programmed
[2] Actual distance
Fig. 8-30:
The cutting mode, G64, is a self-arresting function and an ON status. It can be cancelled with G61 or G62.
This function oversteers the Cutting Mode (G64) by block in order to generate a sharp corner.
It is only effective in connection with Feed Mode (G1, G2, G3).
Example:
G1 X___
G9 Y___
G9 X___
Y___
Legend
[1] Exact hold
Fig. 8-31:
This function oversteers the Cutting Mode (G64) by block in order to generate a sharp corner.
It is only effective in connection with Feed Mode (G1, G2, G3).
It can be cancelled with G64 or G62.
G1 X___
G61 Y___
X___
G64 Y___
Legend
[1] Exact hold
Fig. 8-32:
For sharp-edged inner contour borders the feed rate is automatically decreased in Feed Mode (G1, G2,
G3) shortly before and after the border, depending on the angle of inclination. This function is only effec-
tive if a radius offset (G41/G42) has been selected.
It can be cancelled with G64 or G62. The lengths of the paths (Le, Ls) are set by means of parameters.
Legend
[1] Distance programmed
[2] Tool centre path
Fig. 8-33:
In order to achieve greater precision on positioning it is possible to approach from one direction only. This
means that the width of the backlash is not effective. The G60 command is programmed instead of the G0
command. G60 is a non-arresting command.
Call:
The positioning is in a positive direction. The positioning distance is 1 mm. The axes then stop shortly be-
fore the end point if the positioning direction is the same as that intended.
Legend
[1] Positioning distance
[2] Brief stop
[3] End point
Fig. 8-34:
The drilling cycles run according to a fixed procedure. They simplify programming for drilling with ejection
of chippings, tapping etc.
Table 8-1:
Legend
[1] Starting point
[2] R point
[3] Z point
[4] Rapid Mode
[5] Feed
Fig. 8-35:
Note The starting point corresponds to the position of the Z axis at the beginning of the
drilling cycle. The Z axis travels in Rapid Mode from this position to point R, point
R being above the workpiece.
Minimum specifications:
F Feed speed
All specifications can be altered during the time that the drilling cycles are effective.
Legend
[1] Starting point
[2] R point
[3] Workpiece surface Z0
Fig. 8-36:
The R point and the Z point are absolute co-ordinates in the workpiece co-ordinate system.
Legend
[1] Starting position
[2] Workpiece surface
Fig. 8-37:
The R value and the Z value are distances between the starting point and the finishing point. The opera-
tional sign indicates the direction of the movement.
Legend
[1] Workpiece surface
[2] R point
[3] Z point
Fig. 8-38:
Legend
[1] Workpiece surface
[2] R point
[3] Z point
Fig. 8-39:
With this function the return traverse position of the tool is controlled after the execution of the drilling cy-
cle. It makes it possible to skip obstacles. The starting position corresponds to the position of the Z axis
when the cycle is called and cannot be altered during the time that the cycle is effective.
G98/G99 is only effective in connection with the drilling cycles.
G98 is the ON status
Legend
[1] Starting position [4] Z point
[2] R point [5] Feed
[3] Workpiece surface [6] Rapid Mode
Fig. 8-40:
1. X___ Y___
G81 G99 R___ Z___
X___ Y___
1. Positioning in X and Y, then call and execution in this position. For each further position the drilling cy-
cle is repeated until it is cancelled.
3. X___ Y___
G81 G99 R___ Z___ L0
X___ Y___
3. Positioning in X and Y, then call of the cycle. The L0 function blocks execution for this block. For each
further position the drilling cycle is executed until it is cancelled.
This option is used for sub-programming so that all positions of a hole pattern are available in a sub-
program (lowering, drilling, tapping).
With the L0 function the execution of the drilling cycle can also be disabled at the positions.
This function is used in order to avoid double machining.
Example:
X___ Y___
G81 G99 R___ Z___
X___ Y___
X___ Y___
X___ Y___ L0 The drilling cycle is not
X___ Y___ L0 executed in this position.
X___ Y___
X___ Y___
G80
With the G80 function the effective drilling cycle (G73, G74, G76, G81 to G89) and the corresponding
specifications, such as the R and Z points, the starting position, the dwell pause etc., are cancelled. The
feed and Q values remain. The same effect is achieved by calling G0.
Legend
[1] R point [2] Z point [3] Starting point
Fig. 8-41:
Call:
Legend
[1] R point [3] Starting point
[2] Z point [4] Dwell pause P
Fig. 8-42:
The dwell pause is programmed by means of address P in milliseconds (ms) (P300 corresponds to
300 ms).
Call:
The tool executes the return traverse movement to the R point for the ejection of chippings after the partial
drilling depth (address Q) has been reached. This is done in Rapid Mode. Then the tool returns to up to 1
mm of the previous drilling depth and repeats the process.
Legend
[1] Point R [3] Point Z
[2] Level of point R [4] Starting level
Fig. 8-43:
Call:
After reaching the partial drilling depth (Q) the tool lifts 0.2 mm, thus breaking the chip. This procedure is
repeated until the Z point is reached.
Legend
[1] Point R [3] Point Z
[2] Level of point R [4] Starting level
Fig. 8-44:
Call:
Explanations
In the fast deep-hole drilling cycle there is an intermittent feed along the Z axis. Due to the step-by-step
delivery it is easier to remove the chippings from the hole and a lower value can be set for the return
traverse. This improves efficiency.
The distance (d) is determined in NC parameter 5114.
The tool is withdrawn in Rapid Mode. Before the G73 command is given, the spindle rotation must be
started by means of an additional function (M-Code).
If G73 and an M code are in the same block, the M code is executed on the first positioning process. The
system then goes to the next drilling process.
If the number of repetitions of the drilling process is determined by means of (L), the M code is only exe-
cuted on the first drilling process, but not on the second and the following drilling processes.
If the tool length offset has been ordered for the fixed cycle (G43 / G49), this is executed on point R on po-
sitioning.
The left tapping cycle must be started with the available spindle left run command (M4).
'When the Z point is reached, the spindle automatically switches to right run (M3). In the R point the spin-
dle reverses again and turns again to left run (M4). Otherwise the same conditions apply as in the case of
the right tapping cycle (G84). Feed offsets are ineffective in the case of tapping.
The cycle is only aborted after the return procedure, even if Feed Hold has been specified.
Legend
[1] Spindle left run (M4) [4] Reversal of the rotation
[2] R point direction
[3] Z point [5] Spindle right run (M3)
Fig. 8-45:
Call:
8.9.11 G76 – drilling cycle with oriented spindle stop and lift-off
When the tool has reached the bottom of the tap hole, the spindle is halted at a fixed rotation position (in-
ternal M19) and the tool is moved in the opposite direction to the tip of the tool and then withdrawn This
prevents damage to the machined surface and allows clean and precise drilling. Q is set to 0.2 mm as a
default setting.
Q Q must always be a positive value. Negative values are disregarded. The shift direction must be
set in –Y as a default setting in machines of the A series 16Mi, 18Mi and PRO5.
Changes are possible for 16 Mi and 18Mi using NC-parameter 5101, bit 4 (RD1) and
bit 5 (RD2).
For the PRO5 it is NC-parameter 5148.
Q is a modal value which remains stored during a fixed cycle. As this command is also used for
the cutting depth in G73 and G83, it should be treated with caution.
Legend
[1] Q and spindle start [4] Oriented spindle stop
[2] R point [5] Starting point
[3] Z point
Fig. 8-46:
Call:
Legend
[1] Oriented tool position
[2] Lifted boring bar
[3] Boring bar
[4] Lifting path (Q)
Fig. 8-47:
The right tapping cycle must be started with the available spindle right run command (M3).
When the Z point is reached, the spindle automatically switches to left run (M4). At the R point the spindle
reverses again and turns to right run (M3). During the tapping the factors the feed and speed override
functions are ineffective. A feed hold triggered during the present cycle does not become effective until
the starting point at G98 or the R point at G99 has been reached.
The cycle can only be interrupted using Emergency Stop.
Legend
[1] Spindle right run (M3) [4] Reversal of the rotation direction
[2] R point [5] Spindle left run (M4)
[3] Z point [6] Starting point
Fig. 8-48:
The following points must be observed in the case of tapping with a floating tapper:
1. The feed rate (F) is calculated from the spindle speed (S) and the gradient of the thread (P).
F=SxP
3. The safety distance from the R point to the surface of the workpiece should be at least 6 mm.
Call:
After being positioned on the X and Y axes, the tool travels to point R or point Z in Rapid Mode.
Once the bottom of the tap hole has been reached, the tool returns to the starting point (R or Z) at feed
rate.
Legend
[1] R point [2] Z point [3] Starting point
Fig. 8-49:
Call:
8.9.14 G86 – drilling cycle with spindle stop - Rapid Mode back
Legend
[1] R point [4] Spindle stop
[2] Z point [5] Spindle start
[3] Starting point
Fig. 8-50:
Call:
8.9.15 G87 – drilling cycle with reverse boring bars, back drilling cycle
Legend
[1] Spindle right run (M3) [5] Rapid Mode
[2] Z point [6] Feed
[3] R point [7] Shift
[4] Starting point [8] Oriented spindle stop
Fig. 8-51:
1. Positioning in X and Y
2. Oriented spindle stop (internal M19)
3. Shift by the Q value
4. Travelling to the R point
5. Shifting back to the X and Y positions
6. Spindle start right run (M3)
7. Travelling to the Z point in Feed Mode
8. Oriented spindle stop
9. Shift by the Q value
10. Travelling to the starting point
11. Shifting back to the X and Y positions
12. Spindle start right run (M3)
The lift-off direction is set to Y+ at the works (see “8.9.11 G76 – drilling cycle with oriented spindle stop
and lift-off”).
A G99 is not possible.
Call:
8.9.16 G88 – drilling cycle with spindle stop after a dwell pause
Legend
[1] R point [4] Spindle start
[2] Z point [5] Starting point, spindle start
[3] P: dwell pause, spindle stop
Fig. 8-52:
The spindle stops at the Z point after the expiry of the dwell pause. Now it is possible to intervene manu-
ally in the cycle by switching over the mode selection switch. After being switched down, the machine can
be started again. In the case of G99 the tool travels to the R point. In the case of G98 it travels to the start-
ing point. The spindle starts and the controls read the next program block.
Call:
8.9.17 G89 – drilling cycle with dwell time and return in Feed Mode
Legend
[1] R point [4] P: Dwell pause, spindle stop
[2] Z point [5] Starting point, spindle start
[3] P: Dwell pause
Fig. 8-53:
Call:
Example 1
Fig. 8-54:
Work sequence:
1. Centering and chamfering
2. Core drilling
3. Tapping
%
O1000 (DRILLING CYCLES) N1003 (SCREW TAP M12)
T1 H1 D2
M98 P9140 M56
N1001 (NC SPOT DRILL D16X90 GR) G0 G90 G54 X50. Y50. S265 M3 F464 T3 M8
H1 D2 G43 H1 Z50.
M56 G84 G99 R6. Z – 18.
G0 G90 G54 X50. Y50. S663 M3 F66 T2 M8 Y – 50.
G43 H1 Z50. X – 50.
G81 G99 R2. Z – 6. Y50. G98
Y – 50. G80
X – 50. M98 P9140
Y50. G98
G80
M98 P9140
Example 2
In example 1 all co-ordinates are specified in the main program, for each tool.
It is better to put the actual co-ordinates in a sub-program. Thus in the main program you only start the cy-
cle you need and stop it with L0, i.e. in the main program you already travel to the 1st position. L0 prevents
the cycle from being executed in this position.
%
O1000 (DRILLING CYCLES) O5120 (CO-ORDINATES OF O1000)
T1 X50. Y50.
M98 P9140 Y – 50.
N1001 (NC SPOT DRILL D16X90 GR) X – 50.
H1 D2 Y50.
M56 M99
G0 G90 G54 X50. Y50. S663 M3 F66 T2 M8
G43 H1 Z50.
G81 G99 R2. Z – 6. L0
M98 P5120
G0 G80 Z100.
M98 P9140
Note The G80 does not need to be in the main program. It is already in O9140 and
O9146.
Example 3
Another drilling cycle with sub-programs for M12
Legend
[1] Material ST42
Fig. 8-55:
Work sequence:
1. Centering and chamfering
2. Core drilling
3. Tapping
Example 4
Drilling on various levels and at varying depths
Fig. 8-56:
Example 5
Drilling sequence with equal distances.
11 tap holes
Fig. 8-57:
Program section:
Example:
Attention! When it is being processed the dwell pause is displayed in the Distance To Go
display via the X axis.
Attention! If the positioning display after the decimal point has four positions, one further po-
sition must be taken into account under address P. 1 sec. = P10000.
Example:
G4 X1. 1 second
G4 X10. 10 seconds
G4 X0.001 1 ms
Programming example:
Flat core drilling with smoothed base
Fig. 8-58:
The reference point is a fixed position of the axes. It is (normally) also the zero point of the machine.
After the Emergency Stop has been switched on, the reference points can be travelled to manually or au-
tomatically.
With G28 the axes addressed travel to the reference points in Rapid Mode via an intermediate position.
The intermediate position relates to the workpiece co-ordinate system (G54/G59) currently active.
Before the reference points are travelled to (by the program) the length and radius offsets and the drilling
cycles must be cancelled.
G28 is not a self-arresting command.
The G28 command is only rarely used in the program as the movement to the reference points is called in
the tool change or pallet change sub-program.
Example:
G54 G90 G28 X250. Y250.
Legend
[1] Current position
[2] Intermediate point
Fig. 8-59:
Example:
G28 G91 X0 Y0 Z0
G28 B0
G90
The sequence in which the axes are moved is always Z first, then X, Y and B.
The second reference point is a fixed position of the axes which is used when the tool or pallet change po-
sition is not at the zero point of the machine. The position is determined by means of parameters.
The G30 command is not used in the program as the movement to the second reference point is started
in the tool change or pallet change program.
This creates maximum space for the sub-programs O9140, O9146 and O9130.
In the zero shifts (workpiece co-ordinate system) G54–G59 and G54.1 P1 – P48 can be set with the G52
function, “local zero shifts”.
Input format:
The zero point of the “local co-ordinate system” is the same as the zero point of the zero shift G54–G59
and G54.1 P1 – P48.
Legend
[1] Offset of the zero shift [4] “Local co-ordinate system”
[2] Zero shift G59 [5] Offset of the “local zero shift”
[3] Zero shift G54
Fig. 8-60:
After the “local zero shift” has been set, the values programmed in G90 refer to the zero point of the “local
zero shift”. It is possible to change the “local zero shift” by entering a different axis path in connection with
the G52 command. On the cancellation of the “local zero shift” by G52 X0, Y0, Z0 the zero point of the
zero shift G54–G59 and G54.1 P1 – P48 becomes effective.
This function is used for repeating contours or hole patterns within a workpiece.
This command is used to address the machine co-ordinate system. It is only effective by block. The move-
ment to the specified position is only executed in Rapid Mode. (G0). The Absolute Mode (G90) must be
active. In Incremental Mode (G91) the command is disregarded. The tool length and radius offsets must
be deactivated before G53 is used.
Call:
Legend
[1] Zero point of the machine co-ordinate system
[2] Position in the machine co-ordinate system
Reference point
Fig. 8-61:
With the aid of the Skip function it is possible to execute or skip program sections which are not necessary
for each workpiece of a series, e.g. measurement whetting, parts of hole patterns etc., according to the
preselection which has been made.
With the skip slash ( / ) entire blocks, parts of blocks or parts of programs can be marked and thus skipped
if required.
Fig. 9-1:
If the “Block-Skip” key has been switched off, the program will be executed as usual.
In the case of the horizontal machining centres (MC series) the activation of the Block Skip function of the
pallet can be added to the pallet data (MPC-5, work data, Random Mode).
The Block Skip function can also be activated via the NC program.
M140 = Block-Skip ON
M141 = Block-Skip OFF
The Fanuc 0M and 16M controls have an extended standard in their functions. Rigid tapping is the stand-
ard function for the Fanuc 0M controls and the Prescient Contour Mode is an optional function. The Fanuc
16M controls have rigid tapping and prescient contour mode as a standard function.
The Pro 5 control system does not use the prescient contour mode as standard, instead it must be pro-
grammed. See chapter “10.1 G8 – Prescient Contour Mode”.
The Prescient Contour Mode allows a milling contour to be machined without polishing.
The 4 linear axes, X, Y, Z and B, are supported for the controls of 16 Mi and higher versions.
In the case of Fanuc 0M/Pro.A only X, Y and Z are supported.
Program format:
The function is added to the contour program or a contour within a program.
The tool offset data is set off as usual.
The function is switched on and off by means of the G8 P1 command.
The G8 P1 command (P0) must be in a separate block.
Example:
There is also the possibility of overriding the above process with 2 M functions (M251 / M250).
If the M function M251 (must stand alone) is placed in front of the G8 P1, higher priority is given to speed
during machining. Precision is disregarded in the µ area.
If precision is given higher priority, M250 is set (also alone).
The prescient contour mode must be switched off with G8 P0 when the following functions are used:
1. Rigid tapping by means of M135/G84/G74/G84.2 and G84.3
2. F functions, F1–F9, with fixed feed rates
3. Spindle executed as a C axis
4. Cylinder interpolation G7.1
5. Entry of polar co-ordinates G15/G16
6. Dry Run
The prescient contour mode cannot be switched on or off during the function, Z Axis Neglect or Machine
Lock.
The prescient contour mode must be switched on or off for the controls of the Fanuc 0M/Pro.A if neces-
sary, always using G8 P1 or P0.
In the case of the Fanuc 16M/Pro.3 controls it is possible to have the function activated by means of an
NC parameter, always in Auto Mode(Memory/Tape) or, if necessary, through G8 P1, P0.
NC parameter 1602 bit 7 to 1: the prescient contour mode is activated by means of Auto Mode (Memory/
Tape) or cancelled with G8 P0 or RESET.
In the case of rigid tapping the feed rate of the Z axis and the speed of the spindle are synchronised.
At the beginning of the cycle the spindle is stopped at the R point. Then the feed rate and the speed run
up synchronously to the specified data in a right run (M3) and are stopped synchronously at the Z point
(target depth). The feed rate and the speed are moved to the R point, synchronously again, in a left run
(M4).
The cycle ends with a stopped spindle.
During rigid tapping the feed rate and speed overrides are not effective. A feed hold triggered during the
cycle is only effective after the starting point has been reached in the case of G98 or the R point in the
case of G99. An interruption is only possible by means of Emergency Stop.
With the controls of 16MB and higher the M135 command must stand alone in a block.
In the case of some controls (higher than 16MB) it is quite possible to write both commands, M135 and
S___, in one block. In order to avoid having to rewrite your programs later it is recommendable to write
M135 alone.
Furthermore it must be ensured that M3 is not programmed. The direction of rotation is determined by the
selected cycle.
Legend
[1] Spindle stop
[2] R point
[3] Right run (M3),
Z axis travels synchronously with the spindle speed
[4] Z point
[5] Left run (M4),
Z axis travels synchronously with the spindle speed
[6] Starting position
Fig. 10-1:
F = S x P
Feed Speed Gradient
2. If a G0 is used during the active cycle (cancels the cycle), in order to rotate the B axis in Rapid Mode
for example, the complete cycle must be called again.
The speed, in particular, must be programmed before the M135 as the speed memory is set to n = 0.
Call the S command on the revolution of the B axis.
Examples:
Speed S 453
Gradient P 1,75
F = 792.750
The same conditions apply as in the case of the right thread cycle (M135/G84).
Legend
[1] Spindle stop
[2] R point
[3] Left run (M4),
The Z axis travels synchronously with the spindle speed
[4] Z point
[5] Right run (M3),
The Z axis travel synchronously with the spindle speed
[6] Starting position
Fig. 10-2:
In the case of rigid tapping the feed of the Z axis and the spindle speed are synchronised.
At the beginning of the cycle the spindle is stopped at the R point. Then the feed and the speed run up
synchronously to the specified data in a right run (M3) and are stopped synchronously at the Z point (tar-
get depth). In the left run (M4) the feed and the speed are synchronously moved to the R point again.
Furthermore it must be ensured that M3 is not programmed. The direction of rotation is determined by the
selected cycle.
Legend
[1] Spindle stop
[2] R point
[3] Right run (M3),
Z axis travels synchronously with the spindle speed
[4] Z point
[5] Left run (M4),
The Z axis travels synchronously with the spindle speed
[6] Starting position
Fig. 10-3:
Attention! Before G82.2 is called the GI function must be switched off with G08 P0. After
G82.2 has been called for the last time, it must be re-activated with G08 P1. Fail-
ure to do this will cause the machine to come to a halt or trigger an error mes-
sage.
The same conditions apply as in the case of the right thread cycle, G84.2.
Legend
[1] Spindle stop
[2] R point
[3] Left run (M4),
The Z axis travels synchronously with the spindle speed
[4] Z point
[5] Right run (M3),
The Z axis travels synchronously with the spindle speed
[6] Starting position
Fig. 10-4:
Attention! Before G82.2 is called the GI function must be switched off with G08 P0. After
G82.2 has been called for the last time, it must be re-activated with G08 P1. Fail-
ure to do this will cause the machine to come to a halt or trigger an error mes-
sage.
1. Check whether all the tools necessary for machining are in the tool file of the MPC-5.
O1000 (MACHINING PROGRAM)
M36 Test Mode ON
T1000 Tool query
T1200 Tool query
T2346 Tool query
M37 Test mode OFF
(Further program data)
Note:
If the tool life is set by means of the program or set manually, it must be ensured that the tool life and the
remaining tool life have the same value at the start of machining. After a TL alarm has been triggered,
both values revert to the original value.
4. Setting the tool life and the remaining tool life by means of the NC program.
O2000 (MACHINING PROGRAM)
………
M930 Set Mode ON
T1000 S100 T = PTN S = 100 mins.
T1200 S123 T = PTN S = 123 mins.
T2346 S30 T = PTN S = 30 mins.
M37 Set Mode OFF
Set the remaining tool life
M931 Set Mode ON
T1000 S100 T = PTN S = 100 mins.
T1200 S123 T = PTN S = 123 mins.
T2346 S30 T = PTN S = 30 mins.
M37 Set Mode OFF
………
(Further program data)
1. Check that all the required machining tools are included in the Pro 5 tool file.
O1000 (TEST)
M36 Test mode on
T1000 Query the PTN no. in the tool file
T1200 Query the PTN no. in the tool file
T2346 Query the PTN no. in the tool file
M37 Test mode off
(Other program data)
Oxxxxx
……..
T702
P9140 M98
H1D2
M56
…….
M38 SL-set mode temporarily On
S0 S0 = AC value = 0
S6000 S6000 = upper SL value = 60 percent of nominal power
S0 S0 = lower SL value = 0 percent
M39 SL-set mode End
…….
Machining
…….
The temporary SL-/AC-memories are reset to 0 after the spindle tool is automatically changed.
4. Setting the service life and remaining service life by means of the NC program.
O4721 (SET THE TL ALARM TIME AND BASIC SERVICE LIFE)
M448 S108 T1 M448 = Tool data register mode 1 on.
S108 = TL Alarm time T1 = Cutter 1
S2 T1200 S2 = Pot 2 T1200 = Entered as multiple of 0.1 sec = 2 Min
S3 T240000 S3 = Pot 3 T240000 = Entered as multiple of 0.1 sec = 400 Min
S30 T12000 S30 = Pot 30 T12000 = Entered as multiple of 0.1 sec = 20 Min
Comment:
When configuring the service life using the program or by hand, ensure that the alarm service life and ba-
sic service life are set to the same values prior to using the machine.
Once the TL-alarm is cleared, both times are generated to their original value.
10.4.3 Setting the tool length and the radius by means of the program
(MPC-5)
10.4.4 Using the program to set the tool length and radius (Pro 5)
10.4.5 Setting the tool length and the radius directly in the tool offset file
of the NC by means of the program
This option is used when the machine is not working with the tool file of the MPC-5. The data should there-
fore be written directly into the tool offset file of the NC.
This is mainly used for older machines (MC-40, MC-65 etc.).
In order to better distinguish the offsets they have been divided up, e.g. offset nos. 1–50 contain the length
offsets and offset numbers 51–70 the cutting radius offsets.
The range can naturally be selected as you choose.
G10 G90 L1 P51 R5999 The value 5.999 mm is written into offset
number 51 (P51).
G10 G90 L1 P61 R7888 The value 7.888 mm is written into offset
number 61 (P61).
10.5 Axis monitoring with M453/M454 (A series as from 16iM) (only for
PRO3)
Description
Controlled by the M functions in the machining program, it is possible to monitor the load of the NC axes
(X, Y, Z, 4., 5.) and of the spindle motor. The maximum currents can be set individually for each axis.
As an alternative to monitoring the maximum currents, it is also possible to program the monitoring of min-
imum currents.
The monitoring of the axes becomes active as soon as a current has been set for this axis and an auto-
matic program run is active in the memory mode (the start lamp lights up). The spindle must also be
switched on to monitor the spindle current.
The monitoring of all axes can be temporarily disabled by means of a function key on the basic screen
(MPC-5).
The active monitoring functions can be followed on the tool monitor screen (MPC-5).
If the maximum current is exceeded, an SL tool monitor alarm is generated.
The monitoring strategies are active as in the case of the standard monitor functions.
NC programming
The currents are set by means of the M functions, M453 and M454.
(Only the most recently programmed function is active.)
These M functions must be programmed in a separate NC block together with an S command and a T
command.
The monitoring function is cancelled by means of M452 Sx (Sx indicates the axis to be cancelled.)
All monitoring functions are cancelled with M2/M30 (end of program).
Example:
Oxxxx
M3 S1000 Spindle start.
M453 S0 T300 Maximum current of the spindle.
30 amperes (start of spindle monitoring).
………
1. The function must be activated by means of machine parameters (see “ Machine parameters” further
below).
2. Memory Mode must have been selected.
3. The Start lamp must light up (automatic program run)
4. The monitoring must be registered with M453/M454.
5. The function skip must be deactivated (basic screen MPC-5).
6. The delay time set by the machine parameter must have expired.
7. To monitor the spindle current the spindle must be switched on and the stabilisation time after the
spindle start must have expired.
The activated functions are displayed on the tool monitor screen (MPC-5).
During the monitoring the present current of the axis is compared with the registered current. If this value
is exceeded (or if there is a shortfall in the case of M454), an “SL” tool monitor alarm is generated and the
preset standard alarm strategies are executed. Machine alarm 21006 is displayed .
The amount of time that the current is exceeded until an alarm is generated can be set by a machine pa-
rameter.
Example:
Fig. 10-5:
In this example the monitoring for the spindle is registered, but not active (the spindle is standing still).
The monitoring of the X and Z axes is activated and the monitoring of the Y axis is not registered.
If there is a monitoring alarm the most recently registered currents of all axes are stored and can be ac-
cessed by means of the function key, “ALARM LOAD”.
Fig. 10-6:
If this function key is active (pink) the monitoring functions are suspended.
Machine parameters
Table 10-1:
Table 10-1:
Description
In principle all machines are set for subsequent tools, i.e. a core hole drill that is checked by the drill
breakage control function causes a waiting time for the tapper if this is clamped as the next tool.
The drill breakage control function signals to the NC whether or not the core hole drill has broken off.
This protects the tapper.
The resulting waiting time (approx. 2.5 secs.) can be saved if a command has been set ordering the sup-
pression of the subsequent tool. To do this machine parameter 22 must be set to 1.
In this case the tapper no longer waits in the tool change position until the core hole drill has been chek-
ked.
For technical reasons to do with programming sometimes the thread is not cut immediately after the core
hole drill. As you cannot be certain whether all tap holes have been successfully drilled in the workpiece,
the check is made at a later point in time.
This is done with the M434 function.
If the core hole drill has been reported as being broken, there is a red “BT” message under Status in the
tool file of the MPC-5.
Programming example:
O3346 (PROGRAM)
………
T1800 Core hole drill
M98 P9140
H1 D2
M56
Machining
T9007 any tool
M98 P9140
H1 D2
M56
Machining
T2300 screw tap
H1 D2
M56
M434 T1800 Now it is checked whether the core hole drill is in order.
Not broken means that machining takes place.
Tool broken, alarm message, no machining.
Example 1:
Further processing
………
Example 2:
If the call is to be made via a macro, a parameter must be set:
NC parameter 6087 = 318 macro call via M318 and program number O9027
The program number is binding.
Further processing
………
Macro program:
The drill breakage control function can be activated in the NC program by means of M976 and S1 or dis-
abled by means of S0.
Example:
O3346 (PROGRAM)
………
M976
T1800 S1 S1 = Drill breakage activated
M37 S0 = Drill breakage disabled
T1800
M98 P9140
H1 D2
M56
Further processing
For the 16iM controls and higher versions it is possible to have programs that require a great deal of mem-
ory space (up to 4MB) directly processed from a SRAM card.
However this has the disadvantage that this process cannot be followed on the monitor of the NC con-
trols.
This means that entering and exiting is not possible.
The slot for the SRAM card is on the left side of the screen.
Call:
2 tool change speeds can be programmed from the NC program by means of M functions.
The 2 speeds are a decrease in the normal change speed and its restoration.
Whether a decrease is necessary depends on the type of machine in question. We speak of heavy tools.
For details please refer to the operating instructions. At all events the speed of the tool change should al-
ways be decreased if probes are used.
If a heavy and a light tool are changed at the same time, the heavier tool has priority. In the tool file of the
MPC-5, an “!” is set in the first column to the right of the PTN number. This shows that this is a heavy tool.
Machine parameter 9045 must be set to 1.
Example:
………
M967 (Selection of the registration mode)
T2576 S1 (S1 = low speed for T2576)
T4555 S1 (S1 = low speed for T4555)
T1000 S0 (S0 = normal speed for T1000)
M37 (End of Set Mode)
The NC-program may be used to program 3 tool change speeds via the data register.
The 3 speeds include a reduction of the normal change speed as well as a restoration to this setting.
Any reduction is dependent on the particular machine model. One refers to heavy tools. Further details
are given in the operating instructions.
If heavy and light tools are changed at the same time, priority is given to the heavy tool. The correspond-
ing value is entered in the tool speed line in the PRO5 tool file.
Example:
O0003 ( Test )
M448 S11 M448 = Tool data register mode 1 on. S11 = Tool speed
S1 T0 S1 = Pot 1 T = 0 High speed
S2 T1 S2 = Pot 2 T = 1 Low speed
S3 T2 S3 = Pot 3 T = 2 Middle speed
M37 Set mode off
……
proceed with machining
M30
10.11 Switching over the pressure level for coolant through the spindle
Example of application:
In this example 2 pressure levels (30 / 50 bar) are used for the coolant function.
The coolant function is called with G65 P9029 Dxx.
The selected pressures are called directly as D parameters in the program.
The macro program contains the logics for the correct selection of the pressure levels. The contents of
O9029 depend on the application and the hardware used.
Pressure levels can also be pre-selected via M570 and address T (T1 - T7). Address T contains the pres-
sure levels; e.g. T1 = 10 bar, T3 = 30 bar, T7 = 70 bar. M26 is used to activate the coolant.
Syntax for 30 bar:
..........
M570 T3;
M26;
..........
General:
The values for parameters can be entered by means of the program. This function is used to determine
the compensation data, on the exchange of machine accessories and on the alteration of the maximum
feed rate or speed in Rapid Mode.
For the adaptation of machining time constants to a change in machining conditions.
Format PRO3:
Format PRO5:
Programming example:
In this example the maximum speed in the Rapid Mode of the Z axis is decreased to 15000 mm/min.
PRO3 PRO5
PRO3 PRO5
To provide a better overview, the leading zeros have been included in this example.
With the expanded G2/G3 function (from 16iMB) it is possible to cut both outer and inner tapers as well as
spirals and worms. For this purpose there is interpolation on three axes from the starting point to the tar-
get point.
Note X, Y, Z: The target point indicates the gradient ratio in relation to the starting point.
Note K, Q: K and Q are alternative specifications. Both values can be written, but must
then correspond to the gradient ratio from the starting point to the target point.
Fig. 10-7:
Plain language:
%
O6001 (CONE)
G10 G90 L2 P0 X0 Y0 Z0 B0
G10 G90 L2 P1 X1.1 Y – 440. Z – 540. B0 example of zero point
T6001
M98 P9140
N6001 (END CUTTER)
H1 D2
M56
G54 G0 G90 X0 Y0 S5000 M3 F2000 (M8)
G43 H1 Z2. starting point Z
G41 D2 X0 Y44. starting point X and Y
G3 X0 Y34. Z – 30. I0 J – 44. K – 0.1 end point, delivery 0.1 mm/revolution
G0 G40 X0 Y0
Z150.
M30
%
Input in inches or in metric measurements can be selected with the corresponding G code.
Format:
G21 = Input in mm
The G code must be in a separate block at the beginning of the program before the co-ordinate system is
set up.
After the G code for the conversion of inches into metric measurements, the system of units for the input
data is switched over to the lowest input increment, in inches or in metric.
The system of units for the degree of angle remains unchanged. The system of units for the following
functions is altered:
- Feed rate command through F code
- Positioning command
- Workpiece zero offset
- Tool compensation
- Scaling unit for manual pulse generator
- Some parameters
When the operating voltage is switched on, the G code is directly before switch off.
Attention! G20 and G21 may not be switched over when the program is running.
Attention! When switching over inputs in inches (G20) to inputs in metric (G21) and vice-ver-
sa the tool compensation must be reset in accordance with the smallest input in-
crement.
If bit 0 (OIM) is set to 1 by NC parameter 5006, the compensation values are au-
tomatically converted and do not need to be entered again.
Attention! On the first G28 command after the switchover the machine travels from the inter-
mediate point in the same way as in the case of manual reference point move-
ment.
The tool travels from the intermediate point towards the reference point.
11 Options
Due to the extended Block Skip function several varieties of workpiece can be achieved or parts of pro-
grams can be skipped for clamping positions which are not used.
To do this the skip slash ( / ) is appended to a number. This means that 8 further skip functions are creat-
ed.
The additional Block Skip functions (2–9) can be activated manually and directly in the MPC-5 (basic
screen MPC-5) and also from the NC program.
Fig. 11-1:
Activation of the Block Skip functions. The 2 still missing are on the next page.
Example: Block skip of program parts in the case of clamping positions which are not used
N1249
H1 D2
M56
G0 G90 G54 X___ Y___ S___M3 F___ T4588 M8
G43 H1 Z150.
X___ Y___ (Machining of workpiece 1)
Z200.
/2 G55 M11 B90 M10
/2 X___ Y___ (Machining of workpiece 2)
Z200
/2 /3 G56 M11 B180. M10
/2 /3 X___ Y___ (Machining of workpiece 3)
/2 /3 Z200.
/2 /3 /4 G57 M11 B270. M10
/2 /3 /4 X___ Y___ (Machining of workpiece 4)
/2 /3 /4 Z200.
M98 P9140
etc.
In the Cylinder Interpolation Mode the travel path for the round axis entered as an angle is converted into
the linear data of a cylindrical lateral surface and interpolated with a linear axis.
The cylinder interpolation function allows the programming of cylindrical machining, e.g. for radial cams
on a cylindrical surface.
The cylinder radius is calculated from the centre of the pallet, which means that the workpiece always has
to be clamped centrally to the centre of the pallet.
2. The feed rate selected in cylinder interpolation refers to cylindrical machining, i.e. in degrees/min.
5. Circular interpolation is only possible with “R” (radius). The addresses “I” and “J” may not be used.
The value of the radius can only be specified in mm, however, and not in degrees.
6. Rapid Mode (G0) may not be selected during Cylinder Interpolation Mode.
7. No change of the co-ordinate system (G52, G54–G59, and G54.1 P1 – P48) may be made during
Cylinder Interpolation Mode.
Programming example:
Fig. 11-2:
Fig. 11-3:
On the input of polar co-ordinates a destination position can be determined by a radius value and an angle
value. The selection is made with G16 and cancelled with G15.
The axes are selected through the selection of the level (G17, G18, G19). The first axis is given the radius
value, the second axis the angle value. This means that on the selection of G17 the X axis has the radius
value and the Y axis the angle value.
The input of the angle always refers to the positive radial of the first axis in an anti-clockwise direction, i.e.
on the selection of G17 to the X axis in an anti-clockwise direction.
The radius and angle values can be issued in absolute (G90) or incremental dimensioning (G91).
Example:
Fig. 11-4:
The change of scale value is set in the program by means of address P or by means of parameters.
OFF: G50
No decimal point can be used in the case of P. 1 is 0.001 or 0.00001, set via parameters.
If P is not specified, the change of scale value selected in the parameter is used.
If a value is specified which is outside the range of the change of scale values which have been set,
an alarm is triggered.
The change of scale value cannot be set via an axis.
By means of a parameter (0012) it can be determined whether or not the change of scale function is
effective.
The centre point of the scale corresponds to the centre of the similar diagram and is represented by point
C (enlargement: 1.5) in the following figures, “Fig. 11-5: ” and “Fig. 11-6: ”.
Legend
[1] Point C
Fig. 11-5:
3. A change of scale is not applied to the offset data, such as radius offset (G41,G42), tool length offset
(G43, G44), change of tool position (G45 to G48) etc.
Legend
[1] Programmed contour
[2] Scaled contour
Fig. 11-6:
1. Specify G51 with P alone in the block and in Mode G40 (cancellation of the radius offset).
G50 can be entered together with other functions and in the Radius Offset Mode.
2. After the change of scale the position is displayed by means of the co-ordinate value.
3. If the value of the parameter is used as the change of scale value, it is not effective before G51 has
been specified, even if it has been altered.
4. By means of a parameter it can be set for each axis whether the change of scale function is effective
or not.
The change of scale function cannot be applied to an additional axis. Irrespective of these parame-
ters, the change of scale function is effective for the circular radius command, R, in Mode G51.
5. A change of scale is not effective in Manual Mode, but it is effective in Tape and Memory mode and
also in MDI.
6. On the movement of the Z axis in the fixed cycle the change of scale cannot be applied to the follow-
ing movements.
Cutting depth Q and free movement in deep drilling cycle (G83, G73), X, Y shift value on fine drilling
(G76) and back drilling (G87).
8. If the results of changing the scale are rounded up by counting fractions of five and more as units and
the other values are disregarded, the travel path may be zero. As a result this could have an effect on
the shift contour via cutting radius offset C.
9. By resetting the machine (RESET) Mode G51 is converted into Mode G50.
Change of scale OFF.
10. After the entry of G51, specify the first movement command as an absolute value.
Legend
[1] Centre point of scale
[2] Serial correction of contour,
change of scale: OFF
[3] Change of scale: ON
[4] Change of scale: ON
Path of tool centre point
Fig. 11-7:
N1015 (CUTTER)
H1 D2
M56
G0 G54 G90 X0 Y0 S1200 M3 F120 T1090 M8
G43 H1 Z50.
G51 X0 Y0 P1100
M98 P1000
G50
G0 Z50.
M98 P9140
O1000 (CONTOUR)
G0 X – 40. Y – 30.
Z – 10.
G1 G41 D2 X –30. Y – 22.
Y20.
X15.
G2 Y – 20. R20.
G1 X – 32.
G0 G40 X – 40. Y – 30.
Z2.
M99
Note This value can only be used if the value has not been specified in the G51 block
via P.
Y * * * * * * SCLY *
Z * * * * * * SCLZ *
G51 X Y Z I J K
X Y Z origin of scale
IJK scale factors for X, Y, Z (visible in parameter 5421)
The areas marked with an asterisk (*) correspond to the standard settings.
By means of this function a programmed contour can be rotated on a level. The level is selected via G17,
G18 or G19.
This function is self-arresting. The rotation of the co-ordinate system is selected via G68 and cancelled via
G69.
Legend
[1] Rotation point
[2] Angle of rotation
Fig. 11-8:
The angle of rotation is specified in decimal degrees with the smallest increment being 0.001 deg.
In the case of a positive angle the contour is rotated in an anti-clockwise direction by the amount speci-
fied.
If the co-ordinates of the rotation point are not specified, the present position is taken as a rotation point.
In combination with the enlargement or reduction (G51 / G50) of a contour and the radius offset, the en-
largement or the reduction must be switched first, then the revolution of the co-ordinate system and finally
the radius offset. Cancellation is performed in the opposite sequence.
Example:
Fig. 11-9:
%
O0001 (LIMB CIRCLE WITH O0010 (CONTOUR OF KIDNEY-SHAPED POKKETS)
KIDNEY-SHAPED POCKETS) X – 5.467 Y49.7
T1 G1 Z – 4. F40
M98 P9140 G2 X5.467 R50. F120
N1001 (FRAESER D8) G1 G41 D2 X5.959 Y54.173
H1 D2 G3 X – 5.959 R54.5
M56 X – 4.975 Y45.227 R4.5
G0 G54 G90 X0 Y50. S995 M3 F120 M8 T0 G2 X4.975 R45.5
G43 H1 Z50. G3 X5.959 Y54.173
Z2. G1 G40 X5.467 Y49.7
M98 P10 G0 Z2.
M98 P11 L6 M99
G69
Z50. O0011 (INCREMENTAL CO-ORDINATE ROTATION)
M98 P9140 G90 G68 X0 Y0 G91 R – 51.429 G90
T0 M98 P10
M30 M99
%
Brief description
Machining at a high speed and with a high degree of precision is becoming increasingly important in order
to increase productivity.
The Super GI-Control are controls which steer the machines very precisely even at high feed rates and
which process NC programs very rapidly. They also do so when these programs contain many blocks with
small increments.
Apart from this, the Super GI-Control not only achieves a feed rate of a very high speed and a high degree
of precision, but also makes it possible to achieve surfaces of a very high quality by means of the highly
developed feed control system.
This function enables not only the very precise and rapid machining of simple parts, but also of complicat-
ed products such as matrixes, which need a great deal of very small feed commands. This is on a level
that goes far beyond what we would think possible, thus increasing productivity.
Note On the execution of the “G05 P0” command the machine changes from the Super
GI Mode to the GI-Mode. If both Super GI and GI are to be switched off, the “G08
P0” command must be specified behind “G05 P0” in the block.
Note The Super GI-Mode (G05 P10000) continues to be effective until it is switched off
via “G05 P0”.
Note If a RESET has been performed during machining in Super G1-Mode, the Super
GI ON Code must be specified at the beginning of the newly started program.
The Super GI-Mode can be switched on in a sub-program. In this case the Super GI-Mode must be
switched off before returning from the sub-program to the main program.
Example:
1. The command for the tool length offset, G43, must be executed before Super GI-Mode is started.
2. The commands for the tool radius offset, G41/G42, must be switched on after Super GI-Mode has
been started and switched off before Super GI-Mode has ended.
3. During Super GI-Mode G0 and M, S and T codes must be specified if the tool radius offset is switched
off.
M251 Quick Mode Can reduce the machining time by up to 30%. The precision is
somewhat neglected (in the µ area).
M252 Fine Mode Even more emphasis is placed on precision. This prolongs the
machining time by approx. 30%.
Example:
Example of a program:
G0 G90 X0 Y0
M21 Mirroring of X axis ON
G5 P10000 S-GI Mode ON
Machining
Machining
G5 P0 S-GI Mode OFF
G0 G90 X0 Y0
M23 Mirroring OFF
11.7.5 S-GI function - simple Rapid Mode for G68 and G51
If you use the G68 and G51 functions in connection with S-GI, an NC parameter must first be adjusted.
This adjustment is carried out by means of an NC program. See below.
This NC parameter influences the type of acceleration or braking before interpolation.
Scaling:
O0010 (ABSOLUTE)
G90 X – 60. (Y20.)
X – 20. Y60.
X – 60. (Y60.)
M30
O0010 (INC)
G91 X – 40. (Y0)
X40. Y40.
X – 40. (Y0)
M30
O0020 (ABSOLUTE)
G90 G54 G0 X20. Y10.
G1 Y40. F100 (X20.)
X10. (Y40.)
Y60. (X10.)
X30. (Y60.)
X40. Y50.
X50. Y60.
X70. (Y60.)
Y40. (X70.)
X60. (Y40.)
Y10. (X60.)
X20. (Y10.)
G0 X0 Y0
M30
O0020 (INC)
G91 G0 X20. Y10.
G1 Y30. F100
X – 10.
Y20.
X20.
X10. Y – 10.
X10. Y10.
X20.
Y – 20.
X – 10.
Y – 30.
X – 40.
G0 X – 20. Y – 10.
M30
13 NC program
%
O7000 ( TEST TRAINING)
G10G90L2P0X0Y0Z0B0 ( G53 )
G10G90L2P1X-11.87Y-480.58Z-485.55B0 ( G54 )
T1000
M98P9140
M11G0B90.M10
X30.2
G2X35.2Y30.2R5.
G1Y-30.2
G2X30.2Y-35.2R5.
G1X-30.2
G2X-35.2Y-30.2R5.
G1Y30.2
G2X-30.2Y35.2R5.
G1G40Y50.
G0Z100.
M98P9140
G1Z-0.5
G1G41D2Y15.
G3J-15.
G1G40Y0
G0Z100.
M98P9140
G0G90G54X-25.Y25.M3S6000F400T6000
G43H1Z3.M8
G81G99Z-4.10R3.
M98P7002
G0Z100.
M98P9140
O7001G3J-15.G91Z-1.G90
M99
O7002
X25.
Y-25.
X-25.
M99
%
Fig. 13-1:
The tools listed are not the same as those used in the program (minor differences).
They only serve to illustrate what a tool setting sheet could look like.
Legend
[1] Coolant transfer unit
193.160
[2] Turning plate 6x
SDPT1204EDERGB
[3] Shell end mill arbor
HSK63ASM22050M
[4] KSSM75 surface cutter
63A06RS75SD12D
Legend
[1] VHM cutter ∅20×40×125 z=4
Jabro Tools Sonder GEM JH40 SPEC1908
[2] epb shrink chuck ∅20×160
SECO epb E9304580020160
[3] Coolant transfer unit
Kennametal 193.160
Statically counterbalanced in accordance with ISO 1940, force class G = 6.3 mm/s at a speed of
14000 U/min
Attention! When using the inner coolant feed it is essential to put the tube in the holder!
Legend
[1] Coolant tube [4] BF drill
193.160 B464S06800 KF1
[2] Cutting body 1x [5] Individual unit
IP1072247 KM1
[3] Shrink chuck
HSK63ATT20100M
Statically counterbalanced in accordance with ISO 1940, force class G = 6.3 mm/s at a speed of
14000 1/min
Legend
[1] Coolant transfer unit [4] Chamfer cutter 45°; z=3
193.160 MT52029D
[2] H1 = total length – 0.3 [5] Turning plate 3x
SPGX0602AP CG4
[3] Shell end arbor
HSK63AEM20080M
Legend
[1] Softsynchro chuck [3] Sealing washer ∅8
FX.005677 FX.005681
[2] Collet chuck ∅8 [4] Tap M8 IKZ
FX.005679 FX.005671