Download User Manual ISO Programming 2500 B
Transcript
. HEIDENHAIN e !!!A User Manual IS0 Programming TNC 2500B Contouring Control Screen displays PROGRflM RUN/FULL Operating mode Error messages/dialog SEQUENCE 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 t&N- 2 + 2 0,000 20,000 s 1000 x + Y + Tl 98,008 1,560 R + YN ROT SCL F t M03 m w--w 10,000 1,000 45,000 0,800000 M3/9 L Status drsplay: ACTL.: x Y z etc. *: Type of position display, switchable with MOD (further displays: NOML, DIST., LAG - see index “General Positron coordinates 1 N: S: ROT: SCL: cc: “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 T...: z: s: Called tool Spindle axis Spindle speed F: M: Feed rate Spindle status (M03, M04. M05, M13, M14) Preceding block Current block Next block Block after next Information”) Status display line Guideline for procedure from preliminary operations to workpiece machining Sequence Action Operating mode Cross reference Workpiece 2 Set datum I 3l Determine I 4 / Switch for workpiece machining on machine I I I- I drawing Workpiece speeds and feed rates Page coordinates Al5 Spindle speed, feed rate diagrams I l- Machine manual 5 Traverse reference points (homing the machine) Switch 6 Clamp workpiece Clamping A20 operating on Ml instructions - Workpiece setup with the 3D Touch Probe or I 7b 8 Align workpiece, insert zero tool, mark workpiece and set datum Enter program via keyboard or from external Manual operation Manual storage Programming and editing 9 Test program (without axis movements) Ml3 Machine handbook: Tool change Back fold-out page, program example; Programming and edrtrng Programming, Test run PI24 ! run Programming, Graphic simulation 11 Test run without tool in single block mode Program run, Single block 12 Optimize program if necessary Programming editing Programming and editino 13 Insert tool and machine workpiece automatic program run Program run, Full sequence PI and I Operating Panel TNC 2500B with snap-on keypad Machine Operating Manual ml 0 @ Programming Modes operation Electronic Positioning 3 Dl Program run, Single block El Program run, Full sequence Q with manual data input Modes Programming and editing Spindle D srmulation IB External program fa Supplementary call definition of a circle center Set label number with G981 Jump to label number/ Tool length wrth G99 0 Polar coordrnate radius/ Rounding-off radius with G25, G26, G27l Chamfer with G24/ Circle radius with G02, G03. GO5 Tool radius with G99/ a program program function X, Y, Z coordinates . 61 Programmable Tool definition Tool call m with G99/ input and output operating modes Entering and Editing Values Axis keys Number Graphics Decimal keys point, sign change 11 Em Graphic I EE! Define blank form, reset blank form Key for polar coordinates q Magnify Key for incremental operating modes detail Start graphic simulation q @ ns% Feed rate override FO/oSpindfe speed override Screen control brightness MrnB q drmensions Enter parameter instead Define parameter QM of a number, Transfer actual positron to memory El Override factor Polar coordinate angle/ Angle of rotatron in cycle G73 Clear program HI time with G04/Scaling speed in rpm Parameter mIDI Management Naming/selectrng mil Miscellaneous 13 Test run with graphic Program Feed rate/Dwell 0 0 Ia G code Q IIIEl Programming Block number Q handwheel in IS0 Format m m ?~~~rt?e~certain block or cycle No entry, Enter data, Terminate block entry Clear entry Delete block _ Contents General Machine Introduction MOD Functions Coordrnates Linear and Angle Cutting Data Information Operating Programming Modes Modes Encoders Al A8 Al5 Al8 A20 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 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 Manufacturer’s 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) 1 Introduction Brief description Machine operating Programming Accessories: MOD 3 of TNC 25008 4 modes modes 5 3D Touch Probe Systems FE 401 Floppy Disk Unit HR 130/HR 330 Electronic Handwheels 6 7 7 8 Functions Position 9 displays Traverse range limits 10 User parameters 11 Coordinates The coordinate 15 system 16 Datum Absolute Linear and Angle Cutting and Incremental coordinates 17 18 Encoders Data Feed rate diagram 20 Sprndle 21 speed diagram Feed rate diagram HEIDENHAIN TNC 2500B General for tapping Information 22 Introduction 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. Description 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. 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. Structure of manual This manual addresses the skilled machine controlled boring and mrllrng. TNC beginners already worked operator controls, and requires provided appropriate are advised to work through this manual and the examples with a HEIDENHAIN TNC, you can skip familiar topics. 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 Symbols for keys The followrng symbols data interface, they contain knowledge to control of non-NC- systematically. conversational operating only the If you have programming modes and key are used in this manual: Empty square: keys for numerrcal input on the TNC operating panel cl Square with symbol, e g. other keys on the TNC operatrng Ckcle with symbol, e.g. buttons The pages of this manual Typeface for screen displays HEIDENHAIN TNC 2500B Program are distinctly blocks and TNC screen dialogs General marked on the machine operating panel panel with the relevant key symbols are printed Information in this SPECIAL TYPE. Page Al is 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 Buffer batteries in the control of collisions Buffer batteries interruptron. When protect executing the example the stored programs programs! and machine parameters against loss due to power the message EXCHANGE appears, BUFFER BATIERY you must change The batteries Changing the battery when should Battery replacement Battery type: 3 AA-size batteries, leak-proof IEC designation “LR6” the batteries. be replaced is described once a year. in the manual of the machine manufacturer Error messages The TNC checks input data and status of the contra Cause and reaction of the control: and machine. Remedy: 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. Clear the value with the “CE” key, enter and confirm the correct value. Incompatible/ contradictory inputs E.g. GO0 X+50 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. Malfunction of the machine or control X+100 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 safety cause Switch off the machine or the control. Remove the fault if possrble. Attempt to restart the error message! 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 Straight lines In 3 axes Circles in 2 axes Helix Background programming Programming Graphics Graphic Program Input input resolution Program memory Tools and program simulation In HEIDENHAIN execution simultaneously in the “Program run” operating format or according Max. 0.001 mm or 0.0001 For 32 programs, battery modes to IS0 inch or O.OOl” buffered: 4000 program blocks Up to 254 tool definitions In a program Up to 99 tools in the central tool file Programmable 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 Contour Program jumps Subprograms, program section Coordinate transformations Move and rotate the coordinate Probing For 3-D touch trigger functions Parameter programming Traversing repeats, call of other programs Drilling cycles for pecking, tapping Milling cycles for rectangular pocket, circular pocket, slot “Subcontour List” cycles for milling pockets and islands with irregular Fixed cycles Cutting functions system, mirror image, scaling probe functions (= / + / - / x / t / sin / cos / angle a from axis sections parameter comparison (= / + / > / <) Mathematical I& / I&+); range Max. f 30000 / mm or 1180 inches Traversing speed: max. 30 m/min Spindle speed: max. 99999 rpm data contours or 1180 rnches/min Hardware Component Block processing units Logic unrt, control 1500 blocks/min panel and monochrome screen (40 ms) time Control loop cycle time 6 ms Data interface RS232-C/V.24 Data transfer Ambient temperature HEIDENHAIN TNC 2500B 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) General Information Page A3 tangen 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. 49,258 x + Y + 0 + 23,254 15,321 MS/9 Iii0 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. x 5 49,258 + Y 0 23,254 15,321 + + MS/9 Id0 Positioning with manual data input WW The axes are positioned according to the data keyed In. These data are not stored. POSITIONING N10 MRNURL G07 X+20 RCTL. F200 #a DRTR 9,375 8,200 8,985 0,180 + Y z A + + + T Program run Full sequence Single fia 1% i block A part program In the memory executed by the machine. of the control PROGRRN with the machrne X7410 Nl0 N20 N25 N30 N40 NSO N60 RCTL. General Information RUN/FULL G71 SECIUENCE #c Tl L+0 R+2 stf Tl G17 Sl000 #c EBB G40 G90 X+10 Y+lQ GS4 X+100 Y+20 #f G99 628 X El 2 t t M03 * S Jt0 It100 * G73 G90 Ht31S _________________---____________ T Page A4 MS/9 F is 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. INPUT m 9,375 8,985 #c Y R t t F 0 8,200 0,180 MS/9 HEIDENHAIN TNC 25008 Programming Programming and editing modes 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 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 T 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 * Y+10 Y R t t F 0 * 8,200 0,180 MS/9 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. M03 El 2 t t 9,375 8,985 T Y R t t F 0 M03 * 8,200 0,180 MS/9 Test graphics 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 External data transfer modes: view with depth in three planes view indication 1 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 control’s memory block by block for simultaneous execution. HEIDENHAIN TNC 2500B General Information I Page A5 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” measurements can be performed in and “Handwheel” operating modes: posttron line 0 angle l corner point 0 circle radius and circle center l l 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. TS 511 electronics, 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. Page A6 are required General by the machine Information tool manufacturer for the connection HEIDENHAIN TNC 25008 of a 4 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 Specifications for backing up stored programs purposes FE 401 Floppy Disk Unit with two drives Data storage Storage medium capacity 3 l/2 inch diskette, I approx. double-sided, 790 KB (25000 135 TPI blocks); max. 256 programs Data interface I Two RS-232-C data interfaces Transfer rate “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: HR 130 Designed to be incorporated into the machine control unit. The axis of control IS selected at the machine control panel. HR 330 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 HEIDENHAIN TNC 2500B and for copying General Information baud HR 330 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 Initiate the dialog I Selecting VACANT MEMORY Select MOD functions erther vra arrow keys or via the MOD key (only paging forward possible). 160044 Terminating Transfer numerical Vacant memory The number MEMORY”. inputs with the “ENT” key before terminating of free characters in the program memory the MOD functions is displayed with the MOD function 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. Baud The transfer rate RS-232-C interface rate for the data interface The data Interfaces “ENT” key: l l l ME operation FE operation EXT operation: can be switched operation is specified with “BAUD via “KS-232-C with other external interface” format “VACANT (HEIDENHAIN) RATE’ to the following operating modes with the devices. NC software number The software number of the TNC control PLC software number The software number of the integrated 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 A code number can be entered with this MOD function: l 86357: cancel “erase and edit protection” number l Page A8 is displayed PLC is displayed 123: select the user parameters. These user parameters are accessible General wrth this MOD function with this MOD function on all controls Information (see User parameters) 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. X 15.789 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. 1”“““‘I”“’ 0 "'1""1'Irn 20 10 0.6216 I 0 Position displays The following position displays 30 0.5 --J--YlCtl 1 can be selected: 0 nominal position of the control NOML 0 difference nominal/actual positron (lag distance) LAG 0 actual position ACTL. 6 remaining distance to programmed position DIST. 0 position based on the scale datum REF 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 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 HEIDENHAIN TNC 2500B is with the “ENT” key is with the “ENT” key. 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 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 Enter = scale datum To determine the input values, switch the position display to REF. values 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 Select Enter the limit(s) Enter value, or select the next limit terminate the input L ,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. Examples l l l Accessibility dealing only with operating procedures, 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. The user can access these machine parameters in two ways. l Access by entering the code number 123. This access is possrble on every control (see code number l 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. The machine parameters. manufacturer 123). can inform you about the sequence, Only these machine parameters may be changed change any non-accessible machine parameters. meaning, parameters texts etc. of any user by the user. In no case should the user Select the user parameter. Selection Continue pressing until the desired USER PARAMETER or dialog appears. n Enter numbers. Terminate or select further user parameters then terminate. HEIDENHAIN TNC 2500B pro- General Information with I and 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 probe Display and programming Function Parameter no. Input Probe system selectron 6010 0 + Cable transmrssion 1 + Infrared transmrssron Probe system: feed rate for probing 6120 80 to 3000 Probe system: 6130 0 to 30000.000 [mm] Probe system: set-up clearance over measuring point for automatic measurement 6140 0 to 30000.000 [mm] Probe system: probing 6150 80 to 29998 Parameter no. Input 7210 0 * Control 1 + Programming 2 + Programming measuring distance rapid traverse for Function Programming station Block number increment [mm/mm] [mm/min] Input values station. station: PLC active PLC inactive 7220 0 to 255 7230 0 --f First dialog language 1 + Second dialog language Inhibit PGM Input for PGM no. = user cycle no 7240 0 + Inhibited 1 + Uninhibited Central tool file 7260 0 + No central tool file 1 to 99 = Central tool file Input value = Number of tools 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) 7270 0 + No display 1 + Display Decimal character 7280 0 + Decimal 1 --f Decimal Display increment 7290 O-l urn I-5um Clearing the status display and the Q parameters with M02, M30 and end of program 7300 0 + Status display is not cleared 1 + Status display is cleared Graphics 7310 Switchrng of dialog German/English language (display mode) Switch over projection “display In 3 planes” Bit 0 type Rotate the coordinate system in the machining plane by 90’ Page A 12 Input values 1 General Information (English) comma point + 0 + Preferred + 1 + Preferred German American + 0 + No rotation + 2 + Coordinate system rotated by +90° HEIDENHAIN TNC 2500B for User Parameters Machining program and run Function Parameter no. Input “Scaling” cycle is effective on 2 axes or 3 axes 7410 3 + 3 axes 1 + in the machining SL cycles for milling pockets with irregular contour 7420 Bit 0 “Rough out” cycle: direction for pilot milling of contour t 0 - Pilot mrllrng for pockets for islands t 1 + Pilot milling for pockets for islands plane 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 Joining compensated or uncompensated contours t 0 + Joining compensated contours t 4 + Joining uncompensated contours “Rough out” and “pilot milling” to pocket depth or for every infeed to-” t8- Overlap factor for pocket milling 7430 Output 7440 of M functions Programmed 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 3.1 to 1.414 Bit 0 stop at MO6 Output of M89, modal cvcle call HEIDENHAIN TNC 2500B Input values 1 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 Constant path speed at corners . 7460 0 to 179.999 Display mode for rotary axis 7470 0 + 0 to 359.999 1 + f 30000.000 General Information Page A 13 User Parameters Hardware Function Feed rate and spindle Parameter no. override 7620 Bit 0 Feed rate override, if rapid traverse key is pressed in operating mode “Program run” + 0 + Override + 1 + Override inactive active Feed rate override in 2% increments or 1 % increments 1 + 0 + 2% increments + 2 + 1 % increments Feed rate override, if rapid traverse key and external direction buttons are pressed 2 + 0 + Override inactive + 4 + Override active 7640 Handwheel Page A 14 Input values Input I General Information 0 = Machine with electronic handwheel 1 = Machine without electronic handwheel I 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 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. position. In the present case, such a system must 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 HEIDENHAIN TNC 2500B I Rene Descartes, General Information in Latin Renatus Cartesius (1596 - 1650). 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’. Zero point of the coordinate system axes are designated 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. Datum Setting Page A 16 machine table 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). General Information I HEIDENHAIN TNC 2500B Coordinates Absolute and incremental coordinates 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. Absolute dimensions The machine is to be moved to a certain or to certarn nominal coordinates. Example: GO0 G90 X+30 position Y+30 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. 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). Example: GO0 G91 X+10 G90 Y+30 I, J = Pole R = Polar radius (distance from pole) H = Polar angle (direction angle) Y 1 J Xc/ Pole 5c X I HEIDENHAIN TNC 2500B I General Information I Page A 17 Linear and Angle Linear and angle encoders in machine tools Encpders Each machine axis requires a measuring system to provide the control with informatron position: linear encoders for linear axes, angle encoders for rotary axes. Grating Light Principle source Condenser of photoelectric scanning axes, period lens of fine gratings LS IOIC, LS 107c With linear on the actual RON 706C, ROD 250C position measurement is generally based on either 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). l l element (the electrical With rotary axes, a graduated disk permanently attached to the axis is photoelectrically TNC forms the position value by counting the generated impulses. Page A 18 General Information signals are scanned. HEIDENHAIN TNC 2500B The Linear and Angle Linear and angle encoders Datum Reference Encoders 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). 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 HEIDENHAIN TNC 2500B of scale with distance-coded General reference Information marks 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: the required n d S F = = = = feed rate F in [mm/min] number of teeth permitted depth of cut per tooth spindle speed feed rate Example 6 0.1 [mm] 500 [rpm] Depth of cut 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 d= Formula Page A 20 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 F -orF=d.S.n S.n 1 General Information HEIDENHAIN TNC 2500B - 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: V=2R.n.S; HEIDENHAIN TNC 2500B S=V approx. 500 rpm (calculated: 497 rpm) 2R r-r 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 : 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] Pitch 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 Manual 1 Traversing the reference points Traversing with the axis direction Operation 3D Touch Spindle speed S/Miscellaneous Datum setting functions with probe effective length 4 Calibrating effective radius 5 Reference surface, 6 Position measurement corner coordinates 11 15 Handwheel/ Jog Tool call/Spindle axis/Spindle to entered speed coordinates 17 18 Run 19 Single block, Full sequence Interrupting the program Checking/changing Background Blockwise HEIDENHAIN TNC 25009 the circle radius 9 13 without Positionrng Program 7 measurement Circle center = datum/Determining with Manual (MDI) 3 system Corner = datum/Determrnrng Positioning Data Input 2 Calibrating Basic rotation, Angular Electronic Incremental M Probe or Datum setting probe system 2 buttons run Q parameters Machine (drip feed) Operating 21 22 programming transfer 20 Modes 23 Switch-On Traversing the reference points Switch-On 0 @:, MEMORY TEST POWER INTERRUPTED RELAY EXT. MANUAL TRAVERSE 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 DC VOLTAGE MISSING Switch on the control DC voltage. Traverse the axes over the reference in the displayed sequence. OPERATION REFERENCE Switch POINTS points Start each axis separately or move the axes with the external direction keys. z AXIS x AXIS Y AXIS The sequence of the axes is determined the machine manufacturer. 4th AXIS MANUAL Encoders HEIDENHAIN TNC 2500B “Manual operation” matically. OPERATION is now selected 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. Machine Operating Modes Page Ml auto- by 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. anon0 0000 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. Jog mode Continuous operation 00000 0000 0D00 q uooc3 cl0000 oona[l oclooo q nnn OIJOU A 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. Cl Iii cl 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. Note parameters and can be varied with the feed rate 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. Spindle speed by Enter the block number. Enter spindle Example NlO S 1000 * Spindle override On machines with continuously override (S o/o). Miscellaneous function speed S (e.g. 1000) variable spindle Enter the block number. Enter the M function Example N10 MO3 * Combination It is also possible Example NlO SlOOO MO3 * Page M2 drives, the speed can also be varied with the spindle to enter both spindle Machine (e.g. M03) speed and miscellaneous Operating Modes function M in one block. 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. Calibration 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. Terminating the probing functions The probing functions time with “END 0”. Process 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. can be terminated CALIBRATION EFFECTIVE LENGTH CALIBRATION EFFECTIVE RADIUS BASIC ROTATION SURFACE = DATUM CORNER = DATUM CIRCLE CENTER = DATUM at any 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 A B C D L R AZ Procedure r For calibration of the effective length, a ring gauge of known height and known Internal radius is clamped to the machine table. = = = = = = = zero tool 3D touch probe ring gauge reference plane (surface) length of the zero tool ball tip radius effective length of probe system 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 CALIBRATION TOOL EFFECTIVE AXIS Select probing and enter. LENGTH 0 = Z Enter a different function tool axis if required. Select the “Datum”. DATUM cl +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 z+ z- 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 Page M4 Machine Operating by selecting Modes “Calibration effective length” again 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 TOOL AXIS EFFECTIVE Select probing and enter. RADIUS Cl = Z Enter another Select “Radius RADIUS RING x+ GAUGE x- function tool axis if required. ring gauge”. = 10 Enter the radius of the ring gauge, e.g. 10.0 mm. 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). Y- 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 Error messages All touch probe systems: Touch probe system TS 511: TOUCH POINT INACCESSIBLE The stylus was not deflected within the measuring distance (machine parameter). 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. STYLUS ALREADY IN CONTACT The stylus was already deflected at the start. HEIDENHAIN TNC 25008 Machine Operating Modes “Calibration effective radius” again. 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 Measuring positions l Setting the reference plane @ l Measuring positrons @ l Measuring distances 0 Initiate the dialog SURFACE Select probing and enter. = DATUM function Move to the starting x+ x- Y+ Y- z-t z- c+ c- Select the traversing position direction, e.g. Z-. 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 Setting the reference plane C DATUM Measuring distances Z+O You can also measure Page M6 distances on an aligned Probe the first position l Probe the second position. The distance can be read in the “Datum” I and set the datum Machine the measured Enter a new value if required, Confirm l displays value. e.g. 0 mm. entry. workpiece (e.g. 0 mm). display Operating Modes ! HEIDENHAIN TNC 2500B 3D Touch Probe Basic rotation, Angular measurement 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. Functions l Basic rotation (the control compensates misalignment) Y for an angular l Correct an angular misalignment (on a machine tool with rotary axis) l Measure an angle. -4 Basic rotation Initiate the dialog BASIC ROTATION ROTATION ANGLE Select probing and enter. function Select the “Rotation angle”. Enter the nominal direction of the surface to be probed, e.g. 0”. = 0 Move the probe head to the starting position 0. x+ x- Y+ Y- Select 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 measurement The measured rotation angle is displayed by selecting the probing function “Basic rotation”. BRSIC p3 Compensation of angular misalignment 6 registered on the screen with “ROT” In the status display. It also rematns stored after a power interruption. Cancelling the basic rotation (rotation angle O”) The basic rotation is the probing function entering a O” rotation The “ROT” display is x- ROTRTION Y+ Y- I ----------------____-----------ACTL* ;r q cancelled by selecting “Basic rotation” and angle. cleared. 49.258 15.321 Y + + Es MS/9 OS !& Measuring , fl: Once basic rotation is activated, all subsequent programs are executed with rotation and shown rotated in the graphic simulation. angles In addition to basic rotation, angle measurements Carry out the following Compensating misalignment for Execute a basic rotation. l Display the rotation angle. Cancel the basic rotation. On machine axis. tools with a rotary axis, you can also correct Carry out the following on aligned workpieces. procedure: l l can also be performed misalignment of a workpiece by rotating procedure: l Execute a basic rotation. Display and note the rotation l Cancel the basic rotation. l 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. l the angle. 4 Page M8 I Machine Operating Modes I HEIDENHAIN TNC 25008 mode ~ - 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 HEIDENHAIN TNC 2500B If the probing function “Corner = datum” is called after performing a basic rotation (straight line A), the first side need not be contacted. 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!? If only the probing rotation function “CORNER DATUM” is performed, then it does not contain a basic Initiate the dialog CORNER Select probing and enter. = DATUM First side face function Move the probe head to the first starting posrtion. x+ x- Y+ Y- Select 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 L 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+ x- Y+ Y- Select 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 X+0 DATUM Y+O 0 Enter the corner coordinates for X and Y if required, e.g. X+0, Y+O. q Confirm Page M 10 Machine Operating Modes position and probe as described above. entries. 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 x- y+ 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. 0 VA Ox+ .;‘1 0 Yx-O Y+ 0 X 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. CIRCLE CENTER = DATUM x+ x- Y+ function Move the probe head to the first starting position. ct the probing direction if required, X-. Y- 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+ Select the probing Y- 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 Datum X+54.3 Y+21.576 Coordinates PR+20 Circle radius. setting DATUM X+40 Enter the X and Y coordinates center if necessary, e.g.‘X+40, DATUM Y+30 Cl Confirm Page M 12 of the circle center. I Machine Operating Modes of the circle Y+30. entries. I HEIDENHAIN TNC 25008 Datum setting without 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 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). in the plane Touching in the tool axis (spindle axis) probe system 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 I Machine Operating Modes Page M 13 Manual Operation Datum setting without The datum is to be set with a drill (tool radius R = 5 mm) as shown to the right Example: Setting the datum 0 Touch the workpiece Touching Z axis probe system with surface. 0 Touch side by moving the Y axis 0 Touch side by moving the X axis uz Initiate the dialog DATUM SET Z = 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 Y axis clY , after surface 0 is touched. Initiate the dialog DATUM SET Y = Enter the value for the Y axis, e.g. 5 mm. Here with a negative sign. Confirm entry. The Y display reads: -5.000 X axis u X , after surface 0 is touched Initiate the dialog Enter the value for the X axis, e.g. 5 mm. DATUM SET X = Here with a negative sign 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 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”). Page M 14 I Machine Operating Modes with “NO ENT” or Information/MOD Functions HEIDENHAIN TNC 2500B - Electronic Versions Handwheel/lncrementaI Jog 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 HR 130: to be incorporated operating panel hand- 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 Displacement in mm per turn 20.0 1 2 Operating the HR 130 The handwheel is switched to the required machine axis with the axis keys of the control Operating the HR 330 The axis IS selected on the handwheel. The axis to be driven by the electronic is highlighted in the screen display. Operating 2.5 1.25 5 6 0.625 0.313 i 0,078 0.156 9 10 0.039 0.020 INTERPOLRTION FRCTOR: x Y 0 In the “Electronic handwheel” operating mode, the machine axes can also be driven with the external axis direction buttons. Machine 3 4 - I handwheel RCTL. HEIDENHAIN TNC 2500B 10.0 5.0 Modes + + + 5 m 49,258 23,254 15,321 Page M 15 Electronic Operating the HR 130/330 Set operating Handwheel/lncrementaI Jog mode and initiate the dialog INTERPOLATION FACTOR: 3 c1 Enter the desired e.g. 4. interpolatron factor, Confirm entry. cl y 1 INTERPOLATION FACTOR: 4 The tool can now be moved in a positive or negative Y direction with the electronic wheel. incremental positioning jog Select the axis: on the control (HR 130) or on the handwheel (HR 330) hand- 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. Y 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: Entering the jog increment e.g. 2 mm. 0 Machine axis button (e.g. X) pressed 0 Machine axis button pressed Set operating once. twice. -4 mode and initiate the dialog JOG-INCREMENT: 1.000 cl Enter the jog increment, e.g. 2 mm. Confirm the entry. JOG-INCREMENT: 2.000 or another remote axis key. The axis is driven by the entered Page M 16 I Machine Operating Modes I jog increment. 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 Example: tool call of “G99” and “T” are explarned in index P “Programming n Input run, single block” or Modes, Tool Definition”. Tool number Select spindle cl Spindle Conclude axis, e.g. Z speed block 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. Approaching the position In only one axrs) can be Paraxral posrtionrng Input No radius compensation or Paraxial compensatron for increased length (R+) or Reduced Incremental length (R-j dimensions AXIS and coordinate n n Feed rate M function Conclude block Start positioning Terminate block entry Terminates block immediatelv. rotation remain effective. Paraxial radius compensation For paraxial positioning blocks you need only enter whether the tool path is shortened or lengthened by the tool radius. value, Earlier entries for tool radius compensation, block. feed rate, direction -lv+- of spindle I I 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 Nor is a tool radius compensation effective for a fourth axis when used for a rotary table. 0 Nominal position Machine Operating Modes I HEIDENHAIN TNC 2500B Program Run Single block, Full sequence Stored programs sequence”. are executed in the operating modes The workpiece datum must be set before machining See “Datum setting with/without probe system”. Program run single block In this operating mode, the control restarted after every block. Program Operating executes “Program run, full the work! the part program run single block is best used for program run, single block” and “Program block by block The program test and for the first program mode must be run. Single block Selecting the program Select the program or, if the program was already selected: select block 0. The first program block is shown line of the program. 0 BEGIN PGM 7225 in the current Starting run Program run full sequence In this operating mode, the control program occurs. Stop functions: M02, M30, MOO (MO6 “STOP”, The program Selecting the program Operating If assigned run is also stopped You must restart the program executes the machining a stop function if an error message to continue program until a programmed via machine stop or end of parameter) appears. after a programmed mode stop. Full sequence ect the program scribed above. and block number as de Starting run Feed rate The programmed feed rate can be varied via the feed rate override. Spindle The programmed spindle speed HEIDENHAIN TNC 2500B speed can be varied via the spindle Machine Operating Modes override (if output IS analog). Page M 19 Program Run Interrupting the program run stop 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. The control Switching to single block ) display is stores: l the last tool called l coordinate l the last valid circle center/p01 l the current l the return jump transformations program In the “Program “Single block”. section CC repeat label for subprograms run, full sequence” The block currently being executed operating mode, you can interrupt the program run by switching to is completed. I I Program run is to be discontinued tion of the current block. EMERGENCY STOP (* The machine The control can be switched acknowledges To continue, either start each block separately or reactivate “Program run, full sequence”. after execu- off in an emergency by hitting one of the EMERGENCY STOP buttons. / w this with the message EMERGENCY STOP To continue working, release the emergency 1. Remove the cause of error 2. Switch on the control 3. Clear the message 4. Restart the program Page M 20 I power stop key (usually by turning it clockwise), then 4 again EMERGENCY J STOP with the “CE” key run. Machine Operating Modes HEIDENHAIN TNC 2500B - Program Run Checking/changing 0 parameters Interrupt program You can check and, If necessary, Q parameters change Q parameters after interrupting the program run. run Interrupt program run Check parameter Change parameter Terminate change HEIDENHAIN TNC 2500B Machine Operating Modes parameter the parameter display or and confirm. 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 Starting the part program Operating cannot be run and edited at the same time mode Initiate the dialog PROGRAM NUMBER 0 = 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 Page M 22 mode Parallel operating IS terminated by pressing “Program run, full sequence” key. Machine Operating Modes HEIDENHAIN TNC 2500B the 4 Program Run Blockwise transfer (drip feed) Execution from external storage Data interface 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). FE 401 Floppy Disk Unit or via machine Modes”, Computer I, TNC The RS-232-C interface of the TNC must be set for external transfer or FE operation! I Machine Program structure Only programs without jumps 0 Program calls, subprogram executed. l Block numbers (sequence numbers) Unless the control The program calls, program operates to be transferred numbers with “Blockwise section repeats and conditional can have block numbers are displayed sequentially; (sequence however, program stores the transferred capacity is full. numbers) jumps cannot be can be called. exceeding no block number 999. may exceed the with 2 lines. Data transfer from an external storage device can be started sequence/single block” with the “EXT” key. The control the storage transfer”. with a central tool file, only the tool last defined The blocks do not have to be numbered number 65 534. High sequence Starting “blockwise transfer” can be executed program blocks in available in the operating memory modes and interrupts “Program run, full data transfer when 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. Skipping program over blocks HEIDENHAIN TNC 2500B blocks are discarded run, you should already have a number of stored proit is advantageous to wait until the available memory and further If. in “Blockwise transfer” operation, you press the “GOT0 number, all blocks preceding this number will be ignored. Machine Operating Modes blocks are continuously 0” key before starting called from the and enter a sequence Page M 23 Notes Page M 24 Machine Operating Modes / HEIDENHAIN TNC 2500B - Programming Programming Modes (P) in IS0 Fundamentals Sequence numbers/Block format Editing functions Clearing/deleting functions Program Selection Opening a program Erase/edit protectron Defining the workpiece blank G50 G30/G3 1 6 7 8 Tool Definition Tool definition wtthrn the part program Tool definition in program Transferring tool length Tool radius Cutter G99 10 11 13 14 G41 jG42 15 16 17 0 Path Compensation Entering the radius compensatron Working with radius compensation Radius compensation G43/G44 Tools Tool call Tool change Feed rate F/ Spindle Speed Miscellaneous Programmable Dwell Time S/ Function STOP/ 18 19 M G38 20 21 Path Movements Input Overview lD/2D/3D 22 23 24 of path functions movements Linear Movement, Cartesian Positioning in rapid traverse Drilling Chamfer Example Additional axes GO0 GO1 G24 25 26 27 28 29 Circular Movement, Cartesian Interpolation planes Selection guide: Arbitrary transitions Tangential transitions HEIDENHAIN TNC 2500B Programming Modes 30 31 32 Programming Circular Modes Movement, (P) Cartesian Arc with circle center I, J. K Arc with radius Corner rounding Tangenttal with radius R arc with end point X/Y G02/G03 33 G02/G03 35 G25 37 GO6 39 Polar Coordinaten Fundamentals 41 Pole I, J. K 42 GlO/Gll 43 Circular arcs G12/G13/G15 44 Tangential G16 45 G25 45 Straight lines arcs Corner rounding RND Helical interpolation Contour Approach Predetermined Program Jumps Program with poles I, J, K G12/G13 46 and Departure Starting and end positron On a circle with radius R G26/G27 48 50 Constant contour speed: Small contour steps: Terminating compensation: Machine-referenced coordinates: M90 M97 M98 M91/M92 51 52 53 54 M Functions Jumps Within a Program Overview 55 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 64 Calls Programming Modes I HEIDENHAIN TNC 2500B Programming Standard Modes (P) 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 Other G37 G57 G56 G58JG59 66 67 70 71 73 75 77 78 78 80 81 82 83 86 87 89 90 91 Transformations Overview Datum shift Mirror image Coordinate system rotation Scaling G54 G28 G73 G72 93 94 96 98 100 Dwell time Program call Orrented spindle GO4 G39 G36 102 103 104 Cycles Parametric stop 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 HEIDENHAIN TNC 25006 G83 G84 G74 G75fG76 G77/G78 Programming Modes 105 106 107 108 110 111 113 114 115 117 Programming Programmed Modes (P) Probing Overview Example: G55 Measuring length and angle 120 121 Teach-In 123 Test Run 125 126 Graphic Simulation External Data Transfer GRAPHICS General information Transfer menu Connecting cable/Pin assignment Peripheral devices FE floppy disk unit Non-HEIDENHAIN devices Machine parameters Address letters in IS0 for RS-232-C 129 130 131 132 133 134 135 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 “Programmrng” means creating and entering a work plan in a form which is understood by the control. Program start and specification of blank Define and call a tool, move to the tool change posttion. Move to the workpiece contour, machine contour, the workpiece depart from the workpiece Traverse to the tool change contour, 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 Program input programs can contain scheme blocks up to 1000 blocks, are identified 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”). 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 HEIDENHAIN TNC 25008 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 Programming Modes Page PI Programming in IS0 Sequence number/Block 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. Sequence number 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. format N7 GO0 G40 Z-20 MO3 * N8 N9 X-12 Y+60 * GO1 G42 X+20 Y-t60 F40 * NlO G 26 R5 F20 * Nil N12 X+50 Y+20 F40 * I-10 J+80 * N13 GO3 X+70 Y+51.715 Block Each block in a program corresponds to one work step, for example: N20 GO1 G40 X+20 Y+30 Z+50 FlOOO MO3 * Word Each block is composed Address values 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 Block format of words * (e.g. X+20) functions 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). The short format, however, makes the program easier to read. This is especially important for fixed cycles. Example: long format NllO 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 * Example: short format NllO N120 N130 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 * N40 Page P2 I Programming Modes (not recommended) (recommended) HEIDENHAIN TNC 2500B - - - Programming in IS0 Editing functions The term editing Editing Selecting a block changing, supplementing The edrtrng functions are helpful in selecting effective at the touch of a key. and changing The current A specific means entering, block stands between block is selected two horizontal with “GOT0 and checking program programs blocks and words, and they become lines 0”. Initiate the dialog El GOTO: NUMBER = Paging through the program the block number. Vertical cursor keys. Select the next lower or next higher Hold down Inserting a block Key in and confirm block number. a vertical cursor key to continuously run through the program lines 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, this is reported at dialog initiation the with the error message: = PROGRAM MEMORY EXCEEDED =. This error message also appears lower block number. Editing words Horizontal if program end (PGM END block) is selected. You should then select a cursor keys: The hrghlighted changed. field IS moved One word in the current be changed: The dialog query appears word, e.g. within program the current block and can be placed on the program Move the highlighted to be changed. block is to word to be field to the word for the highlighted ElX COORDINATES ? Change the value To change another If all corrections Move the highlighted word to be changed. word: Conclude the block (or move the highlighted or left off the screen). have been made: Programming Modes field to the field to the right 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 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 address in the program. having the search address, and are displayed. Example All blocks with the address are to be displayed: M Select one block wrth the M. Place the highlighted with M. MISCELLANEOUS FUNCTION M ? Page P4 Programming field on a word Call blocks with the desired address Modes HEIDENHAIN TNC 2500B M. - 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 = ENT/END Program = NOENT is to be cleared: select a program number. or Erase the program. Program Delete block IS not to be cleared: 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 Delete program section To delete Clear entry, error message You can clear numerical pressing the “CE” key. HEIDENHAIN TNC 2500B program Then continue numbers sectrons, pressing are corrected automatrcally. call the last block of the program DEL 0 until all blocks in the definition inputs with Non-blinking error messages An entered value and the address the “CE” can also be cleared are completely Programming line Modes section. or program key. A zero appears with the “CE” cleared with section are deleted. in the highlighted field after key. “NO ENT”. 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). r PROGRAM 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. SELECT 1 IIP 10002 111 11111 IS0 :3 RCTL. iii 360 756 1440 iS48 44 450 900 2 __------------------------------ 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. I ON : 49,258 15,321 Y C + + 23,254 84,000 MS/9 q 0 L Opening program a Depending on the selected program type, HEIDENHAIN dialog programs opened (see index A “General Information, MOD Functions”). or IS0 programs can be Initiate the dialog PROGRAM SELECTION PROGRAM NUMBER Enter the program number (maximum 8 characters). Confirm entry. = MM=G71/INCH=G70 for drmenstons O/o231 G Example Selecting existing program display an In mm, or for dimensions in inches O/o231 G71 * N9999 O/o231 G71 * All existing programs executed, regardless (HEIDENHAIN format and ISO) can be edited, tested, of the selected type of programming. displayed graphrcally and Initiate the dialog PROGRAM SELECTION PROGRAM NUMBER Place the highlighted the desired program = or Example display Page P6 n Enter the program field on number. number. 0 ‘To 231 G71 * 1 NlO G30 G17 X+0 Y+O Z-40 * 2 N20 G31 G90 X+100 Y+lOO Z+O * / Programming Modes I HEIDENHAIN TNC 25008 Program Selection Erase/edit protection : G50 Edit protection G50 Activating protection After creating a program, you can designate It as erase- and edit-protected. 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 edit rl PGM PROTECTION ? block. Initiate the dialog PROGRAM NUMBER = n Enter the number of the program whose edit protection IS to be removed. O/o7210 G71 G50 * Select the auxiliary operating VACANT MEMORY: 148330BYTE Select the MOD function “Code number”. CODE NUMBER = II! Enter code number Erase/edit protection “G50” IS deleted. O/o7210G71 * HEIDENHAIN TNC 25008 query Protect the program. Confirm Code number 86 357 beforehand. Enter the number of the program protected, confirm entry. Press the key until the dialog “PGM protection” appears. O/o7210G71 G edit is removed Initiate the dialog PROGRAM NUMBER = Removing protection protection 86357. Programming Modes mode. 86357. is removed. Page P7 to be Program Selection Defining the workpiece blank: G30/G31 Test graphics A blank form definition must be programmed before the machining program can be srmulated graphically. Blank 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 Minimum Maximum point point as mm. 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. Page P8 / accordingly Programming Modes HEIDENHAIN TNC 2500B Program Selection Defining the workpiece Example The blank form is aligned blank: G30/G31 with the main axes. 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 for MIN point. Tool axis Z. X coordinate. Y coordinate. Z coordinate. Conclude block. MAX Absolute dimensions. X coordinate. Y coordinate. Z coordinate. Conclude Example display Error messages block. 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. program contains more than one PGM SECTION CANNOT BE SHOWN Wrong spindle axis IS programmed. 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 RCTL. 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. Tool definition in the part program If tools required tn a program tions of the tool dimensions. Input Initiate the dialog TOOL NUMBER are defined El 2 9,375 8,985 + + T in that program, ? n a program printout LENGTH TOOL RADIUS Y+10 Y R + + F 0 will include M03 s 8,200 0,180 MS/9 the specifica- 0 cannot be programmed Tool 0 is internally defined with 0. Enter the tool length or the difference to the zero tool. L ? R ? Enter the tool radius. Conclude Page P 10 * Enter the tool number. The tool number under G99. TOOL EDITING &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# _____----------_________________ 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. Tool number RND Programming Modes the block. HEIDENHAIN TNC 25006 Tool Definition Tool definition in program Central tool file 0 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. PROGRRMflING RN0 T2 T3 changed, and editing” L+s, 3 L+12,45 L+2.5,21 L+52,52 L+85 L+32,71 L+l47,1 L+0 T59 Every tool is entered with the tool number, length, radius and pocket number. Tool 0 must be defined with L = 0 and R = 0. EDITING ;: Ti -------------------------------- R+6 R+7,75 R+3,5 Ea5 R+8 R+13 R+lS, 49,258 15,321 Example Tool 3 is to be defined Y C + + 5 23,254 84,000 with L = 5, R = 7: Initiate the dialog BEGIN +3 TOOL LO Select the tool MM Enter the length. RO 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, is stored in which the tools can be returned pocket. G99 functions like a tool pre-selection here, i.e. the tool search is programmed only the query for the tool number appears. Oversize tools Oversize tools occupying three pockets are to be designated returned to the same pocket. Program by placing SPECIAL TOOL and respond the highlighted tools”. A special tool is always field on the dialog query with the “ENTER” key. “S” for special tool and “P” for pocket number parameters. HEIDENHAIN TNC 2500B as “special with G99. In this case, ? The preceeding and succeeding pocket numbers and pressing the “NO ENT” key. A lk is displayed PO (spindle) to a different or another should be deleted by positioning the highlighted In place of the erased pocket number. only appear if this function was selected via machine pocket must be vacant In the magazine. Programming Modes Page P 11 field Tool Definition Tool length L 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. Zero tool r zl Zn -z +z 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, -Z or +Z of the other clamped the zero tool serves as a reference. tools to this zero tool are programmed as tool 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 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 values 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. nz Initiate the dialog DATUM n SET 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 ?“, and initiate 01 2. select a tool in the central tool file and initiate the dialog “TOOL LENGTH L ?“. TOOL HEIDENHAIN TNC 2500B LENGTH clZ L ? Programming Modes Select the spindle axis to transfer the tool length. Transfer the length compensation memory. Page P 13 to 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 Outside corners 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. The control inserts a transition around the corner. curve for the center In most cases, the tool is thus guided Automatic decleration at a constant path of the tool at outside path speed around corners, so the tool rolls the outside corner. at corners 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 Page P 14 The control automatically determines (equidistant) at inside corners. the Intersection S of the two cutter paths parallel to the contour This prevents back-cutting in the contour; the work is not damaged. distances according to the tool radius in use. The control thus shortens The radius of the tool must always be chosen can be machined. element Programming so that every contour Modes - even when traversing shortened 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. 1 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) If the tool is to travel at the distance of the radius to the left of the programmed contour, enter the function G41 (RL). G42 (RR) 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 values point 0 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) Traverse to contour point 0 with radius compensation G41 (RL) or G42 (RR) at reduced feed rate. Machining around the contour Program the following milling feed rate. contour Since the radius compensatron unchanged, there is no further or G42 until point 0. points to 0 at 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. End point G40 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 Page P 16 the tool axis separately 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. A R w +-+fQ Effect G43/G44 Thus radius compensation l The displacement radius: has the following GLC (R-1 effect: is lengthened by the tool display G43. GLO (RO) l The tool traverses position: to the programmed display G40. nominal The displacement radius : is shortened by the tool display G44. ti @ l G43/G44 Example do not affect the spindle GL3(R+) axis. The tool is to traverse from initial position Applrcatron example: Pre-positioning for the “Slot” cycle X = 0 to X = (46 + tool radius) Input Paraxial positioning Paraxial compensation, e.g. lengthening (Pi+). Nominal position value, e.g. X+46. Conclude Display GO7 G43 X+46 Mixing Uncompensated blocks (e.g. GO1 G40 X+20) mixed in a part program. GO1 and Paraxial compensated positioning (G4VG42) are not to be entered * and paraxial blocks (e.g. G40 X+20 blocks (G43/G44) In succession! Correct: GO1 G40 G40 G43 G40 HEIDENHAIN TNC 2500B block. and radius compensated or G43 X+20) positioning blocks Incorrect: X+15 Y+20 * Y+50 * X+40 * Y+70 * GO1 G42 X+15 Y-t20 * G43 Y+50 * G42 X+50 Y-t57 * Programming Modes Page P 17 can be 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. Compensation effect 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) Spindle speed Z Y X Activating compensation Ending compensation error message appears at program RPM 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. G41 or G42 is pro 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 If only the spindle speed is entered Example: T12 SSOO * Tool call to the “radius XY zx YZ 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 It is identical by programming G40 in the posrtioning with a tool call block, the compensations and calls the new block remain valid Initiate the dialog TOOL NUMBER Enter the tool number. ? Enter the spindle e.g. G17. axis, Enter the spindle speed Conclude Page P 18 I Programming Modes in rpm the block. I 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 Manual tool change measures Example: GOO’Z+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. Machine-related change position if no additional You can use M91, M92 or a PLC positioning Example: GO0 Z+lOO M92 * (see “Predetermined M Functions, (danger of collision!) to traverse Machine-referenced 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. IS are taken. 0 or TO was programmed. if a positive to a machine-related coordinates length compensation tool change position. M91/M92”). 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 R+3 * NSO TO G17 * The program STOP can only be omitted when tool call is programmed solely to change the spindle speed. a N60 GO0 G40 G90 Z-t200 MO6 * N70 Tl SlOOO * NSO X+25 Automatic tool change HEIDENHAIN TNC 25008 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. Programming Modes Y+30 * N90 Z+2 MO3 * 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 The maximum input value (rapid traverse) l 29998 mm/min or l 11 800/10 inch/min. traverse on the control for positioning 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 IS: 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 Spindle override On machines with continuous spindle override. Spindle Miscellaneous functions speeds override are set through is disabled a tool call (T-block) spindle during drive, the speed can be varied from 0% to 150% using the tapping. 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”). i.e. before 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. Page P 20 I Programming Modes I HEIDENHAIN TNC 2500B Programmable stop: G38 Dwell time: GO4 Stopping program run Program run can be halted by one of the following A new start can be made by pressing the machine G38 Input Display N1.5G38 * Program Program A block with program tioning block. run halt (G38) can also contain M02/M30 l MOO 0 Program stop and (according MO6 l Program stop and (according Program stops only when Dwell time Program stop and (according to ISO) also spindle Return to block 1 of the program. resumes an M function to ISO) also spindle stop and coolant off. to ISO) also spindle stop, coolant by machine run STOP in block 15. or G38 comes at the end of a posi- off. set accordingly running run is stopped stop and coolant The function GO4 “Dwell time” can be used during the programmed time period (see “Other cycles”). Note: The program HEIDENHAIN TNC 2500B functions. start button off and tool change parameter! program run to delay execution of the next block for after the dwell time runs out! 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. Generating the workpiece contour is always stationary, regardless of the are composed of the contour elements 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 straight line or circle the coordinates of each end point additional information such as circle center, contour The following is an example of positioning ele- radius etc. block Input for a straight line. Selection of type of movement, e.g. linear Cartesian. Input No radius compensation Ftrst coordinate (RO) or radius compensation left (RL) or radius compensation right (RR). Absolute or incremental. Coordinate and value. Next coordinate Feed rate. n M function. Conclude 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, block. Incremental to Y+30 with feed Abbreviated input 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. Example N20 GO1 G40 G90 X+20 N30 Y+30 * Page P 22 FlOO MO3 * Programming Modes HEIDENHAIN TNC 2500B Path Movements Overview of path functions I In Cartesian coordtnates Function Straight lines Straight line movement in rapid traverse Straight line movement at programmed Chamfer with length R A chamfer is inserted between feed rate Input In polar coordrnates GO0 GIO GO1 Gil G24 two straight lines t Circles Circle center; also pole for programming I, J, K do not generate movement Circular movement in clockwise Circular movement in counterclockwise polar coordinates directron (CW) direction (CCW) I, J, K GO2 G12 GO3 G13 GO5 G15 GO6 G16 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 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. Multi-axis movements HEIDENHAIN TNC 2500B A maximum of 3 axes can be programmed Programming G25 between for straight Modes two contour lines, and a maximum of 2 axes for circles. 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. 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. Page P 24 in the to generate Programming oblique Modes I HEIDENHAIN TNC 2500B Linear Movement, Cartesian Positioning in rapid traverse: GO0 Positioning 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 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. Tl G17 S200 * Rapid traverse. 0 Positioning block: complete input (main block) No radius compensation, &: axis Z. I_yl:I absolute Z IS moved with tool length pJ0 Spindle 3 dimensions compensation clockwise. GO0 G40 G90 X+.50 Y+30 z-1-0 M3 * Re-entry at tool calls is especially tool call. The G function downfeed. HEIDENHAIN TNC 2500B for positioning easy if you enter a marn block (= complete in rapid traverse Programming positioning (GO0 or GIO) is modal. Beware Modes block) after a of collision during Page P 25 tool Linear Movement, Drilling : GO1 Absolute Cartesian coordinates q 1~20~30 GO1 X+20 Cartesian 2 +Y Y+30 Z+2 * 70 .+ IO 30 v- .+ 20 Incremental Cartesian dimensions 1 91 B GO1 G91 X+20 Mixed entries 1 The following Program %lO G71 * NlO N20 N30 N40 N50 Only incremental G90 Y+30 * is an example of a program for drilling Y+30 M3 * Programming without cycles 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 2”d hole in X/Y Drilling at programmed feed rate Retract in Z Positroning to 3’d hole in X/Y Drilling at programmed feed rate Retract in Z End of program 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 entry. The position for X is entered in incremental dimensrons, for Y in absolute dimensrons. 90 [vl30 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 * N60 G40 X+20 c 75 +x * 91 [xl20 GO1 G91 X+20 Example drilling 20 I 50 Modes workpiece 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. Prerequisites GO1 G24 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. GO1 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. Programming feed rate remains 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 block Example HEIDENHAIN TNC 2500B R = chamfer length 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 * Programming Positron 0 (see figure above) Position 0 Chamfer Position 0 Modes Page P 27 Linear Movement/Cartesian Example Example: milling straight lines The block numbers are shown you in following the sequence. 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 * Page P 28 Programming in the figure to aid 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 Modes HEIDENHAIN TNC 2500B @I 4 d - 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. Rotary axes A, B. C Nil GO1 G42 X+0 N12 X+100 V-t0 * N13 X+150 V-t70 * V-t0 FlOO * with X and IV, 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 L =F’AL d (A L)2 + (A W)2 F =F’Aw w -J (A L)2 + (A W)’ where: F = = FL = Fw AL = A W = M94 for rotary axes HEIDENHAIN TNC 2500B 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 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. Programming Modes Page P 29 Circular Movement, Interpolation planes Main planes Circular arcs can be directly The crrcular rnterpolation tool compensations. programmed Cartesian 4 in the main planes XY, YZ, ZX. plane IS selected by defining the spindle axis with “T”. This also assigns the The axis printed bold below (e.g. X) IS identical in its positive The axis In normal print points In the 90° direction. Interpolation planes Spindle axis parallel to 4 Circular interpolation direction with the angle 0” (leading axis). plane XY Y z 0” Y ccw k X X 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). Page P 30 Programming Modes via 0 parameters and executed HEIDENHAIN TNC 25008 i 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. Difference between G02/G03 GO5 and at 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. Prerequisite The starting pornt 0 of the circular movement must be approached in the immediately preceding block. Circle The circle endpoint GO3 block. endpoint Direction rotation of G02/G03 0 is programmed In mathematical terms, the negative rotation “G02” is clockwise (CW). The positive terclockwise. direction or rotation GO2 (CWI in a GO2 or direction “G03” IS of 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. Full circles 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). Selection : Given Arc starting Required point 0 e.g. GO1 traverse to the starting point Circle center I, J, K Arc end point 0 G02/G03 Arc starting e.g. GO1 traverse to the starting point point 0 Radius + arc end point 0 HEIDENHAIN TNC 2500B path function G02/G03 mit Radius R Programming Modes Page P 31 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. Corner G25 Corner rounding with G25 is inserted between two contour elements which can be straight lines or arcs. rounding: of rotation need therefore not be 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. 0 IS pro- GO6 : Given Required Point 0 Traverse e.g. with GO1 “Corner” Rounding 0 Traverse e.g. with GO1 radius Point 0 Page P 32 path function G25 Traverse e.g. with GO1 Tangent generating point 0 Tangential arc 0 Traverse e.g. with GO1 Arc end point 0 GO6 I Traverse e.g. with GO1 Programming Modes I 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 I, J, K 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 for programming: l The circle center I, J, K is directly defined Cartesian coordinates. l The coordinates last programmed block define the circle center. l The current position is taken as circle center with G29 (without numerical Input). This is also possible in polar coordinates. I, J, K absolute: Working plane (Circular interpolation plane) programmed by two coordinates in the circle center I, J z x Y z K. I Jr K the starting point for the circular Radius The distance Circular arc G02/G03 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. 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) from the starting Any tool radius compensation before a circular arc. last programmed. no movement! Approach I x Y is based on the tool position in the circle center produces Approaching the starting point HEIDENHAIN TNC 2500B Circle center coordinates the circle center is based on the work datum. I, J, K incremental: Programming in a I, J, K for positions The circle center is defined the working plane: by arc before the G02/G03 point to the circle center determines block. the radius. YI must begin Programming Modes I Page P 33 Circular Movement, Cartesian Arc with circle center: I, J, K + G02/G03 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. Input tolerance Input circle Circle center center Specify the rotating direction with G02: (directron of rotation clockwise) and arc end point. 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 Example full circle Full circle in the XY plane (outer circle) around center X+50, Y+50 with 35 mm radius. Program G99 Tl L+O R5 * Tl G17 S200 * GO1 G41 X+15 lines. They are only necessary when different from previ- Y-t50 F300 MO3 * I+50 J+50 * GO2 X+15 Full one The are Example arc Program Y+50 * circles can be programmed with G02/G03 in block. ctrcle starting point and the circle endpoint identical. Semicircle in the XY plane (inside circle) around center X+50 Y+50 with 35 mm radius. GO1 G41 X+85 Y+50 F300 M3 * I+50 J+O * GO3 X+15 Page P 34 I Y+50 * Programming Modes I 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. Starting point The starting point of the arc must be approached In the preceding block. Endpoint In the G02/G03 block the endpoint can only be programmed with Cartesian coordinates. m 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 Contour radius X 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. 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 clockwise of arc Radius, positive sign Program block GO2 X+80 Y+40, R+lOO * Examples: G99 Tl L+O R+5 * Tl G17 S200 * Arc A GO1 G41 X+20 GO2 X+80 Arc B r Y+60 F300 MO3 * Y+60 R+50 * GO1 G41 X+20 Y+60 F300 MO3 * 60 GO2 X+80 Y+60 R-50 * 0 Arc C GO1 G41 X+20 GO3 X+80 Arc D Y+60 GO1 G41 X+20 GO3 X+80 - Y+60 F300 MO3 * R+50 * 60 Y+60 F300 MO3 * 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 I Programming Modes 3 I HEIDENHAIN TNC 2500B 4 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: line, l 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. Note GO1 G25 straight line - straight line, straight line - circle, or circle - straight 0 circle - crrcle. l Prerequisites -. 0 tu, ‘-2 be started in a corner 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 Error messages 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! PLANE WRONGLY DEFINED The machrnrng planes are not identical and after the RND block. The tool radius must be smaller than or equal to the rounding radius on inside corners. before ROUNDING RADIUS TOO LARGE The rounding HEIDENHAIN TNC 25008 The tool radius can be larger than the roundrng radius on outside corners. is geometrically impossible. Programming Modes Circular Movement/Cartesian Corner rounding with radius R: G25 Input Corner rounding G25 Rounding radius A separate feed rate can be entered effective for this rounding Program block G25 R8 FlOO * G99 Tl L+O R+5 * Tl G17 S200 * Examples: Sequence A GO1 G41 X+10 F300 MO3 * X+50 Sequence and is only B PosItIon 0 “Corner Y+60 * point” 0 G25 R7 * Rounding x+90 Position 0 Y+50 * GO1 G42 X+10 F300 MO3 * X+50 Page P 38 Y+60 Y+60 * Y-t60 Position 0 “Corner pomt” 0 G25 R7 * Rounding x+90 Position 0 I Y+50 * Programming Modes I HEIDENHAIN TNC 2500B Circular Movement, Cartesian Tangential arc with end point X, Y: GO6 Circular arc GO6 Geometry 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 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. 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. 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. Machining sequence Geometrv 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 Programming Modes Page P 39 Circular Movement, Cartesian Tangential arc with end point X, Y: GO6 Input GO6 Program Arc endpoint 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 G30 G17 X+0 Y+O Z-40 * G31 G90 X+130 Y+lOO Z+O * Tl G17 S200 * Arc A GO1 F300 x+50 GO6 Arc B semicircle G41 X+10 Y+80 MO3 * * x+130 Y+30 * I”’ tangent point Start of arc End of arc. 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 IS’ tangent point Start of arc End of arc. A quarter circle with R = 30 is formed. Arc A GO1 G41 X+10 Y+80 F300 MO3 * x+50 * GO6 x+90 Y-t40 * Arc B GO1 G41 X+10 Y+60 F300 MO3 * X+50 Y-t80 * GO6 x+90 Y+40 * Arc C GO1 G41 X+50 Y+llO Y+80 * GO6 x+90 Y+40 * Page P 40 F300 MO3 * 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. The +X +Y +Z Angle reference axis 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 A polar coordinate radius entered changes the last radius. Example: Gil G91 R+lO * polar An Incremental polar coordinate to the last direction angle. Example: Gil G91 H+15 * incrementally angle IPA refers Absolute and incremental coordinates may be mixed within one block. Example: Gil G90 R+50 G91 H+15 * Mixing 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 plane 1 Polar coordinates XY YZ zx Example by I, J Jr K K. I I+60 J-t30 * Transferring the pole G29 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 Modal effect POLE 1 POLE 2 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 i Programming Modes HEIDENHAIN TNC 2500B - Polar Coordinates Straight lines: GlO/Gll GlO/Gll Range for polar angle For dimensions which are referenced to a rotatronal axis in some way, programming polar coordrnates than in Cartesian coordrnates because calculatrons are avorded. Input range for linear interpolation: absolute or incremental -360° IS usually easier in to +360°. H H positrve. counterclockwrse angle. H negative: clockwise angle. Example Milling an inside contour. Program 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 * Set POLE”’ GO1 G40 G90 X+15 Approach starting point externally (Cartesian coordrnates) Z-5 Plunge FlOO * Gil G42 R+40 H-t180 F200 * G91 H-60 * H-60 * H-60 * G40 G90 X+85 Approach lSt contour point with compensation (polar coordinates) 2”d contour point Y+50 * GO0 Z+50 MO2 * Last contour point Depart from contour, cancel compensation Retract, return Jump to begtnnrng of program *j The pole can also be programmed HEIDENHAIN TNC 2500B in the block with Gil 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 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). Range for polar angle Input range for circle interpolation: absolute or incremental -5400° to +5400°. Example 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 Z-5 FlOO * Plunge Gil G41 R-t35 H+210 G12 H+O F300 * F200 M3 *Approach circle (circle radius is 35 mm) Circular movement clockwise 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 I 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. Program G99 Tl L+O R4 * Tl G17 S200 * I+65 J+20 * GO1 G41 X+10 Y+30 F500 MO3 * 30 X+20 Y-t60 * G16 R+70 H+80 20 * 0 0 G25 10 20 65 Polar “corners” can also be rounded with the “corner rounding” function (see Circular Move ment, Cartesian, Corner rounding). HEIDENHAIN TNC 2500B I Programming Modes ~ Page P 45 Polar Coordinates Helical interpolation: I, J, K + Gl2/Gl3 Helix 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 The helix IS programmed data in polar coordinates First specify the POLE or circle center (e.g. I, J) Angle range Height 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). 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. Radius compensation The radius compensation depends rotating direction (right/left), 0 type of thread (internal/external), l milling direction (positive/negative direction) (see table to the right). axis Programming Working direction Rotating direction Radius compensarron t:‘:-:;’ upon the l Page P 46 Internal thread left-hand Modes 1 Z- 1 G13 1 G41 External thread Working direction Rotating direction Radius compensation right-hand Z+ G13 G42 left-hand Z+ G12 G41 right-hand Z- G12 G41 left-hand Z- G13 G42 HEIDENHAIN TNC 25006 Polar Coordinates Helical interpolation: Input example I, J, K + G12/Gl3 Circle, polar, counterclockwise Endpoint G13 G91 H+360 Z-t2 * Task A right-hand Internal thread M64 x 1.5 IS to be produced in one cut with a multr-cutter tool. Thread Thread pitch start end Number Overrun at start at end Calculations data : P = 1.5 mm a, = O” a, = 0” = 360” of threads of threads: nl = l/2 n2 = l/2 Total height: Z = P. n = 1.5 mm Incremental H = 360°. n, = 5 [5 + (2 polar angle: n = 360° [5 + (2 l/2)] = 9 mm l/2)] = 2160” Due to overrun of l/2 thread, the start of thread is advanced starting angle a, = a, + (-1807 = 0” + (-180°) = -180° by 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 Program Note 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 * Helical interpolation HEIDENHAIN TNC 2500B cannot be graphrcally Programming Workpiece initial value for Z: 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 displayed Modes ~ Page P 47 Contour Approach and Departure Starting and end position Selecting the I” contour point Before beginning contour programming, compensation is to begin. Starting 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: point l l l l Direct Starting approach points approachable wrthout collision near the ftrst contour point outsrde the material the contour WIII not be damaged specify the first contour J when approaching point at which the first contour 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 machining with radius point. function, also check that the Surface blemish due to change of Y-axis direction 0 Not recommended 0 Suitable Also for end point 8 Optimal Lies on the extension of the compensated path 0 Not recommended Contour damage @ Not permitted! Radius compensation must remain switched for the starting position (G40). End points off 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. of the 0, 0 Not recommended Surface blemish due to change of the X-axis direction 0 Suitable Also for the starting point 8 Optimal Lies on the extension of the compensated path 0 Not recommended Contour damage @ Not permitted! Radius compensation must be switched departure from the contour (G40). Common starting and end point Page P 48 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. Programming Modes Illustration -. -.- programmed path traversed cutter center path HEIDENHAIN TNC 2500B d 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 If radius compensation is begun from Sl, the tool will damage the contour at the first contour point if no extra measures are taken! Departure The same applies when contour. HEIDENHAIN TNC 2500B departing from the 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). and The straight line positioning block to contour point 0 must contain radius compensation (G41 or G42). Then program Departure a G26 block. 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). Approach departure arc/ arc Feed rate not contain 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 Program scheme In GO0 G40 Xj Yj 25 GO1 G41 X,‘Y, F500 &41 Xj Y5 F200 G26 R2.5 FlOO G27 R2.5 FlOO X2 Y2 F500 G40 XE YE F500 GO0 Z+200 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 I 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 For some tasks it is advantageous corners. not to stop at 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. 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. Without M90 With M90 HEIDENHAIN TNC 2500B Programming Modes I 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. Example Without M97 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. auto- Position CDIS approached to @I. The contour and 0. Example Multipass with M98 IS 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 * milling Example HEIDENHAIN TNC 2500B Multipass perpendicularly thus completely machined at 0 0 0 0 6 0 @ mrllrng with infeeds in Z 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 * Pre-positioning z-10 Tool-axis * infeed GO1 Y+llO F200 M98 * GO0 Z-20 * GO1 G41 Y+llO F200 * Y-10 M98 * Mill one pass Second tool-axis infeed Pre-positioning Mill second pass GO0 Z+50 * Retract I Programming Modes Predetermined Programming M91/M92 coordinates: Standard behaviour Coordinates Scale 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. datum Machine M91 datum : in positioning M Functions machine-based l Traversing l Setting the workpiece Coordinates to machine-based positions (such as tool change blocks are based on the machine referenced to the machine The machine builder can also define an additional The machine point. builder enters the distance I positions) datum in positioning are displayed If the coordinates in these blocks. Page P 54 datum The machine datum is required for the followrng: l Setting the traverse range limits (software limit switch) If the coordinates Additional machine reference point: M92 blocks are based on the workpiece tn positioning machrne-based from the machine Modes enter M91 in these blocks datum with the coordinate reference display machine REF. point. datum to this additional blocks are based on this additional Programming datum, machine reference I reference point, enter M92 HEIDENHAIN TNC 2500B - Program Jumps Overview Jumping within a program The following gram: jumps 0 Program can be made within section l Subprogram l Conditional l Unconditional a pro- Examples: L 4,3 * repeat L 7,0 * call Dll POl+Q5 PO2+0PO312 * jump DO9 POl+O PO2+0PO38 * jump Nesting : A further program section repeat or subprogram can be called up from within a program section repeat or subprogram. Maximum Jumping another program to nesting depth: 8 levels You can jump from one part program into any other program which is in the control’s memory or on an external data storage medium. The jump into another program is programmed with a l Program l Cycle G79, if another cycle was previously defined with G39 as a callable cycle. Examples: call with “PGM CALL” or I o/o3* Nesting: You can call further gram. Maximum HEIDENHAIN TNC 25006 nesting programs depth: G39 PO13 * G79 * from a called pro- GO1X+50 M99 * 4 levels Programming Modes I 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. 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 * These labels can be jumped to during program run (e.g. to execute the appropriate subprogram). Setting a label G98 Label A label is set with the G98. The label numbers 1 to 254 can be set only once in a program. 0 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! Calling a label number N150 N160 N170 Nl80 N190 N200 N210 N9999 With the “L” key you can: 0 call subprograms 0 create program section G98 Ll * G79 * G98 L2 * GO0 G91 X+10 L2.5 * G90 * G98 LO * O/o1G71 * M99 * Pecking cycle Refer to “Fixed cycles” for explanation repeats. 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 Subprograms For subprogram Error JUMP TO LABEL 0 NOT PERMITTED This jump (LO) is not allowed. messages calls, enter 0 as the number LABEL NUMBER Each label number Page P 56 number of repetitions ALLOCATED - except L 0 - can be allocated Programming Modes of repetitions (e.g. L2.5) (e.g. L1.0). or simply conclude (set) only once with “End 0” in a given program 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. with number 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 Program run section can be repeated is N22 G98 L2 * N23 GO0 G91 X+100 N24 L2,S * up to 65534 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- section is 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. Error message M99 * EXCESSIVE N22 G98 L2 * N23 GO0 G91 X+10 M99 * N24 L2,5 * . SUBPROGRAMMING You programmed a jump incorrectly: 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 I Programming Modes ~ Page P 57 Jumps Within a Program Program section repeats Setting the program label Example: Program Repeating a program section after a label Example bolt-hole row label 1 is set. 6 repetitions from G98 Ll. The program section between is executed a total of 7 times. G98 Ll and L 1.6 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 G98 Ll* G91 X+15 Y-t10 Z+2 MO3 * Pre-positioning 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 * GO1 G90 Z-10 GO0 Z+2 * L1,6 * Nesting of repetitions Tool definition Tool call FlOO * 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 - 0 Oz 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 0 0 Oz Of= 0 Programming Modes z0+ G98 L17 0 goa l-17.2 0 Page P 58 z &- G98 L15 L15.1 0 I =O - I q 0 I HEIDENHAIN TNC 2500B Jumping Within Subprograms a Program Subprograms 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. Start of subprogram The start of the subprogram IS marked label number (can be any number). End of subprogram The end of the subprogram label 0. with a is always marked by The different subprograms are then called in the main program as often as wanted and in any sequence. N14 N’15 N16 N17 N18 N19 Ll,O GO1 Ll,O X+10 Ll,O GO0 * X+20 Y+50 * * Y-t80 * * G40 Z+50 MO2 * N20 N21 N22 N23 N24 N25 G98 G79 G98 GO0 L2,5 G98 Ll * * L2 * G91 X+10 * LO * 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 The control subprogram run executes call 0. the main program A jump to the called program performed. Subprogram 1 is executed of subprogram). until the label 0 is then until G98 LO (0) (end D il,O * 9 GOlX...Y... 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 * 3 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 call IS programmed incorrectly (e.g. an end of subprogram lacks G98 LO), the error SUBPROGRAMMING appears. HEIDENHAIN TNC 25006 Programming Modes Page P 59 Jumps Within Subprograms Entry example: Subprogam a Program %l G71 * 2 : L2,O * Subprogram program. GO0Z+lOO MO2 * Retract and return jump to start G98 L2 * G98 LO * Start of subprogram ~ End of subprogram N9999 %I G71 * 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 * Define pecking GO0 G40 G90 X+15 Y+lO MO3 * Approach X+4.5 Y+60 * L2,O * Approach bore group 0 Subprogram call x+75 Y+lO * L2,O * Approach bore group 0 Subprogram call Z+50 MO2 * Retract tool axis call 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 Page P 60 I 2 bore group 0 Subprogram You will find an explanation 2 cycle z+2 * L2,O * G98 L2 * G79 * G91 X+20 M99 * Y-i-20 M99 * X-20 M99 * G90 * G98 LO * the main End of main program Example Cross-reference 2 is called from within cycle call of the peck drilling Programming cycle in the section “Fixed cycles” Modes I 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 * 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 L17,O* MO2 * 53 is run through G98 L17 * 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! id,,,0 * &98 LO * G98 L20 * L53,o * &98 LO * G98 L53 * b98 LO * N9999 %12 G71 * 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. Error message Remember: the subprogram will be executed more time than the programmed number of repeats. one If too many nesting levels were programmed, error message EXCESSIVE SUBPROGRAMMING appears. the G98 L5 * L50,O * L5,9 * M2 * 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. Note 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 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 * Tapping Tool change Call: subprogram PO3 -6 Tool change 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 * Subprogram 1 Tool change Retract spindle axis, jump to start of program 1 Subprogram N190 N200 N210 N220 N230 N240 N250 N260 N270 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 * N280 N290 N300 N310 N320 N330 N340 G98 G79 G91 Y+20 X-20 GO0 G98 L2 * * X+20 M99 * M99 * M99 * G90 * LO * MO3 * Approach hole pattern 0 Move to setup clearance Call: subprogram 2 Approach hole pattern 0 Approach hole pattern 0 2 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. Program procedure dimensions, the cuboid 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). %90007685G71 * 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 * @ @ 0 63 Approach 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 * point for “left side” lnfeed in Y axis Program N170 GO0Z+20 * N180 x+120 Y-l * Program section repeat 2 starting section is executed 41 times Retract spindle axis Approach starting point for “right side” 8 0 0 0 lnfeed It- Y axis Program N290 Z+20 MO2 * N9999 %90007685G71 * section is executed 41 times Retract spindle axis, jump to start of program Programming Modes I Page P 63 Program Jumping another program to main Calls 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. Process 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 * %28 Then a return jump is made to main program 1. Main program 1 is resumed with the block following the program call. G71 * o-- \ 0 -0 N9999 mple %l / %28 ~ 0 G71 ” 0 G71 - 1 Call with a separate Example 0 =--’ N9999 0 2 Call e.g. via M99 (see Cycle G39) A label call can be made dependent Overview, Basic functions”). Page P 64 line The program to be called can also be specified with a cycle definition. The call then functions like a fixed cvcle. G39 PO112 * Conditional jumps program on a mathematical Programming Modes condition (see “Parametric Programming, HEIDENHAIN TNC 2500B Standard Cycles Introduction, Overview Standard cycles Machine builder 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. 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. G Cycle 83 84 74 75176 Pecking Tapping Slot milling Rectangular pocket Circular pocket Program call 77/78 79 73 Calling a fixed cycle G79 M99 M89 56 57 58/59 Contour geometry Pilot drilling Rough-out Contour milling Cycles must be called after moving the tool to the appropriate position - only then will the last defined cycle be executed. G Cycle There are three ways to call a cycle: 54 28 73 Datum shift Mirror image Rotating the coordinate system Scaling Dwell time l With the cycle call function l Via the miscellaneous function M99. G79 and M99 are only effective blockwrse and must therefore be reprogrammed for every execution. l Via the miscellaneous M89 M89 Coordinate transformations HEIDENHAIN TNC 2500B ii $ .P $-ii eij, E 82 s z e G79 function M89 (depending 72 04 :: on machine transformations Modes 0 0 0 0 Effective immediately : 0 0 0 Spindle Program call orientation 0 parameters) and the dwell time are effective immediately Programming Effective immediately 0 0 Effective after call 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. Coordinate ged. Effective after call 0 0 0 0 and remain posrtionrng block. effective until chan- Page P 65 Fixed Cycles Preparatory measures Prerequisites Dimensions The following must be programmed cycle call (e.g M99). l Tool call: to specify the spindle spindle speed l Positioning block to the startrng before a posrtion GO G90 X . . . Y . . . M3 * 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). Page P 66 Programming + G83 . . . . . . must have the same sign (usually 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”. Entering values * Tl . . . . . . axis and the Modes Z ... M99 * HEIDENHAIN TNC 2500B Fixed Cycles Pecking : G83 Function input data 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 All infeeds must have the same sign Setup clearance (starting posrtion) A: distance between tool trp and workprece surface. Total hole depth B: distance piece surface and the bottom the drill taper). Pecking depth between the workof the hole (tip of C: the infeed per cut. Dwell time: the time the tool remains tom of the bore hole for chip breaking. Feed rate F: traversing infeed. Process speed at the bot of the tool during 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 l t 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 SET UP CLEARANCE ? c Specify setup clearance Enter the sign correctly (normally positrve) Confirm TOTAL HOLE DEPTH ? entry Specify hole depth Enter the sign correctly (normally negative) Confirm entry Specify pecking PECKING DEPTH ? depth Enter the sign correctly (normally negative) Confirm DWELL TIME IN SECS. ? 0 Enter the dwell time at the bottom hole (zero for no dwell time) Confirm FEED RATE ? F = 0 Page P 68 total hole depth and pecking Programming Modes of the entry Enter the feed rate for pecking Confirm The signs for setup clearance, negative)! entry entry depth are all the same (normally 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 * Tool definition and call G83 PO1 PO2 PO3 PO4 PO5 Setup clearance Total depth Pecking depth Dwell time Feed rate -2 -20 -10 2 80 * GO0 G40 X+20 HEIDENHAIN TNC 2500B 20 mm) with the standard Y+30 MO3 * Pilot positroning, spindle Z+2 M99 * IS’ hole, cycle call X+80 2”d hole, cycle call I Y+50 M99 * Programming Modes on I 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 speed of the tool during the direction of spindle and retracting feed rate: in the tool call and the feed rate 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 Same as for “Pecking” Example Tap an M6 hole wtth 0.75 mm pitch at 100 rpm Page P 70 G99 Tl L+O R3 * Tl G17 SlOO* Tool definition and call G84 PO1-3 PO2-20 PO30.4 PO475 * GO0G40 X+50 Y+20 MO3 * Z+3 M99 * Setup clearance Thread depth Dwell time Feed rate I the tapping The thread pitch is determined indirectly by the spindle speed specified of the cycle (see index A, “General Information, Cutting Data”). Process rotation Pilot positronrng, spindle right Cycle call Programming Modes I 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. Input Setup clearance (starting positron) data end mill must be slightly 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. 2”d side length E: slot width, the tool radius (finished size). Feed rate: traversing machrnrng plane. Roughing process l l l Finishing process maximum 4 times speed of the tool in the 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. 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 Starting position 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 -2 -20 -5 80 x-50 Y+lO 100 * 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 N80 G74 PO1 PO2 PO3 PO4 PO5 PO6 PO7 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 N60 GO0 G40 G90 X+76 Y+15 M3 * -2 -20 -5 80 Y+80 X+10 100 * I I (+) Approach starting position, cycle call Retract In tool axis, end of program N90 X+20 Y+14 M99 * NlOO Z+50 M2 * N9999 %5501 G71 * Page P 72 (-1 Programming Modes I I HEIDENHAIN TNC 2500B - Fixed Cycles Rectangular pocket milling: The cycle The rectangular cvcle. Tool required The cycle requires a center-cut end mill (IS0 1641). or pilot drilling at the pocket center G75/G76 pocket milling cycle IS a roughing The tool determines the radius at the pocket corners. There is no circular movement in the pocket corners. Position Input The pocket sides are parallel to the coordinate system axes; the coordinate system may have to be rotated (see G73: Rotating the coordinate system). 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. 2”d 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 (down cut) counterclockwise, down-cut with M3 milling Conventional milling (up cut) G76: clockwise, up-cut milling with M3 FMAX la Starting position The starting position S (pocket center) must be approached without radius compensation in a preceding positioning block. Process 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. The cutter always starts It- the positive on square pockets. HEIDENHAIN TNC 2500B Y direction Programming Modes Page P 73 Fixed Cycles Rectangular pocket milling: Process G75/G76 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. Stepover the tool is withdrawn Stepover k is computed by the control to the followrng formula: to the start according k=FxR 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 * GO0 G40 X+45 Setup clearance Milling depth Pecking depth Feed rate for pecking 1”’ side length of the pocket 2”d side length of the pocket Feed rate Y+3.5 M3 * Pre-positioning spindle on Z-i-2 M99 * Page P 74 1 Pilot positioning cvcle call Programming Modes in X, Y, in Z, HEIDENHAIN TNC 2500B Fixed Cycles Circular pocket milling: The cycle The circular cycle. Tool required The cycle requires a center-cut end mill (IS0 1641) or pilot drilling at the pocket center S. Input 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. data pocket milling G77/G78 cycle is a roughing i Direction of the milling path: Conventional milling (up cut) G77: clockwise, up-cut milling with M3 Climb G78: milling (down cut) counterclockwise, with M3 down-cut milling Starting position The starting positron S (pocket center) must be approached wrthout radius compensation in a preceding positioning block. Process l The tool penetrates the work from the starting position (pocket center) at the “feed rate for peckrng”. l The cutter then follows the programmed spiral path at feed rate F2. The dtrectron of the path depends upon the programming (here, G78). The starting l l l direction L of the cutter is for the IF2 XY plane the Y+ direction, ZX plane the X+ direction, YZ plane the Z+ direction. The maximum stepover is the value k (see “Rectangular Pocket Milling”). The process milling depth repeated until the programmed is reached. IS When milling is completed, to the starting position. HEIDENHAIN TNC 2500B the tool is withdrawn Programming Modes Page P 75 Fixed Cycles Circular pocket milling: G77/G78 J d Example 4 A circular pocket with radius 35 mm and depth 20 mm IS to be milled at position X+60 Y+50. G99 Tl L+O RlO * Tl G17 S200* Page P 76 G77 PO1-2 PO2-20 PO3-6 PO480 PO5+35 PO6100 * Setup clearance Milling depth Pecking depth Feed rate for pecking Circle radius Milling feed rate GO0 G40 X+60 Y-c.50MO3 * Pre-positioning Z+2 M99 * Starting Programming Modes position .. in X and Y in Z, cycle call 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 In programming to see whether the contours the contour (see “Coordinate was Trans- Not all of the SL cycles are always required For easier famtltanzation. the followrng examples progressively to the full range of functions. HEIDENHAIN TNC 2500B / Programming begin with only the rough-out Modes cycle and then proceed ~ Page P 77 SL Cycles Contour geometry: Rough-out: G57 Contour geometry: 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. G37 r FA cl D A L B A, B = Pockets C, D = Islands NS G37 PO111 PO212 PO313 * Example Rough-out: G57 The subprograms complete contour 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 Setup clearance (A), milling depth (B), pecking depth (C) are incremental with the same signs (usually negative). data 11. 12 and 13 define the in the example. Feed rate for pecking: tool at penetration (Fl). traversing is desired and if the tool must 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. N16 G57 PO1-2 PO2-20 PO3-10 PO440 PO5t-1 PO6+0 PO760 * Example Page P 78 Setup clearance Milling depth Pecking depth Feed rate for penetration Finishing allowance Rough-out angle Feed rate in the working Programming Modes plane I HEIDENHAIN TNC 2500B SL Cycles Rough-out: G57 Process 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. Sequence contour milling/ area clearance to the setup clearance D = Finishing allowance E = Stepover a = Rough-out angle at the A machine parameter determines whether the contour is milled first and then the area cleared or vice versa. -.-. 7 .-. -d L-, -.-. nc) 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 HEIDENHAIN TNC 2500B Programming Modes Begin with surface clearing Page P 79 SL Cycles Roughing-out Task Rectangular a rectangular pocket with rounding Interior machrnrng radius 5 mm. pocket radius of rectangular pocket with rounded corners, with a center-cut end mill (IS0 1641). tool i a w 60 bO@ 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 Blank min. point Blank max. point Tool definition Tool call 1* -2 PO2 -20 PO3 -8 100 PO5 +0 PO6 +0 500 * “List” of contour subprograms Definition for “rough-out” Y+50 Z-t2 M99 * Pre~positionrng, 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 * PGM %7207 Page P 80 cycle call 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 @ creates a contour island with identical Programming Modes dimensions HEIDENHAIN TNC 2500B - SL Cycles Roughing-out Task Rectangular a rectangular island with rounding Exterior machining radius 5 mm island radius. of rectangular Island with rounded corners, with a center-cut end mill (IS0 1641). tool YA 6o o/ -- LBL 1 I I 70 15 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 Tool “List” of contour subprograms Definition for “rough-out” Y-t50 Z+2 M99 * Pre-positioning, N90 GO0 G40 Z+20 MO2 * 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 * N220 N230 N240 N250 N260 N270 N280 N9999 G98 L2 * G41 X-5 Y-5 * X+105 * Y+105 * X-5 * Y-5 * G98 LO * O/o7207 G71 * PGM %7206 HEIDENHAIN TNC 25008 x Blank 2 PO2 1 * -2 PO2 -20 PO3 -8 100 PO5 +0 PO6 +0 500 * NlOO NllO N120 N130 N140 N150 N160 N170 N180 N190 N200 N210 b (sequence!) cycle call Retract, return jump to start of program 0 0 Radius compensation is G42 (RR) and tool path is counterclockwise, the control therefore deduces: island. 0 6 0 63 creates a contour Auxiliary pocket to externally the machined surface pocket with identical Programming Modes limit dimensions. I 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 r I 35 PGM %7208 Note 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 * Tool N70 G37 PO11 PO22 * “List” of contour N80 G57 PO1-2 PO2-10 PO3-10 PO4500 PO5+0 PO6+0 PO7500 * Definitron N90 Z+2 M99 * Setup clearance NlOO GO0 G40 Z+200 MO2 * Retract Blank, tool axrs Pre-position X and Y. spindle Programming Modes on subprograms for “rough-out” Z. cycle call return jump to start of program Machining begins with the first contour label defined in block N70! The first pocket must begin outside the second pocket. HEIDENHAIN TNC 2500B I 65 * X SL Cycles Overlapping pockets cl Sl A B 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 Sl and S2, these points need not be as full circles NllO N120 N130 N140 N150 G98 G41 I+35 GO3 G98 Ll * X+10 Y+50 * J+50 * X+10 Y+50 * LO * N160 N170 N180 N190 N200 G98 GO1 I+65 GO3 G98 L2 * G41 X+90 Y+50 J+50 * X+90 Y+50 * LO * I IA Left pocket J * B Right pocket N9999 O/o7208 G71 * Execution Depending on the control or the area. Contour Page P 84 edge is machined setup (machine parameters), first machining begins either with the contour Area is machined Programming Modes first / HEIDENHAIN TNC 25008 edge 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 G98 G41 I+35 GO3 G98 Ll * X+10 Y+50 * J+50 * X+10 Y+50 * LO * N160 N170 N180 N190 N200 G98 GO1 I+65 GO3 G98 L2 * G41 X+90 Y-t50 * J+50 * X+90 Y+50 * LO * I ’ --.---A 0 A and 0 B are the starting contour labels. “Difference” area Area A is to be machined overlapped by B: l l without points of the the portion A must be a pocket and B an island. A must begin outside of B. NllO N120 N130 N140 N150 G98 G41 I+35 GO3 G98 Ll * X+10 Y+50 * J+50 * X+10 Y+50 * LO * N160 N170 N180 N190 N200 G98 GO1 I+65 GO3 G98 L2 * G42 X+90 Y+50 * J+50 * X+90 Y+50 * LO * 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 HEIDENHAIN TNC 2500B commonly by A and B is A and B must be pockets. A must begin inside of B. NllO N120 N130 N140 N150 G98 G41 I+35 GO3 G98 Ll * X+60 Y+50 * J+50 * X+60 Y+50 * LO * N160 N170 N180 N190 N200 G98 GO1 I+65 GO3 G98 L2 * G41 X+90 Y+50 * J+50 * X+90 Y+50 * LO * i Programming Modes I Page P 85 SL Cycles Overlapping Expanding program Oh7208 “Sum” area islands N70 G37 PO1 1 PO2 2 PO3 5 * An island always requrres an addrtronal = pocket (here, G98 L5). N210 N220 N230 N240 N250 N260 N270 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. G98 GO1 X+95 Y+95 X+5 Y+5 G98 L5 * G41 X+5 * * * * LO * Y+5 * outer limit 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 G98 G42 I+35 GO3 G98 Ll * X+10 Y+50 * J+50 * X+10 Y+50 * LO * N160 N170 N180 N190 N200 G98 GO1 I+65 GO3 G98 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 “Intersecting” area Page P86 A is to remain unmachined except that poroverlapped by B. must be an island and B a pocket. must begin outside of B. NllO N120 N130 N140 N150 G98 G42 I+35 GO3 G98 Ll * X+10 Y+50 * J+50 * X+10 Y+50 * LO * N160 N170 N180 N190 N200 G98 GO1 I+65 GO3 G98 L2 * G41 X+40 Y+50 * J+50 * X+40 Y+50 * LO * 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 G98 G42 I+35 GO3 G98 Ll * X+60 Y+50 * J-t50 * X+60 Y+50 * LO * N160 N170 N180 N190 N200 G98 GO1 I+65 GO3 G98 L2 * G42 X+90 Y+50 * J+50 * X+90 Y+50 * LO * by A and B 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 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 * List of contour m X 65 elements 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 * Program HEIDENHAIN TNC 2500B %7209 IS an expansion of program Programming %7208: Modes the interior islands are added (subprograms Page P 87 3 and 4). 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 Execution N170 N180 N190 N200 N210 G98 G41 I+35 GO3 G98 Ll * ’ X+35 Y+2.5 * J+50 * X+35 Y+25 * LO * Left pocket N220 N230 N240 N250 N260 G98 GO1 I+65 GO3 G98 L2 * G41 X+65 Y+25 * J+50 * X+65 Y+25 * LO * Right pocket N270 N280 N290 N300 N310 N320 N330 N340 G98 GO1 X+43 Y+58 X+27 Y+42 X+35 G98 L3 * G42 X+35 * * * * * LO * Square N350 N360 N370 N380 N390 N400 N410 N9999 G98 L4 * GO1 G42 X+65 X+73 * X+65 Y+58 * X+57 Y+42 * X+65 * G98 LO * O/o7209 G71 * Machining Page P 88 I Y+42 * island Y+42 * of the contour Trrangular edges Programming Area clearance Modes island (unfjnlshed) 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. y, 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! -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 HEIDENHAIN TNC 2500B N25 G56 PO1-2 PO2-20 PO3-10 PO4 40 PO5+1 * Setup clearance Dnlltng depth Pecking depth Feed rate for infeed Finishing allowance Programming Modes Page P 89 SL Cycles Contour milling The cycle (finishing): Cycle G58/G59 “contour milling” finishing the contour pocket. G58/G59 is used for 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. The tool IS automatically contour point. Process Beware of collisions positioned with clamping (A) prior over the first 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. are milled in the same P = Programmed contour (pocket) D = Finishing allowance from cycle G57 rough-out N25 G58 PO1-2 PO2-20 PO3-10 PO4+40 PO560 * Example Page P 90 I Setup clearance Milling depth Pecking depth Feed rate for rnfeed Feed rate in the working Programming Modes plane / HEIDENHAIN TNC 306 c 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 Drilling r Cycle definition: with G37 No call! 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 HEIDENHAIN TNC 2500B Subprograms I for the subcontours Programming Modes I Page P 91 SL Cycles Machining with several tools Task Overlapping pockets with Islands. Intenor machining Main program 0~7210 with pilot drllllng, roughing, finishing. 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 * Drill Roughing cutter Finishing cutter Tool change 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 * Pilot drilling 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 * Roughing-out 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 * Subprogram N305 N310 N320 N340 N350 N360 N370 N380 N390 N400 G98 G41 I+35 GO3 G98 G98 GO1 I+65 GO3 G98 Ll * X+35 J+50 X+35 LO * L2 * G41 J+50 X+65 LO * N410 N420 N430 N440 N450 N460 N470 N480 G98 GO1 X+43 Y+58 X+27 Y+42 X+35 G98 L3 * G42 X+35 * * * * * LO * N490 N500 N510 N520 N530 N540 N550 N9999 G98 L4 * GO1 G42 X+65 X+73 * X+65 Y+58 * X+57 Y+42 * X+65 * G98 LO * O/o7210 G71 * The contour Page P 92 Finishing Retract and return Jump to beginning of program. Left pocket Y+25 * * Y+25 * Right pocket X+65 Y+25 * * Y+25 * Square island Y+42 * Triangular island Y+42 * 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 Original Transformations cycles serve for coordinate transfor- Datum shift Mirror image Rotation Scaling With the help of coordinate transformatrons, a program sectton can be executed as a variant of the “original”. Datum shift Mirror Rotation Scaling image In the following descriptions, subprogram 1 is always the “orrgrnal” subprogram (Identified by the gray background). I Immediate activation Duration activation Every transformatron of End of activation Error message HEIDENHAIN TNC 2500B is immediately active - without being called 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”. You can cancel coordinate transformations l Cycle defrnrtion l Selecting another “single block”. for orrgrnal condition l Programming of miscellaneous machine parameters); program in the following ways: (e.g.: scaling factor 1.0); with “PGM functions NR” rn the operating mode program MO2 or M30. or block N9999% run “full sequence” (depending or on the 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. 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. l 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 Y -77 G91Y Incremental Page P 94 Programming Modes datum shift HEIDENHAIN TNC 2500B _ 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 Example A machining task is to be carried out as a subprogram a) referenced to the set datum X+O/Y+O b) additionally referenced shift 0 Y+60 * N70 L1,O * N80 G54 X+0 and 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 block With datum Y+O * 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 Enter the axes or axes to be mirrored axis cannot be mirrored. The tool Climb and conventional milling 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. / / ‘\--- /----- / -----I R\ n c) ------- n u ‘\ \ ( / ‘\ wt-- (GIL? 0 \ i 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 ? 0 X Enter the axis to be mirrored, e.g. X. Enter the second axis to be mrrrored applicable, e.g. Y. Conclude Example if block. 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 * Not mirrored N60 G54 X+70 Y+60 * Datum shift 0 N65 G28 X * Mirror image 0 N70 Ll,O * Subprogram N80 G54 X+0 N85 G28 * Y+O * N90 GO0 G40 Z+.50 MO2 * Subprogram: 0 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 call Cancel datum shift Reset mrrror image Retract, return jump 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! HEIDENHAIN TNC 2500B Programming it is absolutely Modes necessary that the sequence I of cycles Page P 97 Coordinate Coordinate Transformations system rotation : G73 The cycle The coordinate system can be rotated in the machrnrng plane around the current datum in a program. Activation Rotation is effective without being called and IS also active rn the operating mode “Positioning with MDI”. Rotation To rotate the coordinate system, you only have to enter the rotation angle H. 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). Activating the rotation G73 H+35 * The active rotation the status display. Cancelling the rotation in degrees (“) (absolute or rncre- A rotation angle O”. IS angle cancelled IS indicated by entering by “ROT” in the rotation G73 H+O * Page P 98 I Programming Modes HEIDENHAIN TNC 2500B _ Coordinate Coordinate Selecting the cycle Transformations system rotation : G73 Initiate the dialog Absolute dimensions or Incremental. 1 ROTATION ANGLE ? Enter rotation Conclude Example angle. block. 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 N60 G54 X+70 Y+60 * N65 G73 H+35 * Rotated execution. 1. Datum shift 0 2. Rotation 0 N70 L1,O * 3. Subprogram call w N80 G54 X+0 Y+O * N90 G73 H-t0 * Cancel datum Reset rotation shift w NlOO GO0 G40 Z+50 MO2 * Return jump to first block of the main program w Subprogram HEIDENHAIN TNC 2500B The associated subprogram (see “Datum Programming shift”) IS programmed Modes execution 0 Sequence: after MO2 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”). depending on the specified - either in the machining main axes (see Index A, MOD Functions, User Activation 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 4 1 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 I Programming Modes I HEIDENHAIN TNC 2500B - Coordinate Transformations Scaling : G72 Selecting the cycle Initiate the dialog FACTOR ? n Enter the scaling factor. Conclude Example block. 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 N60 G54 X+70 Y+60 N70 G72 F0.8 * in original size 0 Execution ‘with scaling factor. Sequence: 1. Shift datum 0 2. Define scaling factor 0 * N80 Ll,O * 3. Call subprogram (scaling factor effective) Cancel transformations N90 G.54 X+0 Y+O * NlOO G72 Fl * NllO Subprogram HEIDENHAIN TNC 2500B GO0 G40 Z-t50 MO2 * The corresponding subprogram Retract, return jump (see cycle 7, Datum shift) is programmed Programming Modes after M02. 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. Activation The dwell cycle is active immediately tion. without being called. Possible applications For example, chip breaking can easily be programmed with a dwell cycle after every drilling step. Input The dwell time IS specified in seconds. Input range: 0 to 30000 s (A 8.3 hours) range Cycle definition upon defrnr Initiate the dialog Enter desired DWELL TIME IN SECS. ? Conclude dwell time, in seconds. block. I GO4 F0.5 * Example Page P 102 I Programming Modes I 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 (separate block) or M99 (blockwise) M89 (modally) or Initiate the dialog Entering the cycle selection PROGRAM NUMBER ? Enter program Conclude Example The callable program 50 IS to be called from program number. block. 5 Program. O/o5G71 * G39 PO1 50 * Defrnrtion: “Program 50 is a cycle” GiIl X+20 Call program Y+50 F250 M99 * 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 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 4. Instead of L 1.0, write in %7445: G39 PO1 7444, and M99 in a subsequent HEIDENHAIN TNC 2500B Programming (Parameter e.g. 7445 7445 positioning Modes block Page P 103 pro- Other Cycles Oriented spindle stop: G36 The cycle The control can address the machine tool spindle as a 6’h axis and turn it to a certain angular POW tron. Applicatron: l l Activation Ml9 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. 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 Cycle definition The angle of orientation Input range: 0 to 360°. Inout resolution: O.l? is entered according to the reference axis of the working plane. 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. - 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. DOO: DO1: D02: D03: D04: ASSIGN ADDITION SUBTRACTION MULTIPLICATION DIVISION D05: D06: D07: D08: SQUARE ROOT SINE COSINE ROOT-SUM OF SQUARES D09: DlO: Dll: D12: IF IF IF IF EQUAL, JUMP UNEQUAL, JUMP GREATER, JUMP LESS, JUMP 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. Nominal positions value for 021 must be computed or be defined before it is called. HEIDENHAIN TNC 2500B 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. Programming Modes * I+Ql J+Q2 * GO2X+QlO Y+Q20 * GO6X+Qll Y+Q21 * G25 Ql * GO5X+Q21 Y+Q22 R Q62 * Feed rate F QlO * G99 Tl L+Ql R Q2 * TQ5 G17 SQ6 * Dll POl+QlO PO2+0PO3Q30 * Tool data Inch dimensions Y+Q22 Circle data Example for variable positioning: instead of X+20.25 you write X+Q21 The parameter In the program GO1 X+Q21 Conditional Cycle data jump G83 POl-Ql P02-Q2 P03-Q3 PO4Q4 PO5Q5 * Page P 105 Parametric Selection Programming d Selecting basic functions Basic parameter functions are selected Defining parameters A parameter is destgnated by the letter Q and any number to parameters 0100 to Q113. the “D” key and entering the corresponding number. i Specific numerical values (contents) cal and logical functions. Parameter programmed. Starting values by pressing 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 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. e.g. multiplication Initiate the dialog PARAMETER NUMBER FOR RESULT? Parameter First value or parameter? IS’ operand Secondvalue or parameter? cl for result. (parameter) 2”d operand. Conclude Example the entire line as block. DO3 QlO POl+Q5 PO2+3.142* The result is assigned Page P 106 / to QIO; the content Programming of 05 is retained! Modes I HEIDENHAIN TNC 2500B 4 Parametric Programming Algebraic functions DOO: Assignment This function assigns to a parameter either a numerical value or another parameter. The assignment DOI: Addition D03: Multiplication D04: Division Sign for operands DO1 417 PO1+5 PO2+7 * DO1 Q17 PO1+5 PO2-Q12 * DO1 Q17 PO1-Q4 PO2+QS * DO1 Q17 PO1+Q17 PO2+Q17 * DO2 Qll PO1+5 PO2+34 * 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 * This function defines a specific parameter to be the quotient of two parameters, two numbers or one parameter and one number. DO4 Q17 PO1+Q2 PO2+62 * DO2 Qll DO2 Qll DO2 Qll DO2 Qll DO4 Q17 PO1+5 PO2+7 * DO4 Q17 PO1+5 PO2-Q12 * DO4 417 PO1+Q4 PO2+QS * DO5 Q98 PO1+2 * This function defines a specific parameter to be the square root of one parameter or one number. The operand must be posltlve. Parameters PO1+5 PO2+7 * PO1+5 PO2-412 * PO1+Q4 PO2+QS * PO1+Qll PO2-Qll * DO3 421 PO1+5 PO2+7 * DO3 421 PO1+5 PO2-Q12 * DO3 Q21 PO1+Q4 PO2-QS * DO3 Q21 PO1+Q21 PO2+Q21 * by 0 is not permitted! DO5 Q98 PO1+Q12 * DO5 498 PO1-470 * with negative signs can also be used. Qll = +5 - -Q34 A subtraction HEIDENHAIN TNC 2500B DO1 Q17 PO1+Q2 PO2+5 * to be or one This function defines a specific parameter to be the difference between two parameters, two numbers or one parameter and one number. Division root DO0 QOSPO1+Q12 * DO0 QOSPO1-Q13 * to an equal sign. This function defines a specific parameter the sum of two parameters, two numbers parameter and one number. D02: Subtraction D05: Square corresponds Example: DO0 QOSPO1+65.432 * can be obtained from an addition Programming and vice versa. This also applies Modes for other operations I 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. Defining the trigonometric functions sin a = opposite side a hypotenuse ~ c or a = c sin a cos a = adjacent side b hypotenuse ~ c or b = c cos a tan a =-=-sin a cos a Length of one side According a b to the Pythagorean theorem: c2 = a2 + b2 or c = m Table for preceding Function Angle D06: Sine 0 sign and angle range 1 0“ 90’ I I Ouadrant 0 / 0 180’ I 1 360° I I DO6 444 PO1+Qll * 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 I 1 270’ 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 D07: Cosine @ 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: tan a=---==sin 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: two Y sin a = 0.5 a, = +30° and a2 = +150° 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: C sin a = 0.5 and cos a = 0.866 a = +30° , a= csrna sin a = 0.5 and cos a = -0.866 a = +150° D13: Angle -; a b X b=c.(-cosa) 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 = arc tan D13 Qll HEIDENHAIN TNC 25006 I a b -5 8.66 -5 8.66 L-1 PO1 -5 PO2 +8.66 * Programming Modes I 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). jumps N23 DO0 Q2 PO1+50 * $ I N24 G98 L30 * N25 DO1 Ql POl+Ql PO2+1 * Depending on the result of this comparison, a jump to a certain label in the program can be programmed (conditional jump): 01-C 02 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). N26 D12 POl+Ql P02+Q2 PO330 * N27 GO0 2200 MO5 * N28 X-20 Y-20 MO2 * Examples: Decision ’ criteria : Equation D09: = DO9 POl+Ql PO2+360 PO3 30 * 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. Inequalities DIO: c DlO POl+Ql P02+Q2 A parameter IS not equal to a value or a second parameter, e.g. Ql + Q2 Dll: > Dll PO2+360 PO3 17 * A parameter is greater than a value or a second parameter, e.g. Ql > Q2. Also possible: greater than zero, i.e. positive. D12: < D12 POl+Ql PO2+Q2 PO3 3 * A parameter is less than a value or a second parameter, e.g. Ql < 42. Also possible: less than zero, i.e. negative. Unconditional jumps Page P 110 POl+Ql You can also program PO3 2 * unconditional jumps to a label with the parameter Example: Decision DO9 POl+O PO2+0 PO3 30 * The condition unconditional Programming Modes functions DO9 to D12 criterion: is always fulfilled, i.e. an jump is performed. HEIDENHAIN TNC 2500B para- 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 are allocated Screen Error number 0 299 300 400 484 ERROR 399 483 499 Example: D14: ERROR as follows: display 0 . . . ERROR 299 PLC ERROR 01. . . PLC ERROR 99 (or dialog determined by the machine tool builder). DIALOG 1 . . . 83 (or dialoq determined bv the machine tool builder). USER PARAMETER (or dialog determined 15 . . . 0 by the machine tool builder). = 100 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. D15: Print Example: D15: PRINT 0100 - 0107 0108 Tool radius Q1/20/Q9/O/Q17/Q33 The control can transfer Q parameter 0100 to 0107 are used for this. values from the integrated PLC to a NC program. The parameters 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 Parameter no tool axis called I 0109 = -1 X axis is called HEIDENHAIN TNC 2500B 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. 0109 = 0 Y axis is called 0109 = 1 Z axis is called 0109 = 2 Programming it is helpful Modes Page P 111 Parametric programming Special functions The value in parameter 0110 Spindle on/off 0110 speciftes the last M function M function on clockwise a10 = 0 a10 = 1 M05, if MO3 was previously issued 0110 = 2 M05, if MO4 was previously issued QIIO = 3 0111 indicates whether the coolant was switched MO8 coolant switched on 0111 = 1 MO9 coolant switched off 0111 = 0 Parameter Functions, 0112 contains the overlap factor for pocket milling User parameters, MP 7430”). The overlap factor for pocket milling 0113 mm/inch dimensions can be useful in milling Parameter 0113 specifies whether the NC program with PGM CALL) contains mm or inch dimensions. The mainprogram Page P 112 on or off. Parameter Meaning: 0112 Overlap factor rotation: QIIO = -1 function MO4 sprndle on counterclockwise Parameter 0111 Coolant on/off of spindle Parameter no M spindle MO3 spindle issued for the direction (see index A “General Information, MOD programs. at the highest program level (for subprogramming Parameter contains: mm dimensions 0113 = 0 inch dimensions 0113 = 1 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 using the peck circle: 43 = 35 mm. Number n of bore holes: 44 = 12. X coordinate of the bolt ctrcle center: Ql = 50 mm. Y coordinate of the bolt circle center: Q2 = 50 mm. O/o37 G71 * NlO G30 G17 X+0 Y-t0 Z-40 * N20 G31 G90 X+100 Y-t100 Z-t0 * Assigning values Computation Blank form defrnrtion N30 G99 Tl L+O R+5 * N40 Tl G17 S200 * Define and call tool N50 N60 N70 N80 Center in X Center in Y Bolt circle radius Number of bore holes DO0 DO0 DO0 DO0 QOl 402 Q03 Q04 PO1 PO1 PO1 PO1 +50 +50 +35 +12 * * * * N90 G83 PO1 -2 PO2 -20 * PO3 -5 PO4 0 PO5 100 * Select and load drilling NlOO DO0 QlO PO1 +0 * Set starting NllO DO4 Q14 PO1 +360 PO2 +Q4 * N120 GO0 G90 Z+2 MO3 * Compute cycle angle angle Increment Approach setup clearance and switch on spindle Execution N130 I+Ql J+Q2 * N140 GlO R+Q3 H+QlO N150 N160 N170 N180 G98 DO1 DO9 GlO M99 * 1”’ bore Ll * QlO PO1 +QlO PO2 +Q14 * PO1 +QlO PO2 +360 PO3 2 * H+QlO M99 * N190 D12 PO1 +QlO Start of loop Angle increment Further bores PO2 +360 PO3 1 * If not all holes are drilled, jump to the start of the loop. N200 G98 L2 * N210 GO0 G40 Z-t50 MO2 * N9999 O/o37 G71 * HEIDENHAIN TNC 25008 / Programming Modes I 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 O/o7445 G71 * G30 G17 X+0 Y+O Z-40 * G31 G90 X+100 Y+lOO Z+O * program 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 * Tl G17 S200* Setup clearance (incremental) Depth (incremental) lnfeed (incremental) Dwell time Drilling feed rate Work surface (absolute) Define tool Call tool, spindle speed GO0 G90 X+20 Y+50 MO3 * Ll,O * GO0Z+300 MO2 * Subprogram Drilling procedure 1: Approach drilling position Drilling End of main program 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 * Compute (new) drilling depth Compute (new) chip breaking height Drilling depth would not be attained GO1Z+Q23 FQ5 * Z+Q22 * Dll PO1+Q23 PO2+Q24 PO310 * Drilling Chip breaking Another drilling G98 L99 * GO1Z+Q24 FQ5 * GO4 FQ4 * GO0 Z+Q21 * G98 LO * Setup clearance (absolute) Current work surface (absolute) Final drilling depth (absolute) Approach setup clearance in rapid traverse step required? Drill directly to final depth Clear base of bore Return to setup clearance a1 O/o7445 G71 * F FMAX 6 Page P 114 I I Programming Modes I 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. Note The sine and cosine functions are described in detail under “Parametric Programming, Trrgonometric functions”. Process 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. Roughing out Error message 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 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. Finishing For subsequent frntshing, the subprogram IS executed in the conventional manner with a finer incremental angle (e.g. 01 = 1”). Note 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. HEIDENHAIN TNC 2500B I Programming Modes b=Q5 Parametric Programming Example: Ellipse as an SL cycle %94152500 Parameterdefinition Roughing out 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 * 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 NllO N120 N130 N140 N150 N160 N170 N180 Blank form definitron 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 * N190 G37 PO1 N200 G57 PO1 PO4 PO7 N210 G79 * N220 N230 N240 N250 Finishing G71 * DO0 DO0 GO1 L2,O - Copy starting Datum shift 2 * -QS PO2 +Q9 PO3 -5 100 PO5 +2 PO6 +45 100 * N270 N280 N290 N300 N310 N320 N330 N340 N350 Copy Incremental angle for finishing Copy starting angle for counter Drive tool to milling depth Z Call subprogram 2 - Label 2 Computation of the X and Y positions elliptical path on the Feed rate for finishing Increase angle If angle not attained, jump to label 2 G71 * *’ End angle a, is greater Modified program .-2 Retract spindle axis, jump to start of program 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 * N9999 %94152500 4 Cycle call QOO PO1 +Ql * 414 PO1 +Q2 * Z+Q9 FlOO * * G98 DO7 DO6 DO3 DO3 GO1 DO1 D12 G98 angle for counter Define subprogram 2 - as contour label SL cycle rough-out (for more information, see “SL Cycles”) N260 Z+50 FlOOO MO2 * Subprogram with program section repeat roughing frnrshing than 360°, so the contour IS safely completed wrth the cutter. 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. Geometry The size and locatron entered. Cutting conditions a convex segment circular movements of a In of the sphere can be You obtain a hemisphere when Starting 3D angle End 3D angle Starting plane angle End plane angle =O’= = 90° = O” = 360° 01 02 Q6 07 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. 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 * Assigning values 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 Blank N130 G30 G17 X+0 Y+O Z-50 * N140 G31 G90 X+100 Y+lOO Z-t0 * Tool N150 G99 Tl L+O R-t.5 * N160 TO G17 * Change/ Start position N170 GO0 G90 Z+lOO MO6 * N180 Tl G17 S800 * Subprogram call c=, F 012 N190 L2,O * N200 GO0 Z+lOO MO2 * Roughing HEIDENHAIN TNC 2500B If roughing is required, an end mill can be used with a correspondingly Programming Modes larger sphere radius (04) Page P 117 Parametric Programming Example: Sphere d Setting starting the values N210 N220 N230 N240 N2.50 N260 N270 N280 N290 N300 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 * loop N310 N320 N330 N340 N350 N360 N370 N380 N390 N400 N410 N420 N430 N440 G98 DO1 Dll L3,O GO1 Gil G12 DO1 Dll L3,O GO1 Gil G13 D12 Starting position Program End 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 +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 +Q3 * PO3 99 * Arc to plane end angle If condition* is fulfilled, then jump to start of loop PO3 1 * N450 G98 L99 * N460 GO0 Z+Q5 * .- Finished, retract Reset datum N470 G54 X+0 Y-t0 Z+O * N480 G98 LO * 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 Radius components * Condition: 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 __ Z components if current 3D angle 020 is greater than or less than end 3D angle 02, then jump to 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 I HEIDENHAIN TNC 25008 4 4 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 always shows the surface as cut by a cylindrical by limiting the plane angles and end mill. Finishing Spherical cutter, R = 3 mm, 3D angle increment lo Roughing End mill, R = 12 mm, 3D angle increment 4O 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 I Programming Modes I 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 Parameter PROBING AXIS/PROBING Probing probing DIRECTION ? number axis and direction All coordrnates of the starting incremental, if desired Conclude Example The probe is first to be pre-positioned axis in positive direction. The probed Program TO G17 * block to X-IO, Y+20 and Z-20, and then probing result (X position) IS to be stored in 010. begun with the X GO0 G40 Z+200 MO6 * Tool change G55 PO110 PO2X+ 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 positron, I Programming Modes position 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”. 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 * Probing point 0 X, Y, Z coordinates pre-positionrng N40 DO0 421 PO1 +20 * N50 DO0 422 PO1 +15 * N60 DO0 423 PO1 +0 * Probing N70 DO0 Q31 PO1 +20 * N80 DO0 432 PO1 +15 * N90 DO0 Q33 PO1 -10 * Probing point 0 Z coordinate 033 valid for probing point 0 NlOO DO0 441 PO1 +50 * NllO DO0 442 PO1 +lO * Probing N120 TO G17 * N130 GO1 G90 Z+lOO FlOOO MO6 * Measure Measure length angle is 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 * for point 0 point @I Retract, insert probe system 0 Probe * Approach auxiliary point 0 Probe Call subprogram 1 * 0 Probe * 0 Probe * Call subprogram N200 G38 * Program STOP Check result parameter (see Index M “Machine Operating Modes, Program run. Checking/Changing 0 Parameters”) Retract, jump to start of program N210 Z+lOO M02* HEIDENHAIN TNC 25008 2 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 * Subprogram 2: measure angle 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 * Page P 122 Programming Measured height in parameter 01. Measured Modes angle or depth Z In parameter Q2. HEIDENHAIN TNC 2500B 4 Teach-In Tool compensation Position values (coordinates) acquired via “Capture actual position” contain the length and radius of compensation for the tool in use. 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. 1. Tool definition in the part program 3 NlO G95 Tl L+O R+O 2. Tool definition in the central tool file / Tl L+O R+O 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=O values for the tool radius 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 The compensation R can be positive or negative, depending Inserted tool IS larger (+) or smaller (-) than the origrnal tool. The compensation for the new tool length IS also determined (see “Tool definition, Transferring tool length”). The new compensations HEIDENHAIN TNC 25008 R= -__ R = R2-Fi, or R = R3-R, R = RI = R2 = R3 = Length compensation R= +.., are entered in the tool definition Programming Modes on whether the tool radius of the newly as the difference of the original to the originally tool (R = 0, L = 0) Page P 123 used tool Teach-In Capture actual position Applications The actual tool positron can be transferred to the part program with the “Capture actual positron” key. In this way you can capture: positions l tool dimensions (see “Tool Definition”) l Process Move the tool to the desired positron. 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. PROGRRMMING N25 N30 N40 NSO N60 N70 N9999 EBB RND G40 X+100 G54 G28 X G90 X+10 Y+10 II #f Jt0 It100 G73 G72 EDITING M03 s * 1y G90 Ht31S F0,8 x7410 4~ G71 * 4~ _________-_----_________________ FICTL. T X z t + 9,375 8,985 q t R t F 0 8,200 0,180 MS/3 Move the axis or axes via the axis keys. Example Input Enter radius compensation if required. . . . ($3;;; positions axis cl Enter feed rate If required. Enter miscellaneous function if required. Conclude Page P 124 Programming Modes block 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 l TEST 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 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 T Testing . the program Y+10 Y R t + F 0 M03 * 8,200 0,180 MS/9 Initiate the dralog PROGAM SELECTION PROGRAM NUMBER = Select the program to be tested. Key in and confirm the block number up to which the test is to run. TO BLOCK NUMBER = or Test the complete No apparent errors If the program contains no apparent errors, the program reached, or a jump is made back to the start of program G38/M06 If a G38 or MO6 was programmed, pressing the “NO ENT” key. 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 HEIDENHAIN TNC 2500B / test runs until the entered block number is if no G38 (STOP) or MO6 was programmed the test can be continued by entering test can be halted with the “DEL 0” key and aborted Programming Modes program. a new block number or by In or before the stopped at any time I 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 GRAPHICS SELECTION=ENT After selecting a program, the menu shown at the right is displayed by pressing the GRAPHICS “MOD” key twice. FRST SD-VIEW IMRGE PLRN VIEW / DRTR END-NOENT PROCESSING 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 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 The workpiece IS shown - like In drafting plan view and two sections. in pianes The sectional keys. - with a planes can be moved via the cursor I 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: Page P 126 Preferred German Preferred American * 4= Programming Modes I 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 Selecting sectional 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 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. Magnification The “remaining workpiece” screen with “MAGN”. plane with the is displayed - MAGN on the 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 1 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 Displaying 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”. 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 l Tool call Restrict the blank detail to the section A tool call must be programmed Page P 128 of interest. with “T” prior to the first axrs movement to designate Specifying the spindle axis in the BLK FORM definition Both entries for the axis must be the same. does not suffice for the graphic If the tool axis is not given, an error message after starting the graphics. Programming appears Modes the tool axis. program run 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 in two d’fferent * (no longer Device adaptation External programming tape unit*, or for a printer, punch, reader, etc. to various for three different peripheral peripheral devices via machine devices are permanently parameters, can be accesses stored in the TNC (selectable FE = for HEIDENHAIN l ME = for HEIDENHAIN l EXT = external devices. Interface defined by the machine manufacturer or user via machine HEIDENHAIN device such as a printer, computer, etc. via FE 401 Floppy Disk Unit. ME magnetic can also be written Observe the programming which tape unit. parameters to connect a non externally. rules in this manual and the following and after every program instructlons. l At the start of program grammed.” l 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. l Spaces between l Trailing zeros can be omitted. l During read-in single words block, CR LF or LF or CR FF or FF must be pro- can be omitted. of NC programs, comments that are marked with “*” or “;” are Ignored. 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. HEIDENHAIN TNC 2500B with the computers. l Programs complies in production). The TNC can be adapted as user parameters. The settings “MOD”): The data format manners: Blockwise transfer for the HEIDENHAIN FE 401 Floppy Disk Unit and compat’ble Standard data transfer for the HEIDENHAIN ME magnetic of programs. Programming Modes for “blockwise Page P 129 External Data Transfer Iranster menu Read-in/ read-out Transfer 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. menu The transfer mode is selected vra a menu, which offers different read-in and read-out alternatives. PROGRAMMING AND EDITING ~uPnnmufi0 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 DIRECTORY READ-OUT SELECTED PROGRAM The list of program numbers on the data medium is displayed. The programs are not transferred. A single, selected program is read-out. READ-OUT ALL PROGRAMS The entire NC program memory IS read-out 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 Transfer TNC - TNC Data can also be transferred the “END Cl” key appears: PROGRAM INCOMPLETE Page P 130 directly between Programming two controls. Modes The receiving control must be started first HEIDENHAIN TNC 2500B on External Data Transfer Connecting cable/Pin assignment RS-232-C HEIDENHAIN devices Transmission cable Length 3 m (10 ft) for LE Cable adapter on the machine length max. 17 m (55 RS-232-C Cable adapter - Id -Nr. 242869 IddNr. 23975801 Id.-Nr. 239760 ME * 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 LE RS-232-C Cable adapter at the machine - * * 25-pole flange socket LE 2500: X25 Recommended pin layout for nonHEIDENHAIN devices 1 2 3 4 5 6 TXD RXD RTS CTS DSR TRANSMIT DATA RECEIVE DATA REQUEST TO SEND CLEAR TO SEND DATA SET READY DATA TERMINAL 7 DTR R-232-C DCl/DC3 HEIDENHAIN TNC 2500B data transfer protocol Programming READY with Modes Page P 131 External Data Transfer Peripheral devices Adaptation The control HEIDENHAIN devices HEIDENHAIN operation : Interface The transfer device which devices are mated with the TNC controls The adaptation FE, ME must be set for the specific for FE or ME can be selected via “MOD”. is to be connected and are therefore The suitable In burlt-in controls, peripheral devices can usually be connected panel or another accessible location on the machine. Non-HEIDENHAIN devices Non-HEIDENHAIN l devices must be indrvidually adapted. cable can be ordered the peripheral via a cable adapter on the operating This also includes: Adapting the control via machine parameters. These settings are stored after Input and are automatically Adapting standard easy to put into rate can be altered for the FE 401 B. Connections l especially effective by selecting EXT. device, e.g. via switches. 0 Setting the baud rates for both devices. l Wiring the data transfer Please remember: Page P 132 cable. Both sides must be set identically. You should always document the settings! 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 You must format the diskette the first ttme. 0 Do not write-protect Setting the TNC a diskette: Select operating before writing for the diskette. Continue pressing until RS-232-C INTERFACE appears. mode at the TNC Terminate Examples for using the FE Read-out selected program Select operating READ-OUT OUTPUT the MOD operating mode SELECTED = ENT/END PROGRAM Confirm the function. = NOENT Select the program, Output EXTERNAL OUTPUT DATA OUTPUT = ENT/END e.g. program The FE is started and stopped transfer. = NOENT The next program Select operating READ-IN number after program is then highlighted. SELECTED PROGRAM NUMBER EXTERNAL DATA PROGRAM Confirm = Enter the number, the function. read-in. INPUT functions with “blockwise *) The entire range of functions I or mode The FE generally like an ME. HEIDENHAIN TNC 2500B 14. the program Select and output the next program terminate output. Very important! Read-in selected program mode. transfer” for the FE is described Programming Modes and can be switched in the operating over on the rear to operate manual for the FE I Page P 133 External Data Transfer Non-HEIDENHAIN devices EXT After setting the TNC data interface to EXT. the following modes can be selected via machine parameter: Standard data transfer for prtnter, reader, puncher etc. Blockwise computer. transfer for To transfer data from the control parameters. The transfer Resetting the TNC to EXT to non-HEIDENHAIN rate is set via the MOD function devices, the control Continue pressing until RS-232-C interface appears. Select at the TNC Continue appears. Terminate For standard the control: data transfer MP 5030 = 0 (standard pressing until the EXT setting the MOD operating (e.g. to a printer), you only have to enter the followrng data transfer MP 5020 = e g 168 (data format) (see “External Data Transfer, Machine Blockwise transfer by machine BAUD RATE. RS-232-CINTERFACE Standard data transfer must be adapted = 1 (blockwrse transfer MP 5020 = e.g. 168 (data format). IS parameters at is selected). parameters”). 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 machine mode. IS required, e.g. the data transfer software parameters: selected). 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 When using the transfer software from HEIDENHAIN, above machine parameters need not be entered. Adapting to non-HEIDENHAIN devices Page P 134 Compare the interface descriptions Then proceed as follows: 0 Determine the common The peripheral device IS the data interface is normally set to “FE” Then the of both devices settings (data format, baud rate). usually set vta internal switches. l Determine l l Plug in the data transfer cable Plug in the power cord of the peripheral the pin layout for the data transfer l Switch l Start the transfer l Select the transfer cable, and wire the cable. device on power. software from the computer, If required menu on the TNC with the “EXT” key and start the desired Programming Modes transfer. HEIDENHAIN TNC 2500B External Data Transfer Machine parameters The followrng settings To select the machine MP 5010 Control characters for blockwise transfer MP Bit 5010.0 0 8 5010.1 0 ..7 I 5010.2 5010.3 5010.4 5010.5 are only effective when operating parameters, see index A “General the data Interface in the “EXT.’ operating mode. Informatron, MOD Functrons. User parameters”. Function 7 15 Input values” ETX or any ASCII character. STX or any ASCII character. 8 15 0 7 8 15 0 7 8 15 0 7 8 15 0 7 Character Character for end of program. for start of program. H or any for data E or any for data ASCII input ASCII input character. It IS sent in the command prior to the program number. character. It is sent In the command after the program number. H or any for data A or any for data 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. block block block MP 5010.0 Bits 0 - 7 ETB and SOH: 279 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. ACK and NAK: 5382 code l-47): when the data block code l-47): when the data block EOT or substitute character (decimal code l-47) is sent at the end of the data transfer. End of program: Start of program: software EOT: 4 from HEIDENHAIN ETX STX of bit Significance I of bit Determine HEIDENHAIN TNC 2500B input value’ 61 51 4 31 2 1 0 64 32 16 8 4 2 1 0 0 0 0 0 0 1 1 15 I 14 I 13 I 101 91 8 32768 Enter 0 or 1 accordingly 00000011 00000010 128 Enter 0 or 1 accordingly Bits 8 - 15 and one for the start BINARY code BINARY code 7 Significance H and A. 16712 block 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”. Example: H and E, 17736 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. ‘I The input values apply for the data transfer Determining bit significance ETX and STX: 515 16384 0 8192 0 I 4096 0 ‘1 I 1024 2048 0 0 512 0 1 The input value for MP 5010.0 IS thus 515. 1 2 + 512 515 Programming ‘2 Modes Page P 135 256 0 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 Bit Input 7 or 8 data bits 0 + Block Check Character (BCC) 1 0 + any BCC character 2 --f BCC character no control 2 + + 0 ---f inactive 4 + active Transfer stop due to DC3 3 + + 0 + inactive 8 + active Number parity even 4 parity required 5 of stop bits 7 0 0 1 t1 bits (ASCII code with = parity) bits (ASCII code wrth = 0 and gth bit = parity) + + Transfer stop due to RTS Character or odd Character 1 - character - 8 + 0 -even +16-odd + 0 + not required + 32 + required 6 0 1 0 1 1 2 1 1 32 l/2 Stop bits Stop bits bit 6: + 64 Stop bit bit 7: + 128 Stop bit value to be entered Notes on bit 1 Bit 1 is only set for “block- Input values 0 + 7 data 8’h bit 1 + 8 data 8’h bit + by MP 5020. Input value does not contain the significance 2: The BCC can accept an arbitrary character (also control character) 128 for MP 5020 in “blockwise 169 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: Bits 0 - 7 Srgnificance 7 data bits (ASCII code with 7 bits, even parity) Transfer stop due to DC3. 1 stop bit 7 of bit MP 5030 Operating mode of the interface Page P 136 5 4 31 21 1 1 0 128 64 32 16 8 4 2 1 1 0 1 0 1 0 0 0 Enter 0 or 1 accordingly After adding the significances, In our example: 168. 61 you obtain the input value for machine parameter 5020. 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) Programming Modes HEIDENHAIN TNC 2500B External Data Transfer Machine parameters The following settings To select the machine MP 5010 Control characters for blockwise transfer are only effective when operating parameters, see index A “General the data interface in the “EXT” operating mode Information, MOD Functions, User parameters”. Function Input values” MP Bit 5010.0 0 8 7 15 ETX or any ASCII character. STX or any ASCII character. 0 7 8 15 H or any for data E or any for data ASCII input ASCII input 0 7 8.. 15 H or any for data A or any for data 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. 0 7 8 15 0 7 8 15 0 7 5010.2 5010.3 5010.4 5010.5 Character Character for end of program. for start of program. character. It IS sent in the command prior to the program number. character. It is sent In the command after the program number. block block block ETB and SOH: 279 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. ACK and NAK: 5382 code 1-47): when the data block code I-47). when the data block EOT or substitute character (dectmal code l-47) is sent at the end of the data transfer. End of program: Start of program: software EOT: 4 from HEIDENHAIN 7 of bit Significance I of bit Determine HEIDENHAIN TNC 2500B input value: 5 4 3 2 1 0 64 32 16 8 4 2 1 0 0 0 0 0 0 1 1 15 I 14 I 101 91 8 32768 Enter 0 or 1 accordinalv 61 00000011 00000010 128 Enter 0 or 1 accordingly Bits 8 - 15 and one for the start BINARY code BINARY code ETX STX Bits 0 - 7 Significance H and A: 16712 block 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”. Example: H and E: 17736 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. The input values apply for the data transfer Determining bit significance MP 5010.0 ETX and STX: 515 16384 0 I 8192 0 1 2 + 512 515 Programming ‘3 ‘2 I 4096 0 ‘1 I 2048 0 1024 0 512 0 256 1 The Input value for MP 5010.0 is thus 515. Modes Page P 135 0 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 Bit input 7 or 8 data bits 0 + (BCC) 1 Input values 0 + 7 data 8’h bit 1 --f 8 data 8rh bit + Block Check Character by MP 5020. Bit 1 IS only set for “block- + + 0 + any BCC character 2 + BCC character no control Transfer stop due to RTS 2 + + 0 + Inactive 4 + active Transfer stop due to DC3 3 + + 0 + inactive 8 + active Character or odd Character Number parity even 4 parity required 5 of stop bits t7 0 0 1 1 bits (ASCII code with = parity) bits (ASCII code with = 0 and gth bit = parity) character - 8 + 0 + even +16-odd + 0 + not required + 32 + required 6 0 1 0 1 1 2 1 1 32 l/2 Stop brts Stop bits bit 6: + 64 Stop bit bit 7: + 128 Stop bit value to be entered Notes on brt 1 1 Input value does not contain the significance 2: The BCC can accept an arbitrary character (also control character) 128 for MP 5020 in “blockwise 169 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 data bits (ASCII code with 7 bits, even parity) Transfer stop due to DC3, 1 stop bit Bits 0 - 7 Significance of bit Enter 0 or 1 accordingly After adding the signrficances, In our example: 168. MP 5030 Operating mode of the interface Page P 136 I 7 6 5 4 3 2 1 0 128 64 32 16 8 4 2 1 II 01 01 0 II 01 II 01 you obtain the input value for machine parameter 5020. 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) Programming Modes HEIDENHAIN TNC 2500B Address HEIDENHAIN TNC 2500B Letters in IS0 Adress code Function % Program start or call A B C (rotation (rotation (rotation about X-axis) about Y-axis) about Z-axis) D Parameter F F F Feed rate Dwell with GO4 Scaling factor with G72 G Preparatory H H Polar coordinate angle In incremental/absolute Angle of rotation with G73 I J K X-coordinate Y-coordinate Z-coordinate L L L Set label number with G98 Jump to label number Tool length with G99 M Miscellaneous N Block number P P Cycle parameter in cycles Parameter in parameter definitions Q Program R R R R R Polar coordinate radius Circle radius with G02/G03/G05 Rounding-off radius with G25/G26/G27 Chamfer length with G24 Tool radius with G99 S Spindle T T Tool definition Tool call U v w Linear movement Linear movement Linear movement X Y z X-axis Y-axis Z-axis * End of block definition function (Program parameter Q) (G code) dimensions of circle center/pole of circle center/pole of circle center/pole functions parameter “0” speed with G99 parallel to X-axis parallel to Y-axis parallel to Z-axis Programming Modes Page P 137 Parameter Page P 138 Definitions in IS0 D Function Reference 00 Assign P 106 01 02 03 04 Addition Subtraction Multiplication Division P 106 05 Square P 106 06 07 Sine Cosine 08 Root-sum 09 10 11 12 If If If If 13 Angle of c / root Page P 107 of squares (c = IGG?) equal, jump unequal, jump greater, jump less, jump P 107 P 109 sin a and c Programming cos a) Modes P 108 HEIDENHAIN TNC 25008 G Codes 3roup IG ‘ath types 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? 38 40 Tool path compensation :: :i 50 :A Unit of measure ?f Dimensions ii? 98 ,.1 99 HEIDENHAIN TNC 2500B I 1 Non-modal 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 Reference Page P 25 P 26 P 33 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 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 = 4’h axis Chamfer with length R Corner rounding with R Tangential contour approach Tangential contour departure Designate last nominal value P 39 M 18 P 43 l P 44 P 45 0 P P P P P P P P P l P 100 P 98 P 71 P 73 P 75 P 67 P 70 l P 65 P 20 0 0 0 0 0 P 27 P 37 P 50 Z Y X with R with R as pole 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 P 42 P8 P 20 P 15 l P 17 P7 0 a P 119 P6 A 17 l Set label number r. 1 tool uetrnrtion 0 Programming Modes 102 96 104 78 103 94 89 78 90 / P 56 nrI” ,I? M Functions Miscellaneous YY Page P 140 functions with txedetermined 1 Lycle cali errecrlve function . DIocKwise Programming Modes HEIDENHAIN TNC 2500B M Functions Vacant miscellaneous functions Effective at Begin of End of block block 10 l l 11 12 15 16 I 17 I 18 l 24 25 1 26 1 27 I l I 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 I I I l l l I I I l lel I I I l l I I l l l I I I l l l I I I l l I l I l I l I I I l : 49 l 50 51 l l I l I I 0 I I I 1 1 l I l I I l I l l l l l I I I I I I j I 1 I I I l l l l l l I l I I l l 77 78 l 79 l I I l : l l 61 I 62 63 64 65 66 67 I 68 I 69 I 70 71 77 73 74 82 83 84 / 85 1 I 86 I 1 87 1 1 88 1 l 46 47 48 I I 60 1 l 41 42 43 HEIDENHAIN TNC 25008 l I 59 I l l 1 I I I 56 l l l I I 22 I / 23 I l I 57 I l 19 20 I 21 54 55 l l l l I I I l l l I I I l l l Programming . Modes These miscellaneous functions are assigned by the machine tool builder and are described in the operating rnstructrons for your machine tool. Page P 141 Length Incremental rotary and angle encoders Absolute rotary encoders Digital readouts for retrofitting machine gauges Incremental tools and display linear encoders TNC contouring controls units HEIDENHAIN + - !!A!!! C 25666420 2 10192 H Printed r Germany Subject to alteration Working plane: Tool axis Program (90°) Working plane Z (G17) xv. x iG18i YZ I Reference axis x I lOoI .’ Y Y (G19) Section Repeat: Label number ldentlfles program section to be repeated Repeat five times = execute SIX times G98 L2 GO0 G91 X+10 L2.5 TNC 2500B Contouring M99 Z Control Subprogram: Tool radius compensation: Subprogram call L4.0 MO2 identlcates end of maIn program return to begInnIng of program Beginning of subprogram ~ and GO0 G40 End of subprogram (Further subprograms) Cycles: G Cycle effective after call-up effective immediately Pecking kww Slot mllllng Pocket mllllng Circular pocket Program call 37 56 57 58/59 Define contour PIlot drilling Rough-out contour mllllng 54 28 73 72 Datum shift Mirror image Rotation Scaling factor . . . . 04 Dwell . Cycles: Program structure L!st of contour machlnlng with several G37 PO1 G56 PO1 G57 $ Z = rxremental P = thread pitch advance powon I+50 J+30 G13 G41 G91 H-2520 G58 End MO2 return subprograms PO1 PO1 G98 G98 Activate G54 G28 G73 G72 X+20 X H+45 FO.8 LO Cancel Y+30 Z+lO thread G54X+OY+OZ+O G28 G73 H+O G72 Fl Left-hand 2+12 Machine outer inner thread outer tool (RL) G42 (RR) G42 (RR) G41 (RL) clockwise G42 (RR) G41 (RL) G41 (RL) G42 (RR) counterclockwise ICCW program (CW) axis negative posltlve control: q q Manual The axes can be moved via the external axis dIrectIon buttons The position displays can be set to desired values Electronic Handwheel The axes can be driven either by using the electronic handwheel or by entering a jog increment via the external axls dIrection keys Ia Positioning via MDI 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 % 234 G71 G30 G17 X+0 Y+O Z-40 G31 G90 X+100 Y+lOO Z+O Ia Program Run, Full Sequence After start of the program “la the external the program WIII automatically be executed end of the program or STOP Tool Tool Tool Tool G99 Tl L+O Rf5 TO G17 GO0 G40 G90 Z+lOO Tl G17 SIOOO l3l Program Run, Single Block Any single block can external START key deflnltlon call change call 1” contour feed number Program 234 ,n mm Blank form deflnltlon Starting Working cutter define/call Contour cycle contour milling Pwoosltlon. cvcle call Datum shift Mirror Image Rotation Scaling factor H = 360 G41 Select Finishing Transformations: transformation value inner tools cutter define/call Contour cycle’ rough-out Pre-positIon. cycle call Coordinate Coordinate LO interpolation: Right-hand Roughing Contour G98 MO2 !B with Approach stamng Define pole Hellcal lnterpoiatlon . . . subprograms program, L4 Z+lOO . Drill defw/call Contour cycle pilot drllltng Pre-oositlon cvcle call of malt- program Incremental time when call: Call another Helical . . . . . . 83 84 74 75176 77178 39 Contour Program G98 G90 posItIon posItion, depth next point, w!th approach Tanqentlal Strayght line Chamfer Straight line Rounding Straight line Circle center Circle. incremental Last contour point. to the workplece compensation absolute Tangential departure End posltlon. next to the workplece Retract. return to beginntng of program X-20 z-20 (RL) Y-20 Y+O F200 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 separately via the MO6 Programming: MO3 GO1 G41 X+0 be started START key, up to the Ea q Programming Er Editing Part programs They can also V 24 interface Test Part programs are tested for loglcal errors such as machine traverse limit vlolatlons. double programnxng of axes etc can be entered. be read-In and checked read-out and altered via RS-232-Q 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 Ef‘e<:tive 31OCI < b,I wjir ,. ‘?“d . . . . . . . . . . . . . . . . . . . . . . .