100% found this document useful (1 vote)
1K views

TNC 2500 Iso

1. The document provides an overview of the HEIDENHAIN TNC 2500B contouring control, including its conversational programming features and graphic simulation capabilities. 2. It describes the machine operating modes like manual operation and 3D touch probe datum setting, as well as the programming modes for creating and editing part programs in ISO format. 3. The document outlines the contents of the user manual, including chapters on machine operating modes, programming modes, programming examples, error messages, and specifications for the buffer batteries that protect stored data.

Uploaded by

billyb53
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
100% found this document useful (1 vote)
1K views

TNC 2500 Iso

1. The document provides an overview of the HEIDENHAIN TNC 2500B contouring control, including its conversational programming features and graphic simulation capabilities. 2. It describes the machine operating modes like manual operation and 3D touch probe datum setting, as well as the programming modes for creating and editing part programs in ISO format. 3. The document outlines the contents of the user manual, including chapters on machine operating modes, programming modes, programming examples, error messages, and specifications for the buffer batteries that protect stored data.

Uploaded by

billyb53
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 204

. HEIDENHAIN e !!!

A
User Manual IS0 Programming

TNC 2500B Contouring Control

Screen displays

PROGRflM

RUN/FULL

SEQUENCE

Operating mode Error messages/dialog Preceding block Current block Next block Block after next

line

17410 G71 m N10 C99 11 L+0 R+2 m N20 Tl f17 S1000 4~ N25 t00 540 f90 X+10 Y+10 N30 G54 X+100 Y+20 4~ N40 528 X Af NSQ I+100 J+0 # N60 G73 G90 H+315 t ---------------------------ACTL. cc Tl
L t&N-

M03

w--w 10,000 1,000


Status display

2 x + Y + 2

98,008 1,560

YN

R + t

0,000 20,000 s 1000

ROT SCL F

45,000 0,800000 M3/9

Status drsplay: ACTL.: x Y z etc. *: N: S: ROT: SCL: cc: T...: z: s: F: M: Type of position display, switchable with MOD (further displays: NOML, DIST., LAG - see index General Positron coordinates 1 Control in operation display Axis is locked display Datum shift, shown as an index on the shrfted axis. Mirror image, shown as an Index on the mirrored axis Basic rotation of the coordrnate system Scaling Circle center or pole Called tool Spindle axis Spindle speed Feed rate Spindle status (M03,

Information)

M04.

M05, M13, M14)

Guideline for procedure from preliminary operations to workpiece machining


Sequence Action Operating mode Cross reference I Workpiece drawing I2 Set datum for workpiece machining Workpiece coordinates Al5 I Page I

I 3l
I
4 5 6

Determine

speeds and feed rates

Spindle speed, feed rate diagrams lI Machine manual Switch on operating

A20

/ Switch

on machine

Traverse reference points (homing the machine) Clamp workpiece

Ml

Clamping

instructions

Workpiece setup with the 3D Touch Probe or

7b Align workpiece, insert zero tool, mark workpiece and set datum Enter program via keyboard or from external Manual operation Manual Machine handbook: Tool change Back fold-out page, program example; Programming and edrtrng Programming, Test run run Programming, Graphic simulation Ml3

storage Programming and editing

PI PI24 ! I

Test program (without axis movements)

11

Test run without tool in single block mode Program run, Single block

12

Optimize

program

if necessary Programming and editino

Programming editing

and

13

Insert tool and machine workpiece automatic program run Program run, Full sequence

Operating Panel TNC 2500B with snap-on keypad


Machine ml 0 @ Operating Manual Electronic Positioning Program Program Modes operation handwheel with manual data input Programming Q Q 0 El Q 0 Programming Ia Modes Programming and editing srmulation D in IS0 Format Block number G code Feed rate/Dwell Miscellaneous Spindle time with G04/Scaling function factor

El III 3 Dl

run, Single block run, Full sequence

speed in rpm definition

Parameter

13 mIDI 0 . 61 a program

Polar coordinate angle/ Angle of rotatron in cycle G73 X, Y, Z coordinates of a circle center

Test run with graphic

Set label number with G981 Jump to label number/ Tool length wrth G99 Polar coordrnate radius/ Rounding-off radius with G25, G26, G27l Chamfer with G24/ Circle radius with G02, G03. GO5 Tool radius with G99/ Tool definition Tool call with G99/

Program mil HI IB fa

Management Naming/selectrng Clear program Programmable External program Supplementary program call

input and output operating modes Entering and Editing Values

Axis keys Graphics 11 Em I EE! Graphic operating modes Number Decimal keys

point, sign change

Define blank form, reset blank form Magnify detail simulation QM El

Key for polar coordinates Key for incremental drmensions of a number,

q
Override @ ns%

Start graphic

Enter parameter instead Define parameter

Transfer actual positron to memory m m ?~~~rt?e~certain block or cycle No entry, Enter data, Terminate block entry Clear entry Delete block

q
Feed rate override FO/oSpindfe speed override MrnB

Screen

control brightness

Contents

General

Information

Introduction MOD Functions Coordrnates Linear and Angle Cutting Data

Encoders

Al A8 Al5 Al8 A20

Machine

Operating

Modes

Swatch-On Manual Operation 3D Touch Probe Datum Setting Electronic Handwheel, Incremental Jog Positronrng with Manual Data Input Program Run

Ml M2 M3 Ml3 Ml5 Ml7 Ml9

Programming

Modes

Programming in IS0 Program Selection Tool Defrnrtron Cutter Path Compensation Tools Feed Rate F/Spindle Speed S/Miscellaneous Functions M Programmable Stop/Dwell Time Path Movements Linear Movement, Cartesian Circular Movement, Cartesian Polar Coordinates Contour Approach and Departure Predetermined M Functions Program Jumps Program Calls Standard Cycles Coordtnate Transformations Other Cycles Parametric Programming Programmed Probing Teach-In Test Run Graphic Simulatron External Data Transfer Address Letters in IS0

PI P6 PI0 PI5 PI8 P20 P21 P22 P25 P30 P41 P48 P51 P55 P64 P65 P93 PI 02 PI05 PI 20 PI 23 PI 25 PI 26 PI 29 PI 37

Manufacturers Certificate This device is noise-suppressed In accordance with the Federal German regulations 1046/1984. The Federal German postal authorities have been notified of the market Introduction of this unrt and have been granted permission to test the series for compliance with the regulations. If the user Incorporates the device into a larger system then the entire system must comply wrth said regulations.

General

Information

(A)

Introduction Brief description Machine operating modes 3D Touch Probe Systems FE 401 Floppy Disk Unit HR 130/HR 330 Electronic of TNC 25008 modes

1 3
4

Programming Accessories:

5 6 7 7

Handwheels

MOD

Functions Position displays

8 9 10 11

Traverse range limits User parameters

Coordinates The coordinate Datum Absolute and Incremental coordinates system 15 16 17

Linear

and Angle

Encoders

18

Cutting

Data Feed rate diagram Sprndle speed diagram for tapping 20 21 22

Feed rate diagram

HEIDENHAIN TNC 2500B

General

Information

Introduction

Description

The TNC 2500B from HEIDENHAIN is a shop-floor programmable contouring control wtth up to 4 axes for milling and boring machines as well as for machining centers. It is conceived for the man at the machine, featuring conversational programming and excellent graphic simulation of workpiece machrn ing. Its background programming feature permits a new program to be created (or a program located in memory to be edited) while another program is being executed. Besides fixed cycles, coordinate transformations and parametric programming, the control also includes functions for 3D touch probes. Programs can be output to peripheral devices and read into the control via the RS-232-C allowing programs to be created and stored externally. data interface,

Conversational IS0 programming

or

In addition to programs written in conversational the snap-on keyboard or via the data Interface. reside in memory at the same time.

format, IS0 programs can also be entered, either via Both interactive format and IS0 format programs can

Compatibility

This control can execute programs from other HEIDENHAIN functions described in this manual.

controls,

provided

they contain

only the

Structure of manual

This manual addresses the skilled machine controlled boring and mrllrng. TNC beginners already worked

operator

and requires

appropriate

knowledge

of non-NC-

are advised to work through this manual and the examples with a HEIDENHAIN TNC, you can skip familiar topics.

systematically.

If you have

This manual deals with programming in IS0 format. HEIDENHAIN described in detail in a separate user manual for the TNC 2500B. The sequence of chapters in this operating manual IS according functions, as well as according to the logical working order: l Machine operating modes: Switch-on - setup - set display value - machine workpiece l Programming modes: Programming and edittng - test run

conversational

programming

is

to control

operating

modes

and key

Symbols for keys

The followrng

symbols

are used in this manual:

Empty square: cl Square with symbol, e g. Ckcle with symbol, e.g. The pages of this manual are distinctly

keys for numerrcal

input on the TNC operating

panel

other keys on the TNC operatrng

panel

buttons

on the machine

operating

panel

marked

with the relevant key symbols

Typeface for screen displays

Program

blocks and TNC screen dialogs

are printed

in this SPECIAL TYPE.

HEIDENHAIN TNC 2500B

General

Information

Page Al

Introduction

Program Examples

The example programs in this manual are based on a uniform blank size and can be displayed on the screen by adding the following blank definition (see index Programming Modes, Program Selection): G30 G17 X+0 G31 G90 X+100 Y+O Z-40 Y+lOO Z+O

The examples can be executed on machtne tools with tool axis Z and machining plane XY If your machine uses a different axis as the tool axis, this axis must be programmed instead of Z and likewise the correspondrng axes for the machining plane. Beware of collisions when executing the example programs!

Buffer batteries in the control

Buffer batteries interruptron. When appears,

protect

the stored programs

and machine

parameters

against

loss due to power

the message BUFFER BATIERY the batteries. once a year. you must change should Battery type: 3 AA-size batteries, leak-proof IEC designation LR6

EXCHANGE

The batteries

be replaced

Changing the battery

Battery replacement

is described

in the manual

of the machine

manufacturer

Error messages
The TNC checks input data and status of the contra of the control: and machine. Remedy: Clear the value with the CE key, enter and confirm the correct value. Cause and reaction Input range exceeded

The permitted range of values is exceeded: e.g. feed rate too high. The value is not accepted and an error message appears. E.g. GO0 X+50 X+100

Incompatible/ contradictory inputs

During TEST RUN or during program execution, the TNC stops with an error message before executing the corresponding block and displays the block number in which an error was found. Malfunctions that affect operating blinking error messages. Note down the error message! safety cause

Change to the PROGRAMMING AND EDITING operating mode. The error can normally be found either in the block with the displayed block number or in a previously executed block. Then: correct the error. Operating mode Full sequence and restart. Switch off the machine or the control.

Malfunction of the machine or control

Remove the fault if possrble. Attempt to restart If the program then runs correctly, was only a spurious malfunction. the problem

If the same error message comes up again, contact the customer service of the machine manufacturer.

Page A2

General

Information

HEIDENHAIN TNC 2500B

TNC 2500B
Brief description
Control type Contouring control for 4 axes Traversing possibilities Background programming Graphics Program Input input Straight lines In 3 axes Circles in 2 axes Helix Programming Graphic and program execution simultaneously run operating to IS0 modes

simulation format

in the Program or according

In HEIDENHAIN

resolution memory

Max. 0.001 mm or 0.0001 For 32 programs, battery

inch or O.OOl buffered: 4000 program blocks

Program Tools

Up to 254 tool definitions In a program Up to 99 tools in the central tool file

Programmable
Contour

functions
tangen

Straight line, chamfer Circle (input. center and end point of the arc or radius and end point of the arc), circle connected tially to the contour (input: arc end point) Corner rounding (input: radius) Tangential approach and departure from a contour jumps Subprograms, program section repeats, call of other programs

Program

Fixed cycles

Drilling cycles for pecking, tapping Milling cycles for rectangular pocket, circular pocket, slot Subcontour List cycles for milling pockets and islands with irregular Move and rotate the coordinate For 3-D touch trigger Mathematical I& / I&+); range Max. f 30000 probe system, mirror image, scaling

contours

Coordinate transformations Probing functions

Parameter programming Traversing Cutting

functions (= / + / - / x / t / sin / cos / angle a from axis sections parameter comparison (= / + / > / <) mm or 1180 inches or 1180 rnches/min

data

Traversing speed: max. 30 m/min Spindle speed: max. 99999 rpm

Hardware
Component Block processing Control loop cycle time Data interface Ambient temperature units time 6 ms RS232-C/V.24 Data transfer Logic unrt, control 1500 blocks/min panel and monochrome (40 ms) screen

speed.

max. 19200

baud

Operation: O C to 45 C (32O F to 113 F) Storage, -30 C to 70 C (-22 F to 158O F)

HEIDENHAIN TNC 2500B

General

Information

Page A3

Machine modes
Manual operation

operating

The axes can be moved via the external axis drrection buttons. Workpiece datum can be set as desired.

MRNURL

OPERRTION

RCTL.

x Y

+ +

49,258

23,254 15,321

Iii0

MS/9

Electronic Handwheel

The axes can be moved either via an electronic handwheel or via the external axis direction buttons. It IS also possible to position by defined jog Increments.

INTERPOLRTION

FRCTOR:

RCTL.

+ +

49,258

Y 0

23,254 15,321

Id0

MS/9

Positioning with manual data input WW

The axes are positioned according to the data keyed In. These data are not stored.

POSITIONING N10 RCTL. G07 X+20 #a

MRNURL F200 + + m

DRTR

INPUT

Y z A

+ +

9,375 8,200 8,985 0,180

MS/9

Program

run

A part program In the memory executed by the machine.

of the control

is
PROGRRN X7410 Nl0 N20 N25 N30 N40 NSO N60 G71 G99 RUN/FULL #c SECIUENCE

Full sequence

After starting vra the machine START button, the program IS automatically executed until the end or a STOP is reached. Each block is started separately START button. with the machrne

Tl L+0 R+2 stf Tl G17 Sl000 #c EBB G40 G90 X+10 Y+lQ GS4 X+100 Y+20 #f
628 X S Jt0

M03

Single fia 1% i

block

It100 * G73 G90 Ht31S _________________---____________


El 2 t t 9,375 8,985

#c
Y R t t 8,200 0,180

RCTL.

MS/9

Page A4

General

Information

HEIDENHAIN TNC 25008

Programming

modes

Programming and editing

Part programs can be entered, looked over and altered in the Programming and editing operating mode. In addrtion, programs can be read in and output via the RS-232-C data interface.

PROGRAMMING

RNO

EDITING * Y+10 M03 *

N10 G99 Tl L+0 N20 Tl G17 Sl000 s N2.5 G00 G40 G90 X+10 N30 654 X+100 Y+20 * N40 G28 X 46 N50 It100 Jt0 #c N60 673 G90 Ht315 so __-----------------_____________ RCTL. E( 2 t + 9,375 8,985 Y R

t t

8,200 0,180

MS/9

Test run

In the Test run operating mode, machining programs are analyzed for logrcal programming errors, e.g. exceeding the traversing range of the machine, redundant programming of axes, certain geometrical incompatibilities etc.

TEST

RUN

Nl0 G99 Tl L+0 Rt2 * N20 Tl G17 Sl000 * N2S EBB G40 G90 X+10 Yt10 N30 G54 X+100 Yt20 +B N40 G28 X # N50 It100 Jt0 * N60 G73 G90 Ht315 * ____----------__________________ FICTL. El 2 t t 9,375 8,985 Y R t t

M03

8,200 0,180

MS/9

Test graphics
In the Program run operating modes full sequence and single block, you can graphically simulate machining programs via the GRAPHICS keys. Display plan l view l 3-D
l

GRAPHICS

modes: view with depth in three planes view

indication

External data transfer

In the Programming and editing mode, programs can be read-in from an external storage medium and read-out to an external unit. Data transfer takes place via the RS-232-C data interface. In the Program run, single block and Program run, full sequence modes of operation it is possible to read-in programs whose size exceeds the controls memory block by block for simultaneous execution.

1
I Page A5

HEIDENHAIN TNC 2500B

General

Information

Accessories 3D Touch Probe Systems


The TNC software incorporates measuring cycles for the application of a HEIDENHAIN 3D Touch Probe in the Manual, Handwheel and Program run operating modes.

Manual

use

The following the Manual


l l

measurements can be performed in and Handwheel operating modes:

posttron line 0 angle l corner point 0 circle radius and circle center The probing functions allow compensation of workpiece misalignment and automatic setting of the position displays to help you setup work pieces more easily, quickly and accurately. The probing functions can also be used for measurements on the workpiece.

Program

run

You can program positron measurements in the Programming and editing operating mode. This feature can be used with Q parameter programming to execute measurements before, during and after machining a piece (see index Programming and Editing, Programmable probing function and Parameter programming).

TS 120

HEIDENHAIN offers touch probes in various versions. There are different clamprng shafts to affix the probe head in the spindle like a tool. The stylus is replaceable. Standard versions are: TS 120 Touch Probe System 120 with cable connection and interface incorporated into probe.

electronics,

TS 511

Touch Probe System 511 with infrared transmission, separate interface electronrcs and transmitter/receiver unit. This probe head has a transmitter and receiver window (for the triggering signal) on one side and another transmitter window offset by 180. The side with the transmitter and receiver window must be pointed towards the transmitter/receiver unit during measurement. TS 511

Certain preparatory measures touch probe system.

are required

by the machine

tool manufacturer

for the connection

of a

Page A6

General

Information

HEIDENHAIN TNC 25008

Accessories FE 401 Floppy Disk Unit HR 13O/HR 330 Electronic Handwheels


FE 401 Floppy Disk Unit Part programs which do not have to reside permanently in the control memory can be stored with the FE 401 Floppy Disk Unit The storage medium is a normal 3 l/2 Inch diskette, capable of storing up to 256 programs and a total of approximately 25000 program blocks Programs can be transferred diskette or vice-versa. from the TNC to

Programs written at off-line programming stations can also be stored on diskette with the FE 401 and read into the control as needed. In the case of extremely long programs which exceed the storage capacity of the TNC, the FE 401 can be used to transfer a program blockwrse into the control while simultaneously executing it. A second drskette drive is provided for backing up stored programs and for copying purposes

Specifications Data storage Storage medium

FE 401 Floppy Disk Unit with two drives 3 l/2 inch diskette, I approx. double-sided, 135 TPI

capacity

790 KB (25000

blocks); max. 256 programs

Data interface Transfer rate

I Two RS-232-C

data interfaces baud

TNC Interface: 2400/9600/19 200/38400 baud I PRT interface: 110/150/300/600/1200/2400/4800/9600/19200/38400

Handwheel

The control can be equipped with an electronrc handwheel for better machine setup. Two versions of the electronic handwheel are available: Designed to be incorporated into the machine control unit. The axis of control IS selected at the machine control panel. Includes keys for axis selection (A), axis drrection (B). rapid traverse (C). emergency stop (D). magnetic holding pads (E) and enabling switch (F).

HR 130

HR 330

HR 130

HR 330

HEIDENHAIN TNC 2500B

General

Information

Page A7

MOD Functions

In addition to the main operating modes, the TNC has supplementary MOD functions. These permit additional displays and settings.

operating

modes or so-called

Selecting

Initiate the dialog I VACANT MEMORY 160044 Select MOD functions erther vra arrow keys or via the MOD key (only paging forward possible).

Terminating

Transfer numerical

inputs with the ENT key before terminating

the MOD functions

Vacant

memory

The number MEMORY.

of free characters

in the program

memory

is displayed

with the MOD function

VACANT

Programming and editing

You can use this MOD functron to switch the control between conversational and IS0 format (ISO). Switchover is performed with the ENT key.

format

(HEIDENHAIN)

Baud

rate

The transfer

rate for the data interface

is specified

with BAUD

RATE

RS-232-C interface

The data Interfaces ENT key:


l l l

can be switched

via KS-232-C

interface

to the following

operating

modes

with the

ME operation FE operation EXT operation:

operation

with other external

devices.

NC software number

The software

number

of the TNC control

is displayed

wrth this MOD function

PLC software number

The software

number

of the integrated

PLC is displayed

with this MOD function

User parameters

Up to 16 machine parameters can be accessed by the machine operator with this MOD function. These user parameters are defined by the machine manufacturer - he may be contacted for more Information.

Code

number

A code number can be entered with this MOD function: l 86357: cancel erase and edit protection
l

123: select the user parameters. These user parameters are accessible

on all controls

(see User parameters)

Page A8

General

Information

HEIDENHAIN TNC 2500B

MOD Functions Position displays


Change mm/inch The MOD function Change mm/inch determines whether the control displays positions in the metric system (mm) or in the Inch system. You switch between the mm and Inch systems via the ENT key. After pressing this key the control switches to the other system. You can recognize whether the control is displaying in mm or inches by the number of digits behind the decimal point: Xl 5.789 mm display X 0.6216 inch display.
I 0

X 15.789 1I
0 10

"'1""1'Irn
20

30

0.6216
0.5

--J--YlCtl
1

Position displays

The following

position

displays

can be selected: NOML LAG ACTL. DIST. REF

0 nominal position of the control 0 difference nominal/actual positron (lag distance) 0 actual position 6 remaining distance to programmed position 0 position based on the scale datum

A = last programmed position (starting position) B = new (programmed) target position, which is presently targeted W = Workpiece datum for the part program M = scale datum (machine-based) Switchover is with the ENT key

Position display large/small

The character height of the position display can be changed In the operating modes Program run/single block or Program run/full sequence. The position display shows 11 program blocks with small characters, two with large characters. Switchover is with the ENT key.

HEIDENHAIN TNC 2500B

General

Information

Page A9

MOD Functions Traverswnge limits


Limits The maximum drsplacements are preset by fixed software limrts. The MOD function Limits enables you to specify additional software limits for a safety range within the limits set by the fixed software limits. Thus you can, for example, protect against collision when clamping a dividing attachment. The displacements are limited on each axis successively In both directions based on the scale datum (reference marks). The position display must be switched to REF before specifying the limit positions of the positron display. To work without safety limits, enter the maximum values +30000.000 or -30000.000 for the corresponding axes.

-0

8 Effectiveness

= scale datum

The entered limits do not account for tool compensations. Like the software limit switches, they are only effective after you traverse the reference points. They are reactivated with the last entered values after a power interruption.

Determine values

To determine the input values, switch the position display to REF.

Traverse to the end positions of the axis/axes which is/are to be limited. Note the appropriate REF displays (with signs). Continue pressrng unttl LIMIT appears Enter value, or select the next limit

Enter

values

Select Enter the limit(s)

terminate
L

the input

,Page A 10 General Information HEIDENHAIN TNC 2500B 4 4

User Parameters General Information


Machine parameters The TNC contouring controls are rndivrdualized and adapted to the machine via machine parameters (MP). These parameters consist of important data which determine the behavior and performance of the machine.

Parameters accessible for the user

Certain machine parameters which determine functions gramming and displays are accessible for the user.

dealing

only with operating

procedures,

pro-

Examples

l l l

Scaling factor only effective on X, Y or on X, Y, Z. Adapting the data interface to different external devices. Drsplay possibilities of the screen.

Accessibility

The user can access these machine


l

parameters

in two ways. 123). parameters

Access by entering the code number 123. This access is possrble on every control (see code number

Access to addttronal parameters via the MOD function User parameters. You can only access via the MOD function if the manufacturer has made the machine accessible for this purpose. manufacturer can inform you about the sequence, meaning,

The machine parameters.

texts etc. of any user

Only these machine parameters may be changed change any non-accessible machine parameters.

by the user. In no case should

the user

Selection

Select the user parameter. Continue pressing until the desired USER PARAMETER or dialog appears.

Enter numbers.

Terminate

or select further with and

user parameters then terminate.

HEIDENHAIN TNC 2500B

General

Information

Page A 11

User Parameters

After entering the code number 123 vra MOD, the following machine parameters and the parameters the data interface (see index Programmrng Modes, External data transfer) can be selected and changed. Measuring with the 3D touch Function probe Probe system selectron Probe system: feed rate for probing Probe system: measuring distance Parameter no. 6010 6120 6130 6140 Input 0 + Cable transmrssion 1 + Infrared transmrssron 80 to 3000 [mm/mm] [mm] [mm] Input values

for

0 to 30000.000 0 to 30000.000

Probe system: set-up clearance over measuring point for automatic measurement Probe system: probing Display and programming Function Programming station rapid traverse for

6150

80 to 29998

[mm/min]

Parameter no. 7210

Input 0 * Control 1 + Programming 2 + Programming 0 to 255 0 --f First dialog language 1 + Second dialog language 0 + Inhibited 1 + Uninhibited 0 + No central tool file 1 to 99 = Central tool file Input value = Number of tools 0 + No display 1 + Display (English)

Input values station. station: PLC active PLC inactive

Block number

increment language

7220 7230 7240 7260

Switchrng of dialog German/English

Inhibit PGM Input for PGM no. = user cycle no Central tool file

Display of the current feed rate before start in the manual operating modes (same feed rate in all axes, i.e smallest programmable feed rate) Decimal character

7270

7280 7290 7300

0 + Decimal 1 --f Decimal O-l urn I-5um

comma point

Display increment Clearing the status display and the Q parameters with M02, M30 and end of program Graphics (display mode) type

0 + Status display is not cleared 1 + Status display is cleared

7310 Bit 0 + 0 + Preferred + 1 + Preferred German American

Switch over projection display In 3 planes

Rotate the coordinate system in the machining plane by 90

+ 0 + No rotation + 2 + Coordinate system rotated by +90

Page A 12

General

Information

HEIDENHAIN TNC 2500B

User Parameters

Machining program

and run

Function Scaling cycle is effective on 2 axes or 3 axes SL cycles for milling pockets with irregular contour Rough out cycle: direction for pilot milling of contour

Parameter no. 7410 7420 Bit 0

Input 3 + 3 axes 1 + in the machining

Input values plane

t 0 - Pilot mrllrng for pockets for islands t 1 + Pilot milling for pockets for islands

of contour counterclockwise, clockwise of contour clockwise, counterclockwise

Rough out cycle: sequence for rough out and pilot milling

t 0 + First mill a channel around the contour, then rough out the pocket t 2 + First rough out the pocket, then mill a channel around the contour t 0 + Joining compensated contours t 4 + Joining uncompensated contours to- Rough out and pilot millrng are performed continuously over all infeeds Pilot milling and then rough out are performed for every infeed (depending on brt 1) prior to the next infeed

Joining compensated or uncompensated contours

Rough out and pilot milling to pocket depth or for every infeed

t8-

Overlap factor for pocket milling Output of M functions stop at MO6

7430 7440 Bit 0

3.1 to 1.414

Programmed

t 0 + Programmed stop at MO6 t 1 - No programmed stop at MO6 t 0 + No cycle call, normal output of M89 at start of block + 2 + Modal cycle call at end of block 0 to 179.999 0 + 0 to 359.999 1 + f 30000.000

Output of M89, modal cvcle call

Constant path speed at corners . Display mode for rotary axis

7460 7470

HEIDENHAIN TNC 2500B

General

Information

Page A 13

User Parameters

Hardware

Function Feed rate and spindle override

Parameter no. 7620 Bit 0

Input

Input values

Feed rate override, if rapid traverse key is pressed in operating mode Program run Feed rate override in 2% increments or 1 % increments Feed rate override, if rapid traverse key and external direction buttons are pressed Handwheel 7640

+ 0 + Override + 1 + Override

inactive active

+ 0 + 2% increments + 2 + 1 % increments

+ 0 + Override inactive + 4 + Override active 0 = Machine with electronic handwheel 1 = Machine without electronic handwheel

Page A 14

General

Information

HEIDENHAIN TNC 25008

Coordinates The coordinate

system

In a part program, the nominal positions of the tool (or of the tool cutting edge) are defined in relation to the workpiece; encoders on the machine axes continuously deliver the signals needed by the control for determining the current actual position. A reference system is always required be workpiece-based. for determining position. In the present case, such a system must

Cartesian coordinates

The reference system normally used is the rectangular or Cartesian* coordinate system (coordinates are those values which define a unique point In a reference system). The system consists of three coordinate axes, perpendicular to each other and lying parallel to the machine axes, which intersect each other at the so-called origin or (absolute) zero point. The coordinate axes represent mathematically ideal straight lines with divisions; the axes are termed X, Y and Z.

Righthand rule

You can easily remember the traversing directions with the right-hand rule: the positive direction of the X axis is assigned to the thumb, that of the Y axis to the index finger, and that of the Z axis to the middle finger. IS0 841 specifies that the 2 axis should be defined according to the direction of the tool spindle, whereby the positive Z direction always points from the workpiece to the tool.

*) after the French mathematician

Rene Descartes,

in Latin Renatus Cartesius

(1596 - 1650).

HEIDENHAIN TNC 2500B

General

Information

Coordinates Datum
Relative tooi movement Part programs are always written with workpiecebased coordinates X, Y, Z. That is, they are written as if the tool moves and the workpiece remains still, Independent of the machine type. If, however, the work support on a given machine actually moves in any axis, then the direction of the coordinate axis and the direction of traverse will be opposite. In such a case the machine as X, Y and Z. axes are designated

Zero point of the coordinate system

For the zero point of the coordinate system, the position on the workpiece which corresponds to the datum of the part drawing is generally chosen - that is, the point to which the part dimensioning is referenced. For reasons of safety, the workpiece datum in the Z axis is almost always positioned at the highest point on the workprece. The datum position indicated in the drawing to the right is valid for all programming examples in this manual. Machining operations in a horizontal plane require freedom of movement mainly in the positive X and Y directions. lnfeeds starting from the upper edge of the workpiece Z = 0 correspond to negative posttion values. machine table

Datum

Setting

The workpiece-based rectangular coordinate system is defined when the coordinates of any datum P are known - that is, when the tool is moved to the datum position and the control sets the corresponding coordrnates (datum setting).

Page A 16

General

Information

HEIDENHAIN TNC 2500B

Coordinates Absolute and incremental


If a given point on the workpiece is referenced to the datum, then one speaks of absolute coordinates or absolute drmensrons. It is also possible to indicate a position which is referenced to another known workpiece position: in this case one speaks of incremental coordinates or incremental dimensions.

coordinates

Absolute dimensions

The machine is to be moved to a certain or to certarn nominal coordinates. Example: GO0 G90 X+30 Y+30

position

Dimensions In this manual are given as absolute Cartesian dimensions unless otherwise indrcated.

Incremental (chain) dimensions

Incremental dimensions in a part program always refer to the immediately preceding nominal position. Incremental dimensions are indicated bv the letter I. The machine is to be moved by a certain drstance: it moves from the previous position along a distance given by the incremental nominal coordinate values. Example: GO0 G91 X+10 Y+lO

Mixing absolute and incremental dimensions

It is possrble to mix absolute and incremental coordinates within the same program block. Example: GO0 G91 X+10 G90 Y+30

Polar coordinates

Posrtrons on the workpiece can also be programmed by entering the radius and the drrectron angle referenced to a pole (see index Programming Modes, Polar coordinates). I, J = Pole R = Polar radius (distance from pole) H = Polar angle (direction angle)

Y 1
J Xc/ Pole 5c I

HEIDENHAIN TNC 2500B

General

Information

Page A 17

Linear and Angle

Encpders

Linear and angle encoders in machine tools

Each machine axis requires a measuring system to provide the control with informatron position: linear encoders for linear axes, angle encoders for rotary axes.

on the actual

Grating

period

Light

source

Condenser

lens

Principle

of photoelectric

scanning

of fine gratings

LS IOIC, LS 107c

RON 706C, ROD 250C position measurement is generally based on either element (the electrical signals are

With linear
l l

axes,

a photoelectrically scanned steel or glass scale, or the high-precision ballscrew, which also functions as the moving then produced by a rotary encoder coupled to the ballscrew).

With rotary axes, a graduated disk permanently attached to the axis is photoelectrically TNC forms the position value by counting the generated impulses.

scanned.

The

Page A 18

General

Information

HEIDENHAIN TNC 2500B

Linear and Angle

Encoders

Linear and angle encoders Datum

are machine-based:

The datum for determination of the nominal and actual position must correspond to the workpiece datum, or be brought into correspondence by setting the correct position value (= the position value determined by the workprece datum) in any axis position. This procedure is called datum setting (or datum presetting).

Reference

marks

After the control has been switched off or after a power interruption, again. To simplify this task, the encoders possess reference marks, datum points.

it is necessary to set the datum which in a sense also represent

The relationship between axis positions and position values which were established by the last setting of the workpiece datum (datum setting), are automatically retrieved by traversing over the reference marks after switch-on. This also re-establishes the machine-based references such as the software limit switch or tool change position. In the case of linear encoders with distance-coded reference marks, the machine axes need only be traversed by a maximum of 20 mm. For angle encoders with distance-coded reference marks, a rotation of just 20 is required. Linear encoders with only one reference mark have an RM label which indicates the position of the reference mark, while angle encoders with one reference mark indicate the position with a notch on the shaft.

Schematic

of scale with distance-coded

reference

marks

HEIDENHAIN TNC 2500B

General

Information

Page A 19

Cutting Data Feed rate diagram


The feed rate F must be defined In [mm/min] in the program. Usually, the number of teeth n on the tool, the permitted depth of cut d per tooth (in mm) and the previously determined spindle speed S (in rpm) are given. The diagram below helps you determine the feed rate F. Determine Given: Selected: Find: Depth of cut the required n d S F = = = = feed rate F in [mm/min] Example 6 0.1 [mm] 500 [rpm]

number of teeth permitted depth of cut per tooth spindle speed feed rate

