You are on page 1of 184

CNC-Milling

MTS TeachWare Student’s Book

MTS Mathematisch Technische Software-Entwicklung GmbH • Kaiserin-Augusta-Allee 101 • D-10553 Berlin
Phone: +49 / 30 / 349 960 0 • Fax: +49 / 30 / 347 960 25 • World Wide Web: http://www.mts-cnc.com • email: mts@mts-cnc.com

CNC-Milling

MTS TeachWare Student’s Book

© MTS Mathematisch Technische Software-Entwicklung GmbH

Kaiserin-Augusta-Allee 101 • D-10553 Berlin

Phone: +49 / 30 / 349 960 0

Fax: +49 / 30 / 349 960 25

eMail: mts@mts-cnc.com

World Wide Web: http://www.mts-cnc.com

Created by Bernd Koch & Bernd Mrosko, 1998.

All rights reserved, including photomechanical reproduction and storage on electric media

Contents

Contents

1 Introduction into working with the CNC simulator milling..........................................7
1.1 System overview................................................................................................................................... 7
1.1.1 CNC milling machine............................................................................................................... 8
1.1.2 CNC control........................................................................................................................... 10
1.1.3 Collision monitoring ............................................................................................................... 10
1.2 Operating modes ................................................................................................................................ 11
1.2.1 Setup mode ........................................................................................................................... 11
1.2.2 Programming Mode............................................................................................................... 13
1.2.3 Automatic mode .................................................................................................................... 15
1.3 Screen representation and manipulation............................................................................................ 16
1.3.1 System start .......................................................................................................................... 16
1.3.2 Screen representation ........................................................................................................... 17
1.3.3 Menu structure ...................................................................................................................... 18
1.3.4 Data management................................................................................................................. 19
1.4 Special functions of the software........................................................................................................ 21
1.4.1 3D representation.................................................................................................................. 21
1.4.2 Programming aids ................................................................................................................. 22
1.4.3 Setting-up automatics, set-up sheet...................................................................................... 23
1.4.4 Status management .............................................................................................................. 24

2 Coordinate systems and Zero point shifts .................................................................25
2.1 Machine coordinate system................................................................................................................ 25
2.1.1 Activating the machine coordinate system............................................................................ 26
2.1.2 Select the Machine coordinate system G53.......................................................................... 26
2.2 Work part coordinate system ............................................................................................................. 27
2.2.1 Define the work part coordinate system................................................................................ 28
2.2.2 Setting the work part coordinate system with the command G92 ......................................... 28
2.2.3 Setting the work part coordinate system with the commands G54 - G59 ............................. 30
2.3 Specifying the necessary location of the work part zero point............................................................ 33

3 NC commands for programming „FANUC 16 M“ .......................................................39
3.1 Absolute value input and incremental value input G90/G91............................................................... 39
3.2 Linear Interpolation and Machine Functions....................................................................................... 41
3.2.1 Rapid traverse G00 ............................................................................................................... 41
3.2.2 Linear Interpolation in Slow Feed Motion G01 ...................................................................... 43
3.2.3 Going to the reference point G28.......................................................................................... 45
3.2.4 Return from the reference point G29 .................................................................................... 46
3.2.5 Dwell time G04 ...................................................................................................................... 47
3.2.6 Exact Stop G09 ..................................................................................................................... 47

© MTS GmbH • Berlin 3

..................................................................................................2.....................................57 4........................................................................................ 62 4.......... 52 3..............2........................................................1 Function and use of cycles on a CNC milling machine................................... 48 3..20 Activate Coolant 1 M07 .............2.................................................. 82 4....... 98 4 MTS TeachWare • CNC-Milling • Student’s Book ..23 Mirror in the X-Axis M21 ..............2.............................................. 48 3........................28 Subprogram Call M98...6 Coordinate rotation .13 Optional Stop M01................25 Cancel mirror functions M23 .....2............................................................................Contents 3...1 Definition.................. 50 3.........................................16 Activate spindle in clockwise rotation M03 ...................................... 52 3................................ 52 3.....................19 Mounting a tool M06 ....................................................14 Program End M02 ..........................................................................................................2......2...............................2.... 49 3...................................................................................... 54 3..................................... 57 4........................................................2.................................................................................................... 70 4....2........................................................... 85 5....................2........... 53 3................................................ 85 5........................ 92 5............................2 Survey...... 87 5.............................................................................21 Activate Coolant 2 M08 .................................................. 55 3........................................2 Circular interpolation ..........................................................2...................11 Spindle speed S ............ 56 4 Interpolation with cutter radius compensation .................27 Cancel Feedrate Override dial M49...........................................2 Circular Interpolation Counter-Clockwise G03 .......................................2............................. 60 4.............2.................15 Program End with Resetting M30............................................................................................................................12 Programmed Stop M00 .................................................................. 87 5..........17 Activate spindle in counter .....................................2 Canned cycles (drilling functions) ..................5 Tool length compensation............. 58 4............................2................................... 79 4...........................................2....................................................................................................2................................................................. 56 3.........2........................ 82 5 Cycles................................................................................................................................................................................................................................... 49 3...........24 Mirror in the Y-Axis M22 ........................2............................ 49 3.................................7 Cancel coordinate rotation.......................................................................................................... 53 3........................2........................................................................ 51 3........................................clockwise rotation M04 ..................... Coordinates of a Circular Arc ..........................1 Selection of machining planes G17-G19 ..1 Circular Interpolation Clockwise G02 .. Sense of Rotation...................3 Machining Plane...................................2...2........................................................... 50 3.............................5 left-hand tapping cycle G74................. 55 3..............2.....2................................. 54 3...........................................................8 Switching to dimension unit millimeter G21.......................................... 94 5.....9 Feedrate F in mm per minute G94 ..........................................10 Feedrate F in mm per revolution G95 .........................7 Switching to dimension unit inch G20............2....... 51 3...............2.......................................................................................................................................... 53 3.................... 54 3....................................29 End of Subprogram M99 ..2...................................3 Application ...........................................................................................22 Deactivate Coolant M09 ..................2....................... 58 4.................18 Deactivate spindle M05 .................4 Cutter radius compensation..................4 high-speed peck drilling cycle G73.........2............................. 52 3.......................................................................2............................................... 91 5.................26 Activate Feedrate Override dial M48 .......................

...... 112 5........10 matrix maching macro P9200 ............ 108 5......................................................................................................................................3......................................................... 147 5........ 141 5..................1....................................... 167 7 Workshop-Oriented Programming ................................................... spot drilling cycle G81.......16 A program example FANUC 16M with explanations. 104 5.................................2 Survey ........1 Purpose.........................................7 drilling cycle................................ 124 5.............. 163 6.............................................................................................162 6............2.....................................................................................2..........................9 peck drilling cycle G83 .........................................3 Macros............................2......9 positioning on arc macro P9190.............................................10 tapping cycle G84............................................................................................... 102 5.................................................2............. 116 5............................................3........... 181 © MTS GmbH • Berlin 5 .2.. 141 5....................................3 Exercise 1 : counter-form ..............................3................................................................................ 145 5.......... 159 6 Subprogram technology....4 Exercise 2 : stamping ............................1........................2.......................................... 170 7........ 156 5................................................2..........2. 144 5................ 151 5..............................3..................................................................................................................................................8 drilling cycle.. 120 5.............................................................................................. function and use of subprograms of a CNC milling machine............ 132 5.3................................11 boring cycle (reaming) G85 ........2...................4 finishing inside of circle macro P9110....... 169 7...................6 finish cutting inside of square macro P9130 ................................................3 Nesting several subprograms........................................ 136 5.............. counterboring cycle G82 .......................... 149 5........................................14 boring cycle G88 .......................6 fine boring cycle G76.............................................................................1 Definition ..................................................................................2 End of Subprogram M99 ..................3............ Contents 5.. 130 5...........1 Introduction........2 Subprograms with incremental or absolute input value................................................. 177 7......... 162 6..................................................................................................................................... 128 5............................2...................................................................................2 Example:. 153 5.........................................3............................................................................................................................. 162 6..........3..........................2.....................3....................15 boring cycle with dwell time (reaming) G89................................................................................1 Subprogram Call M98 ......169 7.................................................................................................................7 deep cutting of square pocket macro P9140 ..................................................................3..........................................................................................................13 boring cycle / back boring cycle G87..................................8 bolt hole circle macro P9180........................................................12 boring cycle with retraction in rapid traverse G86 ...............3 Application............. 162 6............5 deep cutting of circular pocket macro P9120.................... 143 5...........

.

• a monitor. You select all pro- gram functions with the function keys and enter machine commands and NC program blocks as sequences of digits and letters. A mouse can be used to activate the function keys. The minimum hardware requirement for a single CNC Simulator workplace is: • a personal computer with a hard disk and diskette drive. The CNC Simulator can be used with the input media keyboard and mouse. CNC symbols and other icons can be displayed.program listings Figure 1 The hardware for the CNC Simulator workplace. A PC keyboard is basically all you need to use the CNC Simulator.1 System overview In the first chapter you find a general overview of the system configuration. Main menu. Function keys with text notes for the processing options available as an alternative to text labels on the function keys. This can be supplemented by a printer for hardcopies and NC. Figure 2 CNC Turning. • a PC keyboard and additionally • a mouse. Introduction into working with the CNC simulator milling 1 Introduction into working with the CNC simulator milling 1. The function keys displayed on the screen are usually labeled with a short text indicating the subsequent editing steps. © MTS GmbH • Berlin 7 .

1. so the machine table and the work part have a fixed position and the tool moves in all three coordinates. tool moves in Y Machine zero table moves in X and Z Reference point Turret reference point Tool reference point Workpiece Zero Tool change point Figure 3 Schematic of the machine configuration In the MAKINO CNC Milling machine the tool moves in Y. In the actual configuration we use 16 tools.and Z-direction and the machine table moves in X- direction. • magnetic plate·or • modular clamping. The work part can be clamped by using:· • jaws.1 CNC milling machine The CNC Milling Simulator simulates a 3-axis milling machine with vertical spindle position. 8 MTS TeachWare • CNC-Milling • Student’s Book . In the CNC simulation all positioning and feed movements appear to be made by the tool carrier.Chapter 1 1. Figure 4 Figure 5 jaws modular clamping The magazine holds may up to 99 tool positions (pockets) in which the tools are inserted from the tool man- ager.

Introduction into working with the CNC simulator milling The following tool types are available in the Tool Manager: End mills Face milling cutters Reamers Step drills Slot milling tools Radius cutters Taps Core drills T-slot cutters Corner tool (Type A) Drills Concave type cutters Shell end mills Corner tool (Type B) Insert tip drills Side milling tools © MTS GmbH • Berlin 9 .

The entire machine tool space with work part. etc. Figure 6 Menu of MTS programs It is also possible to generate NC-programs for different CNC-controls by reconfiguring the CNC-simulator.1. tool system.3 Collision monitoring Reality-oriented simulation of machining processes is based on the fact that the CNC Simulators function like the actual machine tools in the workshop : During work part machining.1.Chapter 1 1. These can be done in an advanced training phase. with a tolerance range of about 0. fixtures.2 CNC control The standard configuration for the CNC simulator is the control FANUC 16 M FX 650. As the simulation can be performed for different tool qualities and materials etc. the error and collision monitoring function does not check the programmed feedrate or revolution speed.5 mm. collision monitoring is performed and the results are displayed as error mes- sages. 10 MTS TeachWare • CNC-Milling • Student’s Book . During machining the internal model computes the actually resulting work part contour using the programmed tool paths during program execution. 1.. is taken into account.

Figure 7 CNC Milling. This configuration means that the magazine is automatically equipped with this tool selection each time the simulator system is booted. • selection of a clamping device. such as • definition of the blank.2 Operating modes The CNC Simulator for Milling represents a 3D-milling machine with vertical spindle position. so that the offset can be computed in the control system. after program start or after any change in the allocation of tools the applicable offset values must be speci- fied.1 Setup mode In the set-up mode (or manual mode) all necessary preparatory activities can be carried out. Therefore. 1. Setup Mode menu The Simulator for Milling provides 16 tools in the magazine. Invoking this NC program will then effect the automatic set-up of the appropriate simulated machine tool. as a rule. so as to simulate the equipment of an actual machine tool. • moving to the reference point and • touching the work part to define the zero point. Blank dimensions must be specified and the clamping device be selected. The procedure of manually setting up the blank and the chuck is carried out with the help of a special interac- tive menu. Tools from the tool file can be mounted in all tool positions (from T01 to T16) as default setting. © MTS GmbH • Berlin 11 .2. Once a machine status has been defined in this way. • Programming Mode and the • NC Programming. Introduction into working with the CNC simulator milling 1. • selection of tools. • specifying tool compensation values. A total of 99 offset value storage files are available. it can be registered in a “set-up form” which is assigned to a NC program. The following three modes can be used for processing: • Setup Mode. Only tools previously defined can be employed for machining in the CNC Simulators.

Approach of the reference point is also a precondition for defining the work part zero and for execution of NC programs in the Automatic Mode.Chapter 1 Figure 8 Simulator for Milling. Setting the work part zero is possible in any position by “zeroing” the coordinates. the approach of the reference point is indispensable in the CNC Simulators. Set of Tools in the Magazine As with the set-up of the actual machine tool. it serves to establish the zero position for incremental measuring along the axes. 12 MTS TeachWare • CNC-Milling • Student’s Book . Usually this will be effected by touching the work part.

It has a special programming interface for NC blocks and checks the syntax (the formal structure of the NC block) as the block is being entered. NC Editor. • Teach In and • Workshop-Oriented Programming (WOP). funct.2. and with their clear layout and error mes- sages they all offer user guidance during program generation. • Interactive Programming. Figure 9 CNC Simulator. An Editor is available for direct input of NC blocks. proces. Input field File information Available program files Figure 10 CNC Simulator. NC Editor The NC Editor is equipped with a NC-Program Management to delete and print NC programs. Program Management © MTS GmbH • Berlin 13 . Introduction into working with the CNC simulator milling 1.2 Programming Mode The Programming Mode provides four ways of generating an NC program: • Editor. Directory path Cur. Each of these modes is designed to meet specific requirements.

Figure 11 WOP Interface. As in Setup Mode.Chapter 1 Interactive Programming is a feature in which the Automatic Mode and Editor complement each other to provide the simplest and most efficient way to get started with NC programming. The simulation follows step by step the creation of an NC program . the editor and the interactive programming function have a dialogue-driven WOP Interface. To make it easy to program even complex contours. the work part is ma- chined manually and the corresponding linear travel commands complying with ISO6983 are generated and automatically inserted in the NC program. including collision monitoring. A special form of interactive programming is the Teach-In function. The inputs are supported by a user guidance system with explanatory graphics. CNC Milling: 14 MTS TeachWare • CNC-Milling • Student’s Book .

Figure 12 Example of an Automatic Mode menu Since the simulations can be run with different tool qualities and work part materials. etc. and the calculation of machining cycles and downtimes. Therefore an individual check before transferring an NC program to a CNC control system is necessary.3 Automatic mode The automatic mode is used to run and test programs created by the CNC Simulator. as well as the option to add certain supplementary functions. You have the choice between different simulation modes. in real-time simulation under consideration of collision monitor- ing. such as a flying change. the INCAD CAM sys- tem or some other NC-Programming system. the programmed feed rates and rpm values are not subject to error and collision monitoring. traverse path monitoring.. 3D-view. such as zooming (CNC turning).2. the program evaluation takes place under conditions highly identical with the actual work part machining opera- tions. measuring. © MTS GmbH • Berlin 15 . Since the machine and control configuration of the simulator allows a reality-identical performance of the machine tool in terms of geometrical and technological parameters as well as those of the CNC control. Introduction into working with the CNC simulator milling 1.

+ 16 MTS TeachWare • CNC-Milling • Student’s Book .1 System start When you switch on your PC. the menu (see figure) appears with the choice of the MTS-Software available in your system. Then run the CNC Simulator by entering the command "MTSCNC": cd \MTSCNC Change directory Confirm mtscnc Start program Confirm Figure 13 Example of the DOS commands for starting the CNC Simulator Once you have launched the program. creating and testing the NC program in Automatic Mode.3. etc. 1. we first want to discuss the screen display and menu operations in general.Chapter 1 1. To run the MTS software. Use the key combination Strg to terminate the program and return to the main MTS program menu. the MS-DOS operating system prompt indicates the current drive.. Figure 14 Menu of MTS programs The highlighted rectangular boxes under "Machine" and "Control" indicate the currently selected configuration files. Select the desired program by pressing a function key.3 Screen representation and manipulation Before we explain the functional operations such as setting up the machine tool. first change to the drive and directory where the MTS programs are stored. F2 The function key F2 launch the CNC Milling Simulators F8 The function key F8 starts the exit procedure.

no information is shown. Information Column The right column contains text information on necessary machining information. After starting an NC program the current NC blocks are shown on the upper line. In other operating functions this screen window always contains a graphical representation of the current work situation. therefore.3. In Setup Mode and Automatic Mode this column contains information on the current machine and system status like feedrate. work part and tool. • cutting speed. It contains the information you need in your current work situation. In the Main Menu none of the modes are active. This applies to the Main Menu and to Setup and Automatic Mode. Function keys The numbered boxes at the bottom of the screen indicate the program functions that can be selected with the function keys during processing. • coolant and spindle engine status etc. with work part machining displayed graphically and dynamically in the work space window and the necessary text information in the "Information Column" beside it. feedrate. Introduction into working with the CNC simulator milling 1. including clamping devices. The bottom line is reserved for error messages. • spindle speed. revolution speed • current tool coordinates.2 Screen representation The screen representation of CNC machining is generally divided into three areas. active tool and compensation register. Figure 15 Screen Layout Work range The upper part of the screen shows a graphic representation of the working area of the CNC machine tool. The two lines above the function keys are reserved for the program dialogue. The milling simulation displays the work part and the cutter in top view. © MTS GmbH • Berlin 17 .

3 Menu structure All program control options of the CNC Simulator are given as context-sensitive menu items. This menu concept of the CNC Simulator is based on the WOP operating concept ("Workshop-Oriented Programming"). 18 MTS TeachWare • CNC-Milling • Student’s Book . The only disadvantage of the WOP operating concept is. On the other hand you can benefit from this operating concept because you are able to make use of the operating functions without prior knowledge. If in doubt. however. But as the available options are shown in each work situa- tion. since the work sequences are structured functionally and most of the menus are self-explanatory. with important procedural steps supported by program dialogues. NC-Programmanage. NC-Editor WOP-Surface Editor WOP-Surface Interactive Programming Teach in Automatic mode WOP-Surface Automatic mode Single block Traverse Paths Chuck Chuck management Part / Chuck Workpiece file Tool Holder Magazine Tool Management Tool Adapter CNC-Simulator Setup Mode Reference Points Feedrate / Speed Spindle / Coolant Manual Treating Setup form Status management Figure 16 Schematic of the processing options of the CNC Milling Simulator (simplified). the fact that with increasing functionality the number of submenus correspondingly grows. which was developed in Germany for CNC- Controllers. return to your starting point by pressing F8 or ESC .3.Chapter 1 1. the function keys at the bottom of the screen give you guidance all the time.

• Saving current editing progress. the field currently in use is highlighted in color. • Clamping Fixture Manager. and allows all common tools to be defined.4 Data management The internal data management functions provide a convenient means for documenting and backing up all work results. Create Tool/Tool Adapter: To generate a new tool of the current tool type. • Generating various set-up sheets and • Managing configuration files. Example: The CNC Simulator has its own tool management function. Main Menu. to define a new tool adapter. use F5 . The program provides almost all ISO tool types and tools as standard options. • Saving created work parts. select F1 or F5 F1 . These functions include: • NC Program Manager. The screen layout of the Define/Delete Tools main menu is divided into two sections: the upper screen area contains a listing of all available tool types. further steps for specifying or editing tool data are indicated on the function keys at the bottom of the screen. • Tool Manager.e. Figure 17 CNC Milling. Select the desired step only by pressing the function keys rather than with the mouse. Naturally. As usual. the tool man- agement includes options for editing the available tool files.3. Define/Delete Tools. F8 or ESC Return: Use F8 or ESC to conclude the current operation © MTS GmbH • Berlin 19 . modification of existing tools and deletion of those no longer required. i. or Use the cursor keys or to select the tool type. Introduction into working with the CNC simulator milling 1.

Chapter 1

Having started in the main menu by selecting the tool type, and subsequently selecting the Create Tool func-
tion by pressing F1 , the Data Entry menu for defining the tool is loaded.

Figure 18
CNC Milling, Define/Delete Tools; defining a slot cutter.

The screen layout of the Data Entry menu is divided into three areas: the window on the left contains either a
help graphic or a graphic corresponding to the data of the tool being defined (including the tool adapter). The
input fields for the complete data record are located on the right.

You define a tool by manually entering the geometrical data, as well as the tool name and rotation direction.
The desired tool adapter data can be automatically copied by selecting the Select Tool Adapter function. To
save time, it is reasonable to define a new tool by first copying the data record of a similar tool, and then to
modify the data to meet your requirements.

Use the key to move from input field to input field.

or Use the cursor keys or to move the cursor within the input field.

INS or Use the key INS
to insert a character, and the key to delete one.

If you confirm the entry in the input field with the key, the cursor moves auto-
matically to the next input field.

[Tool Name] [Tool Name] Enter the tool name or number in this input field.

[Parameter] The entries required for a tool depend on the tool type. Use the help graphics to obtain in-
formation on the parameters.

F8 Create tool: When the data entry for all tool and tool adapter parameters has been com-
pleted, you save the tool under a certain name by pressing F8 .

ESC ESC
Use to conclude the operation, and to return to the Define/Delete Tools main menu.

20 MTS TeachWare • CNC-Milling • Student’s Book

Introduction into working with the CNC simulator milling

1.4 Special functions of the software
The CNC Simulator incorporates some special functions which effectively support processing and NC pro-
gramming:
• 3D representation
• Programming aids for ISO commands
• Setting-up automatics, set-up sheet
• Status management

1.4.1 3D representation
A function supporting CNC training is given by the option to display, at any time, 3D Views of the work part,
seen from different viewing angles. The program features 3D displays in Milling Simulators. To display ma-
chining inside the work part, any work part quadrants can be cut out.

Figure 19
CNC Milling,3D View, three-quarter view with intersections

Figure 20
CNC Milling, 3D Display, full part with intersections

© MTS GmbH • Berlin 21

Chapter 1

1.4.2 Programming aids
Whenever you need assistance or have a question during the creation or testing of an NC program, you can
call for help. The available help functions provide basic ISO-based NC programming information.

The programming aids and control information are available in the form of "help screens", and are directly
displayed in the graphic window on the monitor. As a rule, they contain a short informative text, a context-
based graphic display, and an application example referring to the subject.

Based on subject matter, the help screens are divided into groups; for better orientation, each group is pre-
ceded by a table of contents or a schematic function display. In this manner, you have almost the entire set of
programming instructions available, without having to interrupt programming.

Figure 21
CNC Milling, Programming Aid for clockwise circular interpolation

Accessing the Programming Aids is possible from almost all working situations within the CNC Simulator; the
<?> key is used for this purpose during:
• Setup Mode,
• Automatic Mode,
• Interactive Programming, and·
• Teach-In Programming.

Since the "?" (question mark) character may be used in NC programming comment texts, the F6 function
key is used for calling help functions while working with the Editor or Interactive Programming.

Subsequently you enter the name of the help screen (for example „G02“) in the dialogue line. The corre-
sponding program message is displayed, "Help screen: _______“

Confirm the name entry by pressing . If a help screen with that name is avail-
able, it is then loaded. If not, the error message: "Help screen not found" is dis-
played.

Strg and You can use the Strg
+ keys on the PC keyboard to recall the previous help
screen.

22 MTS TeachWare • CNC-Milling • Student’s Book

This information includes: • blank/work part geometry • clamping fixture and method • tool in working position and magazine configuration • offset values of the tools used A Set-up Sheet can be created for every current machine tool situation. To have a machine tool status loaded automatically during the CNC Simulator start. Figure 22 CNC Milling.4. example of a Set-up Sheet (excerpt) © MTS GmbH • Berlin 23 . The CNC Simulator is then set-up automatically. This sheet is used by the MTS-Software for an automatic set-up of the simulated machine tool when starting an NC program. F4 Automatic Setup: this function is activated by pressing the function key F4 from the main menu. Introduction into working with the CNC simulator milling 1. set-up sheet A Set-up Sheet contains all the information needed to set-up the machine by the operator.3 Setting-up automatics. It is prefixed to the NC program for which the set-up sheet was created. Set-up Sheet menu Figure 23 CNC Milling. you can specify the Set- up Sheet describing that status in the configuration. but the Set-up Sheet Interpreter must be active. During the NC program load in Automatic Mode or for interactive pro- gramming the CNC Simulator is set-up automatically with the Setup Sheet Interpreter according to the stored information.

the Status Manager saves time. however. compensation values and current working tool • current technology values The machining of work parts can thus be interrupted and resumed at a later time. The editing status in- cludes: • exact work part geometry • clamping method • magazine configuration. Figure 24 CNC Milling.Chapter 1 1.4 Status management In addition to the Set-up Sheet function. F6 Status: the Status Manager is activated by pressing the function key F6 from the main menu of the CNC Simulator. With the difference.4. or it can be done in sec- tions without having to repeat previous operation steps. to facilitate the operation of the software. the CNC Simulator also allows you to save any editing status as a "Status File" and to load it again later on. 24 MTS TeachWare • CNC-Milling • Student’s Book . File Selection window with existing status files Like the Set-up Sheet. that a processing status usually also includes the work part machining steps stored in an NC program. we recommend to save the current status always together with the reference to the NC program. To keep your system well- organized. Status Manager Figure 25 CNC Milling.

© MTS GmbH • Berlin 25 . The point of origin for this machine coordinate system. The machine coordinate system does not change neither by changing the work part coordinate system nor by setting a local coordinate system nor by programming other commands or actions at the machine. also called machine zero point M.1 Machine coordinate system The machine coordinate system of the CNC machine tool is defined by the manufacturer and cannot be changed. • work part coordinate system and • local coordinate system which are subsequently described. Coordinate systems and Zero point shifts 2 Coordinate systems and Zero point shifts For programming it is possible to use three different kinds of coordinate systems such as • machine coordinate system. 2. cannot be shifted in its location Z Y M X Machine zero point M After turning on the control the machine coordinate system can be activated by moving to the reference point.

