Override control knobs for feed rate/spindle speed
100
50
1
5
S %
0
100
50
1
5
F %
0
Machine operating modes
MANUAL OPERATION
Decimal point
Change arithmetic sign
Confirm entry and resume dialog
End block
Clear numerical entry or TNC error message
Abort dialog, delete program section
Programming aids
MOD functions
HELP functions
Moving the cursor, going directly to blocks, cycles and
parameter functions
Move highlight
Move highlight, skip dialog question
Select blocks and cycles directly
POSITIONING WITH MDI
PROGRAM RUN, SINGLE BLOCK
PROGRAMMING AND EDITING
Page 3
Page 4
TNC Models, Software and
Features
This manual describes functions and features provided by
the TNCs with the following NC software number.
TNC ModelNC Software No.
TNC 310286 040 xx
The machine tool builder adapts the useable features of the
TNC to his machine by setting machine parameters. Therefore, some of the functions described in this manual may
not be among the features provided by your machine tool.
TNC functions that may not be available on your machine
include:
■ Probing function for the 3-D touch probe
■ Digitizing option
■ Tool measurement with the TT 120
■ Rigid tapping
Please contact your machine tool builder to become familiar
with the individual implementation of the control on your
machine.
Many machine manufacturers, as well as HEIDENHAIN,
offer programming courses for the TNCs. We recommend
these courses as an effective way of improving your
programming skill and sharing information and ideas with
other TNC users.
Contents
Location of use
The TNC complies with the limits for a Class A device in
accordance with the specifications in EN 55022, and is
intended for use primarily in industrially-zoned areas.
IHEIDENHAIN TNC 310
Page 5
Page 6
Contents
Introduction
1
Manual Operation and Setup
Positioning with Manual Data Input (MDI)
Programming: Fundamentals of NC,
File Management, Programming Aids
Programming: Tools
Programming: Programming Contours
Programming: Miscellaneous Functions
Programming: Cycles
Programming: Subprograms and Program
Section Repeats
Test Run and Program Run
3-D Touch Probes
MOD Functions
2
Contents
3
4
5
6
7
8
9
10
11
12
Tables and Overviews
13
IIIHEIDENHAIN TNC 310
Page 7
1 INTRODUCTION 1
1.1 The TNC 310 2
1.2 Visual Display Unit and Keyboard 3
Contents
1.3 Modes of Operation 4
1.4 Status Displays 7
1.5 Accessories: HEIDENHAIN 3-D Touch Probes and Electronic Handwheels 11
2 MANUAL OPERATION AND SETUP 13
2.1 Switch-On 14
2.2 Moving the Machine Axes 15
2.3 Spindle Speed S, Feed Rate F and Miscellaneous Functions M 18
2.4 Datum Setting (Without a 3-D Touch Probe) 19
3 POSITIONING WITH MANUAL DATA INPUT (MDI) 21
3.1 Programming and Executing Simple Positioning Blocks 22
4 PROGRAMMING: FUNDAMENTALS OF NC, FILE MANAGEMENT, PROGRAMMING AIDS 23
4.1 Fundamentals of NC 24
4.2 File Management 29
4.3 Creating and Writing Programs 32
4.4 Interactive Programming Graphics 37
4.5 HELP Function 39
5 PROGRAMMING: TOOLS 41
5.1 Entering Tool-Related Data 42
5.2 Tool Data 43
5.3 Tool Compensation 48
IV
Contents
Page 8
6 PROGRAMMING: PROGRAMMING CONTOURS 53
6.1 Overview of Tool Movements 54
6.2 Fundamentals of Path Functions 55
6.3 Path Contours — Cartesian Coordinates 58
Overview of path functions 58
Straight line L 59
Inserting a chamfer CHF between two straight lines 59
Circle center CC 60
Circular path C around circle center CC 61
Circular path CR with defined radius 62
Circular path CT with tangential connection 63
Corner Rounding RND 64
Example: Linear movements and chamfers with Cartesian coordinates 65
Example: Circular movements with Cartesian coordinates 66
Example: Full circle with Cartesian coordinates 67
6.4 Path Contours—Polar Coordinates 68
Polar coordinate origin: Pole CC 68
Straight line LP 69
Circular path CP around pole CC 69
Circular path CTP with tangential connection 70
Helical interpolation 71
Example: Linear movement with polar coordinates 73
Example: Helix 74
Contents
7 PROGRAMMING: MISCELLANEOUS FUNCTIONS 75
7.1 Entering Miscellaneous Functions M and STOP 76
7.2 Miscellaneous Functions for Program Run Control, Spindle and Coolant 77
7.3 Miscellaneous Functions for Coordinate Data 77
7.4 Miscellaneous Functions for Contouring Behavior 79
8.7 Special Cycles 132
DWELL TIME (Cycle 9) 132
PROGRAM CALL (Cycle 12) 132
ORIENTED SPINDLE STOP (Cycle 13) 133
9 PROGRAMMING: SUBPROGRAMS AND PROGRAM SECTION REPEATS 135
9.1 Marking Subprograms and Program Section Repeats 136
9.2 Subprograms 136
9.3 Program Section Repeats 137
9.4 Nesting 139
Subprogram within a subprogram 139
Repeating program section repeats 140
Repeating a subprogram 141
9.5 Programming Examples 142
Example: Milling a contour in several infeeds 142
Example: Groups of holes 143
Example: Groups of holes with several tools 144
11.1 Touch probe cycles in the operating mode MANUAL OPERATION 160
Calibrating a touch trigger probe 161
Compensating workpiece misalignment 162
11.2 Setting the Datum with a 3-D Touch Probe 163
11.3 Measuring Workpieces with a 3-D Touch Probe 166
VIIHEIDENHAIN TNC 310
Page 11
12 MOD FUNCTIONS 169
12.1 Selecting, Changing and Exiting the MOD Functions 170
12.2 System Information 170
Contents
12.3 Enter Code Number 171
12.4 Setting the Data Interface 171
12.5 Machine-Specific User Parameters 172
12.6 Position Display Types 172
12.7 Unit of Measurement 173
12.8 Enter Axis Traverse Limits 173
13 TABLES AND OVERVIEWS 175
13.1 General User Parameters 176
Input possibilities for machine parameters 176
Selecting general user parameters 176
External data transfer 177
3-D Touch Probes 178
TNC displays, TNC editor 178
Machining and program run 180
Electronic handwheels 180
13.2 Pin Layout and Connecting Cable for the Data Interface 181
RS-232-C/V.24 Interface 181
13.3 Technical Information 182
TNC features 182
Programmable functions 183
TNC Specifications 183
13.4 TNC Error Messages 184
TNC error messages during programming 184
TNC error messages during test run and program run 184
13.5 Exchanging the Buffer Battery 187
VIII
Contents
Page 12
Introduction
1
Page 13
1.1The TNC 310
HEIDENHAIN TNC controls are shop-floor programmable
contouring controls for milling, drilling and boring machines.
You can program conventional milling, drilling and boring operations
right at the machine with the easily understandable interactive
conversational guidance. The TNC 310 can control up to 4 axes.
Instead of the fourth axis, you can also change the angular position
of the spindle under program control.
1.1 The TNC 310
Keyboard and screen layout are clearly arranged in a such way that
the functions are fast and easy to use.
Programming: HEIDENHAIN conversational format
HEIDENHAIN conversational programming is an especially easy
method of writing programs. Interactive graphics illustrate the
individual machining steps for programming the contour. Workpiece
machining can be graphically simulated during test run.
You can also enter one program while the TNC is running another.
Compatibility
The TNC can execute all part programs that were written on
HEIDENHAIN controls TNC 150 B and later.
2
1 Introduction
Page 14
1.2Visual Display Unit and Keyboard
Visual display unit
The figure at right shows the keys and controls on the VDU:
Setting the screen layout
Soft key selector keys
Switching the soft-key rows
Header
When the TNC is on, the selected operating mode is shown in
the screen header. Dialog prompts and TNC messages also
appear here (unless the TNC is showing only graphics).
Soft keys
In the right margin the TNC indicates additional functions in a softkey row. You can select these functions by pressing the keys
immediately beside them
rectangular boxes indicating the number of soft-key rows. These
rows can be called with the
active soft-key row is filled in.
Screen layout
You select the screen layout yourself: In the PROGRAMMING AND
EDITING mode of operation, for example, you can have the TNC
show program blocks in the left window while the right window
displays programming graphics. You could also display help
graphics for cycle definition in the right window instead, or display
only program blocks in one large window. The available screen
windows depend on the selected operating mode.
. Directly beneath the soft-key row are
shift key. The box representing the
1.2 Visual Display Unit and Keyboard
To change the screen layout:
Press the SPLIT SCREEN key: The soft-key row
shows the available layout options.
<
Select the desired screen layout.
3HEIDENHAIN TNC 310
Page 15
Keyboard
The figure at right shows the keys of the keyboard grouped
according to their functions:
MOD function,
HELP function
Numerical input
Dialog buttons
Arrow keys and GOTO jump command
Modes of Operation
Machine control buttons
Override control knobs for feed rate/spindle speed
1.3 Modes of Operation
The functions of the individual keys are described in the foldout of
the front cover. The exact functioning of the machine control
buttons, e.g. NC START, is described in more detail in your Machine
Manual.
1.3Modes of Operation
The TNC offers the following modes of operation for the various
functions and working steps that you need to machine a workpiece:
MANUAL OPERATION and ELECTRONIC
HANDWHEEL Operating Modes
The MANUAL OPERATION mode is required for setting up the
machine tool. In this operating mode, you can position the machine
axes manually or by increments. Datums can be set by the usual
scratching method or by using the TS 220 triggering touch probe.
The TNC also supports the manual traverse of the machine axes
using a HR electronic handwheel.
Soft keys for selecting the screen layout
There are no select options available. The TNC always shows the
position display.
4
1 Introduction
Page 16
POSITIONING WITH MANUAL DATA INPUT (MDI)
This mode of operation is used for programming simple traversing
movements, such as for face milling or pre-positioning.
Soft keys for selecting the screen layout
There are no select options available. The TNC always shows the
position display.
PROGRAMMING AND EDITING
In this mode of operation you can write your part programs. The
various cycles help you with programming and add necessary
information. If desired, you can have the programming graphics
show the individual steps.
Soft keys for selecting the screen layout
Screen windowsSoft key
Program blocks
Left: program blocks, right: help graphics for
cycle programming
Left: program blocks, right: programming graphics
Interactive Programming Graphics
1.3 Modes of Operation
5HEIDENHAIN TNC 310
Page 17
TEST RUN
In the TEST RUN mode of operation, the TNC checks programs and
program sections for errors, such as geometrical incompatibilities,
missing or incorrect data within the program or violations of the
work space. This simulation is supported graphically in different
display modes. Use a soft key to activate the test run in the PROGRAM RUN operating mode.
Soft keys for selecting the screen layout
Screen windowsSoft key
Program blocks
n Test run graphics
1.3 Modes of Operation
Left: program blocks, right: general
program information
Left: program blocks, right: positions and
coordinates
Left: program blocks, right: tool
information
Left: program blocks, right: coordinate
transformations
6
1 Introduction
Page 18
PROGRAM RUN/SINGLE BLOCK and
PROGRAM RUN/FULL SEQUENCE
In the PROGRAM RUN, FULL SEQUENCE mode of operation the
TNC executes a part program continuously to its end or to a manual
or programmed stop. You can resume program run after an
interruption.
In the PROGRAM RUN, SINGLE BLOCK mode of operation you
execute each block separately by pressing the NC START button.
Soft keys for selecting the screen layout
Screen windowsSoft key
Program blocks
Left: program blocks, right: general
program information
Left: program blocks, right: positions and
coordinates
Left: program blocks, right: tool
information
Left: program blocks, right: coordinate
transformations
1.4 Status Displays
1.4Status Displays
“General” status display
The status display informs you of the current state of the machine
tool. It is displayed automatically in all modes of operation:
In the operating modes MANUAL OPERATION and ELECTRONIC
HANDWHEEL and POSITIONING WITH MDI the status display
appears in the large window
.
7HEIDENHAIN TNC 310
Page 19
Information in the status display
Symbol Meaning
ACTL.
X Y Z
S F M
1.4 Status Displays
ROT
Actual or nominal coordinates of the current position
Machine axes
Spindle speed S, feed rate F and active M functions
Program run started
Axis locked
Axes are moving
under a basic rotation.
Additional status displays
The additional status displays contain detailed information on the
program run. They can be called in all operating modes, except in
the MANUAL OPERATION mode.
To switch on the additional status display:
Call the soft-key row for screen layout.
<
Select the layout option for the additional status
display, e.g. positions and coordinates.
81 Introduction
Page 20
You can also choose between the following additional status
displays:
General program information
Name of main program / Active block number
Program called via Cycle 12
Active machining cycle
Circle center CC (pole)
Dwell time counter
Operating time
Positions and coordinates
Name of main program / Active block number
Position display
Type of position display, e.g. distance-to-go
Angle of a basic rotation
1.4 Status Displays
9HEIDENHAIN TNC 310
Page 21
Information on tools
T: Tool number
Tool axis
Tool length and radius
Oversizes (delta values) from TOOL CALL block
1.4 Status Displays
Coordinate transformations
Name of main program / Active block number
Active datum shift (Cycle 7)
Active rotation angle (Cycle 10)
Mirrored axes (Cycle 8)
Active scaling factor (Cycle 11)
See also section 8.7 “Coordinate Transformation Cycles.”
10
1 Introduction
Page 22
1.5Accessories: HEIDENHAIN 3-D
Touch Probes and Electronic
Handwheels
3-D Touch Probes
With the various HEIDENHAIN 3-D touch probe systems you can:
■ Automatically align workpieces
■ Quickly and precisely set datums
TS 220 touch trigger probe
This touch probe is particularly effective for automatic workpiece
alignment, datum setting and workpiece measurement. The TS 220
transmits the triggering signals to the TNC via cable.
Principle of operation: HEIDENHAIN triggering touch probes feature
a wear resisting optical switch that generates an electrical signal as
soon as the stylus is deflected. This signal is transmitted to the
TNC, which stores the current position of the stylus as an actual
value.
HR electronic handwheels
Electronic handwheels facilitate moving the axis slides precisely by
hand. A wide range of traverses per handwheel revolution is
available. Apart from the HR 130 and HR 150 integral handwheels,
HEIDENHAIN also offers the HR 410 portable handwheel.
1.5 Accessories: HEIDENHAIN 3-D Touch Probe and Electronic Handwheels
11HEIDENHAIN TNC 310
Page 23
Page 24
2
Manual Operation and Setup
Page 25
2.1Switch-On
Switch-on and traversing the reference points can
vary depending on the individual machine tool. Refer
to your machine manual for more information.
Switch on the power supply for control and machine.
The TNC automatically initiates the following dialog
2.1 Switch-On
MEMORY TEST
<
The TNC memory is automatically checked.
POWER INTERRUPTED
<
TNC message that the power was
interrupted — clear the message.
TRANSLATE PLC PROGRAM
<
The PLC program of the TNC is automatically translated.
RELAY EXT. DC VOLTAGE MISSING
<
Switch on the control voltage.
The TNC checks the functioning of the
EMERGENCY STOP circuit.
TRAVERSE REFERENCE POINTS
<
Cross the reference points in any sequence:
Press and hold the machine axis direction
button for each axis until the reference point
has been traversed, or
Cross the reference points with several axes
at the same time: Use softkeys to select the
axes (axes are then shown highlighted on
the screen), and then press the NC START
button.
The TNC is now ready for operation in the
MANUAL OPERATION mode.
14
2 Manual Operation and Setup
Page 26
2.2Moving the Machine Axes
Traversing the machine axes with the axis direction keys
is a machine-dependent function. Refer to your machine
tool manual for more information on operating times.
Traverse the axis with the axis direction keys
Select the MANUAL OPERATION mode.
<
Press the axis direction button and hold it as
long as you wish the axis to move.
...or move the axis continuously:
and Press and hold the axis direction button, then
press the NC START button: The axis continues
to move after you release the keys.
2.2 Moving the Machine Axes
Press the NC STOP key to stop the axis.
You can move several axes at a time with these two methods.
15HEIDENHAIN TNC 310
Page 27
Traversing with the HR 410 electronic handwheel
The portable HR 410 handwheel is equipped with two permissive
buttons. The permissive buttons are located below the star grip.
You can only move the machine axes when an permissive button is
depressed (machine-dependent function).
The HR 410 handwheel features the following operating elements:
EMERGENCY STOP
Handwheel Modes
Permissive buttons
Axis address keys
Actual-position-capture key
Keys for defining the feed rate (slow, medium, fast; the feed rates
are set by the machine tool builder)
Direction in which the TNC moves the selected axis
2.2 Moving the Machine Axes
Machine function
(set by the machine tool builder)
The red indicators show the axis and feed rate you have selected.
To move an axis:
Select the MANUAL OPERATION mode.
<
Activate handwheel, set soft key to ON
<
Press the permissive button.
<
Select the axis on the handwheel
<
Select the feed rate.
<
orMove the active axis in the positive or negative
direction.
16
2 Manual Operation and Setup
Page 28
16
X
Z
8
8
8
Incremental jog positioning
With incremental jog positioning you can move a machine axis by a
preset distance each time you press the corresponding axis
direction button.
Select the MANUAL OPERATION mode.
<
Select incremental jog positioning, set the
softkey to ON
JOG INCREMENT?
<
Enter the jog increment in millimeters (here,
8 mm), or
Select the jog increment via soft key (select 2nd
or 3rd soft-key row)
<
Press the axis direction button to position as
often as desired
2.2 Moving the Machine Axes
17HEIDENHAIN TNC 310
Page 29
2.3Spindle Speed S, Feed Rate F and
Miscellaneous Functions M
In the operating mode MANUAL OPERATION, you can enter the
spindle speed S and the miscellaneous functions M with soft keys.
The miscellaneous functions are described in Chapter 7
”Programming: Miscellaneous Functions.” The feed rate is defined
in a machine parameter and can be changed only with the override
knobs (see next page).
Entering values
Example: Entering the spindle speed S
To select the spindle speed, press the S soft
key.
SPINDLE SPEED S=
<
1000Enter the desired spindle speed,
and confirm with the NC START button
The spindle speed S with the entered rpm is started with a
miscellaneous function.
Proceed in the same way to enter the miscellaneous functions M.
Changing the spindle speed and feed rate
With the override knobs you can vary the spindle speed S and feed
rate F from 0% to 150% of the set value.
The knob for spindle speed override is effective only on
machines with a stepless spindle drive.
The machine tool builder determines which
miscellaneous functions M are available on your TNC and
what effects they have.
2.3 Spindle Speed S, Feed Rate F and Miscellaneous Functions M
182 Manual Operation and Setup
Page 30
2.4Datum Setting
(Without a 3-D Touch Probe)
You fix a datum by setting the TNC position display to the
coordinates of a known position on the workpiece.
Preparation
Clamp and align the workpiece.
Insert the zero tool with known radius into the spindle.
Ensure that the TNC is showing the actual position values.
Y
Z
X
Y
X
Setting the datum
Fragile workpiece? If the workpiece surface must not be scratched,
you can lay a metal shim of know thickness
tool axis datum value that is larger than the desired datum by the
d
.
value
Select the MANUAL OPERATION mode.
<
Move the tool slowly until it touches the
workpiece surface.
<
Select the function for setting the datum
<
Select the axis.
DATUM SETZ=
<
Zero tool: Set the display to a known workpiece
position (here, 0) or enter the thickness
shim.
d
on it. Then enter a
d
of the
2.4 Setting the Datum
Repeat the process for the remaining axes.
If you are using a preset tool, set the display of the tool axis to the
length L of the tool or enter the sum Z=L+d.
19HEIDENHAIN TNC 310
Page 31
Page 32
3
Positioning with Manual Data
Input (MDI)
Page 33
3.1Programming and Executing
Simple Positioning Blocks
The operating mode POSITIONING WITH MANUAL DATA INPUT is
particularly convenient for simple positioning blocks and for
programming a tool call. You can write the individual blocks in
HEIDENHAIN conversational programming and execute them
immediately. The entered blocks are not stored by the TNC.
Select the POSITIONING WITH MDI mode of
operation.
<
Enter a simple positioning block without radius
compensation and feed rate,
e.g. X+25 R0 F50
<
Conclude entry.
<
Press the NC START button: The TNC executes
the entered block.
3.1 Programming and Executing Simple Positioning Blocks
22
3 Positioning with Manual Data Input (MDI)
Page 34
4
Programming:
Fundamentals of NC,
File Management,
Programming Aids
Page 35
4.1Fundamentals of NC
Position encoders and reference marks
The machine axes are equipped with position encoders that
register the positions of the machine table or tool. When a machine
axis moves, the corresponding position encoder generates an
electrical signal. The TNC evaluates this signal and calculates the
precise actual position of the machine axis.
If there is an interruption of power, the calculated position will no
longer correspond to the actual position of the machine slide. The
TNC can re-establish this relationship with the aid of reference
marks when power is returned. The scales of the position encoders
contain one or more reference marks that transmit a signal to the
TNC when they are crossed over. From the signal the TNC identifies
4.1 Fundamentals of NC
that position as the machine-axis reference point and can reestablish the assignment of displayed positions to machine axis
positions.
Linear encoders are generally used for linear axes. Rotary tables
and tilt axes have angle encoders. If the position encoders feature
distance-coded reference marks, you only need to move each axis a
maximum of 20 mm (0.8 in.) for linear encoders, and 20° for angle
encoders, to re-establish the assignment of the displayed positions
to machine axis positions.
Z
Y
X
X
MP
X (Z,Y)
24
4 Programming: Fundamentals of NC, File Management, Programming Aids
Page 36
Reference system
A reference system is required to define positions in a plane or in
space. The position data are always referenced to a predetermined
point and are described through coordinates.
The Cartesian coordinate system (a rectangular coordinate system)
is based on three coordinate axes X, Y and Z. The axes are mutually
perpendicular and intersect at one point called the datum. A
coordinate identifies the distance from the datum in one of these
directions. A position in a plane is thus described through two
coordinates, and a position in space through three coordinates.
Coordinates that are referenced to the datum are referred
to as absolute coordinates. Relative coordinates are referenced to
any other known position (datum) you define within the coordinate
system. Relative coordinate values are also referred to as
incremental coordinate values.
Reference systems on milling machines
When using a milling machine, you orient tool movements to the
Cartesian coordinate system. The illustration at right shows how
the Cartesian coordinate system describes the machine axes. The
figure at right illustrates the “right-hand rule” for remembering the
three axis directions: the middle finger is pointing in the positive
direction of the tool axis from the workpiece toward the tool (the Z
axis), the thumb is pointing in the positive X direction, and the index
finger in the positive Y direction.
The TNC 310 can control up to 4 axes. The axes U, V and W are
secondary linear axes parallel to the main axes X, Y and Z,
respectively. Rotary axes are designated as A, B and C. The
illustration shows the assignment of secondary axes and rotary
axes to the main axes.
+Y
Z
Y
X
4.1 Fundamentals of NC
+Z
+Y
+X
+Z
+X
V+
Z
Y
W+
C+
B+
A+
X
U+
25HEIDENHAIN TNC 310
Page 37
Polar coordinates
If the production drawing is dimensioned in Cartesian coordinates,
you also write the part program using Cartesian coordinates.
For parts containing circular arcs or angles it is often simpler to give
the dimensions in polar coordinates.
While the Cartesian coordinates X, Y and Z are three-dimensional
and can describe points in space, polar coordinates are twodimensional and describe points in a plane. Polar coordinates have
their datum at a circle center (CC), or pole. A position in a plane can
be clearly defined by the
■ Polar Radius, the distance from the circle center CC to the
position, and the
■ Polar Angle, the size of the angle between the reference axis and
the line that connects the circle center CC with the position.
4.1 Fundamentals of NC
See figure to the lower right.
Definition of pole and angle reference axis
The pole is set by entering two Cartesian coordinates in one of the
three planes. These coordinates also set the reference axis for the
polar angle PA.
Coordinates of the pole (plane) Reference axis of the angle
XY+X
YZ+Y
ZX+Z
10
Z
Y
PR
PA
2
PA
3
PR
CC
PA
PR
1
0°
X
30
Y
Z
Y
X
Z
Y
26
X
X
4 Programming: Fundamentals of NC, File Management, Programming Aids
Page 38
Absolute and relative workpiece positions
Absolute workpiece positions
Absolute coordinates are position coordinates that are referenced
to the datum of the coordinate system (origin). Each position on the
workpiece is uniquely defined by its absolute coordinates.
Example 1: Holes dimensioned in absolute coordinates
Hole
X=10 mmX=30 mmX=50 mm
Y=10 mmY=20 mmY=30 mm
Hole Hole
30
20
10
Y
3
2
1
Relative workpiece positions
Relative coordinates are referenced to the last programmed
nominal position of the tool, which serves as the relative (imaginary)
datum. When you write a part program in incremental coordinates,
you thus program the tool to move by the distance between the
previous and the subsequent nominal positions. Incremental
coordinates are therefore also referred to as chain dimensions.
To program a position in incremental coordinates, enter the prefix
“I”(soft key) before the axis.
Example 2: Holes dimensioned with relative coordinates
Absolute coordinates of hole
:
X= 10 mm
Y= 10 mm
referenced to hole Hole referenced to hole
Hole
IX= 20 mmIX= 20 mm
IY= 10 mmIY= 10 mm
Absolute and incremental polar coordinates
Absolute polar coordinates always refer to the pole and the
reference axis.
Incremental polar coordinates always refer to the last programmed
nominal position of the tool.
10
1010
3010
50
4.1 Fundamentals of NC
Y
6
5
4
X
20
10
20
Y
X
10
PR
+IPA
+IPR
PR
+IPA
30
CC
PA
PR
0°
X
27HEIDENHAIN TNC 310
Page 39
Selecting the datum
A production drawing identifies a certain point on the workpiecee
— usually a cornerr — as the absolute datum. Before setting the
datum, you align the workpiece with the machine axes and move
the tool in each axis to a known position relative to the workpiece.
You then set the TNC display to either zero or a predetermined
position value. This establishes the reference system for the
workpiece, which will be used for the TNC display and your part
program.
If the production drawing is dimensioned in relative coordinates,
simply use the coordinate transformation cycles. For further
information, refer to section 8.6 “Coordinate Transformation
Cycles.”
If the production drawing is not dimensioned for NC, set the datum
4.1 Fundamentals of NC
at a position or corner on the workpiece, which is the most suitable
for deducing the dimensions of the remaining workpiece positions.
The fastest, easiest and most accurate way of setting the datum is
by using a 3-D touch probe from HEIDENHAIN. For further
information, refer to section 11.2 “Setting the Datum with a 3-D
Touch Probe.”
Example
The workpiece drawing at right illustrates the holes
are dimensioned to an absolute datum with the coordinates X=0
Y=0. The holes
absolute coordinates X=450 Y=750. By using the DATUM SHIFT
cycle you can shift the datum temporarily to the position X=450,
Y=750 and program the holes
calculations.
to are referenced to a relative datum with the
to without any further
to , which
750
320
Z
Y
X
Y
150
0
7
6
-150
0,1
5
±
300
1
3
0
2
4
28
325
450900
950
4 Programming: Fundamentals of NC, File Management, Programming Aids
X
Page 40
4.2File Management
Files and file management
When you write a part program on the TNC, you must first enter a
file name. The TNC then stores the program as a file with the same
name. You can also store tables as files.
File names
The name of a file can have up to 8 characters. When you store
programs and tables as files, the TNC adds an extension to the file
name, separated by a point. This extension identifies the file type
(see table at right).
35720.H
File nameFile type
The TNC can manage up to 64 files. Their total size, however, must
not exceed 128 MB.
Working with the file manager
This section informs you about the meaning of the individual
screen information, and describes how to select files. If you are not
yet familiar with the TNC file manager, we recommend that you
read this section completely and test the individual functions on
your TNC.
Call the file manager.
Press the PGM NAME soft key:
the TNC displays the file management window
Files in the TNCType
Programs
in HEIDENHAIN conversational format .H
4.2 File Management
Table for
Tools.T
DisplayMeaning
FILE NAMEName with up to 8 characters
and file type Number following
the name:
File size in bytes
StatusProperties of the file:
MProgram is selected
in a Program Run
operating mode
PProtect a file against editing
and erasure (Protected)
The window shows all of the files that are stored in the TNC. Each
file is shown with additional information that is illustrated in the
table on the next page.
29HEIDENHAIN TNC 310
Page 41
Select a file
Call the file manager.
<
Use the arrow keys to move the highlight to the desired file:
Move the highlight up or down
Delete a file
ú Move the highlight to the file you want to delete.
ú To select the erasing function,
press the DELETE soft key.
The TNC inquires whether you
really intend to erase the file.
ú To confirm erasure: Press the YES
soft key. Abort with the NO soft key
if you do not wish to erase the
directory
Enter the first or more numbers of the file you wish to select and
4.2 File Management
then press the GOTO key: The highlight moves to the first file that
matches these numbers.
<
The selected file is opened in the operating
mode from which you have the called file
manager: Press ENT.
Copy a file
ú Move the highlight to the file you wish to copy.
ú Press the COPY soft key to select the copying
function.
ú Enter the name of the destination file and confirm your entry with
the ENT key: The TNC copies the file. The original file is retained.
Rename a file
ú Move the highlight to the file you wish to rename.
ú Select the renaming function.
ú Enter the new file name; the file type cannot be
changed.
ú To execute renaming, press the ENT key.
Protecting a file/Canceling file
protection
ú Move the highlight to the file you want to protect.
ú To enable file protection, press the
PROTECT/UNPROTECT soft key.
The file now has status P.
To cancel file protection, proceed in the same way
using the PROTECT/UNPROTECT soft key. You also
need to enter the code number 86357.
30
4 Programming: Fundamentals of NC, File Management, Programming Aids
Page 42
Read in/read out files
ú To read in or read out files: Press the ENT soft key.
The TNC provides the following functions:
Functions for reading in/reading out filesSoft key
Read in all files
Only read in selected files; To accept a file
suggested by the TNC, press the YES soft key;
Press the NO soft key if you do not want to accept it.
Read in the selected file: Enter the file name
Read out the selected file: Move the highlight to
the desired file and confirm with ENT
Read out all of the files in the TNC memory
Display the file directories of the external unit on
your TNC screen
4.2 File Management
31HEIDENHAIN TNC 310
Page 43
4.3Creating and Writing Programs
Organization of an NC program in HEIDENHAIN
conversational format.
A part program consist of a series of program blocks. The figure at
right illustrates the elements of a block.
The TNC numbers the blocks in ascending sequence.
The first block of a program is identified by “BEGIN PGM,” the
program name and the active unit of measure.
The subsequent blocks contain information on:
■ The blank form
■ tool definitions and tool calls,
■ Feed rates and spindle speeds as well as
■ Path contours, cycles and other functions.
The last block of a program is identified by “END PGM,” the program name and the active unit of measure.
4.3 Creating and Writing Programs
Defining the blank form — BLK FORM
Immediately after initiating a new program, you define a cuboid
workpiece blank. This definition is needed for the TNC’s graphic
simulation feature. The sides of the workpiece blank lie parallel to
the X, Y and Z axes and can be up to 30 000 mm long. The blank
form is defined by two of its corner points:
■ MIN point: the smallest X, Y and Z coordinates of the blank form,
entered as absolute values.
■ MAX point: the largest X, Y and Z coordinates of the blank form,
entered as absolute or incremental values.
Block:
10 L X+10 Y+5 R0 F100 M3
Path functionWords
Block number
Z
Y
MAX
X
32
The TNC can display the graphic only if the short side of
the BLK FORM is longer than 1/64 of the long side.
4 Programming: Fundamentals of NC, File Management, Programming Aids
MIN
Page 44
Creating a new part program
You always enter a part program in the PROGRAMMING AND
EDITING mode of operation.
Program initiation in an example:
Select the PROGRAMMING AND EDITING
mode of operation.
<
Call up the file manager: Press the PGM NAME
soft key
FILE NAME=
<
3056
Enter the new program number and confirm
your entry with the ENT key.
Program input : HDH / MM
<
Select the default setting for unit of
measurement (mm): Press the ENT key, or
Switch to using inches: Press the CHANGE MM/
INCH soft key
4.3 Creating and Writing Programs
33HEIDENHAIN TNC 310
Page 45
Define the blank
Open the dialog for blank definition: Press the
BLK FORM soft key
WORKINGSPINDLE AXIS X/Y/Z ?
<
Enter the spindle axis.
DEF BLK FORM: MIN-CORNER?
<
0
0
-40
DEF BLK FORM: MAX-CORNER?
4.3 Creating and Writing Programs
<
100
100
0
Enter in sequence the X, Y and Z coordinates of
the MIN point.
Enter in sequence the X, Y and Z coordinates of
the MAX point.
The program blocks window shows the following BLK FORM
definition
0 BEGIN PGM 3056 MM1 BLK FORM 0.1 Z X+0 Y+0 Z-402 BLK FORM 0.2 X+100 Y+100 Z+03 END PGM 3056 MM
The TNC automatically generates the block numbers as well as the
BEGIN and END blocks.
34
4 Programming: Fundamentals of NC, File Management, Programming Aids
Program begin, name, unit of measure
Tool axis, MIN point coordinates
MAX point coordinates
Program end, name, unit of measure
Page 46
Programming tool movements in conversational
format
To program a block, initiate the dialog by pressing a soft key. In the
screen headline, the TNC then asks you for all the information
necessary to program the desired function.
Example of a dialog
Initiate the dialog.
COORDINATES ?
10Enter the target coordinate for the X axis.
5 Enter the target coordinate for the Y axis,
RADIUS COMP. RL/RR/NO COMP. ?
FEED RATE ?F=
100
MISCELLANEOUS FUNCTION M ?
3
<
<
and go to the next question with ENT.
<
Enter “No radius compensation” and go to
the next question with ENT.
<
Enter a feed rate of 100 mm/min for this
path contour; go to the next question with
ENT.
<
Enter the miscellaneous function M3
“spindle ON”; pressing the ENT key will
terminate this dialog.
Functions during the dialogKey
Ignore the dialog question
End the dialog immediately
Abort the dialog and erase the block
4.3 Creating and Writing Programs
The program blocks window will display the following line:
3 L X+10 Y+5 R0 F100 M3
35HEIDENHAIN TNC 310
Page 47
Editing program lines
While you are creating or editing a part program, you can select any
desired line in the program or individual words in a block with the
arrow keys (see table at right).
Selecting blocks or wordsKeys
Move from one block to the next
Looking for the same words in different blocks
To select a word in a block, press the arrow keys
repeatedly until the highlight is on the desired
word.
Select a block with the arrow keys.
The word that is highlighted in the new block is the same as the
one you selected previously.
Inserting blocks at any desired location
ú Select the block after which you want to insert a new block and
4.3 Creating and Writing Programs
initiate the dialog.
Editing and inserting words
ú Select a word in a block and overwrite it with the new one. The
plain-language dialog is available while the word is highlighted.
ú To conclude editing, press the END key.
If you want to insert a word, press the horizontal arrow keys
repeatedly until the desired dialog appears. You can then enter the
desired value.
Select individual words in a block
Erasing blocks and wordsKey
Set the selected word to zero
Erase an incorrect number
Clear a (non-blinking) error message
Delete the selected word
Delete the selected block (cycle)
Delete the program sections:
First select the last block of the
program section to be erased, then
erase with the DEL key.
36
4 Programming: Fundamentals of NC, File Management, Programming Aids
Page 48
4.4Interactive Programming Graphics
While you are writing the part program, you can have the TNC
generate a graphic illustration of the programmed contour.
To generate/not generate graphics during programming:
ú To switch the screen layout to displaying program blocks to the
left and graphics to the right, press the SPLIT SCREEN key and
PGM + GRAPHICS soft key.
ú Set the AUTO DRAW soft key to ON. While you are
entering the program lines, the TNC generates
each path contour you program in the graphics
window in the right screen half.
If you do not wish to have graphics generated during programming,
set the AUTO DRAW soft key to OFF.
AUTO DRAW ON does not simulate program section repeats.
To generate a graphic for an existing program:
ú Use the arrow keys to select the block up to which you want the
graphic to be generated, or press GOTO and enter the desired
block number.
ú To generate graphics, press the RESET + START
soft key.
Additional functions are listed in the table at right.
To erase the graphic:
ú Shift the soft-key row (see figure at right)
ú Delete graphic: Press CLEAR GRAPHIC soft key
FunctionsSoft key
Generate interactive graphics
blockwise
Generate a complete graphic
or complete it after
RESET + START
Interrupt interactive graphics
This soft key only appears while the
TNC generates the interactive graphics
4.4 Interactive Programming Graphics
37HEIDENHAIN TNC 310
Page 49
Magnifying or reducing a detail
You can select the graphics display by selecting a detail with the
frame overlay. You can now magnify or reduce the selected detail.
ú Select the soft-key row for detail magnification/reduction
(last row, see figure at right)
The following functions are available:
FunctionSoft key
Reduce the frame overlay — press and
hold the soft key to reduce the detail
Enlarge the frame overlay — press and
hold the soft key to magnify the detail
Move the frame overlay to the left:
Press and hold the soft key. Move the frame
overlay to the right:
Press and hold the arrow to the right soft key
4.4 Interactive Programming Graphics
With the WINDOW BLK FORM soft key, you can restore the original
section.
ú Confirm the selected section with the WINDOW
DETAIL soft key
38
4 Programming: Fundamentals of NC, File Management, Programming Aids
Page 50
4.5HELP Function
Certain TNC programming functions are explained in more detail in
the HELP function. You can select a HELP topic using soft keys.
.
Select the HELP function
ú Press the HELP key
ú Select a topic: Press one of the available soft keys
Help topics / FunctionsSoft key
M functions
Cycle parameters
HELP that is entered by the machine
manufacturers (optional)
Go to previous page
Go to next page
Go to beginning of file
Go to end of file
Select search functions; Enter a number,
Begin search with ENT key
Leave HELP function
Press the END key or the HELP key.
4.5 HELP Function
39HEIDENHAIN TNC 310
Page 51
Page 52
Programming:
Tools
5
Page 53
5.1Entering Tool-Related Data
Feed rate F
The feed rate is the speed (in millimeters per minute or inches per
minute) at which the tool center moves. The maximum feed rates
can be different for the individual axes and are set in machine
parameters.
Input
You can enter the feed rate in every positioning block. For further
information refer to section 6.2 “Fundamentals of Path Contours.”
Rapid traverse
If you wish to program rapid traverse, enter FMAX. To enter F, press
the ENT key or the FMAX soft key as soon as the dialog question
“FEED RATE F = ?” appears on the TNC screen.
Duration of effect
A feed rate entered as a numerical value remains in effect until a
5.1 Entering Tool-Related Data
block with a different feed rate is reached. F MAX is only effective in
the block in which it is programmed. After the block with F MAX is
executed, the feed rate will return to the last feed rate entered as a
numerical value.
Changing the spindle speed during program run
You can adjust the feed rate during program run with the feed-rate
override knob.
Spindle speed S
The spindle speed S is entered in revolutions per minute (rpm) in a
TOOL CALL block.
Z
S
S
Y
F
X
Programmed change
In the part program, you can change the spindle speed in a TOOL
CALL block by entering the spindle speed only:
ú To program a tool call, press the
TOOL CALL soft key (3rd soft-key row)
ú Ignore the dialog question for „TOOL NUMBER ?“
with the right arrow key
ú Ignore the dialog question for „WORKING SPINDLE
AXIS X/Y/Z ?“ with the right arrow key
ú Enter the new spindle speed for the dialog
question “SPINDLE SPEED S= ?”.
Changing the spindle speed during program run
You can adjust the spindle speed during program run with the
spindle-speed override knob.
42
5 Programming: Tools
Page 54
5.2Tool Data
You usually program the coordinates of path contours as they are
dimensioned in the workpiece drawing. To allow the TNC to
calculate the tool center path — i.e. the tool compensation — you
must also enter the length and radius of each tool you are using.
Tool data can be entered either directly in the part program with
TOOL DEF or (and) separately in tool tables. The TNC will consider
all of the data entered when executing the part program.
Tool number
Each tool is identified by a number between 0 and 254. If you are
working with tool tables, each tool in the table is given a number
between 0
and 99.
The tool number 0 is automatically defined as the zero tool with the
length L=0 and the radius R=0. In tool tables, tool 0 should also be
defined with L=0 and R=0.
Tool length L
There are two ways to determine the tool length L:
1 The length L is the difference between the length of the tool and
that of a zero tool L
For the algebraic sign:
■ The tool is longer than the zero toolL>L
■ The tool is shorter than the zero tool:L<L
.
0
0
0
Z
L
0
5.2 Tool Data
X
To determine the length:
ú Move the zero tool to the reference position in the tool axis
(e.g. workpiece surface with Z=0).
ú Set the datum in the tool axis to 0 (datum setting).
ú Insert the desired tool.
ú Move the tool to the same reference position as the zero tool.
ú The TNC displays the difference between the current tool and the
zero tool.
ú Enter the value in the TOOL DEF block or in the tool table by
pressing the „ACTUAL POSITION“ key
2 If you determine the length L with a tool presetter, this value can
be entered directly in the TOOL DEF block without further
calculations.
43HEIDENHAIN TNC 310
Page 55
Tool radius R
You can enter the tool radius R directly.
Delta values for lengths and radii
Delta values are offsets in the length and radius of a tool.
A positive delta value describes a tool oversize (DR>0), a negative
5.2 Tool Data
delta value describes a tool undersize (DR<0). Enter the delta
values when you are programming with TOOL CALL.
Input range: You can enter a delta value with up to ± 99.999 mm.
R
L
DR<0
R
Entering tool data into the program
The number, length and radius of a specific tool is defined in the
TOOL DEF block of the part program.
ú To select tool definition, press the TOOL DEF key.
ú Enter the TOOL NUMBER: Each tool is uniquely
identified by its number. When the tool table is
active, enter tool numbers greater than 99
(dependent on MP7260)
ú To enter the TOOL LENGTH, enter the
compensation value for the tool length.
ú Enter the TOOL RADIUS.
During the dialog, you can take the values for length and
radius directly from the position display with the soft
keys „CUR.POS X, CUR.POS Y or CUR.POS Z“.
Resulting NC block:
4 TOOL DEF 5 L+10 R+5
DR>0
DL<0
DL>0
44
5 Programming: Tools
Page 56
Entering tool data in tables
You can define and store up to 99 tools and their tool data in the
tool table TOOL.T. (The maximum number of tools in the table can
be set in machine parameter 7260).
Tool table: Available input data
Abbr.Input
TNumber by which the tool is called in the program
LValue for tool length compensation
RTool radius R
Editing the tool table
The tool table has the file name TOOL.T. The
TOOL.T file can be edited in the PROGRAMMING AND EDITING
operating mode. TOOL.T is automatically active in a program run
operating mode.
To open the tool table TOOL.T:
Select the PROGRAMMING AND EDITING mode of operation.
ú call the file manager.
ú Move the highlight to TOOL.T. Confirm with the
ENT key.
When you have opened the tool table, you can edit the tool data by
moving the cursor to the desired position in the table with the
arrow keys (see figure at center right). You can overwrite the stored
values, or enter new values at any position. The available editing
functions are illustrated in the table on the next page.
To leave the tool table:
ú Finish editing the tool table: Press the END key.
ú Call the file manager and select a file of a different type, e.g. a
part program.
Dialog
–
TOOL LENGTH ?
TOOL RADIUS ?
5.2 Tool Data
45HEIDENHAIN TNC 310
Page 57
Editing functions for tool tablesSoft key
Take the value from the position
display
Go to the previous page of the table
(2nd soft-key row)
5.2 Tool Data
Go to the next page of the table
(2nd soft-key row)
Move the highlight one column to
the left
Move the highlight one column to
the right
Delete incorrect numerical value,
re-establish preset value
Re-establish the last value stored
Move the highlight back to beginning of line
46
5 Programming: Tools
Page 58
Calling tool data
A TOOL CALL block in the part program is defined with the
following data:
ú Select the tool call function with the TOOL CALL
key
ú TOOL NUMBER: Enter the number of the tool. The
tool must already be defined in a TOOL DEF block
or in the tool table.
ú WORKING SPINDLE AXIS X/Y/Z: Enter the tool axis.
ú SPINDLE SPEED S
ú TOOL LENGTH OVERSIZE: Enter the delta value for
the tool length.
ú TOOL RADIUS OVERSIZE: Enter the delta value for
the tool radius.
Example:
Call tool number 5 in the tool axis Z with a spindle speed 2500 rpm.
The tool length is to be programmed with an oversize of 0.2 mm,
the tool radius with an undersize of 1 mm.
20 TOOL CALL 5 Z S2500 DL+0.2 DR-1
The character D preceding L and R designates delta values.
Tool change
The tool change function can vary depending on the
individual machine tool. Your machine manual provides
more information on M101.
5.2 Tool Data
Tool change position
A tool change position must be approachable without collision. With
the miscellaneous functions M91 and M92, you can enter machinereferenced (rather than workpiece-referenced) coordinates for the
tool change position. If TOOL CALL 0 is programmed before the
first tool call, the TNC moves the tool spindle in the tool axis to a
position that is independent of the tool length.
Manual tool change
To change the tool manually, stop the spindle and move the tool to
the tool change position:
ú Move to the tool change position under program control.
ú Interrupt program run (see section 10.3 “Program Run”).
ú Change the tool.
ú Resume the program run (see section 10.3 “Program Run”).
47HEIDENHAIN TNC 310
Page 59
5.3Tool Compensation
The TNC adjusts the spindle path in the tool axis by the
compensation value for the tool length. In the working plane, it
compensates the tool radius.
If you are writing the part program directly on the TNC, the tool
radius compensation is effective only in the working plane.
Tool length compensation
Length compensation becomes effective automatically as soon as a
tool is called and the tool axis moves. To cancel length
compensation call a tool with the length L=0.
5.3 Tool Compensation
For tool length compensation, the TNC takes the delta values from
the TOOL CALL block into account:
Compensation value = L + DL
Lis the tool length L from the TOOL DEF block or tool
DL
If you cancel a positive length compensation with TOOL
CALL 0, the distance between tool and workpiece will
be reduced.
After TOOL CALL, the path of the tool in the tool axis, as
entered in the part program, is adjusted by the difference
between the length of the previous tool and that of the
new one.
where
TOOL CALL
TOOL CALL
table
is the oversize for length DL in the TOOL CALL block
(not taken into account by the position display)
Tool radius compensation
The NC block for programming a tool movement contains:
■ RL or RR for compensation in the tool radius
■ R+ or R– for radius compensation in single-axis movements
■ R0 if no radius compensation is required
Radius compensation becomes effective as soon as a tool is called
and is moved in the working plane with RL or RR. To cancel radius
compensation, program a positioning block with R0.
48
5 Programming: Tools
Page 60
For tool radius compensation, the TNC takes the delta values from
R
R
R0
RL
the TOOL CALL block into account:
Compensation value = R + DR
TOOL CALL,
where
Ris the tool radius R from the TOOL DEF block or tool
table
DR
TOOL CALL
is the oversize for radius DR in the TOOL CALL block
(not taken into account by the position display)
Tool movements without radius compensation: R0
The tool center moves in the working plane to the programmed
path or coordinates.
Applications: Drilling and boring, pre-positioning
(see figure at center right)
Tool movements with radius compensation: RR and RL
RR The tool moves to the right of the programmed contour
RL The tool moves to the left of the programmed contour
The tool center moves along the contour at a distance equal to the
radius. “Right” or “left” are to be understood as based on the
direction of tool movement along the workpiece contour (see
illustrations on the next page).
Between two program blocks with different radius
compensations (RR and RL) you must program at least
one block without radius compensation (that is, with R0).
Radius compensation does not come into effect until the
end of the block in which it is first programmed.
Whenever radius compensation is activated with RR/RL
or canceled with R0, the TNC positions the tool
perpendicular to the programmed starting or end
position. Position the tool at a sufficient distance from
the first or last contour point to prevent the possibility of
damaging the contour.
5.3 Tool Compensation
Z
Y
X
Y
X
49HEIDENHAIN TNC 310
Page 61
Entering radius compensation
When you program a path contour, the following dialog question is
displayed after entry of the coordinates:
RADIUS COMP. RL/RR/NO COMP. ?
<
To select tool movement to the left of the
contour, press the RL soft key, or
To select tool movement to the right of the
contour, press the RR soft key, or
Y
RL
5.3 Tool Compensation
To select tool movement without radius
compensation or to cancel radius
compensation, press the ENT key or the R0 soft
key.
To terminate the dialog, press the END key.
X
Y
RR
X
50
5 Programming: Tools
Page 62
Radius compensation: Machining corners
Outside corners
If you program radius compensation, the TNC moves the tool in a
transitional arc around corners. The tool “rolls around” the corner
point. If necessary, the TNC reduces the feed rate at outside
corners to reduce machine stress, for example at very great
changes of direction.
Inside corners
The TNC calculates the intersection of the tool center paths at
inside corners under radius compensation. From this point it then
starts the next contour element. This prevents damage to the
workpiece. The permissible tool radius, therefore, is limited by the
geometry of the programmed contour.
To prevent the tool from damaging the contour, be
careful not to program the starting or end position for
machining inside corners at a corner of the contour.
Machining corners without radius compensation
If you program the tool movement without radius compensation,
you can change the tool path and feed rate at workpiece corners
with the miscellaneous function M90. See ”7.4 Miscellaneous
Functions for Contouring Behavior.”
RL
5.3 Tool Compensation
RLRL
51HEIDENHAIN TNC 310
Page 63
Page 64
6
Programming:
Programming Contours
Page 65
6.1Overview of Tool Movements
Path functions
A workpiece contour is usually composed of several contour
elements such as straight lines and circular arcs. With the path
functions, you can program the tool movements for straight lines
and circular arcs.
Miscellaneous functions M
With the TNC’s miscellaneous functions you can affect
■ program run, such as a program interruption
■ machine functions, such as switching spindle rotation and coolant
supply on and off
■ contouring behavior of the tool.
Subprograms and program section repeats
6.1 Overview of Tool Movements
If a machining sequence occurs several times in a program, you can
save time and reduce the chance of programming errors by
entering the sequence once and then defining it as a subprogram
or program section repeat. If you wish to execute a specific program section only under certain conditions, you also define this
machining sequence as a subprogram. In addition, you can have a
part program call a separate program for execution.
How subprograms and program section repeats are used in
programming is described in Chapter 9.
L
L
CC
L
C
Y
80
60
40
CC
R40
54
11510
X
6 Programming: Programming Contours
Page 66
6.2Fundamentals of Path Functions
Programming tool movements for workpiece
machining
You create a part program by programming the path functions for
the individual contour elements in sequence. You usually do this by
entering the coordinates of the end points of the contourelements given in the production drawing. The TNC calculates the
actual path of the tool from these coordinates, and from the tool
data and radius compensation.
The TNC moves all axes programmed in a single block
simultaneously.
Movement parallel to the machine axes
The program block contains only one coordinate. The TNC thus
moves the tool parallel to the programmed axis.
Depending on the individual machine tool, the part program is
executed by movement of either the tool or the machine table on
which the workpiece is clamped. Nevertheless, you always program path contours as if the tool moves and the workpiece remains
stationary.
Example:
L X+100L
X+100
The tool retains the Y and Z coordinates and moves to the position
X=100. See figure at upper right.
Movement in the main planes
The program block contains two coordinates. The TNC thus moves
the tool in the programmed plane.
Example:
L X+70 Y+50
The tool retains the Z coordinate and moves in the XY plane to the
position X=70, Y=50. See figure at center right.
Path function for “straight line”
Coordinate of the end point
50
Z
Y
X
100
Z
6.2 Fundamentals of Path Functions
Y
X
70
Z
Three-dimensional movement
The program block contains three coordinates. The TNC thus moves
the tool in space to the programmed position.
Example:
L X+80 Y+0 Z-10
This example is illustrated in the figure at lower right.
Y
-10
X
80
55HEIDENHAIN TNC 310
Page 67
Circles and circular arcs
The TNC moves two axes simultaneously in a circular path relative
to the workpiece. You can define a circular movement by entering
the circle center CC.
Y
When you program a circle, the TNC assigns it to one of the main
planes. This plane is defined automatically when you set the
spindle axis during a tool call:
Spindle axisMain plane
ZXY
YZX
XYZ
Direction of rotation DR for circular movements
When a circular path has no tangential transition to another contour
element, enter the direction of rotation DR:
Clockwise direction of rotation: DR–
Counterclockwise direction of rotation: DR+
Radius compensation
Radius compensation must be programmed before the block
containing the coordinates for the first contour element. You cannot
6.2 Fundamentals of Path Functions
begin radius compensation in a circle block. It must be activated
beforehand in a straight-line block.
Z
Y
Pre-positioning
Before running a part program, always pre-position the tool to
prevent the possibility of damaging it or the workpiece.
DR–
CC
Y
Y
C
C
X
CC
X
CC
X
DR+
CC
X
56
6 Programming: Programming Contours
Page 68
Creating the program blocks with the path function keys
Use the path function keys to open a conversational dialog. The
TNC asks you successively for all the necessary information and
inserts the program block into the part program.
Example — programming a straight line:
Initiate the programming dialog (here, for a
straight line).
COORDINATES ?
<
10
Enter the coordinates of the straight-line end
point.
5
Transfer the coordinates of the selected axis:
Press ACTUAL POSITION soft key (second softkey row)
RADIUS COMP. RL/RR/NO COMP. ?
<
Select the radius compensation (here, press the
RL soft key — the tool moves to the left of the
programmed contour).
FEED RATEF=
<
100
Enter the feed rate (here, 100 mm/min), and
confirm your entry with ENT.
MISCELLANEOUS FUNCTION M ?
<
3
Enter a miscellaneous function (here, M3), and
terminate the dialog with ENT.
The part program now contains the following line:
L X+10 Y+5 RL F100 M3
6.2 Fundamentals of Path Functions
57HEIDENHAIN TNC 310
Page 69
6.3Path Contours — Cartesian
Coordinates
Overview of path functions
FunctionContour function soft key
Line L
CHamFer
Circle Center
Circle
Circle by Radius
Circle Tangential
6.3 Path Contours — Cartesian Coordinates
Corner RouNDing
Tool movement
Straight line
Chamfer between two straight lines
No tool movement
Circular arc around a circle
center CC to an arc end point
Circular arc with a certain radius
Circular arc with tangential connection
to the preceding contour element
Circular arc with tangential connection
to the preceding and subsequent contour
elements
Required input
Coordinates of the straight-line
end point
Chamfer side length
Coordinates of the circle center or
pole
Coordinates of the arc end point,
direction of rotation
Coordinates of the arc end point,
arc radius, direction of rotation
Coordinates of the arc end point
Rounding-off radius R
58
6 Programming: Programming Contours
Page 70
Straight line L
The tool moves on a straight line from its current position to the
line end point. The starting point for the straight line is the end
point that was programmed in the preceding block.
ú Enter the COORDINATES of the end point.
Further entries, if necessary:
ú RADIUS COMPENSATION RL/RR/R0
ú FEED RATE F
ú MISCELLANEOUS FUNCTION M
Example NC blocks
7 L X+10 Y+40 RL F200 M38 L IX+20 IY-159 L X+60 IY-10
40
Y
15
10
10
20
X
60
Inserting a chamfer CHF between two straight lines
The chamfer enables you to cut off corners at the intersection of
two straight lines.
■ The blocks before and after the CHF block must be in the same
working plane.
■ The radius compensation before and after the chamfer block must
be the same.
■ An inside chamfer must be large enough to accommodate the
current tool.
ú CHAMFER SIDE LENGTH: Enter the length of the
chamfer
Example NC blocks
7 L X+0 Y+30 RL F300 M38 L X+40 IY+59 CHF 1210 L IX+5 Y+0
You cannot start a contour with a CHF block
A chamfer is possible only in the working plane.
The feed rate for chamferring is taken from the
preceding block.
The corner point is cut off by the chamfer and is not part
of the contour.
30
Y
6.3 Path Contours — Cartesian Coordinates
X
Y
5
12
40
12
5
X
59HEIDENHAIN TNC 310
Page 71
Circle center CC
You can define a circle center CC for circles that are programmed
with the C soft key (circular path C). This is done in the following
ways:
■ Entering the Cartesian coordinates of the circle center
■ Using the circle center defined in an earlier block
■ Capturing the coordinates with the
„ACTUAL POSITION“ soft key
ú Select circle functions: Press the „CIRCLE“ soft key
(2nd soft-key row)
ú COORDINATES CC: Enter the circle center
coordinates
If you want to use the last programmed position,
do not enter any coordinates.
Example NC blocks
5 CC X+25 Y+25
or
10 L X+25 Y+2511 CC
The program blocks 10 and 11 do not refer to the illustration.
Duration of effect
6.3 Path Contours — Cartesian Coordinates
The circle center definition remains in effect until a new circle
center is programmed.
Z
Y
CC
Y
CC
X
CC
X
Entering the circle center CC incrementally
If you enter the circle center with incremental coordinates, you
have programmed it relative to the last programmed position of the
tool.
The only effect of CC is to define a position as a circle
center — the tool does not move to the position.
The circle center also serves as the pole for polar
coordinates.
60
6 Programming: Programming Contours
Page 72
Circular path C around circle center CC
Before programming a circular path C, you must first enter the
circle center CC. The last programmed tool position before the C
block is used as the circle starting point.
ú Move the tool to the circle starting point.
ú Select circle functions: Press the „CIRCLE“ soft key
(2nd soft-key row)
ú Enter the COORDINATES of the circle center.
ú Enter the COORDINATES of the arc end point
ú DIRECTION OF ROTATION DR
Further entries, if necessary:
ú FEED RATE F
ú MISCELLANEOUS FUNCTION M
Y
E
CC
S
X
Example NC blocks
5 CC X+25 Y+256 L X+45 Y+25 RR F200 M37 C X+45 Y+25 DR+
Full circle
Enter the same point you used as the starting point for the end
point in a C block.
The starting and end points of the arc must lie on the
circle.
Input tolerance: up to 0.016 mm.
25
Y
DR+
CC
6.3 Path Contours — Cartesian Coordinates
DR–
25
45
X
61HEIDENHAIN TNC 310
Page 73
Circular path CR with defined radius
The tool moves on a circular path with the radius R.
ú Select circle functions: Press the „CIRCLE“ soft key
(2nd soft-key row)
ú Enter the COORDINATES of the arc end point.
ú RADIUS R
Note: The algebraic sign determines the size of the
arc.
ú DIRECTION OF ROTATION DR
Note: The algebraic sign determines whether the
arc is concave or convex.
Further entries, if necessary:
ú FEED RATE F
ú MISCELLANEOUS FUNCTION M
Y
E1=S
R
2
S1=E
CC
2
X
Full circle
For a full circle, program two CR blocks in succession:
The end point of the first semicircle is the starting point of the
second. The end point of the second semicircle is the starting point
of the first. See figure at upper right.
Central angle CCA and arc radius R
The starting and end points on the contour can be connected with
four arcs of the same radius:
6.3 Path Contours — Cartesian Coordinates
Smaller arc: CCA<180°
Enter the radius with a positive sign R>0
Larger arc: CCA>180°
Enter the radius with a negative sign R<0
The direction of rotation determines whether the arc is curving
outward (convex) or curving inward (concave):
Convex: Direction of rotation DR– (with radius compensation RL)
Concave: Direction of rotation DR+ (with radius compensation RL)
The distance from the starting and end points of the arc
diameter cannot be greater than the diameter of the arc.
The maximum possible radius is 30 m.
Circular path CT with tangential connection
The tool moves on an arc that starts at a tangent with the previously
programmed contour element.
A transition between two contour elements is called “tangential”
when there is no kink or corner at the intersection between the two
contours — the transition is smooth.
The contour element to which the tangential arc connects must be
programmed immediately before the CT block. This requires at
least two positioning blocks.
ú Select circle functions: Press the „CIRCLE“ soft key
(2nd soft-key row)
ú Enter the COORDINATES of the arc end point.
Further entries, if necessary:
ú FEED RATE F
ú MISCELLANEOUS FUNCTION M
Example NC blocks
7 L X+0 Y+25 RL F300 M38 L X+25 Y+309 CT X+45 Y+2010 L Y+0
30
25
Y
20
25
45
X
6.3 Path Contours — Cartesian Coordinates
A tangential arc is a two-dimensional operation: the
coordinates in the CT block and in the contour element
preceding it must be in the same plane of the arc.
63HEIDENHAIN TNC 310
Page 75
Corner Rounding RND
The RND function is used for rounding off corners.
The tool moves on an arc that is tangentially connected to both the
preceding and subsequent contour elements.
The rounding arc must be large enough to accommodate the tool.
ú ROUNDING-OFF RADIUS: Enter the radius of the
arc.
ú FEED RATE for rounding the corner.
Example NC blocks
5 L X+10 Y+40 RL F300 M36 L X+40 Y+257 RND R5 F1008 L X+10 Y+5
In the preceding and subsequent contour elements,
both coordinates must lie in the plane of the rounding
arc.
The corner point is cut off by the rounding arc and is not
part of the contour.
A feed rate programmed in the RND block is effective
only in that block. After the RND block, the previous feed
6.3 Path Contours — Cartesian Coordinates
rate becomes effective again.
You can also use an RND block for a tangential contour
approach if you do not want to use an APPR function.
40
Y
R5
5
25
X
10
40
64
6 Programming: Programming Contours
Page 76
Example: Linear movements and chamfers with Cartesian coordinatesExample: Linear movements and chamfers with Cartesian coordinates
0 BEGIN PGM 10 MM1 BLK FORM 0.1 Z X+0 Y+0 Z-202BLK FORM 0.2X+100 Y+100 Z+03 TOOL DEF 1 L+0 R+104 TOOL CALL 1 Z S40005 LZ+250 R0 F MAX6 L X-20 Y-10 R0 F MAX7 L Z-5 R0 F1000 M38 L X+5 Y+5 RL F3009 RND R210 LY+9511 LX+9512CHF 1013 L Y+514 CHF 2015 L X+516 RND R217 LX-20 R0 F100018 L Z+250 R0 F MAX M219 END PGM 10 MM
Y
95
5
5
Define blank form for graphic workpiece simulation
Define tool in the program
Call tool in the spindle axis and with the spindle speed S
Retract tool in the spindle axis at rapid traverse FMAX
Pre-position the tool
Move to working depth at feed rate F = 1000 mm/min
Approach the contour at point 1
Tangential approach to circle with R=2 mm
Move to point 2
Point 3: first straight line for corner 3
Program chamfer with length 10 mm
Point 4: 2nd straight line for corner 3, 1st straight line for corner 4
Program chamfer with length 20 mm
Move to last contour point 1, second straight line for corner 4
Tangential departure from circle with R=2 mm
Retract tool in the working plane
Retract tool in the spindle axis, end of program
20
10
10
20
X
95
6.3 Path Contours — Cartesian Coordinates
65HEIDENHAIN TNC 310
Page 77
Example: Circular movements with Cartesian coordinatesExample: Circular movements with Cartesian coordinates
Y
0 BEGIN PGM 20 MM
6.3 Path Contours — Cartesian Coordinates
1 BLK FORM 0.1 Z X+0 Y+0 Z-202BLK FORM 0.2X+100 Y+100 Z+03 TOOL DEF 1 L+0 R+104 TOOL CALL 1 Z S40005 LZ+250 R0 F MAX6 L X-20 Y-20 R0 F MAX7 L Z-5 R0 F1000 M38 L X+5 Y+5 RL F3009 RND R210 LY+8511 RND R10 F15012LX+3013 CR X+70 Y+95 R+30 DR-14 LX+9515 LY+4016 CT X+40 Y+5
17 L X+518 RND R219 LX-20 Y-20 R0 F100020 L Z+250 R0 F MAX M221 END PGM 20 MM
95
85
40
5
Define blank form for graphic workpiece simulation
Define tool in the program
Call tool in the spindle axis and with the spindle speed S
Retract tool in the spindle axis at rapid traverse FMAX
Pre-position the tool
Move to working depth at feed rate F = 1000 mm/min
Approach the contour at point 1
Tangential approach to circle with R=2 mm
Point 2: first straight line for corner 2
Insert radius with R = 10 mm, feed rate: 150 mm/min
Move to point 3: Starting point of the arc with CR
Move to point 4: End point of the arc with CR, radius 30 mm
Move to point 5
Move to point 6
Move to point 7: End point of the arc, radius with tangential
connection to point 6, TNC automatically calculates the radius
Move to last contour point 1
Tangential departure from circle with R=2 mm
Retract tool in the working plane
Retract tool in the spindle axis, end of program
R10
5
R30
403070
95
X
66
6 Programming: Programming Contours
Page 78
Example: Full circle with Cartesian coordinatesExample: Full circle with Cartesian coordinates
Y
0 BEGIN PGM 30 MM1 BLK FORM 0.1 Z X+0 Y+0 Z-202BLK FORM 0.2X+100 Y+100 Z+03 TOOL DEF 1 L+0 R+12.54 TOOL CALL 1 Z S31505 CC X+50 Y+506 LZ+250 R0 F MAX7 L X-40 Y+50 R0 F MAX8 L Z-5 R0 F1000 M39 L X+0 Y+50 RL F30010 RND R211 CX+0 DR-12RND R213 LX-40 Y+50 R0 F100014 L Z+250 R0 F MAX M215 END PGM 30 MM
50
Define the blank form
Define the tool
Call the tool
Define the circle center
Retract the tool
Pre-position the tool
Move to working depth
Approach starting point of circle
Tangential approach to circle with R=2 mm
Move to the circle end point (= circle starting point)
Tangential departure from circle with R=2 mm
Retract tool in the working plane
Retract tool in the spindle axis, end of program
CC
50
X
6.3 Path Contours — Cartesian Coordinates
67HEIDENHAIN TNC 310
Page 79
6.4Path Contours—
Polar Coordinates
With polar coordinates you can define a position in terms of its
angle PA and its distance PR relative to a previously defined pole
CC. See section ”4.1 Fundamentals of NC.”
Polar coordinates are useful with:
■ Positions on circular arcs
■ Workpiece drawing dimensions in degrees, e.g. bolt hole circles
Overview of path functions with polar coordinates
FunctionContour function soft keys
Tool movement
Required input
Line LP
Circular arc CP+
Circular arc CTP+
6.4 Path Contours– Polar Coordinates
Helix+
(Helix)
+
Straight line
Circular path around circle center/pole
CC to arc end point
Circular path with tangential
connection to the preceding contour
element
Combination of a circular and a linear
movement
Polar coordinate origin: Pole CC
You can define the pole CC anywhere in the part program before
blocks containing polar coordinates. Enter the pole in Cartesian
coordinates as a circle center in a CC block.
ú Select circle functions: Press the „CIRCLE“ soft key
ú COORDINATES CC: Enter Cartesian coordinates for
the pole, or:
If you want to use the last programmed position,
do not enter any coordinates.
Polar radius, polar angle of the
straight-line end point
Polar angle of the arc end point,
direction of rotation
Polar radius, polar angle of the arc
end point
Polar radius, polar angle of the arc
end point, coordinate of the end
point in the tool axis
Y
Y
C
C
CC
68
X
X
CC
6 Programming: Programming Contours
Page 80
Straight line LP
The tool moves in a straight line from its current position to the
straight-line end point. The starting point for the straight line is the
end point that was programmed in the preceding block.
ú Select straight line function: Press the L soft key
ú Select entry of polar coordinates: Press the P soft
key (2nd soft-key row). POLAR COORDINATESRADIUS PR: Enter the distance from the pole CC to
the straight-line end point.
ú POLAR COORDINATES-ANGLE PA: Angular
position of the straight-line end point between –
360° and +360°
The sign of PA depends on the angle reference
axis:
Angle from angle reference axis to PR is
counterclockwise: PA>0
Angle from angle reference axis to PR is clockwise:
PA<0
The polar coordinate radius PR is also the radius of the arc. It is
defined by the distance from the starting point to the pole CC. The
last programmed tool position before the CP block is the starting
point of the arc.
ú Select circle functions: Press the „CIRCLE“ soft key
ú Select circular path C: Press the C soft key
ú Select entry of polar coordinates: Press the P soft
key (2nd soft-key row).
ú POLAR COORDINATES-ANGLE PA: Angular
position of the arc end point between –5400° and
+5400°
For incremental coordinates, enter the same sign for DR
and PA.
Circular path CTP with tangential connection
The tool moves on a circular path, starting tangentially from a
preceding contour element.
ú Select circle functions: Press the „CIRCLE“ soft key
Y
120°
ú Select the circular path CT: Press the CT soft key
ú Select entry of polar coordinates: Press the P soft
key (2nd soft-key row).
ú POLAR COORDINATES-RADIUS PR: Distance from
the arc end point to the pole CC.
6.4 Path Contours– Polar Coordinates
ú POLAR COORDINATES-ANGLE PA: Angular
position of the arc end point.
Example NC blocks
12CC X+40 Y+3513 L X+0 Y+35 RL F250 M314 LP PR+25 PA+12015 CTP PR+30 PA+3016 L Y+0
The pole CC is not the center of the contour arc!
35
CC
R25
40
R30
30°
X
70
6 Programming: Programming Contours
Page 82
Helical interpolation
A helix is a combination of a circular movement in a main plane and
a linear movement perpendicular to this plane.
A helix is programmed only in polar coordinates.
Applications
■ Large-diameter internal and external threads
■ Lubrication grooves
Calculating the helix
To program a helix, you must enter the total angle through which
the tool is to move on the helix in incremental dimensions, and the
total height of the helix.
For calculating a helix that is to be cut in a upward direction, you
need the following data:
Z
Y
CC
X
Thread revolutions n
Total height h
Incremental
total angle IPA
Starting coordinate Z
Shape of the helix
The table below illustrates in which way the shape of the helix is
determined by the work direction, direction of rotation and radius
compensation.
Thread revolutions + thread overrun at
the start and end of the thread
Thread pitch P x thread revolutions n
Thread revolutions x 360° + angle for
beginning of thread + angle for thread
overrun
Thread pitch P x (thread revolutions +
thread overrun at start of thread)
6.4 Path Contours– Polar Coordinates
71HEIDENHAIN TNC 310
Page 83
Programming a helix
6.4 Path Contours– Polar Coordinates
Always enter the same algebraic sign for the direction of
rotation DR and the incremental total angle IPA. The tool
may otherwise move in a wrong path and damage the
contour.
For the total angle IPA, you can enter a value from
–5400° to +5400°. If the thread has of more than 15
revolutions, program the helix in a program section
repeat (see section 9.2 “Program Section Repeats”).
ú Select circle functions: Press the „CIRCLE“ soft key
ú Select circular path C: Press the C soft key
ú Select entry of polar coordinates: Press the P soft
key (2nd soft-key row).
ú POLAR COORDINATES-ANGLE: Enter the total
angle of tool traverse along the helix in incremental
dimensions. After entering the angle, identify the
tool axis using a soft key.
ú Enter the COORDINATE for the height of the helix
in incremental dimensions.
ú Direction of rotation DR
Clockwise helix: DR–
Counterclockwise helix: DR+
ú RADIUS COMPENSATION RL/RR/R0
Enter the radius compensation according to the
table above.
0 BEGIN PGM 40 MM1 BLK FORM 0.1 Z X+0 Y+0 Z-202BLK FORM 0.2X+100 Y+100 Z+03 TOOL DEF 1 L+0 R+7.54 TOOL CALL 1 Z S40005 CC X+50 Y+506 LZ+250 R0 F MAX7 LP PR+60 PA+180 R0 F MAX8 L Z-5 R0 F1000 M39 LP PR+45 PA+180 RL F25010 RND R111 LP PA+12012LP PA+6013 LP PA+014 LP PA-6015 LP PA-12016 LP PA+18017 RND R118 LP PR+60 PA+180 R0 F100019 L Z+250 R0 F MAX M220 END PGM 40 MM
5
50
Define the blank form
Define the tool
Call the tool
Define the datum for polar coordinates
Retract the tool
Pre-position the tool
Move to working depth
Approach the contour at point 1
Tangential approach to circle with R=1 mm
Move to point 2
Move to point 3
Move to point 4
Move to point 5
Move to point 6
Move to point 1
Tangential departure from circle with R=1 mm
Retract tool in the working plane
Retract tool in the spindle axis, end of program
100
X
6.4 Path Contours – Polar Coordinates
73HEIDENHAIN TNC 310
Page 85
Example: Helix
Y
100
6.4 Path Contours – Polar Coordinates
0 BEGIN PGM 50 MM1 BLK FORM 0.1 Z X+0 Y+0 Z-202BLK FORM 0.2X+100 Y+100 Z+03 TOOL DEF 1 L+0 R+54 TOOL CALL 1 Z S14005 LZ+250 R0 F MAX6 L X+50 Y+50 R0 F MAX7CC8 LZ-12.75 R0 F1000 M39 LP PR+32PA-180 RL F10010 RND R211 CP IPA+3240 IZ+13,5 DR+ F20012RND R213 L X+50 Y+50 R0 F MAX14 L Z+250 R0 F MAX M215 END PGM 50 MM
50
Define the blank form
Define the tool
Call the tool
Retract the tool
Pre-position the tool
Transfer the last programmed position as the pole
Move to working depth
Approach contour
Tangential approach to circle with R=2 mm
Helical interpolation
Tangential departure from circle with R=2 mm
Retract tool in the working plane
Retract tool in the spindle axis, end of program
Identify beginning of program section repeat
Enter the thread pitch as an incremental IZ dimension
Program the number of repeats (thread revolutions)
6 Programming: Programming Contours
Page 86
7
Programming:
Miscellaneous Functions
Page 87
7.1Entering Miscellaneous Functions
M and STOP
With the TNC’s miscellaneous functions — also called M functions
— you can affect:
■ Program run, such as a program interruption
■ Machine functions, such as switching spindle rotation and coolant
supply on and off
■ Contouring behavior of the tool
The machine tool builder may add some M functions
that are not described in this User’s Manual. Refer to
your machine manual for more information.
M functions are always entered at the end of a positioning block.
The TNC then displays the following dialog question:
MISCELLANEOUS FUNCTION M ?
Only enter the number of the M function in the programming
dialog.
In the MANUAL OPERATION operating mode, the M functions are
entered with the M soft key.
Please note that some F functions become effective at the start of
a positioning block, and other at the end.
M functions come into effect in the block in which they are called.
Unless the M function is only effective blockwise, it is canceled in a
subsequent block or at the end of program. Some M functions are
effective only in the block in which they are called.
7.1 Entering Miscellaneous Functions M and STOP
Entering an M function in a STOP block
If you program a STOP block, the program run or test run is
interrupted at the block, for example for tool inspection. You can
also enter an M function in a STOP block:
ú To program an interruption of program run,
press the STOP key.
ú Enter a MISCELLANEOUS FUNCTION M.
Resulting NC block
87 STOP M6
76
7 Programming: Miscellaneous Functions
Page 88
7.2Miscellaneous Functions for Program Run Control, Spindle and
Coolant
MEffect
M00Stop program run
Spindle STOP
Coolant OFF
M01Stop program run
M02Stop program run
Spindle STOP
Coolant OFF
Go to block 1
Clear the status display (dependent
on machine parameter 7300)
M03Spindle ON clockwise
M04Spindle ON counterclockwise
M05Spindle STOP
M06Tool change
Spindle STOP
Program run stop (dependent on
machine parameter 7440)
M08Coolant ON
M09Coolant OFF
M13Spindle ON clockwise
On the scale, a reference mark indicates the position of the scale
reference point.
Machine datum
The machine datum is required for the following tasks:
■ Defining the limits of traverse (software limit switches)
■ Moving to machine-referenced positions (such as tool change
positions)
■ Setting the workpiece datum
X
MP
X (Z,Y)
7.2 Miscellaneous Functions for Program Run Control, Spindle and Coolant
77HEIDENHAIN TNC 310
Page 89
The distance in each axis from the scale reference point to the
machine datum is defined by the machine tool builder in a machine
parameter.
Standard behavior
The TNC references coordinates to the workpiece datum (see
“Datum setting”).
Behavior with M91 — Machine datum
If you want the coordinates in a positioning block to be referenced
to the machine datum, end the block with M91.
The coordinate values on the TNC screen are referenced to the
machine datum. Switch the display of coordinates in the status
display to REF (see section 1.4 “Status Displays”).
Behavior with M92 — Additional machine datum
In addition to the machine datum, the machine tool
builder can also define an additional machine-based
position as a reference point.
For each axis, the machine tool builder defines the
distance between the machine datum and this additional
machine datum. Refer to the machine manual for more
information.
If you want the coordinates in a positioning block to be based on
the additional machine datum, end the block with M92.
Radius compensation remains the same in blocks that
are programmed with M91 or M92. The tool length,
however, is not compensated.
7.3 Miscellaneous Functions for Coordinate Data
Effect
M91 and M92 are effective only in the blocks in which they are
programmed with M91 or M92.
M91 and M92 become effective at the start of block.
Workpiece datum
The figure at right shows coordinate systems with the machine
datum and workpiece datum.
Z
Z
Y
Y
X
X
M
78
7 Programming: Miscellaneous Functions
Page 90
7.4Miscellaneous Functions for
Contouring Behavior
Smoothing corners: M90
Standard behavior
The TNC stops the tool briefly in positioning blocks without tool
radius compensation. This is called an accurate stop.
In program blocks with radius compensation (RR/RL), the TNC
automatically inserts a transition arc at outside corners.
Behavior with M90
The tool moves at corners with constant speed: This provides a
smoother, more continuous surface. Machining time is also
reduced. See figure at center right.
Example application: Surface consisting of a series of straight line
segments.
Effect
M90 is effective only in the blocks in which it is programmed with
M90.
M90 becomes effective at the start of block. Operation with servo
lag must be active.
Independently of M90, you can use machine parameter
MP7460 to set a limit value up to which the tool moves at
constant path speed (effective with servo lag and
feedforward control).
Y
X
Y
X
7.4 Miscellaneous Functions for Contouring Behavior
79HEIDENHAIN TNC 310
Page 91
Machining small contour steps: M97
Standard behavior
The TNC inserts a transition arc at outside corners. If the contour
steps are very small, however, the tool would damage the contour.
See figure at upper right.
In such cases the TNC interrupts program run and generates the
error message “TOOL RADIUS TOOL LARGE.”
Behavior with M97
The TNC calculates the intersection of the contour elements — as
at inside corners — and moves the tool over this point. See figure
at lower right.
Program M97 in the same block as the outside corner.
Effect
M97 is effective only in the blocks in which it is programmed with
M97.
A corner machined with M97 will not be completely
finished. You may wish to rework the contour with a
smaller tool.
Y
X
Y
7.4 Miscellaneous Functions for Contouring Behavior
Example NC blocks
5TOOL DEF L ... R+20...13L X ... Y ... R.. F .. M97
14L IY0.5 .... R .. F..
15L IX+100 ...16L IY+0.5 ... R .. F.. M9717L X .. Y ...
S
13
14
Large tool radius
Move to contour point 13
Machine small contour step 13 to 14
Move to contour point 15
Machine small contour step 15 to 16
Move to contour point 17
S
16
17
15
X
80
7 Programming: Miscellaneous Functions
Page 92
Machining open contours: M98
Standard behavior
The TNC calculates the intersections of the cutter paths at inside
corners and moves the tool in the new direction at those points.
If the contour is open at the corners, however, this will result in
incomplete machining (see figure at upper right).
Behavior with M98
With the miscellaneous function M98, the TNC temporarily
suspends radius compensation to ensure that both corners are
completely machined (see figure at lower right).
Effect
M98 is effective only in the blocks in which it is programmed with
M98.
M98 becomes effective at the end of block.
Example NC blocks
Move to the contour points 10, 11 and 12 in succession:
10 L X ... Y... RL F11 L X... IY... M9812 LIX+ ...
Y
S
S
X
Y
10
11
12
X
7.4 Miscellaneous Functions for Contouring Behavior
81HEIDENHAIN TNC 310
Page 93
7.5Miscellaneous Function for Rotary
Axes
Reducing display of a rotary axis to a value less than
360°: M94
Standard behavior
The TNC moves the tool from the current angular value to the
programmed angular value.
Example:
Current angular value:538°
Programmed angular value:180°
Actual path of traverse:–358°
Behavior with M94
At the start of block, the TNC first reduces the current angular value
to a value less than 360° and then moves the tool to the
programmed value. If several rotary axes are active, M94 will
reduce the display of all rotary axes.
Example NC blocks
To reduce display of all active rotary axes:
L M94
To reduce display of all active rotary axes and then move the tool in
the C axis to the programmed value:
7.5 Miscellaneous Function for Rotary Axes
L C+180 FMAX M94
Effect
M94 is effective only in the block in which M94 is programmed.
M94 becomes effective at the start of block.
82
7 Programming: Miscellaneous Functions
Page 94
Programming:
Cycles
8
Page 95
8.1General Overview of Cycles
Group of CyclesSoft Key
Frequently recurring machining cycles that comprise several
working steps are stored in the TNC memory as standard cycles.
Coordinate transformations and other special cycles are also
provided as standard cycles. The table at right shows the various
cycle groups.
Fixed cycles with number starting with 200 use Q parameters as
transfer parametersParameters with specific functions that are
required in several cycles always have the same number: For
example, Q200 is always assigned the setup clearance, Q202 the
plunging depth, etc.
Defining a cycle
ú The soft-key row shows the available groups of
cycles
ú Press the soft key for the desired group of cycles,
for example DRILLING for the drilling cycles
8.1 General information on Cycles
ú Select a cycle, e.g. DRILLING The TNC initiates the
programming dialog and asks all required input
values. At the same time a graphic of the input
parameters is displayed in the right screen
window. The parameter that is asked for in the
dialog prompt is highlighted. Select the screen
layout PROGRAM + HELP GRAPHIC.
ú Enter all parameters asked by the TNC and
conclude each entry with the ENT key
ú The TNC terminates the dialog when all required
data have been entered
Cycles for pecking, reaming, boring
and tapping
Cycles for milling pockets, studs
and slots
Coordinate transformation cycles
which enable datum shift, rotation,
mirror image, enlarging and reducing
for various contours
Cycles for producing hole patterns,
such as circular or linear patterns
Cycles for face milling of flat or
twisted surfaces
Special cycles such as dwell time,
program call and oriented spindle stop