d [mm1

Spindle

speed

S [wml
Calculation Horizontal line through depth of cut 0.1 mm Vertical line through spindle soeed 500 m/min At the point of intersection, read off the feed rate F = 50 mm/min; this is multiplred by the number of teeth n = 6: F = 300 mm/min Formula d= F -orF=d.S.n S.n HEIDENHAIN TNC 2500B Prerequisites: The feed rate determination assumes that l the tool axis infeed = l/2 tool radius or l the lateral infeed = l/4 tool radius and the downfeed is selected equal to the tool radius

Page A 20

General

Information

Cutting Data Spindle speed diagram


The spindle speed S must be entered in [rpm] in the part program. Usually the tool radius R is given In [mm] and the cutting speed V rn [m/mm]. The dragram below helps you determine the spindle speed S. Determining the required spindle speed S in [rpm] Example 16 [mm] 50 [m/min]

Given: k = tool radius V = cutting speed Find: S = spindle speed Tool radius

R [mm1

Cutting speed V [m/min]

Calculation

Horizontal line through the tool radius R = 16 mm Vertical line through the cutting speed V = 50 m/min Read off the value at the point of intersection: S=V approx. 500 rpm (calculated: 497 rpm)

V=2R.n.S;

2R r-r

HEIDENHAIN TNC 2500B

General

Information

Page A 21

Cutting Data Feed rate diagram

for tapping

When tapping a thread, the pitch P is given [mm/rev]. The spindle speed S and the feed rate F must be defined in the program. First, the spindle speed is determined in the appropriate diagram, then the feed rate IS found in the diagram below. Determine Given : Selected: Find : Pitch the required feed rate F in [mm/min] Example 1 [mm/rev] 100 [rpm]

p = pitch [mm/rev] S = spindle speed [rpm] F = feed rate [mm/min]

p [mm/rev1

Spindle

speed

S [wl

Calculation

Horizontal line through pitch p = 1.0 mm/rev Vertical line through spindle speed S = 100 rpm Read off feed rate at point of intersection: F = 100 mm/min to tap this thread.

Formula

p=EorF=p.S

Page A 22

General

Information

HEIDENHAIN TNC 25008

Machine

Operating

Modes

(M)

Switch-On Traversing the reference points 1

Manual

Operation Traversing Spindle with the axis direction speed S/Miscellaneous buttons functions M 2 2

3D Touch or

Probe Datum setting with probe system 3 4 5 6 7 9 11 13

Calibrating Calibrating Reference

effective length effective radius surface, Position measurement measurement corner coordinates the circle radius

Basic rotation, Angular

Corner = datum/Determrnrng

Circle center = datum/Determining Datum setting probe system Electronic Incremental without

Handwheel/ Jog

15

Positioning Data Input

with Manual (MDI)

Tool call/Spindle Positionrng

axis/Spindle

speed

17 18

to entered

coordinates

Program

Run Single block, Full sequence Interrupting the program run 19 20 21 22 23

Checking/changing Background Blockwise

Q parameters

programming transfer (drip feed)

HEIDENHAIN TNC 25009

Machine

Operating

Modes

Switch-On Traversing the reference


Switch-On

points

0
@:, MEMORY TEST

Switch

power

on.

The TNC tests the internal control electronics. The display is automatically cleared Delete the message. The control then tests the EMERGENCY STOP circuit

POWER

INTERRUPTED

RELAY

EXT.

DC VOLTAGE

MISSING

Switch

on the control

DC voltage.

MANUAL TRAVERSE

OPERATION REFERENCE z AXIS x AXIS Y AXIS 4th AXIS POINTS

Traverse the axes over the reference in the displayed sequence. Start each axis separately or move the axes with the external direction keys.

points

The sequence of the axes is determined the machine manufacturer.

by

MANUAL

OPERATION

Manual operation matically.

is now selected

auto-

Encoders

The required traversing distance for linear and angle encoders with distance-coded reference marks is max. 10 mm or 20 mm/IO0 or 20. If the encoder has only one reference mark, it must be traversed.

HEIDENHAIN TNC 2500B

Machine

Operating

Modes

Page Ml

Manual Operation Traversing with the axis direction buttons/ Spindle speed S/Miscellaneous functions M
The machine axes can be moved and the datum set in the Manual operating mode.

Jog mode

The machine axis moves as long as the corresponding external axis direction button is held down. Several axes can be driven simultaneously In the jog mode.

anon0 0000
00000 0000 0D00

Continuous operation

If the machine START button is pressed simultaneously with an axis direction button, the selected machine axis continues to move after the two buttons are released. Movement is stopped with the external STOP button.

A
Cl Iii
parameters

q uooc3 cl0000 oona[l oclooo cl

q nnn OIJOU

q OOOO

I=o/o s-0,
Feed rate override The traverse speed (feed rate) is preset by machine override (F O/o) of the control. and can be varied with the feed rate

Note

If a block number increment between 1 and 255 is selected (see index M General Information, user parameter MP 7220). the block number can be omitted since it is generated automatically pressing a function key.

by

Spindle speed

Enter the block number. Enter spindle speed S (e.g. 1000)

Example

NlO S 1000 *

Spindle override

On machines with continuously override (S o/o).

variable spindle

drives, the speed can also be varied with the spindle

Miscellaneous function

Enter the block number. Enter the M function (e.g. M03)

Example

N10 MO3 *

Combination

It is also possible

to enter both spindle

speed and miscellaneous

function

M in one block.

Example

NlO SlOOO MO3 *

Page M2

Machine

Operating

Modes

HEIDENHAIN TNC 25008

3D Touch Probe Datum setting with probe system


Using the touch probe for setup For workpiece setup the 3D touch probe systems from HEIDENHAIN in association with TNC software offer considerable benefits. One is that the workpiece does not have to be aligned precisely to the machine axes: The TNC will determine and compensate misalignment automatically (basic rotation). Another important benefit of the 3D touch probe systems is significantly faster and more accurate datum setting.

TS 511 Probing functions The touch probe functions described below can also be employed in the electronic handwheel operating mode. Pressing the TOUCH PROBE key calls the menu shown here to the right. The probing function is selected with the cursor keys and entered with the ENT key. The effective length of the probe and the effective radius of the probing ball must be calibrated once, before beginning touch probe work. Both dimensions are determined by CALIBRATION routines and stored in the control.

CALIBRATION EFFECTIVE LENGTH CALIBRATION EFFECTIVE RADIUS BASIC ROTATION SURFACE = DATUM CORNER = DATUM CIRCLE CENTER = DATUM

Calibration

Terminating the probing functions Process

The probing functions time with END 0.

can be terminated

at any

The probe head traverses to the side or upper surface of the work. The feed rate during measurement and the maximum measuring distance are set by the machine manufacturer via machine parameters. The touch probe system signals contact with the workpiece to the control. The control stores the coordinates of the contacted points. The probing axis is stopped and retracted to the starting point. Overrun caused by braking does not affect the measured result. @ = pre-positioning with the external axis direction buttons. Fl = feed rate for pre-positioning. F2 = feed rate for probing. FMAX = retraction in rapid traverse.

HEIDENHAIN TNC 2500B

Machine

Operating

Modes

Page M3

3D Touch Probe Calibrating effective length


Work aid: ring gauge For calibration of the effective length, a ring gauge of known height and known Internal radius is clamped to the machine table. A B C D L R AZ = = = = = = = zero tool 3D touch probe ring gauge reference plane (surface) length of the zero tool ball tip radius effective length of probe system

Procedure

The reference to calibration.

plane is set with the zero tool prror

To determine the effective length of the stylus, the probe head touches the reference plane. After contacting the surface, the probe head is retracted in rapid traverse to the starting position. The length L IS stored by the control and automatically compensated during the measurements.

Initiate the dialog Select probing and enter. function

CALIBRATION

EFFECTIVE

LENGTH

TOOL

AXIS

= Z

0 cl
z+ z-

Enter a different

tool axis if required.

Select the Datum. DATUM +5 Enter the datum e.g. +5.0 mm. in the tool axis,

Move the touch probe to the vicinitv of the reference blane Select the direction of probe movement, here Z-. The probe head moves in negative After touching the surface and returning to the starting position, the control automatically switches to the Manual operation or Handwheel operating mode.

Display

The value for effective length can be displayed

by selecting

Calibration

effective length

again

Page M4

Machine

Operating

Modes

HEIDENHAIN TNC 2500B

3D Touch Probe Calibrating effective radius


Procedure

The probe ball is lowered Into the bore of the ring gauge. 4 points on the wall must be touched to determine the effective radius of the stylus ball. The traverse directions are determined by the control, e.g. X-t, X-, Y+, Y- (tool axis = Z). The probe head is retracted in rapid traverse the starting position after every deflection. to

The radius R is stored by the control and automatrcally compensated during the measurements.

Initiate the dialog CALIBRATION EFFECTIVE RADIUS Select probing and enter. function

TOOL

AXIS

= Z

Cl
= 10

Enter another Select Radius

tool axis if required. ring gauge.

RADIUS

RING

GAUGE

Enter the radius of the ring gauge, e.g. 10.0 mm.

x+

x-

Y+

Y-

Traverse approxrmately to the center of the ring gauge. ect the traversing direction of the probe head (only necessary if you prefer a certain sequence or the exclusion of one probing direction). Probe a total of 4 times. After contacting the wall of the ring gauge four times, the control automatically switches to the Manual operation or Handwheel operating modes.

Display

You can display the value for effective radius by selecting

Calibration

effective radius

again.

Error messages

All touch probe systems: TOUCH POINT INACCESSIBLE The stylus was not deflected within the measuring distance (machine parameter). STYLUS ALREADY IN CONTACT The stylus was already deflected at the start.

Touch probe system TS 511: PROBE SYSTEM NOT READY Probe system not set up correctly, or transmission path was interrupted. The transmitter and receiver window (i.e. the side with two windows) must be pointed towards the transmitter/receiver unit.

HEIDENHAIN TNC 25008

Machine

Operating

Modes

Page M5

3D Touch Probe Reference surface, Position measurement


The posrtron of a surface on the clamped workpiece is determined with the probing function Surface = datum.

Functions

l l l

Setting

the reference positrons distances

plane @ @ 0

Measuring Measuring

Measuring positions

Initiate the dialog SURFACE = DATUM Select probing and enter. function

Move to the starting x+ xY+ Yz-t zc+ cSelect the traversing

position e.g. Z-.

direction,

Move the probe head in negative Z direction. The probe head IS retracted in rapid traverse to the starting position after touching the surface.

Measured

value

r,,,,,,,

The control

displays

the measured

value.

Setting the reference plane DATUM Z+O

C
You can also measure
l l

Enter a new value if required, Confirm entry.

e.g. 0 mm.

Measuring distances

distances

on an aligned

workpiece

Probe the first position

and set the datum

(e.g. 0 mm). display

Probe the second position. The distance can be read in the Datum

Page M6

Machine

Operating

Modes

HEIDENHAIN TNC 2500B

3D Touch Probe Basic rotation, Angular


The probing function Baste rotation determines the angle of deviation of a plane surface from a nominal direction, The angle is determined In the machining plane.

measurement

Functions

Basic rotation (the control compensates misalignment)

for an angular

Correct an angular misalignment (on a machine tool with rotary axis) Measure an angle.

-4

Basic

rotation

Initiate the dialog BASIC ROTATION Select probing and enter. Select the Rotation ROTATION ANGLE = 0 function

angle.

Enter the nominal direction of the surface to be probed, e.g. 0.

Move the probe head to the starting position 0. x+ xY+ YSelect the probing drrection, e.g. Y+

The probe head travels in the selected direction, e.g. Y+. The probe head returns to the starting position after touching the side surface

Move the probe head to the starting position 0. The probe head travels in the selected direction, e.g. Y+. The probe head returns to the second starting positron after making contact. The control automatically switches to the Manual operation or Handwheel operating mode.

HEIDENHAIN TNC 2500B

Machine

Operating

Modes

Page M7

3D Touch Probe Basic rotation, Angular


Displaying the rotation angle The measured rotation angle is displayed by selecting the probing function Basic rotation. Compensation of angular misalignment 6 registered on the screen with ROT In the status display. It also rematns stored after a power interruption.

measurement

BRSIC p3

x-

ROTRTION Y+

Y-

Cancelling the basic rotation (rotation angle O)

The basic rotation is the probing function entering a O rotation The ROT display is

cancelled by selecting Basic rotation and angle. cleared.

I ----------------____-----------ACTL* ;r q
49.258 15.321 Y + + Es , fl: OS MS/9

!&
Measuring angles
l l l

Once basic rotation is activated, all subsequent programs are executed with rotation and shown rotated in the graphic simulation.

In addition

to basic rotation, angle measurements procedure:

can also be performed

on aligned

workpieces.

Carry out the following

Execute a basic rotation. Display the rotation angle. Cancel the basic rotation.

Compensating misalignment

for

On machine axis.

tools with a rotary axis, you can also correct

misalignment

of a workpiece

by rotating

the

Carry out the following


l l l l

procedure: angle.
4

Execute a basic rotation. Display and note the rotation Cancel the basic rotation.

Enter the noted value for the rotary axis incrementally in the Positioning with MDI operating (see Positioning to entered position) and start the rotation with the machine START button.

mode

Page M8

Machine

Operating

Modes

HEIDENHAIN TNC 25008

3D Touch Probe Corner = datum/ Determining corner coordinates


Wrth the probing function Corner = datum, the control computes the coordinates of a corner on the clamped workpiece. The computed value can be taken as datum for subsequent machrnrng. All nominal positions then refer to this point. The probing function Basic rotation should be performed before Corner = datum.

Process

The probe head touches two side surfaces figure) from two different starting positions side.

(see per \I

The corner point P is computed by the control as the intersection of straight line A (contact points 0 and 0) with straight line B (contact points 0 and @).

0 c

After performing a basic rotation

If the probing function Corner = datum is called after performing a basic rotation (straight line A), the first side need not be contacted.

HEIDENHAIN TNC 2500B

Machine

Operating

Modes

Page M9

3D Touch Probe Corner = datum/ Determining corner coordinates


To transfer the direction of the first side face from the basic rotation routine, simply respond to the dralog query TOUCH POINTS OF BASIC ROTATION ? by pressing the ENT key (otherwise NO ENT)

P!?
First side face

If only the probing rotation

function

CORNER

DATUM

is performed,

then it does not contain

a basic

Initiate the dialog CORNER = DATUM Select probing and enter. function

Move the probe head to the first starting posrtion. x+ xY+ YSelect the probing direction, e.g. Y+.

The probe head travels in the selected direction. After touching the side face, the probe head IS retracted to the starting position Traverse to the second starting position and probe in the same probing direction as described above.

Second side face Move the probe head to the third starting position. x+ xY+ YSelect the probing direction, e.g. X+.

The probe head travels In the selected direction. After touching the side face, the probe head is retracted to the starting position Traverse to the fourth starting in the same probing direction Display corner coordinates/ Setting the datum DATUM DATUM X+0 Y+O position and probe as described above.

Enter the corner coordinates for X and Y if required, e.g. X+0, Y+O.

q
Confirm entries.

Page M 10

Machine

Operating

Modes

HEIDENHAIN TNC 2500B

3D Touch Probe Circle center = datum/ Determining the circle radius


In the probing function Crrcle center = datum, the control computes the coordinates of the circle center and the circle radius on a clamped workpiece with cylindrical surfaces. The coordinates of the center can be used as the datum for subsequent machining. All nominal positions are then referenced to this point. The Basic rotation probing function must be carried out prior to Circle center = datum.

Bore, Circular

pocket

Position the probe head in the bore with the remote axis direction keys. 4 different positions are then touched by pressing the machine START button.

VA xy+

y- x+ 63 8

qQe X

Outer

cylinder

On workpieces with cylindrical outer surfaces, the probing directions must be specified for each of the four points.

VA

0 Ox+

Yx-O

0
Y+ 0

.;1

HEIDENHAIN TNC 2500B

Machine

Operating

Modes

Page M 11

3D Touch Probe Circle center = datum/ Determining the circle radius


Initiate the dialog Select the probtng and enter. function

CIRCLE CENTER = DATUM

x+

x-

Y+

Y-

Move the probe head to the first starting position. ct the probing direction if required, X-. Probe head travels in the selected direction. After touching face, the probe head is retracted to the starting position. Traverse to the second and third starting positions and probe in different directions as described above. Move the probe head to the fourth

x+

x-

Y+

Y-

Select the probing

direction

if required,

The probe head travels in the selected direction. The probe head is retracted to the starting posrtion after touching the side face.

Display

X+54.3 Y+21.576 PR+20

Coordinates Circle radius.

of the circle center.

Datum

setting

DATUM X+40 DATUM Y+30

Enter the X and Y coordinates center if necessary, e.g.X+40,

of the circle Y+30.

Cl
Confirm entries.

Page M 12

Machine

Operating

Modes

HEIDENHAIN TNC 25008

Datum

setting

without

probe system

Align workpiece and set datum

First alrgn the workpiece parallel to the machine axes In the conventional way. For datum setting the machine is then moved to a known posttron relative to the workpiece and the relevant position values are entered with the axis keys.

Touching working

in the plane

Touch both sides of the workprece with a tool or edge finder and, at contact, set the actual position display of the associated axis to the tool radius or the ball tip radius of the edge finder with a negative sign (here e.g. X = -5 mm, Y = -5 mm).

Touching in the tool axis (spindle axis)

The actual position display is set to zero when the zero tool touches the work surface. If the workpiece surface must not be scratched, you can lay a metal shim of known thickness (e.g. 0.1 mm) on it. Then enter the thickness of the shim when contact is made (e.g. Z = +O.l mm).

Preset

tools

When using preset tools (i.e. when the tool lengths are already known) touch the work surface with any tool. To assign the value 0 to the surface, enter the length L of the inserted tool with a positive sign as the actual value for the infeed axis. If the work surface has a value other than 0, enter the following actual value: (actual value Z) = (tool length L) + (surface position) Example: tool length L: 100 mm position of the work surface:

+50

mm

actual value to be entered: Z = 100 mm + 50 mm = 150 mm

HEIDENHAIN TNC 2500B

Machine

Operating

Modes

Page M 13

Manual Operation Datum setting without


Example: Setting the datum The datum is to be set with a drill (tool radius R = 5 mm) as shown to the right 0 Touch the workpiece 0 Touch side by moving 0 Touch side by moving surface. the Y axis the X axis

probe system

Touching Z axis

with

Initiate the dialog

z u
n

, after surface 0 IS touched. Enter the value for the Z axis, e.g. 0 mm. Confirm entry. The Z display reads: 0.000

DATUM SET Z =

Y axis

Initiate the dialog

clY , after surface 0 is touched. Enter the value for the Y axis, e.g. 5 mm. Here with a negative sign.

DATUM SET Y =

Confirm entry. The Y display reads: -5.000

X axis

Initiate the dialog

u X , after surface 0 is touched Enter the value for the X axis, e.g. 5 mm. Here with a negative sign

DATUM SET X =

Confirm entry. The X display reads: -5.000

The datum for the fourth axis can be set in a similar way. If the dialog DATUM SET was opened END Cl. by mistake, the dialog can be terminated with NO ENT or

Active datum points are only shown in the ACTUAL position display. This display may have to be selected with MOD (see index A General Position displays).

Information/MOD

Functions

Page M 14

Machine

Operating

Modes

HEIDENHAIN TNC 2500B

Electronic

Handwheel/lncrementaI

Jog

Versions

The control is usually equipped with an electronic handwheel. It can be used, for example, to set up the machine. There are two versions wheel : of the electronic hand-

HR 130: to be incorporated operating panel

into machine

HR 330: portable version with axis selection keys (A), axis direction keys (B), rapid traverse key (C), EMERGENCY STOP button (D), magnetic holding pads (E). enabling switch (F). HR 130 Interpolation factor The displacement per handwheel turn is determined by the interpolation factor (see table to the right). HR 330

Interpolation factor 0 1 2 3 4 5 6 i 9 10

Displacement in mm per turn 20.0 10.0 5.0 2.5 1.25 0.625 0.313 0,078 0.156 0.039 0.020

Operating the HR 130 Operating the HR 330

The handwheel is switched to the required machine axis with the axis keys of the control The axis IS selected on the handwheel. The axis to be driven by the electronic is highlighted in the screen display. - I
INTERPOLRTION FRCTOR: 5 m

handwheel

RCTL.

+ +

In the Electronic handwheel operating mode, the machine axes can also be driven with the external axis direction buttons.

Y 0

49,258 23,254 15,321

HEIDENHAIN TNC 2500B

Machine

Operating

Modes

Page M 15

Electronic

Handwheel/lncrementaI

Jog

Operating the HR 130/330

Set operating

mode and initiate the dialog Enter the desired e.g. 4. Confirm entry. interpolatron factor,

INTERPOLATION FACTOR: 3

c1

1 INTERPOLATION FACTOR: 4

cl
y hand-

Select the axis: on the control (HR 130) or on the handwheel (HR 330)

The tool can now be moved in a positive or negative Y direction with the electronic wheel.

incremental positioning

jog

The machine manufacturer can activate incremental jog positioning via the integral PLC. In this case, a traversing increment can be entered in this operating mode. The axis IS moved by the entered increment when you press a machine axis button. This can be repeated as often as desired. Only single-axis movements are possible. @ Jog increment: 0 Machine 0 Machine e.g. 2 mm. (e.g. X) pressed pressed twice. once.

axis button axis button

-4

Entering the jog increment

Set operating

mode and initiate the dialog Enter the jog increment, Confirm the entry. e.g. 2 mm.

JOG-INCREMENT: 1.000

cl

JOG-INCREMENT: 2.000

or another

remote

axis key. jog increment.

The axis is driven by the entered

Page M 16

Machine

Operating

Modes

HEIDENHAIN TNC 25008

Positioning with Manual Data Input (MDI) Tool call/Spindle axis/Spindle speed
A tool must first be defined before tool radius compensation tioning with MDI mode of operation. A tool can be defined program. can be called with G41/G42 in the Posieither in the central tool file or within a part

If no central tool file is used, you must define the tool with G99 in the Program Program run, full sequence mode. The significance of G99 and T are explarned in index P Programming Modes,

run, single block or

Tool Definition.

Example: tool call

Input

n
cl

Tool number

Select spindle Spindle Conclude speed block

axis, e.g. Z

Tool call

HEIDENHAIN TNC 2500B

Machine

Operating

Modes

Page M 17

Positioning with Manual Data Input (MDI) Positioning to entered coordinates


In the Positioning with MDI mode, paraxial posittoning blocks (i.e. for traverse entered and executed. The entered blocks are not saved in memory. In only one axrs) can be

Approaching the position

Input

Paraxral posrtionrng

No radius compensation Paraxial compensatron for increased length (R+) or Reduced length (R-j

or

Incremental

dimensions value,

AXIS and coordinate


Feed rate M function Conclude block

n n

Start positioning

block.

Terminate block entry

Terminates block immediatelv. rotation remain effective.

Earlier entries for tool radius compensation,

feed rate, direction

of spindle

Paraxial radius compensation

For paraxial positioning blocks you need only enter whether the tool path is shortened or lengthened by the tool radius. G43 lengthens the tool path G44 shortens the tool path. If a G43/G44 radius compensation entered for the angular positioning spindle axis it will be ignored. is also of the

-lv+-

I I

Nor is a tool radius compensation effective for a fourth axis when used for a rotary table.

0 Nominal

position

Machine

Operating

Modes

HEIDENHAIN TNC 2500B

Program Run Single block, Full sequence


Stored programs sequence. are executed in the operating modes Program run, single block and Program run, full

The workpiece datum must be set before machining See Datum setting with/without probe system.

the work!

Program run single block

In this operating mode, the control restarted after every block. Program

executes

the part program

block by block The program

must be

run single block is best used for program

test and for the first program

run.

Operating Selecting the program

mode

Single block Select the program or, if the program was already selected: select block 0.

0 BEGIN PGM 7225

The first program block is shown line of the program.

in the current

Starting run

Program run full sequence

In this operating mode, the control program occurs.

executes

the machining

program

until a programmed

stop or end of

Stop functions: M02, M30, MOO (MO6 STOP, The program run is also stopped

If assigned

a stop function

via machine

parameter)

if an error message

appears. stop.

You must restart the program

to continue

after a programmed

Selecting the program Starting run

Operating

mode

Full sequence ect the program scribed above.

and block number

as de

Feed rate

The programmed

feed rate can be varied via the feed rate override.

Spindle

speed

The programmed

spindle

speed can be varied via the spindle

override

(if output

IS

analog).

HEIDENHAIN TNC 2500B

Machine

Operating

Modes

Page M 19

Program Run Interrupting the program


stop

run

Stop program run: Stop axis movements wrth the machine STOP button. The block currently being processed IS not completed. The control in operation ( Ile ) display blinks.

Abort

Interrupt program run. The control in operation cleared.

(*

) display

is

The control
l l l l l

stores: transformations CC repeat program section

the last tool called coordinate the current the last valid circle center/p01 the return jump

label for subprograms

Switching to single block

In the Program Single block.

run, full sequence

operating

mode, you can interrupt

the program

run by switching

to

The block currently I

being executed

is completed. I after execuTo continue, either start each block separately or reactivate Program run, full sequence.

Program run is to be discontinued tion of the current block.

EMERGENCY STOP

The machine The control

can be switched acknowledges

off in an emergency

by hitting one of the EMERGENCY

STOP buttons.

this with the message

EMERGENCY STOP
To continue working, release the emergency 1. Remove the cause of error 2. Switch on the control power run. again STOP with the CE key 3. Clear the message 4. Restart the program EMERGENCY stop key (usually by turning it clockwise), then J 4

Page M 20

Machine

Operating

Modes

HEIDENHAIN TNC 2500B

Program Run Checking/changing


0 parameters Interrupt program run You can check and, If necessary, change

Q parameters
Q parameters after interrupting the program run.

Interrupt

program

run

Check parameter

Change parameter

Terminate change

parameter the parameter

display or and confirm.

HEIDENHAIN TNC 2500B

Machine

Operating

Modes

Page M 21

Program Run Background programming


Programming during program execution The control permits the execution of a program In the program run, full sequence mode at the same time as another program is being edited, graphically tested or transferred via FE-232-C (V.24) or FE-422 (V.ll) interface in the programming and editing mode. This parallel operation is especially useful for transferring data or making small program changes while running long programs which require little attention from the operator. A program cannot be run and edited at the same time

Starting the part program

Operating

mode

Initiate the dialog PROGRAM NUMBER =

Select part program Start machining

Parallel operating mode: programming and editing

Operating

mode Select and edit the program or transfer a program data interface. via the FE-232.C/V.24

Screen display

The screen IS divided into two halves during parallel operation: The program to be edited is shown in the upper half. The program currently in process appears in the lower half: program number, current block number and current status are displayed.

Terminating the parallel operating mode

Operating

mode Parallel operating IS terminated by pressing Program run, full sequence key. the

Page M 22

Machine

Operating

Modes

HEIDENHAIN TNC 2500B

Program Run Blockwise transfer (drip feed)


Execution from external storage In the Program run, full sequence or Single block operating mode, part programs can be transferred blockwise from a remote computer, a storage medium or a HEIDENHAIN FE unit via the RS-232-C/V.24 serial data interface. Thus allows execution of part programs which exceed the storage capacrty of the control. The data interface is programmable parameters (see Index Programming External data transfer). via machine Modes,

FE 401 Floppy Disk Unit

or

Computer

Data interface

I, TNC I Machine

The RS-232-C interface of the TNC must be set for external transfer or FE operation!

Program structure

Only programs

without

jumps

can be executed calls, program

with Blockwise

transfer. program jumps cannot be

0 Program calls, subprogram executed.


l

section

repeats and conditional

Unless the control

operates

with a central tool file, only the tool last defined

can be called.

Block numbers (sequence numbers)

The program

to be transferred

can have block numbers sequentially; with 2 lines.

(sequence however,

numbers)

exceeding

999. the

The blocks do not have to be numbered number 65 534. High sequence numbers are displayed

no block number

may exceed

Starting blockwise transfer

Data transfer from an external storage device can be started sequence/single block with the EXT key. The control the storage stores the transferred capacity is full. program blocks in available

in the operating memory

modes

Program

run, full when

and interrupts

data transfer

No program blocks are displayed until the available memory IS full or the program is completely transferred. The program run can be started with the machine START button even when no program block is displayed. To avoid unnecessary interruptions of the program gram blocks as a buffer before starting. Therefore, is full. After starting, the executed external storage device. blocks are discarded run, you should already have a number of stored proit is advantageous to wait until the available memory and further blocks are continuously called from the

Skipping program

over blocks

If. in Blockwise transfer operation, you press the GOT0 number, all blocks preceding this number will be ignored.

0 key before starting

and enter a sequence

HEIDENHAIN TNC 2500B

Machine

Operating

Modes

Page M 23

Notes

Page M 24

Machine

Operating

Modes

HEIDENHAIN TNC 2500B

Programming

Modes

(P)

Programming

in IS0 Fundamentals Sequence numbers/Block format Editing functions Clearing/deleting functions

Program

Selection Opening a program Erase/edit protectron Defining the workpiece G50 G30/G3 1 6 7 8

blank

Tool Definition Tool definition wtthrn the part program Tool definition in program Transferring tool length Tool radius G99 0 10 11 13 14

Cutter

Path Compensation Entering the radius compensatron Working with radius compensation Radius compensation G41 jG42 G43/G44 15 16 17

Tools Tool call Tool change 18 19

Feed rate F/ Spindle Speed Miscellaneous Programmable Dwell Time

S/ Function STOP/

M G38

20 21

Path Movements Input Overview lD/2D/3D Linear Movement, Cartesian Positioning in rapid traverse Drilling Chamfer Example Additional axes GO0 GO1 G24 25 26 27 28 29 of path functions movements 22 23 24

Circular Movement, Cartesian Interpolation planes Selection guide: Arbitrary transitions Tangential transitions 30 31 32

HEIDENHAIN TNC 2500B

Programming

Modes

Programming

Modes

(P)

Circular

Movement,

Cartesian Arc with circle center Arc with radius Corner rounding Tangenttal with radius R I, J. K G02/G03 G02/G03 G25 GO6 33 35 37 39

arc with end point X/Y

Polar Coordinaten Fundamentals Pole Straight lines I, J. K GlO/Gll G12/G13/G15 G16 RND G25 41 42 43 44 45 45 46

Circular arcs Tangential arcs

Corner rounding Helical interpolation

with poles I, J, K G12/G13

Contour

Approach

and Departure Starting and end positron On a circle with radius R G26/G27 48 50

Predetermined

M Functions Constant contour speed: Small contour steps: Terminating compensation: Machine-referenced coordinates: M90 M97 M98 M91/M92 51 52 53 54

Program

Jumps Overview 55

Jumps

Within

a Program

G98 Program labels Program section repeats Subprograms Nesting subprograms Example: Hole pattern with several tools Example: Horizontal geometric form

56 57 59 61 62 63

Program

Calls

64

Programming

Modes

HEIDENHAIN TNC 2500B

Programming

Modes

(P)

Standard

Cycles Introduction, Overview 65

Fixed cycles Preparatory measures Pecking Tapping with floatrng tap holder Slot milling Rectangular pocket milling Circular pocket milling SL cycles Fundamentals Contour geometry Rough-out Roughing-out a rectangular pocket Roughing-out a rectangular island Overlaps Overlapping pockets Overlapping islands Overlapprng pockets and islands Pilot drilling Contour milling (finishing) Machining with several tools Coordinate Transformations Overview Datum shift Mirror image Coordinate system rotation Scaling

G83 G84 G74 G75fG76 G77/G78

66 67 70 71 73 75

G37 G57

G56 G58JG59

77 78 78 80 81 82 83 86 87 89 90 91

G54 G28 G73 G72

93 94 96 98 100

Other

Cycles Dwell time Program call Orrented spindle GO4 G39 G36 102 103 104

stop

Parametric

Programming Overview Selection Algebraic functions Trigonometric functions Conditional/unconditional jumps Special functions Example: Bolt hole circle Drilling with chip breaking Ellipse as an SL cycle Sphere 105 106 107 108 110 111 113 114 115 117

HEIDENHAIN TNC 25006

Programming

Modes

Programming

Modes

(P)

Programmed

Probing Overview Example: G55 Measuring length and angle 120 121

Teach-In

123

Test Run

125

Graphic GRAPHICS

Simulation

126

External

Data Transfer General information Transfer menu Connecting cable/Pin assignment Peripheral devices FE floppy disk unit Non-HEIDENHAIN devices Machine parameters 129 130 131 132 133 134 135

for RS-232-C

Address

letters

in IS0

137

Programming

Modes

HEIDENHAIN TNC 25006

Programming Fundamentals
Introduction

in IS0

The individual work steps on a conventional machine tool must be InItrated by the operator. On an NC machine, the numerical control assumes computation of the tool path, coordination of the feed movements on the machine slides and generally also monitors the spindle speed. The control receives the information for this in form of a program in which the machining of the workpiece is described. This program can be considered a work plan

Program start and specification of blank

Define and call a tool, move to the tool change

posttion.

Move to the workpiece machine the workpiece

contour, contour, contour,

Programmrng means creating and entering a work plan in a form which is understood by the control.

depart from the workpiece

Traverse to the tool change

position.

End of program Program Programs The control can store up to 32 programs (HEIDENHAIN or ISO) with a total of 4000 (HEIDENHAIN dialog). One part program Individual numbers. Switching between conversational and IS0 programming programs can contain are identified blocks scheme

up to 1000 blocks, by program

The control is switched to conversational or IS0 programming via the MOD functions (see index A General Information, MOD functions, Programming and editing).

Program

input

Once the control has been switched from conversational to IS0 programming, the functions of the keys correspond to the snap-on keyboard. The control STOP key is covered by the D key. In IS0 programming, the DEL key assumes the function of the STOP key. IS0 programming is partly dialog guided. The individual commands (words), except for the dimensional data (G90, G91). can be entered in any sequence within a block. The commands are then sorted after the block has been concluded.

Program

At the beginning of an IS0 program, the control requires information on: 0 The working plane (G17/G18/G19) 0 Programming of absolute/incremental dimensions (G90/G91) 0 Radius compensation (G40/G41/G42) The first positioning block should look like this: GO0 G90 G40 G17 Z+200 Page PI

HEIDENHAIN TNC 25008

Programming

Modes

Programming in IS0 Sequence number/Block


Sequence number The sequence number identifies the program block in a part program. If a sequence number Increment between 1 and 255 is set in the machine parameter MP 7220 (see index A General Information, User parameters) the sequence number will be generated automatically, eliminating the need to enter each sequence number by hand. The numerrcal sequence of block numbering has no effect on program execution. It IS possible, for example, to insert a higher sequence number between two lines. Block Word Address values

format

N7 N8 N9 NlO Nil N12 N13

GO0 G40 Z-20 X-12 Y+60 * GO1 G42 X+20 G 26 R5 F20 *

MO3 * Y-t60 F40 *

X+50 Y+20 F40 * I-10 J+80 * GO3 X+70 Y+51.715 *

Each block in a program corresponds to one work step, for example: N20 GO1 G40 X+20 Y+30 Z+50 FlOOO MO3 * Each block is composed of words (e.g. X+20)

A word is composed of an address letter, e.g. X, and a value, e.g. +20. The abbreviations in the above block have the following meantngs: N = line number X, Y, Z = coordinates GO1 = linear interpolation, Cartesian F = feed rate M = miscellaneous G40 = no tool radius compensation format

functions

Block

Positioning blocks can contain: 8 G functions from various groups and also G90. G91 in front of each coordinate l 3 coordinates and also 2 circle centers or pole coordinates l 1 feed rate F l 1 M function l 1 spindle speed S l 1 tool number
l

Fixed cycles can contarn: Cycle parameter P (all files for the cycle definition) l 1 M function l 1 spindle speed S l 1 tool number l 1 positioning block (see above) l 1 feed rate F 0 Cycle call
l

Note

It is possible to combine fixed cycles with a positioning block, M-functions, spindle speed etc. (see example at right: long block format).

Example: NllO

long format

(not recommended)

G75 PO1+2 PO2-20 PO3-30 PO4 100 PO5 X+50 PO6 Y+20 PO7 200 Tl G17 SlOOO GO1 X+40 Y+30 F250 MO3 G79 *

The short format, however, makes the program easier to read. This is especially important for fixed cycles.

Example: NllO N120 N130

short format

(recommended)

N40

Tl G17 SlOOO * GO1 X+40 Y-t30 F250 MO3 * G75 PO1+2 PO2-20 PO3-30 PO4 100 PO5 X+50 PO6 Y+20 PO7 200 * G79 *

Page P2

Programming

Modes

HEIDENHAIN TNC 2500B

Programming in IS0 Editing functions


The term editing means entering, changing, supplementing and changing and checking program programs and they become

Editing

The edrtrng functions are helpful in selecting effective at the touch of a key.

blocks and words,

Selecting a block

The current A specific

block stands between block is selected

two horizontal 0.

lines

with GOT0

Initiate the dialog

GOTO: NUMBER =

El
block number. run through

Key in and confirm

the block number.

Paging through the program

Vertical cursor keys. Select the next lower or next higher Hold down a vertical cursor key to continuously the program lines the

Inserting a block

You can insert new blocks anywhere in existing programs. Just call the block which IS to precede new block. The block numbers of the subsequent blocks are automatically increased. If the program storage capacity is exceeded, if program this is reported at dialog initiation

with the error message: You should then select a

= PROGRAM MEMORY EXCEEDED =.


This error message also appears lower block number. end (PGM END block) is selected.

Editing

words

Horizontal

cursor keys: field IS moved within the current block and can be placed on the program word to be

The hrghlighted changed.

One word in the current be changed:

program

block is to

Move the highlighted to be changed.

field to the word

The dialog query appears word, e.g.

for the highlighted

COORDINATES ?

X El
Change the value Move the highlighted word to be changed. Conclude the block (or move the highlighted or left off the screen). field to the

To change

another

word:

If all corrections

have been made:

field to the right

Programming

Modes

Page P3

Programming in IS0 Editing functions


Searching for certain addresses You can use the vertical cursor keys to search for blocks containing a certain address in the program. and

Use the horizontal cursor keys to place the highlighted field on a word then page in the program with the vertical cursor keys: only those blocks having the desired address are displayed.

having the search address,

Example All blocks with the address are to be displayed: M Select one block wrth the M. Place the highlighted with M. field on a word

MISCELLANEOUS FUNCTION M ?

Call blocks with the desired address

M.

Page P4

Programming

Modes

HEIDENHAIN TNC 2500B

Programming in IS0 Clearing/deleting functions


Clear program The dralog for clearing a program is initiated wrth the CL PGM key.

Initiate the dialog ERASE Program = ENT/END = NOENT or select a program number.

is to be cleared:

Erase the program.

Program

IS not to be cleared:

Delete

block

The current block (in a program) is deleted with DEL q . The block to be deleted is selected with GOT0 0 or a cursor key. Program blocks can only be deleted in the PROGRAMMING AND EDITING operating mode. After deletion, the block with the next lower sequence number appears in the current program The following sequence numbers are corrected automatrcally. line

Delete program section

To delete

program

sectrons,

call the last block of the program

section. or program section are deleted.

Then continue

pressing

DEL 0 until all blocks in the definition

Clear entry, error message

You can clear numerical pressing the CE key. Non-blinking error messages

inputs

with

the CE

key. A zero appears with the CE

in the highlighted

field after

can also be cleared

key.

An entered

value

and the address

are completely

cleared

with

NO

ENT.

HEIDENHAIN TNC 2500B

Programming

Modes

Page P5

Program Selection Opening a program Selecting an existing program


You open a program and select a stored program by first pressing the PGM NR key (program number). A table with the HEIDENHAIN dialog programs and IS0 programs stored in the TNC appears on the screen. The program number last selected IS hrghlrghted. The program length in characters is given after the program number. IS0 programs are designated by ISO after the program number. You can select the desired program either l via the cursor keys or l by entering its number. If the selected program number does not yet exist, a new program is opened.
L

r
PROGRAM 1 IIP 10002 111 11111 :3 2 __-----------------------------RCTL. iii : SELECT I ON 360 756 1440 iS48 44 450 900 49,258 15,321 Y C + + 23,254 84,000

IS0

q 0

MS/9

Opening program

Depending on the selected program type, HEIDENHAIN dialog programs opened (see index A General Information, MOD Functions). Initiate the dialog PROGRAM PROGRAM SELECTION NUMBER =

or IS0 programs

can be

Enter the program number (maximum 8 characters). Confirm entry. for drmenstons In mm, or in inches

MM=G71/INCH=G70 O/o231 G

for dimensions

Example

display

O/o231 G71 * N9999 O/o231 G71 *

Selecting existing program

an

All existing programs executed, regardless Initiate the dialog PROGRAM PROGRAM

(HEIDENHAIN format and ISO) can be edited, tested, of the selected type of programming.

displayed

graphrcally

and

SELECTION NUMBER = or Place the highlighted the desired program field on number. number.

n
Modes

Enter the program

Example

display

0 To 231 G71 * 1 NlO G30 G17 X+0 Y+O Z-40 * 2 N20 G31 G90 X+100 Y+lOO Z+O *

Page P6

Programming

HEIDENHAIN TNC 25008

Program Selection Erase/edit protection : G50


Edit protection G50 After creating a program, you can designate It as erase- and edit-protected. protection 86357. is removed beforehand.

Protected programs can be executed and viewed, but not changed. A protected program can only be erased or changed If the erase/edit This is done by selecting the program and entering the code number

Activating protection

edit

Initiate the dialog

PROGRAM NUMBER =

rl

Enter the number of the program protected, confirm entry.

to be

O/o 7210G71 G

Press the key until the dialog PGM protection appears.

query

PGM PROTECTION ?

Protect the program. Confirm block.

Removing protection

edit

Initiate the dialog

PROGRAM NUMBER =

Enter the number of the program whose edit protection IS to be removed.

O/o 7210 G71 G50 *

Select the auxiliary operating

mode.

VACANT MEMORY: 148330 BYTE

Select the MOD function Code number.

Code number 86 357

CODE NUMBER =

II!

Enter code number

86357.

O/o 7210G71 *

Erase/edit protection G50 IS deleted.

is removed.

HEIDENHAIN TNC 25008

Programming

Modes

Page P7

Program Selection Defining the workpiece


Test graphics A blank form definition must be programmed before the machining program can be srmulated graphically. For the graphic displays, the blank dimensions of the workpiece must be entered at the start of program via G30/G31. The blank form must always be programmed a cuboid, aligned with the machine axes. Maximum dimensions: 14000 x 14000 x 14000 mm. as

blank: G30/G31

Blank

Minimum Maximum

point point

The cuboid is defined with the minimum point (MIN) and maxrmum point (MAX) (points with minimum and maximum coordinates). MIN can only be entered in absolute MAX may also be incremental. drmensrons;

The blank data are stored In the associated machining program and are available after program call.

Graphic display

Machining can be simulated in the three main axes - with a fixed tool axis.

Tool form

The graphic simulation depicts the results of machining with a cylindrical tool. The graphic must be interpreted when using form tools. accordingly

Page P8

Programming

Modes

HEIDENHAIN TNC 2500B

Program Selection Defining the workpiece


Example The blank form is aligned with the main axes.

blank: G30/G31

The MIN point has the coordinates X0, YO and Z-40. The MAX point has the coordinates Xl 00, YIOO and ZO.

Note

To define a blank, a program must be selected in the Programming and editing operating mode.

Entering the cuboid corner points MIN

Blank form definition Tool axis Z. X coordinate. Y coordinate. Z coordinate. Conclude block.

for MIN point.

MAX Absolute dimensions.

X coordinate. Y coordinate. Z coordinate. Conclude block.

Example

display

NlO G30 G17 X+0 Y+O Z-15 * N20 G31 G90 X+100 Y-t100 Z+O * BLK FORM DEFINITION INCORRECT The MIN and MAX points are incorrectly defined, or the machining blank definition, or the side proportions differ too greatly. PGM SECTION CANNOT BE SHOWN Wrong spindle axis IS programmed.

Error messages

program

contains

more than one

HEIDENHAIN TNC 2500B

Programming

Modes

Page P9

Tool Definition Tool definition within the part program


Tool definition The control requires the tool length and tool radius to enable It to compute the tool path from the given work contour These data are programmed in the tool definition.
PROGRAtlMING RND EDITING *

Whether the tools are defined decentralized in the appropriate part program or in a central tool file (program 0) is determined by a machine parameter.

&0 G7: s NIB G99 U L+0 R+2 N20 Tl El7 Sl000 #t N2S G00 G40 G90 X+10 N30 ES4 X+100 Y+20 #t N40 G28 X S NS0 I+100 J+0 #t N60 G73 G90 H+31S e# _____----------_________________ RCTL. El 2 + + 9,375 8,985 Y R

Y+10

M03

Tool number

Compensation values always refer to a certain tool which is desrgnated by a number. Valid tool numbers. with automatic tool change or in program 0: 1 to 99 without automatic tool change or in the machining program: 1 to 254.

+ +

8,200 0,180

MS/9

Tool definition in the part program

If tools required tn a program tions of the tool dimensions.

are defined

in that program,

a program

printout

will include

the specifica-

Input

Initiate the dialog TOOL NUMBER ? Enter the tool number. The tool number under G99. 0 cannot be programmed

TOOL TOOL

LENGTH RADIUS

L ? R ?

Tool 0 is internally defined with 0. Enter the tool length or the difference to the zero tool. Enter the tool radius. Conclude the block.

Page P 10

Programming

Modes

HEIDENHAIN TNC 25006

Tool Definition Tool definition in program


Central tool file If the central tool file (program 0) is activated by machine parameters, the tools must always be defined there. They then only have to be called in any program. The central tool file IS programmed, output and read in the Programming operating mode. changed, and editing

PROGRRMflING T2 T3 T59 ;: Ti --------------------------------

RN0 L+s, 3 L+12,45 L+2.5,21 L+52,52 L+85 L+32,71 L+l47,1 L+0 49,258 15,321

EDITING R+6 R+7,75 R+3,5 Ea5 R+8 R+13 R+lS, Y C + +

Every tool is entered with the tool number, length, radius and pocket number. Tool 0 must be defined with L = 0 and R = 0.

5 23,254 84,000

Example

Tool 3 is to be defined Initiate the dialog

with L = 5, R = 7:

BEGIN

TOOL

MM

Select the tool

+3

LO

RO

Enter the length. Enter the radius.

Tool changer with flexible pocket coding

On machines with a tool magazine and flexible magazine pocket than they were taken from. The control memorizes which tool number

pocket coding,

the tools can be returned pocket.

to a different

is stored in which

G99 functions like a tool pre-selection here, i.e. the tool search is programmed only the query for the tool number appears.

with G99. In this case,

Oversize tools

Oversize tools occupying three pockets are to be designated returned to the same pocket. Program SPECIAL by placing TOOL ? key. the highlighted field on the dialog query

as special

tools. A special tool is always

and respond

with the ENTER

The preceeding and succeeding pocket numbers and pressing the NO ENT key. A lk is displayed S for special tool and P for pocket number parameters. PO (spindle) or another

should be deleted by positioning the highlighted In place of the erased pocket number. if this function was selected via machine

field

only appear

pocket must be vacant In the magazine.

HEIDENHAIN TNC 2500B

Programming

Modes

Page P 11

Tool Definition

Tool

length

The tool length is compensated with a single adjustment of the spindle axis by the length comoensation. Compensation becomes effective after tool call and subsequent movement of the tool axis.

r
zl Zn -z +z

Zero tool

Compensation ends after a tool is called or with To (T, is called the zero tool and has a length of 0). The correct compensation value for the tool length can be determined on a tool pre-setter or on the machine. If the compensation value is to be determined on the machine, then you must first enter the workpiece datum.

Length differences

When the compensation The length differences length compensations.

values are determined

on the machine,

the zero tool serves as a reference. as tool

-Z or +Z of the other clamped

tools to this zero tool are programmed

If a tool is shorter than the zero tool, the difference is entered as a negative tool length compensation If a tool is longer than the zero tool, the difference IS entered as a positive tool length compensation. Preset tools values

If a tool pre-setter is used, all tool lengths are already known. The effective compensation correspond to the tool length and are entered with the correct signs according to a list.

Page P 12

Programming

Modes

HEIDENHAIN TNC 2500B

Tool Definition Transferring tool length


Tool lengths can be easily and quickly entered with the teach in function. 1. Move the zero tool To to the work surface set the spindle axis to zero. 2. After exchanging, the work surface. and

move the tools T, or T2 to

3. Transfer each display value in this position to the tool length definition. This gives you the length compensation to the zero tool.

Input

Operating

mode Touch the surface with the zero tool.

Initiate the dialog DATUM SET

nz

Spindle

axis, e.g. Z.

Reset to zero Also touch the surface with the new tools T, or T2

Operating

mode Either 1. call a tool definition in a program the dialog TOOL LENGTH L ?,
01

and initiate

2. select a tool in the central tool file and initiate the dialog TOOL LENGTH L ?.

TOOL

LENGTH

L ?

clZ

Select the spindle axis to transfer the tool length. Transfer the length compensation memory.

to

HEIDENHAIN TNC 2500B

Programming

Modes

Page P 13

Tool Definition Tool radius


Tool radius R The tool radius is entered as a positive (exception: radius compensation when mung the cutter center path). number program-

A tool radius must always be programmed before a machrnrng program can be checked with test graphics.

Tool radius compensation

Drilling work is programmed without radius compensation (G40). while milling jobs are usually programmed with radius compensation (G41/G42). Compensation is effective after a tool call, programming with G41 or G42 in a positioning block (GOI. GO2 etc.), or a movement in the active interpolation plane. Compensation ends with a positioning block which contains G40. If the tool tool center radius, the tour at the grammed travels with path compensation, i.e. the path is offset by the programmed tool tool follows a path parallel to the condistance of the tool radius. The profeed rate applies to the center path.

Outside

corners

The control inserts a transition around the corner.

curve for the center at a constant

path of the tool at outside path speed around

corners, so the tool rolls corner.

In most cases, the tool is thus guided Automatic decleration at corners

the outside

If the programmed feed rate is too high for the transition curve, the path speed is reduced (which produces a more precise corner) The ltmit value is permanently programmed in the control (machine parameter).

Inside

corners

The control automatically determines (equidistant) at inside corners.

the Intersection

S of the two cutter paths parallel to the contour The control thus shortens element - even when traversing -

This prevents back-cutting in the contour; the work is not damaged. distances according to the tool radius in use. The radius of the tool must always be chosen can be machined. so that every contour

shortened

Page P 14

Programming

Modes

HEIDENHAIN TNC 25008

Cutter Path Compensation Entering the radius compensation


To automatically compensate for the tool radius as entered in the TOOL DEF blocks - the control must be informed whether the tool travels to the left of, to the right of, or directly on the programmed contour.

G40 (RO)

If the tool is to travel on the programmed con tour, no radius compensation should be orogrammed in the posrtronrng block. The modal function G40 (RO) must therefore be programmed In the same or in a previous block.

Programming radius compensation

The radius compensation is entered in posrtioning blocks (GOI, GO2 etc.) via the functions G41 (RL) and G42 (RR). Left or right In the direction should be understood of movement. as looking

G41 (RL) G42 (RR)

If the tool is to travel at the distance of the radius to the left of the programmed contour, enter the function G41 (RL).

If the tool is to travel at the distance of the radius to the right of the programmed contour, enter the function G42 (RR).

The functions G40, G41 and G42 are modal, which means that they remain effective for all following blocks until changed. If you wish to keep the radius compensatron of the previous block, no entry is necessary.

HEIDENHAIN TNC 2500B

Programming

Modes

Page P 15

Cutter Path Compensation Working with radius compensation


Starting point G40 (RO) Change the tool and call the compensation with TOOL CALL. Traverse rapidly to the starting point 0 values

At the same time lower Z to the working depth (if danger of collision, first traverse in X/Y, then separately in Z!). This compensates for the tool length. The radius compensation off with G40. still remains switched

IS contour point G41 (RL) G42 (RR) Machining around the contour

Traverse to contour point 0 with radius compensation G41 (RL) or G42 (RR) at reduced feed rate.

Program the following milling feed rate.

contour

points to 0 at

Since the radius compensatron unchanged, there is no further or G42 until point 0.

remains need to enter G41

Last contour point G41/G42

After a complete circulation, the last contour point 0 is identical to the first contour point 0 and IS still radius comoensated. The end point (outside the contour) must be programmed without compensation with G40 to complete machining. To prevent collisions, retract only in the machining plane to cancel the radius compensation. Then back-off the tool axis separately

End point G40

Page P 16

Programming

Modes

HEIDENHAIN TNC 2500B

Cutter Path Compensation Radius compensation G43/G44


G43 G44 (R+) (R-) By entering G43 (R+) or G44 (R-) you can lengthen or shorten a paraxial movement (i.e. movement in only one axis) by the length of the tool radius. This simplifies: l Positioning with manual data input l Paraxral positioning l Pre-positioning for the slot cycle.

Effect G43/G44

Thus radius compensation


l

has the following

effect:

The displacement radius:

is lengthened by the tool display G43.

w
+-+fQ

GLC (R-1

GLO (RO)
l

The tool traverses position:

to the programmed display G40.

nominal

ti
@ GL3(R+)

The displacement radius :

is shortened by the tool display G44. axis.

G43/G44

do not affect the spindle

Example

The tool is to traverse from initial position Applrcatron example: Pre-positioning for the Slot cycle Input

X = 0 to X = (46 + tool radius)

Paraxial positioning Paraxial compensation, e.g. lengthening (Pi+). Nominal position value, e.g. X+46. Conclude block.

Display

GO7 G43 X+46

Mixing GO1 and

Uncompensated blocks (e.g. GO1 G40 X+20) mixed in a part program. Paraxial compensated positioning (G4VG42) are not to be entered Correct: GO1 G40 G40 G43 G40 X+15 Y+20 * Y+50 * X+40 * Y+70 *

and paraxial blocks (e.g. G40 X+20 and radius compensated

or G43 X+20) blocks

can be

blocks (G43/G44) In succession!

positioning

Incorrect: GO1 G42 X+15 Y-t20 * G43 Y+50 * G42 X+50 Y-t57 *

HEIDENHAIN TNC 2500B

Programming

Modes

Page P 17

Tools
Tool call
Tool call With the T key a new tool and the associated compensation values for length and radius are called up.

Spindle axis

In addition to the tool number, the control also needs to know the spindle axis to carry out length compensation in the correct axis or radius compensation in the correct plane. The spindle axis also defines the plane (e.g. XV) for circular movements: compensation plane. This is also the plane for coordinate rotatron and mirror image. Spindle axis Length compensation Radius compensation Z (G17) Y (G18) X (G19) Z Y X XY zx YZ It is identical to the radius

Compensation effect

Spindle speed

The spindle speed is entered directly after the spindle axis. Input range of the control: 0 to 99999 rpm. If the speed exceeds the valid range for the machine, the following run WRONG RPM

error message

appears

at program

Activating compensation

A tool call activates length compensatron. It first becomes effective when the next tool axis movement is programmed. It can be seen as a single movement in the tool axis. Radius compensation first becomes effective when the compensation direction grammed in a posrtioning block. A tool call block (T-block) ends the old tool length and tool radius compensation compensation values. Example: T12 G17 S300 * Tool radius compensation is also ended by programming G40 in the posrtioning If only the spindle speed is entered Example: T12 SSOO * with a tool call block, the compensations

G41 or G42 is pro

Ending compensation

and calls the new

block remain valid

Tool call

Initiate the dialog

TOOL

NUMBER

Enter the tool number. Enter the spindle e.g. G17. Enter the spindle Conclude axis, speed in rpm

the block.

Page P 18

Programming

Modes

HEIDENHAIN TNC 2500B

Tools
Tool change
Tool change position To change the tool, the main sptndle must be stopped and the tool retracted In the spindle axrs. We recommend programming an additional block In which the axes of the machining plane are likewise backed-off.

Workpiecerelated change position

The tool moves to a workpiece-related

position

if no additional

measures
IS

are taken.

Example: GOOZ+lOO MO6 * The tool IS driven 100 mm over the work surface if the tool length TO reduces the distance to the workpiece was effective prior to TOOL CALL 0. (danger of collision!)

0 or TO was programmed. length compensation

if a positive

Machine-related change position

You can use M91, M92

or a PLC positioning

to traverse

to a machine-related coordinates M91/M92).

tool change

position.

Example: GO0 Z+lOO M92 * (see Predetermined M Functions,

Machine-referenced

Manual tool change

The program must be stopped for a manual tool change. Therefore, enter a program STOP before the tool call (T-block). M6 has this stop effect when the control is set accordingly via machine parameters. The program IS then stopped until the machine START button is pressed. The program STOP can only be omitted when tool call is programmed solely to change the spindle speed. a

NlO G30 G17 X+0 Y+O Z-40 * N20 G31 G90 X+100 Y+lOO Z-t0 * N30 G99 Tl L+O R+5 * N40 G99 T2 L-2.4 NSO TO G17 * N60 GO0 G40 G90 Z-t200 MO6 * N70 Tl SlOOO * NSO X+25 Y+30 * N90 Z+2 MO3 * R+3 *

Automatic tool change

The tool IS changed at a defined change positron The control must therefore move the tool to a machine-referenced change positron. The program run is not interrupted.

HEIDENHAIN TNC 25008

Programming

Modes

Page P 19

Feed Rate F/Spindle Speed S/ Miscellaneous Functions M


Feed rate The feed rate F, i.e. the traversing speed of the tool in its path, is programmed in positioning blocks in mm/min or 0.1 inch/min. The current feed rate is shown in the status display on the lower right of the screen.

Feed rate override

The feed rate can be varied within a range of 0% to 150% with the feed rate override on the control operating panel. The effective range of the potentiometer for tapping is limited by machine parameters!

Rapid

traverse

The maximum input value (rapid traverse) l 29998 mm/min or l 11 800/10 inch/min.

on the control

for positioning

IS:

The maximum operating speeds are set for each axis. GO0 or the max. input is programmed for rapid traverse. The control automatically limits rapid traverse to the permissible

values

If the F display is highlighted and the axes do not move, this means the feed rate was not enabled at the control interface. In this case, you must contact your machine manufacturer.

Spindle speed

The spindle

speeds

are set through

a tool call (T-block)

Spindle override

On machines with continuous spindle override. Spindle override is disabled

spindle

drive, the speed can be varied from 0% to 150%

using the

during

tapping.

Miscellaneous functions

Miscellaneous functions can be programed to regulate certain machine functions (e.g. spindle on), to control program run and to influence tool movements. The miscellaneous functions are comprised of the address M and a code number according to IS0 6983. All of the M functions from MOO to M99 can be used. Certain M functions become effective at the start of block (e.g. M03: spindle on clockwise), movement, and others become effective at the end of block (e.g. M05: spindle stop). Only a certain number of these M functions are effective on any given machine. Some machines may employ additional, non-standard M functions not defined by the control M functions are normally programmed in positioning blocks (GOI, GO2 etc.). However, M functions can also be programmed without positioning. i.e. before

Page P 20

Programming

Modes

HEIDENHAIN TNC 2500B

Programmable stop: G38 Dwell time: GO4


Stopping program Program run can be halted by one of the following A new start can be made by pressing the machine functions. start button Program run STOP

run

G38 Display

Input

N1.5G38 *
A block with program tioning block. run halt (G38) can also contain

Program

run is stopped

in block 15.

an M function

or G38 comes at the end of a posi-

M02/M30

Program stop and (according to ISO) also spindle Return to block 1 of the program. stop and (according stop and (according stops only when to ISO) also spindle to ISO) also spindle

stop and coolant

off.

MOO MO6

0 Program
l

stop and coolant stop, coolant parameter!

off.

Program Program

off and tool change

set accordingly

by machine

Dwell

time

The function GO4 Dwell time can be used during the programmed time period (see Other cycles). Note: The program

program

run to delay execution

of the next block for

resumes

running

after the dwell time runs out!

HEIDENHAIN TNC 2500B

Programming

Modes

Page P 21

Path Movements Input


Contour elements The coordinates which you enter must describe the shape of the workprece, not the path of the tool center. The control compensates for the tool radius and computes the centerline of the tool path required to machine the programmed contour. You program as if the tool is always moving and the workpiece actual design of you machine tool. The programmable contours straight line and circle. is always stationary, regardless of the are composed of the contour elements

Generating the workpiece contour

To be able to compute the workpiece contour, the control must be given the individual contour ments. Since each program block specifies the next step, the following information is required.
l l l

ele-

straight line or circle the coordinates of each end point additional information such as circle center, contour

radius etc.

The following

is an example

of positioning

block Input for a straight

line.

Input

Selection of type of movement, e.g. linear Cartesian. No radius compensation radius compensation radius compensation (RO) or left (RL) or right (RR).

Ftrst coordinate

Absolute

or

incremental. Coordinate Next coordinate Feed rate. n M function. Conclude block. and value.

Example

N20 GO1 640 G90 X+20 Z-10 G91 Y+30 FlOO MO3 * Linear, Cartesian, no radius compensation (G40). absolute rate 100 and spindle on clockwise.

to X+20,

Z-IO,

Incremental

to Y+30

with feed

Abbreviated input Example

G functions, for example GOI, G40, G90, feed rates and some M functions are modal, that is they remarn active until they are cancelled or replaced with another function of the same type. N20 GO1 G40 G90 X+20 N30 Y+30 * FlOO MO3 *

Page P 22

Programming

Modes

HEIDENHAIN TNC 2500B

Path Movements Overview of path functions

I
Straight lines

Function Straight Straight line movement line movement in rapid traverse at programmed feed rate lines

In Cartesian coordtnates GO0 GO1

Input In polar coordrnates GIO Gil G24

Chamfer with length R A chamfer is inserted between

two straight

t
Circles Circle center; also pole for programming I, J, K do not generate movement Circular Circular movement movement in clockwise directron polar coordinates (CW) direction (CCW) I, J, K GO2 GO3 G12 G13

in counterclockwise

The circular path can be programmed: l circle center I, J, K and end point, or l circle radius and end point Circular movement without indication Only the radius and end point of the programmed. The direction of rotation results from G02/G12 or G03/G13 which was last of direction of rotation. circular path need to be the circular movement programmed GO6 G16 GO5 G15

Circular movement with tangential transition. An arc IS attached to the preceding contour element with a tangential transrtron. Only the end point of the arc needs to be programmed.
c

Rounding corners with radius R. An arc with tangential transitions is inserted elements.

G25 between two contour

Multi-axis movements

A maximum

of 3 axes can be programmed

for straight

lines, and a maximum

of 2 axes for circles.

HEIDENHAIN TNC 2500B

Programming

Modes

Page P 23

Path Movements lD/2D/3D movements


Movements are referred to - depending on the number of simultaneously traversed axes - as ID, 2D or 3D movements (D for dimension).

Paraxial traverse: 1 D movements

If the tool is moved relative to the work on a straight line parallel to a machine axis, this is called paraxial positioning or machining.

2D movements

Movement in a main plane (XV, YZ, ZX) is called 2D movement. Strarght lines and circles can be generated main planes with 2D movements. in the

3D movements

If the tool IS moved relative to the workpiece on a straight line with simultaneous movement of all three machine axes, It is called a 3D straight line. 3D movements are required planes and bodies. to generate oblique

Page P 24

Programming

Modes

HEIDENHAIN TNC 2500B

Linear Movement, Cartesian Positioning in rapid traverse: GO0


The tool is at the starting pornt 0 and must travel on a straight line to target pornt 0. You always program the target point 0 (nomrnal position) of straight Irnes. Posrtion 0 can be entered coordinates. in Cartesian or polar

Positioning

The first posrtion in a program must always be entered as an absolute value. The following positions can also be incremental values.

Example tool definition/ call

G99 Tl L+lO

R5 *

Tool 1 has length 10 mm and radius 5 mm Tool 1 is called in the spindle Spindle speed is 200 rpm. axis Z.

Tl G17 S200 *

Positioning block: complete input (main block) &:

Rapid traverse. No radius compensation, I_yl:I pJ0 absolute dimensions

Z IS moved with tool length Spindle clockwise.

compensation

3 GO0 G40 G90 X+.50 Y+30 z-1-0 M3 * Re-entry at tool calls is especially tool call. The G function downfeed. for positioning

easy if you enter a marn block (= complete

positioning

block) after a

in rapid traverse

(GO0 or GIO) is modal. Beware

of collision

during

tool

HEIDENHAIN TNC 2500B

Programming

Modes

Page P 25

Linear Movement, Drilling : GO1


Absolute Cartesian coordinates

Cartesian

1~20~30 GO1 X+20 Y+30 Z+2 *

+Y
70 .+

IO
30 v.+

20

I 50

c 75 +x

Incremental Cartesian dimensions

91 B *

20

Only incremental

entry.

GO1 G91 X+20

Mixed entries

91 [xl20

90 [vl30

The position for X is entered in incremental dimensrons, for Y in absolute dimensrons.

GO1 G91 X+20

G90 Y+30 *

Example drilling

The following

is an example

of a program

for drilling

without

cycles

Program

%lO G71 * NlO N20 N30 N40 N50 G30 G17 X+0 Y+O Z-40 * G31 G90 X+100 Y+lOO Z-t0 * G99 Tl L+O R+5 * Tl G17 S2400 * GO0 G90 Z+200 M6 * Y+30 M3 * Blank form definition (only if graphic simulation desired) Tool definition Tool call Retract in Z, tool change Positronrng to 1 hole in X/Y, rapid traverse, switch on spindle Pilot positioning in Z Drilling at programmed feed rate Retract in Z Positioning to 2d hole in X/Y Drilling at programmed feed rate Retract in Z Positroning to 3d hole in X/Y Drilling at programmed feed rate Retract in Z End of program workpiece

N60 G40 X+20

N70 Z+2 * NSO GO1 Z-10 F80 * N90 Z-t2 FlOOO * NlOO GO0 X+50 Y+70 NllO GO1 Z-10 F80 * N120 Z-t2 FlOOO * N130 GO0 X+75 Y+30 * N140 GO1 Z-10 F80 * N150 GO0 Z-t200 M2 * N9999 %lO G71 *

Page P 26

Programming

Modes

Linear Movement, Chamfer: G24


Chamfer G24

Cartesian

A chamfer can be programmed for contour corners formed by the intersection of two straight lines. The angle between the two straight lines can be arbitrary. A chamfer is completely defined by the points 0 0 0 and the chamfer block. A positioning block containing both coordinates of the machining plane should be programmed before and after a chamfer block. The compensation G40/G41/G42 must be identrcal before and after the chamfer block. A contour cannot be started with a chamfer. A chamfer can only be executed in the machining plane. The machining plane in the positioning block before and after the chamfer block must therefore be the same. The chamfer length must not be too long or too short at inside corners: the chamfer must fit between the contour elements and also be machineable with the chosen tool. The prevrously programmed effective for the chamfer. feed rate remains

Prerequisites

GO1 G24

GO1

Programming

Program a chamfer as a separate block. Only enter the chamfer length - no coordinates. The corner pornt itself is not traversed!

Entering the chamfer Program Example block G24 R4 * O/o11 G71 * N10 G99 Tl L+O R+lO * N20 Tl G17 S200 * N30 GO1 G41 X+0 Y+50 F300 MO3 * N40 X+50 Y+50 * N50 G24 R4 * N60 x+50 Y-t0 * N9999 O/o11 G71 *

R = chamfer

length

Positron 0 (see figure above) Position 0 Chamfer Position 0

HEIDENHAIN TNC 2500B

Programming

Modes

Page P 27

Linear Movement/Cartesian Example


Example: milling straight lines

The block numbers are shown you in following the sequence.

in the figure to aid

Program

O/o12 G71 * N3 G30 G17 X+0 Y+O Z-40 * N5 G31 G90 X+100 Y+lOO Z+O * NlO G99 Tl L+O R+.5 * N20 Tl G17 S.500 * N30 GO0 G90 Z-t200 MO6 * N40 G40 X-10 Y-20 MO3 * N50 GO1 Z-20 F80 * N60 G41 X+0 Y+O F200 * N70 Y+30 F400 * N80 X+30 Y+50 * N90 X+60 * NlOO G24 R5 NllO Y+O * N120 X+0 * N130 G40 X-20 Y-10 * N140 GO0 Z+200 MO2 * N9999 %12 G71 *

Blank form definition (MIN point) Blank form definition (MAX point) Tool definition Tool call Tool change Pilot position (tool is up) Plunge at downfeed rate Approach the contour, call radius compensation Machine the contour 0 .@ .c3 Chamfer block 00 0 0 Last block with radius compensation Cancel radius compensation Back-off Z

@I

4 d

Page P 28

Programming

Modes

HEIDENHAIN TNC 2500B

Linear Movement, Additional axes


Linear axes u, v, w

Cartesian

Linear interpolation can be performed simultaneously with a maximum of 3 axes - even when using additional axes. For linear interpolation with an additional linear axis, thus axis must be programmed with the corresponding coordinate in every NC block. This requirement holds even when the coordinate remains unchanged from one block to the next. If the additional axis is not specified, the control traverses the main axes of the machining plane agarn. Example: linear interpolation tool axis Z. with X and IV,

Nil N12 N13

GO1 G42 X+0 X+100 X+150 V-t0 * V-t70 *

V-t0 FlOO *

Rotary axes A, B. C

If the additional axis is a rotary axis (A, B or C axis), the control registers the entered value in angular degrees. During linear interpolation with one linear and one rotary axis, the TNC interprets the programmed feed rate as the path feed rate. That is, the feed rate is based on the relative speed between the workpiece and the tool. Thus, for every point on the path, the control computes a feed rate for the linear axrs FL and a feed rate for the angular axis F,,,,: F =FAL d (A L)2 + (A W)2 F =FAw w -J (A L)2 + (A W) where: F = = FL = Fw AL = A W =

programmed feed rate linear component of the feed rate (axis slides) angular component of the feed rate (rotary table) lrnear axis displacement angular axis displacement

M94 for rotary axes

The position display for rotary axes can be set via machine parameters for either: l f 360 or 0 + 00 (i.e. f max. display value). If + 00 is chosen as the measuring range, the position display for rotary axes can be limited to values below 360 with M94.

HEIDENHAIN TNC 2500B

Programming

Modes

Page P 29

Circular Movement, Interpolation planes


Main planes Circular arcs can be directly The crrcular rnterpolation tool compensations. programmed

Cartesian

in the main planes XY, YZ, ZX. by defining the spindle axis with T. This also assigns the i

plane IS selected

The axis printed bold below (e.g. X) IS identical in its positive The axis In normal print points In the 90 direction.

direction

with the angle 0 (leading

axis).

Interpolation planes

Spindle axis parallel to

Circular interpolation XY

plane

z 0 k

Y ccw

YZ

z ccw

0
Y

:I-::.:
X

Oblique circles in space

Circular arcs which are not parallel to a main plane can be programmed as a sequence of multiple short straight lines (GO1 blocks).

via 0 parameters

and executed

Page P 30

Programming

Modes

HEIDENHAIN TNC 25008

Circular Movement, Cartesian Selection guide: Arbitrary transitions G02/G03 and GO5
Circular movement The control moves two axes simultaneously, so the tool describes a circular arc relative to the workoiece.

Arbitrary transitions

The functions GO2 and GO3 define - together with the preceding block - arbitrary transitions the beginning and end of the arc. If a program section contains a contour which has to be programmed as alternating linear and circular movements, the GO5 function can be used while still retaining the direction of rotation programmed via GO2 or G03. GO5 corresponds in function and input to the functions,G02/G03. The only difference is that with GO5 you do not need to enter the direction of rotation. That is, GO5 generates both clockwise (CW) and counterclockwise (CCW) circular movements. The prerequisite for employing GO5 is that the direction of rotation has previously been programmed via G02/G03. The starting pornt 0 of the circular movement must be approached in the immediately preceding block. The circle endpoint GO3 block. 0 is programmed

at

Difference between G02/G03 GO5

and

Prerequisite

GO2 (CWI

Circle

endpoint

in a GO2 or

Direction rotation

of G02/G03

In mathematical terms, the negative rotation G02 is clockwise (CW). The positive terclockwise. direction or rotation

direction

of

G03

IS

coun-

Radius

For G02/G03. the radius results from the distance of the position immediately before the block which was programmed with G02/G03 (beginning of circle) to the circle center I, J, K. A full circle can be oroqrammed In one block only with G02/G03. You can enter the radius drr-ectly with R (without I, J, K). : Given Arc starting Circle center Arc end point 0 Arc starting point 0 point 0 Required path function

Full circles

Selection

e.g. GO1 traverse to the starting point

I, J, K
G02/G03 e.g. GO1 traverse to the starting point G02/G03 mit Radius R Page P 31

Radius + arc end point 0 HEIDENHAIN TNC 2500B

Programming

Modes

Circular Movement, Cartesian Selection guide: Tangential transitions


Tangential transitions The G25 and GO6 functions automatically produce a tangential (soft) entry Into the arc. Departure from the arc is also tangential with G25, and arbitrary with G06. The directton of movement when entering the circle thus also determines the shape of the arc.

Direction of rotation

The direction given.

of rotation

need therefore

not be

Corner G25

rounding:

Corner rounding with G25 is inserted between two contour elements which can be straight lines or arcs. The data to be programmed are: the corner point 0 (which IS not traversed), and directly following it a separate rounding block G25 with the rounding radius R. Entry into and exit from the rounding radius is tangential and is automatically computed by the control.

Tangential contour connection Selection :

With GO6 only the arc end point grammed. GO6 Given Point 0 Corner Rounding Point 0 Tangent generating point 0 Tangential arc 0 Arc end point 0 0 radius Required

IS

pro-

path function

Traverse e.g. with GO1 Traverse e.g. with GO1 G25 Traverse e.g. with GO1 Traverse e.g. with GO1 Traverse e.g. with GO1 GO6

Page P 32

Programming

Modes

HEIDENHAIN TNC 2500B

Circular Movement, Cartesian Arc with circle center: I,r J, K + G02/G03


I, J and K have two functions: 1. Specifying the circle center for crrcular arcs with G02/G03. 2. Defining the pole as datum for position data In polar coordinates. Circle center The circle center I, J, K must be determined before circular interpolation with G02/G03 and may be programmed in one block with the circular movement. This circle center remains in effect until replaced by a new I, J, K command. There are three methods
l

I, J, K

for programming: by

The circle center I, J, K is directly defined Cartesian coordinates. The coordinates last programmed block define the circle center.

in a I, J, K

The current position is taken as circle center with G29 (without numerical Input). This is also possible in polar coordinates. for positions programmed Working plane (Circular interpolation plane) in Circle center coordinates

The circle center is defined the working plane:

by two coordinates

x Y
z
Y

I, J
K. I Jr K

x
z

I, J, K absolute: I, J, K incremental: Programming

the circle center is based on the work datum. the circle center is based on the tool position no movement! last programmed. in the circle center produces

Approaching the starting point Radius Circular arc G02/G03

Approach

the starting

point for the circular

arc before the G02/G03

block.

The distance

from the starting

point to the circle center determines

the radius.

The tool is to travel from position 0 to target point 0 in a circular path. Only program 0 in the G02/G03 block. Position 0 can be entered in Cartesian or polar coordinates.

YI

Direction of rotation

The direction of rotation must be defined for circular movement: rotation in negative direction GO2 (clockwise). rotation in positive direction GO3 (counterclockwise) Any tool radius compensation before a circular arc. must begin

HEIDENHAIN TNC 2500B

Programming

Modes

Page P 33

Circular Movement, Cartesian Arc with circle center: I, J, K + G02/G03


Input tolerance The startrng and endpoint must Ire on the same circular path, i.e. they must be at the same drstance from the circle center CC. The tolerance of position inputs for the starting position, end position and circle center is f 8 urn. Circle center Specify the rotating direction with G02: (directron of rotation clockwise) and arc end point.

Input circle

center

Input G02/G03

Program

blocks

I+50 J+50 * GO2 X+15 Y+50 * G41/G42, F and M are entered ous rnDut as for straight lines. They are only necessary when different from previ-

Example full circle

Full circle in the XY plane (outer circle) around center X+50, Y+50 with 35 mm radius. G99 Tl L+O R5 * Tl G17 S200 * GO1 G41 X+15 I+50 J+50 * GO2 X+15 Full one The are Y+50 * Y-t50 F300 MO3 *

Program

circles can be programmed with G02/G03 in block. ctrcle starting point and the circle endpoint identical.

Example

arc

Semicircle in the XY plane (inside circle) around center X+50 Y+50 with 35 mm radius. GO1 G41 X+85 I+50 J+O * GO3 X+15 Y+50 * Y+50 F300 M3 *

Program

Page P 34

Programming

Modes

HEIDENHAIN TNC 2500B

Circular Movement, Cartesian Corner rounding with radius: G02/G03


Circular G02/G03 arc If the contour radtus is given in the drawing, but no circle center, the circle can be defined via G02/G03 key with the l endpoint of the circular arc 0 radius and l direction of rotation. G41/G42, F and M are entered as for straight lines and are only required when changing earlier specifications. The starting point of the arc must be approached In the preceding block. In the G02/G03 block the endpoint can only be programmed with Cartesian coordinates. The distance between starting and end point of the arc must not exceed 2 x R! With G02/G03, full circles can be programmed In 2 blocks. Central angle There are two geometric solutrons for connecting two points with a defined radius (see figure), depending on the size of the central angle p: The smaller arc 1 has a central angle PI < 180. the larger arc 2 has a central angle p2 > 180. Enter a positive radius to program the smaller arc (p < 1807. (The + sign is automatically generated.) To program the larger arc (p > 180). enter the radius as a negative value. The maximum definable radius = 30 m. Arcs up to 99 m can be produced with parametric programming.

Starting

point

Endpoint

Contour radius

Rotating direction

Depending on the allocation of radius compensation G41/G42, the rotating direction determines whether the circle curves inward (= concave) or outward (= convex). In the adjacent figure, GO2 produces a convex contour element, GO3 a concave contour element.

HEIDENHAIN TNC 2500B

Programming

Modes

Page P 35

Circular Movement, Cartesian Corner rounding with radius: GO2/G03


Input GO2 Circle, Cartesian, Endpoint of arc clockwise

Radius, positive sign

Program

block

GO2 X+80

Y+40, R+lOO *

Examples:

G99 Tl L+O R+5 * Tl G17 S200 * GO1 G41 X+20 GO2 X+80 Y+60 F300 MO3 *

Arc A

Y+60 R+50 *

Arc B

GO1 G41 X+20 GO2 X+80 Y+60

Y+60 F300 MO3 *


60

R-50

Arc C

GO1 G41 X+20 GO3 X+80 Y+60

Y+60 F300 MO3 * R+50 *

Arc D

GO1 G41 X+20 GO3 X+80

Y+60 F300 MO3 * *

60

Y+60 R-50

The position X+20 Y-t60 is the start of arc in the examples; the position X+80 Y+60 is the end of arc.

Page P 36

Programming

Modes

HEIDENHAIN TNC 2500B

Circular Movement, Cartesian Corner rounding with radius R: G25


Circular arc G25 Contour corners can be rounded with arcs. The circle connects tangentially with the preceding and succeeding contour. A rounding arc can be inserted at any corner formed by the intersection of the following con tour elements: straight line - straight line, straight line - circle, or circle - straight 0 circle - crrcle.
l l

-. 0 -2 tu,
GO1 G25

line,

Prerequisites

Rounding is completely defined by the G25 block and the points 0 0 0. A posrtioning block containing both coordinates of the machining plane should be programmed before and after the G25 block. The G40/G41/G42 compensation must be identical before and after the G25 block. A contour therefore cannot which is to be rounded. be started in a corner

Note

The rounding arc can only be executed in the machrnrng plane. The machintng plane must be the same in the positioning block before and after the rounding block. The rounding radius cannot be too large or too small for inside corners - it must fit between the contour elements and be machinable with the current tool. The feed rate for corner rounding is effective blockwise. The previously programmed feed rate is reactivated after the G25 block.

Programming

The rounding arc is programmed as a separate block following the corner to be rounded. Enter the rounding radius and a reduced feed rate F, if needed. The corner point itself is not traversed!

The tool radius can be larger than the roundrng radius on outside corners. The tool radius must be smaller than or equal to the rounding radius on inside corners.

Error

messages

PLANE WRONGLY DEFINED


The machrnrng planes are not identical and after the RND block. before

ROUNDING RADIUS TOO LARGE


The rounding is geometrically impossible.

HEIDENHAIN TNC 25008

Programming

Modes

Circular Movement/Cartesian Corner rounding with radius R: G25


Input G25 Corner rounding Rounding radius and is only

A separate feed rate can be entered effective for this rounding

Program

block

G25 R8 FlOO *

Examples:

G99 Tl L+O R+5 * Tl G17 S200 * A GO1 G41 X+10 F300 MO3 * X+50 Y+60 * Y+60 PosItIon 0 Corner Rounding Position 0 point 0

Sequence

G25 R7 * x+90 Y+50 *

Sequence

GO1 G42 X+10 F300 MO3 * X+50 Y+60 *

Y-t60 Position 0 Corner Rounding Position 0 pomt 0

G25 R7 * x+90 Y+50 *

Page P 38

Programming

Modes

HEIDENHAIN TNC 2500B

Circular Movement, Cartesian Tangential arc with end point X, Y: GO6


Circular arc GO6 A circular arc can be programmed more easily If it connects tangentially to the preceding contour. The crrcular arc IS defined by merely entering the arc endpoint with GO6

Geometry

An arc with tangentral connection is exactly defined by its endpoint.

to the contour

Thus arc has a specific radius, a specific direction of rotation and a specific center. This data need not therefore be programmed. Machining sequence

Prerequisites

The contour element which connects tangentially to the circle IS programmed immediately before the tangential arc. Both coordinates of the same machrnrng plane must be programmed in the block for the tangential arc and in the preceding block.

Tangent

The tangent IS specified by both positions 0 and 0 directly preceding the GO6 block. Therefore, the first GO6 block can appear no earlier than the third block in a program.

Path of the circular arc GO6

The tool is to travel a circle connecting tangentially to 0 and 0 to target point 0. Only 0 IS programmed in the GO6 block.

Geometrv

Coordinates

The endpoint of the circular path can be programmed in either Cartesian or polar coordinates.

Error messages

WRONG CIRCLE DATA


The required minimum 2 positions GO6 block were not programmed. before the

ANGLE REFERENCE MISSING


Both coordinates of the machrnrng plane are not given In the GO6 block and the preceding block. Cartesian coordinates

Polar coordinates HEIDENHAIN TNC 2500B Page P 39

Programming

Modes

Circular Movement, Cartesian Tangential arc with end point X, Y: GO6


Input GO6 Arc endpoint

Program

block

GO6 x+90

Y+40

Enter R, F and M as for straight lines. Input is only necessary to change earlier deflnltions

Examples: different endpoints Arc A

G30 G17 X+0 Y+O Z-40 * G31 G90 X+130 Y+lOO Z+O * Tl G17 S200 * GO1 F300 x+50 GO6 G41 X+10 Y+80 MO3 * * x+130 Y+30 *

I tangent point Start of arc End of arc.

Arc B semicircle

GO1 G41 X+10 Y-t80 F300 MO3 * x+50 * GO6 x+50 Y-t0 *

lSt tangent point Start of arc End of arc. A semicircle with R = 40 is formed.

Arc C quarter

circle

GO1 G41 X+10 Y+80 F300 MO3 * x-t.50 * GO6 X+80 Y+50 *

Different tangents Arc A

IS tangent point Start of arc End of arc. A quarter circle with R = 30 is formed.

GO1 G41 X+10 Y+80 F300 MO3 * x+50 * GO6 x+90 Y-t40 * GO1 G41 X+10 Y+60 F300 MO3 * X+50 Y-t80 * GO6 x+90 Y+40 * GO1 G41 X+50 Y+llO Y+80 * GO6 x+90 Y+40 * F300 MO3 *

Arc B

Arc C

Page P 40

Programming

Modes

HEIDENHAIN TNC 2500B

Polar Coordinates Fundamentals


The control also allows you to enter nominal positions in polar coordinates. In polar coordinates, the points in a plane are specified by the polar radius R (distance to the pole), and the polar angle H (angular direction). The pole position is entered with the I, J. K keys in Cartesian coordinates based on the workpiece datum.

Angle reference axis

The +X +Y +Z

angle axis in axis in axis in

reference axis (0 axis) is the the XY plane, the YZ plane, the ZX plane.

The machining plane (e.g. XY plane) is determined by a tool call. The sign of the angle H can be seen in the adjac~ ent figure.

Absolute polar coordinates

Absolute dimensions are based on the current pole. Example: Gil G90 R+50 H+40 *

Incremental coordinates

polar

A polar coordinate radius entered changes the last radius. Example: Gil G91 R+lO * An Incremental polar coordinate to the last direction angle. Example: Gil G91 H+15 *

incrementally

angle IPA refers

Mixing

Absolute and incremental coordinates may be mixed within one block. Example: Gil G90 R+50 G91 H+15 *

HEIDENHAIN TNC 2500B

Programming

Modes

Page P 41

Polar Coordinates Pole: I, J, K


Pole Before entering polar coordinates, the pole has to be defined with I, J, K. The pole can be defined at any point in the program before the first applrcation of polar coordinates. The pole is programmed in Cartesian coordinates, either as absolute or incremental dimensions. Pole in absolute dimensions: The pole is referenced to the workpiece datum. Pole in incremental dimensions: referenced to the last-programmed tion of the tool. The pole is nominal post-

The coordinates of the Dole are determined the working plane: Working XY YZ zx Example Transferring the pole G29 I+60 J-t30 * plane 1 Polar coordinates

by

I, J
Jr K K. I

The last programmed the pole with G29.

position

IS transferred

as

Directly transferring the pole in this manner is especially well suited for polygon shapes (see rllustration at right).

Example

GO1 X+26 Y+30 G29 Cl1 R+17 H-45 G29 Gil R+18 G91 H-35

POLE POLE

1 2

Modal effect

A pole defrnrtron remains valid in a program until it IS overwritten with another definition. The same pole therefore need not be programmed repeatedly.

Page P 42

Programming

Modes

HEIDENHAIN TNC 2500B

Polar Coordinates Straight lines: GlO/Gll


GlO/Gll For dimensions which are referenced to a rotatronal axis in some way, programming polar coordrnates than in Cartesian coordrnates because calculatrons are avorded. IS usually easier in

Range for polar angle

Input range for linear interpolation: H H positrve. counterclockwrse angle. H negative: clockwise angle.

absolute

or incremental

-360

to +360.

Example Program

Milling

an inside contour. *

G30 G17 X+0 Y+O Z-40 G31 G90 X+100 Z+O * G99 T2 L+O R-t2 * T2 G17 S200 * I+50 J+60 * GO1 G40 G90 X+15

Set POLE Approach starting point externally (Cartesian coordrnates) Plunge Approach lSt contour point with compensation (polar coordinates) 2d contour point Last contour point Depart from contour, cancel compensation Retract, return Jump to begtnnrng of program

Z-5

FlOO *

Gil G42 R+40 H-t180 F200 * G91 H-60 * H-60 * H-60 * G40 G90 X+85

Y+50 *

GO0 Z+50 MO2 *

*j The pole can also be programmed

in the block with Gil

HEIDENHAIN TNC 2500B

Programming

Modes

Page P 43

Polar Coordinates Circular arcs: GlO/Gll


Circular G12/G13 arc If the target point polar coordinates, polar angle H to is defined by the of the arc to the on the arc is programmed in you only have to enter the define the endpoint. The radius distance from the starting point programmed circle center I, J, K.

When programming a circle in polar coordinates, the angle H can be entered positively or negatively The angle H determines the endpoint of the arc. If the angle H the angle and should be the means that H rotation is also Range for polar angle Example is entered Incrementally, the sign of the sign of the rotating direction same. In the figure to the right, this IS negative and the direction of negative (G12).

Input range for circle interpolation: absolute or incremental -5400 to +5400. An arc with radius 35 and circle center X+50 Y+60 is to be milled. Rotating drrection is clockwise.

Program

G99 Tl L+O R.5 * Tl G17 S200 *


I+50 J+60 * Coordinates of circle center Plunge F200 M3 *Approach circle (circle radius is 35 mm) Circular movement clockwise

Z-5 Gil

FlOO * G41 R-t35 H+210

G12 H+O F300 *

In the example, a contour radius of 35 mm IS obtained from the distance between the POLE and the approach point on the circle.

Page P 44

Programming

Modes

HEIDENHAIN TNC 2500B

Polar Coordinates Tangential arcs: G16 Corner rounding: G25


Tangential G16 arc The endpoints of tangential arcs may be entered in polar coordrnates to simplify the programming of, for example, cams. The start of the arc is automatically when programming with G16. tangential

If the transition points are not calculated exactly, the arc elements could become jagged. Specify the pole CC before programming coordinates. in polar

Example

A straight line through 0 and 0 is to tangentially meet the arc to 0. The radius and direction angle of 0 with respect to I, J, K, are known. G99 Tl L+O R4 * Tl G17 S200 * I+65 J+20 * GO1 G41 X+10 X+20 Y-t60 * *
20 0

Program

Y+30 F500 MO3 *


30

G16 R+70 H+80

10

20

65

G25

Polar corners can also be rounded with the corner rounding function (see Circular Move ment, Cartesian, Corner rounding).

HEIDENHAIN TNC 2500B

Programming

Modes

Page P 45

Polar Coordinates Helical interpolation:


Helix

I, J, K + Gl2/Gl3

If 2 axes are moved simultaneously to descrtbe a circle in a main plane (XV, YZ, ZX). and a uniform linear motion of the tool axis is superimposed, then the tool moves along a helix (helical rnterpolation)

Applications

Helical interpolation can be used to advantage with form cutters for producing internal and external threads with large diameters, or for lubricating grooves. This can save you substantial tool costs.

Input

data

The helix IS programmed

in polar coordinates

First specify the POLE or circle center (e.g. I, J)

Angle

range

Enter the total angle of tool rotation for the polar angle H in degrees: H = number of rotations x 360 Maximum angle of rotation: + 5400 (15 cornplete rotatrons).

Height

The total height axis.

L (= Z) is entered

for the tool

Calculate the value from the thread pitch and the required number of tool rotations. Z=P.n, Z = total height/depth to be entered P = pitch n = number of threads The total height/depth can be entered in absolute or incremental dimensions

Thread

A complete thread can be programmed quite easily with Z and H; the number of threads IS then specified with a program section repeat REP.

Internal thread

Working direction

Rotating direction

Radius compensarron

Radius compensation

The radius compensation


l

depends

upon the

rotating direction (right/left), 0 type of thread (internal/external), l milling direction (positive/negative direction) (see table to the right).

t::-:;
left-hand External thread right-hand left-hand right-hand left-hand 1 ZWorking direction Z+ Z+ ZZ1 G13 Rotating direction G13 G12 G12 G13 1 G41 Radius compensation G42 G41 G41 G42

axis

Page P 46

Programming

Modes

HEIDENHAIN TNC 25006

Polar Coordinates Helical interpolation:


Input example Circle, polar, counterclockwise

I, J, K + G12/Gl3

Endpoint G13 G91 H+360 Task Z-t2 *

A right-hand Internal thread M64 x 1.5 IS to be produced in one cut with a multr-cutter tool. Thread pitch start end Number Overrun at start at end data : P = 1.5 mm a, = O a, = 0 = 360 of threads of threads: n, = 5 nl = l/2 n2 = l/2

Thread

Calculations

Total height: Z = P. n = 1.5 mm Incremental H = 360.

[5 + (2

l/2)] = 9 mm

polar angle: n = 360 [5 + (2

l/2)] = 2160 by 180?

Due to overrun of l/2 thread, the start of thread is advanced starting angle a, = a, + (-1807 = 0 + (-180) = -180

The overrun of l/2 thread at the start of thread gives the following Z = -P n = -1.5 mm [5 + l/2] = -8.25 mm

initial value for Z:

Program

O/o20 G71 * NlO G30 G17 X+0 Y+O Z-40 * N20 G31 G90 X+100 Y+lOO Z+O * N30 G99 Tl L+O R+5 * N40 Tl G17 SSOO * N.50 GO0 G90 Z+200 MO6 * N60 GO0 G40 X+50 Y-t30 * N65 G29 * N70 Z-8.25 MO3 * N75 Gil G41 R+32 H-180 FlOO * N80 G13 G91 H+2160 Z-t9 F200 * N90 GO1 G40 X+50 Y+30 * N95 GO0 Z+200 MO2 * N9999 O/o20 G71 *

Workpiece

blank definition

Tool defrnrtion Tool call Move to the tool change Move to hole center Define position as pole Downfeed in center Move to wall Helical movement Retract in XY Retract in Z

positron

Note

Helical interpolation

cannot be graphrcally

displayed

HEIDENHAIN TNC 2500B

Programming

Modes

Page P 47

Contour Approach and Departure Starting and end position


Selecting the I contour point Starting point Before beginning contour programming, compensation is to begin. specify the first contour point at which machining with radius

In the vicinity of the first contour point, define an uncompensated starting point that can be approached in rapid traverse, and be sure to consider the tool In use. The starting point must fulfill the following criteria:
l l l l

approachable wrthout collision near the ftrst contour point outsrde the material the contour WIII not be damaged

when

approaching

the first contour

point. function, also check that the

Direct

approach

When working on a circle (G26/G27) without the TNC approach/departure tool does not blemish the contour due to a direction change. 0 Not recommended Surface blemish due to change of Y-axis direction

Starting

points

0 Not recommended 0 Suitable 8 Optimal 0 Not recommended @ Not permitted! Radius compensation must remain switched for the starting position (G40). off Also for end point Lies on the extension of the compensated path Contour damage

End points

The same prerequisites apply for selecting the uncompensated end point as for the starting point. The ideal end point 0 lies on the extension last contour element G41. 0, 0 Not recommended of the

Surface blemish due to change of the X-axis direction Also for the starting point Lies on the extension of the compensated path Contour damage

0 Suitable 8 Optimal 0 Not recommended @ Not permitted!

Radius compensation must be switched departure from the contour (G40). Common starting and end point

off after
L

For a common starting and end point, select point 0 on the bisecting line of the angle between the first and last contour element.

Illustration -. -.programmed path traversed cutter center path

Page P 48

Programming

Modes

HEIDENHAIN TNC 2500B

Contour Approach and Departure Starting and end position


Approach The starting position must be programmed without radius compensation, t.e. wrth G40. The control guides the tool in a straight line from the uncompensated position 0 to the compensated position 0 of contour point 0. The tool center is then located perpendicular to the start of the first radius-compensated contour element.

Departure

At a transition from G41/G42 to G40. the control positrons the tool center in the last radius compensated block (G41) perpendicular to the end of the last contour section. Then the next uncompensated approached with G40. positron
IS

Approaching from an unsuitable position Departure

If radius compensation is begun from Sl, the tool will damage the contour at the first contour point if no extra measures are taken!

The same applies when contour.

departing

from the

HEIDENHAIN TNC 2500B

Programming

Modes

Page P 49

Contour Approach and Departure on a circle with radius R: G26/G27


Approach departure an arc G26/G27 and on The TNC enables you to automatically approach and depart from contours on a circular path.

Begin programming Approach

with the G26 or G27 key.

The tool moves from the startrng position 0 rnrtrally on a straight line and then on a tangentially connected arc to the programmed contour. The starting potnt can be selected as desired, is approached without radius compensation (with G40). The straight line positioning block to contour point 0 must contain radius compensation (G41 or G42). Then program a G26 block. and

Departure

The tool moves from the last contour point 0 on a tangentially connecting arc and then on a tangentially connecting straight line to the end positron 0 if a block with G27 IS programmed between 0 and Or The positioning block for 0 should radius compensatron (i.e. G40). not contain

Approach departure

arc/ arc

The radius R can be substantially less than the tool radius. It must be small enough to frt between 0 and 0 or 0 and 0. A feed rate exclusively for the approach and departure arc can be programmed separately the G26/G27 block GO0 G40 Xj Yj 25 GO1 G41 X,Y, G26 R2.5 FlOO X2 Y2 F500 F500 &41 Xj Y5 F200 G27 R2.5 FlOO G40 XE YE F500 GO0 Z+200

Feed rate

In

Program scheme

Notes A positroning block containing both coordinates of the machining plane must be programmed before and after the G26/G27 block Approach on an arc:

Program a G26 block after the first radius compensated position (G41/G42). Departure on an arc:

Program a G27 block after the last radius compensated position (G41/G42), or before the first uncompensated position following machining.

Page P 50

Programming

Modes

HEIDENHAIN TNC 2500B

Predetermined M Functions Constant contour speed: M90


Standard practice: automatic deceleration at corners For angular transitions such as internal corners and contours with G40, the axes are stopped briefly because an abrupt change of direction is not mechanrcally possible. This protects the machine defrnrtron of corners and results tn sharp not to stop at

For some tasks it is advantageous corners.

Example: The contour of a free-form surface produced with a large number of short linear movements. Here it is desirable to smooth the corners.

M90

The corners are smoothed if M90 is programmed In every block. The workpiece is smoother and can be machined faster. M90 prevents stoppage of the axes blockwise for G40 or rnternal corners.

Without

M90

Drawbacks

Greater strain on the machine at sharper changes of direction, until safety limit is reached (specified by the machine manufacturer).

Note

The exact execution depends on the machine parameters. Contact the machine manufacturer for more information.

With M90

HEIDENHAIN TNC 2500B

Programming

Modes

Page P 51

Predetermined M Functions Small contour steps: M97


If there is a step in the contour which is smaller than the tool radius, the standard transition arc would cause contour damage. The control therefore issues the error message TOOL RADIUS TOO LARGE and does not execute the corresponding posrtronrng block.

M97

M97 prevents insertion of the transrtion arc The control then determines a contour intersection 0 as at inside corners and guides the tool over this point. The contour is not damaged. However, machining is then incomplete and the corner may have to be reworked. A smaller tool may help. M97 is effective blockwise and must be programmed in the block containing the outside corner point.

Without

M97

Example

G99 Tl LO RlO * Tl G17 SlOO * GO1 G41 X+10 Y+30 F200 M3 * X+40 Y+30 M97 * x+40 Y+28 * X+80 Y+28 * X+80 Y+30 M97 * x+100 Y+30 * a a 0 8 0

With M97

M97

With M97

Page P 52

Programming

Modes

HEIDENHAIN TNC 2500B

Predetermined M Functions Terminating compensation: M98


Standard inside corner compensation On inside corners in a continuously radius-compensated contour, the tool moves only to the intersection of the equidistants (see top figure). The work cannot be completely machined at posrtions 0 and 6.

M98

The middle figure shows two independent workpieces. Positions 0 and 6%are not connected. The tool must therefore be guided to positions @ and @. If you program a posrtion with M98, the path offset remains valrd until the end of this element and is ended there for this block. No intersection is computed and no transition arc is generated for the end position, so the tool is always moved to a point perpendicular to the contour at its end point. The previous compensation IS reactivated matically in the following block @I. Position CDIS approached The contour and 0.
IS

autoto @I. at 0

perpendicularly machined

thus completely

Example

GO1 G41 X0 Y26 FlOO * X+20 Y+26 * X+20 Y+O M98 * x+50 Y+O * X+50 Y+26 * X+60 Y+26 *

0 0 0 6 0 @

Multipass with M98

milling

Multipass

mrllrng with infeeds

in Z

Example

G30 G17 X+0 Y+O Z-40 * G31 G90 X+100 Y-t100 Z+O * G99 Tl L+O R+5 * Tl G17 S200 * GO0 G90 Z+50 * G42 X+70 Y-10 MO3 * z-10 * Pre-positioning Tool-axis infeed

GO1 Y+llO F200 M98 * GO0 Z-20 * GO1 G41 Y+llO F200 * Y-10 M98 * GO0 Z+50 *

Mill one pass Second tool-axis infeed Pre-positioning Mill second pass Retract

HEIDENHAIN TNC 2500B

Programming

Modes

Predetermined Programming M91/M92


Standard behaviour Coordinates in positioning

M Functions machine-based
blocks are based on the workpiece

coordinates:
datum

Scale

datum

The position of the scale datum is determined by the reference marks. If the scale has only one reference mark, then the reference mark is the scale datum. If the scale has several - distance-coded reference marks, then the leftmost reference mark is scale datum (beginning of the measuring length) With the TNC 360 the scale datum point is the same as the machine datum point.

Machine M91

datum

The machine datum is required for the followrng: l Setting the traverse range limits (software limit switch)
l l

Traversing

to machine-based datum

positions

(such as tool change

positions)

Setting the workpiece If the coordinates

in positioning

blocks are based on the machine to the machine

datum,

enter M91 in these blocks display REF.

Coordinates

are displayed

referenced

datum with the coordinate

Additional machine reference point: M92

The machine The machine point.

builder builder

can also define an additional enters the distance

machrne-based

reference

point. machine reference

from the machine

datum to this additional

If the coordinates in these blocks.

tn positioning

blocks are based on this additional

machine

reference

point, enter M92

Page P 54

Programming

Modes

HEIDENHAIN TNC 2500B

Program Jumps Overview


Jumping within a program The following gram: 0 Program
l

jumps section call jump

can be made within repeat

a pro-

Examples:

L 4,3 * L 7,0 * Dll POl+Q5 PO2+0PO312 * DO9 POl+O PO2+0PO38 *

Subprogram Conditional Unconditional

jump

Nesting : A further program section repeat or subprogram can be called up from within a program section repeat or subprogram. Maximum nesting depth: 8 levels

Jumping another program

to

You can jump from one part program into any other program which is in the controls memory or on an external data storage medium. The jump into another program is programmed with a
l

Examples:

Program

call with PGM CALL or

I o/o3 *
l

Cycle G79, if another cycle was previously defined with G39 as a callable cycle.

G39 PO13 * G79 *

Nesting: You can call further gram. Maximum nesting

programs

from a called pro-

depth:

4 levels

GO1X+50 M99 *

HEIDENHAIN TNC 25006

Programming

Modes

Page P 55

Jumps Within a Program Program labels: G98


Labels Labels (program markers) can be set during programming to mark the beginning of a subprogram or program section repeat. These labels can be jumped to during program run (e.g. to execute the appropriate subprogram). O/o1G71 * NlO G30 G17 X+0 Y+O Z-40 * N20 G31 G90 X+100 Y+lOO Z+O * N30 G99 Tl L+O R+3 * N40 Tl G17 S500 * N50 G83 PO1 -2 PO2 -20 PO3 -6 PO4 0 PO5 120 * N60 GO0 G90 Z+50 MO6 * N70 G40 X+10 Y+20 MO3 * N80 z+2 * N90 L1.0 * NlOO X+20 Y+50 * NllO L1.0 * N120 X+10 Y-t80 * N130 L1.0 * N140 GO0 Z+50 MO2 * N150 N160 N170 Nl80 N190 N200 N210 N9999 G98 Ll * G79 * G98 L2 * GO0 G91 X+10 L2.5 * G90 * G98 LO * O/o1G71 *

Setting a label G98

A label is set with the G98. The label numbers 1 to 254 can be set only once in a program.

Label

Label number 0 always marks the end of a subprogram (see Subprogram) and is therefore the return jump marker. It can thus occur more than once in a program. Do not call label O!

M99 *

Calling a label number

With the L key you can: 0 call subprograms 0 create program section repeats.

Pecking cycle Refer to Fixed cycles for explanation

Label numbers (1 to 254) can be called as often as desired. Do not call label O!

Program repeats

section

For program

section

repeats,

enter the required

number

of repetitions

(e.g. L2.5)

Subprograms

For subprogram

calls, enter 0 as the number

of repetitions

(e.g. L1.0). or simply conclude

with End 0

Error

messages

JUMP TO LABEL 0 NOT PERMITTED This jump (LO) is not allowed. LABEL NUMBER Each label number ALLOCATED - except L 0 - can be allocated

(set) only once

in a given program

Page P 56

Programming

Modes

HEIDENHAIN TNC 2500B

Jumps Within a Program Program section repeats


Program repeats section Once a program section has been executed, it can be executed again immediately. This is called a program loop or program section repeat. A label number marks the beginning of the program section which is to be repeated. The end of the program section to be repeated designated by a call LBL CALL with the number of repetitions REP. A program times. Jump direction section can be repeated up to 65534 is N22 G98 L2 * N23 GO0 G91 X+100 N24 L2,S * M99 *

with

number

A called program section repeat is always executed completely, i.e. up to L. A program jump is therefore only meaningful if it is a return jump. The control executes the main program (along with the associated program section) until the label number is called. Then the return jump is carried out to the called program label and the program section is repeated. The number of remaining repetitions play is reduced by 1: L 215. After another return jump, the program repeated a second time. on the dis-

Program

run

section

is

N22 G98 L2 *

When all programmed repetitions have been performed (display: L 2/O), the main program is resumed. The total number of times a program section is executed is always one more than the programmed number of repeats.

N23 GO0 G91 X+10

M99 *

N24 L2,5 * .

Error

message

EXCESSIVE

SUBPROGRAMMING a jump incorrectly:

You programmed

You failed to enter the repetition value. The program section is treated as a subprogram without a correct ending (G98 LO): the label number is called eight times. During program run or a test run the error message appears on the screen after the eighth repetition.

HEIDENHAIN TNC 25008

Programming

Modes

Page P 57

Jumps Within a Program Program section repeats


Setting the program label Example: Program label 1 is set.

Repeating a program section after a label

6 repetitions from G98 Ll. The program section between is executed a total of 7 times.

G98 Ll and L 1.6

Example bolt-hole

row

The illustrated bolt-hole row with 7 identical bores is to be drilled with a program section repeat. The tool IS pre-positioned (offset to the left by the bore center distance) before starting the repeat to simplrfy programming.

Program

G99 Tl L+O R2.5 * Tl G17 S200 * GO0 G40 G90 X-7 Y-t10 Z+2 MO3 *

Tool definition Tool call Pre-positioning

G98 Ll* G91 X+15

* FlOO *

GO1 G90 Z-10 GO0 Z+2 * L1,6 * Nesting of repetitions

Start of the program section repeat Incremental distance between the bores, rapid traverse Absolute drilling depth, drilling feed rate Absolut retraction height, rapid traverse Call for repeats

The main program is executed until the jump to G98 L17 (L17.2). The program sectton between G98 L17 and L17.2 is repeated twice. The control then resumes the main program until the Jump to G98 L15 (L15.1). run

OG -

G98 L15

z &-

0 Oz 0 Oz 0
l-17.2
G98 L17

0 z0+ 0 goa L15.1


q

The program section up to L15.1 is repeated once and the nested program section also two more times Then the program run is continued

Of=
0

=O - I
0 I

Page P 58

Programming

Modes

HEIDENHAIN TNC 2500B

Jumping Within Subprograms


Subprograms

a Program

If a program section occurs several times in the same program, it can be designated as a subprogram and called whenever requrred. This speeds up programming. The start of the subprogram IS marked label number (can be any number). The end of the subprogram label 0. with a N14 N15 N16 N17 N18 N19 N20 N21 N22 N23 N24 N25 Ll,O GO1 Ll,O X+10 Ll,O GO0 G98 G79 G98 GO0 L2,5 G98 * X+20 Y+50 * * Y-t80 * * G40 Z+50 MO2 * Ll * * L2 * G91 X+10 * LO *

Start of subprogram End of subprogram

is always marked

by

The different subprograms are then called in the main program as often as wanted and in any sequence.

M99 *

No repetitions

For a subprogram call with the L key, the block IS concluded after the label number with END 0. A subprogram can be called at any point in the main program (but not from wrthin the same subprogram).

Program

run

The control subprogram

executes call 0.

the main program

until the

A jump to the called program performed. Subprogram 1 is executed of subprogram).

label 0 is then D il,O * 9 GOlX...Y...

until G98 LO (0) (end

Then the return jump to the main program follows The main program is resumed with the block @ following the subprogram call. MO2 * D G98 Ll *

G98 LO *

Subprograms should be placed after the main program (behind M2 or M30) for the sake of clarity If a subprogram is placed within the main program, it is also executed once during program run without being called. Error messages If a subprogram message EXCESSIVE appears. call programmed incorrectly (e.g. an end of subprogram lacks G98 LO), the error

IS

SUBPROGRAMMING

HEIDENHAIN TNC 25006

Programming

Modes

Page P 59

Jumps Within Subprograms


Entry example: Subprogam

a Program

%l G71 *
2 :

L2,O *

Subprogram program.

2 is called from within

the main

GO0Z+lOO MO2 * G98 L2 *

Retract and return jump to start Start of subprogram 2

G98 LO * N9999 %I G71 *

End of subprogram End of main program

Example

A group of four bores is to be programmed as subprogram 2 and executed at three different positions.

Program

G99 Tl L+O R+2.5 * Tl G17 S200* G83 PO1-2 PO2-20 PO3-10 PO40 PO5100 * GO0 G40 G90 X+15 Y+lO MO3 * z+2 * L2,O * X+4.5 Y+60 * L2,O * x+75 Y+lO * L2,O * Z+50 MO2 * G98 L2 * G79 * G91 X+20 M99 * Y-i-20 M99 * X-20 M99 * G90 * G98 LO *
Define pecking cycle

Approach

bore group 0

Subprogram

call

Approach bore group 0 Subprogram call Approach bore group 0 Subprogram call Retract tool axis Start of subprogram Call peck dnllrng cycle Incremental traverse, drill Incremental traverse, drill Incremental traverse, drill Switch to absolute dimensions End of subprogram M99 = blockwise cycle call

Cross-reference

You will find an explanation

of the peck drilling

cycle in the section Fixed cycles

Page P 60

Programming

Modes

HEIDENHAIN TNC 25006

Jumps Within a Program Nesting subprograms


Nesting subprograms The main program is executed command L17.0 is reached. until the jump

O/o12 * G71 L17,O* MO2 * G98 L17 * id,,,0 * &98 LO * G98 L20 * L53,o * &98 LO * G98 L53 * b98 LO * N9999 %12 G71 *

The subprogram beginning with G98 L17 is subsequently executed until the next call L20. which is then run until L53.0. The lowest nested subprogram until its end (G98, LO). At the return grams finally 53 is run through

end (G98 LO) of the last subprogram (53). jumps are made to the preceding subpro(20 and 17). until the main program is reached.

The main program is then taken up again at the point immediately following the call L17.0. A subprogram call is considered executed when the first G98 LO is reached!

Repeating subprograms

You can execute subprograms the nesting technique:

repeatedly

with

Subprogram 50 is called in a program section repeat. This subprogram call is the only block in the program section repeat. Remember: the subprogram will be executed more time than the programmed number of repeats. one

G98 L5 * L50,O * L5,9 *

M2 *
the

Error message

If too many nesting levels were programmed, error message EXCESSIVE SUBPROGRAMMING appears.

G98 L50 *

G98 LO *

HEIDENHAIN TNC 2500B

Programming

Modes

Page P 61

Jumps Within a Program Example: Hole pattern with several tools


Task This task is similar to the example of the group of four bores at three different positions (see chapter Jumps Wrthrn a Program, section Subprogram) except that here three different tools and machining processes are to be used. You will find an explanation of the pecking and tapping cycles in the chapter Fixed cycles. O/o183 G71 NlO G30 N20 G31 N30 G99 N40 G99 N50 G99 Countersink * G17 G90 T25 T30 T35

Note

X+0 Y+O Z-20 * X+110 Y+lOO Z+O * L-t0 R+2.5 * L-t0 R+3 * L+O R+3.5 *

N60 G83 PO1 -2 PO2 -3 PO3 -3 PO4 0 PO5 100 * N70 T35 G17 SlOOO *

N80 GO0 G90 Z+50 MO6 * N90 L1.0 * Pecking NlOO G83 PO1 -2 PO2 -25 PO4 0 PO5 50 * NllO T25 G17 S2000 * N120 GO0 Z+50 MO6 * N130 Ll,O * N140 G84 PO1 -2 PO2 -15 PO3 0 PO4 100 * N150 T30 G17 S250 * N160 GO0 z+50 MO6 * N170 Ll,O * N180 GO0 G40 Z+50 MO2 * 1 N190 N200 N210 N220 N230 N240 N250 N260 N270 Subprogram 2 N280 N290 N300 N310 N320 N330 N340 G98 G79 G91 Y+20 X-20 GO0 G98 L2 * * X+20 M99 * M99 * M99 * G90 * LO * G98 G40 Z+2 L2,O X+45 L2,O X+75 L2,O G98 Ll * X+15 Y+lO * * Y+60 * * Y+lO * * LO * MO3 * PO3 -6

Tool change Call: subprogram

Tool change

Tapping

Tool change Retract spindle axis, jump to start of program

Subprogram

Approach hole pattern 0 Move to setup clearance Call: subprogram 2 Approach hole pattern 0 Approach hole pattern 0

Cycle call (countersrnk, peck drill, tap) M99 = blockwise cycle call

N9999 O/o183 G71 *

Page P 62

Programming

Modes

HEIDENHAIN TNC 2500B

Jumping Example:
Task

Within a Program Horizontal geometric

form

The adjacent geometric contour is to be machined from a cuboid with an end mill which IS to be advanced stepwise in the Y direction by a program section repeat. The contour is divided into two halves along the line of symmetry to simplify the working procedure. The contour IS to be machined upwards. In addition to the adjacent length is specified with: Y = 100 mm. dimensions, the cuboid

Program procedure

The adjacent figure schematically shows the cutter center path and the associated program blocks. The entire contour is divided into a left and right half and is machined in the two program section repeats. The program runs without radius compensation, i.e. the cutter center path is programmed. To obtain the desired contour, the tool radius must be subtracted on the left side and added on the right side (at1 X coordinates).

%90007685 G71 * N10 G30 G17 X+0 Y+O Z-70 * N20 G31 G90 X+100 Y+lOO Z+O * N30 G99 Tl L+O R+lO * N40 Tl G17 SlOOO * N50 GO0G90 Z+20 MO6 * N60 G40 X-20 Y-l MO3 *
Program section repeat 1

N70 G98 Ll * N80 Z-51 * N90 GO1X+1 FlOO * NlOO X+11.646 Z-20.2 * NllO GO6X+40 Z+O * N120 GO1X+41 * N130 GO0Z+lO * N140 X-20 G91 Y+2.5 * Nl50 GO0 G90 * N160 L1,40 * N170 GO0Z+20 * N180 x+120 Y-l *

@ @ 0 63

Approach

starting

point for left side

lnfeed in Y axis Program section is executed 41 times

Retract spindle axis Approach starting point for right side

Program section repeat 2

N190 G98 L2 * N200 Z-5i * N210 GO1X+99 FlOO * N220 X+88.354 Z-20.2 * N230 GO6X-t-60 Z+O * N240 GO1X+.59 * N2.50GO0Z+lO * N260 X+120 G91 Y+2.5 * N270 GO0 G90 * N280 L2,40 * N290 Z+20 MO2 * N9999 %90007685 G71 *

8 0 0 0
lnfeed It- Y axis Program section is executed 41 times

Retract spindle axis, jump to start of program Programming Modes Page P 63

Program

Calls

Jumping another program

to main

You can call another program which is stored in the control from any machining This allows you to create your own fixed cycles with parametric programming. Program the call with a % key.

program.

Calling criteria

The program to be called cannot contain MO2 or M30. In the called program, do not program a jump back to the original program (creates an endless loop). Only one BLK FORM can exist. Tool numbers may be assigned only once. The control executes main program 1 up to the program call %28. Then a jump IS made to main program 28. Main program end. 28 is executed from beginning to
%l G71 *

Process

Then a return jump is made to main program 1. Main program 1 is resumed with the block following the program call.

%28 o--

G71 *

\ 0 N9999 %l 0 =-- N9999 0 %28

/ ~ 0 G71 0

-0 G71 -

mple

1 Call with a separate program line

Example

The program to be called can also be specified with a cycle definition. The call then functions like a fixed cvcle.

G39 PO112 *

Call e.g. via M99 (see Cycle G39)

Conditional jumps

A label call can be made dependent Overview, Basic functions).

on a mathematical

condition

(see Parametric

Programming,

Page P 64

Programming

Modes

HEIDENHAIN TNC 2500B

Standard Cycles Introduction, Overview


Standard cycles To facilitate programming, frequently recurring machining sequences (drilling and milling jobs) and certain coordinate transformations are preprogrammed as standard cycles. The machine manufacturer can also store his own programs as cycles in the control. These cycles can be called under the cycle numbers 68 to 99. Contact the machine manufacturer for more information.

Machine builder cycles

Selecting a cycle

After selecting the appropriate G-function and pressing the ENT key, data for the cycles shown to the right can be entered and also any programmed user cycles can be selected.

Cycle

83 84 74 75176 77/78 79 73 56 57 58/59

Pecking Tapping Slot milling Rectangular pocket Circular pocket Program call Contour geometry Pilot drilling Rough-out Contour milling

Effective after call 0 0 0 0 0 0

Effective immediately

0 0 0 0

Calling a fixed cycle

Cycles must be called after moving the tool to the appropriate position - only then will the last defined cycle be executed.

Cycle

Effective after call

Effective immediately : 0 0 0 0

There are three ways to call a cycle:

G79 M99 M89


Coordinate transformations HEIDENHAIN TNC 2500B

With the cycle call function

G79

Via the miscellaneous function M99. G79 and M99 are only effective blockwrse and must therefore be reprogrammed for every execution. Via the miscellaneous function M89 (depending

ii $ .P $-ii eij, E 82 s z e

54 28 73 72 04 ::

Datum shift Mirror image Rotating the coordinate system Scaling Dwell time Spindle Program call orientation parameters) posrtionrng

on machine

M89 M89

is effective modally, i.e. the last programmed cycle is called at every subsequent is cancelled or cleared by M99, G79 or by newly defining a fixed cycle. transformations and the dwell time are effective immediately and remain

block.

Coordinate ged.

effective until chan-

Programming

Modes

Page P 65

Fixed Cycles Preparatory measures


Prerequisites The following must be programmed cycle call (e.g M99).
l

before a

Tool call: to specify the spindle spindle speed Positioning block to the startrng

axis and the posrtion

Tl . . . . . .

Dimensions

In the cycle definition, dimensions for the tool axes are to be entered incrementally, referenced to the tool positron at cycle call. All infeeds negative). must have the same sign (usually

GO G90 X . . . Y . . . M3 * G83 . . . . . . Z ... + M99 *

Entering values

Enter all values as requested and confirm entry with ENT You must respond to every dialog query by entering a value! Conclude entry with END 0.

Page P 66

Programming

Modes

HEIDENHAIN TNC 2500B

Fixed Cycles Pecking : G83


Function A hole is drilled wrth multiple infeeds, each followed by a complete retraction. lnfeed value signs: - for negative working direction l + for positive working direction
l

input

data

All infeeds

must have the same sign A: distance between tool trp and workprece surface. between the workof the hole (tip of

Setup clearance (starting posrtion)

Total hole depth B: distance piece surface and the bottom the drill taper). Pecking depth

C: the infeed per cut. at the bot

Dwell time: the time the tool remains tom of the bore hole for chip breaking. Feed rate F: traversing infeed. speed

of the tool during

Process

0 The tool must be positioned to the setup clearance with a separate block, before the cycle call. l The tool drills from the starting position to the first pecking depth at the programmed feed rate. l After reaching the first pecking depth the tool is retracted in rapid traverse to the starting position and advanced agarn to the first pecking depth, minus the advanced stop distance t. 0 The tool then advances by another infeed at the programmed feed rate, returns again to the starting position etc. 0 Drilling and retraction are performed alternately until the programed total hole depth is reached. l After the dwell time at the hole bottom, the tool is retracted to the starting position in rapid traverse.

Advanced stop distance

The advanced stop distance computed by the control:


l

IS

automatically

For a total hole depth up to 30 mm: t = 0.6 mm; For a total hole depth over 30 mm: t = total hole depth/50, whereby the maximum advanced stop distance is limited to t,,, = 7 mm.

HEIDENHAIN TNC 25008 Programming Modes Page P 67

Fixed Cycles Pecking : G83


Defining the cycle

Operating

mode Specify setup clearance Enter the sign correctly (normally positrve) Confirm entry

SET UP CLEARANCE ?

TOTAL HOLE DEPTH ?

Specify hole depth Enter the sign correctly (normally negative) Confirm entry

PECKING DEPTH ?

Specify pecking

depth

Enter the sign correctly (normally negative) Confirm entry of the

DWELL TIME IN SECS. ?

Enter the dwell time at the bottom hole (zero for no dwell time) Confirm entry

FEED RATE ? F =

Enter the feed rate for pecking Confirm entry

The signs for setup clearance, negative)!

total hole depth and pecking

depth are all the same (normally

Page P 68

Programming

Modes

HEIDENHAIN TNC 25006

Fixed Cycles Pecking : G83


Remarks 0 The total hole depth can be programmed equal to the pecking depth. The tool then traverses In one work step to the programmed depth (e.g. for centering). 0 The total depth need pecking depth. In the will only be advanced the programmed hole
l

not be a multrple of the last work step, the tool the remaining distance to depth.

If the specified pecking depth is greater than the total hole depth, drrllrng IS only performed to the programmed total hole depth. The above also applies to other fixed cycles.

Example

Drill 2 holes (depth pecking cycle. G99 Tl L+O R3 * Tl G17 S200 * G83 PO1 PO2 PO3 PO4 PO5 -2 -20 -10 2 80 *

20 mm) with the standard Tool definition and call Setup clearance Total depth Pecking depth Dwell time Feed rate

GO0 G40 X+20 Z+2 M99 * X+80

Y+30 MO3 *

Pilot positroning, IS hole, cycle call

spindle

on

Y+50 M99 *

2d hole, cycle call

HEIDENHAIN TNC 2500B

Programming

Modes

Page P 69

Fixed Cycles Tapping with floating tap holder: G84


Function The thread IS cut In one operation

A floating tap holder is required for tapping. It must compensate for the tolerances between the feed rate, speed and the tool geometry as well as spindle run out after the positron is reached. Spindle speed override IS inactive after a cycle call; the feed rate override is only active over a limited range (set by the machine manufacturer via machine parameters). Input data Setup clearance (startrng positron) ard value: approx. sign depends on A: distance between tool tip and workpiece surface (stand4 x thread pitch). The preceding the working direction.

Total hole depth B (= thread length): distance between workpiece surface and end of thread. The signs for setup clearance and total hole depth are the same (usually negative). Dwell time: enter either the time between tool, or 0. This time IS machine-dependent. Feed rate/ thread pitch Feed rate F: traversing Determining the required F=SxP F: feed rate S: spindle speed P: thread pitch reversing the direction of spindle rotation and retracting the

speed of the tool during feed rate:

tapping

The thread pitch is determined indirectly by the spindle speed specified of the cycle (see index A, General Information, Cutting Data). Process Once the tool has reached the total hole depth, the direction of spindle rotation is reversed within a time period set by machine parameters. At the end of the programmed dwell time, the tool is retracted to the starting position. The spindle direction is reversed again in the retracted position Input Example Same as for Pecking Tap an M6 hole wtth 0.75 mm pitch at 100 rpm

in the tool call and the feed rate

G99 Tl L+O R3 * Tl G17 SlOO* G84 PO1-3 PO2-20 PO30.4 PO475 * GO0G40 X+50 Y+20 MO3 * Z+3 M99 *

Tool definition and call Setup clearance Thread depth Dwell time Feed rate Pilot positronrng, Cycle call spindle right

Page P 70

Programming

Modes

HEIDENHAIN TNC 2500B

Fixed Cycles Slot milling: G74


The cycle The slot milling finishing cycle. cycle is a combined roughing/

The slot IS parallel to one axis of the current coordinate system (rotation with cycle G73, if desired). Tool required The cycle requires a center-cut (IS0 1641). The cutter diameter smaller than the slot width. Setup clearance (starting positron) end mill must be slightly

Input

data

A: distance between tool tip and workpiece surface.

Milling depth B: (= slot depth): distance between work surface and bottom of slot. Pecking depth C: penetrating tool Into the workpiece. distance of the

The signs for setup clearance, milling depth and pecking depth are all the same (usually negative) Feed rate for pecking: tool during penetration. traversing speed of the

lSf side length D: slot length (finished size). Sign depends on the first direction of cut parallel to the longrtudrnal axis of the slot. 2d side length E: slot width, the tool radius (finished size). Feed rate: traversing machrnrng plane. maximum 4 times

speed of the tool in the

Roughing process

The tool penetrates the work from the starting position. The slot is then milled In the longitudrnal direc tron. After downfeed at the end of the slot, mrlling is in the opposite direction. The procedure is repeated until the programmed milling depth is reached.

Finishing process

The control advances the tool in a semicircle at the bottom of the slot by the remaining finishing cut and down-cut mrlls the contour (with M3). The tool is subsequently retracted in rapid traverse to the setup clearance. If the number of infeeds was odd, the cutter returns along the slot at the setup clearance to the starting positron in the main plane.

HEIDENHAIN TNC 2500B

Programming

Modes

Page P 71

Fixed Cycles Slot milling: G74


Example A horizontal slot with length 50 mm and width 10 mm as well as a vertical slot with length 80 mm and wrdth 10 mm are to be milled.

Cycle definition

N50 G74 PO1 PO2 PO3 PO4 PO5 PO6 PO7

-2 -20 -5 80 x-50 Y+lO 100 *

Definition of the horizontal slot Setup clearance Milling depth Pecking depth Feed rate for pecking Length of slot and frrst milling direction Slot width Feed rate

(-1

Starting

position

N60 GO0 G40 G90 X+76

Y+15 M3 *

NT0 Z+2 M99 *

Approach starting position without compensation, taking the tool radius into account in the longitudinal direction of the slot; spindle on Pre-positioning in Z, cycle call Definition of the vertical slot Setup clearance Milling depth Pecking depth Feed rate for pecking Slot length and first milling direction Slot width Feed rate Approach starting position, cycle call Retract In tool axis, end of program

N80 G74 PO1 PO2 PO3 PO4 PO5 PO6 PO7

-2 -20 -5 80 Y+80 X+10 100 *

(+)

N90 X+20 Y+14 M99 * NlOO Z+50 M2 * N9999 %5501 G71 *

Page P 72

I
I

Programming

Modes

HEIDENHAIN TNC 2500B

Fixed Cycles Rectangular pocket milling:


The cycle The rectangular cvcle. pocket milling cycle IS a roughing

G75/G76

Tool required

The cycle requires a center-cut end mill (IS0 1641). or pilot drilling at the pocket center The tool determines the radius at the pocket corners. There is no circular movement in the pocket corners.

Position

The pocket sides are parallel to the coordinate system axes; the coordinate system may have to be rotated (see G73: Rotating the coordinate system).

Input

data

Setup clearance A: distance between tool tip (starting position) and workprece surface. Milling depth B (= pocket depth): distance between workpiece surface and bottom of pocket. Pecking depth C: distance by which the tool penetrates the workpiece. The signs for setup clearance, milling depth and pecking depth are all the same (usually negative). Feed rate for pecking F,: traversing speed of the tool at penetration. IS side length D: pocket length parallel to the first main axis of the machining plane. The sign is always positive. 2d side length E: pocket width; the sign is always positive. Feed rate F,: traversing speed of the tool in the machining plane. Direction Climb G75: of the milling path: milling FMAX la

milling (down cut) counterclockwise, down-cut with M3

Conventional milling (up cut) G76: clockwise, up-cut milling with M3

Starting position Process

The starting position S (pocket center) must be approached without radius compensation in a preceding positioning block.
l

The tool penetrates the work from the starting position (pocket center). 0 The cutter then follows the programmed path at feed rate F2. The axis side the starting direction of the cutter is the positive direction of the longer side, i.e. if this longer is parallel to the X axis, the cutter starts in posrtrve X direction. Y direction

The cutter always starts It- the positive on square pockets. HEIDENHAIN TNC 2500B

Programming

Modes

Page P 73

Fixed Cycles Rectangular pocket milling:


Process The milling drrectron depends on the programming (here, G76). The maximum stepover is k. The process is repeated until the programmed milling depth is reached. On completion, ing position. the tool is withdrawn to the start

G75/G76

Stepover

Stepover k is computed by the control to the followrng formula: k=FxR

according

k: stepover F: the overlap factor specified by the machine manufacturer (depends upon a machine parameter, see index A General Information, MOD Functions, User parameters) Fi: cutter radius

Example

G99 Tl L+O R5 * Tl G17 S200 * G76 PO1 -2 PO2 -30 PO3 -10 PO4 80 PO5 X+80 PO6 X+40 PO7 100 * Setup clearance Milling depth Pecking depth Feed rate for pecking 1 side length of the pocket 2d side length of the pocket Feed rate Y+3.5 M3 * Pre-positioning spindle on Pilot positioning cvcle call in X, Y,

GO0 G40 X+45

Z-i-2 M99 *

in Z,

Page P 74

Programming

Modes

HEIDENHAIN TNC 2500B

Fixed Cycles Circular pocket milling:


The cycle The circular cycle. pocket milling cycle is a roughing

G77/G78

Tool required

The cycle requires a center-cut end mill (IS0 1641) or pilot drilling at the pocket center S. Setup clearance A: distance between tool trp (starting position) and workpiece surface. Milling depth B (= pocket depth): distance between workprece surface and bottom of pocket. Pecking depth C: amount by which the tool penetrates the workpiece. The signs for setup clearance, milling depth and pecking depth are all the same (usually negative) Feed rate for pecking F,: traversing speed of the tool at penetration. Circle radius R: radius of the circular pocket. Feed rate Fp: traversing speed of the tool in the machining plane. Direction of the milling path: Conventional milling (up cut) G77: clockwise, up-cut milling with M3 Climb G78: milling (down cut) counterclockwise, with M3

Input

data

down-cut

milling

Starting position

The starting positron S (pocket center) must be approached wrthout radius compensation in a preceding positioning block.
l

Process

The tool penetrates the work from the starting position (pocket center) at the feed rate for peckrng. The cutter then follows the programmed spiral path at feed rate F2. The dtrectron of the path depends upon the programming (here, G78). direction of the cutter is for the

The starting
l l l

XY plane the Y+ direction, ZX plane the X+ direction, YZ plane the Z+ direction.

IF2

The maximum stepover is the value k (see Rectangular Pocket Milling). The process milling depth
IS

repeated until the programmed is reached. the tool is withdrawn

When milling is completed, to the starting position.

HEIDENHAIN TNC 2500B

Programming

Modes

Page P 75

Fixed Cycles Circular pocket milling:


Example A circular pocket with radius 35 mm and depth 20 mm IS to be milled at position X+60 Y+50.

G77/G78

G99 Tl L+O RlO * Tl G17 S200*

G77 PO1-2 PO2-20 PO3-6 PO480 PO5+35 PO6100 * GO0 G40 X+60 Y-c.50MO3 * Z+2 M99 *

Setup clearance Milling depth Pecking depth Feed rate for pecking Circle radius Milling feed rate Pre-positioning in X and Y

..

Starting

position

in Z, cycle call

Page P 76

Programming

Modes

HEIDENHAIN TNC 2500B

SL Cycles Fundamentals
The group of cycles that we categorize as SL cycles is designed for efficient programming and milling of contours with one or more tools. The contour can be composed of several overlapping subcontours which are defined in separate subprograms. PILOT DRILLING: The term SL cycles is derived from the characteristic Subcontour List of cycle G37 CONTOUR GEOMETRY, in which the list of subprograms is filed. The control superimposes the separate contours to form a single whole. The programmer need not calculate the points of intersection! To be able to work with several tools, the machining task is defined in cycle G37 without toolspecific data or feed values; those are entered in the individual cycles: G56 Pilot drilling (If required) G57 Rough-out G58/G59 Contour mrllrng (finishing) Each subprogram must specify whether G41 or G42 radius compensation applies and in which direction the contour is to be machined. The control deduces from these data whether the specific subprogram describes a pocket or an island. The control The control Scheme of a program with SL cycles recognizes recognizes a pocket if the tool path lies inside the contour. an island if the tool path lies outside the contour.

Be sure to run a graphic simulation before executing computed by the control as desired. All coordinate transformations formations, Overview). are allowed

a program

to see whether

the contour

was Trans-

In programming

the contours

(see Coordinate

Not all of the SL cycles are always required For easier famtltanzation. the followrng examples progressively to the full range of functions. begin with only the rough-out cycle and then proceed

HEIDENHAIN TNC 2500B

Programming

Modes

Page P 77

SL Cycles Contour geometry: Rough-out: G57


Contour geometry:

G37
r

G37

The label numbers (subprograms) of the subcontours are specified in cycle G37 contour geometry. Up to 12 label numbers can be entered. The TNC computes the intersections of the resulting contour from the subcontours. Cycle G37 is immediately effective after definition (this cycle cannot be called). The list of subcontours in cycle G37 should begin with a pocket.

FA cl
D A B
11. 12 and 13 define the in the example. is desired and if the tool must

A, B = Pockets C, D = Islands

Example

NS G37 PO111 PO212 PO313 *

The subprograms complete contour

Rough-out:

G57

Cycle G57 specifies the cutting path and partitronrng. It must be called, and can be executed separately.

Tool required

Cycle G57 requires a center-cut end mill (IS0 1641) if no pilot drilling repeatedly jump over contours and plunge to the milling depth.

Input

data

Setup clearance (A), milling depth (B), pecking depth (C) are incremental with the same signs (usually negative). Feed rate for pecking: tool at penetration (Fl). traversing speed of the

Finishing allowance: allowance in the machining plane, positive value (D). If a negative allowance is entered, pockets will be milled too large by twice the allowance, while islands will be milled too small by the same amount. Rough-out angle: roughing out direction relative to the reference axis of the machining plane. Feed rate: traversing speed of the tool in the machining plane (F2). The tool must be positioned at the setup clea rance (A) before the cycle call.

Example

N16 G57 PO1-2 PO2-20 PO3-10 PO440 PO5t-1 PO6+0 PO760 *

Setup clearance Milling depth Pecking depth Feed rate for penetration Finishing allowance Rough-out angle Feed rate in the working

plane

Page P 78

Programming

Modes

HEIDENHAIN TNC 2500B

SL Cycles Rough-out:
Process

G57

The tool is automatically positioned over the first penetration point (with finishing allowance). It may be necessary to pre-position the tool before the call to prevent collision. The tool penetrates at the feed rate for pecking.

Milling the contour

After reaching the first pecking depth, the tool mills the first subcontour at the programmed milling feed rate with the frnrshing allowance. At the penetration point, the tool is advanced to the next pecking depth. This process is repeated unttl the programmed milling depth is attained. Further subcontours are milled in the same manner.

Clearing the area

The area is then roughed out, the tool skipping over islands as follows: the tool retracts in rapid traverse to the setup clearance and moves to the next calculated penetration point. The tool then penetrates behind the island in the pre-milled channel at the feed rate for pecking. The feed direction corresponds to the programmed roughout angle and can be set, so the resulting cuts are as long as possible with few cutting movements. The stepover equals the tool radius. Clearing out can be performed with multiple downfeeds. The tool is retracted end of the cycle. to the setup clearance at the

D = Finishing allowance E = Stepover a = Rough-out angle

Sequence contour milling/ area clearance

A machine parameter determines whether the contour is milled first and then the area cleared or vice versa. In the same way is specified whether contour milling or roughing out is performed continuously over all infeeds, or for each infeed in the specified sequence.

Climb/ conventional

A machine parameter also determines whether the contour is milled conventionally or by climb cutting (see index A General Information, MOD Functions, User parameter MP 7420). Begin with contour milling

-.-. 7 .-. -d L-, -.-. nc)


Begin with surface clearing Page P 79

HEIDENHAIN TNC 2500B

Programming

Modes

SL Cycles Roughing-out
Task Rectangular

a rectangular
radius pocket with rounded

pocket

pocket with rounding of rectangular

Interior machrnrng radius 5 mm.

corners,

with a center-cut

end mill (IS0 1641). tool

60
bO@

a w

LBLl-.

L
PGM %7206 O/o7206 G71 * NlO G30 G17 X-20 Y-20 Z-40 * N20 G31 G90 X+120 Y+120 Z+O * N30 G99 Tl L-t0 R+5 * N42 Tl G17 SlOOO * N50 GO0 G90 Z+lOO MO3 * N60 G37 PO2 N70 G57 PO1 PO4 PO7 N80 G40 X+40 1* -2 PO2 -20 PO3 -8 100 PO5 +0 PO6 +0 500 * Y+50 Z-t2 M99 * Blank min. point Blank max. point Tool definition Tool call

List of contour subprograms Definition for rough-out

Pre~positionrng,

cycle call

N90 GO0 G40 Z-t20 MO2 * NlOO NllO N120 N130 N140 N150 N160 N170 N180 N190 N200 N210 N9999 G98 Ll * G41 X+40 Y+60 * X+15 * G25 R12 * Y+20 * G25 R12 * x+70 * G25 R12 * Y+60 * G25 R12 * X+40 * G98 LO * O/o7206 G71 *

Retract, return jump to start of program Contour subprogram Radius compensatron IS G41 (RL) and tool path is counterclockwise, the control therefore deduces: pocket.

0 0 0 @ 0 @

PGM %7207

creates a contour

island with identical

dimensions

Page P 80

Programming

Modes

HEIDENHAIN TNC 2500B

SL Cycles Roughing-out
Task Rectangular

a rectangular
radius. Island with rounded

island

island with rounding of rectangular

Exterior machining radius 5 mm

corners,

with a center-cut

end mill (IS0 1641). tool

YA 6o o/
-- LBL 1

15

I 70

PGM %7207

O/o7207 G71 * N10 G30 G17 X+0 Y+O Z-40 * N20 G31 G90 X+100 Y+lOO Z+O * N30 G99 Tl L+O R-t5 * N40 Tl G17 Slll * N50 GO0 G90 Z+lOO MO3 * N60 G37 PO1 N70 G57 PO1 PO4 PO7 N80 G40 X+40 2 PO2 1 * -2 PO2 -20 PO3 -8 100 PO5 +0 PO6 +0 500 * Y-t50 Z+2 M99 *

Blank

Tool List of contour subprograms Definition for rough-out (sequence!)

Pre-positioning,

cycle call

N90 GO0 G40 Z+20 MO2 * NlOO NllO N120 N130 N140 N150 N160 N170 N180 N190 N200 N210 N220 N230 N240 N250 N260 N270 N280 N9999 G98 G42 X+15 G25 Y+20 G25 x+70 G25 Y+60 G25 X+40 G98 Ll * X+40 Y+60 * * R12 * * R12 * * R12 * * R12 * * LO * 0 0 0 6 0 63

Retract, return jump to start of program Radius compensation is G42 (RR) and tool path is counterclockwise, the control therefore deduces: island.

G98 L2 * G41 X-5 Y-5 * X+105 * Y+105 * X-5 * Y-5 * G98 LO * O/o7207 G71 * creates a contour pocket with identical

Auxiliary pocket to externally the machined surface

limit

PGM %7206 HEIDENHAIN TNC 25008

dimensions.

Programming

Modes

Page P 81

SL Cycles Overlaps
Overlapping pockets and islands Pockets and islands can be overlapped (superimposed). The resulting contour is computed by the TNC. The area of a pocket can, for example, be enlarged by an another pocket or reduced by an Island. Starting position Machining begins at the starting positron of the first contour label of cycle G37. The starting POSItions should be located as far as possible from the superimposed contours. If the subcontours are always defined in the same working direction, then for example with a positive working direction pockets can be easily recognized by the G41 (RL) compensation, and islands by the G42 (RR).

Page P 82

Programming

Modes

HEIDENHAIN TNC 25006

SL Cycles Overlapping
Task Overlapped pockets.

pockets

Interior machining

of overlapping

pockets with a center-cut

end mill (IS0 1641). tool radius 3 mm

35

65

* X

PGM

%7208

O/o7208 * G71 NlO G30 G17 X+0 Y-t0 Z-40 * N20 G31 G90 X+100 Y+lOO Z+O * N30 G99 T2 L+O R+3 * N40 T2 G17 SlOO* N50 GO0 G90 Z+200 * N60 G40 X+50 Y-t50 MO3 * N70 G37 PO11 PO22 * N80 G57 PO1-2 PO2-10 PO3-10 PO4500 PO5+0 PO6+0 PO7500 * N90 Z+2 M99 * NlOO GO0 G40 Z+200 MO2 *

Blank, tool axrs Tool

Pre-position

X and Y. spindle subprograms

on

List of contour Definitron

for rough-out

Setup clearance Retract

Z. cycle call

return jump to start of program

Note

Machining begins with the first contour label defined in block N70! The first pocket must begin outside the second pocket.

HEIDENHAIN TNC 2500B

Programming

Modes

SL Cycles Overlapping

pockets

cl
Sl

52

Points of intersection

The pocket elements A and B overlap each other Since the control automatically computes the points of intersection programmed. They are programmed NllO N120 N130 N140 N150 N160 N170 N180 N190 N200 G98 G41 I+35 GO3 G98 G98 GO1 I+65 GO3 G98 as full circles

Sl and S2, these points need not be

Ll * X+10 Y+50 * J+50 * X+10 Y+50 * LO * L2 * G41 X+90 Y+50 J+50 * X+90 Y+50 * LO *

J *

IA
B

Left pocket

Right pocket

N9999 O/o7208 G71 * Execution Depending on the control or the area. Contour edge is machined setup (machine parameters), machining begins either with the contour edge

first

Area is machined

first

Page P 84

Programming

Modes

HEIDENHAIN TNC 25008

SL Cycles Overlapping
Sum area

pockets

Both areas (element A and element B) along with the common overlapping area are to be machined. l A and B must be pockets. l the first pocket (in cycle G37) must begin outside the second. NllO N120 N130 N140 N150 N160 N170 N180 N190 N200 G98 G41 I+35 GO3 G98 G98 GO1 I+65 GO3 G98 Ll * X+10 Y+50 * J+50 * X+10 Y+50 * LO * L2 * G41 X+90 Y-t50 * J+50 * X+90 Y+50 * LO *

I
the portion

--.---A
points of the

0 A and 0 B are the starting contour labels. Difference area Area A is to be machined overlapped by B:
l l

without

A must be a pocket and B an island. A must begin outside of B. G98 G41 I+35 GO3 G98 G98 GO1 I+65 GO3 G98 Ll * X+10 Y+50 * J+50 * X+10 Y+50 * LO * L2 * G42 X+90 Y+50 * J+50 * X+90 Y+50 * LO *

NllO N120 N130 N140 N150 N160 N170 N180 N190 N200

An island can also reduce several pocket areas. The starting points of the pocket contours must all be outside the island.

Intersecting area

Only the area covered to be machined.


l l

commonly

by A and B is

A and B must be pockets. A must begin inside of B. G98 G41 I+35 GO3 G98 G98 GO1 I+65 GO3 G98 Ll * X+60 Y+50 * J+50 * X+60 Y+50 * LO * L2 * G41 X+90 Y+50 * J+50 * X+90 Y+50 * LO *

NllO N120 N130 N140 N150 N160 N170 N180 N190 N200

HEIDENHAIN TNC 2500B

Programming

Modes

Page P 85

SL Cycles Overlapping
Expanding program Oh7208

islands
An island always requrres an addrtronal = pocket (here, G98 L5). outer limit

N70 G37 PO1 1 PO2 2 PO3 5 *

N210 N220 N230 N240 N250 N260 N270 Sum area

G98 GO1 X+95 Y+95 X+5 Y+5 G98

L5 * G41 X+5 * * * * LO *

Y+5 *

A pocket can also reduce several island areas. This pocket must begin inside the first island. The starting points of the remaining Intersected Island contours must be outside the pocket.

Both areas (element A and element B) along with the common overlapping area are to remain unmachined. 0 A and B must be islands. l The first island must begin outsrde the second. NllO N120 N130 N140 N150 N160 N170 N180 N190 N200 G98 G42 I+35 GO3 G98 G98 GO1 I+65 GO3 G98 Ll * X+10 Y+50 * J+50 * X+10 Y+50 * LO * L2 * G42 X+90 Y+50 * J+50 * X+90 Y+50 * LO * 0 A, 0 B are the starting points of the subcontours.

Difference area

Area tion l A l A NllO N120 N130 N140 N150 N160 N170 N180 N190 N200

A is to remain unmachined except that poroverlapped by B. must be an island and B a pocket. must begin outside of B. G98 G42 I+35 GO3 G98 G98 GO1 I+65 GO3 G98 Ll * X+10 Y+50 * J+50 * X+10 Y+50 * LO * L2 * G41 X+40 Y+50 * J+50 * X+40 Y+50 * LO *

Intersecting area

Only the area covered commonly remains unmachined. 0 A and B must be islands. 0 A must begin inside of B. NllO N120 N130 N140 N150 N160 N170 N180 N190 N200 G98 G42 I+35 GO3 G98 G98 GO1 I+65 GO3 G98 Ll * X+60 Y+50 * J-t50 * X+60 Y+50 * LO * L2 * G42 X+90 Y+50 * J+50 * X+90 Y+50 * LO *

by A and B

Page P86

Programming

Modes

HEIDENHAIN TNC 25008

SL Cycles Overlapping
Task

pockets and islands

Overlapping pockets with islands. Island within a pocket. Interior machining of overlapping 3 mm. Islands are located within pockets and Islands with a center-cut a pocket area. end mill (IS0 1641). tool radius

35

65

m X

Main program %7209

O/o7209 G71 * N10 G30 Cl7 X+0 Y+O Z-40 * N20 G31 G90 X+100 Y+lOO Z+O * N30 G99 T2 L-t0 R+2.5 * N40 G37 PO1 1 PO2 2 PO3 3 PO4 4 * N50 G98 LlO * N60 TO G17 * N70 GO0 G40 G90 Z+20 * N80 x-20 Y-20 * N90 G98 LO * NlOO MO6 * NllO T2 SlOO * N120 G57 PO1 -2 PO2 -10 PO3 -5 PO4 500 PO5 +0 PO6 +0 PO7 500 * N130 N140 N150 N160 Z+2 * G79 MO3 * LlO,O * GO0 Z+20 MO2 * %7209
IS

List of contour

elements

Program

an expansion

of program

%7208:

the interior islands are added

(subprograms

3 and 4).

HEIDENHAIN TNC 2500B

Programming

Modes

Page P 87

SL Cycles Overlapping

pockets and islands

The entire contour is composed of the elements A and B, i.e. two overlapping pockets and C and D, I.e. two islands within these pockets

Contour subprograms for program %7209

N170 N180 N190 N200 N210 N220 N230 N240 N250 N260 N270 N280 N290 N300 N310 N320 N330 N340 N350 N360 N370 N380 N390 N400 N410 N9999

G98 G41 I+35 GO3 G98 G98 GO1 I+65 GO3 G98 G98 GO1 X+43 Y+58 X+27 Y+42 X+35 G98

Ll * X+35 Y+2.5 * J+50 * X+35 Y+25 * LO * L2 * G41 X+65 Y+25 * J+50 * X+65 Y+25 * LO * L3 * G42 X+35 * * * * * LO * Y+42 *

Left pocket

Right pocket

Square

island

G98 L4 * GO1 G42 X+65 X+73 * X+65 Y+58 * X+57 Y+42 * X+65 * G98 LO * O/o7209 G71 *

Y+42 * Trrangular island

Execution

Machining

of the contour

edges

Area clearance

(unfjnlshed)

Page P 88

Programming

Modes

HEIDENHAIN TNC 2500B

SL Cycles Pilot drilling: G56


The cycle Pilot drill the cutter infeed points at the starting points of the subcontours, compensated by the frnrshing allowance. For closed contour sequences resulttng from multiple superrmposed pockets and islands, the infeed point is the starting point of the first subcontour. This cycle must be called!

y,

-4
0 Cutter infeed point Input data The input values are identical to pecking; finishing allowance in addition. enter a

Finishing allowance: allowance for drilling (POSI tive value), effective in the working plane. The sum of the tool radius and the finishing allowance should be the same for pilot drilling and roughing-out. The tool must be at the setup clearance calling the cycle! before

D = Finishing allowance R = Tool radius Process The tool IS automatically positioned over the first infeed point, offset by the allowance. The tool may have to be pre-positioned to prevent collision! The drilling process is identical pecking (cycle 1). to the fixed cycle

Subsequently, the tool is positioned over the second rnfeed point at the programmed setup clearance, and the drilling procedure is repeated.

Example

N25 G56 PO1-2 PO2-20 PO3-10 PO4 40 PO5+1 *

Setup clearance Dnlltng depth Pecking depth Feed rate for infeed Finishing allowance Page P 89

HEIDENHAIN TNC 2500B

Programming

Modes

SL Cycles Contour milling


The cycle Cycle G58/G59 contour milling finishing the contour pocket.

(finishing):
is used for

G58/G59

The cycle can also be generally used to mill contours made up of subcontours. Thrs offers the following benefits: l contour intersections are computed, l collrsrons are avoided. Tool required The cycle requires a center cutting tool.

The cycle must be called! The setup clearance A, milling depth B and pecking depth C are identical to pecking. The signs must be the same (normally negative).

Input

data

Feed rate for pecking: tool traversing speed at infeed (F,). Rotating direction for contour milling: mulling direction along the pocket contour (island contours: opposite milling direction). For the following directions, M3 means G58: down-cut milling for pocket and Island, G59: up-cut milling for pocket and Island. Feed rate Fs: tool traversing speed in the machining plane. The tool must be at the setup clearance to the cvcle call. (A) prior

Process

The tool IS automatically contour point. Beware of collisions

positioned

over the first

with

clamping

devices!

The tool then penetrates the workpiece at the programmed feed rate to the first pecking depth. After reaching the first pecking depth, the tool mills the first contour at the programmed feed rate in the specified rotating direction. At the infeed point, the tool IS advanced to the next pecking depth. The procedure is repeated until the programmed milling depth is attained. The next subcontours manner. Example are milled in the same P = Programmed contour (pocket) D = Finishing allowance from cycle G57 rough-out Setup clearance Milling depth Pecking depth Feed rate for rnfeed Feed rate in the working

N25 G58 PO1-2 PO2-20 PO3-10 PO4+40 PO560 *

plane

Page P 90

Programming

Modes

HEIDENHAIN TNC 306

SL Cycles Machining with several tools


The followina scheme illustrates the aoulication of the SL cycles pilot drilling, rough-out, and contour milling in one program: List of contour subprograms
r

Cycle definition:

with G37
No call!

Drilling

Define and call the drill Cycle defrnrtron:

with G56
Pre-positioning, Cycle call!

Rough-out

Define and call the roughing Cycle definition:

cutter

with G57
Pre-posrtionrng. Cycle call!

Finishing

Define and call the frnrshrng cutter Cycle definition.

with G58 or G59


Pilot positioning, Cycle call!

Contour subprograms

Subprograms

for the subcontours

HEIDENHAIN TNC 2500B


c

Programming

Modes

Page P 91

SL Cycles Machining with several tools


Task Overlapping pockets with Islands. with pilot drllllng, roughing, finishing.

Intenor machining Main program 0~7210

O/o7210 G71 * NlO G30 G17 X+0 Y+O Z-40 * N20 G31 G90 X+100 Y+lOO Z-t0 * N30 G99 Tl L+O R+2.2 * N40 G99 T2 L+O R+3 * N50 G99 T3 L-t0 R+2.5 * N60 G37 PO1 1 PO2 2 PO3 3 PO4 4 * N70 G98 LlO * N80 TO G17 * N90 GO0 G90 Z+20 * NlOO G40 X-20 Y-20 * NllO G98 LO * N120 MO6 * N130 Tl G17 SlOO * N140 G56 PO1 -2 PO2 -20 PO3 -5 PO4 500 PO5 +2 * N150 Z+2 * N160 G79 MO3 * N170 LlO,O * N180 MO6 * N190 T2 G17 SlOO * N200 G57 PO1 -2 PO2 -20 PO3 -5 PO4 500 PO5 +2 PO6 +0 PO7 500 * N210 Z+2 * N220 G79 MO3 * N230 LlO,O * N240 MO6 * N250 T3 G17 S500 * N260 G59 PO1 -2 PO2 -20 PO3 -5 PO4 100 PO5 500 * N270 Z+2 * N280 c;79 MO3 * N290 LlO,O * N300 GO0 G40 Z-t20 MO2 *

Drill Roughing cutter Finishing cutter Tool change

Pilot drilling

Roughing-out

Finishing

Retract and return Jump to beginning Left pocket

of program.

Subprogram

N305 N310 N320 N340 N350 N360 N370 N380 N390 N400 N410 N420 N430 N440 N450 N460 N470 N480 N490 N500 N510 N520 N530 N540 N550 N9999

G98 G41 I+35 GO3 G98 G98 GO1 I+65 GO3 G98 G98 GO1 X+43 Y+58 X+27 Y+42 X+35 G98

Ll * X+35 J+50 X+35 LO * L2 * G41 J+50 X+65 LO *

Y+25 * * Y+25 * Right pocket X+65 Y+25 * * Y+25 * Square Y+42 * island

L3 * G42 X+35 * * * * * LO *

G98 L4 * GO1 G42 X+65 X+73 * X+65 Y+58 * X+57 Y+42 * X+65 * G98 LO * O/o7210 G71 *

Triangular Y+42 *

island

The contour Page P 92

subprograms

1 to 4 are identical Programming

to those in program Modes

%7209 HEIDENHAIN TNC 2500B

Coordinate Overview
The following mations: G54 G28 G73 G72

Transformations

cycles serve for coordinate

transfor-

Datum shift Mirror image Rotation Scaling Datum shift Mirror image

Original

With the help of coordinate transformatrons, a program sectton can be executed as a variant of the original. In the following descriptions, subprogram 1 is always the orrgrnal subprogram (Identified by the gray background).

I
Immediate activation Every transformatron is immediately active - without

Rotation

Scaling

being called

Duration activation

of

A coordinate transformation remains active until it IS changed or cancelled Its effect IS not Impaired by interrupting and aborting program run. This is also true when the same program is restarted from another location with GOT0 0.

End of activation

You can cancel coordinate


l l

transformations with PGM functions

in the following NR rn the operating

ways: mode program run full sequence (depending on the or

Cycle defrnrtion Selecting another single block.

for orrgrnal condition program

(e.g.: scaling factor 1.0);

Programming of miscellaneous machine parameters);

MO2 or M30. or block N9999%

Error message

CYCL INCOMPLETE
This error message is displayed if a fixed cycle is called after defining a transformation but no fixed cycle was defined. Otherwise the control executes the fixed cycle which was last defined.

HEIDENHAIN TNC 2500B

Programming

Modes

Page P 93

Coordinate Transformations Datum shift: G54


The cycle You can program a datum shift (also known as zero offset) to any point within a program. The manually set absolute workprece datum remains unchanged. Thus, identical machining steps (e.g. subprograms) can be executed at different positions on the workpiece without having to reenter the program section each time.

Combining with other coordinate transformations

If a datum shift is to be combined with other transformations, the shift usually has to be made before the other transformations. In this way you can execute a program section at several locations and in modified form, such as rotated, reduced or mirrored.

Effect

For a datum shift defrnitron, only the coordinates of the new datum are to be entered. An active datum shift is displayed in the status field. All coordinate inputs then refer to the new datum.

Incremental/ absolute

In the cycle definition the coordinates can be entered as absolute or incremental dimensions:
l

Absolute: The coordinates of the new datum refer to the manually set workpiece datum. Refer to the center figure. Incremental: The coordinates of the new datum refer to the last valid datum, which can itself be shifted. Refer to the lower figure.

i90 Y

ii
Cancelling the shift A datum shift is cancelled by entering the datum shift XO/YO/ZO Only the shifted axes have to be entered. G54 X+0 Y+O Z+O *

Absolute

datum shift

-77
G91Y
Incremental datum shift Page P 94 HEIDENHAIN TNC 2500B

Programming

Modes

Coordinate Transformations Datum shift: G54


Selecting the cycle Input

Eln
IN El

Select the axis and coordinate of the new datum. The datum shift IS possible In all four axes.

Conclude

block

Example

A machining a) referenced b) additionally

task is to be carried referenced

out as a subprogram and

to the set datum X+O/Y+O

to the shifted datum X+4O/Y+60

O/o54 G71 * NlO G30 G17 X+0 Y+O Z-40 * N20 G31 G90 X+100 Y+lOO Z+O * N30 G99 Tl L+O R+5 * N40 Tl G17 S200 * N50 Ll,O * Without datum N60 G54 X+40 N70 L1,O * N80 G54 X+0 Y+O * Y+60 * With datum

shift 0

shift 0

Datum shaft reset

N90 GO0 Z+50 MO2 *

Subprogram NIOO NllO N120 N130 N140 N150 N160 N170 N180 N190 N200 N210 N220 G98 COO Z+2 GO1 G41 Y+20 X+25 X+30 Y+O X+0 G40 GO0 G98 Ll * G40 X-10 Y-10 MO3 * * Z-5 FlOO * X+0 Y+O F500 * * * Y+15 * * * X-10 Y-10 * Z+2 * LO *

N9999 O/o54 G71 *

HEIDENHAIN TNC 2500B

Programming

Modes

Page P 95

Coordinate Transformations Mirror image: G28


The cycle The direction of an axis is reversed when it is mirrored. The sign is reversed for all coordinates of this axis. The result IS a mirror image of a progammed contour or of a hole pattern. Mirroring IS only possible in the working plane. You can mirror in one axes or both axes simulta neously. Activation The mirror image is rmmedrately active upon defrnitron. The mirrored axes can be recognized by the highlighted axis designations In the status display for the datum shift. Mrrrorrng is performed at the current datum. The datum must therefore be shifted to the required position before a mirror image cycle definition.

Mirrored axes Climb and conventional milling

Enter the axes or axes to be mirrored axis cannot be mirrored.

The tool

Mirroring one axis: The rotating direction is changed with the coordinate signs, so climb milling becomes conventional and vice versa. The milling directron remains unchanged for fixed cycles. Mirroring two axes: The contour which was mirrored in one axis is mirrored a second time - in the other axes. The direction of rotation and milling (climb or conventional) remains the same. ( \ wt--

\ \

/ \ \-------I /

/-----

n c)

R\ -------

n u \ \ / \ i

(GIL?

0 --l Y

X, Y = Axes to be mirrored Datum position The position of the datum is very important obtaining the desired change. 1. If the datum IS on the part contour, flips over its own axis. fat

the part

2. If the datum IS outside the contour, the part flips and jumps to another position! Cancelling the mirror image The mirror image cycle is cancelled by entering the mirror image cycle and responding to the dialog query with END 0: G28 *

Page P 96

Programming

Modes

HEIDENHAIN TNC 25006

Coordinate Transformations Mirror image: G28


Selecting the cycle lnrtrate the dialog MIRROR IMAGE AXIS ? X Enter the axis to be mirrored, e.g. X. if

Enter the second axis to be mrrrored applicable, e.g. Y. Conclude block.

Example

A program section (subprogram 1) is to be executed - as originally programmed - at posrtion X+O/Y+O. It IS then mirrored in X and executed at the position X+7O/Y+60. %34 G71 * NlO G30 G17 X+0 Y+O Z-40 * N20 G31 G90 X+100 Y+lOO Z-t0 * N30 G99 Tl L+O R+5 * N40 Tl G17 S200 * N50 Ll,O * N60 G54 X+70 N65 G28 X * N70 Ll,O * N80 G54 X+0 N85 G28 * Y+O * Y+60 * Not mirrored 0

Datum shift 0 Mirror image 0 Subprogram call

Cancel datum shift Reset mrrror image Retract, return jump

N90 GO0 G40 Z+.50 MO2 * Subprogram: NlOO NllO N120 N130 N140 N150 N160 N170 N180 N190 N200 N210 N220 G98 GO0 Z-t2 GO1 G41 Y+20 X+25 X+30 Y+O X+0 G40 GO0 G98

Ll * G40 X-10 Y-10 MO3 * * Z-5 FlOO * X+0 Y+O F500 * * * Y+15 * * * X-10 Y-10 * Z+2 * LO *

N9999 %34 G71 *

Note

For corre.ct machining according to the drawing, shown in the above execution be retained!

it is absolutely

necessary

that the sequence

of cycles

HEIDENHAIN TNC 2500B

Programming

Modes

Page P 97

Coordinate Coordinate
The cycle

Transformations system rotation : G73

The coordinate system can be rotated in the machrnrng plane around the current datum in a program. Rotation is effective without being called and IS also active rn the operating mode Positioning with MDI. To rotate the coordinate system, you only have to enter the rotation angle H.

Activation

Rotation

Planes

XY plane: YZ plane: ZX plane:

G17 G18 G19

+X axis = O (standard) +Y axis = O +Z axis = O

All coordinate inputs following the rotation are then referenced to the rotated coordinate system The rotation angle is entered Input range: -360 to +360 mental). in degrees () (absolute or rncre-

Activating the rotation

G73 H+35 * The active rotation the status display. angle


IS

indicated

by ROT in

Cancelling the rotation

A rotation angle O.

IS

cancelled

by entering

the rotation

G73 H+O *

Page P 98

Programming

Modes

HEIDENHAIN TNC 2500B

Coordinate Coordinate
Selecting the cycle Initiate the dialog

Transformations system rotation : G73

Absolute

dimensions

or

Incremental. 1 ROTATION ANGLE ? Enter rotation Conclude angle.

block.

Example

A program section (subprogram 1) IS to be executed - as orrgrnally programmed - at position X+O/Y+O. It IS then rotated in X and executed at the position X+7O/Y+60.

O/o35 G71 * NlO G30 G17 X+0 Y+O Z-40 * N20 G31 G90 X+100 Y+lOO Z+O * N30 G99 Tl L+O R+5 * N40 Tl G17 S200 * N50 Ll,O * Non-rotated execution 0

N60 G54 X+70 Y+60 * N65 G73 H+35 *


w

Rotated execution. 1. Datum shift 0 2. Rotation 0 3. Subprogram Cancel datum Reset rotation call shift

Sequence:

N70 L1,O * N80 G54 X+0 Y+O * N90 G73 H-t0 * NlOO GO0 G40 Z+50 MO2 *

w
w

Return jump to first block of the main program

Subprogram

The associated

subprogram

(see Datum

shift) IS programmed

after MO2

HEIDENHAIN TNC 2500B

Programming

Modes

Page P 99

Coordinate Transformations Scaling : G72


The cycle Contours can be enlarged or reduced with this cycle. This permits generation of contours geemetrically srmrlar to an ongrnal without reprogrammtng, and also use of shrinkage and growth allowances. Scaling is effective machine parameters plane or in the three General Information, parameters). Activation depending on the specified - either in the machining main axes (see Index A, MOD Functions, User

Scaling is effective immediately, without being called. Scaling factors greater than 1 result In enlargement, factors between 0 and 1 result in reduction.

F factor

The scaling factor F (factor) is entered or reduce a contour.

to enlarge

The control applies thus factor to all coordrnates and radii either in the machrning plane or (depending on MP 7410; see index A General Information, MOD Functions, User parameters) in all three axes X. Y and Z. The factor also affects dimensions in cycles. Input range: 0.000001 Datum position to 99.999999.

It is helpful to locate the datum on an edge of the subcontour. This way, the datum of the coordinate system is retained during a reduction or magnifrcation as long as It IS not subsequently moved or If the move is programmed before the scaling factor.

Activating scaling

G72 F0.8 *

Cancelling scaling

The scaling cycle

IS

cancelled

by entering

the factor 1 in the scaltng cycle:

G72 Fl *

Page P 100

Programming

Modes

HEIDENHAIN TNC 2500B

Coordinate Transformations Scaling : G72


Selecting the cycle Initiate the dialog FACTOR ? Enter the scaling factor. Conclude block.

Example

A program section (subprogram 1) is to be executed - as origtnally programmed - referenced to the manually set datum X+O/Y+O. It is then scaled with 0.8 and executed at the datum X+6O/Y+70.

O/o36G71 * NlO G30 G17 X+0 Y+O Z-40 * N20 G31 G90 X+100 Y+lOO Z+O * N30 G99 Tl L+O R+5 * N40 Tl G17 S200 * NSO Ll,O * Execution in original size 0

N60 G54 X+70 Y+60 N70 G72 F0.8 * N80 Ll,O *

Execution with scaling factor. Sequence: 1. Shift datum 0 2. Define scaling factor 0 3. Call subprogram (scaling factor effective) Cancel transformations

N90 G.54 X+0 Y+O * NlOO G72 Fl * NllO GO0 G40 Z-t50 MO2 * Retract, return jump

Subprogram

The corresponding

subprogram

(see cycle 7, Datum shift) is programmed

after M02.

HEIDENHAIN TNC 2500B

Programming

Modes

Page P 101

Other Cycles Dwell time: GO4


The cycle In a program whtch is being run, the next block will be executed only after the end of the programmed dwell time. Modal conditrons, such as spindle rotation, are not affected. The dwell cycle is active immediately tion. without being called. upon defrnr

Activation

Possible applications

For example, chip breaking can easily be programmed with a dwell cycle after every drilling step. The dwell time IS specified in seconds. Input range: 0 to 30000 s (A 8.3 hours)

Input

range

Cycle definition

Initiate the dialog

DWELL TIME IN SECS. ?

Enter desired Conclude

dwell time, in seconds.

block.

Example

GO4 F0.5 *

Page P 102

Programming

Modes

HEIDENHAIN TNC 25008

Other Cycles Program call: G39


The cycles Machining procedures that you have programmed - such as special drilling cycles, curve milling, or geometry modules - can be created as callable main programs and be used like fixed cycles. They can be called from any program with a cycle call. They can thus help speed up programming and Improve safety, since you are using proven modules.

G39

A callable

program

defined

as a cycle more or less becomes

a fixed cycle

It can be called with G79 M99 M89 (separate (blockwise) (modally) block) or or

Initiate the dialog Entering the cycle selection PROGRAM NUMBER ? Enter program Conclude block. number.

Example

The callable Program. O/o5G71 *

program

50 IS to be called from program

G39 PO1 50 * GiIl X+20 Y+50 F250 M99 *

Defrnrtion: Program 50 is a cycle Call program 50 with M99

N9999 O/o5G71 *

Cross-reference Drilling with chip breaking

A realistic example of a program gramming O/67445): 1. Subprogram 1 is written

call with G39 can be taken from the drrllrng example

(Parameter

pro-

separately

as %7444

(without

G98 Ll or G98 LO).

2. %7444 now exists as a callable, additional drilling procedure. This program can remain stored in the control and be called by any other program, 3. Subprogram 1 IS deleted in the main program 7445

e.g. 7445

4. Instead of L 1.0, write in %7445: G39 PO1 7444, and M99 in a subsequent

positioning

block

HEIDENHAIN TNC 2500B

Programming

Modes

Page P 103

Other Cycles Oriented spindle stop: G36


The cycle The control can address the machine tool spindle as a 6h axis and turn it to a certain angular POW tron. Applicatron:
l

for tool changing systems with defined change positron for tool. Orientation of the transmitter/receiver window of the TS 511 3D touch probe system from HEIDENHAIN.

Activation Ml9

The cycle - if provrded on the machine - IS executed through M19. The spindle orientation IS activated either through
l l

machine parameter spindle orientation:

or G36

If the cycle is called without prior definition, the spindle will be oriented to the angle set in the machine parameters. Further information is available from the machine tool builder.

Input

range

The angle of orientation Input range: 0 to 360. Inout resolution: O.l?

is entered

according

to the reference

axis of the working

plane.

Cycle definition

Initiate dialog Confirm ORIENTATION ANGLE ? selection of cycle

Enter new angle for spindle. Transfer block to memory

Example

G36 S45 *

Page P 104

Programming

Modes

HEIDENHAIN TNC 2500B

Parametric Overview
Parametric programming

Programmina

Many problems which would otherwise be impossrble or very difficult can be easily solved with parametric programming. Parametric programming expands the capabilities of the control enormously and offers features such as:
l l

l l

Variable drilling programs Processrng of mathematical curves (e.g.: sine wave, ellipse, parabola, hyperbola) Programs for machining families of parts 3D programming for mold making

Basic functions

The mathematical and logical functions the right are available for programming.

listed at

Computation time

The time required for one computing step depending on the workload on the processor can reach the millisecond range.

DOO: DO1: D02: D03: D04: D05: D06: D07: D08: D09: DlO: Dll: D12:

ASSIGN ADDITION SUBTRACTION MULTIPLICATION DIVISION SQUARE ROOT SINE COSINE ROOT-SUM OF SQUARES IF IF IF IF EQUAL, JUMP UNEQUAL, JUMP GREATER, JUMP LESS, JUMP

For this reason, very many computations and very small displacements may cause the machine axes to be halted. In this case you have to make a compromise between high surface definition (many computations, small displacements) and efficient machining.

D13: ANGLE D14: ERROR CODE

Variable addresses with parameters

The program data shown at the right can be kept variable by using the Q parameters: Enter a Q parameter instead of a specific number. Example for variable positioning: instead of X+20.25 you write X+Q21 The parameter In the program value for 021 must be computed or be defined before it is called.

Nominal

positions

GO1 X+Q21

Y+Q22

Circle data

I+Ql J+Q2 * GO2X+QlO Y+Q20 * GO6X+Qll Y+Q21 * G25 Ql * GO5X+Q21 Y+Q22 R Q62 * F QlO * G99 Tl L+Ql R Q2 * TQ5 G17 SQ6 * Dll POl+QlO PO2+0PO3Q30 * G83 POl-Ql P02-Q2 P03-Q3 PO4Q4 PO5Q5 *

Feed rate Tool data

Inch dimensions

Programs using parameters as jump address are not to be switched from mm to inches or vice versa, because the contents of the 0 parameters are also converted during switchover, which would result in false jump addresses.

Conditional Cycle data

jump

HEIDENHAIN TNC 2500B

Programming

Modes

Page P 105

Parametric Selection
Selecting basic functions Basic parameter functions

Programming

are selected

by pressing

the D key and entering

the corresponding

number. i

Defining parameters

A parameter is destgnated by the letter Q and any number to parameters 0100 to Q113. Specific numerical values (contents) cal and logical functions. Parameter programmed.

between

0 and 113. The TNC assigns values

can be allocated to the parameter either directly or with mathematicontents can also have a negative sign. Positive signs need not be

Starting values

Parameters must be defined before they can be used. When program run is started, all parameters are automatically assigned the value 0 if machine parameter MP 7300 = 0. If the Q parameters are to be assigned values before program start, set MP 7300 = 1. The Q parameter values are then not deleted at program start. Examples of defined parameters:

Ql = +1.5 QS = +Ql Q9 = +Ql * +QS


Notation The notation corresponds to the standard computer format: The operands and the operator are on the right, the desired a mathematical operation and not as an equation! Here also use the ENT key to continue the dialog within

result on the left. Consider one program line.

the entire line as

Initiate the dialog

e.g. multiplication

PARAMETER NUMBER FOR RESULT? First value or parameter? Secondvalue or parameter? cl

Parameter IS operand 2d operand. Conclude

for result. (parameter)

block.

Example

DO3 QlO POl+Q5 PO2+3.142 *


The result is assigned to QIO; the content of 05 is retained!

Page P 106

Programming

Modes

HEIDENHAIN TNC 2500B

Parametric Programming Algebraic functions


DOO: Assignment This function assigns to a parameter either a numerical value or another parameter. The assignment corresponds to an equal sign. Example:

DO0 QOSPO1+65.432 * DO0 QOSPO1+Q12 * DO0 QOSPO1-Q13 *

DOI: Addition

This function defines a specific parameter the sum of two parameters, two numbers parameter and one number.

to be or one

DO1 Q17 PO1+Q2 PO2+5 * DO1 417 PO1+5 PO2+7 * DO1 Q17 PO1+5 PO2-Q12 * DO1 Q17 PO1-Q4 PO2+QS * DO1 Q17 PO1+Q17 PO2+Q17 *

D02: Subtraction

This function defines a specific parameter to be the difference between two parameters, two numbers or one parameter and one number.

DO2 Qll PO1+5 PO2+34 * DO2 Qll DO2 Qll DO2 Qll DO2 Qll PO1+5 PO2+7 * PO1+5 PO2-412 * PO1+Q4 PO2+QS * PO1+Qll PO2-Qll *

D03: Multiplication

This function defines a specific parameter to be the product of two parameters, two numbers or one parameter and one number.

DO3 Q21 PO1+Ql PO2+60 * DO3 421 PO1+5 PO2+7 * DO3 421 PO1+5 PO2-Q12 * DO3 Q21 PO1+Q4 PO2-QS * DO3 Q21 PO1+Q21 PO2+Q21 *

D04: Division

This function defines a specific parameter to be the quotient of two parameters, two numbers or one parameter and one number. Division by 0 is not permitted!

DO4 Q17 PO1+Q2 PO2+62 * DO4 Q17 PO1+5 PO2+7 * DO4 Q17 PO1+5 PO2-Q12 * DO4 417 PO1+Q4 PO2+QS *

D05: Square

root

This function defines a specific parameter to be the square root of one parameter or one number. The operand must be posltlve.

DO5 Q98 PO1+2 * DO5 Q98 PO1+Q12 * DO5 498 PO1-470 *

Sign for operands

Parameters A subtraction

with negative signs can also be used. can be obtained from an addition and vice versa. This also applies for other operations

Qll = +5 - -Q34

HEIDENHAIN TNC 2500B

Programming

Modes

Page P 107

Parametric Programming Trigonometric functions


Basics of trigonometry A circle with radius c is divided symmetrrcally into four quadrants 0 to 8 by the two axes X and Y. If the radius c forms the angle a with the X-axis, the two components a and b of the right-angled triangle depend upon angle a. opposite side a hypotenuse ~ c

Defining the trigonometric functions

sin a =

or a = c

sin a

cos a = adjacent side b hypotenuse ~ c tan a =-=-sin a cos a a b

or b = c

cos a

Length of one side

According

to the Pythagorean

theorem:

c2 = a2 + b2 or c = m Table for preceding Function 0 sign and angle range 1 Ouadrant 0 / 0 1 @ 1

Angle

0 I

90 I

180 I

270 I

360 I

D06: Sine

A parameter is defined as the sine of an angle, whereby the angle can be a number or a parameter (unit of measurement of the angle: degrees). 044 = sin Qll

DO6 444 PO1+Qll *


D07: Cosine A parameter is defined as the cosine of an angle, whereby the angle can be a number or a parameter (unit of measurement of the angle: degrees). 081 = cos 011

DO7 QSl PO1+Qll *


D08: Root sum of squares A parameter is computed as the square root of the sum of squares of two numbers or parameters (LEN = length). 03 = JQ452 + 302

DOSQ3 PO1+Q45 PO2+30 *

Page P 108

Programming

Modes

HEIDENHAIN TNC 2500B

Parametric Programming Trigonometric functions


Angles from line segments or trigonometric functions According to the definitions of the angular functions, either the angular functions stn a and cos a, or the lengths of sides a and b can be used to determine tan a: sin tan a=---== a cos a a b

The angle a is therefore sin a a = arc tan ~ = arc tan a cos a b

Unambiguous angle

If the value of sin a or the side a is known, possible angles always result: Example: sin a = 0.5 a, = +30 and a2 = +150

two

To determrne angle a unambiguously, the value for cos a or side b is required. If this value is known, an unambiguous angle a is the result: Example: sin a = 0.5 and cos a = 0.866 a = +30 , sin a = 0.5 and cos a = -0.866 a = +150
C

a= csrna

-;

a b b=c.(-cosa)

D13: Angle

This function assigns to a parameter the angle from a sine and cosine function, or from the two legs of the right-angled triangle. tana=-=-=p srn a cos a a b -5 8.66 -5 8.66

a = arc tan D13 Qll

L-1

PO1 -5 PO2 +8.66 *

HEIDENHAIN TNC 25006

Programming

Modes

Page P 109

Parametric Programming Conditional/unconditional


If-then jump With the parameter functions DO9 to D12, you can compare one parameter wrth another parameter or with a given number (e.g. a maximum value). Depending on the result of this comparison, a jump to a certain label in the program can be programmed (conditional jump): If the programmed IF condition is fulfilled, a jump is performed; if the condition is not fulfilled, the next block (following IF .) will be executed. Program call If you write a program call behind the called program label, a jump can be made to another program. (Program calls are for example PGM CALL or cycle G39).

jumps

N23 DO0 Q2 PO1+50 * $ I N24 G98 L30 * N25 DO1 Ql POl+Ql PO2+1 *

01-C 02

N26 D12 POl+Ql P02+Q2 PO330 *

N27 GO0 2200 MO5 * N28 X-20 Y-20 MO2 * Examples: Equation D09: = DO9 POl+Ql PO2+360 PO3 30 * Decision criteria :

A parameter is equal to a value or a second meter, e.g. Ql = 42 or in the example: 01 has the value 360.000.

para-

Inequalities DIO: c Dll: >

DlO POl+Ql

P02+Q2

PO3 2 *

A parameter IS not equal to a value or a second parameter, e.g. Ql + Q2 A parameter is greater than a value or a second parameter, e.g. Ql > Q2. Also possible: greater than zero, i.e. positive. A parameter is less than a value or a second parameter, e.g. Ql < 42. Also possible: less than zero, i.e. negative.

Dll

POl+Ql

PO2+360 PO3 17 *

D12:

<

D12 POl+Ql

PO2+Q2 PO3 3 *

Unconditional jumps

You can also program Example:

unconditional

jumps

to a label with the parameter Decision criterion:

functions

DO9 to D12

DO9 POl+O PO2+0 PO3 30 *

The condition unconditional

is always fulfilled, i.e. an jump is performed.

Page P 110

Programming

Modes

HEIDENHAIN TNC 2500B

Parametric Programming Special functions


D14: Error code You can call error messages and dialog texts of the machine To call, enter the error code number between 0 and 499. tool builder from the PLC EPROM with D14.

The error message terminates program run. The program must be restarted after the error has been corrected. The messages Error number 0 300 400 484 299 399 483 499 are allocated Screen ERROR as follows: display 0 . . . ERROR 299 tool builder). tool builder). tool builder).

PLC ERROR 01. . . PLC ERROR 99 (or dialog determined by the machine DIALOG 1 . . . 83 (or dialoq determined USER PARAMETER (or dialog determined bv the machine 15 . . . 0 by the machine

Example: D14: ERROR

= 100

D15: Print

This function outputs current Q-parameter values through the RS-232-C serial interface. You can also enter numerical values between 0 and 499 Instead of Q-parameters. These values call error messages and dialog texts which are stored in the PLC EPROM and are allocated as with D14. You can enter combinations of up to six 0 parameters and numerical values. Example: D15: PRINT Q1/20/Q9/O/Q17/Q33

0100

- 0107

The control can transfer Q parameter 0100 to 0107 are used for this.

values from the integrated

PLC to a NC program.

The parameters

0108 Tool radius

The control always stores the tool radius of the last called tool In parameter 0108. The active tool radius can then be used for the radius compensation in parameter computations and comparisons.

0109 Tool axis

The control stores the current Drfferent machines alternately when the current tool axis can this makes program branching Current tool axis no tool axis called X axis is called Y axis is called Z axis is called

tool axis in parameter 0109: use the X.Y or Z axis as the tool axis. On these machines be requested in the machining program; in user cycles possible. Parameter I 0109 = -1 0109 = 0109 = 0109 = 0 1 2

it is helpful

HEIDENHAIN TNC 2500B

Programming

Modes

Page P 111

Parametric programming Special functions


0110 Spindle on/off The value in parameter M function no M spindle MO3 spindle function 0110 speciftes the last M function issued for the direction of spindle rotation:

Parameter QIIO = -1 a10 a10 = = 0 1 2 3

on clockwise

MO4 sprndle on counterclockwise M05, if MO3 was previously M05, if MO4 was previously issued issued

0110 = QIIO =

0111 Coolant on/off

Parameter Meaning:

0111 indicates

whether

the coolant was switched

on or off.

Parameter switched switched on off 0111 = 0111 = 1 0

MO8 coolant MO9 coolant

0112 Overlap factor

Parameter Functions,

0112 contains the overlap factor for pocket milling User parameters, MP 7430). can be useful in milling

(see index A General

Information,

MOD

The overlap factor for pocket milling

programs.

0113 mm/inch dimensions

Parameter 0113 specifies whether the NC program with PGM CALL) contains mm or inch dimensions. The mainprogram mm dimensions inch dimensions contains:

at the highest Parameter 0113 = 0113 = 0 1

program

level (for subprogramming

Page P 112

Programming

Modes

HEIDENHAIN TNC 2500B

Parametric Programming Example: Bolt hole circle


Task A bolt-hole circle is to be drilled ing cycle in the XY plane. Example: Radius R of the bolt-hole 43 = 35 mm. Number 44 = 12. X coordinate Ql = 50 mm. Y coordinate Q2 = 50 mm. of the bolt circle center: of the bolt ctrcle center: n of bore holes: using the peck

circle:

O/o37 G71 * NlO G30 G17 X+0 Y-t0 Z-40 * N20 G31 G90 X+100 Y-t100 Z-t0 * N30 G99 Tl L+O R+5 * N40 Tl G17 S200 * Assigning values N50 N60 N70 N80 DO0 DO0 DO0 DO0 QOl 402 Q03 Q04 PO1 PO1 PO1 PO1 +50 +50 +35 +12 * * * *

Blank form defrnrtion

Define and call tool

Center in X Center in Y Bolt circle radius Number of bore holes Select and load drilling cycle

N90 G83 PO1 -2 PO2 -20 * PO3 -5 PO4 0 PO5 100 * NlOO DO0 QlO PO1 +0 * Computation NllO DO4 Q14 PO1 +360 PO2 +Q4 * N120 GO0 G90 Z+2 MO3 *

Set starting Compute

angle

angle Increment

Approach setup clearance and switch on spindle N130 I+Ql J+Q2 * N140 GlO R+Q3 H+QlO N150 N160 N170 N180 G98 DO1 DO9 GlO

Execution

M99 *

1 bore Start of loop Angle increment Further bores If not all holes are drilled, jump to the start of the loop.

Ll * QlO PO1 +QlO PO2 +Q14 * PO1 +QlO PO2 +360 PO3 2 * H+QlO M99 * PO2 +360 PO3 1 *

N190 D12 PO1 +QlO N200 G98 L2 *

N210 GO0 G40 Z-t50 MO2 * N9999 O/o37 G71 *

HEIDENHAIN TNC 25008

Programming

Modes

Page P 113

Parametric Programming Example: Drilling with chip breaking


Example Interruptable drilling procedure with automatic approach to the setup clearance and raising of the tool to break the chrp for longer tool life.

Main

program

O/o7445 * G71 G30 G17 X+0 Y+O Z-40 * G31 G90 X+100 Y+lOO Z+O * DO0 QOl PO1-1 * DO0 402 PO1-40 * DO0 Q03 PO1-5 * DO0 Q04 PO1+0,5 * DO0 QO5 PO1+200 * DO0 Q06 PO1+0 *
G99 Tl L+O R+2,5 * Setup clearance (incremental) Depth (incremental) lnfeed (incremental) Dwell time Drilling feed rate Work surface (absolute) Define tool Call tool, spindle speed Approach drilling position Drilling End of main program

Tl G17 S200*

GO0 G90 X+20 Y+50 MO3 * Ll,O * GO0Z+300 MO2 *


Subprogram Drilling procedure 1:

G98 Ll * DO1 Q21 PO1+Q6 PO2-Ql * DO0 Q23 PO1+Q6 * DO1 Q24 PO1+Q6 PO2+Q2 * GO0Z+Q21 * G98 LlO * DO1 423 PO1+Q23 PO2+Q3 * DO1 Q22 PO1+Q23 PO2-Ql * D12 PO1+Q23 PO2+Q24 PO399 * GO1Z+Q23 FQ5 * Z+Q22 * Dll PO1+Q23 PO2+Q24 PO310 * G98 L99 * GO1Z+Q24 FQ5 * GO4 FQ4 * GO0 Z+Q21 * G98 LO * O/o7445 * G71
Drill directly to final depth Clear base of bore Return to setup clearance

Setup clearance (absolute) Current work surface (absolute) Final drilling depth (absolute) Approach setup clearance in rapid traverse Compute (new) drilling depth Compute (new) chip breaking height Drilling depth would not be attained Drilling Chip breaking Another drilling

step required?

a1
F 6

FMAX

Page P 114

Programming

Modes

HEIDENHAIN TNC 2500B

Parametric Programming Example: Ellipse as an SL cycle


Programming of a mathematical illustrated with an ellipse. Geometry curve will be

An ellrpse is defined according to the followrng formula (parameter form of the ellipse): X = a cos a Y = b sin a a and b are referred to as the semiaxes of the ellipse. Starting at 0 (02 = starting angle a,) and increasrng a In small increments (Ql = incremental angles Au) to 360 (03 = end angle a,), a multitude of points on an ellipse results. If these points are connected by short straight lines (see part program below, block N320). a closed contour is produced. The sine and cosine functions are described in detail under Parametric Programming, Trrgonometric functions. The machining direction of the ellipse (counterclockwise) and the selected radtus compensatron G41 produce an inside contour (pocket). The contour IS contained In the subprogram with program section repeat. out With the SL cycle contour geometry (G37). you can write a parameter program as an SL subprogram and execute this with the SL cycle roughout (G57) by selecting an appropriate rncremental angle. TOO MANY SUBCONTOURS

b=Q5

Note

Process

Roughing

Error message

If the incremental angle (Au = QO) selected for roughing out is too small, the control calculates too many short straight lines, which are interpreted as excessive subcontours. Remedy A relatively large incremental angle (e.g. 00 = IO) suffices for roughing out. For subsequent frntshing, the subprogram IS executed in the conventional manner with a finer incremental angle (e.g. 01 = 1). This program works with only one tool. It can be expanded to use a roughing cutter for roughing out (G57) and a finishing cutter for finishing (G58/G59). Also, a center-cut end mill (IS0 1641) is required or cycle G56 is to be applied for pilot drilling.

Finishing

Note

HEIDENHAIN TNC 2500B

Programming

Modes

Parametric Programming Example: Ellipse as an SL cycle


%94152500 Parameterdefinition G71 * Incremental angle Aa for contour Incremental angle Aa for contour Starting angle a, End angle ae*) Semiaxis a Semiaxis b X coordinate for the datum shift Y coordinate for the datum shift Setup clearance Z Pecking depth Z Blank form definitron
-

NlO DO0 QOO PO1 +lO * N20 DO0 QOl PO1 +l * N30 DO0 402 PO1 +0 * N40 DO0 403 PO1 +370 * N50 DO0 Q04 PO1 +45 * N60 DO0 QO5 PO1 +25 * N70 DO0 Q06 PO1 +50 * N80 DO0 Q07 PO1 +50* N90 DO0 QOS PO1 +2 * NlOO DO0 QO9 PO1 -5 * NllO N120 N130 N140 N150 N160 N170 N180 G30 G17 X+0 Y+O Z-10 * G31 G90 X+100 Y+lOO Z-t0 * G99 T25 L+O R+2.5 * T25 G17 SlOOO * GO0 G40 G90 Z+50 MO6 * Z+QS MO3 * DO0 Q14 PO1 +Q2 * G54 X+Q6 Y+Q7 * 2 * -QS PO2 +Q9 PO3 -5 100 PO5 +2 PO6 +45 100 *

roughing frnrshing

Copy starting Datum shift

angle for counter


4

Roughing

out

N190 G37 PO1 N200 G57 PO1 PO4 PO7 N210 G79 * N220 N230 N240 N250 DO0 DO0 GO1 L2,O

Define subprogram 2 - as contour label SL cycle rough-out (for more information, see SL Cycles) Cycle call Copy Incremental angle for finishing Copy starting angle for counter Drive tool to milling depth Z Call subprogram 2 Retract spindle axis, jump to start of program Label 2 Computation of the X and Y positions elliptical path

Finishing

QOO PO1 +Ql * 414 PO1 +Q2 * Z+Q9 FlOO * *

.-2

N260 Z+50 FlOOO MO2 *

Subprogram with program section repeat

N270 N280 N290 N300 N310 N320 N330 N340 N350

G98 DO7 DO6 DO3 DO3 GO1 DO1 D12 G98

L2 * QlO PO1 +Q2 * Qll PO1 +Q2 * 412 PO1 +QlO PO2 +Q4 * 413 PO1 +Qll PO2 +Q5 * G41 X+Q12 Y+Q13 F200 * 402 PO1 +Q2 PO2 +QO * PO1 +Q2 PO2 +Q3 PO3 2 * LO * G71 * than 360, so the contour
IS

on the

Feed rate for finishing Increase angle If angle not attained, jump to label 2

N9999 %94152500

* End angle a, is greater

safely completed

wrth the cutter.

Modified program

If only the curve of the ellipse is to be milled, lines NIO and N190 to N210 are not needed. Line N240 (drive tool to milling depth Z) is inserted behind line N320.

Page P 116

Programming

Modes

HEIDENHAIN TNC 2500B

-i

Parametric Programming Example: Sphere


Task Program 7513 machines sphere using concentric the horizontal plane. The size and locatron entered. a convex segment circular movements of a In

Geometry

of the sphere can be

You obtain a hemisphere Starting 3D angle End 3D angle Starting plane angle End plane angle Cutting conditions 01 02 Q6 07

when =O= = 90 = O = 360

you select:

Cutting is performed during both the advance return movements. The following can be selected: 3D angle increment 03 Downfeed rate 011 Milling feed rate 012

and

When selecting the 3D incremental angle, you have to make a compromise between the desired surface quality and the machining time. Small 3D incremental angles must be selected for high surface quality, but they require correspondrngly long machining times.

Tool required

A spherical

cutter is used for finishing.

Assigning values

O/o7816 G71 * NlO DO0 QOl PO1 +lO * N20 DO0 Q02 PO1 +5.5 * N30 DO0 403 PO1 +l * N40 DO0 404 PO1 +40 * N50 DO0 QOS PO1 +45 * N60 DO0 406 PO1 -90 * N70 DO0 Q07 PO1 +90 * N80 DO0 QOS PO1 +50 * N90 DO0 QO9 PO1 +50 * NlOO DO0 QlO PO1 -40 * NllO DO0 Qll PO1 +lOO * N120 DO0 Q12 PO1 +500 *

Starting 3D angle End 3D angle 3D incremental angle Sphere radius Setup clearance in Z Starting plane angle End plane angle X sphere center Y sphere center Z sphere center Downfeed rate Mrllrng feed rate

c=,

F 012

Blank

N130 G30 G17 X+0 Y+O Z-50 * N140 G31 G90 X+100 Y+lOO Z-t0 * N150 G99 Tl L+O R-t.5 * N160 TO G17 * N170 GO0 G90 Z+lOO MO6 * N180 Tl G17 S800 * call N190 L2,O * N200 GO0 Z+lOO MO2 *

Tool

Change/ Start position Subprogram

Roughing

If roughing

is required,

an end mill can be used with a correspondingly

larger sphere

radius (04)

HEIDENHAIN TNC 2500B

Programming

Modes

Page P 117

Parametric Programming Example: Sphere


d

Setting starting

the values

Starting position

N210 N220 N230 N240 N2.50 N260 N270 N280 N290 N300 N310 N320 N330 N340 N350 N360 N370 N380 N390 N400 N410 N420 N430 N440

G98 L2 * G54 X+QS Y+Q9 Z+QlO * I+0 J+O * DO0 Q20 PO1 +Ql * DO1 431 PO1 +Q4 PO2 +Q108 * L3,O * GlO G40 R+Q17 H+Q6 MO3 * GO0 Z+QS * GO1 Z+Q15 FQll * G13 H+Q7 FQ12 * G98 DO1 Dll L3,O GO1 Gil G12 DO1 Dll L3,O GO1 Gil G13 D12 Ll * 420 PO1 +Q20 PO2 PO1 +Q20 PO2 t-Q2 * Z+Q15 FQll * R+Q17 FQ12 * H+Q6 * 420 PO1 +Q20 PO2 PO1 +Q20 PO2 +Q2 * Z+Q15 FQll * R+Q17 FQ12 * H+Q7 FQ12 * PO1 +Q20 PO2 +Q2

Move datum to the sphere center Set circle center Starting and current 3D angle Compensate sphere radius (with tool radius) Compute starting posrtron Approach starting position Approach setup clearance Plunge cut at downfeed rate Crrcle segment to plane end angle

-/

Program

loop

+Q3 * PO3 99 *

3D angle increment If condition* is fulfilled, then jump to end Position computation Pre-positioning for withdrawal Return to plane starting angle 3D angle increment If condition* is fulfilled, then jump to end Position computation Pre-positioning Arc to plane end angle If condition* is fulfilled, then jump to start of loop

+Q3 * PO3 99 *

PO3 1 *

.-

End

N450 G98 L99 * N460 GO0 Z+Q5 * N470 G54 X+0 Y-t0 Z+O * N480 G98 LO *

Finished, retract Reset datum

Position computations

N490 N500 N510 N520 N530 N540

G98 DO6 DO3 DO7 DO3 G98

L3 * 414 PO1 Q15 PO1 416 PO1 417 PO1 LO *

Computations +Q20 +Q14 +Q20 +Q16 * PO2 +Q31 * * PO2 +Q31 * I Z components Radius components * Condition: if current 3D angle 020 is greater than or less than end 3D angle 02, then jump to 4 4 __

N9999 %7816 G71 * Computation values Q15: Current Z height 017: Current radius (polar radius) 020: Current 3D angle 031: Compensated contour radius Q108: Current tool radius

Cycle sphere

The program

can be used as a cycle:

1. Subprogram 2 (blocks N210 to N480) is written as a separate program. 2. Lines N210 and N480 are not required. Subprogram 3 (blocks N490 to N540 is written in place of block N260. 3. The user need only write the surrounding program (blocks NIO to N200) and then call the cycle in block N190 (PGM CALL).

Page P 118

Programming

Modes

HEIDENHAIN TNC 25008

Parametric Programming Example: Sphere


Machining sections of a hemisphere Program O/o7816 can also be used to machlne 3D angles. The graphic sections of a hemisphere end mill. by limiting the plane angles and

always shows the surface as cut by a cylindrical

Roughing End mill, R = 12 mm, 3D angle increment 4O

Finishing Spherical cutter, R = 3 mm, 3D angle increment lo

Hemisphere: 3D angle o to 9o Plane angle 0 to 360

3D angle 0 to 9o Plane angle -60 to 20

3D angle IO0 to 55O Plane angle -60 to 20

HEIDENHAIN TNC 2500B

Programming

Modes

Page P 119

Programmed Overview

Probing

The programmable probrng functron enables you to take dimension measurements before or dur-ing a program run. You can probe the upper surfaces of castings with varying heights, for example, to ensure that each is machined to the proper depth. In addition, thermally-induced position deviations of the machine can be determined at selected time intervals and compensated.

Proc

The probe moves to the starting position while maintaining the setup clearance (machine parameter). It then approaches the workprece at the measuring feed rate. Upon contact, the probed positron is stored and the probe retracts at rapid traverse to the setup clearance. If the stylus does not make contact before reachrng the maximum probing depth (machine parameter), the operating is aborted.

Initiate the dialog Input

PARAMETER NUMBER FOR RESULT PROBING AXIS/PROBING DIRECTION ?

Parameter Probing probing

number axis and direction positron,

All coordrnates of the starting incremental, if desired

Conclude

block

Example

The probe is first to be pre-positioned axis in positive direction. The probed

to X-IO, Y+20 and Z-20, and then probing result (X position) IS to be stored in 010.

begun

with the X

Program

TO G17 * GO0 G40 Z+200 MO6 *


G55 PO110 PO2X+ Tool change position Probing with the X axis in positive drrectron, measuring result in 010 Pre-positioning 010 contains the compensated X axis measurement after probing

G90 X-10 Y+20 Z-20 *

Page P 120

Programming

Modes

Programmed Probing: G55 Example: Measuring length and angle


Task A length (from the probing points 0 and 0) and an angle (from the probing points 0 and @) are to be measured with parameter programming.

Note

The followrng ing at right.

program

is a solutron to the draw-

The theory behind the measurement of angles explained briefly In Parameter Programming, Trigonometry functions.

is

Main program: Definition of probing points (pre-positioning)

O/o129 G71 * NlO DO0 Qll PO1 +20 * N20 DO0 Q12 PO1 +50 * N30 DO0 Q13 PO1 +lO * N40 DO0 421 PO1 +20 * N50 DO0 422 PO1 +15 * N60 DO0 423 PO1 +0 * N70 DO0 Q31 PO1 +20 * N80 DO0 432 PO1 +15 * N90 DO0 Q33 PO1 -10 * NlOO DO0 441 PO1 +50 * NllO DO0 442 PO1 +lO * Probing point 0 X, Y, Z coordinates pre-positionrng Probing point 0

for

Probing point 0 Z coordinate 033 valid for probing point 0 Probing point @I

N120 TO G17 * N130 GO1 G90 Z+lOO FlOOO MO6 *

Retract, insert probe system 0 Probe

Measure

length

N140 G55 PO1 10 PO2 ZX+Qll Y+Q12 Z+Q13 N150 G55 PO1 20 PO2 ZX+Q21 Y+Q22 Z+Q23 N160 Ll,O * N170 G55 PO1 30 PO2 Y+ X+Q31 Y+Q32 Z+Q33 N180 G55 PO1 40 PO2 YX+Q41 Y+Q42 Z+Q33 N190 L2,O * N200 G38 *

* * Approach auxiliary point 0 Probe Call subprogram 1 0 Probe * 0 Probe * Call subprogram 2

Measure

angle

N210 Z+lOO M02*

Program STOP Check result parameter (see Index M Machine Operating Modes, Program run. Checking/Changing 0 Parameters) Retract, jump to start of program

HEIDENHAIN TNC 25008

Programming

Modes

Page P 121

Programmed Probing: G55 Example: Measuring length and angle


Subprogram 1: measure length

N260 G98 Ll * N270 DO2 QOl PO1+Q20 PO2+QlO * N280 G98 LO * N285 * N290 G98 L2 N300 DO2 Q34 PO1+Q40 PO2+Q30 * N310 DO2 Q35 PO1+Q41 PO2+Q31 * N320 D13 402 PO1+Q34 PO2+Q35 * N330 DO1 Q02 PO1-360 PO2+Q2 * N340 G98 LO * N9999O/o129 * G71

Measured height in parameter 01.

or depth Z

Subprogram 2: measure angle

Measured

angle

In parameter

Q2.

Page P 122

Programming

Modes

HEIDENHAIN TNC 2500B

Teach-In

Tool compensation

Position values (coordinates) acquired via Capture actual position contain the length and radius of compensation for the tool in use.

1. Tool definition

in the part program

3 NlO G95 Tl L+O R+O


2. Tool definition / Tl L+O R+O in the central tool file

Therefore it is advisable when programming with Capture actual position to enter the correct radius compensation (G41. G42 or G43. G44) and use L = 0 and R = 0 in the tool definition. If the tool breaks or another tool is selected instead of the original, then a different length and radius can be taken into account. The new compensation are differences: Radius compensation R = R2-Fi, or R = R3-R, R = RI = R2 = R3 = radius compensation for tool radius of the original tool radius of a new tool tool radius of a new tool the tool definition tool 0 0 0 values for the tool radius

R=O

R= +..,

R= -__

The compensation R can be positive or negative, depending Inserted tool IS larger (+) or smaller (-) than the origrnal tool.

on whether

the tool radius of the newly

Length compensation

The compensation for the new tool length IS also determined (see Tool definition, Transferring tool length). The new compensations are entered in the tool definition

as the difference

to the originally

used tool

of the original

tool (R = 0, L = 0)

HEIDENHAIN TNC 25008

Programming

Modes

Page P 123

Teach-In

Capture actual position

The actual tool positron can be transferred to the part program with the Capture actual positron key.

Applications

In this way you can capture: positions l tool dimensions (see Tool Definition)
l

Process

Move the tool to the desired

positron.
PROGRRMMING N25 N30 N40 NSO N60 N70 N9999
EBB

Open a program block (e.g. for a strarght line) in the Programming and editing operating mode. Select the axis from which the actual value is to be transferred. This axis position IS transferred to memory by pressing the Capture actual position key.

RND
G40 X+100 G90 II

EDITING X+10 Y+10 M03 s *

G54 G28
It100

X
G90

#f Jt0 4~ G71

1y
Ht31S *

G73 G72

F0,8 x7410

4~

_________-_----_________________
FICTL. X z t + 9,375 8,985

q t
R t

8,200 0,180

MS/3

Example

Move the axis or axes via the axis keys.

Input Enter radius compensation if required. . . . ($3;;; positions axis Enter feed rate If required. Enter miscellaneous function if required. Conclude block

cl

Page P 124

Programming

Modes

HEIDENHAIN TNC 25008

Test Run

In the Test run operating mode, a machining program IS checked for the following errors without machine movement:
l

l l l

Overrunning the traversing range of the machine Exceeding the spindle speed range Illogical entries, e.g. redundant Input of one axis Failure to comply with elementary programming rules e.g. cycle call without a cycle definition Certain geometrical incompatibilities

TEST

RUN

17410 G71 3f N10 G99 Tl L+0 R+2 c# N20 Tl El7 Sl000 #f N2S G00 G40 G90 X+10 N30 GS4 X+100 Y+20 #f N40 G28 X 3~ NS0 It100 J+0 * N60 673 G90 H+315 iK _____--------------------------RCTL. El 2 + t 9,375 8,965 Y R

Y+10 M03 *

t +

8,200 0,180

MS/9

Testing . the program

Initiate the dralog

PROGAM SELECTION PROGRAM NUMBER =

Select the program

to be tested.

TO BLOCK NUMBER =
or

Key in and confirm the block number up to which the test is to run.

Test the complete

program.

No apparent errors

If the program contains no apparent errors, the program reached, or a jump is made back to the start of program

test runs until the entered block number is if no G38 (STOP) or MO6 was programmed

G38/M06

If a G38 or MO6 was programmed, pressing the NO ENT key.

the test can be continued

by entering

a new block number

or by

Error

If an error IS found, the program test is stopped. The error is usually located block. An error message is displayed on the screen. The program test can be halted with the DEL 0 key and aborted

In or before the stopped

at any time

HEIDENHAIN TNC 2500B

Programming

Modes

Page P 125

Graphic

Simulation
GRAPHICS

Machining programs can be simulated graphically and checked In the Program run operating modes Full sequence and Single block, if a blank has been prevrously defined (G30/G31). More information on the defrnrtron of the blank can be found in the section Program Selection, Blank form definition. GRAPHICS After selecting a program, the menu shown at the right is displayed by pressing the GRAPHICS MOD key twice. One of the versrons of the graphic presentations can be selected with the vertical cursor keys and entered with the ENT key. The graphic simulation or internal started with the START key Fast data image processing computation is

GRAPHICS

SELECTION=ENT FRST SD-VIEW PLRN IMRGE VIEW DRTR

END-NOENT PROCESSING

With Fast data image processing only the current block number is drsplayed on the screen and the internal computing also indicated by an asterisk (* = control is started) When the program has been processed, machined workpiece can be displayed view, view in three planes or 3D view. the in plan

Plan view with depth indication

The workprece center is shown in the plan view with up to 7 different shades: the lower the darker.

View three

in pianes

The workpiece IS shown - like In drafting plan view and two sections. The sectional keys.

- with a

planes can be moved via the cursor

The view in three planes can be switched from the German to the Amertcan projection via a machine parameter. A symbol (In conformance to IS0 6433) rndrcates the type of projection: Preferred Preferred German American * 4=

Page P 126

Programming

Modes

HEIDENHAIN TNC 2500B

Graphic

Simulation
GRAPHICS

3D view

The program view. The with The L = A =

is simulated

in a three-dimensronal

displayed workptece can be rotated by 90 each activation of the horizontal cursor keys. orientation is indicated by an angle. o 1= 180 90 r = 270

If the height to side proportron is between 0.5 and 50, the type of display can be changed with the vertical cursor keys. You can switch between a scaled and non-scaled view. The short height or side is shown with a better resolution in the nonscaled view.

Magnifying

You can magnify a detail of the displayed work with the MAGN key. A wire model with a hatched surface appears next to the graphic. This marks the sectional plane. the plane You can select a different vertical cursor keys. sectional plane with the

Selecting sectional

Trimming

You can trim the selected section with the horizontal

plane or cancel the cursor keys.

Magnifying the detail

Once the desired detail is displayed, select the dialog TRANSFER DETAIL = ENT with the vertical cursor keys and confirm with the ENT key. The remaining workpiece screen with MAGN. is displayed on the

MAGN

Magnification

Another graphic simulation of machining of the magnified detail can be executed in the plan view, the view in three planes or the 3D view via the START key.

HEIDENHAIN TNC 2500B

Programming

Modes

Page P 127

Graphic

Simulation
GRAPHICS

You can restore the complete blank with the BLK FORM key and restart simulation with START.

Tips

The 3D view and View in three planes are especially realistic, but they require extensive computing. For long programs, we therefore recommend displaying the workpiece with Fast data image processing or In the quicker Plan view with depth indication first, and then switching to the 3D view or the View in three planes.

Displaying

details

The following aids are available if fine details are to be examined: Trim the blank and magnify in an additional graphic program run
l

Restrict the blank detail to the section

of interest.

Tool call

A tool call must be programmed

with T prior to the first axrs movement

to designate

the tool axis. program run

Specifying the spindle axis in the BLK FORM definition Both entries for the axis must be the same. If the tool axis is not given, an error message appears

does not suffice for the graphic

after starting the graphics.

Page P 128

Programming

Modes

HEIDENHAIN TNC 2500B

External Data Transfer General information


The control has one data interface following standard: . RS-232-C (ISO) The data interface can function for read-in or output of programs. The data format complies with the

in two dfferent

manners: computers. reader, etc.

Blockwise transfer for the HEIDENHAIN FE 401 Floppy Disk Unit and compatble Standard data transfer for the HEIDENHAIN ME magnetic * (no longer in production).

tape unit*, or for a printer, punch,

Device adaptation

The TNC can be adapted as user parameters. The settings MOD):


l l l

to various

peripheral

devices via machine are permanently

parameters,

which

can be accesses via

for three different

peripheral

devices

stored in the TNC (selectable

FE = for HEIDENHAIN ME = for HEIDENHAIN

FE 401 Floppy Disk Unit. ME magnetic tape unit. parameters to connect a non

EXT = external devices. Interface defined by the machine manufacturer or user via machine HEIDENHAIN device such as a printer, computer, etc.

External programming

Programs
l

can also be written

externally. and the following instructlons. block, CR LF or LF or CR FF or FF must be pro-

Observe the programming At the start of program grammed.

rules in this manual

and after every program

After the end of program block, CR LF or LF or CR FF or FF) and also ETX (Control C) must be pro grammed. Any character can be substituted for ETX. Spaces between During read-in single words of NC programs, can be omitted. comments that are marked with * or ; are Ignored. Trailing zeros can be omitted.

l l l

I CR, LF at the start of program and CR, LF or LF or FF after every block are not requtred transfer. This function is assumed by the control characters.

for blockwise

HEIDENHAIN TNC 2500B

Programming

Modes

Page P 129

External Data Transfer Iranster menu


Read-in/ read-out Part programs can be read-out or read-in by the control. For example, the Read-in program display the control means: data is entered from the floppy disk station and received by the control. Program transfer in the Programming and editing operating mode must be Initrated from the control. on

Transfer

menu

The transfer mode is selected vra a menu, which offers different read-in and read-out alternatives.

PROGRAMMING AND EDITING ~uPnnmufi 0 PROGRAM DIRECTORY READ-IN ALL PROGRAMS READ-IN PROGRAM OFFERED READ-OUT SELECTED PROGRAM READ-OUT ALL PROGRAMS

Selections

Read-in

to the TNC

Read-out

from the TNC program is read-out. IS read-out

PROGRAM DIRECTORY
The list of program numbers on the data medium is displayed. The programs are not transferred.

READ-OUT SELECTED PROGRAM


A single, selected

READ-OUT ALL PROGRAMS


The entire NC program memory

READ-IN ALL PROGRAMS


All programs ium. are read-in from the data med-

READ-IN PROGRAM OFFERED


The programs are offered in the sequence in which they were externally stored and, if desired, can be read-in.

READ-IN SELECTED PROGRAM


A srngle, selected program is read-in.

Interrupting the data transfer

A started data transfer can be interrupted on the TNC by pressing After interruption of the data transfer, the following error message

the END Cl key appears:

PROGRAM INCOMPLETE
Data can also be transferred directly between two controls. The receiving control must be started first

Transfer TNC - TNC

Page P 130

Programming

Modes

HEIDENHAIN TNC 2500B

External Data Transfer Connecting cable/Pin assignment RS-232-C


HEIDENHAIN devices Transmission cable Length 3 m (10 ft) Id -Nr. 242869 ME IddNr. 23975801 RS-232-C Cable adapter -

for
LE

Cable adapter on the machine length max. 17 m (55

Id.-Nr. 239760

* 25.pole flange socket LE 2500. X25 HEIDENHAINstandard cable

The RS-232-C

data interface

has a different

pin layout at the LE and at the adapter

block

Non-HEIDENHAIN devices Cable for RS-232-C Cable adapter at the machine * LE

* 25-pole flange socket LE 2500: X25

Recommended pin layout for nonHEIDENHAIN devices

1 2 3 4 5 6 7

TXD RXD RTS CTS DSR DTR

TRANSMIT RECEIVE REQUEST CLEAR DATA SET

DATA DATA TO TO SEND SEND

READY

DATA

TERMINAL

READY

R-232-C DCl/DC3 HEIDENHAIN TNC 2500B

data transfer protocol Programming

with

Modes

Page P 131

External Data Transfer Peripheral devices


Adaptation The control Interface must be set for the specific device which is to be connected

HEIDENHAIN devices FE, ME

HEIDENHAIN operation : The adaptation The transfer

devices are mated with the TNC controls

and are therefore

especially

easy to put into

for FE or ME can be selected

via MOD.

The suitable

standard

cable can be ordered

rate can be altered for the FE 401 B.

Connections

In burlt-in controls, peripheral devices can usually be connected panel or another accessible location on the machine.

via a cable adapter

on the operating

Non-HEIDENHAIN devices

Non-HEIDENHAIN
l

devices

must be indrvidually

adapted.

This also includes: effective by selecting EXT.

Adapting the control via machine parameters. These settings are stored after Input and are automatically Adapting Wiring the peripheral the data transfer device, e.g. via switches. cable.

0 Setting the baud rates for both devices.


l

Please remember:

Both sides must be set identically. You should always document the settings!

Page P 132

Programming

Modes

HEIDENHAIN TNC 25008

External Data Transfer FE floppy disk unit


Preparing the FE *I Connect the FE to the mains, plug in the data cable, switch on, insert floppy disk in the upper drive, select the baud rate if necessary. Please note when
l

writing

a diskette: before writing for

You must format the diskette the first ttme.

0 Do not write-protect

the diskette. Continue pressing until RS-232-C INTERFACE appears.

Setting

the TNC

Select operating

mode at the TNC

Terminate

the MOD operating

mode.

Examples for using the FE Read-out selected program

Select operating READ-OUT OUTPUT

mode SELECTED PROGRAM = NOENT Select the program, Output the program after program e.g. program 14. Confirm the function.

= ENT/END

EXTERNAL

DATA

OUTPUT

The FE is started and stopped transfer. The next program number

OUTPUT

= ENT/END

= NOENT

is then highlighted. or

Select and output the next program terminate output. Very important!

Read-in selected program

Select operating READ-IN

mode PROGRAM Confirm the function.

SELECTED

PROGRAM EXTERNAL

NUMBER DATA

= INPUT

Enter the number,

read-in.

The FE generally like an ME.

functions

with blockwise

transfer

and can be switched

over on the rear to operate

*) The entire range of functions

for the FE is described

in the operating

manual

for the FE

HEIDENHAIN TNC 2500B

Programming

Modes

Page P 133

External Data Transfer Non-HEIDENHAIN devices


EXT After setting the TNC data interface Standard data transfer for prtnter, reader, puncher etc. Blockwise computer. transfer for to non-HEIDENHAIN devices, the control must be adapted by machine to EXT. the following modes can be selected via machine parameter:

To transfer data from the control parameters. The transfer

rate is set via the MOD function

BAUD RATE.

Resetting the TNC to EXT

Select at the TNC

Continue pressing until RS-232-C interface appears.

RS-232-CINTERFACE

Continue appears. Terminate

pressing

until the EXT setting mode.

the MOD operating

Standard data transfer

For standard the control:

data transfer

(e.g. to a printer), you only have to enter the followrng data transfer is selected). parameters).
IS

machine

parameters

at

MP 5030 = 0 (standard

MP 5020 = e g 168 (data format) (see External Data Transfer, Machine Blockwise transfer

For blockwise transfer from a computer, transfer software from HEIDENHAIN for personal computers. For this operating mode, you must set the following machine MP 5030 MP 5020 = 1 (blockwrse transfer
IS

required, parameters:

e.g. the data transfer

software

selected).

= e.g. 168 (data format).

The following machine parameters determine the control character (for description see External Data Transfer, Machine parameters) and are valid for the data transfer software from HEIDENHAIN. If different transfer software is used, the machine parameters must be adapted correspondingly. MP MP MP MP MP MP 5010 5010.1 5010.2 5010.3 5010.4 5010.5 = = = = = = 515 17736 16712 279 5382 4 the data interface is normally set to FE Then the

When using the transfer software from HEIDENHAIN, above machine parameters need not be entered. Adapting to non-HEIDENHAIN devices Compare the interface descriptions Then proceed as follows: 0 Determine the common The peripheral device
l l l l l l IS

of both devices

settings (data format, baud rate). usually set vta internal switches. cable, and wire the cable.

Determine

the pin layout for the data transfer device

Plug in the data transfer cable Plug in the power cord of the peripheral Switch on power. software Start the transfer Select the transfer

from the computer,

If required transfer.

menu on the TNC with the EXT key and start the desired

Page P 134

Programming

Modes

HEIDENHAIN TNC 2500B

External Data Transfer Machine parameters


The followrng settings To select the machine MP 5010 Control characters for blockwise transfer MP 5010.0 Bit 0 8 0 ..7 8 15 7 15 7 15 7 7 15 are only effective when operating parameters, see index A General Function ETX or any ASCII character. STX or any ASCII character. H or any for data E or any for data H or any for data A or any for data ASCII input ASCII input Character Character for end of program. for start of program. block block block block ETB and SOH: 279 ACK and NAK: 5382 H and A. 16712 the data Interface in the EXT. operating mode. Informatron, MOD Functrons. User parameters. Input values ETX and STX: 515 H and E, 17736

5010.1

character. It IS sent in the command prior to the program number. character. It is sent In the command after the program number.

5010.2

0 8

ASCII character. It is sent In the command output prior to the program number. ASCII character. It is sent in the command output after the program number.

5010.3

0 8

ETB or substitute character (decimal code l-47) is sent at the end of the command block. SOH or substitute character (decimal code l-47) is sent at the beginning of the command block. ACK or substitute character (decimal positive acknowledgement. It IS sent is correctly received. NAK or substitute character (decimal negative acknowledgement. It is sent is incorrectly transferred. code l-47): when the data block code l-47): when the data block

5010.4

15

5010.5

EOT or substitute character (decimal code l-47) is sent at the end of the data transfer. software from HEIDENHAIN

EOT: 4

I The input values apply for the data transfer

MP 5010.0 This defines one character from the ASCII character code for the end of program of program for external programming ASCII characters l-47 are accepted. End of program is sent at standard data interface and blockwise transfer. Start of program is only sent at blockwise transfer.

and one for the start

Determining bit significance MP 5010.0

Example: Bits 0 - 7 Significance of bit

End of program: Start of program: 7 128

ETX STX 61 64 0 14 I 16384 0 0

BINARY code BINARY code 51 32 0 13 I 8192 0 2 4096 0 4 16 0 I 31 8 0 1 2048 0 I

00000011 00000010 2 4 0 101 1024 0 1 2 1 91 512 1 0 1 1 8 256 0

Enter 0 or 1 accordingly Bits 8 - 15 Significance of bit I

0 15 I 32768

Enter 0 or 1 accordingly Determine input value 1 2 + 512 515

The input value for MP 5010.0 IS thus 515.

HEIDENHAIN TNC 2500B

Programming

Modes

Page P 135

External Data Transfer Machine parameters


The data format and the type of transfer stop are determined wise transfer. 0 is entered for standard data interface. MP 5020 Data format Function 7 or 8 data bits Bit 0 Input + + Block Check Character (BCC) 1 2 3 4 5 7 0 0 1 t1 6 0 1 0 1 + + + + + + 0 + 7 data 8h bit 1 + 8 data 8h bit bits (ASCII code with = parity) bits (ASCII code wrth = 0 and gth bit = parity) character by MP 5020. Bit 1 is only set for block-

Input values

1 -

0 + any BCC character 2 --f BCC character no control 0 ---f inactive 4 + active 0 + inactive 8 + active

Transfer stop due to RTS Transfer stop due to DC3 Character or odd Character Number parity even parity required of stop bits

+ 0 -even +16-odd + 0 + not required + 32 + required 1 2 1 1 l/2 Stop bits Stop bits bit 6: + 64 Stop bit bit 7: + 128 Stop bit value to be entered for MP 5020

32

128 169

Notes on bit 1

Input value does not contain the significance 2: The BCC can accept an arbitrary character (also control

character)

in blockwise

transfer

Input value contains the significance 2: If the computation of the BCC during blockwise transfer results in a number less than 20 HEX) (control character), then a space character (20 HEX) is additionally sent prior to ETB. In this case, the BCC IS always greater than 20 HEX and therefore not a control character. I) HEX = Hexadecimal

Example of value determination

Standard

data format: 7 of bit 128 1 61 64 0

7 data bits (ASCII code with 7 bits, even parity) Transfer stop due to DC3. 1 stop bit 5 32 1 4 16 0 31 8 1 parameter 21 4 0 5020. 1 1 2 0 0 1 0

Bits 0 - 7 Srgnificance

Enter 0 or 1 accordingly After adding the significances, In our example: 168.

you obtain the input value for machine

MP 5030 Operating mode of the interface

Operating mode data interface RS-232-C This parameter determines the function of the data interface. 0 A standard 1 blockwise data interface (normally for printer, reader, punch) transfer (normally for computer link)

Page P 136

Programming

Modes

HEIDENHAIN TNC 2500B

External Data Transfer Machine parameters


The following settings To select the machine MP 5010 Control characters for blockwise transfer MP 5010.0 Bit 0 8 0 8 5010.2 0 8.. 5010.3 0 8 5010.4 0 7 15 7 15 7 15 7 15 7 are only effective when operating parameters, see index A General Function ETX or any ASCII character. STX or any ASCII character. H or any for data E or any for data H or any for data A or any for data ASCII input ASCII input Character Character for end of program. for start of program. block block block block ETB and SOH: 279 ACK and NAK: 5382 H and A: 16712 the data interface in the EXT operating mode Information, MOD Functions, User parameters. Input values ETX and STX: 515 H and E: 17736

character. It IS sent in the command prior to the program number. character. It is sent In the command after the program number.

ASCII character. It is sent In the command output prior to the program number. ASCII character. It IS sent in the command output after the program number.

ETB or substitute character (decimal code l-47) is sent at the end of the command block. SOH or substitute character (decimal code 1-47) is sent at the beginning of the command block. ACK or substitute character (decimal positive acknowledgement. It IS sent IS correctly received. NAK or substitute character (decimal negative acknowledgement. It is sent is incorrectly transferred. code 1-47): when the data block code I-47). when the data block

15

5010.5

EOT or substitute character (dectmal code l-47) is sent at the end of the data transfer. software from HEIDENHAIN

EOT: 4

The input values apply for the data transfer

MP 5010.0 This defines one character from the ASCII character code for the end of program of program for external programming. ASCII characters l-47 are accepted. End of program is sent at standard data interface and blockwise transfer. Start of program is only sent at blockwise transfer.

and one for the start

Determining bit significance MP 5010.0

Example: Bits 0 - 7 Significance of bit

End of program: Start of program: 7 128

ETX STX 61 64 0 14 I 16384 0 0 5 32

BINARY code BINARY code 4 16 0 I 2 4096 0 0 I 3 8 0 1 2048 0 I

00000011 00000010 2 4 0 101 1024 0 1 2 1 91 512 1 0 1 1 8 256 0

Enter 0 or 1 accordingly Bits 8 - 15 Significance of bit I

0 15 I 32768

0 3 8192

Enter 0 or 1 accordinalv Determine input value: 1 2 + 512 515

The Input value for MP 5010.0 is thus 515.

HEIDENHAIN TNC 2500B

Programming

Modes

Page P 135

External Data Transfer Machine parameters


The data format and the type of transfer stop are determined wise transfer. 0 is entered for standard data Interface. MP 5020 Data format Function 7 or 8 data bits Bit 0 input + + Block Check Character (BCC) 1 2 3 4 5 7 t 0 0 1 1 6 0 1 0 1 + + + + + + 0 + 7 data 8h bit 1 --f 8 data 8rh bit bits (ASCII code with = parity) bits (ASCII code with = 0 and gth bit = parity) character by MP 5020. Bit 1 IS only set for block-

Input values

1 -

0 + any BCC character 2 + BCC character no control 0 + Inactive 4 + active 0 + inactive 8 + active

Transfer stop due to RTS Transfer stop due to DC3 Character or odd Character Number parity even parity required of stop bits

+ 0 + even +16-odd + 0 + not required + 32 + required 1 2 1 1 l/2 Stop brts Stop bits bit 6: + 64 Stop bit bit 7: + 128 Stop bit value to be entered for MP 5020

32

128 169

Notes on brt 1

Input value does not contain the significance 2: The BCC can accept an arbitrary character (also control

character)

in blockwise

transfer.

Input value contains the significance 2: If the computation of the BCC during blockwise transfer results in a number less than 20 HEX) (control character), then a space character (20 HEX) is addrtionally sent prior to ETB. In this case, the BCC IS always greater than 20 HEX and therefore not a control character. I) HEX = Hexadecimal

Example of value determrnatron

Standard

data format: 7 of bit I 128 II 6 64 01

7 data bits (ASCII code with 7 bits, even parity) Transfer stop due to DC3, 1 stop bit 5 32 II 4 16 01 3 8 II parameter 2 4 01 5020. 1 2 01 0 1 0

Bits 0 - 7 Significance

Enter 0 or 1 accordingly After adding the signrficances, In our example: 168.

you obtain the input value for machine

MP 5030 Operating mode of the interface

Operating mode data interface RS-232-C This parameter determines the function of the data interface. 0 2 standard 1 blockwise data interface (normally for printer, reader, punch) transfer (normally for computer link)

Page P 136

Programming

Modes

HEIDENHAIN TNC 2500B

Address

Letters in IS0

Adress code % A B C D F F F G H H I J K L L L M N P P Q R R R R R S T T U v w X Y z *

Function Program (rotation (rotation (rotation Parameter start or call about X-axis) about Y-axis) about Z-axis) definition (Program parameter Q)

Feed rate Dwell with GO4 Scaling factor with G72 Preparatory function (G code) dimensions

Polar coordinate angle In incremental/absolute Angle of rotation with G73 X-coordinate Y-coordinate Z-coordinate of circle center/pole of circle center/pole of circle center/pole

Set label number with G98 Jump to label number Tool length with G99 Miscellaneous Block number Cycle parameter in cycles Parameter in parameter definitions Program parameter 0 functions

Polar coordinate radius Circle radius with G02/G03/G05 Rounding-off radius with G25/G26/G27 Chamfer length with G24 Tool radius with G99 Spindle speed with G99 parallel to X-axis parallel to Y-axis parallel to Z-axis

Tool definition Tool call

Linear movement Linear movement Linear movement X-axis Y-axis Z-axis End of block

HEIDENHAIN TNC 2500B

Programming

Modes

Page P 137

Parameter

Definitions

in IS0

D 00 01 02 03 04 05 06 07 08 09 10 11 12 13

Function Assign Addition Subtraction Multiplication Division Square Sine Cosine Root-sum If If If If of squares (c = IGG?) root

Reference P 106 P 106

Page

P 106 P 107 P 107 P 109

equal, jump unequal, jump greater, jump less, jump sin a and c cos a)

Angle of c

P 108

Page P 138

Programming

Modes

HEIDENHAIN TNC 25008

G Codes

3roup ath types

IG

1 Function Linear interpolation, Linear interpolation, Circular interpolation, Circular Interpolation, Circular interpolation, Circular interpolation, previous contour Paraxial positioning Linear interpolation, Linear interpolation, Circular interpolation, Circular interpolatron, Circular interpolatron, Circular interpolation, previous contour Cartesian, rapid traverse Cartesian Cartesian, clockwise Cartesian, counterclockwise Cartesian, no direction specified Cartesian, tangential transition from block polar, rapid traverse polar polar, clockwise polar, counterclockwise polar, no direction specified polar, tangential transition from

1 Non-modal

Reference Page P 25 P 26 P 33 P 39

E? E :z 07 10 1: 1: 16 zycles 04 z: z; 2: :i 7; 5: 5: 5: E 79 Selection of working plane 1; 2 Chamfer, corner rounding, approach and departure zz 26 27 29 Blank form definition Z? Tool path compensation 38 40 :: :i 50 :A Unit of measure ?f Dimensions ii? 98 ,.1 99 HEIDENHAIN TNC 2500B

M 18 P 43 P 44 P 45

Dwell Mirror image Oriented spindle stop Pocket contour definition Designates program, call via G79 Datum shift Pre-drilling (used with G37) Roughing out (used with G37) Contour milling clockwise (used with G37) Contour mlling counterclockwise (used with G37) Scaling factor Coordinate system rotation Slot milling Rectangular pocket milling clockwise Rectangular pocket milling counterclockwise Circular pocket milling clockwise Circular pocket milling counter-clockwise Peck drilling Tapping Cycle call Plane selection XY, tool axis Plane selection ZX, tool axis Plane selection YZ, tool axis Tool axis = 4h axis Chamfer with length R Corner rounding with R Tangential contour approach Tangential contour departure Designate last nominal value Z Y X

P P P P P P P P P

102 96 104 78 103 94 89 78 90

P 100 P 98 P 71 P 73 P 75 P 67 P 70
l

P 65 P 20

with R with R as pole

0 0 0 0 0

P 27 P 37 P 50 P 42 P8

Blank workpiece definition for graphics: min point Blank workpiece definition for graphics: max. point STOP program run No tool compensation (RO) Tool path compensation, left of contour (RL) Tool path compensation, right of contour (RR) Paraxial compensation extension (R-t) Paraxial compensation, reduction (R-) Program protection (at start of program) Next tool number (when using central tool memory) Touch probe function Dimensions specified in inches (at start of program) Dimensions specified in millimeters (at start of program) Absolute dimensions Incremental dimensions Set label number r. 1 tool uetrnrtion

P 20 P 15 P 17 P7

0 a

P 119 P6 A 17

P 56 n ,I? rI

Programming

Modes

M Functions
Miscellaneous functions with txedetermined function

YY

1 Lycle cali errecrlve

DIocKwise

Page P 140

Programming

Modes

HEIDENHAIN TNC 2500B

M Functions Vacant miscellaneous

functions

Effective at Begin of End of block block

10
11 l

54 55
56

l l l I I l l I I

12 15 16 I 17 I 18
19

l l l I l l l l I l l l l l

I 57 I

I 59 I
60 1
61 I

0
l l

I
l

20 I 21

I I 22 I / 23 I
24 25 1 26 1 27 1 I I I

I I lel I I

I I I I

l l l l

1 28 I
29 31 32 I 33 I I 34 I I 35 I 36 j 37 I I 38 I I 39 I 41 42 43

I I
l

I I I
l l I I I l l l l l l

l l l

I I I

I 62 63 64 65 66 67 I 68 I 69 I 70 71 77 73 74

I 1 1

I
l l l l l

I
I

I
I

l l l

I
j I 1

I
l l l l

I I

I I I

l l l l l

I I

77 78

I I I

79

:
82 83 84 / 85 1 I 86 I 1 87 1 1 88 1
l l l

:
46 47 48
49 l l l l l l

I I I

l l l l

I I I

50 51

These miscellaneous functions are assigned by the machine tool builder and are described in the operating rnstructrons for your machine tool.

HEIDENHAIN TNC 25008

Programming

Modes

Page P 141

Length

gauges

and display

units

Incremental rotary and angle encoders Absolute rotary encoders

Incremental

linear encoders

Digital readouts

for retrofitting

machine

tools

TNC contouring

controls

+ - !!A!!!

HEIDENHAIN

25666420 C

10192

Printed r Germany

Subject

to

alteration

Working

plane: Tool axis


Z (G17) x iG18i Y (G19)

Program (90) Working


xv. YZ I

Section

Repeat:
G98 L2 GO0 G91 X+10 L2.5 M99

plane

I Reference
x Y Z

axis

lOoI
.

Label number ldentlfles program section to be repeated Repeat five times = execute SIX times

TNC 2500B Contouring

Control

Subprogram: Tool radius compensation:


Subprogram call and L4.0 GO0 G40 G98 G98 L4 LO G90 Z+lOO MO2

MO2 identlcates end of maIn program return to begInnIng of program Beginning of subprogram End of subprogram (Further subprograms)

Cycles: G

Cycle

effective after call-up


. . . . . .

effective immediately

Program
Call another

call:
program with

!B
$ Z = rxremental P = thread pitch advance I+50 J+30 G13 G41 G91 H-2520

83 84 74 75176 77178 39 37 56 57 58/59 54 28 73 72 04

Pecking kww Slot mllllng Pocket mllllng Circular pocket Program call Define contour PIlot drilling Rough-out contour mllllng Datum shift Mirror image Rotation Scaling factor Dwell time

Helical
Incremental

interpolation:
value H = 360 powon 2+12

Approach stamng Define pole Hellcal lnterpoiatlon .

Machine

control: Manual
The axes can be moved via the external axis dIrectIon buttons The position displays can be set to desired values The axes can be driven either by using the electronic handwheel or by entering a jog increment via the external axls dIrection keys The axes are moved to or by a manually-entered dlmenslon with the chosen radius compensation, rate and M function The block IS not stored1 After start of the program la the external the program WIII automatically be executed end of the program or STOP Any single block can external START key be started separately feed

. . . . . . . .

Right-hand inner
G41 G42 (RL) (RR)

thread outer
G42 G41 (RR) (RL)

Left-hand inner
G42 G41 (RR) (RL)

thread outer
G41 G42 (RL) (RR) clockwise (CW) counterclockwise ICCW

tool
posltlve

axis

negative

q q
Ia

Electronic Handwheel Positioning via MDI

Contour
Program

Cycles:
structure when subprograms machlnlng with several tools G37 G56 PO1 PO1

Select

program

number % 234 G71 G30 G17 X+0 Y+O Z-40 G31 G90 X+100 Y+lOO Z+O G99 Tl L+O Rf5 TO G17 GO0 G40 G90 Z+lOO Tl G17 SIOOO to the workplece compensation (RL) X-20 z-20 Y-20 MO3 Ia

L!st of contour

Program 234 ,n mm Blank form deflnltlon Tool Tool Tool Tool deflnltlon call change call

Program Run, Full Sequence Program Run, Single Block

START key, up to the via the

Drill defw/call Contour cycle pilot drllltng Pre-oositlon cvcle call Roughing cutter define/call Contour cycle rough-out Pre-positIon. cycle call Finishing cutter define/call Contour cycle contour milling Pwoosltlon. cvcle call
End of maltprogram, return Contour subprograms

l3l

posItIon next

MO6 Programming: Ea Programming Er Editing Test


Part programs They can also V 24 interface can be entered. be read-In and checked read-out and altered via RS-232-Q

G57

PO1

Starting Working G58 PO1

posItion, depth

1 contour

MO2
G98 G98 LO

Coordinate Coordinate
Datum shift Mirror Image Rotation Scaling factor

Transformations: transformation

Activate
G54 G28 G73 G72 X+20 X H+45 FO.8 Y+30 Z+lO

Cancel
G54X+OY+OZ+O G28 G73 H+O G72 Fl

Tanqentlal Strayght line Chamfer Straight line Rounding Straight line Circle center Circle. incremental Last contour point.

point, w!th approach

GO1 G41 X+0

Y+O F200

absolute

G26 RI5 y+100 G24 R20 x+100 G25 R20 Y+25 I+100 J+O GO3 G91 X-25 Y-25 GO1 G90 X+0 Y+O G27 R15 GO0 G40 X-20 Z+lOO MO2 Y-20

Part programs are tested for loglcal errors such as machine traverse limit vlolatlons. double programnxng of axes etc

Test Graphics: GRAPHICS


Part programs are graphically simulated in plan few. projectIon I three plains and 3D view. This test run IS conducted in the full block and sr@e block operatlng modes and IS started with the START key on the control keyboard

Tangential departure End posltlon. next to the workplece Retract. return to beginntng of program

Efe< :tive 31OCI b,I < wjir ,. ?d

. .

. .

. .
.

.
. .

.
.

.
. . .

. . . . .

You might also like