Oth- erwise the command G53 has no effect and the last programmed work part coordinate system (G54-G59) is active. Y250.1 Activating the machine coordinate system The machine coordinate system can be activated by manually moving to the reference point.2 Select the Machine coordinate system G53 When the command G53 is programmed all coordinate values relate to the machine zero point. 2. Please check the operation manual of your machine for the necessary operating steps. for example the tool changing position. Note: Cancel the cutter radius compensation. the tool length compensation and the offset values before programming the command G53.Chapter 2 2. N15 G90 G00 X80.1. Z132. P3 The command G53 is used for moving to a special declared position in the machine coordinate system. P2 N25 G00 X65. Another possibility is to first program the command G28 (Automatic Reference Point Return) in your NC pro- gram (see chapter Going to the reference point G28). Example: To move to the reference point press the key and the Start key together. P1 Z Z Y Y P1 50 P2 P3 X 132 50 0 25 X 435 N20 G53 X465. Z0. Programming Example: N10 G54 X435. Y60.1. 26 MTS TeachWare • CNC-Milling • Student’s Book . Y280. The com- mand G53 is valid only in the same programmed block and in the absolute dimensioning system (G90). Y10.

Coordinate systems and Zero point shifts

2.2 Work part coordinate system
After the set-up has been completed, the control system of the machine tool refers to the machine zero as
the predefined origin of the coordinate system.
When programming tool motions, however, the work part coordinate system is used. The work part coordi-
nate system is defined by the programmer and can be changed. The location of the point of origin for the
work part coordinate system, also called work part zero point W, can be, in general, specified as desired.

Z
Y
W X

Work part zero point W

The zero point of the coordinate system is preferably placed on the outer edge of the work part. For more
easier calculation of the points needed for programming the outer edges of the upper area or the lower area
are be preferred.

Z
Y

X

Work part zero point in the left upper outer edge Work part zero point in the left lower outer edge

© MTS GmbH • Berlin 27

Chapter 2

2.2.1 Define the work part coordinate system
The work part coordinate system may be defined by two different methods:
1. with the command G92, or
2. with the command G54 - G59.
1. In the NC program the command G92 serves to define the coordinates X, Y and Z of the work part
zero point relative to the momentary tool position.

2. In the CNC control six different work part coordinate systems (G54 - G59) may be predefined. In the
NC program the desired work part coordinate system can be selected by the commands G54 - G59.

2.2.2 Setting the work part coordinate system with the command G92

Command: G92
Work part coordinate system G92
Function: A new work part coordinate system is set with the command G92
NC-Block: G92 [X...] [Y...] [Z...]
Optional Addresses: X X-Coordinate of the Work part coordinate system relative to the tool position
Y Y-Coordinate of the Work part coordinate system relative to the tool position
Z Z-Coordinate of the Work part coordinate system relative to the tool position
The coordinates following the G92 command specify the coordinates of the
momentary tool position in the new work part coordinate system !

Programming example: G92 X0. Y0. Z0.

The command G92 sets a new work part zero point relative to the momentary tool position in the active
NC-program.

Note: The programming values in the addresses X, Y or Z are not the coordinates of the
new work part coordinate system !
They are the coordinates of the momentary tool position in the new work part coor-
dinate system!
Before moving in the axis specify the G92 command.
If the command G92 is programmed while using G54 - G59, all coordinate systems
are modified by G92.

28 MTS TeachWare • CNC-Milling • Student’s Book

Coordinate systems and Zero point shifts

Command: G92
Work part coordinate system G92
Function: A new work part coordinate system is set with the command G92
NC-Block: G92 [X...] [Y...] [Z...]
Optional Addresses: X X-Coordinate of the Work part coordinate system relative to the tool position
Y Y-Coordinate of the Work part coordinate system relative to the tool position
Z Z-Coordinate of the Work part coordinate system relative to the tool position
The coordinates following the G92 command specify the coordinates of the
momentary tool position in the new work part coordinate system !

Programming Example

1 Y The momentary tool position is the left front upper
Z corner of the work part (see left figure).

G90 G92 X0. Y0. Z0.

The zero point of the new work part coordinate sys-
tem is the momentary tool position.
X
(The coordinates after the command G92 specify the
W coordinates of the tool position in the new work part
coordinate system!)
2 Y
30
Z
The momentary tool position is the left front upper
corner of the work part (see left figure).
40

50
70

X
W

Y Next block of the NC program:
Z G90 G92 X-50. Y-70. Z0.

W The zero point of the new work part coordinate sys-
tem is +50mm in the X-Axis and + 70mm in Y-Axis
50 from the momentary tool position.
70

X (The coordinates after the command G92 specify the
coordinates of the tool position in the new work part
coordinate system!)

Z Y All coordinate values following the G92 command
30 refer to the new work part coordinate system.

W N100 G90 G92 X-50. Y-70. Z0.
40

X
N110 ...
N150 G00 X30. Y40. Z2.
N155 G01 Z10. F100.
N160 ...

© MTS GmbH • Berlin 29

Each stored zero point will be activated with the corresponding command (G54 . Exercise: Create an NC-program for the following plate with respect to the newly defined work part zero points.G59 Six different work part coordinate systems can be used. Use the following configuration: CONFIGURATION MACHINE MAKINO FX 650 CONTROL FANUC 16M FX650 BLANK DIMENSIONS X+140. The value and the direction of this distance may be stored into the NC control. Note: Coordinate values of all zero points always relate to the machine zero point. for example.Chapter 2 2.000 SHIFT V+000.000 Z+025.3 Setting the work part coordinate system with the commands G54 . The coordinates of the respective zero point may measured as the distance between the reference point of the work part and the machine zero point.G59) in the NC program.000 VISE MAKFX 160 CHUCKED HEIGHT E+031. to program complex or repetitive con- tours.000 Y+125.000 ORIENTATION A0° 30 MTS TeachWare • CNC-Milling • Student’s Book .2.

Coordinate systems and Zero point shifts Solution: work part coordinate systems $G54 X400 Y240 Z135 $G55 X435 Y305 Z135 $G56 X415 Y265 Z135 $G57 X495 Y332 Z135 Program 02905 N010 G54 N015 G90 G49 G80 G40 G17 G21 N020 G91 G28 Z0 N025 G91 G28 X0 Y0 N030 T1 M6 N035 G90 S1800 M3 N040 G0 G43 Z20 H17 N045 G56 N050 G0 X0 Y0 M8 N055 G91 N060 G98 G73 Z-17 R-38 Q6 F80 L0 N065 M98 P905 N070 G55 N075 G0 X0 Y0 M8 N080 G91 N085 G98 G83 Z-17 R-38 Q6 F80 L0 N090 M98 P906 © MTS GmbH • Berlin 31 .

Chapter 2 N095 G57 N100 G0 X0 Y0 M8 N105 G91 N110 G98 G82 Z-17 R-38 P2000 F80 L0 N115 M98 P907 N120 G53 N125 G54 N130 G0 Z20 M5 N135 G91 G28 Z0 M9 N140 G91 G28 X0 Y0 N145 G90 G49 G80 G40 N150 M30 Subprograms 0905 0906 0907 N10 G91 G99 X0 Y0 N10 G91 G99 X0 Y0 N010 G91 G99 X20 Y0 N15 X20 N15 Y15 N015 X-20 Y20 N20 X20 N20 Y15 N020 X-20 Y-20 N25 X20 N25 G98 Y15 N025 G98 X20 Y-20 N30 G98 X20 N30 G90 G80 N030 G90 G80 N35 G90 G80 N35 M99 N035 M99 N40 M99 Finished part: 32 MTS TeachWare • CNC-Milling • Student’s Book .

The zero setting tool is clamped and the spindle rotation is switched on. With the operations described below the distance is specified between the machine zero point M and the work part zero point W in the three coordinates X. 1. Now the tool is recessed in Z direction to the work part surface (X. Z For milling. Its location is speci- fied by the programmer according to practical criteria. until a small marking is done on the work part (touching the work part) surface. Resetting Z direction Y The machine table with the clamped work part is moved below the work spindle (in X and Y) in which Z the reset tool is clamped. the outer corner point is chosen as the Y work part zero point in most cases. Y plane). These values are then entered into the CNC control. Coordinate systems and Zero point shifts 2. Procedure Starting situation: The work part is adjusted and firmly clamped in the machine table. All tools are gauged to each other. The ideal location of the work part zero point allows the programmer to take the dimensions directly from the drawing. Resetting in Z © MTS GmbH • Berlin 33 . Y and Z. with the spindle switched on. X Work part zero point The work part zero point is set with reference to the machine zero point M.3 Specifying the necessary location of the work part zero point The work part zero point W is the origin of the work part-referenced coordinate system. depending on the fact which corner point is selected as the refer- ence point when dimensioning the work part. W X After this the Z axis is reset and the Z value of the work part zero point W is transferred and stored into the CNC control using the IST key. The corresponding correction values were entered into the CNC control.

as the center point coordinates of the tool are always used in NC W programming. With the spindle switched on. Resetting in X 3. for instance. Z plane) in X direction until a small Y marking is made on the work part surface (touching Z 2 the work part). for in- stance. Z Plane) until a small marking Z is done on the work part surface (touching the work part). a radius of 15 mm then the value Y= -15 is entered into the CNC control and confirmed with IST. With the spindle switched on it is taken onto the side surface of the work part (Y. Resetting in Y direction The last step is to take the tool to the resetting po- sition for the Y axis. 1 Y the tool is taken into Y direction. then the value X= -15 is entered into the NC control and confirmed with IST. Resetting in Y 34 MTS TeachWare • CNC-Milling • Student’s Book . X If the milling tool of the adjacent figure has. a radius of 15 mm.Chapter 2 2. If the tool of the adjacent figure has. Resetting in X direction 1 The tool is removed again and taken into the new resetting position for the X axis. to the front surface of the work part (X. 2 When touching the work part in Y the radius of the 3 applied tool has to be considered when entering the W value for the IST value take-over as in NC pro- gramming the center point coordinates of the tool X are always used. When touching the work part in X axis the radius of the applied tool has to be considered when con- firming the value with the IST key.

Call CNC milling in the main menu.Z direction ) Einfg Entf © MTS GmbH • Berlin 35 .Y direction ) 1 2 3 8 -Y Ende Bild ( + Z direction ) -Z 2 0 . Setting the zero point in Z direction Using the numeric keyboard press the corre- Take the tool in rapid speed to a position ap. confirm. F3 (set-up mode) 3. Ex. ( . Please note that only the tool moves in the MTS simulator! Starting situation: Z Y • All machining tools are dimensioned and available in the magazine. 5mm above the work part surface. Y Z W X Further travel direction options: +Z +Y 6 ( + X direction ) 7 8 9 4 Pos 1 Bild ( . • The location of the work part zero point should be the left top corner of the work W part. Switch on the spindle in clockwise rotation.X direction ) -X +X 9 4 5 6 Bild ( + Y direction ) 1 Ende ( . • The work part is adjusted and clamped on the machine table in the simulator. Coordinate systems and Zero point shifts Setting the work part zero point W in the CNC simulator Using the below described operation steps the distance between the machine zero point M and the work part zero point W in the three coordinates X. 4. Y and Z is defined.: + 2 for rapid speed in -Z direction. F2 (milling) 2. X Work part zero point Description Entry 1. Type "M03“ using the keyboard and confirm. Change the tool to define the work part zero Type "T0202“ using the keyboard and point. 5. sponding arrow key together with the shift key: prox. Select the set-up mode.

together with the shift key: 1 1) in -X direction Y + 4 for rapid speed in -X direction Z 2 2) in -Z direction + 2 for rapid speed in -Z direction W X 36 MTS TeachWare • CNC-Milling • Student’s Book . F4 (tool/ datum) F4 (set datum) F3 (set Z coord. 9.) Type in the data on the keyboard „0“ and F8 confirm it.1mm or F3 (technology) 0. Check Z by setting the zero point and using the displayed coordinate values. F5 (increment) F2 (increment 0. Switch the increment from 1mm to 0.Chapter 2 6. Set the work part zero point in Z. Take the tool in rapid speed to the new zero Press the corresponding arrow key on the setting position approx.1) 7 Move the tool in negative Z direction until it Press the arrow key on the numeric keyboard touches the surface of the work part. 2 Then press ESC and F8 (quit). 5mm off the side sur. Setting the zero point in X direction Using the numeric keyboard press the arrow Withdraw the tool in +Z direction. key together with the shift key: + 8 for rapid speed in +Z direction 10. numeric keyboard face.01mm for further machining. 8.

touches the surface of the work part. 13. 5mm off the front side. F1 (set X coordinate) stance -10. Using the numeric keyboard press the corre- ting position approx. enter for the X coordinate the negative value of the radius of the applied tool. + 4 for rapid speed in -X direction then + 8 for rapid speed in +Z direction. Setting the zero point in Y direction Using the numeric keyboard press the arrow Take off the tool in -X direction and then in +Z key together with the shift key: direction. sponding arrow key together with the shift key: 1 Y 1) in +X direction Z + 6 for rapid speed in +X direction 2) in -Y direction 2 1 for rapid speed in -Y direction 3 + Ende W 3) in -Z direction X + 2 for rapid speed in -Z 15. 14. touches the surface of the work part. Type "-10“ using the keyboard and confirm. 12. Coordinate systems and Zero point shifts 11. 6 Then press ESC and F8 (return). for in. Set the work part zero point in X. Take the tool in rapid speed to the new reset. Move the tool in positive X direction until it Press the arrow key on the numeric keyboard. Take the tool in positive Y direction until it Press the arrow key on the numeric keyboard. zero point) Please note the tool radius! F4 (set datum) So. 9 Bild Then press ESC and F8 (quit). F4 (tool. F8 Check the X by setting the zero point using the displayed coordinate values. © MTS GmbH • Berlin 37 .

note the tool radius! F4 (set datum) So. F8 (quit) 19.) Type "-10“ using the keyboard and confirm F8 key. enter for the Y coordinate the negative value of the radius. for instance -10. use the numeric keyboard and press the arrow tion. Withdraw the tool in -Y and then in +Z direc. F8 (quit) 38 MTS TeachWare • CNC-Milling • Student’s Book . key together with the shift key: 1 for rapid speed in -Y direction. Check the Y by setting the zero point using the displayed coordinate values. then + Ende + 8 for rapid speed in +Z 18. Quit the set-up mode menu.Chapter 2 16. F4 (tool/datum) Please. Set the work part zero point in Y. 17. F2 (set Y coord.

NC commands for programming „FANUC 16 M“

3 NC commands for programming „FANUC 16 M“

3.1 Absolute value input and incremental value input G90/G91

Command: G90
Activate Absolute Dimensions
Function: When the command G90 is programmed, all subsequent coordinate values relate
to the work part zero. The target position, to which the tool shall move, is pro-
grammed in absolute coordinates, regardless of the current tool position.
NC-Block: G90

Absolute Dimensioning:

In the absolute system all dimensions refer
to the origin (zero point) of the coordinate
system, which is also called the dimen-
sioning reference point.

Please note that in the absolute system the target points must be programmed according to their position in
the coordinate system with reference to the origin of that system.

Programming Example
with Absolute Coordinates:

N085 G90
N090 G00 X+30. Y+30. Z+2.
N095 G01 Z-6.
N100 G01 X+110. Y+75.

The absolute coordinate system remains operative until it is deactivated by G91 (activating the incremental
dimensioning).

© MTS GmbH • Berlin 39

Chapter 3

Command: G91
Activate Incremental Dimensions
Function: When the command G91 is programmed, the programmed coordinates of the tar-
get position relate to the actual tool position; i.e. the values (distances) must be
specified by which the tool shall move in the respective axis from the current posi-
tion.
NC-Block: G91

Incremental Dimensioning:

Contrary to the absolute system, the in-
cremental dimensioning system is based
on specifying the distance between a cur-
rent point and its preceding point on an
axis. Because in this system a sequence of
additive dimensions is produced, it is called
incremental.

In the incremental system the coordinate values of the target points must be programmed according to their
position relative to the starting point, with the appropriate positive or negative sign attached.

Programming Example
with Incremental Coordinates:

N085 G00 X+30. Y+30. Z+2.
N090 G91
N095 G01 Z-8.
N100 G01 X+80. Y+45.

The incremental coordinate system remains operative until it is deactivated by G90 (activating the absolute
dimensioning).

40 MTS TeachWare • CNC-Milling • Student’s Book

NC commands for programming „FANUC 16 M“

3.2 Linear Interpolation and Machine Functions

3.2.1 Rapid traverse G00

Command: G00
Rapid traverse
Function: The tool will move at the maximum possible speed to the target position as pro-
grammed by the X- Y- and Z- coordinates. These coordinates may either be pro-
grammed in the absolute system (G90) or in the incremental system (G91).
Note: The FANUC CNC-Control has two possibilities to program values
1) with a decimal point, the input increment is mm, so
X20. represents X20mm or
2) without a decimal point, the input increment is µm, so
X20 represents X0.02mm.
For this reason it is important to program values with a decimal point.

If a tool movement parallel to one or two axes is desired, the respective target coordinate will be identical with
that of the current tool position. It does not have to be programmed separately, since the coordinate address
is self-retentive.

The rapid traverse rate in the G00-command is independently set for each axis by the machine tool manu-
facture. Consequently, the rapid traverse rate cannot be defined in the address F..

Positioning is done separately for each axis. The traveled path is generally not a straight line.

Rapid traverse

The cutter moves from its current position
(starting point) to the programmed target
position (end point).

The programmed feed adjustment Z, relative to the current tool position, determines the order of tool move-
ments in the axes.

• If the infeed is in the positive Z-direction (from the current tool position), the tool will move first in the
Z-axis and subsequently in the X- and Y- direction.
• If the infeed is in the negative Z-direction (from the current tool position), the tool will move first in
the XY plane and then in the Z-direction.

If a tool change or a change of spindle speed have been programmed within the same NC-block, these func-
tions will be executed prior to moving the tool to the target position.

© MTS GmbH • Berlin 41

... Z+2. NC-Block: G00 [X.. Y+65. the input increment is mm.] [T. so X20.and Z.. 42 MTS TeachWare • CNC-Milling • Student’s Book .. Z-10. These coordinates may either be pro- grammed in the absolute system (G90) or in the incremental system (G91).] [Y. so X20 represents X0. Y+65. Programming Example for Incremental Dimensioning: N090 G00 X+30. the input increment is µm.. Z+12. represents X20mm or 2) without a decimal point.] Optional Addresses: X X-Coordinate of the Target Point Y Y-Coordinate of the Target Point Z Z-Coordinate of the Target Point T Tool Function M Additional Function Note: The FANUC CNC-Control has two possibilities to program values 1) with a decimal point.Chapter 3 Command: G00 Rapid traverse Function: The tool will move at the programmed feedrate to the target position as pro- grammed by the X.. Programming Example for Absolute Dimensioning: N090 G00 X+30.02mm.coordinates. For this reason it is important to program values with a decimal point.. Z+12. Y+35.] [M. Y-30.] [Z. N095 G91 N100 G00 X+75. N095 G90 N100 G00 X+105..Y.

the respective target coordinate will be identical with that of the current tool position. a change of the feedrate and/or a change of spindle speed have been programmed within the same NC-block.] [F. so X20 represents X0.Y.. since the coordinate address is self- retentive. the input increment is µm.. For this reason it is important to program values with a decimal point. these commands will be executed prior to moving the tool to the target position. represents X20mm or 2) without a decimal point...] [Y. so X20..2.and Z. © MTS GmbH • Berlin 43 .] [M.] [S.] Optional Addresses: X X-Coordinate of the Target Point Y Y-Coordinate of the Target Point Z Z-Coordinate of the Target Point F Feedrate S Speed T Tool Function M Additional Function Note: The FANUC CNC-Control has two possibilities to program values 1) with a decimal point.] [T. Linear Interpolation in Three Axes The tool moves at the specified feedrate from its current position (starting point) to the programmed target point.....2 Linear Interpolation in Slow Feed Motion G01 Command: G01 Linear Interpolation Function: The tool will move at the programmed feedrate to the target position as pro- grammed by the X..] [Z.coordinates. NC-Block: G [X.02mm... If a tool change. If a tool movement parallel to one or two axes is desired. the input increment is mm. These coordinates may either be pro- grammed in the absolute system (G90) or in the incremental system (G91). NC commands for programming „FANUC 16 M“ 3. It does not have to be programmed...

.] [T.coordinates. These coordinates may either be pro- grammed in the absolute system (G90) or in the incremental system (G91). Y+75..Chapter 3 Command: G01 Linear Interpolation Function: The tool will move at the programmed feedrate to the target position as pro- grammed by the X.. Y+30.. N090 G91 N095 G01 Z-8...] [F. Z+2... N100 G01 X+80. Programming Example for Incremental Dimensioning: N085 G00 X+30.and Z. 44 MTS TeachWare • CNC-Milling • Student’s Book . Y+45... NC-Block: G [X.Y.] [M.] [S... N095 G01 Z-6.] [Y.. Y+30.. N100 G01 X+110. Z+2.] Optional Addresses: X X-Coordinate of the Target Point Y Y-Coordinate of the Target Point Z Z-Coordinate of the Target Point F Feedrate S Speed T Tool Function M Additional Function Programming Example for Absolute Dimensioning: N085 G90 N090 G00 X+30.] [Z.

Y and Z are commanded by the movement dis- of the intermediate point in work coordinate system tance between the present position and the inter- independent of the present position.] [Z. Automatic Reference Point Return Intermediate point The cutter moves from Reference point its present position to the programmed inter- mediate point and finally to the reference point. Both positionings are performed at the rapid traverse rate of each axis. Programming Example Programming Example for Absolute Dimensioning: for Incremental Dimensioning: (The position is X+50 Y+30 Z+2) (The position is X+50 Y+30 Z+2) N085 G54 G90 N085 G91 N090 G28 X+100.. Starting point Generally the command G28 is used for a tool changing.. tool radius compensation must be canceled in principle. Z+100. Y+70. mediate point. These coordinates may either be programmed in the absolute system (G90) or in the incremental system (G91).3 Going to the reference point G28 Command: G28 Automatic Reference Point Return Function: The reference point is a fixed point on the machine.. The function Automatic Refer- ence Point Return enables the tool to move to the reference point.2. • Cancel tool length compensation in the block which follows the G28 command block.. Y+100. X. If the Automatic Reference Point Return has been activated for a program part. NC-Block: G28 [X. Y and Z are the commands to move to an intermediate point of the reference point return. In the G28 block. Y and Z are commanded by the coordinate value X. N090 G28 X+50. © MTS GmbH • Berlin 45 . (The intermediate point is on X+100 Y+100 Z+100) (The intermediate point is on X+100 Y+100 Z+100) X.. NC commands for programming „FANUC 16 M“ 3.] Optional Addresses: X X-Coordinate of the Intermediate Point Y Y-Coordinate of the Intermediate Point Z Z-Coordinate of the Intermediate Point It is possible to simultaneously command by three axes.] [Y.. the following must be observed: • Before specifying G28. by two axes or only by one axis. Z+98. the specified axis performs positioning at the intermediate point first and then positioning from the intermedi- ate point to the reference point.

Programming Example Programming Example for Absolute Dimensioning: for Incremental Dimensioning: (The position is X+50 Y+30 Z+2) (The position is X+50 Y+30 Z+2) N085 G90 N085 G91 N090 G28 X+100. Z+98... Target point Generally the command G29 is used after a tool changing. the target point. X.] [Z. (The intermediate point is on X+100 Y+100 Z+100) (The intermediate point is on X+100 Y+100 Z+100) N095 T01 N095 T01 N100 G29 X+50. an intermediate point is created in the new coordinate system. Z-98. 46 MTS TeachWare • CNC-Milling • Student’s Book . Y and Z are the commands to move to the target point. Y+100. If the Automatic Return from the Reference Point has been activated for a program part. In G29 X. The coordinates of the intermediate point are used from the last G28 Com- mand. These coordinates may either be programmed in the absolute system (G90) or in the incremental system (G91).2. Z+2..4 Return from the reference point G29 Command: G29 Automatic Return from the Reference Point Function: The function Automatic Return from the Reference Point enables the tool to move from the reference point to the specified position by passing the intermediate point. Y+70. Y and Z are commanded by the move- nate value of the target point in work coordinate ment distance between the intermediate point and system independent of the intermediate point. Y30.Chapter 3 3. NC-Block: G28 [X. the following must be observed: • When the coordinate system is modified after automatic reference point return. Z+100.. Y and Z are commanded by the coordi. In G29 X..] [Y. Y-70. N100 G29 X-50.] Optional Addresses: X X-Coordinate of the Target Point Y Y-Coordinate of the Target Point Z Z-Coordinate of the Target Point Automatic Return from the Reference Point Intermediate point The cutter moves from Reference point the reference point to the intermediate point (programmed in the last G28 command) and fi- nally to the programmed target position. N090 G28 X+50..

 NC-Block:   P . is approached.999 sec..2.5 Dwell time G04 Command: G04 Dwell Function: The tool movement is halted for the specified dwell time. G09 .. the tool motion is resumed and the next contour point. NC-Block: .001 sec to 99999. • Although the addresses P and X can be used. This command must be pro- grammed in a separate NC-block.2. position errors such as lags or overshoots may occur. © MTS GmbH • Berlin 47 .. 3. without interrupting the feed motion.999) P Dwell time in seconds (P1 to P99999999) It is possible to delay a shift to the next block operation by commanding G04.999 • Command the G04 block independently. • The dwell time ranges from 0.. G04   X . use the address P because usually the address X is used for the X-axis movement command...999 sec: G04 P1 to G04 P99999999 G04 X0..e. The dwell time ranges from 0. the G09 command must be programmed. For the programming the following must be observed: • A decimal point cannot be used in the address P.001 to G04 X99999. as programmed in the subsequent NC-block.001 sec to 99999. only in this NC-block the feedrate will be decelerated to zero when the programmed contour point is reached. Optional Addresses: X Dwell time in seconds (X0.. To move the tool with precision to the programmed coordinates. After the standstill at precisely the programmed position. Since NC-programs are executed continuously.6 Exact Stop G09 Command: G09 Exact Stop Function: If G09 is programmed as part of an NC-block. NC commands for programming „FANUC 16 M“ 3.001 to X99999. i.

2. the input increment is inch. the input increment is µm. The G20 command must be programmed in a separate NC-block before setting the coordinate system at the beginning of the program. Note: The FANUC CNC-Control has two possibilities to program values 1) with a decimal point. the input increment is mm.7 Switching to dimension unit inch G20 Command: G20 Inch Data Input Function: This command G20 serves to switch the unit of measurement from millimeters to inches.8 Switching to dimension unit millimeter G21 Command: G21 Millimeter Data Input Function: This command G21 serves to switch the unit of measurement from inches to milli- meters. At the end of each program (M30) the control system will automatically return to the millimeter data input. so X20 represent X0. The G21 command must be programmed in a separate NC-block before setting the coordinate system at the beginning of the program.02 inch. so X20.02mm. 3. Note: The FANUC CNC-Control has two possibilities to program values 1) with a decimal point. 48 MTS TeachWare • CNC-Milling • Student’s Book . For this reason it is important to program values with a decimal point. All coordinate values must be specified in millimeters. the input increment is thousandth inch. All coordinate values must be specified in inches. Accordingly the technol- ogy data concerning the feedrate will be altered from millimeters per minute (mm/min) to inches per minute (in/min).Chapter 3 3. At the end of each program (M30) the control system will automatically return to the millimeter data input. so X20 represent X0. NC-Block: G21 Inches will be the active unit of measurement only until the system is switched back to the millimeter unit.2. For this reason it is important to program values with a decimal point. so X20. represent X20 inch or 2) without a decimal point. represent X20mm or 2) without a decimal point. Accordingly the technology data concerning the feedrate will be altered from inches per minute (in/min) to millimeters per minute (mm/min). NC-Block: G20 Inches will be the active unit of measurement only until the system is switched back to the millimeter unit.

NC-Block: G95 [F....10 Feedrate F in mm per revolution G95 Command: G95 Feedrate F in mm per minute Function: The command G95 serves to program the feedrate per revolution....2.. F must be programmed with a decimal point! Programming Example: N100 G95 F0. the programmed feedrate will be interpreted accordingly in inches per minute. 3. The measuring unit is millimeters.11 Spindle speed S Command: S Spindle speed Function: The spindle speed is programmed in revolutions per minute (RPM). NC-Block: G94 [F.. The unit of measurement is "Millimeters per Minute".2.] Optional Addresses: F Feedrate in mm per revolution.9 Feedrate F in mm per minute G94 Command: G94 Feedrate F in mm per minute Function: The command G94 serves to program the feedrate. F must be programmed with a decimal point! Programming Example: N100 G94 F120. © MTS GmbH • Berlin 49 . Note: If the unit of measurement has been switched from millimeters to inches (see NC- Command G20).2. the programmed feedrate will be interpreted accordingly in inches per minute.. NC-Block: S.. Programming Example: N100 . S1500 .] Optional Addresses: F Feedrate in mm per minute. NC commands for programming „FANUC 16 M“ 3. 3.2 Note: If the unit of measurement has been switched from millimeters to inches (see NC- Command G20).

Note: In one block only one M code can be specified! Specify the command M00 inside a block that the tool does not cut a work part.M00 This function allows the operator to gauge the work part.. If the Optional Stop Switch is off.12 Programmed Stop M00 Command: M00 Programmed Stop Function: After the execution of a block which contains the command M00. remove the chips or to manually change the tool. After the execution of a block which contains the command M01. the command M01 is ignored. the program exe- cution will be stopped. the pro- gram execution will be stopped in the same way as M00. The program can restart by pressing the start push-button.13 Optional Stop M01 Command: M01 Optional Stop Function: If the Optional Stop Switch on the machine operation panel is turned on. Note: In one block only one M code can be specified! Specify the command M01 inside a block so that the tool does not cut a work part. 3. stop temporarily. NC-Block: . all operations.Chapter 3 3.2. for example spindle rotation or coolant.. The program can restart by pressing the start push-button. remove the chips or to manually change the tool..M01 This function allows the operator to gauge the work part. The operation pro- ceeds to the next block.. for example spindle rota- tion or coolant. 50 MTS TeachWare • CNC-Milling • Student’s Book .2. All operations. stop temporarily. NC-Block: .

NC-Block: .2. NC-Block: . The spindle and the coolant pump will be deactivated and the automatic program run is terminated. The command M02 does not preformed the rewind (search of the begin of the pro- gram). NC commands for programming „FANUC 16 M“ 3. This command informs the control system that the current program run has been com- pleted.. However the command M30 performs the rewind (search of the begin of the program).M02 Note: In one block only one M code can be specified! 3.14 Program End M02 Command: M02 Program End Function: This command informs the control system that the current program run has been completed. The spindle and the coolant pump will be deactivated and the automatic program run is terminated.15 Program End with Resetting M30 Command: M30 Program End with Resetting Function: The command M30 has the same function as the command M02.2...M30 Note: In one block only one M code can be specified! © MTS GmbH • Berlin 51 ..

.2. To mount this tool to the workspindle the command M06 must be separately programmed. NC-Block: ..16 Activate spindle in clockwise rotation M03 Command: M03 Activate spindle in clockwise rotation Function: The command M03 activates the spindle rotation in the clockwise direction.clockwise rotation M04 Command: M04 Activate spindle in counter .Chapter 3 3.2.. which is preselected by the tool function T. NC-Block: .clockwise rotation Function: The command M04 activates the spindle rotation in the counter . NC-Block: .M03 Note: In one block only one M code can be specified! 3.M04 Note: In one block only one M code can be specified! 3. 52 MTS TeachWare • CNC-Milling • Student’s Book ..2...M05 Note: In one block only one M code can be specified! 3...19 Mounting a tool M06 Command: M06 Mounting a tool Function: The command M06 mounts a tool.] M06 Optional Addresses: T Tool Function The T-command is only for allocating a specified tool to the tool changing position.clockwise direc- tion.[T..2..18 Deactivate spindle M05 Command: M05 Deactivate spindle Function: The command M05 stops the spindle rotation.17 Activate spindle in counter . NC-Block: .

2. NC commands for programming „FANUC 16 M“ 3. NC-Block: .22 Deactivate Coolant M09 Command: M09 Deactivate Coolant Function: The command M09 deactivates the coolant pump.M07 Note: In one block only one M code can be specified! 3..21 Activate Coolant 2 M08 Command: M08 Activate Coolant 2 Function: The command M08 activates the second coolant pump.2.M08 Note: In one block only one M code can be specified! 3.20 Activate Coolant 1 M07 Command: M07 Activate Coolant 1 Function: The command M07 activate the first coolant pump. NC-Block: .... NC-Block: .2...M09 Note: In one block only one M code can be specified! © MTS GmbH • Berlin 53 .

M23 Note: In one block only one M code can be specified! 54 MTS TeachWare • CNC-Milling • Student’s Book . NC-Block: ... Note: In one block only one M code can be specified! 3. that all moves are in the same direction as the programmed direction.2.24 Mirror in the Y-Axis M22 Command: M22 Mirror in the Y-Axis Function: The command M22 switches the signs of the coordinates of the Y-Axis. Note: In one block only one M code can be specified! 3. It means.. It means. M21 The modal command M21 is active until M23 (Cancel mirror functions) is specified. M22 The modal command M22 is active until M23 (Cancel mirror functions) is specified.2.2..25 Cancel mirror functions M23 Command: M23 Cancel mirror functions Function: The command M23 cancels the mirror functions M21 and M22. NC-Block: . that movements in the Y-Axis are opposite to the programmed direction... that movements in the X-Axis are opposite to the programmed direction.Chapter 3 3. It means. NC-Block: .23 Mirror in the X-Axis M21 Command: M21 Mirror in the X-Axis Function: The command M21 switches the signs of the coordinates of the X-Axis.

M49 Note: In one block only one M code can be specified! © MTS GmbH • Berlin 55 ..M49 Note: In one block only one M code can be specified! 3.. The feedrate override fixes to 100%.26 Activate Feedrate Override dial M48 Command: M48 Activate Feedrate Override dial Function: The command M48 activates the feedrate override dial on the operation panel on the machine.27 Cancel Feedrate Override dial M49 Command: M49 Cancel Feedrate Override dial Function: The command M49 deactivates the feedrate override dial on the operation panel on the machine. NC-Block: . NC commands for programming „FANUC 16 M“ 3..2.2. NC-Block: . The feedrate override can be mounted every 10% from 0% to 200%..

resp. the execution of the main program will be continued from the position in the program line. NC-Block: M99 At the end of each defined subprogram.] [L.Chapter 3 3.. 56 MTS TeachWare • CNC-Milling • Student’s Book .2.] Optional Addresses: P Number of the subprogram L Number of repeated callings Programming Example: N100 M98 P400 L5 (Call the subprogram O400 five times) N100 M98 P400 (Call the subprogram O400 fonce) Note: The Subprogram Call M98 must be programmed in a separate NC-Block..29 End of Subprogram M99 Command: M99 End of Subprogram Function: The command M99 marks the end of a subprogram. After this. where the subprogram has been invocated..28 Subprogram Call M98 Command: M98 Subprogram Call Function: A subprogram called by the command M98 is executed by the control system. NC-Block: M98 [P. to the subprogram from which the current subprogram has been called. 3.2. Note: The Subprogram End M99 must be programmed in a separate NC-Block.. the command M99 must be programmed to cause the control sys- tem to return to the main program.

. G17 ..Plane X Command: G17 Selecting the machining plane G17 Function: The G-commands G17 serve to select the XY machining plane. In the below table the G-commands are listed with their corresponding machining planes and downfeed axes. NC-Block: . Command: G19 Selecting the machining plane G19 Function: The G-commands G19 serve to select the YZ machining plane.. Command: G18 Selecting the machining plane G18 Function: The G-commands G18 serve to select the ZX machining plane.. The respective third axis is the feed axis and therefore also the tool axis. G19 . Interpolation with cutter radius compensation 4 Interpolation with cutter radius compensation 4.Plane Y G19 YZ . NC-Block: . For a 3-axis milling machine with vertical spindle position the standard machining plane is the XY-plane. NC-Block: .. G18 and G19 serve to select a ma- chining plane for circular interpolation.. © MTS GmbH • Berlin 57 .. Z X or Y Z)..1 Selection of machining planes G17-G19 A work part can be machined in each of the three possible planes (X Y.Plane Z G18 ZX . G18 .. The G-commands G17. tool radius compensation. Plane Selection Coordinate Plane Feed Axis (G-Command) (Machining Plane) Tool Axis G17 XY . coordinate rotation or for hole drilling....

.Chapter 4 4. re- gardless of the selected value command system (G90 or G91). These coordinates may either be programmed in the absolute system (G90) or in the incremental system (G91). K Circle Center Incremental (distance between the starting position and the circle center in the Z-direction).2 Circular interpolation Circular interpolations can be moved in two opposite directions... Optional Addresses: X X-Coordinate of the Target Point Y Y-Coordinate of the Target Point Z Z-Coordinate of the Target Point I Circle Center Incremental (distance between the starting position and the circle center in the X-direction).] [Y. F Feedrate The tool will move at the programmed feedrate Y G02 clockwise on a circular arc to the target position as defined by the coordinates in X and Y..... X 58 MTS TeachWare • CNC-Milling • Student’s Book .] [I.... G02 in clockwise direction. NC-Block: G02 [X..]. Y G02 G03 X Directions for Circular Interpolations. 4.. Note: The addresses I. J and K are always programmed in the incremental system.] [K..] [J...1 Circular Interpolation Clockwise G02 Command: G02 Circular Interpolation Clockwise G02 Function: The tool will move clockwise on a circular arc to the target position.] [F.] [Z..2. J Circle Center Incremental (distance between the starting position and the circle center in the Y-direction). or in G03 counter-clockwise direction.

N100 G02 X+95...] [I. © MTS GmbH • Berlin 59 . Y+35. Y+75. I+30.] [Y. N090 G91 N095 G01 Z-7.. I+30...] [K.. Programming Example with Incremental Coordinates: N085 G00 X+55. NC-Block: G02 [X. J+10. J+10... Interpolation with cutter radius compensation Command: G02 Circular Interpolation Clockwise G02 Function: The tool will move clockwise on a circular arc to the target position. Y+35.. Z+2.. Programming Example with Absolute Coordinates: N085 G90 N090 G00 X+55. N100 G02 X+40.... N095 G01 Z-5.] [J. Y+40. Z+2...]. Please note that in the absolute system the target points must be programmed according to their position in the coordinate system with reference to the origin of that system..] [F.] [Z.

re- gardless of the selected value command system (G90 or G91).] [I. Optional Addresses: X X-Coordinate of the Target Point Y Y-Coordinate of the Target Point Z Z-Coordinate of the Target Point I Circle Center Incremental (distance between the starting position and the circle center in the X-direction)..2.2 Circular Interpolation Counter-Clockwise G03 Command: G03 Circular Interpolation Counter-Clockwise G03 Function: The tool will move counter-clockwise on a circular arc to the target position.. F Feedrate The tool will move at the programmed feedrate counter-clockwise on a circular arc to the target Y G03 position as defined by the coordinates in X and Y. J Circle Center Incremental (distance between the starting position and the circle center in the Y-direction). J and K are always programmed in the incremental system. Note: The addresses I..Chapter 4 4...] [Z.] [F..] [J.... 60 MTS TeachWare • CNC-Milling • Student’s Book .....].] [Y...] [K. NC-Block: G03 [X.. K Circle Center Incremental (distance between the starting position and the circle center in the Z-direction). X The coordinates for the target position may either be programmed in the absolute system (G90) or in the incremental system (G91).

N100 G03 X+100. NC-Block: G03 [X. Interpolation with cutter radius compensation Command: G03 Circular Interpolation Counter-Clockwise G03 Function: The tool will move counter-clockwise on a circular arc to the target position. Programming Example with Absolute Coordinates: N085 G90 N090 G00 X+55. © MTS GmbH • Berlin 61 . Programming Example with Incremental Coordinates: N085 G00 X+55. Z+2.. Y+25. N090 G91 N095 G01 Z-7...] [Y. Y+70..] [J.] [K.. Please note that in the absolute system the target points must be programmed according to their position in the coordinate system with reference to the origin of that system.. J+30. I+15.] [I.] [Z.]. N100 G03 X+45. Z+2.. N095 G01 Z-5. Y+45... Y+25.. J+30....... I+15.] [F.

.] G 03  I. It is possible to program clockwise or counter-clockwise circular arcs in the following three planes: • G17 X Y . • G18 Z X . Direction Command Description 1 Selection of Planes G17 Interpolation in the XY-plane G18 Interpolation in the ZY-plane G19 Interpolation in the YZ-plane 2 Sense of Rotation G02 clockwise G03 counter-clockwise 3 Absolute Coordinates of the target point in the work part Position of the Dimensions G90 2 Axis coordinate system target Point from X.. The addresses I and K which correspond to the X.. the target point and the circle center use other coordi- nates! For example: In the ZX-plane the X.K circle center with an algebraic sign Circular Radius R Radius of the circle 5 Cutting Feed F Cutting feed along the circular arc 62 MTS TeachWare • CNC-Milling • Student’s Book . Sense of Rotation..Z Incremental Distance between the starting position and the Dimensions G91 target point with an algebraic sign 4 Distance between the starting posi. Depending on the selected plane the starting point. 2 Axis Distance between the starting position and the tion and the circle center from I.plane or • G19 Y Z . Coordinates of a Circular Arc The G-commands G17.plane..and the Z-coordinates are used for the target point.  G18   [X. G 02 R... An overview of the circular interpolations in the possible machining planes is given in the following table.3 Machining Plane..J...Y. K.. G18 and G19 serve to select a machining plane par example for circular interpola- tions..and the Z-coordinates are used for the circle center.]   [F.] [Z.plane.Chapter 4 4.

. Interpolation with cutter radius compensation Command: G17 G02 or G03 Circular Interpolation in the XY-plane Function: The tool will move in the XY-plane on a circular arc to the target position. F Feedrate Z G17 Z G17 Y Y G02 G03 X X G02 clockwise interpolation in the XY-plane G03 counter-clockwise interpolation in the XY-plane © MTS GmbH • Berlin 63 ..... J Circle Center Incremental (distance between the starting position and the circle center in the Y-direction).]   [F.. G 02 R.] G 03  I. J...] [Y..  NC-Block: G17   [X. regard- less of the selected value command system (G90 or G91). Note: The addresses I and J are always programmed in the incremental system.. Optional Addresses: X X-Coordinate of the Target Point Y Y-Coordinate of the Target Point R Radius of the circular arc (optional statement) I Circle Center Incremental (distance between the starting position and the circle center in the X-direction)...

] G 03  I. G 02 R. regard- less of the selected value command system (G90 or G91). F Feedrate Y G18 Y G18 -Z -Z G02 G03 X X G02 clockwise interpolation in the XZ-plane G03 counter-clockwise interpolation in the XZ-plane 64 MTS TeachWare • CNC-Milling • Student’s Book ...Chapter 4 Command: G18 G02 or G03 Circular Interpolation in the ZX-plane Function: The tool will move in the ZX -plane on a circular arc to the target position.] [Z.. K Circle Center Incremental (distance between the starting position and the circle center in the Z-direction). Optional Addresses: X X-Coordinate of the Target Point Z Z-Coordinate of the Target Point R Radius of the circular arc (optional statement) I Circle Center Incremental (distance between the starting position and the circle center in the X-direction).....]   [F. Note: The addresses I and K are always programmed in the incremental system.  NC-Block: G18   [X.. K.....

Note: The addresses J and K are always programmed in the incremental system.. F Feedrate X G19 X G19 Y Y G02 G03 -Z -Z G02 clockwise interpolation in the YZ-plane G03 counter-clockwise interpolation in the YZ-plane © MTS GmbH • Berlin 65 ..] [Z. K. Optional Addresses: Y Y-Coordinate of the Target Point Z Z-Coordinate of the Target Point R Radius of the circular arc (optional statement) J Circle Center Incremental (distance between the starting position and the circle center in the Y-direction).. Interpolation with cutter radius compensation Command: G19 G02 or G03 Circular Interpolation in the YZ-plane Function: The tool will move in the YZ -plane on a circular arc to the target position..] G 03  J..  NC-Block: G19   [Y..]   [F. K Circle Center Incremental (distance between the starting position and the circle center in the Z-direction).... re- gardless of the selected value command system (G90 or G91)... G 02 R..

]   G 03 G19 Optional Addresses: X X-Coordinate of the Target Point Y Y-Coordinate of the Target Point Z Z-Coordinate of the Target Point R Radius of the circular arc F Feedrate A circular arc can specify the starting point. F120. R40..] [R... Dimensions 66 MTS TeachWare • CNC-Milling • Student’s Book . the target point and the circle center.. Another possibility is to pro- gram the circular arc without the circle center however with the radius R. R40. Y40. Y40..] [F. R is the radius of the circular arc.. R-40. Y40. F120.. G17 NC-Block: G18 G 02 [X. specify the radius R negative! Y α < 180° R4 0 Target Point β > 180° β R4 0 α X Starting Point Circular Interpolations with Radius Input Programming Example: Moving Angle < 180° Moving Angle > 180° Absolute G54 G90 G17 G02 X40. G54 G90 G17 G02 X40... R-40. moving angle < 180°. F120. 2. moving angle ≥ 180°. Dimensions Incremental G91 G17 G02 X40. G91 G17 G02 X40.Chapter 4 Command: G02 or G03 with Radius R Circular Interpolation with radius input Function: The tool will move on a circular arc with the radius R to the target position.] [Y. Y40. Depending on the moving angle there are two cases of movements: 1..] [Y. F120.

Y 100 R80 Circle 2 Circle 1 Circle 3 R20 X -80 R40 40 45 -20 -40 © MTS GmbH • Berlin 67 . In the second program the circular interpolations are programmed by us- ing the radius with the address R. Interpolation with cutter radius compensation Programming Examples for circular interpolation: The next two NC programs describe the following contour. In the first program the addresses I and J are used for the circular interpolations.

0100 N005 G54 N010 G90 G49 G80 G40 G17 G21 N020 G91 G28 Z0 M9 N030 T1 M6 N040 G90 S1500 M3 N050 G0 G43 Z20 H17 N060 Z2. Y-20.Chapter 4 Programming Example for circular interpolation with the addresses I and J CONFIGURATION MACHINE MAKINO FX 650 CONTROL FANUC 16M FX650 BLANK DIMENSIONS X+150.000 PART POSITION X+400. J80. I0. N190 G90 G0 Z20 M9 N200 G91 G28 Z0 M5 N210 G90 G80 G49 G40 N220 M30 68 MTS TeachWare • CNC-Milling • Student’s Book .000 Y+230. J-20.000 ORIENTATION A0° CURRENT TOOL T01 TOOLS T01 SLOT MILLING TOOL MS-10.000 MATERIAL AlMg 1::Aluminium VISE MAKFX 160 CHUCKED HEIGHT E+031. M8 N070 X0. Z135. N130 G2 X40.000 Z+138. Y275. Y-40. N080 G91 N090 G0 X40. J0. F200 N160 Y-80. Y40.000 $G54 X490.000 SHIFT V+000.000 Y+230.000 Y+150. N150 G1 X5. I40.000 Top front left corner of the part X+400. Y80.0/045L HSS ISO 1641 TOOL COMPENSATION D01 R005. F200 N120 Y20. I0. Y0.000 Z+025. N170 G3 X-20. Y-40.000 Z+135. F150 N110 X-120. N180 G1 X20. F100 N140 G3 X80. N100 G1 Z-7.

000 Y+230. H17 N060 Z2.000 Z+138.000 Z+135. Y275. M9 N180 G91 G28 Z0 M5 N190 G91 G28 X0 Y0 N200 G90 G80 G40 G40 N210 M30 © MTS GmbH • Berlin 69 . F200 N170 G0 Z20. Interpolation with cutter radius compensation Programming Examples for circular interpolation with the address R CONFIGURATION MACHINE MAKINO FX 650 CONTROL FANUC 16M FX650 BLANK DIMENSIONS X+150. F100 N120 G3 X40. F150 N090 X-80. Y-40. R20. R40. F100 N160 G1 X40.000 ORIENTATION A0° CURRENT TOOL T01 TOOLS T01 SLOT MILLING TOOL MS-10.0/045L HSS ISO 1641 TOOL COMPENSATION D01 R005. 0100 N005 G54 N010 G90 G49 G80 G40 G17 G21 N020 G91 G28 Z0 M9 N030 T1 M6 N040 G90 S1500 M3 N050 G0 G43 Z20.000 Y+230. Y20.000 Z+025. F200 N100 Y-20.000 Top front left corner of the part X+400.000 $G54 X490. N080 G1 Z-5. N130 G1 X45.000 PART POSITION X+400.000 SHIFT V+000. M8 N070 G0 X40. N110 G2 X-40. Y100. Y-40. R80. Y0.000 Y+150. F200 N140 Y20.000 MATERIAL AlMg 1::Aluminium VISE MAKFX 160 CHUCKED HEIGHT E+031. Z135. N150 G3 X25.

i. 2 1 2 1 work part contour Milling center point path a) Inner corner in milling b) Outer corner in milling Since machining can be done in two ways the NC control has to be informed if machining is to take place on the left (command G41) or right (command G42) of the programmed contour.4 Cutter radius compensation Using the cutter radius compensation it is easy to program a work part without directly considering the appli- cable tool radii. The tool data radii are then automatically considered by the CNC control. for instance. the transitions become equidisants.e.Chapter 4 4. 1 2 left of the contour G41 right of the contour G42 3 programmed contours Machining directions in milling radius correction 70 MTS TeachWare • CNC-Milling • Student’s Book . b) In case of outer corner the tool makes a compensating arc. In discontinuous path transitions. 1 Milling center point paths (equidisant) 2 work part contour Milling center point paths One equidisant is the tool center point path running in constant distance to the programmed path (contour) of the work part. in accordance with the control-specific rules. The available work part drawing data can be directly used for programming. a) In case of inner corners an arc corresponding to the radius of the milling machine is created. in the inner and outer corners. To enable the tool to generate the programmed contour with high precision the tool center point has to travel on a path running parallel to the programmed path. through insertion of arcs. This tool center point path is called equidisant.

...... Interpolation with cutter radius compensation Command: G41 Compensation to the left of the contour (in the cutting direction) Function: When the cutter radius compensation (CRC) is operative. Two consecutive movements in Z cannot be programmed..] [Z...] [D.. no zero shifts can be ef- fected.] [Y. As long as the cutter radius compensation is operative.. Machining cycles cannot be defined or invoked.] [F....] G19: G41 G01 [Y.] [F. G18 or G19) must be specified before starting the cut- ter radius compensation... When G41 is specified by the commands G02 or G03 an alarm goes off...] [D. G41 G41 Milling radius correction in outside machining Milling radius correction in inside machining © MTS GmbH • Berlin 71 ..] [Z.] [D..] Note: The command of the block which specifies G41 should be G00 or G01.... The following figures demonstrate the milling radius correction by the command G41 which depends on the position of the tool with reference to the contour to be machined in outside and inside machining... No tool changing functions can be programmed.. Radii of inner corner roundings must be greater than the cutter radius. The machining plane (G17... The qualifications left or right apply to the direction in which the tool travels along the contour G17 NC-Block: G18 G41 G01 [X..] [Y.]   G19 Optional Addresses: X X-Coordinate of the Target Point Y Y-Coordinate of the Target Point Z Z-Coordinate of the Target Point D Offset number F Feedrate Depending on the selected machining plane there are three possibilities for the necessary coordinates: G17: G41 G01 [X...] [F.] [Z.] G18: G41 G01 [X... only the work part con- tour points are programmed and the control system must be informed whether the cutter shall move left or right of the programmed contour..] [D.] [F.

Two consecutive movements in Z cannot be programmed.] [Z..... No tool changing functions can be programmed.. G18 or G19) must be specified before starting the cut- ter radius compensation.] [Z.] [F. Machining cycles cannot be defined or invoked. The qualifications left or right apply to the direction in which the tool travels along the contour G17 NC-Block: G18 G42 G01 [X..... only the work part con- tour points are programmed and the control system must be informed whether the cutter shall move left or right of the programmed contour..] [F..Chapter 4 Command: G42 Compensation to the right of the contour (in the cutting direction) Function: When the cutter radius compensation (CRC) is operative........ The following figures demonstrate the milling radius correction by the command G42 which depends on the position of the tool with reference to the contour to be machined in outside and inside machining.] [D.] [Y...] [Y.....] G19: G42 G01 [Y..] G18: G42 G01 [X... G42 G42 Milling radius correction in outside machining Milling radius correction in inside machining 72 MTS TeachWare • CNC-Milling • Student’s Book ...] [Z..] [D.] [F.. As long as the cutter radius compensation is operative.]   G19 Optional Addresses: X X-Coordinate of the Target Point Y Y-Coordinate of the Target Point Z Z-Coordinate of the Target Point D Offset number F Feedrate Depending on the selected machining plane there are three possibilities for the necessary coordinates: G17: G42 G01 [X. When G42 is specified by the commands G02 or G03 an alarm goes off.] Note: The command of the block which specifies G42 should be G00 or G01..] [D.. The machining plane (G17. Radii of inner corner roundings must be greater than the cutter radius.] [D. no zero shifts can be ef- fected..] [F.

] [F. The CNC-control reads the respective next two NC-blocks in order to calculate the basis for the travel movements... Programming with the cutter radius compensation When the cutter radius compensation is applied.] [Y. i. a few condi- tions must be fulfilled beforehand.. The CNC- control reads the next two NC-blocks to initialize the cutter radius compensation. At the end of the program the cutter radius compensation must be canceled.. Cancel the cutter radius compensation Start-up the cutter radius compensation This is the movement with which the system activates the cutter radius compensation..] [F... The machining plane and the offset number must be selected. the tool center moves to the next programmed point without compensation.. © MTS GmbH • Berlin 73 ..] [Z. otherwise (example a) the cutter radius compensa- tion is not considered...... a travel motion must be programmed in the machining plane.] G19: G40 G01 [Y. No tool changing functions can be programmed. and remains deviated by the cutter radius compensation value.e.. the cutter radius is considered for all movements (G00-G03). Offset mode 3.] [F....] Optional Addresses: X X-Coordinate of the Target Point Y Y-Coordinate of the Target Point Z Z-Coordinate of the Target Point F Feedrate Depending on the selected machining plane there are three possibilities for the necessary coordinates: G17: G40 G01 [X.. In these NC-blocks it is therefore necessary to also program movements in the machining plane. However. Interpolation with cutter radius compensation Command: G40 Cancel the cutter radius compensation Function: The command G40 cancels the cutter radius compensation activated by the com- mands G41 or G42.. the following three steps must be considered: 1. Start-up the cutter radius compensation 2..] [Z. then for the next block the same distance must be programmed in the machining plane as in the block before the infeed (see block 11 and 12).. Cancel the cutter radius compensation When the cutter radius compensation is canceled.] [Y. If an infeed is subsequently programmed in two steps (see block 12 and 13)..] [Z.] G18: G40 G01 [X.] Note: The command of the block which specifies G40 should be G00 or G01.. When G40 is specified by the command G02 or G03 an alarm goes off. Offset mode In the offset mode. An additional movement must be programmed in the machine plane (example b)..] [F.. NC-Block: G40 G01 [X. since the center of the tool cannot be positioned at the end point.

Chapter 4 Example a Example b $G54 X388 Y270 Z135 $G54 X388 Y270 Z135 03000 04000 N002 G54 N002 G54 N003 G90 G49 G80 G40 G17 G21 N003 G90 G49 G80 G40 G17 G21 N004 G91 G28 Z0 M9 N004 G91 G28 Z0 M9 N005 T1 M6 N005 T1 M6 N006 G90 S1500 M3 N006 G90 S1500 M3 N007 G0 G43 Z20 H17 N007 G0 G43 Z20 H17 N008 X0 Y0 M8 N008 G0 X0 Y0 M8 N009 G91 N009 G91 N010 G41 G0 X15 Y10 D1 N010 G41 G0 X15 Y9 D1 N011 N011 Y10 N012 Z-38 N012 Z-38 N013 G1 Z-12 F150 N013 G1 Z-12 F150 N014 Y40 F250 N014 Y40 F250 N015 X50 N015 X50 N016 Y-30 N016 Y-30 N017 G1 X-65 N017 G1 X-65 N018 G0 Z20 M9 N018 G0 Z20 M9 N019 G40 X-15 Y-20 N019 G40 X-15 Y-20 N020 G90 G0 Z20 M9 N020 G90 G0 Z20 M9 N021 G91 G28 Z0 M5 N021 G91 G28 Z0 M5 N022 G90 G80 G49 G40 N022 G90 G80 G49 G40 N023 M30 N023 M30 74 MTS TeachWare • CNC-Milling • Student’s Book .

contour-parallel or tangential approaching motions are also often programmed. Activate Cutter Radius Compensation Additionally. Interpolation with cutter radius compensation Tool approach and retreat movements The cutter radius compensation is activated within a block. This means that the cutter radius compensation must at the latest be selected when the first contour point is approached. Contour-parallel Approach Tangential Approach in a Quadrant © MTS GmbH • Berlin 75 .

Hence.Chapter 4 The cutter radius compensation can only be deactivated after the last contour point has been reached. the cutter radius compensation is canceled after this travel motion. Cancel Cutter Radius Compensation As for approach motions. contour-parallel or tangential movements are also programmed for tool withdrawal. Contour-parallel Retreat Tangential Retreat 76 MTS TeachWare • CNC-Milling • Student’s Book .

000 ORIENTATION A0° CURRENT TOOL T01 TOOLS T01 SLOT MILLING TOOL MS-10.000 Top front left corner of the part X+400.000 Z+135.000 $G54 X490 Y275 Z135 0100 N005 G54 N010 G90 G49 G80 G40 G17 G21 N015 G91 G28 Z0 M9 N020 T1 M6 N025 G90 S1500 M3 N030 G0 G43 Z20 H17 N035 Z2 M8 N040 X50 Y-50 N045 G1 Z-5 F150 Activate cutter radius compensation N050 G1 X48 Y-48 G41 D1 Tangential approach in a quadrant N055 G3 X40 Y-40 R8 N060 G1 X-80 F200 N065 Y-20 N070 G2 X-40 Y20 R40 F100 N075 G3 X40 Y100 R80 © MTS GmbH • Berlin 77 .000 Y+150.000 PART POSITION X+400.0/045L HSS ISO 1641 TOOL COMPENSATION D01 R005.000 Z+138. Interpolation with cutter radius compensation Programming Example CONFIGURATION MACHINE MAKINO FX 650 CONTROL FANUC 16M FX650 BLANK DIMENSIONS X+150.000 SHIFT V+000.000 Y+230.000 Z+025.000 MATERIAL AlMg 1::Aluminium VISE MAKFX 160 CHUCKED HEIGHT E+031.000 Y+230.

Chapter 4 N080 G1 X45 F200 N085 Y20 N090 G3 X25 Y0 R20 F100 N095 G1 X40 Y-40 F200 Tangential retreat in a quadrant N100 G3 X48 Y-48 R8 Cancel cutter radius compensation N105 G40 G1 X50 Y-50 N110 G90 G0 Z20 M9 N115 G91 G28 Z0 M5 N120 G90 G80 G49 G40 N125 M30 78 MTS TeachWare • CNC-Milling • Student’s Book .

The available work part drawing data can be directly used for programming. lengths as well as radii of the milling machines or indexable inserts are automatically considered by the CNC control. and to enter it into the control. the distance between the tool setup point B and the cutting tip. as in the case of finishing the tool.e. For this it is necessary to measure the length L. i. This tool length value has to be available to the control. © MTS GmbH • Berlin 79 .5 Tool length compensation Using the tool compensation values it is easy to program a work part without directly considering the applica- ble tool lengths or tool radii. The tool data. Interpolation with cutter radius compensation 4. B B tool setup point L length = distance of the cutting tip to the tool setup point in Z L R radius of the milling tool R Tool compensation values A tool length compensation with reference to the reference point enables the adjustment between the set and actual tool length. the control requires a coordinate system as well as information on the lengths of all employed tools. L1 L3 L2 T-slot cutter drill core drill When programming an NC-program in absolute dimensioning.

In the FANUC control 32 codes are available (from H01 to H32). Command: G43 Tool length compensation in plus side offset Function: For the programmed movement in the Z-direction.. NC-Block: G43 [Z.Chapter 4 It is possible to offset the movement command in the Z-direction on the plus or minus side with the compen- sation value by commanding: G43 plus side offset G44 minus side offset To use the tool length compensation.] Optional Addresses: Z Z-Coordinate of the Target Point H offset number Note: An offset number for the compensation value of the tool is specified by the H ad- dress.. the command G43 considers the compensation value in the selected compensation storage on the plus side. the required compensation storage is usually specified with the com- mand G43. H00 deactivates the tool length compensation! Programming example: G90 G00 G43 Z2 H03 with G43 H03 2 W G90 G00 G43 Z2 H03 80 MTS TeachWare • CNC-Milling • Student’s Book ...] [H.

] [H. NC-Block: G44 [Z. Interpolation with cutter radius compensation Command: G44 Tool length compensation in minus side offset Function: For the programmed movement in the Z-direction.... G49 ...] Optional Addresses: Z Z-Coordinate of the Target Point H offset number Command: G49 Cancel tool length compensation Function: Immediately cancels the tool length compensation activated by the commands G43 and G44. NC-Block: .... the command G43 considers the compensation value in the selected compensation storage on the minus side. Note: The tool length compensation also can be canceled by programming the command G43 or G44 with the parameter H00 © MTS GmbH • Berlin 81 .

] [Y.... G18 or G19) need not be specified in the same block with the command G68. All coordinates entered hereafter refer to the original coordinate axes.] .plane G18 G68 [Z.] [X. Note: The command G69 can be specified in the same block with other commands.plane G17 G68 [X. If no values for α and β are specified the actual position becomes the center of rotation ! 4.] or G19 Y Z ..Chapter 4 4.] Note: The coordinates of the center of the rotation are always in absolute values.....plane..] [R..] [Z...] [R.] [R.. G19 G68 [Y. G17 NC-Block: G18 G68 [α.... the rotated coordinate system is turned back to its original position.. All coordinates entered hereafter refer to the rotated coordinate axes.... G18 Z X ..... The machining plane (G17.6 Coordinate rotation Command: G68 Coordinate rotation Function: With the command G68 the current coordinate system is rotated by a certain angle.] [R.7 Cancel coordinate rotation Command: G69 Cancel coordinate rotation Function: With the command G69.]   G19 Optional Addresses: α Coordinate of the center of rotation in the selected machining plane β Coordinate of the center of rotation in the selected machining plane R Rotation angle Y center of rotation α rotation angle X β 1 2 W Programming Example: Depending on the selected machining plane there are three possibilities of the coordinates: G17 X Y .] [β. 82 MTS TeachWare • CNC-Milling • Student’s Book .

000 PART POSITION X+400.000 Top front left corner of the part X+400.000 D02 R010.000 Y+090.0/075L HSS ISO 1641 TOOL COMPENSATION D01 R007.000 Z+148.000 © MTS GmbH • Berlin 83 .000 Z+025.0/053L HSS ISO 1641 T02 SLOT MILLING TOOL MS-20.000 Y+250.000 Z+147.000 MATERIAL AlMg 1::Aluminium VISE MAKFX 160 CHUCKED HEIGHT E+031.000 ORIENTATION A0° CURRENT TOOL T02 TOOLS T01 SLOT MILLING TOOL MS-14.000 SHIFT V+000. 1 contour depth 5mm pocket depth 15 mm R center of rotation 2 rotation angle 3 4 CONFIGURATION MACHINE MAKINO FX 650 CONTROL FANUC 16M FX650 BLANK DIMENSIONS X+100. Interpolation with cutter radius compensation Exercise: The aluminum plate outlined in the drawing with the blank dimensions of 100x90x25 is to be machined on a vertical milling machine (machining plane G17).000 Z+135.000 Y+250.

Chapter 4 $G54 X400 Y250 Z135 $G57 X450 Y295 Z135 O 068 N015 G54 N020 G90 G49 G80 G40 G17 G21 N025 G91 G28 Z0 M9 N030 G91 G28 X0 Y0 N035 T02 M6 N040 G90 S1800 M3 N045 G0 G43 Z20 H18 N050 X115 Y50 N055 Z2 N060 G1 Z-5 F200 M8 N065 G1 G41 X95 Y30 R20 D2 F200 N070 G1 Y20 N075 G2 X80 Y5 R15 N080 G1 X20 N085 G2 X5 Y20 R15 N090 G1 Y70 N095 G2 X20 Y85 R15 N100 G1 X80 N105 G2 X95 Y70 R15 N110 G1 Y30 N115 G3 X115 Y10 R20 N120 G40 G1 Y30 N125 G0 Z20 M9 N130 G91 G28 Z0 M5 N135 T01 M6 N140 G90 S1800 M3 N145 G0 G43 Z20 H17 N150 X50 Y45 N155 G57 Coordinate rotation with the angle 45° at the position X50 Y45 N160 G68 R45 N165 G91 M8 Rectangular pocket cycle N170 G65 P9140 U40 V30 D2 R-18 Z-17 F90 S40 H15 Q6 M1 Cancel coordinate rotation N175 G69 G80 G90 N180 G0 Z20 M9 N185 G91 G28 Z0 M5 N190 G90 G49 G40 N195 M30 84 MTS TeachWare • CNC-Milling • Student’s Book .

For these cycles. to generate the individ- ual travel motions for a rectangular pocket.g.g. they contain prevalent command sequences. specific drilling. specific milling op- erations. circular or rectangular pockets. Z initial point safety plane X depth © MTS GmbH • Berlin 85 . safety plane X depth Milling cycles For milling cycles.g. These machining cycles can be divided into three different types: • drilling cycles • milling cycles • special cycles Drilling cycles For drilling cycles. the CNC-control must perform extensive calculations. also called macro in the FANUC-control. are executed. The CNC-control then executes all operations. also called canned cycles in the FANUC-control. e. Function and use of cycles 5 Cycles 5.1 Function and use of cycles on a CNC milling machine In CNC-controls. Similar to subprograms. e. e. predefined machining cycles are available which can be invoked with specific commands. for threading. reaming or threading tasks are Z programmed by a command in conjunc- tion with information on the required pa- initial point rameter.

the position of the retracted tool) is sufficiently defined above the work part contour. After the cycle is invoked. depth Please make sure that the Z-coordinate of this initial point (i.g. Combined with drilling cycles. if G18 or G19 have been pro- safety plane grammed in the machining plane selec- tion) is not necessary.g. Safety planes Multiple repetition of these cycles is common e. Subsequently the tool will be moved in the rapid traverse mode from this Z- position down to the safety plane. it will be estab- lished from the actual tool position at the X moment of the cycle invocation. holes on a circle or in a row can thus be easily programmed. with drilling holes on a divided circle or on a straight line. e. 86 MTS TeachWare • CNC-Milling • Student’s Book .Chapter 5 Special cycles Belonging to the special cycles are e. Programming the Z-coordinate of this initial point initial point (the Y. various drill patterns. the tool must be positioned to the Z-coordinate of this initial point. After completion of the cycle the tool is retracted in a rapid motion to the Z-coordinate of the initial point.e.or X-coordinate ac- cordingly.g. In the execution of a repeated cycle the Z tool will be retracted to the initial point before moving (in rapid traverse motion) to the next target position.

1 initial point 2 6 R 3 5 Z 4 1 positioning in X and Y 4 operation at the bottom of the hole 2 move to the safety plane 5 retract to the safety plane 3 drilling 6 retract to the Z-coordinate of the initial point . Sequence of a canned cycle The basic sequence of a canned cycle is subsequently illustrated.: rapid traverse R : safety plane : cutting feed Z : depth © MTS GmbH • Berlin 87 ... The canned cycle then defines the geometry and machining sequence. Function and use of cycles 5.2..1 Definition A canned cycle is a preset sequence of commands in a CNC-control and can shorten the programming by using them for recurrent geometric elements.2 Canned cycles (drilling functions) 5.

.] [Y. Q. The canned cycle data remains stored until it is deactivated with the command G80.  G90  G99 optional addresses G90 / G91 select the dimensioning type for the coordinates of the depth and the safety plane G98 / G99 select the return point level G specifies the canned cycle mode X. not by G00.] [S. NC-Block: G80 [X. Note: These subsequent travel movements are programmed by the coordinate specifica- tions.] [F. G02! Otherwise the canned cycle is deleted! Command: G80 cancel the canned cycle Function: The selected canned cycle and its data is deleted....] [M..  G91  G98     G... P... the canned cycle is only executed once. The feedrate F remains even after the canned cycle is deactivated.] [Z.... 88 MTS TeachWare • CNC-Milling • Student’s Book . R.. If L0 is specified.... X. but the cycle is not performed! A canned cycle is defined by the previously described command and executed according to L... Y. Z... Y coordinates of the hole position Z depth (Z-position of the bottom of the hole) R Z-position of the safety plane P dwell time at the bottom of the hole Q cutting amount by programming G73 or G83 shift amount by programming G76 or G87 F feedrate L number of repeats If L is not specified... following the definition for canned cycle....Chapter 5 A canned cycle is programmed with the corresponding G-command and optional addresses... Therefore..] Optional Addresses: X X-Coordinate of the Target Point Y Y-Coordinate of the Target Point Z Z-Coordinate of the Target Point F Feedrate S Speed T Tool Change M Additional Function Note: The data for safety plane and depth is also deleted. it is executed for every programmed travel movement until it is deleted by the command G80. F.. L.. then the data for the cycle is only stored. G01.] [T...

... L.. Function and use of cycles Absolute . the applied dimensioning systems must be particularly considered! According to whether an absolute (G90) or incremental (G91) dimensioning system was selected. Z-10 R2 Q... L. the input for depth (Z-position of the bottom of the hole) and for the Z-position of the safety plane must be changed (see following examples). F..... Infeed for G90 Input for depth and the safety plane pertain to the value Z=0 in the work part coordinate system! Programming example: G90 G81 X..incremental dimensioning For programming canned cycles. F... Z-12 R-98 Q.. G90 initial point R= 2 Z=-10 Z = 0 (work part R 2mm coordinate system) 10mm Z Infeed for G91 The input for depth and the safety plane pertain to the initial point! Programming example: G91 G81 X. Y.. G91 initial point R=-98 100 mm Z=-12 Z = 0 (work part R 2mm coordinate system) 10mm Z © MTS GmbH • Berlin 89 .. Y.....

G99) Tool withdrawal after machining is controlled by the G-commands G98 and G99. the tool returns in rapid traverse to the initial point after the drilling depth Z has been reached. G99 initial point R Z ..: rapid traverse R : safety plane : cutting feed Z : depth For G99. the tool returns in rapid traverse to the safety plane (R) after the drilling depth Z has been reached..: rapid traverse R : safety plane : cutting feed Z : depth 90 MTS TeachWare • CNC-Milling • Student’s Book ... The Z-coordinate for the initial point is the last Z-position of the tool before the cycle was defined! G98 initial point R Z ...Chapter 5 Return point level (G98. G98: return to the initial point G99: return to the safety plane R For G98.

rapid traverse high -speed peck drill- feed ing cycle G74 cutting feed spindle CW cutting feed left-hand tapping cycle G76 cutting feed spindle orientation rapid traverse fine boring cycle G81 cutting feed . rapid traverse peck drilling cycle feed G84 cutting feed spindle CCW cutting feed tapping cycle G85 cutting feed . cutting feed boring cycle G86 cutting feed spindle Stop rapid traverse boring cycle G87 cutting feed spindle Stop rapid traverse boring cycle back boring cycle G88 cutting feed dwell Time manual/ boring cycle spindle Stop rapid traverse G89 cutting feed dwell Time cutting feed boring cycle The defined canned cycles are deactivated with the command G80. . rapid traverse drilling cycle spot drilling cycle G82 cutting feed dwell Time rapid traverse drilling cycle counterboring cycle G83 intermittent .2. G-Code Drilling Operation at the bottom Retraction Application -Z direction of a hole +Z direction G73 intermittent . The availability of the cycles varies according to machine. the canned cycles for the control FANUC 16 M are listed. G-Code Drilling Operation at the bottom Retraction Application -Z direction of a hole +Z direction G80 . . cancel © MTS GmbH • Berlin 91 .2 Survey Subsequently. Function and use of cycles 5.

500 D17 R025.381 Z+104.000 Z+110.Chapter 5 5.00/54.500 D05 R008.000 Y+230.000 D15 R000.000 Z+100.000 92 MTS TeachWare • CNC-Milling • Student’s Book .2.000 Z+143.000 Z+110.00/087 HSS ISO 235 T05 TAP MS-16.000 Z+195. Set-up-sheet CONFIGURATION MACHINE MAKINO FX 650 CONTROL FANUC 16M FX650 BLANK DIMENSIONS X+150.000 Z+135.000 D09 R010.000 Z+176.500 D07 R000.000 Top front left corner of the part X+400.0/011K HSS ISO 1641 T09 CORE DRILL ME-20.000 ORIENTATION A0° CURRENT TOOL T01 TOOLS T01 SLOT MILLING TOOL MS-10.0/063L HSS ISO 1641 T06 FACE MILLING CUTTER TA-M06.000 Z+104.000 Y+230.0/H7 HSS ISO 521 T11 CORNER TOOL TYPE A RC-12/06.000 Z+132.000 Z+025.500 D21 R004.5/06.0/090 HSS ISO 3294 TOOL COMPENSATION D01 R010.00/087 HSS ISO 235 T08 REAMER MS-08.500 D04 R000.000 D03 R000.500 D16 R000.000 D22 R011.3 Application The simulator is to be set-up according to the following set-up sheet for all subsequent program examples.000 Z+147.000 D02 R010.000 Y+150.0/060 HSS ISO 3294 T04 DRILL DR-05.500 D12 R010.4-090 HSS ISO 3439 T16 DRILL DC-16.000 Z+135.0/045L HSS ISO 1641 T02 SLOT MILLING TOOL MS-20.500 D13 R005.000 Z+112.000 Z+104.000 Z+183.000 MATERIAL AlMg 1::Aluminium VISE MAKFX 160 CHUCKED HEIGHT E+031.000 SHIFT V+000.00-HM 90 ISO 9766 T15 CONCAVE MILLING TOOL DS-11.000 PART POSITION X+400.000 D19 R008.000 Z+117.000 Z+106.00 HSS ISO 2857 T07 RADIUS CUTTER DR-05.000 D06 R000.0/12 HSS ISO 1641 T12 CORNER TOOL TYPE B CA-20/08.000 Z+154.000 Z+142.000 Z+176.0/038K HSS ISO 1641 T10 T-SLOT CUTTER RE-D10.000 Z+118.000 Z+135.500 D14 R000.0/60 HSS ISO 3859 T13 INSERT TIP DRILL CB-20/08.000 D11 R006.000 Z+147.000 D25 R009.000 D18 R008.000 D10 R000.0/075L HSS ISO 1641 T03 CORE DRILL DC-08.000 D20 R000.0/60 HSS ISO 3859 T14 STEP DRILL DI-20.000 Z+135.0/1.500 D08 R004.

FNC N10 G90 X18 Y18 M8 first position N15 Y82 second position N20 X82 third position N25 G98 Y18 fourth position N30 G80 N35 M99 © MTS GmbH • Berlin 93 . G01. G02 or G03! O7300. Function and use of cycles Drilling positions The program examples are designed so that a master program defines the respective cycle.e. i. The individual drilling positions are specified in a subprogram (O7300.FNC) and can be applied by all cycles Note: The individual positions are only programmed with the coordinates. without the commands G00.

Z.Chapter 5 5........: rapid traverse R : safety plane : cutting feed Z : depth d : lift-off value Q : cutting amount 94 MTS TeachWare • CNC-Milling • Student’s Book . NC-Block: G98 G73 X..... the tool is returned in rapid traverse to the initial point. R.4 high-speed peck drilling cycle G73 Command: G73 high-speed peck drilling cycle Function: The fixed cycle G73 is used for high-speed peck drilling with chip breaking. This value can be set in the CNC-control..2.. Optional Addresses: G98 return to the initial point X. Q. the tool is withdrawn by the value d for chip breaking. Y. F. After infeed.. Y coordinates of the hole position Z depth (Z-position of the bottom of the hole) R Z-position of the safety plane Q cutting amount F feedrate G98 G73 initial point R Q d Q Q Z . After the complete infeed depth has been reached..

but the cycle is not performed! N085 M98 P7300 subprogram call (4 positions for drilling) N090 G0 G80 G90 X120 Y120 cancel the canned cycle for drilling N095 G0 Z20 M09 N100 G91 G28 Z0 M5 N105 G90 G49 G40 N110 M30 © MTS GmbH • Berlin 95 . Function and use of cycles Programming Example for the canned cycle: G73 high-speed peck drilling with G98 $G54 X400 Y250 Z140 O 7398 N005 G54 N010 G90 G49 G80 G40 G17 G21 N015 G91 G49 G28 Z0 M9 N020 G91 G28 X0 Y0 centering N025 T03 M06 N030 G90 S2200 M3 N035 G0 G43 Z20 H19 N040 G99 G81 Z-3 R2 F80 L0 centering N045 M98 P7300 subprogram call (4 positions for centering) N050 G0 G80 G90 X120 Y120 cancel the canned cycle for centering N055 G0 Z20 M9 N060 G91 G28 Z0 M5 drilling with G73 N065 T04 M06 N070 G90 S2200 M3 N075 G0 G43 Z20 H20 N080 G98 G73 Z-35 R2 Q15 F80 L0 G98 return to the initial point G73 high-speed peck drilling cycle Z-35 depth (Z-position of the bottom of the hole) R2 Z-position of the safety plane Q15 cutting amount 15mm F80 feedrate L0 The data for the cycle only stored.

... Y.. Z.... R.. Y coordinates of the hole position Z depth (Z-position of the bottom of the hole) R Z-position of the safety plane Q cutting amount F feedrate G99 G73 initial point R Q d Q Q Z .. This value can be set in the CNC-control. the tool is returned in rapid traverse to the safety plane. Optional Addresses: G99 return to the safety plane R X. the tool is withdrawn by the value d for chip breaking...: rapid traverse R : safety plane : cutting feed Z : depth d : lift-off value Q : cutting amount 96 MTS TeachWare • CNC-Milling • Student’s Book . After infeed. F. After the complete infeed depth has been reached.... Q.Chapter 5 Command: G73 high-speed peck drilling cycle Function: The fixed cycle G73 is used for high-speed peck drilling with chip breaking. NC-Block: G99 G73 X..

Function and use of cycles Programming Example for the canned cycle: G73 high-speed peck drilling with G99 $G54 X400 Y250 Z140 O 73 N005 G54 N010 G90 G49 G80 G40 G17 G21 N015 G91 G49 G28 Z0 M9 N020 G91 G28 X0 Y0 centering N025 T03 M06 N030 G90 S2200 M03 N035 G0 G43 Z20 H19 N040 G99 G81 Z-3 R2 F80 L0 centering N045 M98 P7300 subprogram call (4 positions for centering) N050 G0 G80 G90 X120 Y120 cancel the canned cycle for centering N055 G0 Z20 M9 N060 G91 G28 Z0 M5 drilling with G73 N065 T04 M06 N070 G90 S2200 M3 N075 G0 G43 Z20 H20 N080 G99 G73 Z-35 R2 Q15 F80 L0 G99 return to the safety plane R G73 high-speed peck drilling cycle Z-35 depth (Z-position of the bottom of the hole) R2 Z-position of the safety plane Q15 cutting amount 15mm F80 feedrate L0 The data for the cycle only stored. but the cycle is not performed! N085 M98 P7300 subprogram call (4 positions for drilling) N090 G0 G80 G90 X120 Y120 cancel the canned cycle for drilling N095 G0 Z20 M09 N100 G91 G28 Z0 M5 N105 G90 G49 G40 N110 M30 © MTS GmbH • Berlin 97 .

.Chapter 5 5.. P... For the fixed cycle G74. After the thread depth has been reached. The rotation direction is switched back to M04 after the safety plane has been reached..5 left-hand tapping cycle G74 Command: G74 left-hand tapping cycle Function: The fixed cycle G74 is for manufacturing left-hand threads.2. Speed S and the spin- dle rotation direction M04 is programmed before the tapping cycle is defined. Optional Addresses: G98 return to the initial point X. F = spindle speed (1/min) • thread pitch (mm) NC-Block: G98 G74 X... The value resulting from the mul- tiplication of the spindle speed (1/min) and pitch of the thread to be manufactured must be programmed in the address F.. Y. R.... F... The parameter P (dwell time) is only effective in programming if it has also been set in the control.. Y coordinates of the hole position Z depth (Z-position of the bottom of the hole) R Z-position of the safety plane P dwell time at the bottom of the hole F feedrate G98 G74 initial point M04 R >7mm M04 tapping Z M03 . the control automatically switches to M03 for withdrawal. Z. the safety plane should be at least 7mm above the surface of the work part.: rapid traverse R : safety plane : cutting feed Z : depth M03 : spindle rotation clockwise M04 : spindle rotation counter-clockwise 98 MTS TeachWare • CNC-Milling • Student’s Book ..

Function and use of cycles Programming Example for the canned cycle: G74 left-hand tapping cycle G98 $G54 X400 Y250 Z140 O 7498 N005 G54 N010 G90 G49 G80 G40 G17 G21 N015 G91 G28 Z0 M9 N020 G91 G28 X0 Y0 centering N025 T03 M06 N030 G90 S2200 M03 N035 G0 G43 Z20 H19 N040 G99 G81 Z-3 R2 F80 L0 centering N045 M98 P7300 subprogram call (4 positions for centering) N050 G0 G80 G90 X120 Y120 cancel the canned cycle for centering N055 G0 Z20 M9 N060 G91 G28 Z0 M5 predrilling N065 T04 M06 N070 G90 S2200 M03 N075 G0 G43 Z20 H20 N080 G98 G73 Z-35 R2 Q15 F80 L0 predrilling N085 M98 P7300 subprogram call (4 positions for predrilling) N090 G0 G80 G90 X120 Y120 cancel the canned cycle for predrilling N095 G0 Z20 M9 N100 G91 G28 Z0 M5 left-hand tapping with G74 N105 T06 M06 N110 G90 S1000 M04 N115 G0 G43 Z20 H22 N120 G98 G74 Z-30 R7 P1000 F1000 L0 G98 return to the initial point G74 left-hand tapping cycle Z-30 thread depth R7 Z-position of the safety plane P1000 dwell time at the bottom of the hole (1 sec) F1000 feedrate L0 The data for the cycle only stored. but the cycle is not performed! N125 M98 P7300 subprogram call (4 positions for tapping) N130 G0 G80 G90 X120 Y120 cancel the canned cycle for tapping N135 G0 Z20 M9 N140 G91 G28 Z0 M5 N145 G90 G49 G40 N150 M30 © MTS GmbH • Berlin 99 .

.. The value resulting from the mul- tiplication of the spindle speed (1/min) and pitch of the thread to be manufactured must be programmed in the address F.: rapid traverse R : safety plane : cutting feed Z : depth M03 : spindle rotation clockwise M04 : spindle rotation counter-clockwise 100 MTS TeachWare • CNC-Milling • Student’s Book . After the thread depth has been reached.. Z.. For the fixed cycle G74.. F. The rotation direction is switched back to M04 after the safety plane has been reached.. F = spindle speed (1/min) • thread pitch (mm) NC-Block: G99 G74 X. R...Chapter 5 Command: G74 left-hand tapping cycle Function: The fixed cycle G74 is for manufacturing left-hand threads. Speed S and the spin- dle rotation direction M04 is programmed before the tapping cycle is defined. Optional Addresses: G99 return to the safety plane R X.... P. the safety plane should be at least 7mm above the surface of the work part.... Y coordinates of the hole position Z depth (Z-position of the bottom of the hole) R Z-position of the safety plane P dwell time at the bottom of the hole F feedrate G99 G74 initial point M04 R >7mm M04 tapping Z M03 . The parameter P (dwell time) is only effective in programming if it has also been set in the control. Y.. the control automatically switches to M03 for withdrawal.

but the cycle is not performed! N125 M98 P7300 subprogram call (4 positions for tapping) N130 G0 G80 G90 X120 Y120 cancel the canned cycle for tapping N135 G0 Z20 M9 N140 G91 G28 Z0 M5 N145 G90 G49 G40 N150 M30 © MTS GmbH • Berlin 101 . Function and use of cycles Programming Example for the canned cycle: G74 left-hand tapping cycle G99 $G54 X400 Y250 Z140 O 74 N005 G54 N010 G90 G49 G80 G40 G17 G21 N015 G91 G28 Z0 M9 N020 G91 G28 X0 Y0 centering N025 T03 M06 N030 G90 S2200 M03 N035 G0 G43 Z20 H19 N040 G99 G81 Z-3 R2 F80 L0 centering N045 M98 P7300 subprogram call (4 positions for centering) N050 G0 G80 G90 X120 Y120 cancel the canned cycle for centering N055 G0 Z20 M9 N060 G91 G28 Z0 M5 predrilling N065 T04 M06 N070 G90 S2200 M03 N075 G0 G43 Z20 H20 N080 G98 G73 Z-35 R2 Q15 F80 L0 predrilling N085 M98 P7300 subprogram call (4 positions for predrilling) N090 G0 G80 G90 X120 Y120 cancel the canned cycle for predrilling N095 G0 Z20 M9 N100 G91 G28 Z0 M5 left-hand tapping with G74 N105 T06 M06 N110 G90 S1000 M04 N115 G0 G43 Z20 H22 N120 G99 G74 Z-30 R7 P1000 F1000 L0 G99 return to the safety plane R G74 left-hand tapping cycle Z-30 thread depth R7 Z-position of the safety plane P1000 dwell time at the bottom of the hole (1 sec) F1000 feedrate L0 The data for the cycle only stored.

Shift Q is incrementally defined in mm.2... . Optional Addresses: G98 return to the initial point X.Chapter 5 5. R..coordinate of the shift amount F feedrate G98 G76 initial point Q R Q Q Z oriented spindle stop . Y.6 fine boring cycle G76 Command: G76 fine boring cycle Function: The fine boring cycle G76 is used for finishing... whereby a boring bar is used. an oriented spindle stop is again activated and the tool is shifted. Alternatively..  NC-Block: G98 G76 X. F. F.: rapid traverse R : safety plane : cutting feed Z : depth Q : shift amount 102 MTS TeachWare • CNC-Milling • Student’s Book . . . . it can be programmed with the parameter I for the X-direction and with the pa- rameter J for the Y-direction. . . so that it can be removed from the bore hole. ...g. after an oriented spindle stop the tool can be shifted to and removed through the center of the hole. Z. Addi- tionally. the tool is again posi- tioned in the center so that this side can be machined (e. Fol- lowing the boring operation..coordinate of the shift amount J Y. . counter-boring). . ..    I.  Q. J.. On the backside of the hole. Y coordinates of the hole position Z depth (Z-position of the bottom of the hole) R Z-position of the safety plane Q shift amount I X.

counter-boring)... F.. . . R. . . Y coordinates of the hole position Z depth (Z-position of the bottom of the hole) R Z-position of the safety plane Q shift amount I X. . J. Y. . whereby a boring bar is used. it can be programmed with the parameter I for the X-direction and with the pa- rameter J for the Y-direction.. . . Z.. Fol- lowing the boring operation.    I. On the backside of the hole.. Optional Addresses: G99 return to the safety plane R X.coordinate of the shift amount F feedrate G99 G76 initial point R Q Q Q Z oriented spindle stop .. an oriented spindle stop is again activated and the tool is shifted. Shift Q is incrementally defined in mm. the tool is again posi- tioned in the center so that this side can be machined (e.: rapid traverse R : safety plane : cutting feed Z : depth Q : shift amount © MTS GmbH • Berlin 103 . .  NC-Block: G99 G76 X..  Q..g. after an oriented spindle stop the tool can be shifted to and removed through the center of the hole.. Function and use of cycles Command: G76 fine boring cycle Function: The fine boring cycle G76 is used for finishing. Addi- tionally..coordinate of the shift amount J Y. so that it can be removed from the bore hole. F. . Alternatively.

. spot drilling cycle Function: The drilling cycle G81 is used for centering and for drilling minimal depths. Optional Addresses: G98 return to the initial point X. The tool travels to the safety plane R in rapid traverse with respect to the current tool posi- tion and feeds at the programmed rate F... spot drilling cycle G81 Command: G81 drilling cycle..2.7 drilling cycle.Chapter 5 5. R..... Z.: rapid traverse R : safety plane : cutting feed Z : depth 104 MTS TeachWare • CNC-Milling • Student’s Book . Y. F. NC-Block: G98 G81 X. Y coordinates of the hole position Z depth (Z-position of the bottom of the hole) R Z-position of the safety plane F feedrate G98 G81 initial point R Z ......

Function and use of cycles Programming Example for the canned cycle: G81 drilling cycle. spot drilling cycle with G98 $G54 X400 Y250 Z140 O 8198 N005 G54 N010 G90 G49 G80 G40 G17 G21 N015 G91 G28 Z0 M9 N020 G91 G28 X0 Y0 centering with G81 N025 T03 M06 N030 G90 S2200 M03 N035 G0 G43 Z20 H19 N040 G98 G81 Z-3 R2 F80 L0 G98 return to the initial point G81 drilling cycle. spot drilling cycle Z-3 depth (Z-position of the bottom of the hole) R2 Z-position of the safety plane F80 feedrate L0 The data for the cycle only stored. but the cycle is not performed! N045 M98 P7300 subprogram call (4 positions for centering) N050 G0 G80 G90 X120 Y120 cancel the canned cycle for centering N055 G0 Z20 M9 N060 G91 G28 Z0 M5 N065 G90 G49 G40 N070 M30 © MTS GmbH • Berlin 105 .

spot drilling cycle Function: The drilling cycle G81 is used for centering and for drilling minimal depths... Y coordinates of the hole position Z depth (Z-position of the bottom of the hole) R Z-position of the safety plane F feedrate G99 G81 initial point R Z ..: rapid traverse R : safety plane : cutting feed Z : depth 106 MTS TeachWare • CNC-Milling • Student’s Book ..... Z... Y.. Optional Addresses: G99 return to the safety plane R X. NC-Block: G99 G81 X. R. The tool travels to the safety plane R in rapid traverse with respect to the current tool posi- tion and feeds at the programmed rate F.Chapter 5 Command: G81 drilling cycle.. F...

spot drilling cycle Z-3 depth (Z-position of the bottom of the hole) R2 Z-position of the safety plane F80 feedrate L0 The data for the cycle only stored. Function and use of cycles Programming Example for the canned cycle: G81 drilling cycle. spot drilling cycle with G99 $G54 X400 Y250 Z140 O 81 N005 G54 N010 G90 G49 G80 G40 G17 G21 N015 G91 G28 Z0 M9 N020 G91 G28 X0 Y0 centering with G81 N025 T03 M06 N030 G90 S2200 M03 N035 G0 G43 Z20 H19 N040 G99 G81 Z-3 R2 F80 L0 G99 return to the safety plane R G81 drilling cycle. but the cycle is not performed! N045 M98 P7300 subprogram call (4 positions for centering) N050 G0 G80 G90 X120 Y120 cancel the canned cycle for centering N055 G0 Z20 M9 N060 G91 G28 Z0 M5 N065 G90 G49 G40 N070 M30 © MTS GmbH • Berlin 107 .

F.. Z.. By programming a dwell time. P.. NC-Block: G98 G82 X... counterboring cycle G82 Command: G82 drilling cycle.. counterboring cycle Function: The fixed cycle G82 is specifically used for drilling blind holes. Y.. high accuracy for the programmed drilling depth is guaranteed. The tool travels to the safety plane R in rapid traverse with respect to the current tool posi- tion and feeds at the programmed rate F. Optional Addresses: G98 return to the initial point X.8 drilling cycle....: rapid traverse R : safety plane : cutting feed Z : depth 108 MTS TeachWare • CNC-Milling • Student’s Book .. R.Chapter 5 5.2... Once the programmed depth is attained and after a possible dwell time... the tool returns in rapid traverse to the initial point. Y coordinates of the hole position Z depth (Z-position of the bottom of the hole) R Z-position of the safety plane P dwell time at the bottom of the hole F feedrate G98 G82 initial point R Z dwell time .

counterboring cycle with G98 $G54 X400 Y250 Z140 O 8298 N005 G54 N010 G90 G49 G80 G40 G17 G21 N015 G91 G28 Z0 M9 N020 G91 G28 X0 Y0 centering N025 T03 M06 N030 G90 S2200 M03 N035 G0 G43 Z20 H19 N040 G99 G81 Z-3 R2 F80 L0 centering N045 M98 P7300 subprogram call (4 positions for centering) N050 G0 G80 G90 X120 Y120 cancel the canned cycle for centering N055 G0 Z20 M9 N060 G91 G28 Z0 M5 counterboring with G82 N065 T01 M06 N070 G90 S1200 M03 N075 G0 G43 Z20 H17 N080 G98 G82 Z-20 R2 P2000 F80 L0 G98 return to the initial point G82 drilling cycle. but the cycle is not performed! N085 M98 P7300 subprogram call (4 positions for counterboring) N090 G0 G80 G90 X120 Y120 cancel the canned cycle for counterboring N095 G0 Z20 M9 N100 G91 G28 Z0 M5 N105 G90 G49 G40 N110 M30 © MTS GmbH • Berlin 109 . Function and use of cycles Programming Example for the canned cycle: G82 drilling cycle. counter boring cycle Z-20 depth (Z-position of the bottom of the hole) R2 Z-position of the safety plane P2000 dwell time at the bottom of the hole F80 feedrate L0 The data for the cycle only stored.

F. Once the programmed depth is attained and after a possible dwell time.Chapter 5 Command: G82 drilling cycle.... R. NC-Block: G99 G82 X... Z.. counterboring cycle Function: The fixed cycle G82 is specifically used for drilling blind holes... Optional Addresses: G99 return to the safety plane R X. P. By programming a dwell time.: rapid traverse R : safety plane : cutting feed Z : depth 110 MTS TeachWare • CNC-Milling • Student’s Book . Y coordinates of the hole position Z depth (Z-position of the bottom of the hole) R Z-position of the safety plane P dwell time at the bottom of the hole F feedrate G99 G82 initial point R Z dwell time . high accuracy for the programmed drilling depth is guaranteed. Y..... the tool moves in rapid traverse to the safety plane R.... The tool travels to the safety plane R in rapid traverse with respect to the current tool posi- tion and feeds at the programmed rate F.

counterboring cycle with G99 $G54 X400 Y250 Z140 O 82 N005 G54 N010 G90 G49 G80 G17 G21 N015 G91 G28 Z0 M9 N020 G91 G28 X0 Y0 centering N025 T03 M06 N030 G90 S2200 M03 N035 G0 G43 Z20 H19 N040 G99 G81 Z-3 R2 F80 L0 centering N045 M98 P7300 subprogram call (4 positions for centering) N050 G0 G80 G90 X120 Y120 cancel the canned cycle for centering N055 G0 Z20 M9 N060 G91 G28 Z0 M5 counterboring with G82 N065 T01 M06 N070 G90 S1200 M03 N075 G0 G43 Z20 H17 N080 G99 G82 Z-20 R2 P2000 F80 L0 G99 return to the safety plane R G82 drilling cycle. counter boring cycle Z-20 depth (Z-position of the bottom of the hole) R2 Z-position of the safety plane P2000 dwell time at the bottom of the hole F80 feedrate L0 The data for the cycle only stored. but the cycle is not performed! N085 M98 P7300 subprogram call (4 positions for counterboring) N090 G0 G80 G90 X120 Y120 cancel the canned cycle for counterboring N095 G0 Z20 M9 N100 G91 G28 Z0 M5 N105 G90 G49 G40 N110 M30 © MTS GmbH • Berlin 111 . Function and use of cycles Programming Example for the canned cycle: G82 drilling cycle.

.1mm on the CNC-control. R. the next infeed is activated at feedrate.: rapid traverse R : safety plane : cutting feed Z : depth d : lift-off value Q : cutting amount 112 MTS TeachWare • CNC-Milling • Student’s Book . The feed of Q is at feedrate and incremental with respect to the safety plane R and it is always positively programmed. The control-specific value d defines the distance of the positioning point for the next infeed Q with respect to the current drilling depth.. Optional Addresses: G98 return to the initial point X. After this position has been reached. the tool is positioned in rapid traverse for the next feed...2.. F. Y. Z.. Therefore overheating of the tool because of chip accumulation is avoided... After chip removal in rapid traverse.. Y coordinates of the hole position Z depth (Z-position of the bottom of the hole) R Z-position of the safety plane Q cutting amount F feedrate G98 G83 initial point R Q d Q d Q Z ... Usually the parameter d is preset to 0. NC-Block: G98 G83 X... Since the tool is moved in rapid traverse to the safety plane R after every feed. a thorough chip removal is guaran- teed..9 peck drilling cycle G83 Command: G83 peck drilling cycle Function: The fixed cycle G83 is used for deep hole drilling.. Q.Chapter 5 5.

Function and use of cycles Programming Example for the canned cycle: G83 peck drilling with G98 $G54 X400 Y250 Z140 O 8398 N005 G54 N010 G90 G49 G80 G40 G17 G21 N015 G91 G28 Z0 M9 N020 G91 G28 X0 Y0 centering N025 T03 M06 N030 G90 S2200 M03 N035 G0 G43 Z20 H19 N040 G99 G81 Z-3 R2 F80 L0 centering N045 M98 P7300 subprogram call (4 positions for centering) N050 G0 G80 G90 X120 Y120 cancel the canned cycle for centering N055 G0 Z20 M9 N060 G91 G28 Z0 M5 peck drilling with G83 N065 T04 M06 N070 G90 S2200 M03 N075 G0 G43 Z20 H20 N080 G98 G83 Z-35 R2 Q15 F80 L0 G98 return to the initial point G83 peck drilling cycle Z-35 depth (Z-position of the bottom of the hole) R2 Z-position of the safety plane Q15 cutting amount 15mm F80 feedrate L0 The data for the cycle only stored. but the cycle is not performed! N085 M98 P7300 subprogram call (4 positions for drilling) N090 G0 G80 G90 X120 Y120 cancel the canned cycle for drilling N095 G0 Z20 M9 N100 G91 G28 Z0 M5 N105 G90 G49 G40 N110 M30 © MTS GmbH • Berlin 113 .

. After chip removal in rapid traverse. F. R.. Y coordinates of the hole position Z depth (Z-position of the bottom of the hole) R Z-position of the safety plane Q cutting amount F feedrate G99 G83 initial point R Q d Q d Q Z .. After this position has been reached...1mm on the CNC-control. Since the tool is moved in rapid traverse to the safety plane R after every feed. NC-Block: G99 G83 X. a thorough chip removal is guaran- teed. Y. The feed of Q is at feedrate and incremental with respect to the safety plane R and it is always positively programmed. Z. Usually the parameter d is preset to 0... Optional Addresses: G99 return to the safety plane R X. The control-specific value d defines the distance of the positioning point for the next infeed Q with respect to the current drilling depth.: rapid traverse R : safety plane : cutting feed Z : depth d : lift-off value Q : cutting amount 114 MTS TeachWare • CNC-Milling • Student’s Book ......Chapter 5 Command: G83 peck drilling cycle Function: The fixed cycle G83 is used for deep hole drilling. Therefore overheating of the tool because of chip accumulation is avoided. the tool is positioned in rapid traverse for the next feed. the next infeed is activated at feedrate. Q....

but the cycle is not performed! N085 M98 P7300 subprogram call (4 positions for drilling) N090 G0 G80 G90 X120 Y120 cancel the canned cycle for drilling N095 G0 Z20 M9 N100 G91 G28 Z0 M5 N105 G90 G49 G40 N110 M30 © MTS GmbH • Berlin 115 . Function and use of cycles Programming Example for the canned cycle: G83 peck drilling with G99 $G54 X X400 Y250 Z140 O 83 N005 G54 N010 G90 G49 G80 G40 G17 G21 N015 G91 G28 Z0 M9 N020 G91 G28 X0 Y0 centering N025 T03 M06 N030 G90 S2200 M03 N035 G0 G43 Z20 H19 N040 G99 G81 Z-3 R2 F80 L0 centering N045 M98 P7300 subprogram call (4 positions for centering) N050 G0 G80 G90 X120 Y120 cancel the canned cycle for centering N055 G0 Z20 M9 N060 G91 G28 Z0 M5 peck drilling with G83 N065 T04 M06 N070 G90 G43 Z20 H20 N075 G0 S2200 M03 N080 G99 G83 Z-35 R2 Q15 F80 L0 G99 return to the safety plane R G83 peck drilling cycle Z-35 depth (Z-position of the bottom of the hole) R2 Z-position of the safety plane Q15 cutting amount 15mm F80 feedrate L0 The data for the cycle only stored.

. For this cycle.10 tapping cycle G84 Command: G84 tapping cycle Function: The fixed cycle G84 is for cutting metric and Withworth right-hand threads. Dwell time P is only effective for programming if it is also set in the CNC-control. Y coordinates of the hole position Z depth (Z-position of the bottom of the hole) R Z-position of the safety plane P dwell time at the bottom of the hole F feedrate G98 G84 initial point M03 R >7mm M03 tapping Z M04 . Optional Addresses: G98 return to the initial point X. the spindle is automatically switched to rotation direction M04 and moved back to the safety plane. The value to be programmed for feedrate F is the mul- tiplication of spindle speed and thread pitch. P..2... After the thread depth has been reached..Chapter 5 5.... Z. R. F = spindle speed (1/min) • thread pitch (mm) NC-Block: G98 G84 X..... F. the safety plane should be programmed at least 7mm above the work part surface. The spindle rotation direction M03 as well as the spindle speed S must be programmed before defining the tapping cycle. Y.: rapid traverse R : safety plane : cutting feed Z : depth M03 : spindle rotation clockwise M04 : spindle rotation counter-clockwise 116 MTS TeachWare • CNC-Milling • Student’s Book ....

Function and use of cycles Programming Example for the canned cycle: G84 tapping cycle with G98 $G54 X400 Y250 Z140 O 8498 N005 G54 N010 G90 G49 G80 G40 G17 G21 N015 G91 G28 Z0 M9 N020 G91 G28 X0 Y0 centering N025 T03 M06 N030 G90 S2200 M03 N035 G0 G43 Z20 H19 N040 G99 G81 Z-3 R2 F80 L0 centering N045 M98 P7300 subprogram call (4 positions for centering) N050 G0 G80 G90 X120 Y120 cancel the canned cycle for centering N055 G0 Z20 M9 N060 G91 G28 Z0 M5 predrilling N065 T04 M06 N070 G90 S2200 M03 N075 G0 G43 Z20 H04 N080 G98 G83 Z-35 R2 Q15 F80 L0 predrilling N085 M98 P7300 subprogram call (4 positions for predrilling) N090 G0 G80 G90 X120 Y120 cancel the canned cycle for predrilling N095 G0 Z20 M9 N100 G91 G28 Z0 M5 tapping with G84 N105 T05 M05 N110 G90 S1000 M03 N115 G0 G43 Z20 H05 N120 G98 G84 Z-30 R7 P1000 F1000 L0 G98 return to the initial point G84 tapping cycle Z-30 thread depth R7 Z-position of the safety plane P1000 dwell time at the bottom of the hole (1 sec) F1000 feedrate L0 The data for the cycle only stored. but the cycle is not performed! N125 M98 P7300 subprogram call (4 positions for tapping) N130 G0 G80 G90 X120 Y120 cancel the canned cycle for tapping N135 G0 Z20 M9 N140 G91 G28 Z0 M5 N145 G90 G49 G40 N150 M30 © MTS GmbH • Berlin 117 .

the safety plane should be programmed at least 7mm above the work part surface. For this cycle... F...Chapter 5 Command: G84 tapping cycle Function: The fixed cycle G84 is for cutting metric and Withworth right-hand threads. R. Y coordinates of the hole position Z depth (Z-position of the bottom of the hole) R Z-position of the safety plane P dwell time at the bottom of the hole F feedrate G99 G84 initial point M03 R >7mm M03 tapping Z M04 .. Z.. After the thread depth has been reached. Y. the spindle is automatically switched to rotation direction M04 and moved back to the safety plane.... Dwell time P is only effective for programming if it is also set in the CNC-control. F = spindle speed (1/min) • thread pitch (mm) NC-Block: G99 G84 X. The spindle rotation direction M03 as well as the spindle speed S must be programmed before defining the tapping cycle.: rapid traverse R : safety plane : cutting feed Z : depth M03 : spindle rotation clockwise M04 : spindle rotation counter-clockwise 118 MTS TeachWare • CNC-Milling • Student’s Book .... The value to be programmed for feedrate F is the mul- tiplication of spindle speed and thread pitch. P.... Optional Addresses: G99 return to the safety plane R X.

but the cycle is not performed! N125 M98 P7300 subprogram call (4 positions for tapping) N130 G0 G80 G90 X120 Y120 cancel the canned cycle for tapping N135 G0 Z20 M9 N140 G91 G28 Z0 M5 N145 G90 G49 G40 N150 M30 © MTS GmbH • Berlin 119 . Function and use of cycles Programming Example for the canned cycle: G84 tapping cycle with G99 $G54 X400 Y250 Z140 O 84 N005 G54 N010 G90 G49 G80 G40 G17 G21 N015 G91 G28 Z0 M9 N020 G91 G28 X0 Y0 centering N025 T03 M06 N030 G90 S2200 M03 N035 G0 G43 Z20 H19 N040 G99 G81 Z-3 R2 F80 L0 centering N045 M98 P7300 subprogram call (4 positions for centering) N050 G0 G80 G90 X120 Y120 cancel the canned cycle for centering N055 G0 Z20 M9 N060 G91 G28 Z0 M5 predrilling N065 T04 M06 N070 G90 S2200 M03 N075 G0 G43 Z20 H20 N080 G98 G83 Z-35 R2 Q15 F80 L0 predrilling N085 M98 P7300 subprogram call (4 positions for predrilling) N090 G0 G80 G90 X120 Y120 cancel the canned cycle for predrilling N095 G0 Z20 M9 N100 G91 G28 Z0 M5 tapping with G84 N105 T05 M05 N110 G90 S1000 M03 N115 G0 G43 Z20 H21 N120 G99 G84 Z-30 R7 P1000 F1000 L0 G99 return to the safety plane R G84 tapping cycle Z-30 thread depth R7 Z-position of the safety plane P1000 dwell time at the bottom of the hole (1 sec) F1000 feedrate L0 The data for the cycle only stored.

Chapter 5 5.. Optional Addresses: G98 return to the initial point X. The tool moves in rapid traverse from the initial position to the safety plane R and reams the hole to the programmed depth at feedrate.. NC-Block: G98 G85 X. The speed for reaming as well as the spindle rotation direction must be programmed before this cycle is defined.. Y... F.. Y coordinates of the hole position Z depth (Z-position of the bottom of the hole) R Z-position of the safety plane F feedrate G98 G85 initial point M03 R M03 reaming Z M03 . Z..11 boring cycle (reaming) G85 Command: G85 boring cycle (reaming) Function: The fixed cycle G85 is for reaming.. The tool then returns to the initial point at feed rate. R. while maintaining rotation direction...2....: rapid traverse R : safety plane : cutting feed Z : depth M03 : spindle rotation clockwise 120 MTS TeachWare • CNC-Milling • Student’s Book .

but the cycle is not performed! N125 M98 P7300 subprogram call (4 positions for reaming) N130 G0 G80 G90 X120 Y120 cancel the canned cycle for reaming N135 G0 Z20 M9 N140 G91 G28 Z0 M5 N145 G90 G49 G40 N150 M30 © MTS GmbH • Berlin 121 . Function and use of cycles Programming Example for the canned cycle: G85 boring cycle (reaming) with G98 $G54 X400 Y250 Z140 O 8598 N005 G54 N010 G90 G49 G80 G40 G17 G21 N015 G91 G28 Z0 M9 N020 G91 G28 X0 Y0 centering N025 T03 M06 N030 G90 S2200 M03 N035 G0 G43 Z20 H19 N040 G99 G81 Z-3 R2 F80 L0 centering N045 M98 P7300 subprogram call (4 positions for centering) N050 G90 G80 G90 X120 Y120 cancel the canned cycle for centering N055 G0 Z20 M9 N060 G91 G28 Z0 M5 predrilling N065 T04 M06 N070 G90 S2200 M03 N075 G0 G43 Z20 H20 N080 G99 G83 Z-35 R2 Q15 F80 L0 predrilling N085 M98 P7300 subprogram call (4 positions for predrilling) N090 G0 G80 G90 X120 Y120 cancel the canned cycle for predrilling N095 G0 Z20 M9 N100 G91 G28 Z0 M5 reaming with G85 N105 T07 M06 N110 G90 S1000 M03 N115 G0 G43 Z20 H23 N120 G98 G85 Z-25 R2 F50 L0 G98 return to the initial point G85 boring cycle (reaming) Z-25 reaming depth R2 Z-position of the safety plane F50 feedrate L0 The data for the cycle only stored.

..Chapter 5 Command: G85 boring cycle (reaming) Function: The fixed cycle G85 is for reaming. The speed for reaming as well as the spindle rotation direction must be programmed before this cycle is defined. The tool moves in rapid traverse from the initial position to the safety plane R and reams the hole to the programmed depth at feedrate... Y coordinates of the hole position Z depth (Z-position of the bottom of the hole) R Z-position of the safety plane F feedrate G99 G85 initial point M03 R M03 reaming Z M03 ..: rapid traverse R : safety plane : cutting feed Z : depth M03 : spindle rotation clockwise 122 MTS TeachWare • CNC-Milling • Student’s Book . The tool then moves to the safety plane R at feed rate and while maintaining rotation direction.. Y... Optional Addresses: G99 return to the safety plane R X... Z. F.. NC-Block: G99 G85 X.. R..

but the cycle is not performed! N125 M98 P7300 subprogram call (4 positions for reaming) N130 G0 G80 G90 X120 Y120 cancel the canned cycle for reaming N135 G0 Z20 M9 N140 G91 G28 Z0 M5 N145 G90 G49 G40 N150 M30 © MTS GmbH • Berlin 123 . Function and use of cycles Programming Example for the canned cycle: G85 boring cycle (reaming) with G99 $G54 X400 Y250 Z140 O 85 N005 G54 N010 G90 G49 G80 G40 G17 G21 N015 G91 G28 Z0 M9 N020 G91 G28 X0 Y0 centering N025 T03 M06 N030 G90 S2200 M03 N035 G0 G43 Z20 H19 N040 G99 G81 Z-3 R2 F80 L0 centering N045 M98 P7300 subprogram call (4 positions for centering) N050 G90 G80 G90 X120 Y120 cancel the canned cycle for centering N055 G0 Z20 M9 N060 G91 G28 Z0 M5 predrilling N065 T04 M06 N070 G90 S2200 M03 N075 G0 G43 Z20 H20 N080 G99 G83 Z-35 R2 Q15 F80 L0 predrilling N085 M98 P7300 subprogram call (4 positions for predrilling) N090 G0 G80 G90 X120 Y120 cancel the canned cycle for predrilling N095 G0 Z20 M9 N100 G91 G28 Z0 M5 reaming with G85 N105 T07 M06 N110 G90 S1000 M03 N115 G0 G43 Z20 H23 N120 G99 G85 Z-25 R2 F50 L0 G99 return to the safety plane R G85 boring cycle (reaming) Z-25 reaming depth R2 Z-position of the safety plane F50 feedrate L0 The data for the cycle only stored.

Chapter 5 5. A spindle stop is activated at the bottom of the hole.. Z..2.. The tool is then removed in rapid traverse to the initial point. Optional Addresses: G98 return to the initial point X.. F..: rapid traverse R : safety plane : cutting feed Z : depth 124 MTS TeachWare • CNC-Milling • Student’s Book . The tool moves in rapid traverse to the safety plane and then feeds at the programmed rate to the specified hole depths. NC-Block: G98 G86 X.... Y. R...12 boring cycle with retraction in rapid traverse G86 Command: G86 boring cycle with retraction in rapid traverse Function: The fixed cycle G86 is used for boring holes in a single operation... Y coordinates of the hole position Z depth (Z-position of the bottom of the hole) R Z-position of the safety plane F feedrate G98 G86 G8G861 initial point R Z spindle stop ..

Function and use of cycles Programming Example for the canned cycle: G86 boring with retraction in rapid traverse with G98 $G54 X400 Y250 Z140 O 8698 N005 G54 N010 G90 G49 G80 G40 G17 G21 N015 G91 G28 Z0 M9 N020 G91 G28 X0 Y0 centering N025 T03 M06 N030 G90 S2200 M03 N035 G0 G43 Z20 H19 N040 G99 G81 Z-3 R2 F80 L0 centering N045 M98 P7300 subprogram call (4 positions for centering) N050 G0 G80 G90 X120 Y120 cancel the canned cycle for centering N055 G0 Z20 M9 N060 G91 G28 Z0 M5 drilling with G86 N065 T08 M06 N070 G90 S2000 M03 N075 G0 G43 Z20 H24 N080 G98 G86 Z-25 R2 F80 L0 G98 return to the initial point G86 boring cycle with retraction in rapid traverse Z-25 depth (Z-position of the bottom of the hole) R2 Z-position of the safety plane F80 feedrate L0 The data for the cycle only stored. but the cycle is not performed! N085 M98 P7300 subprogram call (4 positions for drilling) N090 G0 G80 G90 X120 Y120 cancel the canned cycle for drilling N095 G0 Z20 M9 N100 G91 G28 Z0 M5 N105 G90 G49 G40 N110 M30 © MTS GmbH • Berlin 125 .

Y coordinates of the hole position Z depth (Z-position of the bottom of the hole) R Z-position of the safety plane F feedrate G99 G86 initial point R Z spindle stop .. The tool moves in rapid traverse to the safety plane and then feeds at the programmed rate to the specified hole depths.Chapter 5 Command: G86 boring cycle with retraction in rapid traverse Function: The fixed cycle G86 is used for boring holes in a single operation..... The tool is then removed in rapid traverse to the safety plane R. Z.. A spindle stop is activated at the bottom of the hole... NC-Block: G99 G86 X.. F. Y..: rapid traverse R : safety plane : cutting feed Z : depth 126 MTS TeachWare • CNC-Milling • Student’s Book . Optional Addresses: G99 return to the safety plane R X.... R.

Function and use of cycles Programming Example for the canned cycle: G86 boring with retraction in rapid traverse with G99 $G54 X400 Y250 Z140 O 86 N005 G54 N010 G90 G49 G80 G40 G17 G21 N015 G91 G28 Z0 M9 N020 G91 G28 X0 Y0 centering N025 T03 M06 N030 G90 S2200 M03 N035 G0 G43 Z20 H19 N040 G99 G81 Z-3 R2 F80 L0 centering N045 M98 P7300 subprogram call (4 positions for centering) N050 G0 G80 G90 X120 Y120 cancel the canned cycle for centering N055 G0 Z20 M9 N060 G91 G28 Z0 M5 drilling with G86 N065 T08 M06 N070 G90 S2000 M03 N075 G0 G43 Z20 H24 N080 G99 G86 Z-25 R2 F80 L0 G99 return to the safety plane R G86 boring cycle with retraction in rapid traverse Z-25 depth (Z-position of the bottom of the hole) R2 Z-position of the safety plane F80 feedrate L0 The data for the cycle only stored. but the cycle is not performed! N085 M98 P7300 subprogram call (4 positions for drilling) N090 G0 G80 G90 X120 Y120 cancel the canned cycle for drilling N095 G0 Z20 M9 N100 G91 G28 Z0 M5 N105 G90 G49 G40 N110 M30 © MTS GmbH • Berlin 127 .

..) Parameter: (Q) shift amount Command: G87 boring cycle Function: If Q is not programmed. Z.. After the tool is moved in rapid traverse to the safety plane.Chapter 5 5. the infeed to the programmed depth is achieved in one machining operation.. NC-Block: G98 G87 X.... Z.. Y coordinates of the hole position Z depth (Z-position of the bottom of the hole) R Z-position of the safety plane F feedrate G98 G87 initial point R manual Z spindle stop . Programming shift Q specifies a back boring cycle. Then the control returns the tool in rapid traverse to the initial point... R..2.... Y. The tool must then be manually moved back to the safety plane R.. Y.. G87 is interpreted as a normal boring cycle. F.13 boring cycle / back boring cycle G87 Command: G87 boring cycle / back boring cycle Function: The fixed cycle G87 can be used as a normal boring cycle or as a back boring cy- cle. F. (Q. Optional Addresses: G98 return to the initial point X. A spindle stop is activated at the bottom of the hole....: rapid traverse R : safety plane : cutting feed Z : depth 128 MTS TeachWare • CNC-Milling • Student’s Book . NC-Block: G98 G86 X...... The cycle behavior during execution varies depending on this parameter. R..

.. NC-Block: G99 G87 X.. Optional Addresses: G99 return to the safety plane R X.: rapid traverse R : safety plane : cutting feed Z : depth © MTS GmbH • Berlin 129 .. The tool must then be minimally lifted from the bottom by hand before the control moves to the safety plane in rapid traverse.. Y coordinates of the hole position Z depth (Z-position of the bottom of the hole) R Z-position of the safety plane F feedrate G99 G87 initial point R manual Z spindle stop . R. A spindle stop is activated at the bottom of the hole.. Z. Function and use of cycles Command: G87 boring cycle Function: If Q is not programmed. Y... F. After the tool is moved in rapid traverse to the safety plane... the infeed to the programmed depth is achieved in one machining operation... G87 is interpreted as a normal boring cycle..

Optional Addresses: G98 return to the initial point X.. The tool must then be manually moved back to the safety plane R.. The control then returns the tool in rapid traverse to the initial point. A spindle stop is activated at the bottom of the hole after a programmed dwell time.. P..2...Chapter 5 5. Y coordinates of the hole position Z depth (Z-position of the bottom of the hole) R Z-position of the safety plane P dwell time at the bottom of the hole F feedrate G98 G88 initial point R manual Z spindle stop after dwell .... After the tool is moved in rapid traverse to the safety plane...... R. NC-Block: G98 G88 X.: rapid traverse R : safety plane : cutting feed Z : depth 130 MTS TeachWare • CNC-Milling • Student’s Book . Z.. Y. F. the infeed to the programmed depth is achieved in one machining operation.14 boring cycle G88 Command: G88 boring cycle Function: The fixed cycle G88 is for boring holes in a single infeed.

. Z.. NC-Block: G99 G88 X.. the infeed to the programmed depth is achieved in one machining operation.... Function and use of cycles Command: G88 boring cycle Function: The fixed cycle G88 is for boring holes in a single infeed.. R.. The tool must then be minimally lifted from the bottom by hand before the control moves to the safety plane in rapid traverse. Y.... Y coordinates of the hole position Z depth (Z-position of the bottom of the hole) R Z-position of the safety plane P dwell time at the bottom of the hole F feedrate G99 G88 initial point R manual Z spindle stop after dwell . A spindle stop is activated at the bottom of the hole after a programmed dwell time.. P. F. After the tool is moved in rapid traverse to the safety plane. Optional Addresses: G99 return to the safety plane R X..: rapid traverse R : safety plane : cutting feed Z : depth © MTS GmbH • Berlin 131 ...

15 boring cycle with dwell time (reaming) G89 Command: G89 boring cycle with dwell time (reaming) Function: The fixed cycle G89 is for reaming drilled holes...: rapid traverse R : safety plane : cutting feed Z : depth 132 MTS TeachWare • CNC-Milling • Student’s Book .. It guarantees a clean wipe of the hole bottom... Z. Optional Addresses: G98 return to the initial point X..Chapter 5 5... The tool travels from the initial position to the safety plane R in rapid traverse and reams the hole at feedrate to the pro- grammed depth. The reaming speed as well as the spindle rotation direction must be programmed before the cycle is defined. It then moves in rapid traverse to the initial point. F.2. NC-Block: G98 G89 X..... The tool dwells there at the programmed dwell time P and returns then to the safety plane R at feedrate while maintaining rotation direction. Y coordinates of the hole position Z depth (Z-position of the bottom of the hole) R Z-position of the safety plane P dwell time at the bottom of the hole F feedrate G98 G89 initial point R reaming Z dwell time .. R. Y... P.

Function and use of cycles Programming Example for the canned cycle: G89 boring cycle with dwell time(reaming) with G98 $G54 X400 Y250 Z140 O 8998 N005 G54 N010 G90 G49 G80 G40 G17 G21 N015 G91 G28 Z0 M9 N020 G91 G28 X0 Y0 centering N025 T03 M06 N030 G90 S2200 M03 N035 G0 G43 Z20 H19 N040 G99 G81 Z-3 R2 F80 L0 centering N045 M98 P7300 subprogram call (4 positions for centering) N050 G0 G80 G90 X120 Y120 cancel the canned cycle for centering N055 G0 Z20 M9 N060 G91 G28 Z0 M5 predrilling N065 T04 M06 N070 G90 S2200 M03 N075 G0 G43 Z20 H20 N080 G99 G83 Z-35 R2 Q15 F80 L0 predrilling N085 M98 P7300 subprogram call (4 positions for predrilling) N090 G0 G80 G90 X120 Y120 cancel the canned cycle for predrilling N095 G0 Z20 M9 N100 G91 G28 Z0 M5 reaming with G89 N105 T07 M06 N110 G90 S1000 M03 N115 G0 G43 Z20 H23 N120 G98 G85 Z-25 R2 P2000 F50 L0 G98 return to the initial point G85 boring cycle (reaming) Z-25 reaming depth R2 Z-position of the safety plane P2000 dwell time at the bottom of the hole F50 feedrate L0 The data for the cycle only stored. but the cycle is not performed! N125 M98 P7300 subprogram call (4 positions for reaming) N130 G0 G80 G90 X120 Y120 cancel the canned cycle for reaming N135 G0 Z20 M9 N140 G91 G28 Z0 M5 N145 G90 G49 G40 N150 M30 © MTS GmbH • Berlin 133 .

. P... The tool dwells there at the programmed dwell time P and moves then to the safety plane R at feedrate while maintaining rotation direction... R. The reaming speed as well as the spindle rotation direction must be programmed before the cycle is defined...: rapid traverse R : safety plane : cutting feed Z : depth 134 MTS TeachWare • CNC-Milling • Student’s Book . Y coordinates of the hole position Z depth (Z-position of the bottom of the hole) R Z-position of the safety plane P dwell time at the bottom of the hole F feedrate G99 G89 initial point R reaming Z dwell time . The tool travels from the initial position to the safety plane R in rapid traverse and reams the hole at feedrate to the pro- grammed depth... Z. F. NC-Block: G99 G89 X....Chapter 5 Command: G89 boring cycle with dwell time (reaming) Function: The fixed cycle G89 is for reaming drilled holes... Y. Optional Addresses: G99 return to the safety plane R X. It guarantees a clean wipe of the hole bottom..

but the cycle is not performed! N125 M98 P7300 subprogram call (4 positions for reaming) N130 G0 G80 G90 X120 Y120 cancel the canned cycle for reaming N135 G0 Z20 M9 N140 G91 G28 Z0 M5 N145 G90 G49 G40 N150 M30 © MTS GmbH • Berlin 135 . Function and use of cycles Programming Example for the canned cycle: G89 boring cycle with dwell time(reaming) with G99 $G54 X400 Y250 Z140 O 89 N005 G54 N010 G90 G49 G80 G40 G17 G21 N015 G91 G28 Z0 M9 N020 G91 G28 X0 Y0 centering N025 T03 M06 N030 G90 S2200 M03 N035 G0 G43 Z20 H19 N040 G99 G81 Z-3 R2 F80 L0 centering N045 M98 P7300 subprogram call (4 positions for centering) N050 G0 G80 G90 X120 Y120 cancel the canned cycle for centering N055 G0 Z20 M9 N060 G91 G28 Z0 M5 predrilling N065 T04 M06 N070 G90 S2200 M03 N075 G0 G43 Z20 H20 N080 G99 G83 Z-35 R2 Q15 F80 L0 predrilling N085 M98 P7300 subprogram call (4 positions for predrilling) N090 G0 G80 G90 X120 Y120 cancel the canned cycle for predrilling N095 G0 Z20 M9 N100 G91 G28 Z0 M5 reaming with G89 N105 T07 M06 N110 G90 S1000 M03 N115 G0 G43 Z20 H23 N120 G99 G85 Z-25 R2 P2000 F50 L0 G99 return to the safety plane R G85 boring cycle (reaming) Z-25 reaming depth R2 Z-position of the safety plane P2000 dwell time at the bottom of the hole F50 feedrate L0 The data for the cycle only stored.

Block Commands Description No.16 A program example FANUC 16M with explanations An example of a program using canned cycles is subsequently described in detail.2. (NC-Programmdatei: FX1909.Chapter 5 5. O1909 O program number O and program name N05 G54 G54 select work cordinate system one N10 G90 G80 G40 G49 G17 G21 G90 absolute dimensioning G80 cancel canned cycle G40 cancel cutter radius compensation G49 cancel tool length compensation G17 XY-plane G21 metric input N20 G91 G28 Z0 M9 G91 incremental dimensioning G28 reference point return Z0 coordinate M9 deactivate coolant N30 G91 G28 X0 Y0 G91 incremental dimensioning G28 reference point return X0 coordinate Y0 coordinate N40 T01 M06 T01 select the tool T01 M06 mounting the tool N50 G90 S1600 M3 G90 absolute dimensioning S1600 spindle speed M3 activate the spindle in clockwise rotation N60 G0 G43 Z20 H17 G0 rapid traverse G43 tool length compensation + Z20 coordinate H17 select the compensation offset N70 X-20 Y-20 Z2 X-20 coordinate Y-20 coordinate N80 Z-8 M08 Z-8 coordinate M08 activate coolant N90 G41 G01 X5 D01 F250 G41 cutter radius compensation left G01 linear interpolation in slow feed motion X5 coordinate D01 offset number F250 feedrate in mm/min N100 Y110 Y110 coordinate N110 G0 X95 G0 rapid traverse X95 coordinate N120 G1 Y-10 G01 linear interpolation in slow feed motion Y-10 coordinate N130 G40 G0 X-20 Y-20 G40 cancel cutter radius compensation G0 rapid traverse X-20 coordinate Y-20 coordinate N140 Z-6 Z-6 coordinate N150 G41 G1 X10 D1 G41 cutter radius compensation left G1 linear interpolation in slow feed motion X10 coordinate D1 offset number N160 G1 Y82 G1 linear interpolation in slow feed motion Y82 coordinate 136 MTS TeachWare • CNC-Milling • Student’s Book .FNC).

N170 G2 X18 Y90 R8 G2 circular interpolation clockwise X18 coordinate of the center of the circular arc Y90 coordinate of the center of the circular arc R8 radius of the circular arc N180 G1 X82 G1 linear interpolation in slow feed motion X82 coordinate N190 G2 X90 Y82 R8 G2 circular interpolation clockwise X90 coordinate of the center of the circular arc Y82 coordinate of the center of the circular arc R8 radius of the circular arc N200 G1 Y18 G1 linear interpolation in slow feed motion Y18 coordinate N210 G2 X82 Y10 R8 G2 circular interpolation clockwise X82 coordinate of the center of the circular arc Y10 coordinate of the center of the circular arc R8 radius of the circular arc N220 G1 X18 G1 linear interpolation in slow feed motion X18 coordinate N230 G2 X10 Y18 R8 G2 circular interpolation clockwise X10 coordinate of the center of the circular arc Y18 coordinate of the center of the circular arc R8 radius of the circular arc N240 G3 X-10 Y38 R20 G3 circular interpolation counter-clockwise X-10 coordinate of the center of the circular arc Y38 coordinate of the center of the circular arc R20 radius of the circular arc N250 G40 G0 X-20 Y-20 G40 cancel cutter radius compensation G0 rapid traverse N260 Z-4 Z-4 coordinate N270 G41 G0 X15 D1 G41 cutter radius compensation left G0 rapid traverse X15 coordinate D1 offset number N280 G1 Y65 G1 linear interpolation in slow feed motion Y65 coordinate N290 X35 Y85 X35 coordinate Y85 coordinate N300 X65 X65 coordinate N310 X85 Y65 X85 coordinate Y65 coordinate N320 Y35 Y35 coordinate N330 X65 Y15 X65 coordinate Y15 coordinate N340 X35 X35 coordinate N350 X5 Y45 X5 coordinate Y45 coordinate N360 G40 G0 X-20 Y-20 G40 cancel cutter radius compensation G0 rapid traverse X-20 coordinate Y-20 coordinate N370 Z-2 Z-2 coordinate N380 G41 X25 D1 G41 cutter radius compensation left X25 coordinate D1 offset number N390 G1 Y50 G1 linear interpolation in slow feed motion Y50 coordinate © MTS GmbH • Berlin 137 . Function and use of cycles Block Commands Description No.

N400 G2 X25 Y50 I25 G2 circular interpolation clockwise X25 coordinate Y50 coordinate I25 X-coordinate of the center of the circular arc N410 G40 G1 Y65 G40 cancel cutter radius compensation G1 linear interpolation in slow feed motion Y65 coordinate N420 G0 Z5 M9 G0 rapid traverse Z5 coordinate M9 deactivate coolant N430 G91 G28 Z0 M5 G91 incremental dimensioning G28 reference point return Z0 coordinate M5 deactivate spindle N440 G91 G28 X0 Y0 G91 incremental dimensioning G28 reference point return X0 coordinate Y0 coordinate N450 T02 M06 T02 select the tool T02 M06 mounting the tool N460 G90 S1800 M3 G90 absolute dimensioning S1800 spindle speed M3 activate the spindle in clockwise rotation N470 G0 G43 Z20 H18 G0 rapid traverse G43 tool length compensation + Z20 coordinate H18 select the compensation offset N480 X50 Y50 Z2 M08 X50 coordinate Y50 coordinate Z2 coordinate M08 activate coolant N490 G1 Z-4 F50 G1 linear interpolation in slow feed motion Z-4 coordinate F50 Feedrate in mm/min N500 G42 G1 X38 Y53 D2 G42 cutter radius compensation right G1 linear interpolation in slow feed motion X38 coordinate Y53 coordinate D2 offset number N510 G2 X50 Y65 R12 F200 G2 circular interpolation clockwise X50 coordinate Y65 coordinate R12 radius of the circular arc F200 feedrate in mm/min N520 G2 J-15 G2 circular interpolation clockwise J-15 Y-coordinate of the center of the circular arc N530 G2 X62 Y53 R12 G2 circular interpolation clockwise X62 coordinate Y53 radius of the circular arc N540 G40 G1 X50 Y50 G40 cancel cutter radius compensation G1 linear interpolation in slow feed motion X50 coordinate Y50 coordinate N550 G0 Z20 M9 G0 rapid traverse Z20 coordinate M9 deactivate coolant 138 MTS TeachWare • CNC-Milling • Student’s Book .Chapter 5 Block Commands Description No.

but the cycle is not performed! N630 M98 P1910 M98 subprogram call P1910 name of the subprogram N640 G0 Z20 M9 G0 rapid traverse Z20 coordinate M9 deactivate coolant N650 G91 G28 Z0 M5 G91 incremental dimensioning G28 reference point return Z0 coordinate M5 deactivate spindle N660 T04 M06 T04 select the tool T04 M06 mounting the tool N670 G90 S1000 M03 G90 absolute dimensioning S1000 spindle speed M03 activate the spindle in clockwise rotation N680 G0 G43 Z20 H20 G0 linear interpolation in slow feed motion G43 tool length compensation + Z20 coordinate H20 select the compensation offset N690 X0 Y0 Z2 X0 coordinate Y0 coordinate Z2 coordinate N700 G99 G83 Z-10 Q6 R2 F50 L0 G99 return to the safety plane R G83 peck drilling cycle Z-10 Depth (Z-position of the bottom of the hole) Q6 cutting amount R2 Z-position of the safety plane F50 feedrate in mm/min L0 The data for the cycle only stored. N560 G91 G28 Z0 M05 G91 incremental dimensioning G28 reference point return Z0 coordinate M05 deactivate spindle N570 G91 G28 X0 Y0 G91 incremental dimensioning G28 reference point return X0 coordinate Y0 coordinate N580 T03 M06 T03 select the tool T03 M06 mounting the tool N590 G90 S2200 M03 G90 absolute dimensioning S2200 spindle speed M03 activate the spindle in clockwise rotation N600 G0 G43 Z20 H19 G0 linear interpolation in slow feed motion G43 tool length compensation + Z20 coordinate H19 select the compensation offset N610 X0 Y0 Z2 X0 coordinate Y0 coordinate Z2 coordinate N620 G99 G81 Z-5 R2 F80 L0 G99 return to the safety plane R G81 canned cycle for centering Z-5 depth (Z-position of the bottom of the hole) R2 Z-position of the safety plane F80 Feedrate in mm/min L0 the data for the cycle only stored. but the cycle is not performed! © MTS GmbH • Berlin 139 . Function and use of cycles Block Commands Description No.

but the cycle is not performed! N790 M98 P1910 M98 subprogram call P1910 name of the subprogram N800 G0 Z20 M9 G0 rapid traverse Z20 coordinate M9 deactivate coolant N810 G91 G28 Z0 M05 G91 incremental dimensioning G28 reference point return Z0 coordinate M05 deactivate spindle N820 G91 G28 X0 Y0 G91 incremental dimensioning G28 reference point return X0 coordinate Y0 coordinate N830 G90 G49 G80 G90 absolute dimensioning G49 cancel tool length compensation G80 cancel canned cycle N840 M30 M30 program end 140 MTS TeachWare • CNC-Milling • Student’s Book .Chapter 5 Block Commands Description No. N710 M98 P1910 M98 subprogram call P1910 name of the subprogram N720 G0 Z20 M9 G0 rapid traverse Z20 coordinate M9 deactivate coolant N730 G91 G28 Z0 M5 G91 incremental dimensioning G28 reference point return Z0 coordinate M5 deactivate spindle N740 T05 M06 T05 select the tool T05 M06 mounting the tool N750 G90 S150 M03 G90 absolute dimensioning S150 spindle speed M03 activate the spindle in clockwise rotation N760 G0 G43 Z20 H21 G0 linear interpolation in slow feed motion G43 tool length compensation + Z20 coordinate H21 select the compensation offset N770 X0 Y0 Z2 X0 coordinate Y0 coordinate Z2 coordinate N780 G99 G84 Z-8 R4 F150 L0 G99 return to the safety plane R G84 tapping cycle Z-8 depth (Z-position of the bottom of the hole) R4 Z-position of the safety plane F50 feedrate in mm/min L0 the data for the cycle only stored.

macros are standard programs which are installed in the control and can be used for easier programming.3 Macros Similar to canned cycles.control must perform extensive calculations. the CNC.. specific milling operations are executed. also called macros in the FANUC-control.3. cir- cular pockets.g.1 Definition In milling cycles. e. e. initial point 1 R 4 2 3 Z 1 move to the safety plane R 3 milling operation 2 multiple infeed in Z-direction 4 retract to the initial point .. to generate the individual travel motions for a circular pocket. 5.. Function and use of cycles 5. Sequence of a macro The basic sequence of a macro is subsequently illustrated. For these macros.g.: rapid traverse R : safety plane : cutting feed Z : depth © MTS GmbH • Berlin 141 .

. 9190 U lateral side length pitch in X direction by 9200 V longitudinal side length pitch in Y direction by 9200 X X coordinate of circular center by 9180 Y Y coordinate of circular center by 9180 Z depth (Z-position of the bottom of the pocket) 142 MTS TeachWare • CNC-Milling • Student’s Book .. A. S optional addresses A starting angle of the first hole by 9180. 9190 M setting mode for R and Z Q cutting direction by 9110 infeed per pass by 9120. I..... R. 9130.. 9190 B pitch angle C approach circle radius D cutter radius offset number quantity by 9190 number of holes in X direction by 9200 F feedrate H cutting width per pass number of holes in Y direction by 9200 I cutting circle radius by 9110 radius of corner arc by 9130 radius of circle by 9180.....) and the optional addresses.. D... 9140 R Z-position of the safety plane S approach feedrate subprogram number by 9180.Chapter 5 A macro is programmed with the command G65.. the macro number (P. X.. G65 P9180.. Y.

The availability of the cycles varies ac- cording to machine. Function and use of cycles 5. the macros for the control FANUC 16 M are listed.2 Survey Subsequently. G-Code Number of Macro Description G65 P 9110 finishing inside of circle G65 P 9120 deep cutting of circular pocket G65 P 9130 finish cutting inside of square pocket G65 P 9140 deep cutting of square pocket G65 P 9180 bolt hole circle G65 P 9190 positioning on arc G65 P 9200 matrix machining © MTS GmbH • Berlin 143 .3.

000 Z+176.000 Z+118.00-HM 90 ISO 9766 T15 STEP DRILL DS-11.000 D11 R006.000 D20 R000.000 Top front left corner of the part X+400.500 Z+106.4-090 HSS ISO 3439 T16 CORE DRILL DC-16.000 144 MTS TeachWare • CNC-Milling • Student’s Book .500 D14 R000.500 D18 R008.000 Z+147.000 D07 R000.500 D16 R000.381 Z+104.00/54. Set-up-sheet CONFIGURATION MACHINE MAKINO FX 650 CONTROL FANUC 16M FX650 BLANK DIMENSIONS X+150.5/06.000 D25 R009.000 D19 R008.00/087 HSS ISO 235 T08 SLOT MILLING TOOL MS-08.000 SHIFT V+000.000 Z+106.000 Z+104.000 MATERIAL AlMg 1::Aluminium VISE MAKFX 160 CHUCKED HEIGHT E+031.Chapter 5 5.000 Z+135.000 Z+110.500 D04 R000.000 Z+104.000 D15 R000.000 Z+110.0/60 HSS ISO 3859 T13 CORNER TOOL TYPE B CB-20/08.0/12 HSS ISO 1641 T12 ANGULAR CUTTER TYP A CA-20/08.000 Z+135.000 Z+117.500 D05 R008.00/087 HSS ISO 235 T04 TAP TA-M06.0/H7 HSS ISO 521 T11 RADIUS CUTTER RC-12/06.500 D13 R005.0/038K HSS ISO 1641 T10 REAMER RE-D10.3.500 D08 R004.000 Z+135.000 Z+195.000 D09 R010.000 PART POSITION X+400.000 Z+142.000 Z+147.500 D21 R004.000 Z+176.000 D02 R010.000 Z+098.0/1.000 Z+183.000 ORIENTATION A0° CURRENT TOOL T01 TOOLS T01 SHELL END MILL MW-040/032 HSS ISO 2586 T02 SLOT MILLING TOOL MS-20.0/011K HSS ISO 1641 T09 SIDEMILL ME-20.00 HSS ISO 2857 T05 SLOT MILLING TOOL MS-16.0/60 HSS ISO 3859 T14 REVERSIBLE TIP DRL DI-20.000 Y+150.000 D06 R031.0/090 HSS ISO 3294 TOOL COMPENSATION D01 R020.000 D10 R000.000 Y+230.500 D12 R010.000 Z+154.0/075L HSS ISO 1641 T03 DRILL DR-05.0/063L HSS ISO 1641 T06 FACE END MILL MF-063/40/22 HM 90 T07 DRILL DR-05.000 D22 R011.000 Z+025.000 Z+135.000 D03 R000.000 Y+230.3 Application The simulator is to be set-up according to the following set-up sheet for all subsequent program examples.000 Z+132.

C.. R.. for incremental values of R and Z.... Function and use of cycles 5...... The cutter radius compensation is used. Optional Addresses: I cutting circle radius D cutter radius offset number R Z-position of the safety plane Z Z-position of the bottom of the pocket F feedrate C approach circle radius S approach feedrate Q cutting direction M setting mode for R and Z R Z .4 finishing inside of circle macro P9110 Command: G65 P9110 finishing inside of circle NC-Block: G65 P9110 I. Z. D.... Q.... M. F.: rapid traverse R : safety plane : cutting feed Z : depth Note: The offset value must be less than the approach circle radius. Omit M for absolute values of R and Z....3. © MTS GmbH • Berlin 145 .. for counterwise cutting direction and omit Q for counter-clockwise cut- ting direction. S.. Specify M1. Specify Q1.

Chapter 5 Programming Example for the macro: G65 P9110 finishing inside of circle $G54 X400 Y250 Z140 O 110 N010 G54 N015 G90 G49 G80 G40 G17 G21 N020 G91 G28 Z0 M9 N025 G91 G28 X0 Y0 N030 T02 M6 N035 G90 S1800 M3 N040 G0 G43 Z20 H18 N045 X50 Y50 M8 N050 G65 P9120 I30 D22 H15 Z-20 R2 Q6 F90 S45 deep cutting of circular pocket Note: the cutter radius offset number D22 is used for the roughing of the pocket ! N055 G90 S2200 M3 N060 G65 P9110 I30 D2 R-18 Z-20 F60 C12 S100 Q1 P9110 finishing inside of circle I30 cutting circle radius D2 cutter radius offset number R-18 Z-position of the safety plane Z-20 Z-position of the bottom of the pocket F60 feedrate C12 approach circle radius S100 approach feedrate Q1 counterwise cutting direction N065 G0 Z20 M9 N070 G91 G28 Z0 M5 N075 G90 G49 G80 G40 N080 M30 146 MTS TeachWare • CNC-Milling • Student’s Book .

. R. M. Omit M for absolute values of R and Z.. F. © MTS GmbH • Berlin 147 ... S..... for counterwise cutting direction and omit Q for counter-clockwise cut- ting direction. Optional Addresses: I cutting circle radius D cutter radius offset number H cutting width per pass R Z-position of the safety plane Z Z-position of the bottom of the pocket F feedrate S approach feedrate Q infeed per pass M setting mode for R and Z nitial point R Q Q Z ... D... Specify Q1. Only the counter-clockwise cutting direction is available. H.: rapid traverse R : safety plane : cutting feed Z : depth Note: Specify H so that it is less than the cutter diameter... for incremental values of R and Z.. Function and use of cycles 5... Z.... Q...5 deep cutting of circular pocket macro P9120 Command: G65 P9120 deep cutting of circular pocket NC-Block: G65 P9120 I. Specify M1.3.

Chapter 5 Programming Example for the macro: G65 P9120 deep cutting of circular pocket $G54 X400 Y250 Z140 O 120 N010 G54 N015 G90 G49 G80 G40 G17 G21 N020 G91 G28 Z0 M9 N025 G91 G28 X0 Y0 N030 T02 M6 N035 G90 S1800 M3 N040 G0 G43 Z20 H18 N045 X50 Y50 M8 N050 G65 P9120 I30 D2 H15 Z-20 R2 Q6 F60 S30 P9120 deep cutting of circular pocket I30 cutting circle radius D2 cutter radius offset number H15 cutting width per pass Z-20 Z-position of the bottom of the pocket R2 Z-position of the safety plane Q6 infeed per pass F60 feedrate S30 approach feedrate N055 G0 Z20 M9 N060 G91 G28 Z0 M5 N065 G90 G49 G80 G40 N070 M30 148 MTS TeachWare • CNC-Milling • Student’s Book .

... Q.......6 finish cutting inside of square macro P9130 Command: G65 P9130 finish cutting inside of square NC-Block: G65 P9130 U.. © MTS GmbH • Berlin 149 . for counterwise cutting direction and omit Q for counter-clockwise cutting direction. Omit M for absolute values of R and Z..: rapid traverse R : safety plane : cutting feed Z : depth Note: Don´t specify I if no corner circle is inserted.. Optional Addresses: U lateral side length V longitudinal side length C approach circle radius D cutter radius offset number R Z-position of the safety plane Z Z-position of the bottom of the pocket F feedrate S approach feedrate I radius of corner arc Q cutting direction M setting mode for R and Z R Z . R. M......... Specify Q1. V. D.. Function and use of cycles 5. Specify M1. C.. F.. The offset value must be less than the approach circle radius and less than the radius of corner arc. I. Z.. for incremental values of R and Z..3. S.

Chapter 5 Programming Example for the macro: G65 P9130 finish cutting inside of square $G54 X400 Y250 Z135 O 130 N010 G54 N020 G90 G49 G80 G40 G17 G21 N020 G91 G28 Z0 M9 N025 G91 G28 X0 Y0 N030 T2 M6 N035 G90 S1800 M3 N040 G0 G43 Z20 H18 N045 X50 Y50 M8 N050 G65 P9140 U80 V70 D22 R2 Z-20 Q6 F90 S40 H15 Note: the cutter radius offset number D22 is used for the roughing of the pocket ! N055 S2200 M3 N060 G65 P9130 U80 V70 C20 D2 R2 Z-20 F60 S100 I15 Q1 P9130 finish cutting inside of square pocket U80 lateral side length V70 longitudinal side length C20 approach circle radiusv D2 cutter radius offset number R2 Z-position of the safety plane Z-20 Z-position of the bottom of the pocket F60 feedrate S100 approach feedrate I15 radius of corner arc Q1 counterwise cutting direction N065 G0 Z20 M9 N070 G91 G28 Z0 M5 N075 G90 G49 G80 G40 N080 M30 150 MTS TeachWare • CNC-Milling • Student’s Book .

Chapter 5 Programming Example for the macro: G65 P9140 deep cutting of square pocket $G54 X400 Y250 Z135 O 140 N010 G54 N015 G90 G49 G80 G40 G17 G21 N020 G91 G28 Z0 M9 N025 G91 G28 X0 Y0 N030 T2 M6 N035 G90 S1800 M3 N040 G0 G43 Z20 H18 N045 X50 Y50 M8 N050 G65 P9140 U80 V70 D2 R2 Z-20 Q6 F90 S40 H15 P9140 deep cutting of square pocket U80 lateral side length V70 longitudinal side length D2 cutter radius offset number R2 Z-position of the safety plane Z-20 Z-position of the bottom of the pocket Q6 infeed per pass F90 feedrate S40 approach feedrate H15 cutting width per pass N055 G0 Z20 M9 N060 G91 G28 Z0 M5 N065 G90 G49 G80 G40 N070 M30 152 MTS TeachWare • CNC-Milling • Student’s Book .

Chapter 5 Programming Example for the macro: G65 P9140 deep cutting of square pocket $G54 X400 Y250 Z135 O 140 N010 G54 N015 G90 G49 G80 G40 G17 G21 N020 G91 G28 Z0 M9 N025 G91 G28 X0 Y0 N030 T2 M6 N035 G90 S1800 M3 N040 G0 G43 Z20 H18 N045 X50 Y50 M8 N050 G65 P9140 U80 V70 D2 R2 Z-20 Q6 F90 S40 H15 P9140 deep cutting of square pocket U80 lateral side length V70 longitudinal side length D2 cutter radius offset number R2 Z-position of the safety plane Z-20 Z-position of the bottom of the pocket Q6 infeed per pass F90 feedrate S40 approach feedrate H15 cutting width per pass N055 G0 Z20 M9 N060 G91 G28 Z0 M5 N065 G90 G49 G80 G40 N070 M30 152 MTS TeachWare • CNC-Milling • Student’s Book .

I. S...... A. Don´t specify S by programming a canned cycle (first possibility).... Note: Use the absolute input value (G90) for positioning. Optional Addresses: X X coordinate of circular center Y Y coordinate of circular center I radius of circle D number of holes equally spaced A starting angle of the first hole S subprogram number called Y initial point hole position 5 hole position A R X (X... A........... 2) for multi-block machining G65 P9180 X. Y.: rapid traverse R : safety plane : cutting feed Z : depth There are two possibilities to use the bolt hole circle: 1) for drilling: G90 G98 G81 Z-3 R2 F80 L0 G65 P9180 X. Y...8 bolt hole circle macro P9180 Command: G65 P9180 bolt hole circle NC-Block: G65 P9180 X... I.. Y. D. D. Y. S.... © MTS GmbH • Berlin 153 .3. D.... I...... G80 X.Y) Z for example drilling cycle G81 .. The subprogram must be programmed with incremental value input (second possibility). Function and use of cycles 5.... A..

Chapter 5 Programming Example for the macro: G65 P9180 bolt hole circle for drilling $G54 X400 Y250 Z135 O 180 N010 G54 N015 G90 G49 G80 G40 G17 G21 N020 G91 G28 Z0 M9 N025 G91 G28 X0 Y0 N030 T03 M6 N035 G90 S1800 M3 N040 G0 G43 Z20 H19 M8 N045 G98 G83 Z-20 R2 Q6 F80 L0 definition of a peck drilling cycle N050 G65 P9180 X50 Y50 I30 D6 A0 P9180 bolt hole circle X50 X coordinate of circular center Y50 Y coordinate of circular center I30 radius of circle D6 number of holes equally spaced A0 starting angle of the first hole N055 G80 N060 G0 Z20 M9 N065 G91 G28 Z0 M5 N070 G90 G49 G40 N075 M30 154 MTS TeachWare • CNC-Milling • Student’s Book .

Function and use of cycles Programming Example for the macro: G65 P9180 bolt hole circle for multi-block machining $G54 X400 Y250 Z135 O 180 N010 G54 N015 G90 G49 G80 G40 G17 G21 N020 G91 G28 Z0 M9 N025 G91 G28 X0 Y0 N030 T03 M6 N035 G90 S1800 M3 N040 G0 G43 Z20 H19 N045 Z2 M8 N055 G65 P9180 X50 Y50 I30 D6 A0 S9180 P9180 bolt hole circle X50 X coordinate of circular center Y50 Y coordinate of circular center I30 radius of circle D6 number of holes equally spaced A0 starting angle of the first hole S9180 subprogram number called N060 G80 N065 G0 Z20 M9 N070 G91 G28 Z0 M5 N075 G90 G49 G40 N080 M30 Subprogram 9180 N10 G91 N15 G1 Z-7 F80 N20 G0 Z7 N25 G90 N40 M99 © MTS GmbH • Berlin 155 .

. S... B.. A.. B... A.. The subprogram must be programmed with incremental value input (second possibility). Y... I.... Y.. G80 X. D.... 2) for multi-block machining G65 P9180 X.9 positioning on arc macro P9190 Command: G65 P9190 positioning on arc NC-Block: G65 P9190 X....: rapid traverse R : safety plane : cutting feed Z : depth There are two possibilities to use the bolt hole circle: 1) for drilling: G90 G98 G83 Z-30 Q15 R2 F80 L0 G65 P9190 X. S....... Y.Y) Q d Q Z for example peck drilling cycle G83 ... I... D. B.. Optional Addresses: X X coordinate of circular center Y Y coordinate of circular center I radius of circle B pitch angle D number of holes A starting angle of the first hole S subprogram number called Y initial point hole position 5 hole position A R X Q d (X.. 156 MTS TeachWare • CNC-Milling • Student’s Book .. I...... A.... Don´t specify S by programming a canned cycle (first possibility). Note: Use the absolute input value (G90) for positioning...Chapter 5 5. Y.... D..3.

Function and use of cycles Programming Example for the macro: G65 P9190 positioning on arc for drilling $G54 X400 Y250 Z135 O 190 N010 G54 N015 G90 G49 G80 G40 G17 G21 N020 G91 G28 Z0 M9 N025 G91 G28 X0 Y0 N030 T03 M6 N035 G90 S1800 M3 N040 G0 G43 Z20 H19 M8 N045 G98 G83 Z-20 R2 Q6 F80 L0 definition of a peck drilling cycle N055 G65 P9190 X50 Y50 I30 B25 D6 A60 P9190 positioning on arc X50 X coordinate of circular center Y50 Y coordinate of circular center I30 radius of circle B25 pitch angle D6 number of holes A60 starting angle of the first hole N060 G80 N065 G0 Z20 M9 N070 G91 G28 Z0 M5 N075 G90 G49 G40 N080 M30 © MTS GmbH • Berlin 157 .

Chapter 5 Programming Example for the macro: G65 P9190 positioning on arc for multi-block machining $G54 X400 Y250 Z135 O 190 N010 G54 N015 G90 G49 G80 G40 G17 G21 N020 G91 G28 Z0 M9 N025 G91 G28 X0 Y0 N030 T03 M6 N035 G90 S1800 M3 N040 G0 G43 Z20 H19 N045 Z2 M8 N055 G65 P9190 X50 Y50 I30 B25 D6 A60 S9180 P9190 positioning on arc X50 X coordinate of circular center Y50 Y coordinate of circular center I30 radius of circle B25 pitch angle D6 number of holes A60 starting angle of the first hole S9180 subprogram number called N060 G80 N065 G0 Z20 M9 N070 G91 G28 Z0 M5 N075 G90 G49 G40 N080 M30 Subprogram 9180 N10 G91 N15 G1 Z-7 F80 N20 G0 Z7 N25 G90 N40 M99 158 MTS TeachWare • CNC-Milling • Student’s Book .

D........ © MTS GmbH • Berlin 159 ...: rapid traverse R : safety plane : cutting feed Z : depth There are two possibilities to use the bolt hole circle: 1) for drilling: G90 G98 G84 Z-30 R7 P1000 F1000 L0 G65 P9200 X.. V. 2) for multi-block machining G65 P9200 X..... tapping Z V.. Optional Addresses: X X coordinate of the first hole Y Y coordinate of the first hole U pitch in X-direction D number of holes in X-direction V pitch in Y-direction H number of holes in Y-direction S subprogram number called U U initial point V U+ U. Y.... H. H. The subprogram must be programmed with incremental value input (second possibility). U... U..... V+ M04 D pieces for example tapping cycle G84 . Y... Function and use of cycles 5.. H. M03 V...3... S... V- 2 3 V R H pieces >7mm M03 1 4 U+ U... Don´t specify S by programming a canned cycle (first possibility). V.. G80 X.... Y. D.. Y.10 matrix maching macro P9200 Command: G65 P9200 matrix maching NC-Block: G65 P9200 X. Note: Use the absolute input value (G90) for positioning.. D.... U. S. V....

Chapter 5 Programming Example for the macro: G65 P9200 matrix machining for drilling $G54 X400 Y250 Z135 O 200 N010 G54 N015 G90 G49 G80 G40 G17 G21 N020 G91 G28 Z0 M9 N025 G91 G28 X0 Y0 N030 T03 M6 N035 G90 S1800 M3 N040 G0 G43 Z20 H19 M8 N045 G99 G83 Z-20 R2 Q6 F80 L0 definition of a peck drilling cycle N050 G65 P9200 X10 Y10 U20 D5 V20 H5 P9200 matrix machining X10 X coordinate of the first hole Y10 Y coordinate of the first hole U20 pitch in X-direction D5 number of holes in X-direction V20 pitch in Y-direction H5 number of holes in Y-direction N055 G80 N060 G0 Z20 M9 N065 G91 G28 Z0 M5 N070 G90 G49 G40 N075 M30 160 MTS TeachWare • CNC-Milling • Student’s Book .

Function and use of cycles Programming Example for the macro: G65 P9200 matrix machining for multi-block machining $G54 X400 Y250 Z135 N010 O 200 N015 G54 N020 G90 G49 G80 G40 G17 G21 N025 G91 G28 Z0 M9 N030 G91 G28 X0 Y0 N035 T03 M6 N040 G90 S1800 M3 N045 G0 G43 Z20 H19 N050 Z2 M8 N055 G65 P9200 X10 Y10 U20 D5 V20 H5 S9180 P9200 matrix machining X10 X coordinate of the first hole Y10 Y coordinate of the first hole U20 pitch in X-direction D5 number of holes in X-direction V20 pitch in Y-direction H5 number of holes in Y-direction S9180 subprogram number called N060 G80 N065 G0 Z20 M9 N070 G91 G28 Z0 M5 N075 G90 G49 G40 N080 M30 © MTS GmbH • Berlin 161 .

It is practical to use subprograms when specific program sections need to be repeatedly executed. function and use of subprograms of a CNC milling ma- chine A subprogram is a program that is called from an NC-program. 162 MTS TeachWare • CNC-Milling • Student’s Book . As a result. from which the current subprogram has been called. This is applied for machining identical contours as well as for boring drills. to the subprogram. These subprograms can be invoked from any NC-program. thereby allowing program elements for recurrent machining operations to be programmed.. 6.Chapter 6 6 Subprogram technology 6. the command M99 must be programmed to cause the control sys- tem to return to the main program.1. All commands in this subprogram are exe- cuted after it is invoked. then the contour can be programmed only once in a subprogram. 6.] Optional Addresses: P Number of the subprogram L Number of repeated callings Programming Example: N100 M98 P400 L5 (Call the subprogram O400 five times) N100 M98 P400 (Call the subprogram O400 once) Note: The Subprogram Call M98 must be programmed in a separate NC-Block. NC-Block: M98 [P. if a contour operation is to be executed in multiple infeeds or after one or more zero point shifts. resp.2 End of Subprogram M99 Command: M99 End of Subprogram Function: The command M99 marks the end of a subprogram.1 Purpose.1. For ex- ample. where the subprogram has been invoked. the execution of the main program will be continued from the position in the program line... After this. The CNC-control then returns to the main program and executes the subsequent commands.1 Subprogram Call M98 Command: M98 Subprogram Call Function: A subprogram called by the command M98 is executed by the control system. This subprogram is then invoked for machining.. NC-Block: M99 At the end of each defined subprogram.] [L. the programming work is considerably minimized. Note: The Subprogram End M99 must be programmed in a separate NC-Block.

with incremental or absolute input value.FNC $G54 X400 Y250 Z135 O2000 N010 G54 N015 G90 G49 G80 G40 G17 G21 N020 G91 G28 Z0 M9 N025 G91 G28 X0 Y0 N030 T02 M6 N035 G97 S2500 M03 F150 N040 G90 G0 X20 Y40 absolute input value G90 N045 G43 Z20 H18 N050 Z2 N055 M98 P2001 L3 subprogram call number 2001 execute three times N060 G0 Z2 N065 X50 Y40 N070 M98 P2001 L3 subprogram call number 2001 execute three times N075 G0 Z2 N080 X80 Y40 N085 M98 P2001 L3 subprogram call number 2001 execute three times N090 G0 Z20 M9 N100 G91 G28 Z0 M5 N105 G91 G28 X0 Y0 N110 G90 G49 G80 G40 N115 M30 Subprogram number 2001 N010 G91 M8 select incremental input value G91 N015 G1 Z-3 F150 move in Z-direction with cutting feed N020 G2 Y25 I0 J12. The incremental input value programming (G91) is selected in the subprogram and the travel movements are then incrementally programmed. Similar to canned cycles.5 circular interpolation clockwise N025 G1 Y-25 linear interpolation N030 G90 M9 select absolute input value G90 N035 M99 © MTS GmbH • Berlin 163 . the tool is moved to the target starting position before the subprogram is called. Note: When using incremental input value programming.2 Subprograms with incremental or absolute input value When using subprograms it is necessary to consider the programming type. Subprogram technology 6. the absolute input value programming (G90) must again be selected.e. Before the subprogram has ended. The advantage of incremental values is that a zero point shift must not be programmed. then the programmed machining will always be executed at the same point in the work part coordinate system. i. Programming Example Main NC-program UNTERCC. If programming with absolute input value is selected. switching between incremental and absolute input value programming should only take place in the subprogram. For changing the machining position it is necessary to program a corresponding zero point shift before each subprogram call.

Chapter 6 Subsequently.5 N025 G1 Y-25 N030 G90 M9 N035 M99 3.5 N025 G1 Y-25 N030 G90 M9 N035 M99 N075 G0 Z2 164 MTS TeachWare • CNC-Milling • Student’s Book .5 N025 G1 Y-25 N030 G90 M9 N035 M99 N060 G0 Z2 N065 X50 Y40 second start position subprogram N070 M98 P2001 L3 N010 G91 M8 N015 G1 Z-3 F150 N020 G2 Y25 I0 J12. execution N010 G91 M8 N015 G1 Z-3 F150 N020 G2 Y25 I0 J12.5 N025 G1 Y-25 N030 G90 M9 N035 M99 2. execution N010 G91 M8 N015 G1 Z-3 F150 N020 G2 Y25 I0 J12. the program sequence with the individual subprogram calls is shown. execution N010 G91 M8 N015 G1 Z-3 F150 N020 G2 Y25 I0 J12.5 N025 G1 Y-25 N030 G90 M9 N035 M99 3.5 N025 G1 Y-25 N030 G90 M9 N035 M99 2. execution N010 G91 M8 N015 G1 Z-3 F150 N020 G2 Y25 I0 J12. main program O2000 N010 G54 N015 G90 G49 G80 G40 G17 G21 N020 G91 G28 Z0 M9 N025 G91 G28 X0 Y0 N030 T02 M6 N035 G97 S2500 M03 F150 N040 G90 G0 X20 Y40 first start position N045 G43 Z20 H18 N050 Z2 subprogram N055 M98 P2001 L3 N010 G91 M8 N015 G1 Z-3 F150 N020 G2 Y25 I0 J12.

5 N025 G1 Y-25 N030 G90 M9 N035 M99 N090 G0 Z20 M9 N095 G91 G28 Z0 M5 N100 G91 G28 X0 Y0 N105 G90 G49 G80 G40 N110 M30 © MTS GmbH • Berlin 165 . Subprogram technology N075 G0 Z2 N080 X80 Y40 third start position subprogram N085 M98 P2001 L3 N010 G91 M8 N015 G1 Z-3 F150 N020 G2 Y25 I0 J12. execution N010 G91 M8 N015 G1 Z-3 F150 N020 G2 Y25 I0 J12.5 N025 G1 Y-25 N030 G90 M9 N035 M99 2. execution N010 G91 M8 N015 G1 Z-3 F150 N020 G2 Y25 I0 J12.5 N025 G1 Y-25 N030 G90 M9 N035 M99 3.

$G54 X400 Y250 Z135 N010 O1000 N015 G54 N020 G90 G49 G80 G40 G17 G21 N025 G91 G28 Z0 M9 N030 G91 G28 X0 Y0 N035 T02 M6 N040 G97 S2500 M03 F150 N045 G90 G0 X15 Y40 N050 G43 Z20 H18 N055 Z2 N060 M98 P1001 L3 N065 G0 Z2 N070 X45 Y40 N075 M98 P1001 L3 N080 G0 Z2 N085 X75 Y40 N090 M98 P1001 L3 N095 G0 Z20 M9 N100 G91 G28 Z0 M5 N105 G91 G28 X0 Y0 N115 G90 G49 G80 G40 N120 M30 Subprogram number 1001 N010 G91 M8 N015 G1 Z-3 F150 N020 G3 Y25 I0 J12.Chapter 6 Programming Example Main NC-program UNTERPR.FNC Programming will be with incremental input value (G91) and the depth of 7 mm should be reached with three program repetitions by using the subprogram technique.5 N025 G1 Y-25 N030 G90 M9 N035 M99 166 MTS TeachWare • CNC-Milling • Student’s Book .

The FANUC control allows a maximum of 4 subprograms to be nested.3 Nesting several subprograms Subprograms are usually invoked by the main program.FNC $G54 X400 Y250 Z135 O1000 N010 G54 N015 G90 G49 G80 G40 G17 G21 N020 G91 G28 Z0 M9 N025 G91 G28 X0 Y0 N030 T02 M6 N035 G97 S2500 M03 F150 N040 G90 G0 X15 Y40 N045 G43 Z20 H18 N050 Z2 N055 M98 P1004 N060 G91 G28 Z0 M9 N065 G91 G28 X0 Y0 N070 G90 G49 G80 G40 N 075 M30 © MTS GmbH • Berlin 167 . This process is called nesting subprograms. Programming will be with incremental input value (G91) and the depth of 7 mm should be reached with three program repetitions. Programming Example with nesting Main NC-program UNTERVS. Subprogram technology 6. it is also possible for a subprogram to call another subprogram. However.

5 N025 G1 Y-25 N030 G90 M9 N035 M99 Subprogram number 1002 N10 G90 N15 G0 Z2 N20 X45 Y40 N25 M98 P1001 L3 N010 G90 N015 M99 Subprogram number 1003 N10 G90 N15 G0 Z2 N20 X75 Y40 N25 M98 P1001 L3 N010 G90 N015 M99 168 MTS TeachWare • CNC-Milling • Student’s Book .Chapter 6 Subprogram number 1004 N010 M98 P1001 L3 N015 M98 P1002 N020 M98 P1003 N025 G90 G0 Z20 M5 N030 M99 Subprogram number 1001 N010 G91 M8 N015 G1 Z-3 F150 N020 G3 Y25 I0 J12.

Modern CNC control systems as well as the CNC Simulator feature additional commands for segment con- tour programming allowing the integration of data with reference to length. angles and radii. all solution options are presented for selection. the workpart geometry is graphically displayed in a fashion similar to a CAD program and. The change into the Alternative Selections takes place automatically. irrespec- tive of the fact that the solution might not be feasible from the technical or logical point of view. counter-clockwise). clockwise) or "G03" (circular interpolation. Please note that the Alternative Selection menu displays solutions that are mathematically possible. data entry takes place with function keys only. With this method. abbreviated "WOP" stands for a programming interface for CNC technologies worked out (even if not standardized) by the German Federal Ministry of Research and Tech- nology within the framework of one of its projects. the defini- tion of contours which cannot be measured according to NC standards might require extensive calculation. "G02" (circular interpolation. and with the help of a program dialogue. if several solutions are possible. or until after canceled the current programming session. Considering this. the entered parameter values result in several possible variants of the contour segment being programmed. The "Workshop Oriented Programming". Workshop-Oriented Programming 7 Workshop-Oriented Programming 7. a workpart contour is programmed with the commands "G01" (linear interpolation).1 Introduction According to the Standard ISO 6983. © MTS GmbH • Berlin 169 . In such cases the WOP Interface switchs to the Alternative Selections menu to enable you for the selection of the desired contour alternative. as well as tan- gential transition conditions. Parallel to the data entry. and by defining the coordinates of the target point or center of a circle. and you cannot continue programming until after having selected one contour variant. Consequently it is possible to program many contours without additional calcula- tions. Blank Programmed contour Last created NC block Function keys Figure 26 WOP Interface for CNC Milling Frequently. respectively.

The starting point of the contour is on the intersection of the middleline and of the right circular arc.2 Example: The bowl of the drawing is to be manufactured as individual workpart on a CNC vertical milling machine. Create an NC-program and save it under the name SCHALE. blank 200mm x 100mm x 20mm material AlMg1 depth of the contour: 6 mm bowl WORK PLAN Machining Sequence Tool Tool Name 1 contour milling 6mm depth 08 shell end mill MW-040/032 HSS ISO 2586 170 MTS TeachWare • CNC-Milling • Student’s Book .Chapter 7 7. Use the WOP (Workshop Oriented Programming) for programming the contour.

Workshop-Oriented Programming depth of the contour: 6 mm bowl © MTS GmbH • Berlin 171 .

000 Z+110.000 Z+147. then it must be changed in the set-up op- eration.0/045L HSS ISO 1641 T06 TAP TA-M06.00/087 HSS ISO 235 T04 DRILL DR-05.000 Z+176.0/1. the MTS-simulator is automatically set-up with blank.0/075L HSS ISO 1641 T03 DRILL DR-05.500 Z+110.000 D03 R000.000 Z+132.000 172 MTS TeachWare • CNC-Milling • Student’s Book .000 D08 R020.000 Y+100.000 Z+138. set-up sheet CONFIGURATION MACHINE MAKINO FX 650 CONTROL FANUC 16M FX650 BLANK DIMENSIONS X+200.000 Y+250. clamping and turret allocation.000 MATERIAL AlMg 1:Aluminium VISE MAKFX 160 CHUCKED HEIGHT E+033.500 D05 R005.Chapter 7 Setting-up the CNC machine After starting. If the fol- lowing set-up data does not conform with the current set-up data.500 D04 R000.000 PART POSITION X+400.0/0820 HSS ISO 1641 T02 SLOT MILLING TOOL MS-20.000 Z+020.0/0820 HSS ISO 1641 T08 SHELL END MILL MW-040/032 HSS ISO 2586 TOOL COMPENSATION D01 R003.000 Z+098.000 LEFT FRONT UPPER CORNER OF THE WORKPART X+400.000 D02 R010.00 HSS ISO 2857 T07 SLOT MILLING TOOL MS-05.000 Z+176.000 SHIFT V+000.500 D07 R002.000 Y+250.000 Z+132.00/087 HSS ISO 235 T05 SLOT MILLING TOOL MS-10.000 D06 R000.000 ORIENTATION A90° CURRENT TOOL T08 TOOLS T01 SLOT MILLING TOOL MS-06.

Description Entry a. Do the following steps: 1. F1 (CNC-Editor) c. call the editor (set up the simulator if necessary) 2. Select a program or create a new one or select a program or write SCHALE for the new NC program. program the first NC blocks 3. with F1 (Edit program) confirm 2) Program the first NC blocks. Call CNC milling in the main menu. set up the simulator and program with the editor the first NC blocks. complete the NC program with the editor 1) Call the editor. $G54 X400 Y250 Z132 O100 N010 G54 N015 G90 G49 G80 G40 G17 G21 N020 G91 G28 Z0 M9 N025 G91 G28 X0 Y0 N030 T08 M6 N035 G90 S950 M3 N040 G43 Z20 H24 T2 M8 N045 G0 X240 Y80 N050 Z2 N055 Z-6 N060 G1 G41 X210 D8 F300 N065 G3 X180 Y50 R30 © MTS GmbH • Berlin 173 . F2 (Milling) b. create the contour with WOP 4. Workshop-Oriented Programming NC programming Before using the WOP programming create a new NC program named SCHALE. Select the CNC editor.

Select the contour entity „tangential right arc“. Select the contour entity „right arc“. F4 (arc right tangentl. enter the following values: B 15 I 35 J 65 change between the two solutions with F1 (alternative). select the desired solution with F2 (select) and confirm with F8 (term. F6 (arc left tangentl. input) NC block: G73 B+80 O000 5. Select the WOP menu . input) NC block: G72 X+180 Y+50 I+140 J+50 O70 O000 Terminate the WOP menu .Chapter 7 3) Create the contour. Select the contour entity „tangential right arc“. select the desired solution with F2 (select) and confirm with F8 (term. F8 (end of menu) F8 (WOP END) 174 MTS TeachWare • CNC-Milling • Student’s Book . F4 (arc right tangentl. F1 (Create contour) 1. use the AW 270 arrow keys or for jumping over B 40 confirm with the not used fields. F8 (term. F5 (WOP) Begin the contour description. F3 (arc right) and enter the following values: NOTE: Don´t confirm with .) enter the following value: B 113 confirm with F8 (term.) enter the following value: B 80 confirm with F8 (term.). F4 (arc right tangentl. enter the following values: Xe 180 Ye 50 I 140 J 50 change between the two solutions with F1 (alternative). input) NC block: G72 I+35 J+65 O070 B+15 O000 4. Select the contour entity „tangential right arc“. input) NC block: G72 B+113 O000 3. Select the contour entity „tangential left arc“. input) NC block: G72 A+270 B+40 2.).

458 N090 G02 X+180.681 Z-006.000 O070 N075 G02 X+022.000 I-036.098 Z-006.000 J+050.577 J-033.500 J+008.000 I+021.910 J+072.709 Z-006.291 N085 G03 X+118. Workshop-Oriented Programming 4) Program the following NC blocks.423 Y+083.500 Y+056.586 Z-006.000 I+140.000 I+033. N095 G3 X210 Y20 R30 N100 G40 N105 G0 Z20 M9 N110 G91 G28 Z0 M5 N115 G91 G28 X0 Y0 N120 G90 G49 G80 G40 N125 M30 © MTS GmbH • Berlin 175 . After leaving the WOP system NC blocks with G02 or G03 commands are generated: N070 G02 X+152.681 Complete the NC program with the retreat movement and the lasts NC blocks.785 Y+012.000 Y+050.118 J+107.358 Y+078.000 I+012.072 N080 G02 X+041.000 Z-006.

458 N090 G02 X+180.000 Y+050.577 J-033.000 I+021.000 I-036.000 I+033.000 I+012.785 Y+012.681 N095 G3 X210 Y20 R30 N100 G40 N105 G0 Z20 M9 N110 G91 G28 Z0 M5 N115 G91 G28 X0 Y0 N120 G90 G49 G80 G40 N125 M30 176 MTS TeachWare • CNC-Milling • Student’s Book .358 Y+078.098 Z-006.423 Y+083.000 J+050.072 N080 G02 X+041.709 Z-006.500 J+008.586 Z-006.681 Z-006.118 J+107.000 Z-006.291 N085 G03 X+118.000 I+140.Chapter 7 Solution: $G54 X400 Y250 Z132 O100 N010 G54 N015 G90 G49 G80 G40 G17 G21 N020 G91 G28 Z0 M9 N025 G91 G28 X0 Y0 N030 T08 M6 N035 G90 S950 M3 N040 G43 Z20 H24 T2 M8 N045 G0 X240 Y80 N050 Z2 N055 Z-6 N060 G1 G41 X210 D8 F300 N065 G3 X180 Y50 R30 N070 G02 X+152.500 Y+056.000 O070 N075 G02 X+022.910 J+072.

Create an NC-program and save it under the name GEGENFOR. Workshop-Oriented Programming 7. The starting point of the contour is the starting point of the circular arc on the right side.3 Exercise 1 : counter-form The counter-form of the drawing is to be manufactured as individual workpart on a CNC vertical milling ma- chine.0/0820 HSS ISO 1641 © MTS GmbH • Berlin 177 . blank 130mm x 100mm x 20mm material AlMg1 depth of the contour: 6 mm counter-form WORK PLAN Machining Sequence Tool Tool Name 1 contour milling 6mm depth 01 slot milling tool MS-06. Use the WOP (Workshop Oriented Programming) for programming the contour.

Chapter 7

depth of the contour: 6 mm

counter-form

178 MTS TeachWare • CNC-Milling • Student’s Book

Workshop-Oriented Programming

1) Program the first NC blocks.

$G54 X400 Y250 Z137
O1407
N010 G54
N015 G90 G49 G80 G40 G17 G21
N020 G91 G28 Z0 M9
N025 G91 G28 X0 Y0
N030 T1 M6
N035 G90 S2300 M3
N040 G0 G43 Z20 H17 T2 M8
N045 X140 Y70
N050 Z2
N055 Z-6
N060 G1 G41 X130 Y60 D1 F200
N065 G3 X120 Y40 R20
N070 G1 Y20

2) Create the contour with WOP.
After leaving the WOP system NC blocks with G01, G02 or G03 commands are generated:

N075 G02 X+110.000 Y+010.000 I+110.000 J+020.000 O070
N080 G01 X+085.853 Y+010.000
N085 G03 X+082.194 Y+008.756 I-000.000 J-006.000
N090 G02 X+070.000 Y+004.608 I-012.194 J+015.852
N095 G02 X+057.806 Y+008.756 I+000.000 J+020.000
N100 G03 X+054.147 Y+010.000 I-003.658 J-004.756
N105 G01 X+015.000 Y+010.000
N110 G02 X+010.000 Y+015.000 I+000.000 J+005.000
N115 G01 X+010.000 Y+070.000
N120 G02 X+030.000 Y+090.000 I+020.000 J+000.000
N125 G01 X+056.340 Y+090.000
N130 G03 X+070.000 Y+084.608 I+013.660 J+014.608
N135 G03 X+083.660 Y+090.000 I+000.000 J+020.000
N140 G01 X+085.000 Y+090.000

3) Program the following NC blocks.

N145 G1 X120 Y70
N150 Y40
N155 G3 X140 Y20 R20
N160 G40 G1 Y30
N165 G0 Z20 M9
N170 G91 G28 Z0 M5
N175 G91 G28 X0 Y0
N180 G90 G49 G80 G40
N185 M30

© MTS GmbH • Berlin 179

Chapter 7

Solution:
BLANK DIMENSIONS X+130.000 Y+100.000 Z+020.000
PART POSITION X+400.000 Y+250.000
Top front left corner of the part X+400.000 Y+250.000 Z+137.000
MATERIAL AlMg 1::Aluminium
VISE MAKFX 160
CHUCKED HEIGHT E+038.000
SHIFT V+000.000
ORIENTATION A0ø
CURRENT TOOL T01
TOOLS
T01 SLOT MILLING TOOL MS-06.0/0820 HSS ISO 1641

$G54 X400 Y250 Z137
O1407
N010 G54
N015 G90 G49 G80 G40 G17 G21
N020 G91 G28 Z0 M9
N025 G91 G28 X0 Y0
N030 T1 M6
N035 G90 S2300 M3
N040 G0 G43 Z20 H17 T2 M8
N045 X140 Y70
N050 Z2
N055 Z-6
N060 G1 G41 X130 Y60 D1 F200
N065 G3 X120 Y40 R20
N070 G1 Y20
N075 G02 X+110.000 Y+010.000 I+110.000 J+020.000 O070
N080 G01 X+085.853 Y+010.000
N085 G03 X+082.194 Y+008.756 I-000.000 J-006.000
N090 G02 X+070.000 Y+004.608 I-012.194 J+015.852
N095 G02 X+057.806 Y+008.756 I+000.000 J+020.000
N100 G03 X+054.147 Y+010.000 I-003.658 J-004.756
N105 G01 X+015.000 Y+010.000
N110 G02 X+010.000 Y+015.000 I+000.000 J+005.000
N115 G01 X+010.000 Y+070.000
N120 G02 X+030.000 Y+090.000 I+020.000 J+000.000
N125 G01 X+056.340 Y+090.000
N130 G03 X+070.000 Y+084.608 I+013.660 J+014.608
N135 G03 X+083.660 Y+090.000 I+000.000 J+020.000
N140 G01 X+085.000 Y+090.000
N145 G1 X120 Y70
N150 Y40
N155 G3 X140 Y20 R20
N160 G40 G1 Y30
N165 G0 Z20 M9
N170 G91 G28 Z0 M5
N175 G91 G28 X0 Y0
N180 G90 G49 G80 G40
N185 M30

180 MTS TeachWare • CNC-Milling • Student’s Book

blank 100mm x 100mm x 25mm material AlMg1 depth of the contour: 6 mm stamping WORK PLAN Machining Sequence Tool Tool Name 1 contour milling 6mm depth 01 slot milling tool MS-06.4 Exercise 2 : stamping The stamping of the drawing is to be manufactured as individual workpart on a CNC vertical milling machine. The starting point of the contour is the starting point of the circular arc on the right side. Workshop-Oriented Programming 7. Create an NC-program and save it under the name STANZWOP.0/0820 HSS ISO 1641 © MTS GmbH • Berlin 181 . Use the WOP (Workshop Oriented Programming) for programming the contour.

Chapter 7 depth of the contour: 6 mm stamping 182 MTS TeachWare • CNC-Milling • Student’s Book .

822 Z-005.000 I+000.000 Z-005. G02 or G03 commands are generated: N070 G03 X+095.000 Y+125. Workshop-Oriented Programming 1) Program the first NC blocks.000 N100 G02 X+012.000 Z-005.645 N135 G1 X95 Y40 N140 G3 X125 Y10 R30 N145 G40 N150 G0 Z20 M9 N155 G91 G28 Z0 M5 N160 G91 G28 X0 Y0 N165 G90 G49 G40 G80 N170 M30 © MTS GmbH • Berlin 183 .000 N090 G01 X+005.000 N085 G01 X+015.000 N110 G02 X+033.000 N105 G01 X+027.000 Z-005.000 J+000.000 J-010.230 J-007.822 Z-005.000 Y+019.226 Y+088.033 Z-005.000 Z-005.000 Y+019.000 J+095.000 I+125.000 Y+095.345 Y+088.388 Z-005.388 Z-005.000 I+020. N125 G01 X+087.000 I+006.000 O070 N075 G01 X+095.000 Y+061.000 Z-005.459 J-015. $G54 X400 Y250 Z135 O01 N010 G54 N015 G90 G49 G80 G40 G17 G21 N020 G91 G28 Z0 M9 N025 G91 G28 X0 Y0 N030 T01 M6 N035 G90 S950 M3 N040 G0 G43 Z20 H17 M8 N045 X130 Y130 N050 Z2 N055 G1 Z-6 F200 N060 G41 D1 N065 G01 X+125.000 N080 G01 X+085.997 Y+091.000 N120 G02 X+069.000 N130 G02 X+095.000 2) Create the contour with WOP.000 Y+061.541 Y+077.000 Y+009.000 Z-005.000 I-012.822 N115 G01 X+062.000 Y+009.671 Y+074.000 3) Program the following NC blocks.000 N095 G01 X+005.000 Z-005.134 Z-005. After leaving the WOP system NC blocks with G01.574 Y+091.

822 Z-005.000 Y+095.000 J+095.000 Z+025.000 Z-005.000 Z-005.000 Y+250.345 Y+088.226 Y+088.000 I-012.574 Y+091.000 N105 G01 X+027.000 Y+019.000 Top front left corner of the part X+400.459 J-015.822 Z-005.000 Z-005.000 Z-005.000 N095 G01 X+005.000 I+020.000 SHIFT V+000.000 MATERIAL AlMg 1::Aluminium VISE MAKFX 160 CHUCKED HEIGHT E+031.000 Y+009.000 PART POSITION X+400.Chapter 7 Solution: BLANK DIMENSIONS X+100.671 Y+074.388 Z-005.541 Y+077.000 N070 G03 X+095.000 Y+019.230 J-007.000 Y+125.388 Z-005.000 Z+135.000 N110 G02 X+033.000 N080 G01 X+085.000 Y+250.000 I+006.822 N115 G01 X+062.000 Y+100.033 Z-005.000 N120 G02 X+069.000 I+125.000 N100 G02 X+012.000 N130 G02 X+095.000 N125 G01 X+087.645 N135 G1 X95 Y40 N140 G3 X125 Y10 R30 N145 G40 N150 G0 Z20 M9 N155 G91 G28 Z0 M5 N160 G91 G28 X0 Y0 N165 G90 G49 G40 G80 N170 M30 184 MTS TeachWare • CNC-Milling • Student’s Book .000 J-010.000 ORIENTATION A0ø CURRENT TOOL T01 TOOLS T01 SHELL END MILL MW-040/032 HSS ISO 2586 $G54 X400 Y250 Z135 O01 N010 G54 N015 G90 G49 G80 G40 G17 G21 N020 G91 G28 Z0 M9 N025 G91 G28 X0 Y0 N030 T01 M6 N035 G90 S950 M3 N040 G0 G43 Z20 H17 M8 N045 X130 Y130 N050 Z2 N055 G1 Z-6 F200 N060 G41 D1 N065 G01 X+125.000 O070 N075 G01 X+095.134 Z-005.000 N085 G01 X+015.000 J+000.997 Y+091.000 Z-005.000 N090 G01 X+005.000 I+000.000 Y+009.000 Y+061.000 Y+061.000 Z-005.000 Z-005.